icu-data-full breakage
Alpine Edge, x86_64
Upon upgrading my machine, I've encountered this peculiar thing:
# apk upgrade -a
fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
(1/128) Purging postgresql15-openrc (15.4-r1)
(2/128) Purging postgresql16-plpython3-contrib (16.0-r1)
(3/128) Purging postgresql16-plpython3 (16.0-r1)
(4/128) Purging postgresql16-contrib (16.0-r1)
(5/128) Purging postgresql16-openrc (16.0-r1)
(6/128) Purging postgresql16 (16.0-r1)
Executing postgresql16-16.0-r1.pre-deinstall
*
* You are uninstalling your default PostgreSQL version (16) which seems to be
* in use! If it's *not* intentional and you want to preserve this version,
* install it explicitly: `apk add postgresql16`.
*
* Please note that to upgrade your cluster to a new major version using
* pg_upgrade(1), you must have both the old and new versions installed.
*
ERROR: postgresql16-16.0-r1.pre-deinstall: script exited with error 1
(7/128) Purging postgresql16-client (16.0-r1)
...
(96/128) Upgrading libpq (16.0-r1 -> 16.0-r2)
(97/128) Installing postgresql14-client (14.9-r0)
(98/128) Installing postgresql14 (14.9-r0)
Executing postgresql14-14.9-r0.post-install
*
* If you want to use JIT in PostgreSQL, install postgresql14-jit or
* postgresql-jit (if you didn't install specific major version of postgresql).
*
(99/128) Installing postgresql14-openrc (14.9-r0)
(100/128) Installing postgresql14-contrib (14.9-r0)
...
(110/128) Installing postgresql14-plpython3 (14.9-r0)
(111/128) Installing postgresql14-plpython3-contrib (14.9-r0)
(112/128) Upgrading postgresql15-client (15.4-r1 -> 15.4-r2)
...
Executing postgresql-common-1.2-r0.trigger
* Setting postgresql15 as the default version
*
* You are using 'postgresql15'. It's recommended to upgrade to the latest
* major version provided by package 'postgresql16'.
* Use command 'pg_versions' to switch between versions.
*
OK: 4261 MiB in 677 packages
(although I've installed postgresql
package which should default to postgresql16
)
Installing postgresql16
gives this:
# apk add postgresql16
ERROR: unable to select packages:
icu-data-full-73.2-r3:
breaks: icu-libs-74.1-r0[icu-data=74.1-r0]
satisfies: dotnet6-runtime-6.0.24-r0[icu-data-full] icu-libs-73.2-r3[icu-data=73.2-r3]
icu-libs-73.2-r3:
conflicts: icu-libs-74.1-r0
satisfies: dotnet6-runtime-6.0.24-r0[icu-libs] nodejs-current-21.1.0-r0[so:libicui18n.so.73]
nodejs-current-21.1.0-r0[so:libicuuc.so.73] postgresql14-14.9-r0[so:libicui18n.so.73]
postgresql14-14.9-r0[so:libicuuc.so.73] re2-2023.11.01-r0[so:libicuuc.so.73]
icu-libs-74.1-r0:
conflicts: icu-libs-73.2-r3
satisfies: dotnet6-runtime-6.0.24-r0[icu-libs] postgresql16-16.0-r2[so:libicui18n.so.74] postgresql16-16.0-r2[so:libicuuc.so.74]
So there's something wrong with icu
dependencies. apk fix
doesn't help:
# apk fix icu-data-full
(1/1) [APK unavailable, skipped] Reinstalling icu-data-full (73.2-r3)
OK: 4247 MiB in 674 packages
Manually downloading newer icu-libs
and icu-data-full
and trying to install them gives this:
# apk add /home/sh/icu-data-full-74.1-r0.apk /home/sh/icu-libs-74.1-r0.apk
ERROR: unable to select packages:
icu-data-full-74.1-r0:
breaks: icu-libs-73.2-r3[icu-data=73.2-r3]
satisfies: world[icu-data-full><Q1nTcRAvEG/AhPuwxzxq0ApVaZd9E=] dotnet6-runtime-6.0.24-r0[icu-data-full]
icu-libs-74.1-r0[icu-data=74.1-r0]
icu-libs-73.2-r3:
conflicts: icu-libs-74.1-r0
breaks: world[icu-libs><Q1wRVSzeMtkH41/eXvwFLGIYJ93hc=]
satisfies: dotnet6-runtime-6.0.24-r0[icu-libs] nodejs-current-21.1.0-r0[so:libicui18n.so.73]
nodejs-current-21.1.0-r0[so:libicuuc.so.73] re2-2023.11.01-r0[so:libicuuc.so.73]
icu-libs-74.1-r0:
conflicts: icu-libs-73.2-r3
satisfies: world[icu-libs><Q1wRVSzeMtkH41/eXvwFLGIYJ93hc=] dotnet6-runtime-6.0.24-r0[icu-libs]
postgresql16-16.0-r2[so:libicui18n.so.74] postgresql16-16.0-r2[so:libicuuc.so.74]
And here's the output on another machine:
# apk add Downloads/icu-data-full-74.1-r0.apk Downloads/icu-libs-74.1-r0.apk
ERROR: unable to select packages:
icu-data-full-74.1-r0:
breaks: icu-libs-73.2-r3[icu-data=73.2-r3]
satisfies: world[icu-data-full><Q1nTcRAvEG/AhPuwxzxq0ApVaZd9E=] qt6-qt5compat-6.6.0-r0[icu-data-full]
icu-libs-74.1-r0[icu-data=74.1-r0]
icu-libs-73.2-r3:
conflicts: icu-libs-74.1-r0
breaks: world[icu-libs><Q1wRVSzeMtkH41/eXvwFLGIYJ93hc=]
satisfies: qt6-qtbase-6.6.0-r1[so:libicui18n.so.73] qt6-qtbase-6.6.0-r1[so:libicuuc.so.73]
libreoffice-calc-7.6.2.1-r0[so:libicui18n.so.73] libreoffice-calc-7.6.2.1-r0[so:libicuuc.so.73]
libreoffice-common-7.6.2.1-r0[so:libicui18n.so.73] libreoffice-common-7.6.2.1-r0[so:libicuuc.so.73]
libreoffice-writer-7.6.2.1-r0[so:libicui18n.so.73] libreoffice-writer-7.6.2.1-r0[so:libicuuc.so.73]
firefox-119.0-r1[so:libicui18n.so.73] firefox-119.0-r1[so:libicuuc.so.73]
thunderbird-115.4.1-r0[so:libicui18n.so.73] thunderbird-115.4.1-r0[so:libicuuc.so.73]
libmspub-0.1.4-r19[so:libicui18n.so.73] libmspub-0.1.4-r19[so:libicuuc.so.73] libcdr-0.1.7-r11[so:libicui18n.so.73]
libcdr-0.1.7-r11[so:libicuuc.so.73] mpd-0.23.14-r0[so:libicui18n.so.73] mpd-0.23.14-r0[so:libicuuc.so.73]
libe-book-0.1.3-r22[so:libicui18n.so.73] libe-book-0.1.3-r22[so:libicuuc.so.73] libzmf-0.0.2-r17[so:libicuuc.so.73]
libvisio-0.1.7-r9[so:libicuuc.so.73] libqxp-0.0.2-r9[so:libicuuc.so.73] qt6-qt5compat-6.6.0-r0[so:libicuuc.so.73]
icu-libs-74.1-r0:
conflicts: icu-libs-73.2-r3
satisfies: world[icu-libs><Q1wRVSzeMtkH41/eXvwFLGIYJ93hc=] boost1.82-locale-1.82.0-r3[so:libicui18n.so.74]
boost1.82-locale-1.82.0-r3[so:libicuuc.so.74] harfbuzz-icu-8.2.2-r1[so:libicuuc.so.74]
Yeah ¯\_(ツ)_/¯