<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/CMake, branch 2.9.18</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.18</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.18'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-12-18T09:25:24Z</updated>
<entry>
<title>Introduce automatic pager for read commands</title>
<updated>2024-12-18T09:25:24Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-12-16T16:05:40Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6e260e26e4cd671f781151e24d89a17b29a55530'/>
<id>urn:sha1:6e260e26e4cd671f781151e24d89a17b29a55530</id>
<content type='text'>
Automatically show the output of `show`, `policy`, `list`,
`search`, `showsrc` in a pager.

The pager setup is inspired by git's pager setup. Notably,
the pager is found using APT_PAGER and PAGER variables.

We wait for the pager to be setup somewhat correctly by
using a notify pipe to figure out whether execvp() was
succesful - then the pipe will read EOF as the other end
got closed by CLOEXEC during exec - or not, then the pipe
will contain an errno.

We set up the correct handlers for signals and exit to close
the fds and wait for the pager. Notably inside the signal
handler we cannot flush our streams, only close them, so
there is some duplication.

We call the InitOutputPager() function from inside the
various Do...() functions rather than setting it up
generally in InitOutput(). Doing so allows us to first
render the progress without a pager, and then setup
the pager for the content only which improves user
experience.

When we setup a pager we also take care to disable
standard input, as we should not be prompting users
while a pager is running (the pager will be reading
from the tty directly). We do this by dup2-ing() a
/dev/null over it; if we just close()d the fd, another
open() might reuse the fd number and problems could
occur.
</content>
</entry>
<entry>
<title>Avoid unnormalized paths for CMake install destinations</title>
<updated>2024-11-22T12:11:13Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2024-11-19T21:58:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7578b7031921231400be78fa8c2893bbd5ea18df'/>
<id>urn:sha1:7578b7031921231400be78fa8c2893bbd5ea18df</id>
<content type='text'>
CMake 3.31 is very noisy about our manpage (and to a lesser extend
documentation in general) building as we used "//" and "/../" there.

`cmake --help-policy CMP0177` documents the warning, so we could just
decide on a value and deal with it, but given our usage is not really
needed and rather trivial to change lets not pick a value and instead
use a normalized path so we don't use different code paths in CMake
depending on which CMake version we happen to be build with.
</content>
</entry>
<entry>
<title>Do not ignore if a cmake execute_process fails</title>
<updated>2024-04-24T13:16:21Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2024-04-05T14:02:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3e24f431d9527816820e103df7db9f39062b551d'/>
<id>urn:sha1:3e24f431d9527816820e103df7db9f39062b551d</id>
<content type='text'>
Ignoring errors might lead to failures later on anyhow, but especially
with triehash it could also lead to broken builds or other crazy stuff,
so lets better be save than sorry.
</content>
</entry>
<entry>
<title>Hide nice subtree character and indentation of summary from translations</title>
<updated>2024-04-13T19:22:36Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-04-13T19:22:36Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=cf71004551eca23f6d73648bc19f65e8b2a08ce9'/>
<id>urn:sha1:cf71004551eca23f6d73648bc19f65e8b2a08ce9</id>
<content type='text'>
Also allow us to have utf-8 characters in xgettext, but msgcomm still
fails so ugh.

This avoids translations messing up the formatting a bit more, at
least, and makes apt build again
</content>
</entry>
<entry>
<title>Support building without gnutls</title>
<updated>2024-03-03T07:23:51Z</updated>
<author>
<name>Steve Langasek</name>
<email>steve.langasek@canonical.com</email>
</author>
<published>2024-03-03T07:10:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=9044806c2adc6118399349c70a6c5746cedcc374'/>
<id>urn:sha1:9044806c2adc6118399349c70a6c5746cedcc374</id>
<content type='text'>
Once in a generation, it may be necessary to bootstrap apt in an
environment where gnutls is not yet available.  This makes gnutls
support in apt optional.

You may also want a configure flag to force gnutls to be required from
outside the buildsystem (e.g. debian/rules).
</content>
</entry>
<entry>
<title>Only accept installs of usrmerge on unmerged-usr systems</title>
<updated>2023-09-16T10:37:31Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2023-09-16T10:34:48Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=99c888b5eabbb7008bf4451bc62c277f28bb925f'/>
<id>urn:sha1:99c888b5eabbb7008bf4451bc62c277f28bb925f</id>
<content type='text'>
As of bookworm, merged-usr is mandatory, and people got caught
in the crosshairs of the dpkg fsys-unmessusr debacle and inadvertently
reverted back to an unmerged configuration and continue to remain
on an unsupported system unknowingly.

Help them by erroring out when they are installing packages on /,
they are not in a chroot, and a usrmerge package is available.
</content>
</entry>
<entry>
<title>Set our entities as dependencies in manpage generation</title>
<updated>2022-11-02T12:41:14Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2022-11-02T11:40:24Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=acb5002a7cd03253522978e70258589e9b262216'/>
<id>urn:sha1:acb5002a7cd03253522978e70258589e9b262216</id>
<content type='text'>
Changes in the entities do not lead to a rebuild of the manpages
otherwise. We also try to have each lingua have its own (translated)
entities as dependencies rather than all as the old code order
would have suggested.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>Drop SHA2 define from config as the code is gone</title>
<updated>2022-04-01T09:44:26Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2022-04-01T09:29:31Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d1d093713afc5ea26e75abc7c7b16d4315460a4b'/>
<id>urn:sha1:d1d093713afc5ea26e75abc7c7b16d4315460a4b</id>
<content type='text'>
We don't ship the code this define was effecting since 2020,
so defining this constant is pointless.

References: e8016805b87bead8eb3dff0d0559c5d9590b721b
Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>Remove unused config check for pre-XXH3 cache hashing</title>
<updated>2021-02-03T16:36:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2021-02-03T14:26:32Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c8d65a59a36400aaf85ff96b0c813f8fc53cd8bb'/>
<id>urn:sha1:c8d65a59a36400aaf85ff96b0c813f8fc53cd8bb</id>
<content type='text'>
References: 1460eebf2abe913df964e031eff081a57f043697
Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>Use XXH3 for cache, hash table hashing</title>
<updated>2020-12-15T12:47:22Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2020-12-13T20:07:03Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1460eebf2abe913df964e031eff081a57f043697'/>
<id>urn:sha1:1460eebf2abe913df964e031eff081a57f043697</id>
<content type='text'>
XXH3 is faster than both our CRC32c implementation as well
as DJB hash for hash table hashing, so meh, let's switch to
it.
</content>
</entry>
</feed>
