Byzantium backports unofficial

Upgrade to Crimson backports

Today I finally made a backup (for the first time) and tried to upgrade my daily used L5 with Byzantium backports to Crimson ones! Surprisingly, but everything went more or less well :partying_face:! A few packages were fixed in order to provide the right replacement, so, I will make a tag in the git repo to use it by someone who decided to do the same upgrade later.

0. Backup your phone

Just do it.
Also backup your Authentificator accounts if exist, the upgraded version does not read the old config.

1. Update sources.list

$ cat /etc/apt/sources.list
deb https://repo.pureos.net/pureos crimson main
deb https://repo.pureos.net/pureos crimson-security main
deb https://repo.pureos.net/pureos crimson-updates main
deb [allow-insecure=yes] https://codeberg.org/galilley/librem5-crimson-backports/raw/branch/master/debs ./

2. Run update and dist-upgrade

Yes, it was so simply

$ sudo apt update
$ sudo apt dist-upgrade

At this step be aware about preliminary apt output, especially, about this point:

The following packages have been kept back: …

This is the list of packages with a possibly broken dependencies. So, say N and try to update this packages separately to investigate the reason that prevent upgrade.
bm818-tools has problems with upgrade, but I left it as is. Will fix it later…

3. Downgrade dpkg

I hurried and upgrade dpkg to the latest version which is adopted to support t64 packages that are not supported in Crimson (Bookworm). So, I believe it would be better to return back the original version:

$ sudo apt reinstall dpkg=1.21.22pureos2~cri2 dpkg-dev=1.21.22pureos2~cri2 libdpkg-perl=1.21.22pureos2~cri2

4. Downgrade gcc-14

In the case if you used newer gcc from backports it worth to return back to Crimson’s one (gcc-12), but you need to downgrade some dependencies first:

$ sudo apt reinstall libstdc++6=12.2.0-14+deb12u1 libatomic1=12.2.0-14+deb12u1 libgomp1=12.2.0-14+deb12u1 libgcc-s1=12.2.0-14+deb12u1 libubsan1=12.2.0-14+deb12u1 libitm1=12.2.0-14+deb12u1 liblsan0=12.2.0-14+deb12u1 libcc1-0=12.2.0-14+deb12u1

5. Remove all t64-related packages

Just to clean your installation. You could get the list of such packages as follow:

$ apt list | grep t64

Some packages should be upgraded manually to replace their t64 versions:

sudo apt install libgnome-desktop-3-20 libgnome-bg-4-2 libgnome-desktop-4-2 libgnome-rr-4-2 libhwy1 libpng16-16 libgsound0

6. Reboot your phone

Say bye-bye to Byzantium…

Afterwords

At least I’m able to reboot successfully. I’m not sure that all functionality preserved, so, here I will write about the issues that I found after upgrade:

  • chatty crash: $ sudo apt reinstall libpurple0
  • no vibro feedback: have no idea yet…
  • chromium do not see the camera: go to chrome://flags and enable PipeWire Camera support
  • to be continued…
4 Likes