Categories : apt


Finding Newer Package Versions (backports)

workflow description

Devuan offers thousand of packages. But ,a package, as time passes, it changes and new versions are released by the package's maintainers ( @) and the upstream project's programmers.

Example. Devuan offers in Daedalus ( @) kvirc 5.0.0 @/pkginfo. But as we see in Excalibur and unstable(Ceres) 5.2.6 is released. So in a libre-source project's lifetime irregularities in the release cycles are more than common. Looking at the release history of kvirc @ we see that version 5.0 development started in 2017 and released in 2019. And then for 5 years there was no realease until 2024 with 5.2.0. Deadalus was released in late 2023 and thus missed 5.2.0. So installing kvirc would give us a ircclient that doesnt know about the libera network because the freenode fallout happened after 5.0 released.

So assuming that a newer release will improve a given info-process workflow a user would possibly want to keep a stable Devuan and having the newest package release. Having a way to install the latest versions ofcourse cant happen with all the packages. Especially libraries. That could undermine the stability of a distro.

If the developers of Devuan/Debian consider that a newer version doesnt brake the stability the can put it in a special repository location called Backports.

enabling backports

Add Backports to sources.list:

$ nano /etc/apt/sources.list
.....
+ deb http://deb.devuan.org/merged daedalus-backport main 

(alternatevely: add a ".list" extension file to /etc/apt/sources.list.d/).

Then execute:

$ apt update or apt-get update

Checking for backported packages.

precondition : having enabled backports

$ sudo apt-cache policy emacs
emacs:
  Εγκατεστημένα: 1:28.2+1-15+deb12u3
  Υποψήφιο:      1:28.2+1-15+deb12u3
  Πίνακας Έκδοσης:
     1:29.4+1-4~bpo12+1 100
        100 http://deb.devuan.org/merged daedalus-backports/main amd64 Packages       
 *** 1:28.2+1-15+deb12u3 500
        500 http://deb.devuan.org/merged daedalus/main amd64 Packages

We see in the above output from apt-cache policy emacs that althougth emacs 28.2 is installed ( ***) there is in backports 29.4 available.

Installing a backported package

$ sudo apt-get install  -t daedalus-backports emacs

Using Backports

The examples assume using daedalus. Change to your version.

context

- installing devuan packages

cheatsheet

apt install <package>/bookworm-backports apt-get install <package>/bookworm-backports

What is Backports?

You are running Devuan stable, because you prefer the Debian stable tree. It runs great, there is just one problem: the software is a little bit outdated compared to other distributions. This is where backports come in.

what packages are backported?

On way is to download Packages.gz files from the backport section of the realease you are interested in.

@ Debian backports

Backports in Devuan

context

@ Debian backports @ Debian wiki / backports

Adding Backports to our apt Sources.

By Apt Sources i mean here ,unless specifically stated otherwise, the main community maintained and supported apt repositories. Other apt repositories are tagged as third party.

 
$ sudo nano /etc/apt/sources.list
deb http://deb.devuan.org/merged daedalus-backports  main contrib non-free  non-free-firmware

Updating our local apt cache sources

When our local apt system has not updated the apt sources it knows then as we see in the command below our devuan system can not see backported version.

 
$ sudo apt-cache policy claws-mail
[sudo] password for chomwitt: 
claws-mail:
  Candidate: 4.1.1-2+b1
  Version table:
     4.1.1-2+b1 500
        500 http://deb.devuan.org/merged daedalus/main amd64 Packages

So we must make apt essentialy download the list of available backported packages:

 
$ sudo apt-get update

If we run apt-cache policy claws-mail again we will see that the backported newer version is also available.

Installing backports on the command line

The backports repository by default is low-priority. So, if we want to install a backported package, we have to set specifically in the apt options that choice .

Lets see an installation example of claws-mail :

 
$ sudo apt-get install claws-mail/daedalus-backports

Alternative syntax:

 
$ sudo apt-get install daedalus-backports claws-mail

Validate installation of the backported package

Lets validate know our installed version:

 
$ dpkg -l claws-mail
ii  claws-mail     4.3.1-1~bpo12+1 amd64        Fast, lightweight and user-friendly GTK based email client

Pull backported depedencies

A backported package could depend on other backported packages. In that case we must add the '-t'(--target-release) option. That will guide apt to prefer backported depedencies when needed.( @ref)

 
$ sudo apt-get install -t daedalus-backports <package>