Bug #1891
openrc installation errors - conflicting files
0%
Description
Upon the command
pacstrap -i /mnt base-openrc
I first get
warning: option --root is deprecated; use --sysroot instead
After choosing the defaults, prior to listing the packages to install, I get
warning: removing 'systemd' from target list because it conflicts with 'notsystemd'
warning: removing 'dbus' from target list because it conflicts with 'dbus-elogind'
warning: dependency cycle detected:
warning: openrc-init will be installed before its openrc dependency
I'm guessing at least some of this is normal, but I figured it was worth including everything.
After proceeding with the installation and downloading everything
error: failed to commit transaction (conflicting files)
/mnt/usr/include/libudev.h exists in both 'libudev' and 'libeudev'
/mnt/usr/lib/libudev.so exists in both 'libudev' and 'libeudev'
/mnt/usr/lib/libudev.so.1 exists in both 'libudev' and 'libeudev'
/mnt/usr/lib/pkgconfig/libudev.pc exists in both 'libudev' and 'libeudev'
/mnt/usr/bin/systemd-sysusers exists in both 'notsystemd' and 'opensysusers'
Errors occurred, no packages were upgraded.
==> ERROR: Failed to install packages to new root
Related issues
History
Updated by bill-auger almost 6 years ago
- Priority changed from bug to critical
- Assignee set to lukeshu
- Category set to OpenRC
Updated by lukeshu almost 6 years ago
The problem is that libre/libudev-239.0-2.parabola1 exists, and that pcr/libeudev-3.2.5-3 exists. They shouldn't. The are replaced by libre/systemd-libudev-239.0-2.parabola3 and pcr/eudev-libudev-2.5-4 respectively. However, db-remove is broken, and for the moment I can't remove the old package names (since it only works by specifying pkgbase, and pkgname selection is broken).
Updated by lukeshu almost 6 years ago
warning: removing 'systemd' from target list because it conflicts with 'notsystemd'
BTW, notsystemd-234.1-1 is broken, it's linked against an old version of libcryptsetup.so
. I'm going to try to get notsystemd 239 released this week. We'll see.
Updated by bill-auger almost 6 years ago
christian -
i think what lukeshu was trying to say was that it will not be possible to net-install an openrc system this week - it is still possible using the "complete" OpenRC/CLI ISO
Updated by lukeshu almost 6 years ago
You should be able to --ignore={libudev,libeudev}. It might be necessary to do that for more packages as well.
Updated by lukeshu almost 6 years ago
After fixing dbscripts and removing the offending packages, this works for me:
sudo pacstrap -i /mnt base-openrc --ignore=opensysusers
It is necessary to avoid installing opensysusers since it has a file-conflict with systemd, which is pulled in by mkinitcpio and syslog-ng.
Updated by bill-auger almost 6 years ago
there is a modified 'opensysusers' in [pcr-testing] that is needed to install desktop on base-openrc - please base any changes off that one - it works well - it is ready to move [pcr] if you want to do that
pcr-testing/opensysusers 0.3.2-5.parabola1
Updated by lukeshu almost 6 years ago
Alright, I've moved it in the repos:
[repo@winston ~]$ db-move pcr-testing pcr opensysusers ==> Moving packages from [pcr-testing] to [pcr]... -> opensysusers (x86_64) pkgname=opensysusers (0.3.2-5.parabola1) -> opensysusers (i686) pkgname=opensysusers (0.3.2-5.parabola1) -> opensysusers (armv7h) pkgname=opensysusers (0.3.2-5.parabola1)
and in git: https://git.parabola.nu/abslibre.git/commit/?id=41111562407b4951c47f6fb2f926dedf13f302ab
Updated by christian almost 6 years ago
Should it be working normally now? I'm getting the following:
warning: option --root is deprecated; use --sysroot instead
warning: removing 'dbus' from target list because it conflicts with 'dbus-elogind'
warning: dependency cycle detected:
warning: openrc-init will be installed before its openrc dependency
error: failed to commit transaction (conflicting files)
/mnt/usr/bin/systemd-sysusers exists in both 'systemd' and 'opensysusers'
Errors occurred, no packages were upgrade.
==> ERROR: Failed to install packages to new root
Should I just type in the --ignore=opensysusers when installing?
Updated by lukeshu almost 6 years ago
Yes, add --ignore=opensysusers
. That will cause it to specifically prompt you about whether you want to install it; say no when it does.
Updated by lukeshu almost 6 years ago
- Blocked by Bug #1893: [mkinitcpio] Please depend on 'udev' rather than 'systemd' added
Updated by lukeshu over 5 years ago
- Blocked by Bug #1894: [syslog-ng] Gets pulled in by [base-openrc], but depends on systemd added
Updated by lukeshu over 5 years ago
I've created an etherpad about all of the packages that depend on systemd and possibly cause problems for OpenRC users: https://pad.riseup.net/p/ParabolaSystemdDependants