<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/integration/test-apt-get-install-deb, branch 2.9.1</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.1</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.1'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2021-06-10T17:25:17Z</updated>
<entry>
<title>Restore dpkg::chroot-directory functionality</title>
<updated>2021-06-10T17:25:17Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2021-06-10T16:06:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8083d4019844f764058efa2a950ed16975178bff'/>
<id>urn:sha1:8083d4019844f764058efa2a950ed16975178bff</id>
<content type='text'>
If we call dpkg inside a chroot we have to ensure that the temporary
directory we construct to call dpkg --recursive is inside the chroot and
that we strip the path to the chroot from the directory name we pass to
dpkg.

Note that the added test succeeds before and (hopefully) after as we
can't really chroot here or fiddle with the needed settings as we are
already setting up apt to work with a quasi-chroot. The test perhaps
helps in ensuring we don't break it too much in the future though.

(Broken five years (and one day) ago this seems to have an immense user
 base at the moment, but it might in the future via mmdebstrap)

References: f495992428a396e0f98886c9a761a804aa161c68
Reported-By: Johannes Schauer Marin Rodrigues on IRC
Tested-By: Johannes Schauer Marin Rodrigues
</content>
</entry>
<entry>
<title>URI encode Filename field of Packages files (again)</title>
<updated>2021-06-04T14:43:41Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2021-06-04T11:06:34Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=149b23c2b9697bc262c0af1934c7a3f6114d903f'/>
<id>urn:sha1:149b23c2b9697bc262c0af1934c7a3f6114d903f</id>
<content type='text'>
Keeping URIs encoded in the acquire system depends on having them
encoded in the first place. While many other places got the encoding
2 out of 3 ArchiveURI implementations were missed which are in practice
responsible for nearly all of the URI building, just that index filename
do not contain characters to escape and the Filename fields in Packages
files usually aren't. Usually. Except if you happen to have e.g. an epoch
featuring package with the colon encoded in the filename. On the upside,
in most repositories the epoch isn't part of the filename.

Reported-By: Johannes 'josch' Schauer on IRC
References: e6c55283d235aa9404395d30f2db891f36995c49
</content>
</entry>
<entry>
<title>Guess compressor only if no AR nember with exact name exists</title>
<updated>2021-02-02T18:56:46Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-12-02T14:51:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f2c087449286812823d06d1b560fa947e438fa0d'/>
<id>urn:sha1:f2c087449286812823d06d1b560fa947e438fa0d</id>
<content type='text'>
Explicitly opening a tar member is a bit harder than it needs to be as
you have to remove the compressor extension so that it can be guessed
here gain potentially choosing the wrong member.

Doesn't really matter for deb packages of course as the member count is
pretty low and strongly defined, but testing is easier this way.

It also finally fixes an incorrectly formatted error message.
</content>
</entry>
<entry>
<title>Parse last line in deb file correctly by adding a newline</title>
<updated>2020-03-21T07:35:26Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-03-21T07:14:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=bf46e09f0e4b52b3c71ac20bb11e7511fc16179f'/>
<id>urn:sha1:bf46e09f0e4b52b3c71ac20bb11e7511fc16179f</id>
<content type='text'>
While merging apt-pkg and apt-inst libraries the codepath of handling
deb files in apt-pkg was adapted to use the 'old' code from apt-inst
instead of fork&amp;exec of dpkg-deb -I. The information we get this way
forms the main part of the package stanza, but we add a few
semi-optional fields to the stanza to make it look and work more
like a stanza we got from a repository.

Just be careful with the area where these two parts touch as if,
hypothetically, we would stip all newlines around the parts,
but forget to add a newline between them later, the two lines around
the merge would stick a bit too close together forming one which could
result in fun parsing errors if this merged line was previously e.g. a
well-formed Depends line and has now extra fluff attached.

This codepath has a history with too many newlines (#802553) though,
so how likely is it really that it will some day lack one you may ask.

References: 6089a4b17c61ef30b2efc00e270b0907f51f352a
</content>
</entry>
<entry>
<title>Use debDebFile to get control file instead of dpkg-deb</title>
<updated>2019-05-06T11:01:23Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2019-05-06T10:22:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6089a4b17c61ef30b2efc00e270b0907f51f352a'/>
<id>urn:sha1:6089a4b17c61ef30b2efc00e270b0907f51f352a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Support local files as arguments in show command</title>
<updated>2018-05-11T15:58:46Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-04-12T07:59:47Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6085ab7488326cfed8f82e07eefcbc2dc40d4bea'/>
<id>urn:sha1:6085ab7488326cfed8f82e07eefcbc2dc40d4bea</id>
<content type='text'>
Now that --with-source is supported in show we can go a little further
and add the "syntactic sugar" of supporting deb-files on the commandline
directly to give users an alternative to remembering dpkg -I for deb
files &amp; as a bonus apt also works on changes files.

Most of the code churn is actually to deal with cases probably not too
common in reality like mixing packages and deb-files on the commandline
and getting the right order for these multiple records.

Closes: 883206
</content>
</entry>
<entry>
<title>Support --with-source in show &amp; search commands</title>
<updated>2018-05-11T15:58:46Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-04-11T10:59:06Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=bf53f39c9a0221b670ffff74053ed36fc502d5a0'/>
<id>urn:sha1:bf53f39c9a0221b670ffff74053ed36fc502d5a0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>don't loop on pinning pkgs from absolute debs by regex</title>
<updated>2016-08-29T07:22:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-28T20:56:17Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e950b7e2f89b5e48192cd469c963a44fff9f1450'/>
<id>urn:sha1:e950b7e2f89b5e48192cd469c963a44fff9f1450</id>
<content type='text'>
An absolute filename for a *.deb file starts with a /. A package with
the name of the file is inserted in the cache which is provided by the
"real" package for internal reasons. The pinning code detects a regex
based wildcard by having the regex start with /. That is no problem
as a / can not be included in a package name… expect that our virtual
filename package can and does.

We fix this two ways actually: First, a regex is only being considered a
regex if it also ends with / (we don't support flags). That stops our
problem with the virtual filename packages already, but to be sure we
also do not enter the loop if matcher and package name are equal.

It has to be noted that the creation of pins for virtual packages like
the here effected filename packages is pointless as only versions can be
pinned, but checking that a package is really purely virtual is too
costly compared to just creating an unused pin.

Closes: 835818
</content>
</entry>
<entry>
<title>treat .ddeb files like .deb, especially for dpkg</title>
<updated>2016-08-25T14:12:24Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-25T13:52:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4f242a2289cc5db7a53afdb875291c94de64fd90'/>
<id>urn:sha1:4f242a2289cc5db7a53afdb875291c94de64fd90</id>
<content type='text'>
Ubuntu uses *.ddeb files for their debug packages, but the interface we
are using since f495992428a396e0f98886c9a761a804aa161c68 to talk to dpkg
isn't supporting *.ddeb files. This used to work previously as apt itself
isn't caring about the filenames at all and if they are explicitly
mentioned dpkg will accept all, too.

It might or might not be a good idea to patch dpkg, too, but regardless
of it happening, we don't want to couple us to closely to dpkg for this
minor feature but testing for this at runtime as it would delay shipping
the fix for the too long commandlines further.

It is also questionable if it is really a good idea to allow any file
extension to be used here (like .foobar in the testcase), but we used to
and we tend to avoid breaking existing usecases if we can help it.

As a bonus, this also allows the installation of ddeb files directly
from the commandline as you can with deb files already. We continue to
ignore udeb through as the user-mistake to useful ratio is too high.

LP: #1616909
</content>
</entry>
<entry>
<title>add --with-source option and Packages/Sources support</title>
<updated>2016-08-17T12:12:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-16T18:08:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8bd823d0a1f7e08ad94a7110bb118f73348133a1'/>
<id>urn:sha1:8bd823d0a1f7e08ad94a7110bb118f73348133a1</id>
<content type='text'>
We support "./foobar.deb" as a way to install a deb file directly.
Recently .changes files were added. This highlights a problem as you
can't add the changes file without also trying to install all of them.
Now, it could also be handy to add entire Packages/Sources files to
perhaps get a bunch of packages in without installing them all
implicitly.

This commit introduces --with-source which allows to add *.deb, *.changes,
*.dsc, source-dirs, Packages &amp; Sources files (the later can also be
compressed) without also installing them.
</content>
</entry>
</feed>
