When I decided to do an upgrade today I get an error relating to the fact that the package lib32-systemd owns files needed by lib32-libudev and lib32-elogind. Is there a way to fix this conflict so I can upgrade properly? I can't just remove lib32-systemd since a lot of my lib32 packages need it for some reason
Looking for conflicting packages...
Packages (10) kitty-git-1:r8746.gd70610f5-1 lib32-dbus-1.12.20-1.1 lib32-elogind-246.10-2
lib32-eudev-249.4-2 lib32-libffi-3.4.2-3.1 lib32-libltdl-2.4.6+42+gb88cebd5-1.1
lib32-polkit-0.120-3.1 libwebp-1.2.2-1 neon-0.32.2-1 rubberband-2.0.1-1
Total Installed Size: 25.93 MiB
Net Upgrade Size: 1.24 MiB
:: Proceed with installation? [Y/n]
(10/10) checking keys in keyring [#####################################] 100%
(10/10) checking package integrity [#####################################] 100%
(10/10) loading package files [#####################################] 100%
(10/10) checking for file conflicts [#####################################] 100%
error: failed to commit transaction (conflicting files)
lib32-eudev: /usr/lib32/libudev.so exists in filesystem (owned by lib32-systemd)
lib32-eudev: /usr/lib32/libudev.so.1 exists in filesystem (owned by lib32-systemd)
lib32-eudev: /usr/lib32/pkgconfig/libudev.pc exists in filesystem (owned by lib32-systemd)
lib32-elogind: /usr/lib32/pkgconfig/libsystemd.pc exists in filesystem (owned by lib32-systemd)
Errors occurred, no packages were upgraded.
-> error installing repo packages
https://wiki.artixlinux.org/Main/Repositories
https://wiki.artixlinux.org/Main/Repositories#Arch_repositories
https://wiki.artixlinux.org/Site/SteamAnd32bit
https://wiki.archlinux.org/title/Arch_User_Repository
I have tested and its not kitty that is the source of the problem. I also have multi-lib on so I am not sure how I even got here
Alright I have fixed it basically I just do this and it removes the package without trying to remove all packages that need lib32-systemd so I can install the Artix replacements instead
sudo pacman -Rd --nodeps lib32-systemd
EDIT:Might not be a good soultion since when I did this steam no longer works.
EDIT2: I have steam working again I just had to uninstall only lib32-udev lib32-elogind and then reinstall lib32-systemd and upgrades seem to still work but time will tell I guess?
You should be using the lib32 repos. I'm not sure why you have lib32-systemd installed on an Artix system. The whole point is to remove systemd. You should be using lib32-udev and lib32-elogind instead of lib32-systemd.
I had installed both of those before but now steam doesnt work for whatever reason now and that was the only way to fix it even if I use the version of steam in lib32 repo
Error: You are missing the following 32-bit libraries, and Steam may not run:
libsystemd.so.0
Hmm okay that's weird. I have steam installed from lib32 with no such libsystemd 32-bit library and it runs fine.
Alright I fixed it I had to do a symlink and that fixed it
sudo ln -s /usr/lib32/libelogind.so /usr/lib32/libsystemd.so.0
How about carefully reading the first three links?
I've already read all of those pages before and yes my pacman.conf is setup and my issue is already fixed
You applied a workaround, not a fix.
Artix repositories need to come before Arch repositories in /etc/pacman.conf. If they were set up like that, this wouldn't happen:
error: failed to commit transaction (conflicting files)
lib32-eudev: /usr/lib32/libudev.so exists in filesystem (owned by lib32-systemd)
lib32-eudev: /usr/lib32/libudev.so.1 exists in filesystem (owned by lib32-systemd)
lib32-eudev: /usr/lib32/pkgconfig/libudev.pc exists in filesystem (owned by lib32-systemd)
lib32-elogind: /usr/lib32/pkgconfig/libsystemd.pc exists in filesystem (owned by lib32-systemd)
Instead, you would see this:
$ pacman -Ss lib32-systemd
lib32/lib32-artix-archlinux-support 1-1
Add arch linux multilib repo support
$ LC_ALL=C pacman -Si lib32-artix-archlinux-support
Repository : lib32
Name : lib32-artix-archlinux-support
Version : 1-1
Description : Add arch linux multilib repo support
Architecture : any
URL : https://gitea.artixlinux.org/artix
Licenses : GPL
Groups : None
Provides : lib32-systemd
Depends On : artix-archlinux-support lib32-elogind
Optional Deps : None
Conflicts With : lib32-systemd
Replaces : None
Download Size : 2.32 KiB
Installed Size : 0.00 KiB
Packager : Artix Build Bot <jenkins@artixlinux.org>
Build Date : Sun Jul 4 15:55:59 2021
Validated By : MD5 Sum SHA-256 Sum Signature
Emphasizing:
Provides : lib32-systemd
Conflicts With : lib32-systemd
As Dudemanguy said, the whole point of Artix is to not have any
*systemd* packages around.
I dont have that systemd package installed anymore as I said I fixed it by symlinking since I already had those packages all I had todo was remove the systemd package, reinstall the artix ones and symlink and that fixed it. I already have my pacman.conf set correctly as you said above I just must of accidentally installed lib32-systemd by mistake early on and just not realize it until now.