summaryrefslogtreecommitdiff
path: root/cmdline
Commit message (Collapse)AuthorAgeFilesLines
* Proper URI encoding for config requests to our test webserverDavid Kalnischkies2020-12-181-0/+9
| | | | | | Our http method encodes the URI again which results in the double encoding we have unwrap in the webserver (we did already, but we skip the filename handling now which does the first decode).
* pkgnames: Do not exclude virtual packages with --all-namesJulian Andres Klode2020-10-261-7/+3
| | | | | | | | | We accidentally excluded virtual packages by excluding every group that had a package, but where the package had no versions. Rewrite the code so the lookup consistently uses VersionList() instead of FirstVersion and FindPkg("any") - those are all the same, and this is easier to read.
* pkgnames: Correctly set the default for AllNames to falseJulian Andres Klode2020-10-261-1/+1
| | | | | | | We passed "false" instead of false, and that apparently got cast to bool, because it's a non-null pointer. LP: #1876495
* Merge branch 'pu/less-slaves' into 'master'Julian Andres Klode2020-08-041-1/+1
|\ | | | | | | | | Remove master/slave terminology See merge request apt-team/apt!124
| * CMake: Rename add_slaves() to add_links()Julian Andres Klode2020-07-141-1/+1
| | | | | | | | Sorry!
* | Merge branch 'pu/apt-key-deprecated' into 'master'Julian Andres Klode2020-08-041-4/+16
|\ \ | |/ |/| | | | | Fully deprecate apt-key, schedule removal for Q2/2022 See merge request apt-team/apt!119
| * apt-key: Allow depending on gpg instead of gnupgJulian Andres Klode2020-05-061-2/+2
| | | | | | | | | | Maintainer scripts that need to use apt-key del might as well depend on gpg, they don't need the full gnupg suite.
| * Fully deprecate apt-key, schedule removal for Q2/2022Julian Andres Klode2020-05-061-2/+14
| | | | | | | | | | | | | | | | | | People are still using apt-key add and friends, despite that not being guaranteed to work. Let's tell them to stop doing so. We might still want a list command at a future point, but this needs deciding, and a blanket ban atm seems like a sensible step until we figured that out.
* | Replace some magic 64*1024 with APT_BUFFER_SIZEJulian Andres Klode2020-06-231-3/+2
|/
* apt-helper: Add analyze-pattern helperJulian Andres Klode2020-03-121-0/+32
| | | | | | | | | | | | | | The analyze-pattern helper parses a pattern and then renders the parsed pattern, allowing you to analyze how the parser interpreted the string. This can be useful to analyse (yes, analyse-pattern also works) why a pattern is different from aptitude or why it does not work as expected. It can also be used to check if apt has pattern support, although that will miss out on the version shipped in eoan, but who really cares about that longer term anyway?
* cdrom: Remove old udev dlopen stuffJulian Andres Klode2020-02-261-1/+1
|
* Make map_pointer<T> typesafeJulian Andres Klode2020-02-241-2/+2
| | | | | | | | | | | Instead of just using uint32_t, which would allow you to assign e.g. a map_pointer<Version> to a map_pointer<Package>, use our own smarter struct that has strict type checking. We allow creating a map_pointer from a nullptr, and we allow comparing map_pointer to nullptr, which also deals with comparisons against 0 which are often used, as 0 will be implictly converted to nullptr.
* Replace map_pointer_t with map_pointer<T>Julian Andres Klode2020-02-241-4/+4
| | | | | | This is a first step to a type safe cache, adding typing information everywhere. Next, we'll replace map_pointer<T> implementation with a type safe one.
* Merge branch 'master' into 'master'Julian Andres Klode2020-02-181-9/+21
|\ | | | | | | | | apt-mark: don't lie about successful marks See merge request apt-team/apt!94
| * apt-mark: don't lie about successful marksTris Emmy Wilson2020-01-091-9/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit fixes an issue where apt-mark would say it had made a change before actually making the change. For example, when running as a user without permission to write to extended_states, the package is not marked but apt-mark claims it is: ~ % apt-mark manual rxvt-unicode rxvt-unicode set to manually installed. E: Could not create [...snip...] (13: Permission denied) E: Failed to write temporary StateFile /var/lib/apt/extended_states This commit moves reporting of "[package] set to [manually | automatically] installed" after saving extended_states and confirming it was successful.
* | Remove includes of (md5|sha1|sha2).h headersJulian Andres Klode2020-01-141-1/+0
|/ | | | Remove it everywhere, except where it is still needed.
* Fix typos reported by codespell in code commentsDavid Kalnischkies2019-07-101-1/+1
| | | | | | | | Also in old changelogs, but nothing really user visible like error messages or alike so barely noteworthy. Reported-By: codespell Gbp-Dch: Ignore
* Apply various suggestions by cppcheckDavid Kalnischkies2019-07-085-15/+12
| | | | Reported-By: cppcheck
* Introduce apt satisfy and apt-get satisfyJulian Andres Klode2019-06-112-0/+2
| | | | | | | | | | | | | | | | | | Allow to satisfy dependency strings supplied on the command line, optionally prefixed with "Conflicts:" to satisfy them like Conflicts. Build profiles and architecture restriction lists, as used in build dependencies, are supported as well. Compared to build-dep, build-essential is not installed automatically, and installing of recommended packages follows the global default, which defaults to yes. Closes: #275379 See merge request apt-team/apt!63
* apt-mark: Add hidden showheld alias for showholdJulian Andres Klode2019-05-101-2/+2
| | | | For Unit193 and those who value grammar, I suppose.
* cacheset: Remove simple cases of deprecated codeJulian Andres Klode2019-05-061-4/+4
| | | | | | This is missing the ones that are still actively used in cacheset.cc, we need to clean those up too, but they are obviously more tricky.
* Merge libapt-inst into libapt-pkgJulian Andres Klode2019-05-061-4/+4
|
* apt-helper: Support multiple hashes for a fileJulian Andres Klode2019-04-301-6/+28
| | | | | | This just peels supported hashes of the command-line until we reach a non-hash. For legacy compatability support, the first hash may be an empty string.
* sptr: Remove deprecated smart pointer classesJulian Andres Klode2019-02-262-2/+0
| | | | Please use the standard C++ variants instead.
* Merge branch 'pu/refuseunsignedlines' into 'master'Julian Andres Klode2019-02-011-23/+11
|\ | | | | | | | | Fail if InRelease or Release.gpg contain unsigned lines See merge request apt-team/apt!45
| * Merge and reuse tmp file handling across the boardDavid Kalnischkies2019-01-241-23/+11
| | | | | | | | | | | | Having many rather similar implementations especially if one is exported while others aren't (and the rest of it not factored out at all) seems suboptimal.
* | Add a "reinstall" command as an alias for "install --reinstall".Josh Triplett2019-01-272-0/+2
|/ | | | aptitude has a similar "reinstall" command for precedent.
* Merge branch 'patch-2' of github.com:techtonik/aptJulian Andres Klode2019-01-221-0/+1
|\
| * apt.cc: Add "apt info" alias for muscle memoryanatoly techtonik2018-11-211-0/+1
| | | | | | | | Muscle memory is acquired from querying package info with tools like snap, dnf etc.
* | apt-mark: Introduce minimize-manualJulian Andres Klode2019-01-101-0/+122
| | | | | | | | | | | | | | This visits dependencies of all manually installed metapackages, as determined by APT::Never-MarkAuto-Sections, and marks them as automatically installed. It can be used to clean up autoflags after a d-i install, for example.
* | Generalize %s does not take any argumentsJulian Andres Klode2019-01-101-1/+1
| | | | | | | | | | | | | | | | This used to be "apt-cache stats does not take any arguments", but replace "apt-cache stats" with "%s" so we can reuse it for other commands. Gbp-Dch: ignore
* | Merge branch 'bugfix/spaceinconfig' into 'master'Julian Andres Klode2018-12-041-1/+1
|\ \ | | | | | | | | | | | | Use quoted tagnames in config dumps See merge request apt-team/apt!32
| * | Use quoted tagnames in config dumpsDavid Kalnischkies2018-11-291-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | Tagnames in configuration can include spaces (and other nasties) e.g. in repository-specific configuration options due to Origin/Label potentially containing a space. The configuration file format supports parsing quoted as well as encoded spaces, but the output generated by apt-config and other places which might be feedback into apt via parsing (e.g. before calling apt-key in our gpgv method) do not quote and hence produce invalid configuration files. Changing the default to be an encoded tagname ensures that the output of dump can be used as a config file, but other users might not expect this so that is technically a backward-breaking change.
* / Provide a "autopurge" shortcutJulian Andres Klode2018-12-032-0/+2
|/ | | | | | | This adds a new "autopurge" command that will is a shortcut for "autoremove --purge" Thanks: Michael Vogt for the initial work
* Merge branch 'feature/subkeys' into 'master'Julian Andres Klode2018-10-141-71/+86
|\ | | | | | | | | Support subkeys and multiple keyrings in Signed-By options See merge request apt-team/apt!27
| * Support multiple keyrings in sources.list Signed-ByDavid Kalnischkies2018-09-111-71/+86
| | | | | | | | | | | | | | A user can specify multiple fingerprints for a while now, so its seems counter-intuitive to support only one keyring, especially if this isn't really checked or enforced and while unlikely mixtures of both should work properly, too, instead of a kinda random behaviour.
* | apt-mark: showhold: typo-fix (package -> packages)Muhamed Huseinbašić2018-10-021-1/+1
|/ | | | | | See merge request apt-team/apt!29 [jak@d.o: Also adjust translations, provide better subject]
* Fix typos reported by codespell & spellintianDavid Kalnischkies2018-08-291-1/+1
| | | | | | | | No user-visible change as it effects mostly code comments and not a single error message, manpage or similar. Reported-By: codespell & spellintian Gbp-Dch: Ignore
* apt-key: Pass all instead of gpg-agent to gpgconf --killJulian Andres Klode2018-05-291-1/+1
| | | | | | We want to kill everything using our temporary directory. LP: #1773992
* Support --with-source in show & search commandsDavid Kalnischkies2018-05-111-6/+1
|
* Remove obsolete RCS keywordsGuillem Jover2018-05-077-7/+0
| | | | Prompted-by: Jakub Wilk <jwilk@debian.org>
* Fix various typos reported by spellcheckersDavid Kalnischkies2018-05-051-1/+1
| | | | | Reported-By: codespell & spellintian Gbp-Dch: Ignore
* add apt-helper drop-privs command…David Kalnischkies2018-02-191-0/+17
|
* avoid some useless casts reported by -Wuseless-castDavid Kalnischkies2017-12-131-1/+1
| | | | | | | | | The casts are useless, but the reports show some where we can actually improve the code by replacing them with better alternatives like converting whatever int type into a string instead of casting to a specific one which might in the future be too small. Reported-By: gcc -Wuseless-cast
* don't name unused parameter in apt-helper waitonlineDavid Kalnischkies2017-12-131-1/+1
| | | | | Reported-By: gcc -Wunused-parameter Gbp-Dch: Ignore
* ignore unsupported key formats in apt-keyDavid Kalnischkies2017-10-051-2/+30
| | | | | | | | | | | | | | | | | | | gpg2 generates keyboxes by default and users end up putting either those or armored files into the trusted.gpg.d directory which apt tools neither expect nor can really work with without fortifying backward compatibility (at least under the ".gpg" extension). A (short) discussion about how to deal with keyboxes happened in https://lists.debian.org/deity/2017/07/msg00083.html As the last message in that thread is this changeset lets go ahead with it and see how it turns out. The idea is here simply that we check the first octal of a gpg file to have one of three accepted values. Testing on my machines has always produced just one of these, but running into those values on invalid files is reasonabily unlikely to not worry too much. Closes: #876508
* apt-daily: Do not Wants=network-online, and add some more After=Julian Andres Klode2017-09-111-0/+1
| | | | | | | | | We now wait for being online ourselves, so all we need to wait on is for services we are using to be online first. This avoids severe boot slowdowns by other services having specified an After=network-online.target without a Wants=. Gbp-Dch: Full
* apt-helper: Add connman support to wait-onlineJulian Andres Klode2017-09-101-1/+3
|
* apt-daily: Wait for network before daily updatesJulian Andres Klode2017-09-091-6/+46
| | | | | | | | | | Introduce a new helper, apt-helper wait-online that uses NetworkManager and/or systemd-networkd to wait for them reporting online, with a time out of 30 seconds; and run that helper before running the daily update script. LP: #1699850 Gbp-Dch: Full
* Replace APT_CONST with APT_PURE everywhereJulian Andres Klode2017-08-241-1/+1
| | | | | As a follow up to the last commit, let's replace APT_CONST with APT_PURE everywhere to clean stuff up.