Upgrade to repository main

From Alpine Linux
Revision as of 20:43, 31 July 2009 by Ncopa (talk | contribs) (Initial notes for upgrading to signed repositories)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

How to upgrade to signed repositories

From Alpine 1.9 alpha18 and newer the packages and repositories are signed. Due to this change the index format changed. Index was also renamed from APK_INDEX.gz to APKINDEX.tar.gz.

We used this occation to also merge the core and extra repositories into a single repository: main.

If you boot from CF, USB, cdrom and run from tmpfs, then its just a matter of replacing the boot media and reboot. If you boot and runn from a harddisk, then its really recommended to reinstall the system.

This document shows how to upgrade to the signed 'main' repository if you still want to try it. It might work, it might not.

Make backup

Before you start, you should make a backup of your configuration. This can be done with the lbu utility.

lbu package backup.apkovl.tar.gz

Copy the backup.apkovl.tar.gz to a safe place. Might be handy in case the upgrade fail and you end up reinstalling.

Upgrading basic packages

Make sure that you have latest apk-tools and other base utilites from 'core' before we switch to the new, 'main' repository.

apk add -u alpine-base

(In case you get an ERROR: libcrypto: Trying to overwrite usr/lib/libcrypto.so owned by openssl. due to a change in openssl/libcrypto you can solve that with apk add -u --force openssl and then retry apk add -u alpine-base)

Now, replace the core and extra repositories with 'main' in /etc/apk/repositories with a text editor. Then start the upgrade and re-install the recompiled and signed packages. It might work, it might break you system, so again, make sure you have that backup.

apk upgrade -a

If things went good, it should be a question of reboot and you are done.