Include:Upgrading to Edge: Difference between revisions

From Alpine Linux
(use path template)
(Added "/usr merge" instructions)
 
(14 intermediate revisions by 3 users not shown)
Line 1: Line 1:
An upgrade of Alpine Linux from a stable version to the rolling development version ''edge'' basically requires the same steps as [[Upgrading_Alpine#Upgrading_to_latest_release|Upgrading to latest release]].
There are only two differences:-
* When editing the {{Path|/etc/apk/repositories}} file, all referenced repository versions (such as {{ic|v{{#expr:{{AlpineLatest}}}}}} or {{ic|latest-stable}}) therein need to be pointing to <code>'''edge'''</code> as follows. {{cat|/etc/apk/repositories|#/media/cdrom/apks
http://dl-cdn.alpinelinux.org/alpine/edge/main
http://dl-cdn.alpinelinux.org/alpine/edge/community
@testing http://dl-cdn.alpinelinux.org/alpine/edge/testing}}
* When the upgrade completes, ''edge'' currently issues an encouragement to run a ''"/usr merge"'' script that would update the base filesystem hierarchy:
<pre>
usr_merge_nag.sh:
* WARNING: The current system is not /usr-merged. You are encouraged to
* migrate manually to ensure the best-possible support. See
* https://alpinelinux.org/posts/2025-10-01-usr-merge.html for more details
</pre>
:Applying this change should not affect general users.  For background  information on this process, consult the [https://alpinelinux.org/posts/2025-10-01-usr-merge.html news release], including its listing of the types of installations that may be affected.
:This update is not currently a requirement but will be implemented in the future. 
:To attempt its implementation with a dry run first that should foresee errors in execution:
<pre>
# As per a standard system upgrade to Edge or to a new release
doas apk upgrade -aU   


An upgrade of Alpine Linux from a stable version to the rolling development version ''edge'' basically requires the same steps as [[Upgrading_Alpine#Upgrading_to_latest_release|Upgrading to latest release]].
# Install the script
doas apk add merge-usr


The crucial difference is, that when editing the {{Path|/etc/apk/repositories}} file, all referenced repository versions (such as <code><nowiki>v3.2</nowiki></code> or <code><nowiki>latest-stable</nowiki></code>) therein need to be pointing to <code>'''edge'''</code> as in:
# Simulate the outcome of the merge: do a "dry run". This would report any errors onscreen
doas merge-usr --dryrun


<code><nowiki>https://<mirror-server>/alpine/edge/main</nowiki></code>
# If any error is reported, it would be appreciated if you could kindly open an issue at https://gitlab.alpinelinux.org/alpine/aports//issues/new


{{Warning|Do not enable stable and edge repos at the same time. This can break your system. Either use edge '''or''' stable.}}
# WARNING: The next step would be to run the script, but it is only to be run as long as the steps above were performed without any errors
doas merge-usr


After upgrading to edge, the currently installed edge version may be checked with {{Cmd|$ cat /etc/alpine-release}} and referring to the build date that is attached to the release.
# The script would no longer be required and may now be deleted from the system
doas apk del merge-usr


[[Category:Package Manager]]
# Remember to sync and reboot, as per usual after a system upgrade
[[Category:Installation]]
doas sync
[[Category:Development]]
doas reboot
</pre>

Latest revision as of 17:41, 8 October 2025

An upgrade of Alpine Linux from a stable version to the rolling development version edge basically requires the same steps as Upgrading to latest release.

There are only two differences:-

  • When editing the /etc/apk/repositories file, all referenced repository versions (such as v3.22 or latest-stable) therein need to be pointing to edge as follows.

    Contents of /etc/apk/repositories

    #/media/cdrom/apks http://dl-cdn.alpinelinux.org/alpine/edge/main http://dl-cdn.alpinelinux.org/alpine/edge/community @testing http://dl-cdn.alpinelinux.org/alpine/edge/testing
  • When the upgrade completes, edge currently issues an encouragement to run a "/usr merge" script that would update the base filesystem hierarchy:
usr_merge_nag.sh: 
* WARNING: The current system is not /usr-merged. You are encouraged to
* migrate manually to ensure the best-possible support. See
* https://alpinelinux.org/posts/2025-10-01-usr-merge.html for more details
Applying this change should not affect general users. For background information on this process, consult the news release, including its listing of the types of installations that may be affected.
This update is not currently a requirement but will be implemented in the future.
To attempt its implementation with a dry run first that should foresee errors in execution:
# As per a standard system upgrade to Edge or to a new release
doas apk upgrade -aU    

# Install the script
doas apk add merge-usr

# Simulate the outcome of the merge: do a "dry run".  This would report any errors onscreen
doas merge-usr --dryrun

# If any error is reported, it would be appreciated if you could kindly open an issue at https://gitlab.alpinelinux.org/alpine/aports/–/issues/new 

# WARNING: The next step would be to run the script, but it is only to be run as long as the steps above were performed without any errors
doas merge-usr

# The script would no longer be required and may now be deleted from the system
doas apk del merge-usr

# Remember to sync and reboot, as per usual after a system upgrade
doas sync
doas reboot