summaryrefslogtreecommitdiff
path: root/apt-pkg/deb
AgeCommit message (Collapse)Author
2013-10-25extract getDpkgExecutable() and DPkgPM::BuildPackagesProgressMap() out of ↵Michael Vogt
the monster long pkgDPkgPM::Go()
2013-10-24make the main loop a while() instead of a for() as I find this (much) easier ↵Michael Vogt
to read this way)
2013-10-22fix failing ./test/integration/test-disappearing-packages (thanks Donkult!)Michael Vogt
2013-10-22use Pkg.FullName() in disappearedPkgs and remove duplicated checkMichael Vogt
2013-10-22fix install-progress locationMichael Vogt
2013-10-21restore binary compatiblity with the pkgPackageManager interfaceMichael Vogt
2013-10-21fix apt output ordering and update test to match the new human friendly ↵Michael Vogt
messages that include the architecture
2013-10-18re-add missing APT::String::StripMichael Vogt
2013-10-18merged debian/sidMichael Vogt
2013-10-18cleanupMichael Vogt
2013-10-17ensure that short-name -> long-name detection for dpkg-status works for ↵Michael Vogt
reinstalls too
2013-10-17Merge branch 'debian/sid' into feature/install-progress-refactorMichael Vogt
Conflicts: apt-pkg/deb/dpkgpm.cc
2013-10-17fix broken clean when apt was finished and ensure that terminal progress is ↵Michael Vogt
updated when a new dpkg-loop is entered in dpkgpm.cc
2013-10-15tests, do not send pkgname with arch via the status-fdMichael Vogt
2013-10-15Merge remote-tracking branch 'upstream/debian/sid' into bugfix/bts-726156-2Michael Vogt
2013-10-15fix logic for finding what package dpkg means in the --status-fd and only ↵Michael Vogt
send out short packagenames
2013-10-14fix progress-segfault in case of dpkg errors/promptsDavid Kalnischkies
Errors and conffile prompts have a fourth information piece, which the "old" code access which isn't provided by the "new" one. This isn't checking if the messages are really well-formed, so it could still segfault on misformed messages, but this code needs more work anyway, so one step at a time. Closes: 726047
2013-10-14re-add APT::Keep-Fds:: for the dpkg status-fd in dpkgpm.cc as we always need ↵Michael Vogt
this
2013-10-14rename APT::Progress::Packagemanager Started->Start, Finished->Stop to match ↵Michael Vogt
pkgAcquireStatus
2013-10-13add APT::Progress::PackageManager::Pulse()Michael Vogt
2013-10-13move the status-fd progress reporting out of the pkgDPkgPM class, at this ↵Michael Vogt
point, breaks ABI/API, lets see what we can do about this
2013-10-11move common code into PackageManager::StatusChanged()Michael Vogt
2013-10-11add missing _() around the new "Progress" stringMichael Vogt
2013-10-11first iteration of install progress refactorMichael Vogt
2013-10-08apt-pkg/deb/dpkgpm.cc: fix off-by-one in SetupTerminalScrollArea resetMichael Vogt
2013-10-08Merge remote-tracking branch 'mvo/feature/dpkg-progress-fancy' into debian/sidMichael Vogt
2013-10-07fix off-by-one error in pkgDPkgPM::SetupTerminalScrollArea()Michael Vogt
2013-10-07use Dpkg::Progress-Fancy to be consitent with Dpkg::ProgressMichael Vogt
2013-10-07add -o DpkgPM::Progress-Fancy for better dpkg progress output on vt100+ ↵Michael Vogt
terminals
2013-10-05Merge remote-tracking branch 'mvo/bugfix/dpkg-progress-multiarch' into ↵Michael Vogt
debian/sid
2013-10-02make dpkg progress slightly nicerMichael Vogt
2013-09-26don't strip :any from dependencies in single-archDavid Kalnischkies
The parser goes a bit to far by stripping :any from dependencies in a single architecture environment. the flag "Multi-Arch: allowed" doesn't care any architecture restrictions in that case (as in single arch everything is native), but it still limits the possible versions statisfying the dependency so stripping :any over-simplifies in upgrade situations from "Multi-Arch: none" to "Multi-Arch: allowed". Closes: 723586
2013-09-07fix multiarch status-fd progress calculationMichael Vogt
2013-08-28Merge remote-tracking branch 'mvo/feature/install-progress' into debian/sidMichael Vogt
2013-08-16allow Pre-Install-Pkgs hooks to get info over an FD != stdinDavid Kalnischkies
This adds ::InfoFD option alongside the ::Version one to request sending the information to the specified FD, by default it is STDIN as it was the case before. The environment variable APT_HOOK_INFO_FD contains the FD the data is on as a confirmation that the APT version used understood the request. Allowing the hook to choose the FD is needed/helpful e.g. for shellscripts which have a hard time accessing FDs above 9 (as >= 10 are usually used internally by them) Closes: #671728
2013-08-15init the pkgTagFile with the size of the Release fileDavid Kalnischkies
Release files are basically one big Section, so we might safe some Resize circles by starting with the filesize. Git-Dch: Ignore
2013-08-12use our _error stack to generate openpty errorsDavid Kalnischkies
While we don't want these error messages on our usual stack, we can use our usual infrastructure to generate an error message with all the usual bells like errno and strerror attached. Git-Dch: Ignore
2013-08-12do not try to chown if not run as rootDavid Kalnischkies
If this code is run as non-root we are in a special situation (e.g. in our testcases) where it is obvious that we can't enforce user/group on any file, so skip this code altogether instead of bugging users with an error message – which we also switch to a warning as a failure to open the file is "just" a warning, so the 'wrong' owner shouldn't be that much of an issue. The file is still handled with chmod, so all the security we can enforce is still enforced of course, which also gets a warning if it fails. Git-Dch: Ignore
2013-08-08fix -Wall errorsMichael Vogt
2013-08-08use pkgTagFile to parse "header" of Release filesDavid Kalnischkies
The handwritten parsing here was mostly done as we couldn't trust the Release file we got, but nowadays we are sure that the Release file is valid and contains just a single section we want it to include. Beside reducing code it also fixes a bug: Fieldnames in deb822 formatted files are case-insensitive and pkgTagFile does it correctly, but this selfbuilt stuff here didn't.
2013-07-28Merge remote-tracking branch 'mvo/bugfix/coverity' into debian/sidMichael Vogt
2013-07-26fix some coverity chroot() releated warningsMichael Vogt
2013-07-25delete targets dataMichael Vogt
2013-07-16fix if-clause to generate hook-info for 'rc' packagesDavid Kalnischkies
The code incorrectly skips printing of current version information, if the package has no current version (for APT, but for dpkg as it is the case for packages which are removed but not purged) by using an unintended "else if" rather than an "if". Closes: 717006
2013-07-11Add DPkgPM::Progress for terminal install progressMichael Vogt
2013-07-11implement arch+= and arch-= for sources.listDavid Kalnischkies
Default is to acquire all architectures from APT::Architectures which can be changed by arch=, but this isn't very flexible if you want "mostly" the default as you have to hardcode the architectures then, so arch-= and arch+= can be used to add/remove architectures from the default set. On a machine with 'amd64' and 'i386' configured the lines: deb [arch+=armel] http://example.org/debian wheezy rocks deb [arch-=amd64] http://example.org/debian jessie rocks will result in the download of: wheezy Packages for 'amd64', 'i386' and 'armel' jessie Packages for 'i386'
2013-07-11Version 3 for DPkg::Pre-Install-Pkgs with MultiArch infoDavid Kalnischkies
Adds on top of Version 2 to all displayed version numbers the architecture as well as the MultiArch flag for consumption by the hooks. Most of the time the architecture will be the same for both versions displayed, but packages might change from "all" to "any" (or back) between versions so we can't display the architecture for packages. Pseudo-Format for Version 3: <name> <version> <arch> <m-a-flag> <compare> <version> <arch> <m-a-flag> Examples: stuff - - none < 1 amd64 none **CONFIGURE** libsame 1 i386 same < 2 i386 same **CONFIGURE** stuff 2 i386 none > 1 i386 none **CONFIGURE** libsame 2 i386 same > - - none **REMOVE** toolkit 1 all foreign > - - none **REMOVE** Closes: #712116
2013-06-20handle missing "Description" in apt-cache showDavid Kalnischkies
do not blindly assume that all packages stanzas have a "Description:" field in 'apt-cache show' as well as in the cache creation itself. We instead assume now that if the stanza has a Description, it will not be the first field as we look out for "\nDescription" to take care of MD5sum as well as (maybe ignored) translated Descriptions embedded in the package stanza. Closes: #712435
2013-04-08merged bundle from davidMichael Vogt
2013-04-03share version strings between same versions (of different architectures)David Kalnischkies
to save some space and allow quick comparisions later on