Manjaro Difference between revisions of "Switching Branches"

Difference between revisions of "Switching Branches"

From Manjaro
imported>Fhdk
(Do not use -Syyu)
 
(24 intermediate revisions by 11 users not shown)
Line 1: Line 1:
= Overview =
<languages/>
 
__TOC__
{{warning|Software downloaded and installed from the ''Testing branch'' will, by nature, not have been fully tested, and may be unstable.}}
<translate>
{{warning|Software downloaded and installed from the ''Unstable branch'' may break your system! '''They should therefore only be used by more experienced users and Manjaro testers'''. Less experienced users may wish to switch to the '''Testing''' branch instead.}}
= Overview = <!--T:1-->
{{Important|Manjaro specific packages downloaded and installed from the ''Testing branch'' or ''Unstable branch'' will, by nature, not have been fully tested, and may be unstable.


<!--T:2-->
Please refer to [[System Maintenance]] Section for important maintenance information.}}
One of the many features that sets Manjaro apart from other Arch-based distributions is that it uses its own dedicated software branches, rather than relying on those provided by Arch itself. In fact, to ensure continued stability and reliability, Manjaro actually uses three distinct branches:
One of the many features that sets Manjaro apart from other Arch-based distributions is that it uses its own dedicated software branches, rather than relying on those provided by Arch itself. In fact, to ensure continued stability and reliability, Manjaro actually uses three distinct branches:
* '''Stable branch''': The packages that come to stable have gone through roughly a couple of weeks testing by the users of the ''Unstable/Testing'' repos, before they get the packages. These packages are usually free of any problems.
* '''Testing branch''': This is the second line of defense. Being a larger number of users than those using ''Unstable'', they refine the work done prior to them by providing feedback on the packages they recieve on updates.
* '''Unstable branch''': Unstable is synced several times a day with Arch package releases. Only a subset of Arch packages are modified to suit Manjaro. Those that use ''Unstable'' need to have the skills to get themselves out of trouble when they move their system to this branch. They are the Manjaro users who are most likely to need to use such skills. Due to the feedback from the users of the ''Unstable'' repo, many issues are caught and fixed at this level. Although the very latest software will be located here, <u>using the ''unstable branch'' is usually safe but - in rare cases - may cause issues with your system!</u>


* '''Stable branch''': the packages that come to stable have gone through roughly a couple of weeks testing by the users of the ''Unstable/Testing'' repos, before they get the packages. These packages are usually free of any problems.
<!--T:3-->
* '''Testing branch''': These users are the next line of defense. Being a larger number of users than those using ''Unstable'', they refine the work done prior to them installing the packages with their feedback.
'''Summing up''', Manjaro packages start their lives in the ''unstable'' branch. Once they are a deemed stable, they are moved to the ''testing'' branch, where more tests will be realized to ensure the package is ready to be submitted to the ''stable'' branch.
* '''Unstable branch''': which usually runs inside of 3 days behind Arch package releases & are modified as necessary to suit Manjaro. Those that use ''Unstable'' need to have the skills to get themselves out of trouble when they upgrade into it. They are the Manjaro users who are most likely to need to use such skills. Due to the feedback from the users of the ''Unstable'' repo, most bugs are found & fixed for the rest of Manjaro's users. Although the very latest software will be located here, <u>using the ''unstable branch'' may consequently break your system!</u>


'''Summing up''', unstable packages are tested in the ''unstable'' branch. Once they are a bit stable, they are moved to the ''testing'' branch, where more tests will be realized to ensure the package is ready to be submitted to the ''stable'' branch.
<!--T:4-->
{{BoxSecondary|Note on unstable branch|'''Remember''': Manjaro specific packages such as kernels, kernel modules and Manjaro applications enter the repo on ''unstable'' branch and it is those packages which are considered unstable when they enter.
<p>Unmodifed packages synced from Arch repo are considered stable as they have already been vetted by Archlinux Community.</p>}}


{{Note|Please be aware that the ''unstable'' branch comes directly from Arch Linux's stable branch.}}
== Changing to another branch == <!--T:5-->
{{BoxSuccess|Have you considered?|Why not become an active part of the Manjaro community by becoming a tester?}}
In order to access a branch, you need to change your pacman-mirrors configuration.


= Accessing the Testing Branches =
<!--T:6-->
{{tip|Why not become and active part of the Manjaro community by becoming a tester? Just let us know of any bugs by reporting them via our '''[http://blog.manjaro.org/feedback/ feedback form]'''.}}
You should substitute the <font color="green">value colored in green</font> (for illustrative purposes only) to one of the following: '''stable''', '''testing''' or '''unstable'''.
In order to access the testing branches, there are two methods available. The first one is a temporary solution, in which if the mirrorlist is recompiled after switching the branch, the selected branch will be reverted to ''stable''. The second one is a permanent solution, where checking for updates using the Update Manager GUI will check for updates from the selected branch.
sudo pacman-mirrors --api --set-branch <font color="green">{branch}</font>


== Temporary Method ==
<!--T:7-->
Changing the selected branch is fairly simple. We make use of the '''pacman-mirrors''' command to update the selected branch.
After you changed the branch, rebuild the mirrorlist and update your packages:
Run the following command in a terminal note that you can add a number after -f to limit the number of mirrors:
{{UserCmd|command=sudo pacman-mirrors --fasttrack 5 && sudo pacman -Syu}}
sudo pacman-mirrors --fasttrack --branch {branch}'' && sudo pacman -Syyu


* '''pacman-mirrors --fasttrack''' will generate a new mirrorlist, sorting the available servers according to their access time.
== Questions == <!--T:8-->
** '''--branch {branch}''''' tells ''pacman-mirrors'' to use the specified branch. Valid values are: ''stable'', ''testing'', ''unstable''
=== How do I go back after changing to one of the testing branches? ===
* '''pacman -Syyu'' will synchronize the local package databases with the remote package databases.
Going back to the stable branch is easy. All you have to do is to repeat the above, and use ''stable'' as the branch value.
** '''-yy''' will force a refresh on the local package databases, even if they are up to date.
** '''-u''' performs an upgrade to the installed packages.


<!--T:9-->
'''Be aware''' that after switching to a more stable branch you will receive messages from pacman, informing about newer packages installed than available in the repo. Don't be alarmed as the situation will resolve itself when the packages reaches your current branch.


{{Note|You '''must''' replace '''{branch}''' with one of the following options: ''stable'', ''testing'', ''unstable''}}
<!--T:10-->
{{Note|Rebuilding the mirrorlist after performing the method described above will revert the selected branch to ''stable''. If you want a permanent solution, check out below.}}
If for whatever reason you ''do'' wish to also 'downgrade' packages while changing branches add an extra ''u'' to the pacman command:
 
{{UserCmd|command=sudo pacman -Syuu}}
== Permanent Method ==
You should substitute the <font color="green">value colored in green</font> (for illustrative purposes only) to one of the following: ''stable'', ''testing'', ''unstable''.
sudo pacman-mirrors --api --set-branch <font color="green">{branch}</font>
 
After you changed the branch, rebuild the mirrorlist and update your packages:
sudo pacman-mirrors --fasttrack 5 && sudo pacman -Syyu


== Questions ==
=== How do I check, which branch I am currently on? === <!--T:11-->
=== How do I go back to the stable branch after permanently changing to one of the testing branches? ===
{{UserCmd|command=pacman-mirrors -G}}
Going back to the stable branch is easy. All you have to do is follow the [[Change Selected Pacman Branch#Permanent_Method|Permanent Method steps]], and use ''stable'' as the branch value.




[[Category:Contents Page]]
</translate>
[[Category:Contents Page{{#translation:}}]]

Latest revision as of 21:52, 9 October 2023

Other languages:
English • ‎русский • ‎فارسی • ‎中文(中国大陆)‎

Overview

Info
Manjaro specific packages downloaded and installed from the Testing branch or Unstable branch will, by nature, not have been fully tested, and may be unstable. Please refer to System Maintenance Section for important maintenance information.


One of the many features that sets Manjaro apart from other Arch-based distributions is that it uses its own dedicated software branches, rather than relying on those provided by Arch itself. In fact, to ensure continued stability and reliability, Manjaro actually uses three distinct branches:

  • Stable branch: The packages that come to stable have gone through roughly a couple of weeks testing by the users of the Unstable/Testing repos, before they get the packages. These packages are usually free of any problems.
  • Testing branch: This is the second line of defense. Being a larger number of users than those using Unstable, they refine the work done prior to them by providing feedback on the packages they recieve on updates.
  • Unstable branch: Unstable is synced several times a day with Arch package releases. Only a subset of Arch packages are modified to suit Manjaro. Those that use Unstable need to have the skills to get themselves out of trouble when they move their system to this branch. They are the Manjaro users who are most likely to need to use such skills. Due to the feedback from the users of the Unstable repo, many issues are caught and fixed at this level. Although the very latest software will be located here, using the unstable branch is usually safe but - in rare cases - may cause issues with your system!

Summing up, Manjaro packages start their lives in the unstable branch. Once they are a deemed stable, they are moved to the testing branch, where more tests will be realized to ensure the package is ready to be submitted to the stable branch.


Note on unstable branch
Remember: Manjaro specific packages such as kernels, kernel modules and Manjaro applications enter the repo on unstable branch and it is those packages which are considered unstable when they enter.

Unmodifed packages synced from Arch repo are considered stable as they have already been vetted by Archlinux Community.

Changing to another branch

Have you considered?
Why not become an active part of the Manjaro community by becoming a tester?

In order to access a branch, you need to change your pacman-mirrors configuration.

You should substitute the value colored in green (for illustrative purposes only) to one of the following: stable, testing or unstable.

sudo pacman-mirrors --api --set-branch {branch}

After you changed the branch, rebuild the mirrorlist and update your packages:

user $ sudo pacman-mirrors --fasttrack 5 && sudo pacman -Syu COPY TO CLIPBOARD


Questions

How do I go back after changing to one of the testing branches?

Going back to the stable branch is easy. All you have to do is to repeat the above, and use stable as the branch value.

Be aware that after switching to a more stable branch you will receive messages from pacman, informing about newer packages installed than available in the repo. Don't be alarmed as the situation will resolve itself when the packages reaches your current branch.

If for whatever reason you do wish to also 'downgrade' packages while changing branches add an extra u to the pacman command:

user $ sudo pacman -Syuu COPY TO CLIPBOARD


How do I check, which branch I am currently on?

user $ pacman-mirrors -G COPY TO CLIPBOARD


Cookies help us deliver our services. By using our services, you agree to our use of cookies.