taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit 56504f70cbeba7ee64d28a4fb0e2cb48f0e35b70
parent fd18916ab818536bfe682a330406da5db257145f
Author: Florian Dold <florian@dold.me>
Date:   Tue,  8 Sep 2026 15:00:59 +0200

reprepro -> aptly

Diffstat:
Asystem-administration/debian-repos.rst | 76++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Msystem-administration/index.rst | 2+-
Dsystem-administration/reprepro.rst | 132-------------------------------------------------------------------------------
3 files changed, 77 insertions(+), 133 deletions(-)

diff --git a/system-administration/debian-repos.rst b/system-administration/debian-repos.rst @@ -0,0 +1,76 @@ +.. + This file is part of GNU TALER. + Copyright (C) 2025 Taler Systems SA + + TALER is free software; you can redistribute it and/or modify it under the + terms of the GNU Affero General Public License as published by the Free Software + Foundation; either version 3.0, or (at your option) any later version. + + TALER is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR + A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License along with + TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> + + @author Christian Grothoff + @author Florian Dold + +Debian Repositories +=================== + +We use a Debian-style workflow with *testing* and *stable* in the same +reprepro setup. This chapter is **not** about the *nightly* distribution. +The ``deb.taler.net`` site is pointed to a directory of the +``taler-packaging`` user where under ``www/apt`` we have a subdirectory per +supported distribution, right now we have one for Debian and one for Ubuntu. + +Systems should use: + + - ``deb https://deb.taler.net/apt/debian trixie main`` for stable + - ``deb https://deb.taler.net/apt/debian trixie-testing main`` for testing + +or equivalent for Ubuntu noble. + +The repositories are now hosted via aptly. In the past, they were hosted via +reprepro. We switched to aptly, since it has better support for multiple +versions of the same package and is generally easier to configure and use. + + +taler-pkg +--------- + +The ``taler-pkg`` tool from ``taler-deployment.git/packaging/ng`` +is used to both build packages (via podman containers) and upload them +to ``deb.taler.net``. + +Building packages: + +.. code:: + + $ ./taler-pkg build $TARGET + +where target is of the form ``$VENDOR-$CODENAME``. For example, ``debian-trixie`` or ``ubuntu-noble``. + +Publishing packages: + +.. code:: + + $ ./taler-pkg publish $TARGET + +Publishing packages only publishes them to the ``-testing`` distro. + +Promoting packages: + +.. code:: + + $ ./taler-pkg promote $TARGET --dry + $ ./taler-pkg promote $TARGET + +To show which packages are currently available, use: + + +.. code:: + + $ ./taler-pkg show-published debian-trixie-testing + $ ./taler-pkg show-published debian-trixie diff --git a/system-administration/index.rst b/system-administration/index.rst @@ -35,4 +35,4 @@ Internal System Administration grafana-loki grafana-promtail grafana-backup - reprepro + debian-repos diff --git a/system-administration/reprepro.rst b/system-administration/reprepro.rst @@ -1,132 +0,0 @@ -.. - This file is part of GNU TALER. - Copyright (C) 2025 Taler Systems SA - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU Affero General Public License as published by the Free Software - Foundation; either version 3.0, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License along with - TALER; see the file COPYING. If not, see <http://www.gnu.org/licenses/> - - @author Christian Grothoff - @author Florian Dold - -Reprepro setup -============== - -We use a Debian-style workflow with *testing* and *stable* in the same -reprepro setup. This chapter is **not** about the *nightly* distribution. -The ``deb.taler.net`` site is pointed to a directory of the -``taler-packaging`` user where under ``www/apt`` we have a subdirectory per -supported distribution, right now we have one for Debian and one for Ubuntu. - -Systems should use: - - - ``deb https://deb.taler.net/apt/debian trixie main`` for stable - - ``deb https://deb.taler.net/apt/debian trixie-testing main`` for testing - -or equivalent for Ubuntu noble. - - -Distribution file structure ---------------------------- - -In ``conf/distributions`` we list the supported distributions, -each with a ``testing`` and a ``stable`` suite: - -.. code-block:: - :caption: conf/distributions - - Origin: GNU Taler - Label: Taler - Suite: testing - Codename: trixie-testing - Architectures: amd64 - Components: main - Description: GNU Taler testing packages for Debian trixie - SignWith: your-gpg-key-id - - Origin: GNU Taler - Label: Taler - Suite: stable - Codename: trixie - Architectures: amd64 - Components: main - Description: GNU Taler stable packages for Debian trixie - SignWith: your-gpg-key-id - Pull: trixie-testing-to-stable - -The ``pull`` rule is elaborated in ``conf/pulls``, and it -defines how packages move from testing to stable. We basically -simply move everything at once (after testing it!): - -.. code-block:: - :caption: conf/pulls - - Name: trixie-testing-to-stable - From: trixie-testing - Components: main - Architectures: amd64 - UDebComponents: - FilterFormula: Package (% * ) - -If we in the future wanted to only pull packages that have been in -testing for at least 10 days, we could use: - -.. code-block:: - - FilterFormula: Package (% *), Version (% *), $Date (>= now - 10 days) - - -The ``conf/options`` file used is mainly giving the path: - -.. code-block:: - :caption: conf/options - - verbose - basedir /home/taler-packaging/www/apt/debian - ask-passphrase - - -taler-pkg ---------- - -The ``taler-pkg`` tool from ``taler-deployment.git/packaging/ng`` -is used to both build packages (via podman containers) and upload them -to ``deb.taler.net``. - -Building packages: - -.. code:: - - $ ./taler-pkg build $TARGET - -where target is of the form ``$VENDOR-$CODENAME``. For example, ``debian-trixie`` or ``ubuntu-noble``. - -Publishing packages: - -.. code:: - - $ ./taler-pkg publish $TARGET - -Publishing packages only publishes them to the ``-testing`` distro. - -Promoting packages: - -.. code:: - - $ ./taler-pkg promote $TARGET --dry - $ ./taler-pkg promote $TARGET - -To show which packages are currently available, use: - - -.. code:: - - $ ./taler-pkg show-published debian-trixie-testing - $ ./taler-pkg show-published debian-trixie