summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Use sentence case throughoutUlrich Müller2024-05-081-1/+1
| | | | | | | | | | | | Subsection headings were already changed from title case to sentence case in commit ca463ce. This left chapter and section headings alone, which is inconsistent (although it is specified by some style guides like APA). This commit changes headings to sentence case throughout, following most other Gentoo documentation, e.g. wiki and devmanual. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Sandbox commands accept any fileUlrich Müller2023-12-241-6/+6
| | | | | | | | | | | | | The sandbox commands addread, addwrite, addpredict and adddeny can accept not only directories, but also other files like regular files or device nodes. This behaviour is supported by all three package managers. Also, the sandbox's default configuration relies on it (e.g. "/dev/null" and "${HOME}/.bash_history" in /etc/sandbox.conf), and it is widely used in the Gentoo repository. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Drop CONF_LIBDIR* and DEFAULT_ABIUlrich Müller2023-05-041-26/+4
| | | | | | | | | | | | | | | | | | | The CONF_LIBDIR variable was used exclusively in the 2004.3 profile (i.e. it was no longer defined in 2005.0). Portage support for CONF_LIBDIR was added by this commit: https://gitweb.gentoo.org/archive/proj/portage-cvs.git/commit/?id=ecc2faaa00b1e6250129267ba873bedd2121eac5 Note that neither the ABI nor the LIBDIR_${ABI} variable existed at the time. The CONF_LIBDIR_OVERRIDE and DEFAULT_ABI variables were never implemented in the dolib* and einstall commands in Portage. With the three variables dropped, the algorithm is identical to the logic used for get_libdir(). Therefore drop alg:ebuild-libdir and refer to alg:get-libdir instead. Bug: https://bugs.gentoo.org/267159 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: econf matches configure --help output betterUlrich Müller2023-02-271-2/+5
| | | | | | | | | | | Following the previous change for --disable-static (commit e0aa80c), check for proper end of string for all option names beginning with "with", "disable" or "enable". This will mainly affect --with-sysroot, where false positives have been observed. Bug: https://bugs.gentoo.org/815169 Suggested-by: David Seifert <soap@gentoo.org> Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* Appendix: Document retroactive change of econf --disable-staticUlrich Müller2022-11-191-0/+1
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Update condition for econf --disable-static (again)Ulrich Müller2022-11-191-2/+3
| | | | | | | | | | | | | | | | | The intention is to pass --disable-static, in order to (only) disable static libtool archive building. The current condition asks for either of --{disable,enable}-static in configure --help output, which causes false positives: https://archives.gentoo.org/gentoo-portage-dev/message/efc3f424d1dffd3415da538ec25532a9 Therefore, narrow the condition to require both --enable-static and --enable-shared. In addition, backport the check for proper end of string from the EAPI 9 feature list, but restrict it to this option for now. Bug: https://bugs.gentoo.org/814368 Bug: https://bugs.gentoo.org/815169 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Tighten the spec for reserved namesUlrich Müller2022-05-141-4/+10
| | | | | | | | | | | "abort", "dyn" and "prep" are only reserved at the beginning of a name. This appears to be their only (historical and recent) usage in Portage. "ebuild" is allowed as substring of words like "rebuild", which is somewhat common in names. Bug: https://bugs.gentoo.org/843779 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: WhitespaceUlrich Müller2022-04-121-1/+1
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Specify file ownership for dobin more accuratelyUlrich Müller2022-03-261-1/+1
| | | | | | | In a non-prefix installation, files are to be owned by UID 0 / GID 0. This is also what is implemented in Portage's dobin command. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Add some braces for consistencyUlrich Müller2022-01-081-2/+2
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Teletype font for literal string in get_libdirUlrich Müller2022-01-081-1/+1
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Update condition for econf --disable-staticUlrich Müller2021-09-241-2/+2
| | | | | | | | | | | | | | | | | | | The help message produced by LT_INIT in libtool-2.4.6 always says --enable-static regardless of the default value, see m4/ltoptions.m4: AC_ARG_ENABLE([static], [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], ...) This means that looking only for --disable-static in output of configure --help results in non-functional behaviour. Implementation in Portage (which predates the PMS wording) looks for --enable-static in addition. Bug: https://bugs.gentoo.org/814368 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Clarify which commands are allowed in global scopeUlrich Müller2021-08-311-8/+12
| | | | | | | | | | | | | | | | | | For most commands this is already implied by the combination of the statements "When an ebuild is being sourced for metadata querying rather than for a build [...], no external command may be executed." in chapter 12 ("Available Commands") and "Except where otherwise noted, they may be internal [...] or external commands available in PATH; where this is not specified, ebuilds may not rely upon either behaviour." in section 12.3 ("Ebuild-specific Commands"). For output commands (einfo etc.) and debug commands (debug-print etc.) to be allowed in global scope, they must be implemented as shell functions. Specify this, which follows the implementation in all three package managers. Closes: https://bugs.gentoo.org/520528 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Update description of text list functionsUlrich Müller2021-08-311-1/+1
| | | | | Closes: https://bugs.gentoo.org/374791 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Fix econf --libdir logicUlrich Müller2021-08-041-1/+3
| | | | | | | | | | | | | Portage uses both --exec-prefix and --prefix in its econf logic, introduced in 2005: https://gitweb.gentoo.org/archive/proj/portage-cvs.git/commit/?h=portage_2_0&id=865508e5cb2fd3e6ef7c312b6a7bb88cf8799f9c Pkgcore agrees with Portage. Paludis uses --prefix first, then --exec-prefix. Closes: https://bugs.gentoo.org/806374 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* Drop comma after "i.e." throughout, for consistencyUlrich Müller2021-06-171-2/+2
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8 removes .7z, .rar, .lha unpack supportMichał Górny2021-06-051-7/+14
| | | | | | Bug: https://bugs.gentoo.org/690968 Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8: usev has an optional second argumentUlrich Müller2021-06-051-9/+14
| | | | | Bug: https://bugs.gentoo.org/744868 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8: insopts and exeopts affect only doins and doexeUlrich Müller2021-06-051-12/+52
| | | | | Bug: https://bugs.gentoo.org/657580 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8 has dosym -rUlrich Müller2021-06-051-3/+36
| | | | | Bug: https://bugs.gentoo.org/708360 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* Split the econf options table because it has become too wideUlrich Müller2021-06-051-10/+15
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8: econf adds --disable-staticUlrich Müller2021-06-051-7/+11
| | | | | Bug: https://bugs.gentoo.org/744871 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8 has econf passing --datarootdirMichał Górny2021-06-051-6/+11
| | | | | | Bug: https://bugs.gentoo.org/651958 Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* EAPI 8: useq, hasv and hasq are bannedUlrich Müller2021-06-051-0/+16
| | | | | Bug: https://bugs.gentoo.org/199722 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* Add an EAPI 8 identical to EAPI 7Ulrich Müller2021-06-051-42/+42
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* Fix bad page breaks before listsUlrich Müller2021-05-211-1/+2
| | | | | | Taken from https://tex.stackexchange.com/a/2645. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pms.cls: Do not define \e for \emphUlrich Müller2021-04-301-2/+2
| | | | | | | | This is only used a few times, so a shorthand is not needed. (We really should get rid of \i and \t as well, because redefining LaTeX internal commands sucks.) Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* get_libdir: Clarify that it must be a shell function.Ulrich Müller2019-10-181-2/+2
| | | | | | It is implemented as a bash function in all package managers. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* doins, dodoc: Clarify how directories are created.Ulrich Müller2019-10-011-5/+6
| | | | | | | | | | | | | | | | | | | With the -r option, it was unspecified what the mode of any created directories is. Clarify that doins -r will create them as if dodir was called (i.e., respect diropts), and that dodoc -r will create them as if plain install -d was used. For doins, this agrees with package manager implementations. For dodoc, this agrees with historic Paludis behaviour. Portage behaviour has changed in the past, when dodoc was changed from a standalone helper to reusing parts of doins. Usage in the Gentoo repository indicates that no ebuilds call diropts specifically for installing of documentation. However, for several ebuilds dodoc -r is affected by diropts called previously for another directory, which looks like an unwanted side effect. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Fix indentation in einstall listing.Ulrich Müller2019-08-101-10/+10
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands.tex: Specify --with-sysroot in econf correctly.Ulrich Müller2019-07-291-1/+1
| | | | | | | | | If ESYSROOT is empty, then econf must pass --with-sysroot="/" as option to configure. This agrees with the implementation in portage and pkgcore. Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* pkg-mgr-commands: Correct ver_cut and ver_rs to use ${PV} by defaultMichał Górny2019-07-081-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Correct the description of ver_cut and ver_rs commands to indicate that they process ${PV} when no version argument is specified, rather than wrongly ${PVR}. It seems that the latter was introduced as a typo, as it neither agrees with initial Bugzilla proposal of the function [1], pre-EAPI implementation in eapi7-ver.eclass [2] or EAPI 7 cheatsheet in PMS. Furthermore, it simply makes little sense as the common usage of those functions is to manipulate URLs and filenames, and those do not use ebuild revisions.. It is also how it was implemented in Portage, and initially in PkgCore (afterwards the PkgCore implementation changed to conform to PMS, with expectably breaking results). [1] https://bugs.gentoo.org/482170#c15 [2] https://gitweb.gentoo.org/repo/gentoo.git/commit/eclass/eapi7-ver.eclass?id=59a1a0dda7300177a263eb1de347da493f09fdee Bug: https://bugs.gentoo.org/689494 Signed-off-by: Michał Górny <mgorny@gentoo.org>
* pkg-mgr-commands.tex: Version commands must be shell functions.Ulrich Müller2019-03-011-2/+3
| | | | Signed-off-by: Ulrich Müller <ulm@gentoo.org>
* docompress: Specify the behavior for compressed files more strictlyMichał Górny2018-10-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specify the behavior for dealing with already compressed files more strictly, by requiring them not to be compressed twice if compressed using the same format already. This replaces the previous vague statement of 'behaving sensibly if already compressed'. This statement had a number of problems. Firstly, it was entirely vague on what 'sensible behavior' is. Most of the developers seemed to presume it means decompressing the file and compressing it again. However, without a clearly defined list of compression formats to support, this is impossible to implement properly. Secondly, different package managers disagreed on the implementation. For example, Portage recompressed the file, with the implementation originally supporting .Z, .gz and .bz2, and later gaining support for .lzma and .xz (independently of EAPI support for those formats). PkgCore and Paludis never supported controllable compression, so they always installed the files in original format. The new wording aims to be more precise and strict while preserving the spirit of the original and allowing the behavior currently exhibited by the package manager implementations. Most notably, it accounts for the possibility of the same file being iterated over by the compression routine twice. It does not require the package manager to recognize arbitrary compressed file formats, making the current implementations compliant with it. At the same time, it implies that the developers need to account for the package manager not handling the particular compressed file format used upstream, and appropriately needing to decompress the file in order to fully respect controllable compression. Signed-off-by: Michał Górny <mgorny@gentoo.org>
* Fix whitespace in list items.Ulrich Müller2018-08-121-17/+19
|
* pkg-mgr-commands.tex: Allow inverted condition in use_with.Ulrich Müller2018-08-121-1/+2
| | | | | | | | | | This allows calls like "use_with !foo bar" or "use_enable !foo bar" which are supported by all three package managers and widely used in the tree. Explicitly forbid the "use_with !foo" one-argument form. It is not used in the tree, and ebuilds can use the more explicit two-argument form instead. (Current portage-2.3.46 outputs "--with-!foo".)
* pkg-mgr-commands.tex: dobin file ownership is not distro specific.Ulrich Müller2018-07-151-8/+5
| | | | | | For the non-prefix case, return to a wording close to that from before the prefix changes (commit f49a53b3a97dbe299f1b71dad5a6bf5b9b6805ba), which was simply "Gives the files mode 0755 and ownership root:root."
* pkg-mgr-commands: Correct 'empty' insopts behavior to match PMsMichał Górny2018-06-081-3/+2
| | | | | | | | | | | My previous fix to insopts turns out twice wrong: firstly, because I did not really type what I meant, and secondly because package managers have inconsistent behavior there. Portage uses the default mode (specified by PMS) when insopts was called with no arguments or arguments forming an empty string; PkgCore and Paludis literally pass empty argument list to install. Mark the behavior as undefined to match that. Fixes: 2955b2dfaa5599677bf33e56c7619ccc557ebfff
* pkg-mgr-commands.tex: Two small fixes for version commands.Ulrich Müller2018-05-221-3/+3
| | | | | | | | Version separators can consist of several characters. Clarify this in the regexp accordingly. A range of components or separators is not a "range of versions". Say "range" only, because the meaning is clear from context.
* *into, *opts: Remove redundant offset-prefix sentence from headingMichał Górny2018-05-041-5/+4
| | | | | | Remove the offset-prefix reference from heading to 'Commands affecting install destinations'. The offset-prefix situation is explained in 'into' already, and it applies only to the *into commands.
* *into, *opts: Clarify the number of argumentsMichał Górny2018-05-041-7/+8
| | | | | | | | Clarify the number of arguments taken by *into and *opts. The former always takes a single argument, so clarify that calling it without arguments is invalid. The latter may take 0+ arguments (with 0 resetting the list), so clarify that the correct way is to pass multiple arguments rather than a single quoted argument.
* *into, *opts: Reword to use 'as ...' wording from 'do*'Michał Górny2018-05-041-9/+6
| | | | | | | Reword the *into and *opts commands to use the 'As ..., for ...' wording used in do*/new* commands. This makes the descriptions a bit shorter, and makes it possible to extend the information given in original commands without having to update the wording of derived commands.
* Account for 'Build commands' being run in src_testMichał Górny2018-05-041-3/+3
|
* best_version: Explicitly specify the output formatMichał Górny2018-05-041-3/+3
| | | | | | Explain the format used by best_version command explicitly. Currently, the function only lists what gets printed but not in what form or how it is separated.
* nonfatal: Reword argument handling to be cleanerMichał Górny2018-05-041-1/+1
| | | | | | | | Reword the description of 'nonfatal' to explicitly indicate that it takes 1+ args and executes them as a command. The original 'remainder of its argument' wording sounds weird, given that there is no earlier mention of argument processing (-> remainder from what?). This also clarifies that calling nonfatal with no argument is not valid.
* Trim the width of several tables.Ulrich Müller2018-04-051-2/+2
| | | | | | | | tab:added-env-vars-table was too wide, which is fixed by reducing the width of the paragraph type columns. tab:econf-options-table: Change columns with overlong headers to paragraph type, in order to allow line breaks.
* EAPI 7 has version manipulation and comparison functionsMichał Górny2018-04-051-0/+80
| | | | Bug: https://bugs.gentoo.org/482170
* pkg-mgr-commands.tex: Join docompress and dostrip sections.Ulrich Müller2018-03-311-83/+47
|
* EAPI 7 has controllable stripping and dostrip.Ulrich Müller2018-03-311-0/+62
| | | | Bug: https://bugs.gentoo.org/203891
* EAPI 7: domo installs to /usr.Michał Górny2018-03-311-5/+20
| | | | Bug: https://bugs.gentoo.org/595924