The /usr merge!!!!
Depends !6475 (merged)
This MR takes the combined work from @craftyguy and me in craftyguy/merge-usr!1 (merged) and https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/85504 to enforce the /usr merge downstream in an upstreamable way.
Testing instructions
This is now ready for mass testing. But just in case things go wrong, we need logs!
doas apk add mrtest
mrtest upgrade 6389 # This MR
# Follow over mrtest prompts and upgrade as required
# Get us some extra info so we can know if things went right
apk list --installed > packages.txt
# The command below will create merge-usr.tar file for upload
busybox tar c -f merge-usr.tar /var/log/apk.log packages.txt /etc/apk/world
Then please upload the merge-usr.tar file so we can check the results and which things were tested!
Results
Tests executed:
-
Install on empty chroot (bootstrap) -
Basic systemd edge upgrade -
Basic openrc edge upgrade -
Complete desktop upgrades: -
GNOME -
stable -
edge openrc - successful merge on GNOME desktop (@pabloyoyoista)
- successful merge on Phosh (@WeirdTreeThing)
-
edge systemd - successful merge on GNOME desktop in qemu (@craftyguy)
- successful merge on GNOME desktop on main machine / generic-x86_64 (@fossdd)
- successful merge on GNOME mobile in qemu (@craftyguy)
- successful merge on GNOME desktop (@longnoserob)
-
-
Plasma -
stable -
edge openrc -
edge systemd - successful merge on Plasma Desktop in qemu (@craftyguy)
- successful merge on Plasma Mobile in qemu (@craftyguy)
-
-
SXMO -
stable -
edge openrc -
edge systemd
-
-
COSMIC -
edge systemd - successful merge on lenovo-21bx (@craftyguy)
-
-
MATE -
edge openrc - sucessfull merge on asus-tf201 (@longnoserob, !6389 (comment 489258))
-
-
Problems found
-
rclone https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/82456 -
sysstat: iostat installed in different location as that from busybox: installed in different location as that from busybox: https://gitlab.alpinelinux.org/alpine/aports/-/issues/17068 - patch sent upstream: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/83131
-
util-linux: -
ionice and setpriv : https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/82463
-
-
coreutils: -
link installed in different location (/usr/bin) as that from busybox and uutils-coreutils (/bin)
-
-
e2fsprogs: chattr and lsattr, handled by the script and we should probably fix that - patch sent upstream: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/83130
-
kdb: kdb_mode installed in different location as that from busybox - patch sent upstream: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/83128
-
setarch: linux32 and linux64 installed in different locations as that from busybox. Being symlinks both in busybox and setarch the script keeps the /usr/binones by default. But should error instead- patch sent upstream: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/83141
-
gzip: /usr/bin/zcat conflicts with busybox's /bin/zcat - patch sent upstream: https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/83132
-
systemd install: -
udevadm conflicts as the link is not direct. This likely needs a script fix, or a packaging fix in systemd. (/bin/udevadm points to /usr/lib/systemd/systemd-udevd which points to /usr/bin/udevadm). Fixed with craftyguy/merge-usr!1 (0c93ce1b) -
busybox: halt, init, poweroff, reboot installed in /sbin, but systemd counterparts installed in/usr/sbin. Being symlinks both in busybox and systemd the script keeps the/usr/binones by default. But should error instead
-
Edited by Pablo Correa Gomez