On the "Error installing application" message on your Olimex device

Note: This post is adapted from a different post from July 2019, which was written by @njoseph and intended for all FreedomBox users. The current post, in contrast, is intended only for users of a Pioneer FreedomBox sold by Olimex.

This post is about a serious bug in the FreedomBox OS. We strongly encourage you to read this post in its entirety and apply the simple fix we explain.

Problem

On July 6th, Debian – the base software system on which FreedomBox is built – released a major update: Debian 10 (codenamed Buster). Buster was released to the “stable” branch of software, having previously been in the “testing” branch for two years. All Pioneer Edition units sold by Olimex before July 22nd were running a FreedomBox image with the “testing” version of Buster installed on them. When Buster upgraded from “testing” to “stable,” those devices attempted to upgrade themselves but failed due to a bug caused by upstream Debian activity.

What this means: if your device was affected by this bug, then it will not be able to install new apps or update its software, although all currently installed apps should work as expected. If your device is affected by this bug, then you would see this error message when you try to install a new app:

Error installing application: Error during installation E: Repository 'http://security.debian.org/debian-security buster/updates InRelease' changed its 'Suite' value from 'testing' to 'stable' E: Repository 'http://deb.debian.org/debian buster InRelease' changed its 'Suite' value from 'testing' to 'stable' E: Repository 'http://deb.debian.org/debian buster-updates InRelease' changed its 'Suite' value from 'testing-updates' to 'stable-updates' 

Luckily, this problem can be fixed very easily, but the solution requires accessing your FreedomBox via SSH.

Who is affected?

  • FreedomBox Pioneer users who purchased their devices before July 22nd, 2019
  • FreedomBox users who are using the testing images of FreedomBox older than the ones released on July 22nd, 2019.

Who is not affected?

  • Anyone who purchased a Pioneer edition FreedomBox from Olimex on or after July 22nd, 2019. Those Pioneer edition kits ship with the updated images and are unaffected by the bug.
  • Users running the new stable images of FreedomBox released on July 19th, 2019.

Impact

Application installations and software updates no longer work.

Root cause

The Buster release triggered a change in name of release files.

  • testing now points to bullseye instead of buster.
  • buster is now stable, not testing.

Debian expects users to explicitly accept the change in names, which unattended-upgrades cannot do, so it is blocked.

How to fix the issue

Follow the steps below to fix this issue. Before following these steps, you will need to know how to log in to your FreedomBox via SSH. Learn more about SSH here: https://wiki.debian.org/FreedomBox/Manual/SecureShell

Note: If you follow these steps exactly as instructed, it is harmless to try the fix even if your FreedomBox is not affected by the bug.

  1. (optional security measure) Add your SSH public key to your administrator account on FreedomBox. Copy the contents for the file .ssh/id_rsa.pub from your user’s home directory and paste it into the field for ssh key in your FreedomBox administrator user’s account and submit.

  2. Login via SSH into your FreedomBox with the administrator account.

$ ssh <username>@<freedombox-url>

Run apt update to fetch the latest release files

$ sudo apt update

When you run the above command, you will be presented with a prompt similar to the following. Press y and enter. Let the command finish running.

Get:1 http://deb.debian.org/debian testing InRelease [117 kB]
E: Repository ‘http://security.debian.org/debian-security buster/updates InRelease’ changed its ‘Suite’ value from ‘testing’ to ‘stable’
N: This must be accepted explicitly before updates for this repository can be applied. See apt-secure(8) manpage for details.
Do you want to accept these changes and continue updating from this repository? [y/N] 

After accepting the prompt, your app installations and automatic software upgrades will start working again.

Looking forward

Unfortunately, this issue cannot be fixed by releasing a new FreedomBox package, since updates to existing installations are blocked because of this issue. However, the FreedomBox team, along with Debian’s upstream leadership, are thinking about a permanent fix to avoid this issue when the next Debian release happens in 2021.

To our users: we’re sorry that we have to ask you to fix an issue yourself using SSH. We strive to make FreedomBox a system which requires minimal administration and minimal technical expertise. Indeed, the main reason we named the Olimex kit the “Pioneer edition” is because we wanted to be honest about the fact that this product explores a new frontier where unexpected errors may occur. With your help, we hope that we can prevent this kind of issue for the next generation of FreedomBox users.

References

  1. First report
    [SOLVED] Error installing apps
  2. Issue in bug tracker
    https://salsa.debian.org/freedombox-team/plinth/issues/1606

Is it right, that after this steps, which I successfully did, apt update will only look for changes in buster?

here is the output of apt update:

Hit:1 tor+http://cdn-fastly.deb.debian.org/debian buster InRelease
Get:2 tor+http://cdn-fastly.deb.debian.org/debian buster-updates InRelease [46.8 kB]
Get:3 tor+http://cdn-fastly.deb.debian.org/debian buster-backports InRelease [46.7 kB]
Get:4 tor+http://cdn-fastly.deb.debian.org/debian buster-backports/main Sources.diff/Index [13.5 kB]
Get:5 tor+http://cdn-fastly.deb.debian.org/debian buster-backports/main armhf Packages.diff/Index [15.5 kB]
Get:6 tor+http://cdn-fastly.deb.debian.org/debian buster-backports/main Sources 2019-08-06-0817.30.pdiff [587 B]
Get:6 tor+http://cdn-fastly.deb.debian.org/debian buster-backports/main Sources 2019-08-06-0817.30.pdiff [587 B]
Get:7 tor+http://cdn-fastly.deb.debian.org/debian buster-backports/main armhf Packages 2019-08-06-0817.30.pdiff [587 B]
Get:7 tor+http://cdn-fastly.deb.debian.org/debian buster-backports/main armhf Packages 2019-08-06-0817.30.pdiff [587 B]
Hit:8 tor+http://security-cdn.debian.org/debian-security buster/updates InRelease

Pioneer edition users were set to Buster (Debian 10) even without this action. If you want Debian testing (say to help with develoment/testing) you will need to change the sources.list and replace buster with testing.

I will try later. I think: I have to log in via ssh, try to find the sources list with dir and then edit it. But, is there an editor, which I can use in the terminal?

You can use pico (simple editor), vi (vim style) or zile (emacs style) or install any other text editor from Debian using apt install <package>.

Thank you. I run apt update over ssh. There has been a new kernel. Than I did dist-upgrade which worked just fine. But I was very surprized to see, that my freedombox now runs on Version 19.13. Can you please explain this?

FreedomBox version that is now available for testing and Buster users is 19.13. We have been making bi-weekly releases for a while now. These changes were not available to all the user until releases.