DR by Jean-Christophe Manciot is licensed under a GPLv3 License.
About Me
I have performed the following steps for this DR:
- I have signed the Ubuntu Code of Conduct which goes beyond Debian Code of Conduct
- I have published my OpenPGP DR key
- I use it to sign all packages
- I'm also an active member of several development communities, including:
DR Contents
This DR is operational for the latest Debian stable release bookworm (12.x) only. All packages (with some exceptions) have been built and tested for this specific environment on x86_64 architectures.
This DR will soon be decommissioned due to lack of time to maintain it.
Those source packages come only from official sources such as:
+ https://packages.debian.org/source
+ upstream git repositories usually hosted on https://github.com or https://gitlab.com
Any source package listed in the links below is built, tested (during the build process) & its binary packages uploaded into this DR only when its version is fresher than what is available at that time for the corresponding binaries on the official Debian repositories of the latest development distribution. This means that this DR does not mirror the official Debian repositories of the latest development distribution, but rather enhances them with more recent releases.
All the built binary packages currently available are listed per source package and version here. They can be divided into the following collections:
Developer
Drive
GNS3
KVM
Network
Security
System
Wireshark
Requirements
Installing this dynamic Debian repository on your system to benefit from the latest stable & unstable packages requires the following pre-conditions to be met:
- your system must be running the latest Debian development distribution (currently bookworm (12.x))
- at least the following repositories should be declared in your
etc/apt/sources.list
file:
deb http://deb.debian.org/debian bookworm main contrib non-free
deb http://security.debian.org/debian-security bookworm-security main contrib non-free
deb http://deb.debian.org/debian bookworm-updates main contrib non-free
Any other list of repositories has not been tested in conjunction with this DR.
Installing
The steps to add the DR on your system are described below.
My PGP Key
You need to import my public PGP key into your gpg public keyring and apt dedicated keyring with:
sudo gpg --keyserver keys.openpgp.org --keyserver-options timeout=40 --receive-keys DF7396D82BBA3684FCCADD4DB063838ED13997FD
sudo gpg --export --armor DF7396D82BBA3684FCCADD4DB063838ED13997FD > /etc/apt/trusted.gpg.d/JC_Manciot_DR.asc
Other public key servers can be used as well, such as:
- keyserver.ubuntu.com
- keys.gnupg.net
N.B: apt-key
has been deprecated.
DR Stable Component
Installing the stable DR for Debian bookworm (12.x) using one of the following methods, CLI or GUI (Synaptic):
CLI Stable
sudo bash -c $'echo "deb https://git.sdxlive.com/DR/plain/Debian bookworm stable #JC Manciot stable DR" > /etc/apt/sources.list.d/jean-christophe-manciot.list'
sudo apt update
sudo apt upgrade
sudo apt --show-progress install <package>
GUI Stable
- Synaptic --> Settings --> Repositories --> Other Software --> Add:
deb https://git.sdxlive.com/DR/plain/Debian bookworm stable #JC Manciot stable DR
- Reload
- Mark all Upgrades
- Apply
- Search
<package>
- Mark for Installation
- Apply
DR Unstable Component
Installing the unstable DR for Debian bookworm (12.x) using one of the following methods, CLI or GUI (Synaptic):
CLI Unstable
sudo bash -c $'echo "deb https://git.sdxlive.com/DR/plain/Debian bookworm unstable #JC Manciot unstable DR" >> /etc/apt/sources.list.d/jean-christophe-manciot.list'
sudo apt update
sudo apt upgrade
sudo apt --show-progress install <package>
GUI Unstable
- Synaptic --> Settings --> Repositories --> Other Software --> Add:
deb https://git.sdxlive.com/DR/plain/Debian bookworm unstable #JC Manciot unstable DR
- Reload
- Mark all Upgrades
- Apply
- Search
<package>
- Mark for Installation
- Apply
Notes
Administrator’s Handbook
This Debian Bullseye from Discovery to Mastery book has been written by Raphaël Hertzog and Roland Mas and is available as a:
Release Information
The latest release information about Debian 12 Bookworm is available online.
Build Tools
All the packages available in this DR are built with the following tools, with a top-down priority list:
- gbp buildpackage: when the source git repository offers a correctly maintained pristine-tar or upstream branch. The packages version numbers are not modified.
- debuild: when the sources offer a debian folder. The packages version numbers end with +12.x.
- fpm/checkinstall: all other cases. The packages version numbers end with -12.x.
Unstable Packages Name Format
The unstable packages which appear in the unstable component of the DR have different name formats to distinguish them from previous stable releases, for those who accept to live closer to the edge. You can be confident that they have passed a minimal testing. Some of them solve some issues discovered in previous stable versions. You can also always go back to the previous stable package if necessary. The name formats differ depending on the tool used to build them:
- built with debuild:
<package_name>_<unstable_release_number>~git<commit_date>.<short_hash_id>+12.x_amd64.deb
- built with fpm/checkinstall:
<package_name>_<unstable_release_number>~git<commit_date>.<short_hash_id>-12.x_amd64.deb
<package_name>_<git describe --tags>-12.x_amd64.deb
Upgrading Safely From a Debian Release to Another One
In order to avoid any issue during the distribution upgrade process, I suggest that you perform the following tasks prior to the distribution upgrade: (replace for instance <new_os_release_number> with 12.x
; <previous_os_release_number> with 11.x
; <new_os_code_name> with bookworm
; <previous_os_code_name> with bullseye
)
- reload all packages information:
sudo apt update
- upgrade your packages:
sudo apt upgrade
- backup your whole system:
- from another system such as a USB flash drive:
fsarchiver
should come in handy - or with a LVM snapshot
- or with a Btrfs snapshot
- ...
- from another system such as a USB flash drive:
- reboot if necessary
- comment out all third-party Debian repositories in
/etc/apt/sources.list.d/*.list
- check the instructions specific to the current distribution release.
- once the upgrade process is done, reselect and upgrade the distribution/release name of all third-party Debian repositories (for instance from bullseye to bookworm) in
/etc/apt/sources.list.d
- reload package information and upgrade all updated packages:
sudo apt update; sudo apt upgrade
- make sure that the packages which have been built for the previous Debian release have been upgraded:
sudo apt list --installed | grep -P -- "\+<previous_os_release_number>"
sudo apt list --installed | grep -P -- "-<previous_os_release_number>"
- for those which have not been upgraded (all those listed in the 2 previous commands), you may downgrade them to the latest version available from the Debian archive or wait until a new version is available from this DR. Cf. Downgrading Packages
- check how the distribution upgrade performed by reading the logs in
/var/log/dist-upgrade
and solve all remaining issues:- reinstall all necessary packages which have been removed and listed in
history.log
in theRemove:
paragraph. - reinstall all necessary packages which could not be installed due to errors and listed in
apt.log
andapt-term.log
- reinstall all necessary packages which have been removed and listed in
- reboot when done
Downgrading Packages
If necessary, it is of course possible to downgrade the packages installed from this DR to the ones available in the official repositories.
In order to automate this process for all installed packages, the following bash scripts are provided:
- apt-downgrade-bin-packages-to-official-archive.sh:
- downgrading some (light mode) or all (full mode) installed binary packages with a version ending with
+<os_version>
or-<os_version>
to the package version provided by the official Debian repositories. - please consult the help (-h) for details, especially regarding the differences between both modes.
- it is possible to pass perl regular expressions to narrow the search for installed binary packages which need to be downgraded.
- downgrading some (light mode) or all (full mode) installed binary packages with a version ending with
- apt-update-perl-bin-packages-to-official-archive.sh:
- this script allows to update all perl installed binary packages with a version ending with +
to the package version provided by the official Debian repositories. - please consult the help (-h) for details, especially regarding the differences between both
<auto>
modes.
- this script allows to update all perl installed binary packages with a version ending with +
- apt-update-python-bin-packages-to-official-archive.sh:
- this script allows to update all python installed binary packages with a version ending with +
to the package version provided by the official Debian repositories. - please consult the help (-h) for details, especially regarding the differences between both
<auto>
modes.
- this script allows to update all python installed binary packages with a version ending with +
- dpkg-lock.sh: dpkg semaphore used in previous scripts.
Removing Obsolete Packages
Packages which have no installation candidate can be removed/purged with the help of a script:
- apt-remove-obsolete-bin-packages.sh:
- removing/purging all obsolete installed binary packages, i.e. all packages which have no installation candidate.
- it is possible to pass perl regular expressions to narrow the search for installed binary packages which need to be removed.
- please consult the help (-h) for details, especially regarding the differences between both
<auto>
modes.
Removing Orphaned Packages
Packages among libs, oldlibs and introspection sections that have no packages depending on them can be removed/purged with the help of a script:
- apt-remove-orphaned-bin-packages.sh:
- removing/purging all orphaned installed binary packages, i.e. all packages among libs, oldlibs and introspection sections that have no packages depending on them.
- it is possible to pass perl regular expressions to narrow the search for installed binary packages which need to be removed.
- please consult the help (-h) for details, especially regarding the differences between both
<auto>
modes.
Reinstalling Installed packages
All installed packages which have an installation candidate can be reinstalled with the help of a script:
- apt-reinstall-bin-packages.sh:
- reinstalling all installed binary packages, i.e. all packages which have an installation candidate.
- it is possible to pass a perl regular expression to narrow the search for installed binary packages which need to be reinstalled.
- no manual user's consent will be asked before each package reinstallation.
Known Error Messages And Workaround
If you encounter the following error messages during sudo apt update
, it means that the DR is currently being refreshed with new releases; this process happens relatively often, mostly potentially during week-ends and every week day between ~ 6 am and 1 pm CET:
- "Failed to fetch https://git.sdxlive.com/DR/plain/Debian/dists/bookworm/InRelease Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?) Some index files failed to download. They have been ignored, or old ones used instead."
- "Packages
- Hash Sum mismatch
- Hashes of expected file:
- ...
- Hashes of received file:
- ..."
Just wait to be outside the short maintenance window so that the DR index has been completely updated and retry your sudo apt update
and sudo apt upgrade
or sudo apt --show-progress install <package>
.
Filing Issues
Please let me know if you ever experience any other issue(s) at support@sdxlive.com.