You are not logged in.

#1 2022-03-31 20:20:23

eoleumbi
Member
Registered: 2022-03-31
Posts: 2

nodejs-lts-gallium and nodejs are in conflict

I tried to upgrade the system but pacman reported the package conflict.

sudo pacman -Syyuu
:: Synchronizing package databases...
 core                                                                            155.1 KiB  2.07 MiB/s 00:00 [################################################################] 100%
 extra                                                                          1715.1 KiB  12.9 MiB/s 00:00 [################################################################] 100%
 community                                                                         6.6 MiB  14.3 MiB/s 00:00 [################################################################] 100%
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...
warning: removing 'nodejs' from target list because it conflicts with 'nodejs-lts-gallium'
:: nodejs-lts-gallium and nodejs are in conflict. Remove nodejs? [y/N] N
error: unresolvable package conflicts detected
error: failed to prepare transaction (conflicting dependencies)
:: nodejs-lts-gallium and nodejs are in conflict

I don't understand why pacman try to install 'nodejs-lts-gallium'.

Should I replace 'nodejs' with 'nodejs-lts-gallium'?
What should I do if I wanna stick to 'nodejs'?

Offline

#2 2022-03-31 20:35:18

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 13,038

Re: nodejs-lts-gallium and nodejs are in conflict

Looking at https://archlinux.org/packages/communit … s-gallium/ there's one package with  a runtime dep on nodejs-lts-gallium specifically :

apm (required by atom ).

Is apm installed in your system ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#3 2022-03-31 22:25:05

eoleumbi
Member
Registered: 2022-03-31
Posts: 2

Re: nodejs-lts-gallium and nodejs are in conflict

Lone_Wolf wrote:

Looking at https://archlinux.org/packages/communit … s-gallium/ there's one package with  a runtime dep on nodejs-lts-gallium specifically :

apm (required by atom ).

Is apm installed in your system ?

Yes! apm is installed for atom in my system.
Thanks for your help.

pacman -Qii apm
Name            : apm
Version         : 2.6.4-3
Description     : Atom package manager
Architecture    : x86_64
URL             : https://github.com/atom/apm
Licenses        : MIT
Groups          : None
Provides        : nodejs-atom-package-manager
Depends On      : libsecret  nodejs>=10  npm  python
Optional Deps   : None
Required By     : atom
Optional For    : None
Conflicts With  : nodejs-atom-package-manager
Replaces        : nodejs-atom-package-manager
Installed Size  : 31.93 MiB
Build Date      : Thu 21 Oct 2021 08:43:45 AM KST
Install Date    : Fri 03 Dec 2021 03:14:40 PM KST
Install Reason  : Installed as a dependency for another package
Install Script  : No
Validated By    : Signature
Backup Files    :
(none)

Is there any best practice or approach to point out the dependent package (in this case 'apm') for none installed package ('nodejs-lts-gallium') via command line?
I'm poor at this kind of  dependency problem.

Offline

#4 2022-04-01 09:55:59

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 13,038

Re: nodejs-lts-gallium and nodejs are in conflict

pacman-contrib has several useful cli utils one fo which is pactree .

I started with

$ pactree --reverse --sync --depth 1 nodejs-lts-gallium

That command does list apm but since nodejs-lts-gallium provides nodejs it also lists anything in repos that depends on nodejs .

If i had apm installed, I could have used checkupdates (also from pacman-contrib) to try to narrow down the list.

I used the website instead and was lucky only one package explicilty depends on nodejs-lts-gallium .

eoleumbi wrote:

Should I replace 'nodejs' with 'nodejs-lts-gallium'?
What should I do if I wanna stick to 'nodejs'?

currently atom is the only package that depends on apm and apm is the only package that depends on nodejs-lts-gallium.

Which is more important to you : atom or nodejs ?


Welcome to archlinux forums.

Last edited by Lone_Wolf (2022-04-01 09:56:31)


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#5 2022-04-02 19:37:07

abeowitz
Member
Registered: 2010-09-01
Posts: 8

Re: nodejs-lts-gallium and nodejs are in conflict

The conflict seems to be that Atom needs apm to manage its plugins.  So, atom needs nodejs AND apm, but apm needs nodejs-lts-gallium.  Thus impossible for a full install of atom?

https://wiki.archlinux.org/title/Atom_( … ot_working

Last edited by abeowitz (2022-04-02 19:52:31)

Offline

#6 2022-04-02 20:24:14

loqs
Member
Registered: 2014-03-06
Posts: 18,130

Re: nodejs-lts-gallium and nodejs are in conflict

abeowitz wrote:

The conflict seems to be that Atom needs apm to manage its plugins.  So, atom needs nodejs AND apm, but apm needs nodejs-lts-gallium.  Thus impossible for a full install of atom?

https://wiki.archlinux.org/title/Atom_( … ot_working

Is apm broken on your system with nodejs-lts-gallium?  You could rebuild apm with the dependency changed to 'nodejs>=16'.

Offline

#7 2022-04-02 22:47:59

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,178

Re: nodejs-lts-gallium and nodejs are in conflict

You're making WAY too much of this. Why not just answer 'Y' and let pacman do it's thing?

Offline

#8 2022-04-03 03:03:02

abeowitz
Member
Registered: 2010-09-01
Posts: 8

Re: nodejs-lts-gallium and nodejs are in conflict

SCIMMIA, THIS is why we are IGNORING the pacman recommendation.  Did you read the link or try to understand the problem?  I hate reading through useless noise when looking for a solution to a problem....


https://wiki.archlinux.org/title/Atom_( … ot_working

Package Manager not working

It has been reported by some users that having an LTS version of node.js can break the package manager, some packages request an LTS version of nodejs so it is possible for a user to inadvertently change versions. see [1].

This can be rectified by installing nodejs, which should detect the conflict between the stable and LTS versions and then remove the LTS version.

FWIW, I used flatpak to install Atom, and had to reinstall my packages and environment, projects, etc.  Inconvenient, but OK for now.

Last edited by abeowitz (2022-04-03 07:33:01)

Offline

#9 2022-04-03 07:40:42

abeowitz
Member
Registered: 2010-09-01
Posts: 8

Re: nodejs-lts-gallium and nodejs are in conflict

loqs wrote:
abeowitz wrote:

The conflict seems to be that Atom needs apm to manage its plugins.  So, atom needs nodejs AND apm, but apm needs nodejs-lts-gallium.  Thus impossible for a full install of atom?

https://wiki.archlinux.org/title/Atom_( … ot_working

Is apm broken on your system with nodejs-lts-gallium?  You could rebuild apm with the dependency changed to 'nodejs>=16'.

Yes, Atom's package manager freezes when I list packages.  Deprecation warning, too. 

Thanks, that sounds like a possible solution, but I don't feel like managing/rebuilding nodejs each time it gets updated. 

And with the --no-sandbox work around and PlatformIO strongly suggesting I migrate to VSCode, I may do just that... sigh...

Last edited by abeowitz (2022-04-03 07:42:10)

Offline

#10 2022-04-03 07:46:22

loqs
Member
Registered: 2014-03-06
Posts: 18,130

Re: nodejs-lts-gallium and nodejs are in conflict

I rebuilt an updated atom with electron 11 which stopped the GPU thread crashing requiring the no sandbox work around.  https://bugs.archlinux.org/task/73957#c … 31contains the changes I made.
Edit:
vscode has the resources to keep pace with electron releases cycles.  atom with a single developer and the electron release interval being halved I am not optimistic about.

Last edited by loqs (2022-04-03 07:53:40)

Offline

#11 2022-04-03 08:05:50

abeowitz
Member
Registered: 2010-09-01
Posts: 8

Re: nodejs-lts-gallium and nodejs are in conflict

loqs wrote:

I rebuilt an updated atom with electron 11 which stopped the GPU thread crashing requiring the no sandbox work around.  https://bugs.archlinux.org/task/73957#c … 31contains the changes I made.
Edit:
vscode has the resources to keep pace with electron releases cycles.  atom with a single developer and the electron release interval being halved I am not optimistic about.

I was tempted to ask about the state of Atom.  Not easy to keep up with the shifting sands that is Linux & open source.

I will try your diffs tomorrow, just to honor your hard work.  You have an impressive and useful post history.  Thanks! 

(erg, been a long time since I patched a pkgbuild, lol)

Offline

#12 2022-04-03 09:49:26

loqs
Member
Registered: 2014-03-06
Posts: 18,130

Re: nodejs-lts-gallium and nodejs are in conflict

Here is an updated diff for atom against the current unreleased PKGBUILD.  I did not change it from nodejs-lts-gallium but you should only need to change one reference first in apm then in atom.

diff --git a/trunk/PKGBUILD b/trunk/PKGBUILD
index 0864e69..fc9e1bb 100644
--- a/trunk/PKGBUILD
+++ b/trunk/PKGBUILD
@@ -48,9 +48,8 @@ sha256sums=('8fb62ee3aeb466d8a75fb3fd467b96836a4f2f9c594d1b701f9dcf8df12587f8'
             '08ae0c93b5ec7eb7d90c65d5d2adbaca538482fba902ed1f8414024db0d21854'
             '5e6e05fe09642e4a18d6c44764fb18498460b53b285420b5acc6a3622e9dc6d2')
 
-_electron_version=$(< /usr/lib/$_electron/version)
-
 prepare() {
+  _electron_version=$(< /usr/lib/$_electron/version)
   cd "$_archive"
   patch -Np1 -i ../fix-$pkgname-sh.patch
   patch -Np1 -i <(sed -e "s/@ELECTRON@/$_electron/" ../use-system-electron.patch)
@@ -59,15 +58,19 @@ prepare() {
   patch -Np1 -i ../fix-restart.patch
   patch -Np1 -i ../node-env-production.patch
   patch -Np1 -i ../no-unsafe-eval-warning.patch
+}
 
-  rm {,script/}package-lock.json
-  set -x
+build() {
+  _electron_version=$(< /usr/lib/$_electron/version)
+  cd "$_archive"
+  CXXFLAGS="${CXXFLAGS/ -fexceptions/}"
 
   env \
     ATOM_RESOURCE_PATH="$PWD" \
     npm_config_build_from_source=true \
     npm_config_target=$_electron_version \
-    apm install --cache "$srcdir/npm-cache"
+    GYP_DEFINES="openssl_fips=" \
+    apm install
 
   # Use system ctags
   pushd node_modules/symbols-view
@@ -85,25 +88,17 @@ prepare() {
   # build/Release/git.node: undefined symbol: git_net_url_is_default_port
   pushd node_modules/git-utils
   patch -Np1 -i "$srcdir/git-utils.patch"
-  popd
-
-  pushd script
-  npm install --cache "$srcdir/npm-cache"
-}
-
-build() {
-  cd "$_archive"
-  set -x
 
-  pushd node_modules/git-utils
   env \
     npm_config_disturl=https://electronjs.org/headers \
     npm_config_runtime=$_electron \
     npm_config_target=$_electron_version \
+    GYP_DEFINES="openssl_fips=" \
     node-gyp rebuild
   popd
 
   pushd script
+  npm install
   # Hack to avoid using Node > 12 (https://github.com/babel/babel/issues/11216)
   # Set ELECTRON_VERSION (see use-system-electron.patch)
   env \

Offline

#13 2022-04-03 10:57:51

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,178

Re: nodejs-lts-gallium and nodejs are in conflict

abeowitz wrote:

SCIMMIA, THIS is why we are IGNORING the pacman recommendation.  Did you read the link or try to understand the problem?  I hate reading through useless noise when looking for a solution to a problem....


https://wiki.archlinux.org/title/Atom_( … ot_working

Package Manager not working

It has been reported by some users that having an LTS version of node.js can break the package manager, some packages request an LTS version of nodejs so it is possible for a user to inadvertently change versions. see [1].

This can be rectified by installing nodejs, which should detect the conflict between the stable and LTS versions and then remove the LTS version.

FWIW, I used flatpak to install Atom, and had to reinstall my packages and environment, projects, etc.  Inconvenient, but OK for now.

That was put into the wiki when the current nodejs was version 14. The -lts release in question is 16, current is 17. Think there's a chance that info is out of date? Did you bother trying?

Offline

#14 2022-04-04 00:37:38

abeowitz
Member
Registered: 2010-09-01
Posts: 8

Re: nodejs-lts-gallium and nodejs are in conflict

Scimmia wrote:

That was put into the wiki when the current nodejs was version 14. The -lts release in question is 16, current is 17. Think there's a chance that info is out of date? Did you bother trying?

Changed PKGBUILD from LTS to regular nodejs...

█▓▒░abe@abe█▓▒░ Sun Apr 03 05:20:08pm 
~/pkgbuild/ asp export apm 
==> exporting apm:trunk

█▓▒░abe@abe█▓▒░ Sun Apr 03 05:20:14pm 
~/pkgbuild/ cd apm

█▓▒░abe@abe█▓▒░ Sun Apr 03 05:20:17pm 
~/pkgbuild/apm/ ll
.rw-r--r-- abe abe 384 B  Wed Mar 30 04:01:37 2022  apm.js
.rw-r--r-- abe abe 321 B  Wed Mar 30 04:01:37 2022  git-utils.patch
.rw-r--r-- abe abe 769 B  Wed Mar 30 04:01:37 2022  no-scripts.patch
.rw-r--r-- abe abe 3.9 KB Wed Mar 30 04:01:37 2022  PKGBUILD

█▓▒░abe@abe█▓▒░ Sun Apr 03 05:20:18pm 
~/pkgbuild/apm/ micro PKGBUILD

█▓▒░abe@abe█▓▒░ Sun Apr 03 05:21:38pm 
~/pkgbuild/apm/ makepkg
==> Making package: apm 2.6.5-2 (Sun 03 Apr 2022 05:21:44 PM PDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Downloading apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67.tar.gz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   150  100   150    0     0    787      0 --:--:-- --:--:-- --:--:--   789
100 47.1M    0 47.1M    0     0  6660k      0 --:--:--  0:00:07 --:--:-- 7246k
  -> Found apm.js
  -> Found no-scripts.patch
==> Validating source files with sha512sums...
    apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67.tar.gz ... Passed
    apm.js ... Passed
    no-scripts.patch ... Passed
==> Extracting sources...
  -> Extracting apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67.tar.gz with bsdtar
==> Starting prepare()...
patching file package.json
npm WARN old lockfile 
npm WARN old lockfile The package-lock.json file was created with an old version of npm,
npm WARN old lockfile so supplemental metadata must be fetched from the registry.
npm WARN old lockfile 
npm WARN old lockfile This is a one-time fix-up, please be patient...
npm WARN old lockfile 
npm WARN deprecated xmldom@0.1.27: Deprecated due to CVE-2021-21366 resolved in 0.5.0
npm notice 
npm notice New minor version of npm available! 8.5.5 -> 8.6.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.6.0
npm notice Run npm install -g npm@8.6.0 to update!
npm notice 
npm ERR! semver.simplifyRange is not a function

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/abe/pkgbuild/apm/src/npm-cache/_logs/2022-04-04T00_21_52_452Z-debug-0.log
==> ERROR: A failure occurred in prepare().
    Aborting...
    
█▓▒░abe@abe█▓▒░ Sun Apr 03 05:23:03pm 
~/pkgbuild/apm/ sudo npm install -g npm@8.6.0

changed 29 packages, and audited 201 packages in 2s

10 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
npm notice 
npm notice New minor version of npm available! 8.5.5 -> 8.6.0
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.6.0
npm notice Run npm install -g npm@8.6.0 to update!
npm notice

█▓▒░abe@abe█▓▒░ Sun Apr 03 05:23:22pm 
~/pkgbuild/apm/ makepkg                      
==> Making package: apm 2.6.5-2 (Sun 03 Apr 2022 05:23:27 PM PDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67.tar.gz
  -> Found apm.js
  -> Found no-scripts.patch
==> Validating source files with sha512sums...
    apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67.tar.gz ... Passed
    apm.js ... Passed
    no-scripts.patch ... Passed
==> Extracting sources...
  -> Extracting apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67.tar.gz with bsdtar
==> Starting prepare()...
patching file package.json
npm WARN old lockfile 
npm WARN old lockfile The package-lock.json file was created with an old version of npm,
npm WARN old lockfile so supplemental metadata must be fetched from the registry.
npm WARN old lockfile 
npm WARN old lockfile This is a one-time fix-up, please be patient...
npm WARN old lockfile 
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.3.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@0.4.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated mkdirp@0.3.5: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
npm WARN deprecated coffee-script@1.11.1: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
npm WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
npm WARN deprecated coffee-script@1.8.0: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
npm ERR! code 7
npm ERR! path /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/git-utils
npm ERR! command failed
npm ERR! command sh -c node-gyp rebuild
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@5.1.1
npm ERR! gyp info using node@16.14.2 | linux | x64
npm ERR! gyp info find Python using Python version 3.10.4 found at "/usr/bin/python"
npm ERR! gyp ERR! UNCAUGHT EXCEPTION 
npm ERR! gyp ERR! stack Error: Cannot find module './pubsuffix-psl'
npm ERR! gyp ERR! stack Require stack:
npm ERR! gyp ERR! stack - /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/tough-cookie/lib/cookie.js
npm ERR! gyp ERR! stack - /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/request/lib/cookies.js
npm ERR! gyp ERR! stack - /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/request/index.js
npm ERR! gyp ERR! stack - /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/node-gyp/lib/install.js
npm ERR! gyp ERR! stack - /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/node-gyp/lib/node-gyp.js
npm ERR! gyp ERR! stack - /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/node-gyp/bin/node-gyp.js
npm ERR! gyp ERR! stack     at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
npm ERR! gyp ERR! stack     at Function.Module._load (node:internal/modules/cjs/loader:778:27)
npm ERR! gyp ERR! stack     at Module.require (node:internal/modules/cjs/loader:1005:19)
npm ERR! gyp ERR! stack     at require (node:internal/modules/cjs/helpers:102:18)
npm ERR! gyp ERR! stack     at Object.<anonymous> (/home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/tough-cookie/lib/cookie.js:35:17)
npm ERR! gyp ERR! stack     at Module._compile (node:internal/modules/cjs/loader:1103:14)
npm ERR! gyp ERR! stack     at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
npm ERR! gyp ERR! stack     at Module.load (node:internal/modules/cjs/loader:981:32)
npm ERR! gyp ERR! stack     at Function.Module._load (node:internal/modules/cjs/loader:822:12)
npm ERR! gyp ERR! stack     at Module.require (node:internal/modules/cjs/loader:1005:19)
npm ERR! gyp ERR! System Linux 5.17.1-arch1-1
npm ERR! gyp ERR! command "/usr/bin/node" "/home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/.bin/node-gyp" "rebuild"
npm ERR! gyp ERR! cwd /home/abe/pkgbuild/apm/src/apm-ade8fbe124b18f5949a6b20b8e02a551d5405d67/node_modules/git-utils
npm ERR! gyp ERR! node -v v16.14.2
npm ERR! gyp ERR! node-gyp -v v5.1.1
npm ERR! gyp ERR! Node-gyp failed to build your package.
npm ERR! gyp ERR! Try to update npm and/or node-gyp and if it does not help file an issue with the package author.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/abe/pkgbuild/apm/src/npm-cache/_logs/2022-04-04T00_23_27_955Z-debug-0.log
==> ERROR: A failure occurred in prepare().
    Aborting...

Successfully attempted patches as linked above, but builds fail.

Too complicated to debug.  I have no clue about js environments/libraries/dependencies.

Giving up.  Using flatpak Atom, considering vscode with PlatformIO...

Still, Thanks for the info/help.

Offline

#15 2022-04-04 00:55:24

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,178

Re: nodejs-lts-gallium and nodejs are in conflict

smh

So the answer to my question of "Did you bother trying?" is 'no'. Seriously, people are overcomplicating this to a ridiculous extreme.

Offline

#16 2022-04-04 01:15:50

loqs
Member
Registered: 2014-03-06
Posts: 18,130

Re: nodejs-lts-gallium and nodejs are in conflict

Scimmia wrote:

So the answer to my question of "Did you bother trying?" is 'no'. Seriously, people are overcomplicating this to a ridiculous extreme.

Rebuilt apm and atom worked for me with nodejs from a very superficial test.

Offline

#17 2022-04-04 01:39:09

Scimmia
Fellow
Registered: 2012-09-01
Posts: 12,178

Re: nodejs-lts-gallium and nodejs are in conflict

And they would both work as-packaged with nodejs-lts-gallium

Offline

#18 2022-04-07 22:15:06

M1CK431
Member
Registered: 2015-11-28
Posts: 16

Re: nodejs-lts-gallium and nodejs are in conflict

HOWTO: install latest atom/apm AND nodejs (v17.X) at the same time

Using remakepkg, I replace nodejs-lts-gallium by nodejs in latest apm package dependencies.

In a REPKGBUILD file I wrote the following:

remove-depend nodejs-lts-gallium
add-depend nodejs

Then I apply it like this:

# repkg -i ./apm-2.6.5-2-x86_64.pkg.tar.zst -r REPKGBUILD 
>>> Removing dependency nodejs-lts-gallium
>>> Adding dependency nodejs
>>> Adding provision apm=2.6.5-2
>>> Successfully created /root/apm-2.6.5-2.1-x86_64.pkg.tar.xz

Finally I install it with pacman -U, then I was able to replace nodejs-lts-gallium by regular nodejs using pacman -S nodejs and agree the replacement.

If you install this modified apm package while nodejs v17.X is installed on your system, you are probably free to go.
But if you install it while nodejs-lts-gallium is installed on your system, there is still a last problem to solve: apm is using js packages built against nodejs v16.X while you are now using v17.X.
Fortunately, all you have to do is run npm i (or yarn, as you prefer) in /usr/lib/node_modules/atom-package-manager then remove the produced .lock file.

After that, atom and apm are perfectly working with the latest nodejs version!
So, at the end, all we need is someone with write access on community repository to simply replace nodejs-lts-gallium by nodejs in the latest apm package dependencies wink

Last edited by M1CK431 (2022-04-07 22:17:42)

Offline

#19 2022-04-09 00:00:52

Si_vis_pacem_para_Nutella
Member
From: Zurich
Registered: 2022-04-08
Posts: 1

Re: nodejs-lts-gallium and nodejs are in conflict

I had the same problem. After cloning & installing remakepkg, I followed M1CK431's instructions and it went through. Thank you.

Offline

Board footer

Powered by FluxBB