#language en

~- [[DebianWiki/EditorGuide#translation|Translation(s)]]: English - [[es/FreedomBox/Manual/Upgrades|Español]] -~

<<TableOfContents()>>

## BEGIN_INCLUDE

== Software Updates ==

!FreedomBox can automatically install security updates.  On the ''Update'' page of the ''System'' section in !FreedomBox web interface you can turn on automatic updates. This feature is enabled by default and there is no manual action necessary.  It is strongly recommended that you have this option enabled to keep your !FreedomBox secure.

Updates are performed every day at night according to you local time zone. You can set the time zone with [[FreedomBox/Manual/DateTime|Date & Time]].  If you wish to shutdown !FreedomBox every day after use, keep it running at night once a week or so to let the automatic updates happen.  Alternatively, you can perform manual updates as described below.

Note that once the updates start, it may take a long time to complete. During automatic update process that runs every night or during manual update process, you will not be able to install apps from !FreedomBox web interface.

{{attachment:update.png}}

=== When Will I Get the Latest Features? ===

Although updates are done every day for security reasons, latest features of !FreedomBox will not propagate to all the users. The following information should help you understand how new features become available to users.

'''Stable Users''': This category of users include users who bought the [[FreedomBox/Hardware/PioneerEdition|FreedomBox Pioneer Edition]], installed !FreedomBox on a [[FreedomBox/Hardware/Debian|Debian]] stable distribution or users who downloaded the ''stable'' images from [[https://freedombox.org|freedombox.org]]. As a general rule, only security updates to various packages are provided to these users. One exception to this rule is where !FreedomBox service itself is updated when a release gains high confidence from developers. This means that latest !FreedomBox features may become available to these users although not as quickly or frequently as ''testing'' users. If an app is available only in ''testing'' distribution but not in ''stable'' distribution, then that app will show up in the web interface but will not be installable by ''stable'' users. Some apps are also provided an exception to the rule of "security updates only" when the app is severely broken otherwise. Every two years, a major release of Debian stable happens with the latest versions of all the software packages and !FreedomBox developers will attempt to upgrade these users to the new release without requiring manual intervention. 

'''Testing Users''': This category of users include users who installed !FreedomBox on a [[FreedomBox/Hardware/Debian|Debian]] ''testing'' distribution or users who downloaded the ''testing'' images from [[https://freedombox.org|freedombox.org]]. Users who use Debian ''testing'' are likely to face occasional disruption in the services and may even need manual intervention to fix the issue. As a general rule, these users receive all the latest features and security updates to all the installed packages. Every two weeks, a new version of !FreedomBox is released with all the latest features and fixes. These releases will reach ''testing'' users approximately 2-3 days after the release.

'''Unstable Users''': This category of users include users who installed !FreedomBox on a [[FreedomBox/Hardware/Debian|Debian]] ''unstable'' distribution or users who downloaded the ''unstable'' images from [[https://freedombox.org|freedombox.org]]. Users who use Debian ''unstable'' are likely to face occasional disruption in the services and may even need manual intervention to fix the issue. As a general rule, these users receive all the latest features to all the installed packages. Every two weeks, a new version of !FreedomBox is released with all the latest features and fixes. Theses releases will reach ''unstable'' users on the day of the release. Only developers, testers and other contributors to the !FreedomBox project should use the ''unstable'' distribution and end users and advised against using it.

=== Manual Updates from Web Interface ===

To get updates immediately and not wait until the end of the day, you may want to trigger updates manually. You can do this by pressing the ''Update now'' button in ''Manual update'' tab for ''Update'' page in ''System'' section. Note that this step is not necessary if you have enabled ''Auto-updates'' as every night this operation is performed automatically.

When installing apps you may receive an error message such as 

{{{
Error installing packages: E: dpkg was interrupted, you must manually run 'dpkg --configure -a' to correct the problem
}}}

This is typically caused by shutting down !FreedomBox while it is installing apps, while performing daily updates or during some other operations. This situation can be rectified immediately by running manual update.

=== Manual Updates from Terminal ===

Some software packages may require manual interaction for updating due to questions related to configuration. In such cases, !FreedomBox updates itself and brings in new knowledge necessary to update the package by answering configuration questions. After updating itself, !FreedomBox acts on behalf of the user and updates the packages by answering the questions. Until !FreedomBox has a chance to update the package, such packages should not be be updated manually. The manual update triggered from the web interface is already mindful of such packages and does not update them.

In some rare situations, !FreedomBox itself might fail to update or the update mechanism might fall into a situation that might need manual intervention from a terminal. To perform manual upgrades on the terminal, login into !FreedomBox on a terminal (if you have monitor and keyboard connected), via a web terminal (using [[FreedomBox/Manual/Cockpit]]) or using a remote secure shell (see [[FreedomBox/Manual/SecureShell|Secure Shell]] section).  Then run the following commands:

{{{
$ sudo su -
Password: <enter user password here>
# dpkg --configure -a
# apt update
# apt -f install
# unattended-upgrade --debug
# apt install freedombox
# apt update
}}}

If `apt update` asks for a confirmation to change ''Codename'' or other release information, confirm ''yes''. If during update of ''freedombox'' package, if a question about overwriting configuration files is asked, answer to install new configuration files from the latest version of the package. This process will upgrade only packages that don't require configuration file questions (except for ''freedombox'' package). After this, let !FreedomBox handle the upgrade of remaining packages. Be patient while new releases of !FreedomBox are made to handle packages that require manual intervention.

If you want to go beyond the recommendation to upgrade all the packages on your !FreedomBox and if you are really sure about handling the configuration changes for packages yourself, run the following command:

{{{
$ apt full-upgrade
}}}

=== Auto-Update to Next Stable Release ===

!FreedomBox can automatically update itself when there is a new stable release of Debian. This update feature is recommended, and enabled by default for stable systems. Note that it also requires "Enable auto-update" to be enabled, and that there is 5 GB free space on the root partition.

In some special cases, such as advanced customization made to the system, the automatic update could fail. If you wish, you can disable it on the System -> Update page, by clearing the “Enable auto-update to next stable release” checkbox.

If you decide to stay on an older release, you should check DebianReleases#Production_Releases to see how long it will be supported by Debian security team. Note that older releases will not have new versions of !FreedomBox, even through backports.

=== Manual Update to Next Stable Release ===

Auto-update is recommended for most users. However if you want to do the update manually, here are some tips:

General:
 * Create a system snapshot before you begin.
 * Consider placing a temporary hold (using `apt-mark`) on the freedombox package, to prevent its removal when other packages are being updated. Remember to remove the hold later, so that `freedombox` package can be updated.

Updating from Debian 10 (Buster) to Debian 11 (Bullseye):
 * If Searx is installed, after the package is updated, you will need to update its list of search engines.
 * You may need to configure `grub-pc` package (using `dpkg-reconfigure`) so that it does not require to install `grub` again.
 * You may need to remove the obsolete package `libgcc1`.
 * Consider placing temporary holds on the following packages, and let !FreedomBox handle updating them later:
   * `firewalld`, `mumble-server`, `radicale`, `roundcube-core`, `tt-rss`


## END_INCLUDE

Back to [[FreedomBox/Features|Features introduction]] or [[FreedomBox/Manual|manual]] pages.


<<Include(FreedomBox/Portal)>>

----
CategoryFreedomBox
