<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt, branch 2.9.19</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.19</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.19'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-12-23T11:23:44Z</updated>
<entry>
<title>Release 2.9.19</title>
<updated>2024-12-23T11:23:44Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-23T11:23:44Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e126f608c877b5febb1a43d01cb3c662c598e8f2'/>
<id>urn:sha1:e126f608c877b5febb1a43d01cb3c662c598e8f2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'symbols'</title>
<updated>2024-12-23T11:14:49Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-23T11:14:49Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e938c60061daff799113c4dbf6a8a41454f71126'/>
<id>urn:sha1:e938c60061daff799113c4dbf6a8a41454f71126</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Symbols: Merge stable, noble, testing, unstable</title>
<updated>2024-12-23T11:13:26Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-23T10:56:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=225776b787f8e75b235a1ae080aae53dcc9e177e'/>
<id>urn:sha1:225776b787f8e75b235a1ae080aae53dcc9e177e</id>
<content type='text'>
Hand edit 2.7.14build2 to 2.7.14

The funny 999:0misbuilt version number gets auto-reduced to
the current version when building which is sad, but it works.
</content>
</entry>
<entry>
<title>Merge branch 'sqv' into 'main'</title>
<updated>2024-12-23T11:13:08Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-12-23T11:13:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d6c6187b1469df800e3067ffc273e21a7f80c1c6'/>
<id>urn:sha1:d6c6187b1469df800e3067ffc273e21a7f80c1c6</id>
<content type='text'>
methods: Add new sqv method

See merge request apt-team/apt!409</content>
</entry>
<entry>
<title>abicheck: Add symbol-merge.py helper</title>
<updated>2024-12-23T10:56:33Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-22T23:34:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6710ec715f12a6c76af5a09f6e3054b07e45bb3d'/>
<id>urn:sha1:6710ec715f12a6c76af5a09f6e3054b07e45bb3d</id>
<content type='text'>
This allows merging symbol diffs from the various build logs
</content>
</entry>
<entry>
<title>debian: Plug sqv into the package build</title>
<updated>2024-12-22T22:52:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-20T11:03:26Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f5a24acea31248f98db51d7a2fd1d7b2198bb177'/>
<id>urn:sha1:f5a24acea31248f98db51d7a2fd1d7b2198bb177</id>
<content type='text'>
Our goal is for each platform to have one blessed OpenPGP verification
system: Platforms that support sqv get sqv, platforms that don't get
gpgv. To do so we hardcode the architecture list at build time.

At build time we check if /usr/bin/sqv exists, which is the condition
that apt uses to see if it should build with sqv support.

We use a slight hack here to build with sqv on the official Debian
buildds but use gpgv on Ubuntu by abusing the fact that Ubuntu
resolves alternative build dependencies, and gpgv is installed
in the buildd image.
</content>
</entry>
<entry>
<title>debian: Add default policy to allow SHA-1 self-signatures until 2026</title>
<updated>2024-12-22T22:52:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-20T10:21:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=153653d449efe121487641303d43ac523b9b17fb'/>
<id>urn:sha1:153653d449efe121487641303d43ac523b9b17fb</id>
<content type='text'>
Many repositories still have SHA-1 self-signatures, and they are not
security relevant for APT repositories in the first place since we
do not use a web of trust model, but rather a set of trusted keyrings,
and the subkey can essentially be always considered trusted even if
it cannot be verified.
</content>
</entry>
<entry>
<title>methods: Add new sqv method</title>
<updated>2024-12-22T22:51:22Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-12-07T15:44:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=da9a05e0b0b2150dbb67090e8b0c3922e46bd5cf'/>
<id>urn:sha1:da9a05e0b0b2150dbb67090e8b0c3922e46bd5cf</id>
<content type='text'>
The new sqv method uses sequoia's sqv tool to verify files. The
tool's interface is quite simple: It returns 0 on success, and
prints one line per good signer with the fingerprint.

sqv has a configurable crypto policy. We have defined apt-specific
override mechanisms for sequoia's standard policy, allowing both
users, distributions, and apt package to provide overrides for
Sequoia's default policy in meaningful ways.

The sqv method will be built and be the standard method for
verifying OpenPGP signatures provided that `sqv` is in the
PATH during building. It is not built if there was no sqv
at build time, so you need a rebuild to enable sqv later
on.

On the flip side, the gpgv method is always built, but it
does need to be always built: If APT::Key::GPGVCommand is
set, we need to fallback to it - this is important to
support existing users of that interface such as
mmdebstrap. Also we want to fall back to it when /usr/bin/sqv
disappears - for example in our CI :D

A couple of concessions have been made for test suite purposes:

- Failure to split a clearsigned file only shows the summary,
  as the gpgv method also only showed it, and no details why
  it failed.
- We write "Got GOODSIG &lt;fingerprint&gt;" in debug mode to mimic
  the gpgv code to keep the test suite happy.

- In various places in the test suite we assert minimal output
  from sqv, but sqv's human output is not intended to be stable.
  This will incur additional work when it breaks. However we do
  not _parse_ the output, so actual operation of apt is unaffected.

A couple of things are suboptimal here:

- We are still doing clearsigned splitting ourselves. sqv only
  has support for detached signatures right now, whereas sqopv
  has support for clearsigned files as well (but sqopv does not
  provide any reasons for why signature verification fails or
  means to set a policy).

- Deprecation of algorithms happens on a timebomb basis in
  sequoia. We have no means to give users warnings ahead of
  time if their configuration is outdated.

We have implemented various bits that probably should be going away:

- Fallback to trusted.gpg
  This is just annoying...
- Support for fingerprints in Signed-By (no subkey matching though)
  The extra work here is arguably less compared to gpgv.
- Check the keyring for correctness.
  With Signed-By everywhere, we should just error out rather than
  skip broken keyrings.

Moo
</content>
</entry>
<entry>
<title>Merge branch 'refactor-hashes' into 'main'</title>
<updated>2024-12-22T22:47:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-12-22T22:47:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b85dd910dcc68b710e1843e8b67935cc96c2a4c9'/>
<id>urn:sha1:b85dd910dcc68b710e1843e8b67935cc96c2a4c9</id>
<content type='text'>
Switch to OpenSSL in a convoluted path of commits

See merge request apt-team/apt!412</content>
</entry>
<entry>
<title>Remove GnuTLS and gcrypt support</title>
<updated>2024-12-22T22:45:15Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-12-21T14:26:34Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7b1fb90b93ced7c0772d726e512da01fad456852'/>
<id>urn:sha1:7b1fb90b93ced7c0772d726e512da01fad456852</id>
<content type='text'>
OpenSSL is mandatory now, it is no longer possible to build
without https support either.
</content>
</entry>
</feed>
