[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: 6e513443da0103b0c849449af124e1cd7173f412 Author: Michał Górny gentoo org> AuthorDate: Sun Sep 8 17:43:56 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Oct 16 18:48:36 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=6e513443 general-concepts/licenses: all-rights-reserved default, restricts Add a paragraph on applicable restrictions per license terms. Also clearly indicate that sources with no license are all-rights-reserved. Acked-by: Michael Orlitzky gentoo.org> Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 22 +++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index 86ffc8d..f7e904e 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -25,9 +25,7 @@ LICENSE="LGPL-2.1+ tools? ( GPL-2+ )" If the package sources include additional files that are not installed, their license should not be listed. However, if those files are used at build time, then the license must not impose any restrictions that -could prevent users from building the software. Please also note -that some licenses may impose additional restrictons, e.g. fetch -and/or mirroring restriction. +could prevent users from building the software. @@ -39,6 +37,16 @@ be used) then use the following syntax: LICENSE="|| ( foo bar )" + +If the license of a package does not explicitly permit redistributing +distfiles found in SRC_URI, the corresponding ebuilds must have +RESTRICT=mirror. If the license does not permit distributing +Gentoo binary packages built from the source, the ebuilds should have +RESTRICT=bindist. Some EULAs may also require the user to fetch +distfiles manually, in which case RESTRICT=fetch is necessary. +Note that RESTRICT=fetch implies RESTRICT=mirror. + + Determining the correct license @@ -81,6 +89,14 @@ of applicable licenses but the exact application of licenses and their versions are specified elsewhere. + +If the package does not indicate any license, then you should contact +the author for clarification. Adding packages with no explicit license +statement is strongly discouraged. If they are present already, they +ought to have all-rights-reserved license, +and RESTRICT="bindist mirror". + + Please watch for license conflicts. If the license indicated by the package is incompatible with the licenses used by its sources
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: b939305296bcd7ec9b0e5bec180a7c60220ca803 Author: Michał Górny gentoo org> AuthorDate: Mon Sep 23 08:29:31 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Oct 16 18:48:46 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b9393052 general-concepts/licenses: Expand the section on restrictions Closes: https://github.com/gentoo/devmanual.gentoo.org/pull/108 Acked-by: Michael Orlitzky gentoo.org> Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 43 +++--- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index f7e904e..2e1a268 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -37,16 +37,45 @@ be used) then use the following syntax: LICENSE="|| ( foo bar )" + +License-implied restrictions + + + +Non-free licenses may impose additional restrictions that need to be stated +in the ebuild. In order to identify such restrictions correctly, it is necessary +to analyze relevant license(s) and determine applicable clauses based +on the files contained in upstream packages. Note that upstreams may use +the same license for multiple products, with some restrictions not being +applicable to the ebuild in question. + + -If the license of a package does not explicitly permit redistributing -distfiles found in SRC_URI, the corresponding ebuilds must have -RESTRICT=mirror. If the license does not permit distributing -Gentoo binary packages built from the source, the ebuilds should have -RESTRICT=bindist. Some EULAs may also require the user to fetch -distfiles manually, in which case RESTRICT=fetch is necessary. -Note that RESTRICT=fetch implies RESTRICT=mirror. +If the license of a package does not explicitly permit redistributing distfiles +found in SRC_URI, the corresponding ebuilds must have +RESTRICT=mirror to prevent the affected files from being copied to Gentoo +mirrors. In some cases, the license permits redistributing unmodified original +archives only in that case, SRC_URI must not contain modified +or repackaged upstream archives, and all changes must be applied via patching +in appropriate ebuild phases. + +If the license does not permit distributing Gentoo binary packages built using +the ebuild, with or without source modifications, it must have +RESTRICT=bindist. This is also the case if restrictions are set based +on the cost of redistribution (e.g. the license prohibits selling the product). + + + +Some EULAs may also require the user to fetch distfiles manually, in which case +RESTRICT=fetch is necessary. Note that RESTRICT=fetch implies +RESTRICT=mirror. + + + + + Determining the correct license
[gentoo-commits] proj/devmanual:master commit in: eclass-writing/
commit: 9f63cc9e468400cc0feb64c3bd45cedb525b0451 Author: Michał Górny gentoo org> AuthorDate: Fri Sep 6 05:57:23 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Fri Sep 20 22:51:10 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=9f63cc9e eclass-writing: Make even more explicit, per gentoo-dev Change 'should' into 'must' for initial reviews. Make it clear that per-package eclass exception applies only to updates. ML-Thread: https://archives.gentoo.org/gentoo-dev/message/122108eebce1c4da00a1838896b4b1c3 Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> eclass-writing/text.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass-writing/text.xml b/eclass-writing/text.xml index e26dd00..1bc1768 100644 --- a/eclass-writing/text.xml +++ b/eclass-writing/text.xml @@ -46,9 +46,9 @@ Roughly speaking, there are three kinds of eclass: -Before committing a new eclass to the tree, it should be emailed to the -gentoo-dev mailing list with a justification and a proposed implementation. Do -not skip this step sometimes a better implementation or an alternative which +Before committing a new eclass to the tree, it must be emailed to the gentoo-dev +mailing list with a justification and a proposed implementation. Do not skip +this step sometimes a better implementation or an alternative which does not require a new eclass will be suggested. @@ -61,7 +61,7 @@ and end up breaking something, expect to be in a lot of trouble. -The exceptions to this rule are per-package eclasses. For example, +The exceptions to this rule are updates to per-package eclasses. For example, the apache-2 eclass is only used by the www-servers/apache package, and thus does not typically require changes to be emailed for review.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: c87c36a654840d2885f2f26a6f7fac65e6c5e2bf Author: Michał Górny gentoo org> AuthorDate: Sun Sep 8 17:25:14 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Sep 8 17:55:09 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c87c36a6 general-concepts/licenses: Use sections instead of subsections Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> general-concepts/licenses/text.xml | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index c647871..86ffc8d 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -39,7 +39,7 @@ be used) then use the following syntax: LICENSE="|| ( foo bar )" - + Determining the correct license @@ -90,9 +90,9 @@ to include license term violations. - + - + GPL-x vs GPL-x+ @@ -118,9 +118,9 @@ indicates GPL-2+ license: - + - + Adding New Licenses @@ -143,7 +143,7 @@ you are unsure as to the meaning of any part of it. - +
[gentoo-commits] proj/devmanual:master commit in: tasks-reference/, general-concepts/linguas/, profiles/, ...
commit: f9567de4159240d7c3074f78301fe0d6a65ee25f Author: Michael Orlitzky gentoo org> AuthorDate: Thu Apr 25 17:25:50 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Fri Sep 6 09:40:50 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f9567de4 Remove empty TODO pages. The following pages were devoid of any real information, containing only a note to "write me in the future," * ebuild-writing/functions/src_unpack/deb-sources * ebuild-writing/functions/src_unpack/tla-sources * general-concepts/distributed-building * general-concepts/linguas * general-concepts/privileges * profiles/profiles.desc * tasks-reference/perl-modules That isn't helpful to the reader, and just plain looks bad. This commit removes them all. Closes: https://bugs.gentoo.org/684350 Signed-off-by: Michael Orlitzky gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> .../functions/src_unpack/deb-sources/text.xml | 12 ebuild-writing/functions/src_unpack/text.xml | 2 -- .../functions/src_unpack/tla-sources/text.xml | 12 general-concepts/distributed-building/text.xml| 13 - general-concepts/linguas/text.xml | 13 - general-concepts/privileges/text.xml | 15 --- general-concepts/text.xml | 3 --- profiles/profiles.desc/text.xml | 14 -- profiles/text.xml | 1 - tasks-reference/perl-modules/text.xml | 19 --- tasks-reference/text.xml | 1 - 11 files changed, 105 deletions(-) diff --git a/ebuild-writing/functions/src_unpack/deb-sources/text.xml b/ebuild-writing/functions/src_unpack/deb-sources/text.xml deleted file mode 100644 index bdbadb4..000 --- a/ebuild-writing/functions/src_unpack/deb-sources/text.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - -Debian Sources - - - -from vapier: we dont have to 'handle' these because all debian packages have a source tarball ... the .deb format is pretty simple though, it's managed by the 'ar' utility from binutils. you can unpack a .deb by simply doing ar x blah.deb ... this will give you three files: debian-binary: plain text file which just contains version number of the .deb format control.tar.gz: a few files which control installing/verifying of package data.tar.gz: all the compiled files ... you could just extract it to / - - - - diff --git a/ebuild-writing/functions/src_unpack/text.xml b/ebuild-writing/functions/src_unpack/text.xml index a964a74..76b5f35 100644 --- a/ebuild-writing/functions/src_unpack/text.xml +++ b/ebuild-writing/functions/src_unpack/text.xml @@ -95,8 +95,6 @@ The following subsections cover different topics which often occur when writing - - diff --git a/ebuild-writing/functions/src_unpack/tla-sources/text.xml b/ebuild-writing/functions/src_unpack/tla-sources/text.xml deleted file mode 100644 index 97a8b40..000 --- a/ebuild-writing/functions/src_unpack/tla-sources/text.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - -Arch Sources - - - -Anyone want to write this? You can probably mostly copy the CVS Sources and Subversion Sources chapters. - - - - diff --git a/general-concepts/distributed-building/text.xml b/general-concepts/distributed-building/text.xml deleted file mode 100644 index 003c27f..000 --- a/general-concepts/distributed-building/text.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - -Distributed and Parallel Building - - - -Write this. - - - - - diff --git a/general-concepts/linguas/text.xml b/general-concepts/linguas/text.xml deleted file mode 100644 index d44a879..000 --- a/general-concepts/linguas/text.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - -Linguas - - - -Write this. From vapier: "used to specify languages users wish to have support for. USE=nls covers generally natural language support, but LINGUAS covers specific languages (see the games-rpg/nwn for example). the variable is expanded for USE access in ebuilds. LINGUAS=de would automatically add 'linguas_de' to USE." We also need strip-linguas examples. - - - - - diff --git a/general-concepts/privileges/text.xml b/general-concepts/privileges/text.xml deleted file mode 100644 index 8dc516b..000 --- a/general-concepts/privileges/text.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - -Privileges - - - -general privs stuff, include stuff on setuid/setgid and sticky since -a lot of people seem to be confused about those... Also notes on the portage -user and group issues, and what we use for root:root to make *bsd work. - - - - - diff --git a/general-concepts/text.xml b/general-concepts/text.xml index 0746e3d..1e40785 100644 --- a/general-concepts/text.xml +++ b/general-concepts/text.xml @@ -24,7 +24,6 @@ writing ebuilds or working with the Gentoo repository. - @@ -32,13 +31,11 @@ writing ebuilds or working wit
[gentoo-commits] proj/devmanual:master commit in: general-concepts/tree/
commit: 3b6603d6c6e7918e6ad7e74ea7fe38fb422f49cb Author: Ulrich Müller gentoo org> AuthorDate: Mon Sep 2 14:08:59 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Mon Sep 2 14:08:59 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=3b6603d6 general-concepts/tree: distfiles and packages don't belong to the repo. Signed-off-by: Ulrich Müller gentoo.org> general-concepts/tree/text.xml | 8 1 file changed, 8 deletions(-) diff --git a/general-concepts/tree/text.xml b/general-concepts/tree/text.xml index 07ac8c0..4afd8d5 100644 --- a/general-concepts/tree/text.xml +++ b/general-concepts/tree/text.xml @@ -76,14 +76,6 @@ The basic layout of the Gentoo repository is as follows: Scripts directory, scripts/ - - Distfiles directory, distfiles/. This is not included in the main - git tree, but it will be found on most user systems. - - - Packages directory, packages. Again, this is found on user systems but not - in the main git tree. -
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/users-and-groups/
commit: fc00e95707919314996280083e61a929e2ad61a7 Author: Michał Górny gentoo org> AuthorDate: Mon Jul 22 16:42:58 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Fri Aug 30 15:33:56 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=fc00e957 ebuild-writing/users-and-groups: Update for GLEP 81 Signed-off-by: Michał Górny gentoo.org> ebuild-writing/users-and-groups/text.xml | 133 ++- 1 file changed, 96 insertions(+), 37 deletions(-) diff --git a/ebuild-writing/users-and-groups/text.xml b/ebuild-writing/users-and-groups/text.xml index 536be3b..190a099 100644 --- a/ebuild-writing/users-and-groups/text.xml +++ b/ebuild-writing/users-and-groups/text.xml @@ -5,82 +5,141 @@ -If your ebuild requires a user or group to be added for a daemon, for example, -this should be performed via the functions available in user.eclass. -Regardless of whether you are adding a group or a user, this should be performed -in the pkg_setup phase function. pkg_setup is called -before the compile process, with -sandbox -disabled, so a build that requires the user to exist will -have it, and is also called for both binary and source packages. You may also -use the pkg_preinst or pkg_postinst functions for user creation, if -the user is not required during or before src_install. +Creating users and groups is governed by https://gentoo.org/glep/glep-0081.html";>GLEP 81. It is implemented +via acct-user and acct-group eclasses. + + + +New users and groups are created as packages respectively in acct-user +and acct-group categories. First, choose UIDs/GIDs that are not used by +any other package. You should consult the https://wiki.gentoo.org/wiki/Project:Quality_Assurance/UID_GID_Assignment";> +UID/GID assignment list maintained by the QA project, and possibly the +UID/GID registries maintained by other distributions that are linked on the +same page. Afterwards, send the proposed ebuilds to the gentoo-dev +mailing list for review. The naming conventions for user and group ebuilds are +explained in the following sections. Finally, after getting positive reviews, +commit the new user and group packages. + + + +The historical way of using user.eclass directly is now deprecated +and must not be used for new packages. -Adding Groups +Group ebuilds -To add a group, use the enewgroup function: +Group ebuilds are placed in acct-group category, with the package name +matching the group name. The following can be used as a template for writing +group ebuilds: -enewgroup[gid] +# Copyright 2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit acct-group + +DESCRIPTION="Meaningful description of the group" +ACCT_GROUP_ID=123 -By default the next available group ID is selected. To set a specfic group ID, -pass it an extra argument to enewgroup. +ACCT_GROUP_ID must be set to the requested GID. - -Group IDs should rarely be hardcoded. If this is the case, you should -probably check first on gentoo-dev. - - -Adding Users +User ebuilds -To add a user, use the enewuser function: +User ebuilds are placed in acct-user category, with the package name +matching the user name. The following can be used as a template for writing +user ebuilds: -enewuser [uid] [shell] [homedir] [groups] +# Copyright 2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit acct-user + +DESCRIPTION="Meaningful description of the user" +ACCT_USER_ID=123 +ACCT_USER_SHELL=/usr/bin/foo +ACCT_USER_HOME=/var/lib/foo +ACCT_USER_HOME_OWNER=foo:bar +ACCT_USER_HOME_PERMS=0775 +ACCT_USER_GROUPS=( foo bar baz ) + +acct-user_add_deps -By default, both enewuser and enewgroup allocate the next available user -ID or group ID to the new user or group - if not, you explicitly have to specify -one. +ACCT_USER_ID must be set to the requested GID. ACCT_USER_GROUPS +should list all the groups user belongs to, the primary group first. All +the other keys are optional. -Arguments for enewuser must be passed in the order as shown above: if you do -not want to specify a fixed user ID however but do want to set a specific shell, -for example, use -1 for the uid parameter. The same applies for any other -parameter where you want to keep the default setting. +ACCT_USER_SHELL can be used to set the shell for the user. If unset, +the best system equivalent of nologin is used. ACCT_USER_HOME specifies +the home directory, with /dev/null being the default. +ACCT_USER_HOME_OWNER can be used to override the ownership of the home +directory, and ACCT_USER_HOME_PERMS to override the default permissions. +The defaults are the user and primary group for the owner, and 0755 for the +permissions. + + + + + + +Utilizing users and groups in packages + + + +In order to make your package install specific users and groups, specify them
[gentoo-commits] proj/devmanual:master commit in: eclass-writing/
commit: 56a559843cb4af1c10b1df1b2f3b7c8bfe95bcb5 Author: Michał Górny gentoo org> AuthorDate: Thu Aug 29 05:54:34 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Fri Aug 30 15:49:26 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=56a55984 eclass-writing: Remove 30-day review requirement Remove the requirement of posting API changes for review 30 days prior to committing. It is a dead policy, and we currently perform such changes with regular review periods. Signed-off-by: Michał Górny gentoo.org> eclass-writing/text.xml | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/eclass-writing/text.xml b/eclass-writing/text.xml index 011a3d5..e26dd00 100644 --- a/eclass-writing/text.xml +++ b/eclass-writing/text.xml @@ -67,10 +67,8 @@ package, and thus does not typically require changes to be emailed for review. -When removing a function or changing the API of an eclass, make -sure that it doesn't break any ebuilds in the tree, and post a -notice to gentoo-dev at least 30 days in advance, preferably with -a patch included. +When removing a function or changing the API of an eclass, make sure that +it doesn't break any ebuilds in the Gentoo repository.
[gentoo-commits] proj/devmanual:master commit in: eclass-writing/
commit: 4ece0aa606656792178aa576a5c2e82ed45fb048 Author: Michał Górny gentoo org> AuthorDate: Sun Aug 4 05:13:30 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Fri Aug 30 15:49:22 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=4ece0aa6 eclass-writing: Word review requirement more strongly Make the review of eclass updates an explicit requirement rather than strong suggestion. Require them unconditionally, providing explicit exception for per-package eclasses. Signed-off-by: Michał Górny gentoo.org> eclass-writing/text.xml | 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/eclass-writing/text.xml b/eclass-writing/text.xml index ee7d5d0..011a3d5 100644 --- a/eclass-writing/text.xml +++ b/eclass-writing/text.xml @@ -53,12 +53,17 @@ does not require a new eclass will be suggested. -Before updating eutils or a similar widely used eclass, it is best to email -the gentoo-dev list. It may be that your proposed change is broken in a way you -had not anticipated, or that there is an existing function which performs the -same purpose, or that your function may be better off in its own eclass. If you -don't email gentoo-dev first, and end up breaking something, expect to be in a -lot of trouble. +Before updating any eclass, email patches to the gentoo-dev list. It may be that +your proposed change is broken in a way you had not anticipated, or that there +is an existing function which performs the same purpose, or that your function +may be better off in its own eclass. If you don't email gentoo-dev first, +and end up breaking something, expect to be in a lot of trouble. + + + +The exceptions to this rule are per-package eclasses. For example, +the apache-2 eclass is only used by the www-servers/apache +package, and thus does not typically require changes to be emailed for review. @@ -73,11 +78,6 @@ If there is an existing maintainer for an eclass (this is usually the case), you must talk to the maintainer before committing any changes. - -It is not usually necessary to email the gentoo-dev list before making changes -to a non-general eclass which you maintain. Use common sense here. - - Committing a broken eclass can kill huge numbers of packages. Since repoman is not eclass-aware, be very sure you do proper testing.
[gentoo-commits] proj/devmanual:master commit in: bin/
commit: 9df1efd58647227d1371a4089b6ebdee599fdf4d Author: Ulrich Müller gentoo org> AuthorDate: Sun Aug 25 08:43:21 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Aug 25 08:43:21 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=9df1efd5 gen-eclass-html.sh: Consider only manpages for HTML generation. Closes: https://github.com/gentoo/devmanual.gentoo.org/pull/102 Signed-off-by: Ulrich Müller gentoo.org> bin/gen-eclass-html.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/gen-eclass-html.sh b/bin/gen-eclass-html.sh index db61319..1aa57f6 100755 --- a/bin/gen-eclass-html.sh +++ b/bin/gen-eclass-html.sh @@ -38,6 +38,7 @@ EOF # We also need the ebuild man page for i in $(/usr/bin/qlist eclass-manpages) /usr/share/man/man5/ebuild.5.bz2; do BASENAME="$(basename $i .5.bz2)" + [[ ${BASENAME} != "${i}" ]] || continue DIRNAME="${OUTPUTDIR}/${BASENAME}" TMP="${DIRNAME}/index.html.tmp" FINAL="${DIRNAME}/index.html"
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/epatch/
commit: d9396de5ed663961944d27c0c100875b3480a4f0 Author: Ulrich Müller gentoo org> AuthorDate: Sun Aug 11 08:40:18 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Aug 11 08:40:18 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d9396de5 ebuild-writing/.../epatch: eapply does't support compressed files. Signed-off-by: Ulrich Müller gentoo.org> ebuild-writing/functions/src_prepare/epatch/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ebuild-writing/functions/src_prepare/epatch/text.xml b/ebuild-writing/functions/src_prepare/epatch/text.xml index 5a6939d..b0a257d 100644 --- a/ebuild-writing/functions/src_prepare/epatch/text.xml +++ b/ebuild-writing/functions/src_prepare/epatch/text.xml @@ -65,7 +65,7 @@ This example shows how different patch levels can be applied: src_prepare() { - eapply -p2 "${WORKDIR}/${P}-suse-update.patch.bz2" + eapply -p2 "${WORKDIR}/${P}-suse-update.patch" eapply -p0 "${FILESDIR}/${PV}-no-TIOCGDEV.patch" eapply "${FILESDIR}/${PV}-gcc-6.patch" eapply_user
[gentoo-commits] proj/devmanual:master commit in: profiles/use.desc/
commit: 462e58790a14a19819700af6e1229bb4643c9b3b Author: Brian Evans gentoo org> AuthorDate: Mon Aug 5 16:02:22 2019 + Commit: Brian Evans gentoo org> CommitDate: Mon Aug 5 16:02:22 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=462e5879 profiles/use.desc/: Fix broken link which should point 2 levels up Signed-off-by: Brian Evans gentoo.org> profiles/use.desc/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/profiles/use.desc/text.xml b/profiles/use.desc/text.xml index 30c3a41..ddb081a 100644 --- a/profiles/use.desc/text.xml +++ b/profiles/use.desc/text.xml @@ -14,7 +14,7 @@ discussion on the gentoo-dev list. The metadata.xml file on each ebuild category contains a list of the local USE flags, together with short description for the package in the said category. More information about the metadata.xml file can be found -here. +here.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/file-format/
commit: 3509c4277762e8beff3d0452316cf85f21f7f5eb Author: Andrey Utkin gentoo org> AuthorDate: Mon Jun 17 17:27:54 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Jun 23 18:11:38 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=3509c427 ebuild-writing/file-format: correct IEEE Std section number The existing reference pointed at "Pipe" definition, while 3.282 defines "Portable Filename Character Set" which apparently is the intended reference. Signed-off-by: Andrey Utkin gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> ebuild-writing/file-format/text.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ebuild-writing/file-format/text.xml b/ebuild-writing/file-format/text.xml index 912ae98..acc5d9a 100644 --- a/ebuild-writing/file-format/text.xml +++ b/ebuild-writing/file-format/text.xml @@ -26,8 +26,8 @@ discouraged, but technically valid. This is the same as -http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_278";> -IEEE Std 1003.1-2013, section 3.278, with the exception of the period +http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_282";> +IEEE Std 1003.1-2013, section 3.282, with the exception of the period character and with the addition of the plus character to keep GTK+ and friends happy.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/file-format/
commit: bfacfb2f4df9e3ef5e2b8c3814d7093f35e6e2a9 Author: Andrey Utkin gentoo org> AuthorDate: Mon Jun 17 18:39:24 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Jun 23 18:12:08 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=bfacfb2f ebuild-writing/file-format: add IEEE Std section name Call the section by name. This makes it possible to understand what is being referenced without following the link. This also makes sure if number of the section changes again, we won't miss the discrepancy. Closes: https://github.com/gentoo/devmanual.gentoo.org/pull/98 Signed-off-by: Andrey Utkin gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> ebuild-writing/file-format/text.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ebuild-writing/file-format/text.xml b/ebuild-writing/file-format/text.xml index acc5d9a..f9e4bd9 100644 --- a/ebuild-writing/file-format/text.xml +++ b/ebuild-writing/file-format/text.xml @@ -27,9 +27,9 @@ discouraged, but technically valid. This is the same as http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_282";> -IEEE Std 1003.1-2013, section 3.282, with the exception of the period -character and with the addition of the plus character to keep GTK+ and friends -happy. +IEEE Std 1003.1-2013, section 3.282 (Portable Filename Character Set), +with the exception of the period character and with the addition of the plus +character to keep GTK+ and friends happy.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/common-mistakes/, ebuild-maintenance/maintenance-tasks/
commit: 07452705c2b149c0510d64c72dc9e474bd0f8363 Author: Ulrich Müller gentoo org> AuthorDate: Mon Jun 17 19:51:59 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Mon Jun 17 19:51:59 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=07452705 Avoid absolute (and outdated) /usr/portage path. Signed-off-by: Ulrich Müller gentoo.org> ebuild-maintenance/maintenance-tasks/text.xml | 9 - ebuild-writing/common-mistakes/text.xml | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/ebuild-maintenance/maintenance-tasks/text.xml b/ebuild-maintenance/maintenance-tasks/text.xml index a434fb5..06634b8 100644 --- a/ebuild-maintenance/maintenance-tasks/text.xml +++ b/ebuild-maintenance/maintenance-tasks/text.xml @@ -34,11 +34,10 @@ select all possible fields, then submit the query. For you lazy people, click In general, the Gentoo repository should only be used for storing .ebuild files, as well as any relatively small companion files, such as patches or sample configuration files. These types of -files should be placed in the -/usr/portage/mycat/mypkg/files directory to keep the main -mycat/mypkg directory uncluttered. Exceptions to this -rule are for larger patch files (we recommend this for patches above -20KB) which should be distributed as tarballs via the +files should be placed in the mycat/mypkg/files directory +to keep the main mycat/mypkg directory uncluttered. +Exceptions to this rule are for larger patch files (we recommend this +for patches above 20KB) which should be distributed as tarballs via the Gentoo mirror system so that people do not waste excessive amounts of bandwidth and hard drive space. Also, you should not add binary diff --git a/ebuild-writing/common-mistakes/text.xml b/ebuild-writing/common-mistakes/text.xml index 2842531..869676e 100644 --- a/ebuild-writing/common-mistakes/text.xml +++ b/ebuild-writing/common-mistakes/text.xml @@ -300,14 +300,14 @@ Another common mistake users make when submitting ebuilds is supplying an invalid license. For example, GPL is not a valid license. You need to specify GPL-1 or GPL-2. Same with LGPL. Make sure the license you use in the LICENSE field is something that exists in -/usr/portage/licenses. As a tip, check the COPYING +the licenses directory. As a tip, check the COPYING in a source tarball for the license. If a package does not specify it uses GPL-1 or GPL-2, it is very likely it uses GPL-2. If the license for the package you submit is unique and not in -/usr/portage/licenses/, then you must submit the new license in a +licenses/, then you must submit the new license in a separate file.
[gentoo-commits] proj/devmanual:master commit in: bin/, /
commit: 3d08cb6dbfaf429219ad62c9a2ca3ceb2399f29f Author: Ulrich Müller gentoo org> AuthorDate: Tue Jun 11 10:40:12 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Tue Jun 11 10:40:12 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=3d08cb6d Update copyright line in footer to "Gentoo Authors" Signed-off-by: Ulrich Müller gentoo.org> bin/gen-eclass-html.sh | 2 +- devbook.xsl| 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/gen-eclass-html.sh b/bin/gen-eclass-html.sh index 7897f68..db61319 100755 --- a/bin/gen-eclass-html.sh +++ b/bin/gen-eclass-html.sh @@ -22,7 +22,7 @@ IFS='' read -r -d '' FOOTER << 'EOF' -Copyright (C) 2001-2019 Gentoo Foundation, Inc. +Copyright (C) 2001-2019 Gentoo Authors Gentoo is a trademark of the Gentoo Foundation, Inc. The text of this document is distributed under the http://creativecommons.org/licenses/by-sa/3.0/";>Creative Commons Attribution-ShareAlike 3.0 Unported License. diff --git a/devbook.xsl b/devbook.xsl index c25c82c..8fba56c 100644 --- a/devbook.xsl +++ b/devbook.xsl @@ -555,7 +555,7 @@ - Copyright (C) 2001-2019 Gentoo Foundation, Inc. + Copyright (C) 2001-2019 Gentoo Authors Gentoo is a trademark of the Gentoo Foundation, Inc. The text of this document is distributed under the
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: 4386ee9536983a2a506791efcb90b12223f7f5bc Author: Stefan Strogin gentoo org> AuthorDate: Fri May 24 07:32:55 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Fri May 24 08:39:25 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=4386ee95 general-concepts/use-flags: remove redundant 'die' from the example Signed-off-by: Stefan Strogin gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> general-concepts/use-flags/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index 04ebee2..74cb45d 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -283,7 +283,7 @@ src_compile() { # Other stuff ${myconf} - emake || die "make failed" + emake }
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/
commit: 059da2527181ec9173f2addf8ac9ec2ce0fd704d Author: Michał Górny gentoo org> AuthorDate: Mon Jun 18 10:12:12 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed May 22 19:38:56 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=059da252 ebuild-writing/variables: Stop encouraging empty USE_EXPAND hack Remove the suggestion that 'no flags = all options'. We certainly aren't doing it these days, and the problem is better resolved with defaulting USE_EXPAND and/or REQUIRED_USE these days. ebuild-writing/variables/text.xml | 17 - 1 file changed, 17 deletions(-) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index e63c8ff..811be44 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -370,23 +370,6 @@ SRC_URI="https://example.com/files/${P}-core.tar.bz2 doc? ( https://example.com/files/${P}/${P}-docs.tar.bz2 )" - -If a USE_EXPAND variable is used to control whether certain optional -components are installed, the correct thing to do if the variable is unset is -generally to install all available components. - - - -SRC_URI="https://example.com/files/${P}-core.tar.bz2 - examplecards_foo? ( https://example.com/files/${P}-foo.tar.bz2 ) - examplecards_bar? ( https://example.com/files/${P}-bar.tar.bz2 ) - examplecards_baz? ( https://example.com/files/${P}-baz.tar.bz2 ) - !examplecards_foo? ( !examplecards_bar? ( !examplecards_baz? ( - https://example.com/files/${P}-foo.tar.bz2 - https://example.com/files/${P}-bar.tar.bz2 - https://example.com/files/${P}-baz.tar.bz2 ) ) )" - -
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: 168d155d517e4ad08dacba6fd9d0769278bc4922 Author: Michał Górny gentoo org> AuthorDate: Thu Apr 25 14:07:23 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed May 22 19:34:18 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=168d155d general-concepts/use-flags: Grammar in VDB paragraph Signed-off-by: Michał Górny gentoo.org> general-concepts/use-flags/text.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index 186c51d..04ebee2 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -38,8 +38,8 @@ to always succeed). -The status of USE flags is saved in the VDB, and their value in -pkg_prerm and pkg_postrm is taken from there. This means that +The states of USE flags are saved in the VDB, and their values in +pkg_prerm and pkg_postrm are taken from there. This means that setting or unsetting a USE flag between merge and unmerge has no effect.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: add4db87d50f4633dac12a21f5c0f98bc86cc5d6 Author: Michał Górny gentoo org> AuthorDate: Sun Apr 14 09:44:18 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed May 22 19:34:11 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=add4db87 general-concepts/use-flags: Also note about flags controlling CFLAGS Signed-off-by: Michał Górny gentoo.org> general-concepts/use-flags/text.xml | 36 1 file changed, 36 insertions(+) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index c20e8d0..4d56d97 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -70,6 +70,42 @@ of flags to those programs or modules that have external dependencies and/or long build times. The rest of them should be built unconditionally instead, or controlled by a flag such as minimal. + + +You should not introduce USE flags that merely manipulate CFLAGS, +FEATURES or similar variables configured directly by the user. Instead, +packages should avoid manipulating them at all, and let users set them directly. +Common mistakes include: + + + + + Using debug USE flag to force -O0 -g and disable + stripping. The correct purpose of debug flag is to control additional + debug code paths. The use of correct flags and features to preserve + debugging information is user's responsibility. + + + + Introducing lto flag to force -flto. This is something user + should set directly in flag varibles. + + + + Using CPU_FLAGS_* to control -m* options. Those flags are + intended to control code paths explicitly requiring specific CPU extensions, + e.g. separate assembly. Compiler-generated assembly should respect user's + -march choice. + + + + +There might be corner cases where these rules do not apply. For example, a few +upstreams require users to use specific CFLAGS and reject bug reports +against builds using other values. In this case, it is customary to strip flags +by default and provide custom-cflags flag to allow users to force their +preferred flags. +
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: 83e7f6d3a5430c17d234d5eb77685cdd7bc6df6d Author: Michał Górny gentoo org> AuthorDate: Sat Apr 13 21:40:22 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed May 22 19:34:07 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=83e7f6d3 general-concepts/use-flags: Split out use cases for not using flags Split out the paragraph on not using USE flags for runtime dependencies into a separate section. Include the policy of not using USE flags for small files. Signed-off-by: Michał Górny gentoo.org> general-concepts/use-flags/text.xml | 41 - 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index de61874..c20e8d0 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -27,6 +27,23 @@ dependency is not detected by the package manager tools and can easily break, among other issues. + +The status of USE flags is saved in the VDB, and their value in +pkg_prerm and pkg_postrm is taken from there. This means that +setting or unsetting a USE flag between merge and unmerge has no effect. + + + + +When not to use USE flags? + + +While USE flags are generally considered beneficial to users, there +are valid use cases for avoiding them. When writing ebuilds, consider whether +to add flags for particular conditional features, or explore one +of the alternative solutions described below. + + The usage of a USE flag should not control runtime dependencies when the package does not link to it. Doing so will create extra @@ -35,12 +52,26 @@ change on disk. This should be avoided and instead can be conveyed to the user via post install messages if needed. - -The status of USE flags is saved in the VDB, and their value in -pkg_prerm and pkg_postrm is taken from there. This means that -setting or unsetting a USE flag between merge and unmerge has no effect. - + +USE flags must not be used to control installing files that are small, +non-intrusive, do not introduce additional build-time dependencies or cause +a significant increase in build time. Examples of such files are bash completion +files, init.d scripts, logrotate configuration files, systemd service files. +The rationale is the same as above. Instead, those files must be installed +unconditionally. + + + +A similar case can be made for packages having multiple conditional programs +or modules. Whenever this results in a large number of USE flags that +would force the user to spend a lot of time choosing compatible flags +and possibly rebuilding after incomplete choices, consider reducing the use +of flags to those programs or modules that have external dependencies +and/or long build times. The rest of them should be built unconditionally +instead, or controlled by a flag such as minimal. + + noblah USE Flags
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: ac170fabb913b0818eec678c4be6f1b7a05f8a34 Author: Michał Górny gentoo org> AuthorDate: Mon Apr 22 19:49:49 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed May 22 19:34:15 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=ac170fab general-concepts/use-flags: Explain resolving automagic deps Explain how developers should resolve automagic deps properly (via upstream patch), and how they can easily solve it locally (via cache variables or forcing dep unconditionally). Suggested-by: Michael Orlitzky gentoo.org> Signed-off-by: Michał Górny gentoo.org> general-concepts/use-flags/text.xml | 10 ++ 1 file changed, 10 insertions(+) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index 4d56d97..186c51d 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -27,6 +27,16 @@ dependency is not detected by the package manager tools and can easily break, among other issues. + +Automagic dependencies are preferably fixed by preparing a build system patch +adding appropriate options to control the dependency in question, and submitting +this patch upstream for the benefit of all users. To avoid carrying additional +patches downstream, automagic dependencies can usually be worked around using +special build system options (e.g. cache variables in autotools) or through +depending on the relevant packages unconditionally (i.e. forcing the check +to always succeed). + + The status of USE flags is saved in the VDB, and their value in pkg_prerm and pkg_postrm is taken from there. This means that
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: a5f4ce3b3a39db8f6944ba9f1a1c7fb88f2f6990 Author: Michał Górny gentoo org> AuthorDate: Sun Apr 21 21:25:12 2019 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed May 22 19:34:02 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=a5f4ce3b general-concepts/use-flags: Reindent to match devmanual style Signed-off-by: Michał Górny gentoo.org> general-concepts/use-flags/text.xml | 226 ++-- 1 file changed, 113 insertions(+), 113 deletions(-) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index 0e46546..de61874 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -5,40 +5,40 @@ - USE flags are to control optional dependencies and settings which - the user may reasonably want to select. For example, app-editors/vim - can optionally build with support for the ruby interpreter, and it - needs dev-lang/ruby installed to do this we use the ruby - USE flag to provide this option. On the other hand, - app-text/glark requires ruby no matter what, so no USE - flag is used there. +USE flags are to control optional dependencies and settings which +the user may reasonably want to select. For example, app-editors/vim +can optionally build with support for the ruby interpreter, and it +needs dev-lang/ruby installed to do this we use the ruby +USE flag to provide this option. On the other hand, +app-text/glark requires ruby no matter what, so no USE +flag is used there. - No combination of USE flags should cause a package to fail to build - because users can set any combination of flags. +No combination of USE flags should cause a package to fail to build +because users can set any combination of flags. - Packages should not configure and link based upon what is available at - compile time any autodetection must be overridden. This is commonly - referred to as the dependency being "automagic" - This is bad because the - dependency is not detected by the package manager tools and can easily - break, among other issues. +Packages should not configure and link based upon what is available at +compile time any autodetection must be overridden. This is commonly +referred to as the dependency being "automagic" - This is bad because the +dependency is not detected by the package manager tools and can easily +break, among other issues. - The usage of a USE flag should not control runtime dependencies when - the package does not link to it. Doing so will create extra - configuration for the package and re-compilation for no underlying file - change on disk. This should be avoided and instead can be conveyed to the - user via post install messages if needed. +The usage of a USE flag should not control runtime dependencies when +the package does not link to it. Doing so will create extra +configuration for the package and re-compilation for no underlying file +change on disk. This should be avoided and instead can be conveyed to the +user via post install messages if needed. - The status of USE flags is saved in the VDB, and their value in - pkg_prerm and pkg_postrm is taken from there. This means that - setting or unsetting a USE flag between merge and unmerge has no effect. +The status of USE flags is saved in the VDB, and their value in +pkg_prerm and pkg_postrm is taken from there. This means that +setting or unsetting a USE flag between merge and unmerge has no effect. @@ -46,20 +46,20 @@ noblah USE Flags - Avoid noblah style USE flags. These break use.mask and - cause all sorts of complications for arch developers. Here's why: +Avoid noblah style USE flags. These break use.mask and +cause all sorts of complications for arch developers. Here's why: - Consider a hypothetical package named 'vplayer', which plays videos. This - package has optional support, via USE flags, for various sound and - video output methods, various video codecs and so on. +Consider a hypothetical package named 'vplayer', which plays videos. This +package has optional support, via USE flags, for various sound and +video output methods, various video codecs and so on. - One of vplayer's optional features is support for the 'fakemedia' codec, - which is unfortunately only available as a dodgy x86 binary. We could - handle this by doing something like: +One of vplayer's optional features is support for the 'fakemedia' codec, +which is unfortunately only available as a dodgy x86 binary. We could +handle this by doing something like: @@ -67,15 +67,15 @@ RDEPEND="x86? ( fakemedia? ( >=media-libs/fakemedia-1.1 ) )" - Except this is pretty nasty what happens when an AMD64 binary is made - as well? Also, users on other archs
[gentoo-commits] proj/devmanual:master commit in: quickstart/
commit: 858a4bf9eb22523b936651861d74780843d68f19 Author: Michał Górny gentoo org> AuthorDate: Mon Apr 22 07:22:44 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Mon May 13 18:50:22 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=858a4bf9 quickstart: Remove unnecessary src_install() from most examples Remove most of src_install() redefinitions since they completely match the default. Leave the initial one for demonstration purposes, and the last one since it is more complex. Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> quickstart/text.xml | 18 +++--- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/quickstart/text.xml b/quickstart/text.xml index 51f9962..d913374 100644 --- a/quickstart/text.xml +++ b/quickstart/text.xml @@ -225,11 +225,6 @@ DEPEND="${RDEPEND} src_configure() { econf --with-popt } - -src_install() { - emake DESTDIR="${D}" install - dodoc README CHANGES -} @@ -241,7 +236,9 @@ variables see -Again, we define src_configure and src_install functions. +We define src_configure only. src_install does not need to +be defined since the default implementation calling emake install +and installing common documentation files works correctly for the package. @@ -291,11 +288,6 @@ src_prepare() { src_configure() { econf --with-popt } - -src_install() { - emake DESTDIR="${D}" install - dodoc README CHANGES -} @@ -339,10 +331,6 @@ DEPEND="!sys-libs/glibc" src_configure() { econf $(use_enable nls) } - -src_install() { - emake DESTDIR="${D}" install -}
[gentoo-commits] proj/devmanual:master commit in: quickstart/
commit: 11a85f9596d71521a8018faf4d73d730d163187a Author: Michał Górny gentoo org> AuthorDate: Mon Apr 22 07:14:20 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Mon May 13 18:50:09 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=11a85f95 quickstart: Correct LICENSE in ebuild snippets While there's no real reason for those snippets to be correct, I think it'd be generally beneficial to show developers that the '+' license variants do exist and are quite common. Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> quickstart/text.xml | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/quickstart/text.xml b/quickstart/text.xml index e47433e..5a33ead 100644 --- a/quickstart/text.xml +++ b/quickstart/text.xml @@ -43,7 +43,7 @@ DESCRIPTION="Exuberant ctags generates tags files for quick source navigation" HOMEPAGE="http://ctags.sourceforge.net"; SRC_URI="mirror://sourceforge/ctags/${P}.tar.gz" -LICENSE="GPL-2" +LICENSE="GPL-2+" SLOT="0" KEYWORDS="~mips ~sparc ~x86" @@ -111,7 +111,8 @@ name and version in this case, it would be ctags-5.5.4. -The LICENSE is GPL-2 (the GNU General Public License version 2). +The LICENSE is GPL-2+ (the GNU General Public License version 2 +or (at your option) any later version). @@ -333,7 +334,7 @@ DESCRIPTION="GNU charset conversion library for libc which doesn't implement it" HOMEPAGE="https://www.gnu.org/software/libiconv/"; SRC_URI="ftp://ftp.gnu.org/pub/gnu/libiconv/${P}.tar.gz"; -LICENSE="LGPL-2.1" +LICENSE="LGPL-2+ GPL-3+" SLOT="0" KEYWORDS="~amd64 ~ppc ~sparc ~x86" IUSE="nls" @@ -378,7 +379,7 @@ DESCRIPTION="A lightweight email client and newsreader" HOMEPAGE="https://sylpheed.good-day.net/"; SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" -LICENSE="GPL-2" +LICENSE="GPL-2+ LGPL-2.1+" SLOT="0" KEYWORDS="alpha amd64 hppa ia64 ppc ppc64 sparc x86" IUSE="crypt imlib ipv6 ldap nls pda ssl xface"
[gentoo-commits] proj/devmanual:master commit in: eclass-writing/, ebuild-writing/eapi/, ebuild-writing/common-mistakes/, ...
commit: 2432185b684481ca275e7b5373e03363a1fdca5c Author: Michał Górny gentoo org> AuthorDate: Mon Apr 22 07:01:27 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Mon May 13 18:50:09 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=2432185b Update snippet copyright line to 'Gentoo Authors' Update the copyright line of ebuild snippets from obsolete 'Gentoo Foundation' to 'Gentoo Authors' as used currently. Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> ebuild-writing/common-mistakes/text.xml | 2 +- ebuild-writing/eapi/text.xml | 6 +++--- ebuild-writing/file-format/text.xml | 2 +- ebuild-writing/functions/src_unpack/rpm-sources/text.xml | 2 +- ebuild-writing/using-eclasses/text.xml | 2 +- eclass-writing/text.xml | 6 +++--- quickstart/text.xml | 10 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/ebuild-writing/common-mistakes/text.xml b/ebuild-writing/common-mistakes/text.xml index 1658f49..2842531 100644 --- a/ebuild-writing/common-mistakes/text.xml +++ b/ebuild-writing/common-mistakes/text.xml @@ -163,7 +163,7 @@ The first two lines must look like this: -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index d375422..884f3c1 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -42,7 +42,7 @@ Most developers prefer to set the EAPI version without quotes. However, the PMS -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -117,7 +117,7 @@ src_compile() { -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=1 @@ -523,7 +523,7 @@ DEPEND=" Example: -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=4 diff --git a/ebuild-writing/file-format/text.xml b/ebuild-writing/file-format/text.xml index 95f55ac..912ae98 100644 --- a/ebuild-writing/file-format/text.xml +++ b/ebuild-writing/file-format/text.xml @@ -151,7 +151,7 @@ header.txt in the top directory of the Gentoo repository. -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 diff --git a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml index c40bcae..d597d99 100644 --- a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml +++ b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml @@ -52,7 +52,7 @@ patches. The filename should be suse-fetchmail-6.2.5.54.1.ebuild. -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI="6" diff --git a/ebuild-writing/using-eclasses/text.xml b/ebuild-writing/using-eclasses/text.xml index 0c13896..bd50796 100644 --- a/ebuild-writing/using-eclasses/text.xml +++ b/ebuild-writing/using-eclasses/text.xml @@ -32,7 +32,7 @@ uses three eclasses: -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 diff --git a/eclass-writing/text.xml b/eclass-writing/text.xml index 352e026..ee7d5d0 100644 --- a/eclass-writing/text.xml +++ b/eclass-writing/text.xml @@ -612,7 +612,7 @@ a single function, domacosapp. -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: macosapp.eclass @@ -699,7 +699,7 @@ something like the following: -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: jmake.eclass @@ -760,7 +760,7 @@ for an eclass to invoke die from the global scope. For example: -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: eapi-die.eclass diff --git a/quickstart/text.xml b/quickstart/text.xml index 3e76a2e..e47433e 100644 --- a/quickstart/text.xml +++ b/quickstart/text.xml @@ -34,7 +34,7 @@ can see real ebuilds in the main tree). -# Copyright 1999-2019 Gentoo Foundation +# Copyright 1999-2019 Gentoo Authors # Distribu
[gentoo-commits] proj/devmanual:master commit in: quickstart/
commit: 1b3f26405f688097c265702553adb19ace333ab3 Author: Michał Górny gentoo org> AuthorDate: Mon Apr 22 07:19:17 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Mon May 13 18:50:10 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=1b3f2640 quickstart: Switch to eapply Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Ulrich Müller gentoo.org> quickstart/text.xml | 19 +++ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/quickstart/text.xml b/quickstart/text.xml index 5a33ead..51f9962 100644 --- a/quickstart/text.xml +++ b/quickstart/text.xml @@ -260,20 +260,15 @@ compile-time dependencies, and the RDEPEND lists runtime dependencies. Se Often we need to apply patches. This is done in the src_prepare -function using the epatch helper function. To use epatch -one must first tell Portage that the epatch eclass (an eclass is -like a library) is required -this is done via inherit epatch at the top of the ebuild. Here's -app-misc/detox/detox-1.1.0.ebuild: +function using the eapply helper function. To use eapply +one must use EAPI 7. Here's app-misc/detox/detox-1.1.0.ebuild: # Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 - -inherit epatch +EAPI=7 DESCRIPTION="detox safely removes spaces and strange characters from filenames" HOMEPAGE="http://detox.sourceforge.net/"; @@ -289,7 +284,7 @@ DEPEND="${RDEPEND} sys-devel/bison" src_prepare() { - epatch "${FILESDIR}"/${P}-destdir.patch \ + eapply "${FILESDIR}"/${P}-destdir.patch \ "${FILESDIR}"/${P}-parallel_build.patch } @@ -371,9 +366,9 @@ Another more complicated example, this time based upon # Copyright 1999-2019 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=5 +EAPI=7 -inherit epatch desktop +inherit desktop DESCRIPTION="A lightweight email client and newsreader" HOMEPAGE="https://sylpheed.good-day.net/"; @@ -398,7 +393,7 @@ DEPEND="${RDEPEND} nls? ( >=sys-devel/gettext-0.12.1 )" src_prepare() { - epatch "${FILESDIR}"/${PN}-namespace.diff \ + eapply "${FILESDIR}"/${PN}-namespace.diff \ "${FILESDIR}"/${PN}-procmime.diff }
[gentoo-commits] proj/devmanual:master commit in: bin/, /
commit: 0560e898971b8e26c945dc3b0c4e8185249daa1f Author: Brian Evans gentoo org> AuthorDate: Fri Apr 19 13:14:46 2019 + Commit: Brian Evans gentoo org> CommitDate: Fri Apr 19 13:14:46 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=0560e898 Remove defunct Google+ Signed-off-by: Brian Evans gentoo.org> bin/gen-eclass-html.sh | 2 +- devbook.xsl| 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/gen-eclass-html.sh b/bin/gen-eclass-html.sh index 65b70f0..7897f68 100755 --- a/bin/gen-eclass-html.sh +++ b/bin/gen-eclass-html.sh @@ -18,8 +18,8 @@ IFS='' read -r -d '' FOOTER << 'EOF' http://twitter.com/gentoo"; title="@Gentoo on Twitter"> -https://plus.google.com/+Gentoo"; title="+Gentoo on Google+"> https://www.facebook.com/gentoo.org"; title="Gentoo on Facebook"> + Copyright (C) 2001-2019 Gentoo Foundation, Inc. diff --git a/devbook.xsl b/devbook.xsl index 4a47b6b..c25c82c 100644 --- a/devbook.xsl +++ b/devbook.xsl @@ -550,8 +550,8 @@ http://twitter.com/gentoo"; title="@Gentoo on Twitter"> -https://plus.google.com/+Gentoo"; title="+Gentoo on Google+"> https://www.facebook.com/gentoo.org"; title="Gentoo on Facebook"> +
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/
commit: 1b5a0169ffb0774c0cd63c9527821f39534b9f93 Author: Ulrich Müller gentoo org> AuthorDate: Sun Mar 24 16:44:09 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Mar 24 16:44:09 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=1b5a0169 ebuild-writing/variables: Move PROPERTIES to proper place. Signed-off-by: Ulrich Müller gentoo.org> ebuild-writing/variables/text.xml | 15 +++ 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 4e4c76c..e63c8ff 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -240,6 +240,13 @@ The following variables may or must be defined by every ebuild. See . + +PROPERTIES + +A space-delimited list of properties, with conditional syntax support. +interactive is the only valid value for now. + + RESTRICT @@ -287,14 +294,6 @@ The following variables may or must be defined by every ebuild. value for this variable if it is the same as the default value. - -PROPERTIES - -A space-delimited list of properties, with conditional -syntax support. interactive is the only valid value -for now. - - DOCS
[gentoo-commits] proj/devmanual:master commit in: bin/
commit: b6b4d4ed8430f37e3b809096be1ab3d99ce7fe05 Author: Brian Evans gentoo org> AuthorDate: Fri Mar 22 19:45:43 2019 + Commit: Brian Evans gentoo org> CommitDate: Fri Mar 22 19:45:43 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b6b4d4ed Reorder title header of generated pages Signed-off-by: Brian Evans gentoo.org> bin/gen-eclass-html.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/gen-eclass-html.sh b/bin/gen-eclass-html.sh index f97f2c7..65b70f0 100755 --- a/bin/gen-eclass-html.sh +++ b/bin/gen-eclass-html.sh @@ -47,7 +47,7 @@ for i in $(/usr/bin/qlist eclass-manpages) /usr/share/man/man5/ebuild.5.bz2; do - Gentoo Development Guide: $BASENAME + $BASENAME - Gentoo Development Guide
[gentoo-commits] proj/devmanual:master commit in: /, bin/
commit: 534ad84860ac80c3984bf96a8b31a3c8c495b403 Author: Brian Evans gentoo org> AuthorDate: Fri Mar 22 18:12:47 2019 + Commit: Brian Evans gentoo org> CommitDate: Fri Mar 22 18:12:47 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=534ad848 Add list-group attributes to some items Signed-off-by: Brian Evans gentoo.org> bin/gen-eclass-html.sh | 6 +++--- devbook.xsl| 21 +++-- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/bin/gen-eclass-html.sh b/bin/gen-eclass-html.sh index e87f60f..f97f2c7 100755 --- a/bin/gen-eclass-html.sh +++ b/bin/gen-eclass-html.sh @@ -119,16 +119,16 @@ installed by emerging app-porta Contents - + EOF for i in $(find $OUTPUTDIR/ -maxdepth 1 -mindepth 1 -type d | sort); do - echo "$(basename $i) Reference" >> ${OUTPUTDIR}/text.xml + echo "$(basename $i) Reference" >> ${OUTPUTDIR}/text.xml done cat << EOF >> ${OUTPUTDIR}/text.xml - + diff --git a/devbook.xsl b/devbook.xsl index 2c8e506..4a47b6b 100644 --- a/devbook.xsl +++ b/devbook.xsl @@ -205,6 +205,14 @@ + +list-group-item + + + +list-group-item + + @@ -279,6 +287,7 @@ +
[gentoo-commits] proj/devmanual:master commit in: /
commit: bf154c632dc1059eef9aca2970db9c85f515a97c Author: Brian Evans gentoo org> AuthorDate: Fri Mar 22 16:02:02 2019 + Commit: Brian Evans gentoo org> CommitDate: Fri Mar 22 16:02:02 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=bf154c63 Change docbook template to remove glyphicon glyphicons are deprecated and we have fontawesome already Use Font awesome instead Signed-off-by: Brian Evans gentoo.org> devbook.xsl | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/devbook.xsl b/devbook.xsl index 853f4bd..2c8e506 100644 --- a/devbook.xsl +++ b/devbook.xsl @@ -496,7 +496,7 @@ ../ - Home + Home @@ -594,7 +594,7 @@ --> - + @@ -627,7 +627,7 @@ ../ - + - + @@ -697,10 +697,10 @@ - + - +
[gentoo-commits] proj/devmanual:master commit in: /
commit: 361033ad06388df33c2c30e9d14fa6b077839e85 Author: Brian Evans gentoo org> AuthorDate: Fri Mar 22 16:04:31 2019 + Commit: Brian Evans gentoo org> CommitDate: Fri Mar 22 16:04:31 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=361033ad Include the eclass-reference directory Now generated by the script in bin/ Signed-off-by: Brian Evans gentoo.org> text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/text.xml b/text.xml index e88ed52..4bc295c 100644 --- a/text.xml +++ b/text.xml @@ -46,7 +46,7 @@ section lists specific contributions to this manual. - +
[gentoo-commits] proj/devmanual:master commit in: /, bin/
commit: d541c4c23305121c02ed18668b6019e86cfc2404 Author: Brian Evans gentoo org> AuthorDate: Fri Mar 22 13:19:16 2019 + Commit: Brian Evans gentoo org> CommitDate: Fri Mar 22 13:19:16 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d541c4c2 Create script for eclass-reference This was previously held in infra but contains no identifying information Bug: https://bugs.gentoo.org/536654 Signed-off-by: Brian Evans gentoo.org> .gitignore | 1 + bin/gen-eclass-html.sh | 135 + 2 files changed, 136 insertions(+) diff --git a/.gitignore b/.gitignore index b364f07..720d4d6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ *.html *.png +eclass-reference/ diff --git a/bin/gen-eclass-html.sh b/bin/gen-eclass-html.sh new file mode 100755 index 000..e87f60f --- /dev/null +++ b/bin/gen-eclass-html.sh @@ -0,0 +1,135 @@ +#!/bin/bash + +# pre1) OOB: The host needs to emerge eclass-manpages on a daily basis. +# This script should be run before the make operation is performed + +OUTPUTDIR="eclass-reference" + +IFS='' read -r -d '' FOOTER << 'EOF' + + + + + +Questions or comments? + Please feel free to https://www.gentoo.org/inside-gentoo/contact/";>contact us. + + + + +http://twitter.com/gentoo"; title="@Gentoo on Twitter"> +https://plus.google.com/+Gentoo"; title="+Gentoo on Google+"> +https://www.facebook.com/gentoo.org"; title="Gentoo on Facebook"> + + +Copyright (C) 2001-2019 Gentoo Foundation, Inc. +Gentoo is a trademark of the Gentoo Foundation, Inc. +The text of this document is distributed under the +http://creativecommons.org/licenses/by-sa/3.0/";>Creative Commons Attribution-ShareAlike 3.0 Unported License. +The https://www.gentoo.org/inside-gentoo/foundation/name-logo-guidelines.html";>Gentoo Name and Logo Usage Guidelines apply. + + + +https://assets.gentoo.org/tyrian/jquery.min.js";>https://assets.gentoo.org/tyrian/bootstrap.min.js";> + + +EOF + +# We also need the ebuild man page +for i in $(/usr/bin/qlist eclass-manpages) /usr/share/man/man5/ebuild.5.bz2; do + BASENAME="$(basename $i .5.bz2)" + DIRNAME="${OUTPUTDIR}/${BASENAME}" + TMP="${DIRNAME}/index.html.tmp" + FINAL="${DIRNAME}/index.html" + [[ -d ${DIRNAME} ]] || mkdir -p ${DIRNAME} + # rebuild the man page each time + cat << EOF > ${FINAL} + + + + Gentoo Development Guide: $BASENAME + + + + https://assets.gentoo.org/tyrian/bootstrap.min.css"; rel="stylesheet" media="screen"> + https://assets.gentoo.org/tyrian/tyrian.min.css"; rel="stylesheet" media="screen"> + https://www.gentoo.org/favicon.ico"; type="image/x-icon"> + + + + +https://get.gentoo.org/"; role="button" class="btn get-gentoo"> Get Gentoo! + gentoo.org sites +https://www.gentoo.org/"; title="Main Gentoo website"> gentoo.org +https://wiki.gentoo.org/"; title="Find and contribute documentation"> Wiki +https://bugs.gentoo.org/"; title="Report issues and find common issues"> Bugs +https://forums.gentoo.org/"; title="Discuss with the community"> Forums +https://packages.gentoo.org/"; title="Find software for your Gentoo"> Packages + +https://planet.gentoo.org/"; title="Find out what's going on in the developer community"> Planet +https://archives.gentoo.org/"; title="Read up on past discussions"> Archives +https://sources.gentoo.org/"; title="Browse our source code"> Sources + +https://infra-status.gentoo.org/"; title="Get updates on the services provided by Gentoo"> Infra Status + + + + +https://assets.gentoo.org/tyrian/site-logo.svg"; type="image/svg+xml">https://assets.gentoo.org/tyrian/site-logo.png"; alt="Gentoo Linux Logo">Development Guide + + + +Toggle navigation + + Home + Eclass Reference + +Master IndexEclass Reference + +EOF +# generate html pages and fix hyperlinks for eclass and ebuild man pages +/bin/bunzip2 -c $i | /usr/bin/man2html -r - | \ +sed -e "/:=../\1/index.html>:" \ +-e "/<\/BODY>/d" -e "/<\/HTML>/d" \ +-e "/:=../\1/\index.html>:" >> ${TMP} + # The first 4 lines are cruft for devmanual + tail -n $(($(wc -l ${TMP} | awk '{print $1}') - 4)) ${TMP} >> ${FINAL} + rm -f ${TMP} + echo "${FOOTER}" >> ${FINAL} +done + +# Remove old dirs (eclasses that were dropped from the tree) +find $OUTPUTDIR -mindepth 1 -maxdepth 1 -mtime +1 -exec rm -R {} \; + +# build the index, rebuilding it each time +cat << EOF > $OUTPUTDIR/text.xml + + + +Eclass Reference + + + +This section provides a reference for some of the more commonly used eclasses. +Note that most eclasses have an accompanying manual page. These man pages can be +installed by emerging app-portage/eclass-manpages. + + + + +Contents + + +EOF + +for i in $(find $OUTPUTDIR/ -maxdepth 1 -mindepth 1 -type d | sort); do + echo
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/using-eclasses/, ebuild-writing/functions/src_unpack/rpm-sources/, ...
commit: 75dbfca4e7423e1dfdd7082e4c131010514239e0 Author: Brian Evans gentoo org> AuthorDate: Thu Mar 21 14:41:44 2019 + Commit: Brian Evans gentoo org> CommitDate: Thu Mar 21 14:41:44 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=75dbfca4 Bump copyright year Signed-off-by: Brian Evans gentoo.org> devbook.xsl | 2 +- ebuild-writing/common-mistakes/text.xml | 2 +- ebuild-writing/eapi/text.xml | 6 +++--- ebuild-writing/file-format/text.xml | 2 +- ebuild-writing/functions/src_unpack/rpm-sources/text.xml | 2 +- ebuild-writing/using-eclasses/text.xml | 2 +- eclass-writing/text.xml | 6 +++--- quickstart/text.xml | 10 +- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/devbook.xsl b/devbook.xsl index a4e9395..853f4bd 100644 --- a/devbook.xsl +++ b/devbook.xsl @@ -546,7 +546,7 @@ - Copyright (C) 2001-2018 Gentoo Foundation, Inc. + Copyright (C) 2001-2019 Gentoo Foundation, Inc. Gentoo is a trademark of the Gentoo Foundation, Inc. The text of this document is distributed under the diff --git a/ebuild-writing/common-mistakes/text.xml b/ebuild-writing/common-mistakes/text.xml index 93f882a..1658f49 100644 --- a/ebuild-writing/common-mistakes/text.xml +++ b/ebuild-writing/common-mistakes/text.xml @@ -163,7 +163,7 @@ The first two lines must look like this: -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index fabbc93..d375422 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -42,7 +42,7 @@ Most developers prefer to set the EAPI version without quotes. However, the PMS -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 @@ -117,7 +117,7 @@ src_compile() { -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=1 @@ -523,7 +523,7 @@ DEPEND=" Example: -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=4 diff --git a/ebuild-writing/file-format/text.xml b/ebuild-writing/file-format/text.xml index 2c130af..95f55ac 100644 --- a/ebuild-writing/file-format/text.xml +++ b/ebuild-writing/file-format/text.xml @@ -151,7 +151,7 @@ header.txt in the top directory of the Gentoo repository. -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 diff --git a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml index 584866a..c40bcae 100644 --- a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml +++ b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml @@ -52,7 +52,7 @@ patches. The filename should be suse-fetchmail-6.2.5.54.1.ebuild. -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI="6" diff --git a/ebuild-writing/using-eclasses/text.xml b/ebuild-writing/using-eclasses/text.xml index e6a53cf..0c13896 100644 --- a/ebuild-writing/using-eclasses/text.xml +++ b/ebuild-writing/using-eclasses/text.xml @@ -32,7 +32,7 @@ uses three eclasses: -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=7 diff --git a/eclass-writing/text.xml b/eclass-writing/text.xml index 99824e5..352e026 100644 --- a/eclass-writing/text.xml +++ b/eclass-writing/text.xml @@ -612,7 +612,7 @@ a single function, domacosapp. -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # @ECLASS: macosapp.eclass @@ -699,7 +699,7 @@ something like the following: -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # @ECLASS: jmake.eclass @@ -760,7 +760,7 @@ for an eclass to invoke die from the global scope. For example: -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2019 Gentoo Foundation # Distributed under the terms of the
[gentoo-commits] proj/devmanual:master commit in: appendices/contributing/devbook-guide/
commit: a39f9d241fb906cc2c7442fe5318f9630dce54df Author: Ulrich Müller gentoo org> AuthorDate: Tue Mar 19 20:25:30 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Tue Mar 19 20:25:30 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=a39f9d24 appendices/contributing/devbook-guide: Update all links to https. Signed-off-by: Ulrich Müller gentoo.org> appendices/contributing/devbook-guide/text.xml | 26 +- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/appendices/contributing/devbook-guide/text.xml b/appendices/contributing/devbook-guide/text.xml index 564e29d..4563e46 100644 --- a/appendices/contributing/devbook-guide/text.xml +++ b/appendices/contributing/devbook-guide/text.xml @@ -58,7 +58,7 @@ using GuideXML. - +1 @@ -111,7 +111,7 @@ required) that these tags appear before the content of the document. Finally we have thetag, used to publish -the document under the http://creativecommons.org/licenses/by-sa/3.0/";>Creative +the document under the https://creativecommons.org/licenses/by-sa/3.0/";>Creative Commons - Attribution / Share Alike license as required by the Documentation Policy. Historically, the tag was used, which denoted the 2.5 version of the @@ -183,7 +183,7 @@ an example element: This is a paragraph.
@@ -214,7 +214,7 @@ Now, here's how the element above is rendered: This is a paragraph. /etc/passwd is a file. -http://forums.gentoo.org is my favorite web site. +https://forums.gentoo.org is my favorite web site. Type ls if you feel like it. I really want to go to sleep now. @@ -322,13 +322,13 @@ Fill this section with the information about the use of The/etc/passwd is a file. -http://forums.gentoo.org ; is my favorite website. +https://forums.gentoo.org ; is my favorite website. Typels if you feel like it. Ireally want to go to sleep now.tag is used to point to files/locations on the Internet. It has two forms -- the first can be used when you want to have the actual URI displayed in the body text, such as this link to -http://forums.gentoo.org/. To create this link, I typed - http://forums.gentoo.org/ ;. The alternate form is +https://forums.gentoo.org/. To create this link, I typed +https://forums.gentoo.org/ ;. The alternate form is when you want to associate a URI with some other text -- for example, http://forums.gentoo.org/";>the Gentoo Forums. To create -this link, I typedthe +link="https://forums.gentoo.org/";>the Gentoo Forums. To create +this link, I typed . Leaving the trailing slash saves an extra HTTP request. -Please avoid the http://en.wikipedia.org/wiki/Click_here";>click here +Please avoid the https://en.wikipedia.org/wiki/Click_here";>click here syndrome as recommended by the http://www.w3.org/QA/Tips/noClickHere";>W3C. +link="https://www.w3.org/QA/Tips/noClickHere";>W3C. @@ -584,8 +584,8 @@ Code Listings should always have a caption. Try to usethe Gentoo Forums . You don't need to write -http://www.gentoo.org/ to link to other parts of the Gentoo web site. +https://www.gentoo.org/ to link to other parts of the Gentoo web site. For instance, a link to the documentation main index should be simplydocumentation main index . You can even omit index.xml when you link to a @@ -337,9 +337,9 @@ indexwith the link attribute as much as -possible. In other words, the http://forums.gentoo.org";>Gentoo -Forums is preferred over http://forums.gentoo.org. +possible. In other words, the https://forums.gentoo.org";>Gentoo +Forums is preferred over https://forums.gentoo.org.
[gentoo-commits] proj/devmanual:master commit in: appendices/contributing/
commit: f65fcd79a6b3a756e91aba2e63e41928797f Author: Ulrich Müller gentoo org> AuthorDate: Tue Mar 19 20:18:54 2019 + Commit: Ulrich Müller gentoo org> CommitDate: Tue Mar 19 20:18:54 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f65fcd79 appendices/contributing: Fix link to devbook-guide. Signed-off-by: Ulrich Müller gentoo.org> appendices/contributing/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appendices/contributing/text.xml b/appendices/contributing/text.xml index 3bf777d..21ab666 100644 --- a/appendices/contributing/text.xml +++ b/appendices/contributing/text.xml @@ -65,7 +65,7 @@ conversion used in some of the figures throughout the document. -DevBook XML is heavily based on https://www.gentoo.org/doc/en/xml-guide.xml";> +DevBook XML is heavily based on GuideXML and many tags are similar, if not the same. The main differences occur in layout which are designed to make a large-scale publication easier to produce and manage using a hierarchical tree system. Before starting off you
[gentoo-commits] proj/devmanual:master commit in: appendices/contributing/, appendices/contributing/devbook/
commit: aa71fa186c27400fbe455b8e769e393cdc739f3b Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 19:00:17 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 19:00:17 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=aa71fa18 Revert "Fix missing GuideXML instructions" This reverts commit 4e21f95eba403dfb17619a6eff9e673c8e6575da. Signed-off-by: Brian Evans gentoo.org> appendices/contributing/devbook/text.xml | 1213 -- appendices/contributing/text.xml | 10 +- 2 files changed, 2 insertions(+), 1221 deletions(-) diff --git a/appendices/contributing/devbook/text.xml b/appendices/contributing/devbook/text.xml deleted file mode 100644 index f1a5d57..000 --- a/appendices/contributing/devbook/text.xml +++ /dev/null @@ -1,1213 +0,0 @@ - - -Gentoo GuideXML Guide - - - - - - Daniel Robbins - - - John P. Davis - - - Jorge Paulo - - - Sven Vermeulen - - - - - - -This guide shows you how to compose web documentation using the new lightweight -Gentoo GuideXML syntax. This syntax is the official format for Gentoo -documentation, and this document itself was created using GuideXML. This guide -assumes a basic working knowledge of XML and HTML. - - - - - - -13 -2012-10-07 - - -GuideXML basics - -GuideXML design goals - - - -The guideXML syntax is lightweight yet expressive, so that it is easy to -learn yet also provides all the features we need for the creation of web -documentation. The number of tags is kept to a minimum -- just those we need. -This makes it easy to transform guide into other formats, such as DocBook -XML/SGML or web-ready HTML. - - - -The goal is to make it easy to create and transform guideXML -documents. - - - - - -Further Resources - - - -You may want to look at the XML source of this -document while you read it. - - - - - - - -GuideXML - -Basic structure - - - -Let's start learning the GuideXML syntax. We'll start with the the initial -tags used in a GuideXML document: - - - - - - - -- Gentoo Documentation Guide - -- - -Your Name --This guide shows you how to compose web documentation using -our new lightweight Gentoo GuideXML syntax. This syntax is the official -format for Gentoo web documentation, and this document itself was created -using GuideXML. - - - - -- - 1 -2011-11-29 - - - -On the first lines, we see the requisite tag that identifies this as an XML -document and specifies its DTD. The line -will be automatically modified by the CVS server and helps to track revisions. -Next, there's atag -- the entire guide document is -enclosed within a pair. - -The lang attribute should be used to specify the language code of your -document. It is used to format the date and insert strings like "Note", -"Content", etc. in the specified language. The default is English. - - - -Next, there's a tag, used to set the title for the entire -guide document. - - - -Then, we come to the tags, which contain information -about the various authors of the document. Each tag -allows for an optional title element, used to specify the author's -relationship to the document (author, co-author, editor, etc.). In this -particular example, the authors' names are enclosed in another tag -- a - tag, used to specify an email address for this particular -person. The tag is optional and can be omitted, and at -least one element is required per guide document. - - - -Next, we come to the , and - tags, used to specify a summary of the document, the -current version number, and the current version date (in -MM-DD format) -respectively. Dates that are invalid or not in the -MM-DD format will -appear verbatim in the rendered document. - - - -This sums up the tags that should appear at the beginning of a guide document. -Besides the and tags, these tags -shouldn't appear anywhere else except immediately inside the - tag, and for consistency it's recommended (but not -required) that these tags appear before the content of the document. - - - -Finally we have the tag, used to publish -the document under the https://creativecommons.org/licenses/by-sa/3.0/";>Creative -Commons - Attribution / Share Alike license as required by the Documentation Policy. Historically, -the tag was used, which denoted the 2.5 version of the -license. This is still accepted/allowed. - - - - - -Chapters and sections - - - -Once the initi
[gentoo-commits] proj/devmanual:master commit in: appendices/contributing/devbook/
commit: d22eb5b91995fa61cbe42e304aa49c289348e8ad Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 19:00:14 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 19:00:14 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d22eb5b9 Revert "DocbookXML guide - finish formatting" This reverts commit c0ae856c5ae5eb816114872d7858de9acb498d80. Signed-off-by: Brian Evans gentoo.org> appendices/contributing/devbook/text.xml | 59 +--- 1 file changed, 31 insertions(+), 28 deletions(-) diff --git a/appendices/contributing/devbook/text.xml b/appendices/contributing/devbook/text.xml index dc60574..f1a5d57 100644 --- a/appendices/contributing/devbook/text.xml +++ b/appendices/contributing/devbook/text.xml @@ -1,12 +1,42 @@ +Gentoo GuideXML Guide + + + + + + Daniel Robbins + + + John P. Davis + + + Jorge Paulo + + + Sven Vermeulen + + + + + + +This guide shows you how to compose web documentation using the new lightweight +Gentoo GuideXML syntax. This syntax is the official format for Gentoo +documentation, and this document itself was created using GuideXML. This guide +assumes a basic working knowledge of XML and HTML. + +13 +2012-10-07 + -Gentoo GuideXML Guide +GuideXML basics GuideXML design goals @@ -1177,34 +1207,7 @@ link="/main/en/lists.xml">gentoo-doc mailing list stating what you'd like to tackle. Have fun! - - - - -Contributing authors - - - - neysx - - - Daniel Robbins - - - John P. Davis - - - Jorge Paulo - - - Sven Vermeulen - - - nightmorph - - -
[gentoo-commits] proj/devmanual:master commit in: /
commit: cc3ebea213506f963081464bad913d8470da6038 Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 19:01:11 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 19:01:11 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=cc3ebea2 Merge branch 'devbook-guide' Signed-off-by: Brian Evans gentoo.org> appendices/contributing/devbook-guide/text.xml | 617 + appendices/contributing/text.xml | 3 +- appendices/contributors/text.xml | 9 + 3 files changed, 628 insertions(+), 1 deletion(-)
[gentoo-commits] proj/devmanual:master commit in: appendices/contributing/devbook/
commit: c0ae856c5ae5eb816114872d7858de9acb498d80 Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 18:50:36 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 18:50:36 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c0ae856c DocbookXML guide - finish formatting Signed-off-by: Brian Evans gentoo.org> appendices/contributing/devbook/text.xml | 59 +++- 1 file changed, 28 insertions(+), 31 deletions(-) diff --git a/appendices/contributing/devbook/text.xml b/appendices/contributing/devbook/text.xml index f1a5d57..dc60574 100644 --- a/appendices/contributing/devbook/text.xml +++ b/appendices/contributing/devbook/text.xml @@ -1,42 +1,12 @@ -Gentoo GuideXML Guide - - - - - - Daniel Robbins - - - John P. Davis - - - Jorge Paulo - - - Sven Vermeulen - - - - - - -This guide shows you how to compose web documentation using the new lightweight -Gentoo GuideXML syntax. This syntax is the official format for Gentoo -documentation, and this document itself was created using GuideXML. This guide -assumes a basic working knowledge of XML and HTML. - -13 -2012-10-07 - -GuideXML basics +Gentoo GuideXML Guide GuideXML design goals @@ -1207,7 +1177,34 @@ link="/main/en/lists.xml">gentoo-doc mailing list stating what you'd like to tackle. Have fun! + + + + +Contributing authors + + + + neysx + + + Daniel Robbins + + + John P. Davis + + + Jorge Paulo + + + Sven Vermeulen + + + nightmorph + + +
[gentoo-commits] proj/devmanual:master commit in: tools-reference/diff-and-patch/
commit: f9fa8b3c19cb83e0ae12f18175c0d218fb30f343 Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 18:09:00 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 18:09:00 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f9fa8b3c Mention eapply in diff and patch tools section Closes: https://bugs.gentoo.org/652472 Signed-off-by: Brian Evans gentoo.org> tools-reference/diff-and-patch/text.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tools-reference/diff-and-patch/text.xml b/tools-reference/diff-and-patch/text.xml index 0b3fd9c..01f1ad0 100644 --- a/tools-reference/diff-and-patch/text.xml +++ b/tools-reference/diff-and-patch/text.xml @@ -37,7 +37,8 @@ than -u. To apply a patch, use patch -pX < whatever.patch, where X is a number representing the number of path components which must be removed (typically this is 0 or 1). Within -ebuilds, use the epatch function instead — see +ebuilds, use the epatch function, or eapply function +beginning with EAPI=6, instead — see .
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/
commit: 247eac25f939ec546b4e0a152b32e2c1cad31f4c Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 18:05:20 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 18:05:20 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=247eac25 Add note about eapply_user in src_prepare Thanks to Thomas Schneider qsuscs.de> for this text Closes: https://bugs.gentoo.org/657322 Signed-off-by: Brian Evans gentoo.org> ebuild-writing/functions/src_prepare/text.xml | 4 1 file changed, 4 insertions(+) diff --git a/ebuild-writing/functions/src_prepare/text.xml b/ebuild-writing/functions/src_prepare/text.xml index 0425bb1..7ab3aa9 100644 --- a/ebuild-writing/functions/src_prepare/text.xml +++ b/ebuild-writing/functions/src_prepare/text.xml @@ -53,6 +53,10 @@ src_prepare() { eapply_user } + +With EAPI=6, you must call eapply_user or default if you define +src_prepare! +
[gentoo-commits] proj/devmanual:master commit in: appendices/further-reading/, hosted-projects/, ...
commit: c5b0a1611f29ac6664d5b06d9aea15f4fa20da01 Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 17:31:16 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 17:31:16 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c5b0a161 Fix 404 errors Closes: https://bugs.gentoo.org/653644 Signed-off-by: Brian Evans gentoo.org> appendices/further-reading/text.xml | 2 +- ebuild-maintenance/maintenance-tasks/text.xml | 3 +-- ebuild-writing/common-mistakes/text.xml | 2 +- hosted-projects/text.xml | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/appendices/further-reading/text.xml b/appendices/further-reading/text.xml index 9fa79af..f0e75da 100644 --- a/appendices/further-reading/text.xml +++ b/appendices/further-reading/text.xml @@ -51,7 +51,7 @@ recommendations, not padding designed to make this document look important. -http://freshmeat.net/articles/view/149";>How to Report Bugs +https://www.chiark.greenend.org.uk/~sgtatham/bugs.html";>How to Report Bugs Effectively by Simon Tatham is a good overview of effective bug reporting. diff --git a/ebuild-maintenance/maintenance-tasks/text.xml b/ebuild-maintenance/maintenance-tasks/text.xml index e4a173f..a434fb5 100644 --- a/ebuild-maintenance/maintenance-tasks/text.xml +++ b/ebuild-maintenance/maintenance-tasks/text.xml @@ -55,8 +55,7 @@ set of default settings that will satisfy the majority of systems and users that will use your package. If your package is broken, and you are not sure how to get it to work, check some other distributions that have done their own versions of the package. You can check -http://cvs.mandriva.com/cgi-bin/viewvc.cgi/SPECS/";>Mandriva -or https://www.debian.org/distrib/packages";>Debian or +https://www.debian.org/distrib/packages";>Debian or https://pkgs.fedoraproject.org/cgit/rpms/";>Fedora for some examples. diff --git a/ebuild-writing/common-mistakes/text.xml b/ebuild-writing/common-mistakes/text.xml index a66ec49..93f882a 100644 --- a/ebuild-writing/common-mistakes/text.xml +++ b/ebuild-writing/common-mistakes/text.xml @@ -207,7 +207,7 @@ dev-python/pyopenal fetches a tarball called PyOpenAL, so we redefine it like: MY_P=${P/pyopenal/PyOpenAL} -SRC_URI="http://oomadness.tuxfamily.org/downloads/${MY_P}.tar.gz"; +SRC_URI="http://download.gna.org/pyopenal/${MY_P}.tar.gz"; S=${WORKDIR}/${MY_P} diff --git a/hosted-projects/text.xml b/hosted-projects/text.xml index b5eb0ce..5a7851c 100644 --- a/hosted-projects/text.xml +++ b/hosted-projects/text.xml @@ -150,7 +150,7 @@ Good places to look for further hints include: -http://developer.gnome.org/projects/gap";>GNOME Accessibility +https://developer.gnome.org/accessibility-devel-guide/stable/gad.html.en";>GNOME Accessibility Project
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/
commit: 6ecbc55422bfd78865e16f077672357b3b321b34 Author: Michael Orlitzky gentoo org> AuthorDate: Sat Oct 28 01:43:46 2017 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 17:02:04 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=6ecbc554 ebuild-writing/variables: document the mirror:// pseudo-protocol. The thirdpartymirrors file is covered by the PMS, but unless you know where to look, it's not easy to figure out what "mirror://" does in SRC_URI. This commit adds a mention of the file and protocol under the "SRC_URI" heading on the "Variables" page. Signed-off-by: Michael Orlitzky gentoo.org> Signed-off-by: Brian Evans gentoo.org> ebuild-writing/variables/text.xml | 44 +++ 1 file changed, 44 insertions(+) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 98babe4..d3255bd 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -414,6 +414,50 @@ SRC_URI="https://example.com/files/${PV}.tar.gz -> ${P}.tar.gz" + + + + Third-party mirrors + + + If the items in SRC_URI are available on multiple + third-party mirrors, then you don't have to list each mirror in + your ebuild. The profiles/thirdpartymirrors file in the + ::gentoo repository contains named groups of mirrors, + accessible through the mirror:// pseudo-protocol. + + + As of EAPI 7, the format of https://projects.gentoo.org/pms/7/pms.html#x1-340004.4.2";>the + thirdpartymirrors file is described in section 4.4.2 of + the Package Manager Specification (PMS). One might define a set + of "example" mirrors, + + + +example http://download.example.org/ ftp://ftp.example.org/ + + + that can afterwards be referenced through a mirror:// + URL: + + +SRC_URI="mirror://example/${PN}/${P}.tar.gz" + + + If the sources for a package are not mirror-restricted or + fetch-restricted, then there is little benefit to using this + feature: the sources will be mirrored onto Gentoo + infrastructure anyway. In other words, the mere existence + of a third-party mirror list is not a good enough reason to use + it. + + +
[gentoo-commits] proj/devmanual:master commit in: appendices/contributing/devbook/, appendices/contributing/
commit: 4e21f95eba403dfb17619a6eff9e673c8e6575da Author: Brian Evans gentoo org> AuthorDate: Tue Mar 19 17:10:14 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 17:10:14 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=4e21f95e Fix missing GuideXML instructions Include the CVS copy in this repo Closes: https://bugs.gentoo.org/615366 Signed-off-by: Brian Evans gentoo.org> appendices/contributing/devbook/text.xml | 1213 ++ appendices/contributing/text.xml | 10 +- 2 files changed, 1221 insertions(+), 2 deletions(-) diff --git a/appendices/contributing/devbook/text.xml b/appendices/contributing/devbook/text.xml new file mode 100644 index 000..f1a5d57 --- /dev/null +++ b/appendices/contributing/devbook/text.xml @@ -0,0 +1,1213 @@ + + +Gentoo GuideXML Guide + + + + + + Daniel Robbins + + + John P. Davis + + + Jorge Paulo + + + Sven Vermeulen + + + + + + +This guide shows you how to compose web documentation using the new lightweight +Gentoo GuideXML syntax. This syntax is the official format for Gentoo +documentation, and this document itself was created using GuideXML. This guide +assumes a basic working knowledge of XML and HTML. + + + + + + +13 +2012-10-07 + + +GuideXML basics + +GuideXML design goals + + + +The guideXML syntax is lightweight yet expressive, so that it is easy to +learn yet also provides all the features we need for the creation of web +documentation. The number of tags is kept to a minimum -- just those we need. +This makes it easy to transform guide into other formats, such as DocBook +XML/SGML or web-ready HTML. + + + +The goal is to make it easy to create and transform guideXML +documents. + + + + + +Further Resources + + + +You may want to look at the XML source of this +document while you read it. + + + + + + + +GuideXML + +Basic structure + + + +Let's start learning the GuideXML syntax. We'll start with the the initial +tags used in a GuideXML document: + + + + + + + ++ Gentoo Documentation Guide + ++ + +Your Name ++This guide shows you how to compose web documentation using +our new lightweight Gentoo GuideXML syntax. This syntax is the official +format for Gentoo web documentation, and this document itself was created +using GuideXML. + + + + ++ + 1 +2011-11-29 + + + +On the first lines, we see the requisite tag that identifies this as an XML +document and specifies its DTD. The line +will be automatically modified by the CVS server and helps to track revisions. +Next, there's atag -- the entire guide document is +enclosed within a pair. + +The lang attribute should be used to specify the language code of your +document. It is used to format the date and insert strings like "Note", +"Content", etc. in the specified language. The default is English. + + + +Next, there's a tag, used to set the title for the entire +guide document. + + + +Then, we come to the tags, which contain information +about the various authors of the document. Each tag +allows for an optional title element, used to specify the author's +relationship to the document (author, co-author, editor, etc.). In this +particular example, the authors' names are enclosed in another tag -- a + tag, used to specify an email address for this particular +person. The tag is optional and can be omitted, and at +least one element is required per guide document. + + + +Next, we come to the , and + tags, used to specify a summary of the document, the +current version number, and the current version date (in -MM-DD format) +respectively. Dates that are invalid or not in the -MM-DD format will +appear verbatim in the rendered document. + + + +This sums up the tags that should appear at the beginning of a guide document. +Besides the and tags, these tags +shouldn't appear anywhere else except immediately inside the + tag, and for consistency it's recommended (but not +required) that these tags appear before the content of the document. + + + +Finally we have the tag, used to publish +the document under the https://creativecommons.org/licenses/by-sa/3.0/";>Creative +Commons - Attribution / Share Alike license as required by the Documentation Policy. Historically, +the tag was used, which denoted the 2.5 version of the +license. This is still accepted/allowed. + + + + + +Chapters and sections + + + +Once the initial
[gentoo-commits] proj/devmanual:master commit in: general-concepts/mirrors/
commit: dd95c04ba6b989014afb52ce30260373cbaa928b Author: Michael Orlitzky gentoo org> AuthorDate: Sat Oct 28 01:44:10 2017 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 17:02:04 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=dd95c04b general-concepts/mirrors: link to the third-party mirror documentation. If you're looking for information on the "mirror://" pseudo-protocol, you might try the page titled "Mirrors". This commit adds a link to that page, pointing to the newly-written third-party mirror documentation. Signed-off-by: Michael Orlitzky gentoo.org> Signed-off-by: Brian Evans gentoo.org> general-concepts/mirrors/text.xml | 12 1 file changed, 12 insertions(+) diff --git a/general-concepts/mirrors/text.xml b/general-concepts/mirrors/text.xml index c3b6ba7..97e9ac2 100644 --- a/general-concepts/mirrors/text.xml +++ b/general-concepts/mirrors/text.xml @@ -124,5 +124,17 @@ Diagram showing the mirroring process. + + Third-party mirrors + + + Usage of third-party mirrors and the mirror:// + pseudo-protocol is described in the SRC_URI + variable documentation. + + + +
[gentoo-commits] proj/devmanual:master commit in: /
commit: ad73851922df05d91b9be52f41529014c3482113 Author: Michael Orlitzky gentoo org> AuthorDate: Tue Mar 19 16:01:18 2019 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 16:57:54 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=ad738519 Makefile: remove BASH-specific "type -p" and "&>" idioms. The Makefile uses two "type -p" commands to determine if the "convert" and "xsltproc" commands are present. The "type" command itself is defined in POSIX, http://pubs.opengroup.org/onlinepubs/9699919799/utilities/type.html but the additional "-p" flag is BASH-specific. This can lead to unexpected behavior when the /bin/sh symlink that the Makefile uses by default points to a non-BASH shell: $ dash $ type -p convert -p: not found convert is /usr/bin/convert By chance, this is ultimately not fatal, but does cause the default target to output some confusing messages. And in fact the output from the "type -p" command is never used, which means that "type" itself should suffice, in any shell. Thus this commit drops the two "-p" arguments to "type". The same two "type" commands attempt to redirect both stdout and stderr to /dev/null using the BASH "&>" shortcut. This commit replaces it with the standard, but more verbose incantation ">/dev/null 2>&1" that is portable to other shells. Closes: https://bugs.gentoo.org/680932 Signed-off-by: Michael Orlitzky gentoo.org> Signed-off-by: Brian Evans gentoo.org> Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index d4182a8..a61128b 100644 --- a/Makefile +++ b/Makefile @@ -5,8 +5,8 @@ image_files := $(shell find -name "*.svg" | sed -e "s/svg$$/png/") all: prereq $(text_files) $(image_files) prereq: - @type -p convert &>/dev/null || { echo "media-gfx/imagemagick with corefonts, svg and truetype required" >&2; exit 1; }; \ - type -p xsltproc &>/dev/null || { echo "dev-libs/libxslt is required" >&2; exit 1; } + @type convert >/dev/null 2>&1 || { echo "media-gfx/imagemagick with corefonts, svg and truetype required" >&2; exit 1; }; \ + type xsltproc >/dev/null 2>&1 || { echo "dev-libs/libxslt is required" >&2; exit 1; } %.png : %.svg convert $< $@
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/
commit: e4a6e552a4b2386893fca4d2834e0a38f89a5802 Author: Michael Orlitzky gentoo org> AuthorDate: Mon Nov 6 13:08:11 2017 + Commit: Brian Evans gentoo org> CommitDate: Tue Mar 19 17:02:04 2019 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=e4a6e552 ebuild-writing/variables: weaken the warning against third-party mirrors. The warning against using third-party mirrors used to say that "the mere existence of a third-party mirror list is not a good enough reason to use it." That goes against a few existing uses of the feature in the ::gentoo repository, so the wording is too strong. This revision changes the warning, leaving the decision up to the maintainer after alerting him to the potential maintenance burden. Closes: https://bugs.gentoo.org/635646 Suggested-by: Michael Palimaka gentoo.org> Signed-off-by: Michael Orlitzky gentoo.org> Signed-off-by: Brian Evans gentoo.org> ebuild-writing/variables/text.xml | 14 -- 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index d3255bd..4e4c76c 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -448,13 +448,15 @@ example http://download.example.org/ ftp://ftp.example.org/ SRC_URI="mirror://example/${PN}/${P}.tar.gz" - If the sources for a package are not mirror-restricted or - fetch-restricted, then there is little benefit to using this - feature: the sources will be mirrored onto Gentoo - infrastructure anyway. In other words, the mere existence - of a third-party mirror list is not a good enough reason to use - it. + infrastructure automatically; in that case, there is + little benefit to using this feature. There is a maintenance + burden associated with using a third-party mirror list: it must + be updated when new mirrors are born and when old mirrors + die. Please consider that when deciding whether or not to use + this feature.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_install/
commit: 17092aa93264173f6d3a0773a127d286a3e7dbc4 Author: Ulrich Müller gentoo org> AuthorDate: Wed Dec 26 13:37:43 2018 + Commit: Ulrich Müller gentoo org> CommitDate: Wed Dec 26 13:37:43 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=17092aa9 ebuild-writing/functions/src_install: Fix syntax error in example. Closes: https://bugs.gentoo.org/673748 Signed-off-by: Ulrich Müller gentoo.org> ebuild-writing/functions/src_install/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ebuild-writing/functions/src_install/text.xml b/ebuild-writing/functions/src_install/text.xml index 308c718..cf453e9 100644 --- a/ebuild-writing/functions/src_install/text.xml +++ b/ebuild-writing/functions/src_install/text.xml @@ -46,7 +46,7 @@ For EAPIs 4 and later, the default src_install function is the following: src_install() { - if [[ -f Makefile ]] || [[ -f GNUmakefile]] || [[ -f makefile ]] ; then + if [[ -f Makefile ]] || [[ -f GNUmakefile ]] || [[ -f makefile ]] ; then emake DESTDIR="${D}" install fi
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: 8ad5c097240eadd919146ffdab6c55ee6175f719 Author: Michał Górny gentoo org> AuthorDate: Wed Nov 28 09:33:57 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Dec 20 04:55:36 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=8ad5c097 general-concepts/licenses: warn about GitHub license guesser Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 6 ++ 1 file changed, 6 insertions(+) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index aa2ca74..c647871 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -43,6 +43,12 @@ LICENSE="|| ( foo bar )" Determining the correct license + +Do not trust the license indicated by GitHub or other sites that use +automation to guess the license! The information presented may be +incomplete and/or incorrect. + + To establish the correct value of LICENSE, you need to trace the licenses of all installed files. Normally, the licenses of output
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: 4aee878793ba33740866cc763f341db5531cbf09 Author: Michał Górny gentoo org> AuthorDate: Wed Nov 28 09:23:45 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Dec 20 04:55:30 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=4aee8787 general-concepts/licenses: Warn about GPL-n+ etc. Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 28 1 file changed, 28 insertions(+) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index f1d5299..aa2ca74 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -86,6 +86,34 @@ to include license term violations. + +GPL-x vs GPL-x+ + + + +FSF licenses (GPL, LGPL, AGPL, FDL) occur in two variants: the 'vN only' +and 'vN or later' variants. In Gentoo, the licenses of the latter variants +are denoted by appending +a plus sign (+) to their respective license notations of the former variant, +e.g. GPL-2+ and GPL-2. + + + +Determining the correct variant usually requires looking for copyright +notices in the code. For example, the following copyright notice +indicates GPL-2+ license: + + + + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + + + + + Adding New Licenses
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: 94bf0f8865a91dfdf5b0a847f667f361b8e66b09 Author: Michał Górny gentoo org> AuthorDate: Wed Nov 28 08:54:22 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Dec 20 04:55:07 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=94bf0f88 general-concepts/licenses: make it clear that multiple can be listed The previous wording was kinda weird, suggesting the variable is a filename, rather than dep-style. Reword it to make it clear that multiple values can be used. Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index 612b1a6..4c4ce62 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -6,8 +6,8 @@ All ebuilds must specify a LICENSE (note the American English -spelling) variable. The value of this variable must be the name of a -file in the Gentoo repository's licenses/ directory. +spelling) variable. The license names listed in this variable must +match files existing in the repository's licenses/ directory.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: 0f723044723689a7b05777cb8044558769c3d388 Author: Michał Górny gentoo org> AuthorDate: Wed Nov 28 09:00:40 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Dec 20 04:55:14 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=0f723044 general-concepts/licenses: Explain which licenses go into LICENSE Explain which licenses go into LICENSE and which don't Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 20 1 file changed, 20 insertions(+) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index 4c4ce62..093fd9e 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -10,6 +10,26 @@ spelling) variable. The license names listed in this variable must match files existing in the repository's licenses/ directory. + +The value of this variable should include all licenses pertaining +to the files installed by the package. If some parts of the package +are installed only conditionally, or their license depends on the USE +flag combination, you can use USE conditionals in LICENSE: + + + +LICENSE="LGPL-2.1+ tools? ( GPL-2+ )" + + + +If the package sources include additional files that are not installed, +their license should not be listed. However, if those files are used +at build time, then the license must not impose any restrictions that +could prevent users from building the software. Please also note +that some licenses may impose additional restrictons, e.g. fetch +and/or mirroring restriction. + + If the application is multi-license (either of several licenses can be used) then use the following syntax:
[gentoo-commits] proj/devmanual:master commit in: general-concepts/licenses/
commit: 2c4f7fcc5d3c0856660567aac7489a3a5f8c5343 Author: Michał Górny gentoo org> AuthorDate: Wed Nov 28 09:16:31 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Dec 20 04:55:21 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=2c4f7fcc general-concepts/licenses: Determining the license Signed-off-by: Michał Górny gentoo.org> Signed-off-by: Göktürk Yüksek gentoo.org> general-concepts/licenses/text.xml | 47 ++ 1 file changed, 47 insertions(+) diff --git a/general-concepts/licenses/text.xml b/general-concepts/licenses/text.xml index 093fd9e..f1d5299 100644 --- a/general-concepts/licenses/text.xml +++ b/general-concepts/licenses/text.xml @@ -39,6 +39,53 @@ be used) then use the following syntax: LICENSE="|| ( foo bar )" + +Determining the correct license + + + +To establish the correct value of LICENSE, you need to trace +the licenses of all installed files. Normally, the licenses of output +files (compiled executables, generated files) are implied +by the licenses of the relevant input files. + + + +When looking for license information, the following should be +considered: + + + + + COPYING* and LICENSE* files distributed with + the package + + + explicit statements in documentation + + + explicit license notices in source and data files + + + + +The latter (more specific) options take precedence over the former. +In particular, COPYING* files are frequently included as hardcopies +of applicable licenses but the exact application of licenses and their +versions are specified elsewhere. + + + +Please watch for license conflicts. If the license indicated +by the package is incompatible with the licenses used by its sources +(e.g. BSD/MIT package including GPL sources), please contact +the licenses team for guidance. Do not add packages that seem +to include license term violations. + + + + + Adding New Licenses
[gentoo-commits] proj/devmanual:master commit in: quickstart/
commit: caf420c807bd52e6f0bdbf12845cf7f72a87c55f Author: Brian Evans gentoo org> AuthorDate: Wed Oct 24 17:49:26 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 17:49:26 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=caf420c8 Change eutils in quickstart to epatch and desktop where necessary Signed-off-by: Brian Evans gentoo.org> quickstart/text.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/quickstart/text.xml b/quickstart/text.xml index b82185d..19a2b9e 100644 --- a/quickstart/text.xml +++ b/quickstart/text.xml @@ -260,9 +260,9 @@ compile-time dependencies, and the RDEPEND lists runtime dependencies. Se Often we need to apply patches. This is done in the src_prepare function using the epatch helper function. To use epatch -one must first tell Portage that the eutils eclass (an eclass is +one must first tell Portage that the epatch eclass (an eclass is like a library) is required -this is done via inherit eutils at the top of the ebuild. Here's +this is done via inherit epatch at the top of the ebuild. Here's app-misc/detox/detox-1.1.0.ebuild: @@ -272,7 +272,7 @@ this is done via inherit eutils at the top of the ebuild. Here's EAPI=5 -inherit eutils +inherit epatch DESCRIPTION="detox safely removes spaces and strange characters from filenames" HOMEPAGE="http://detox.sourceforge.net/"; @@ -372,7 +372,7 @@ Another more complicated example, this time based upon EAPI=5 -inherit eutils +inherit epatch desktop DESCRIPTION="A lightweight email client and newsreader" HOMEPAGE="https://sylpheed.good-day.net/";
[gentoo-commits] proj/devmanual:master commit in: appendices/common-problems/, eclass-writing/, general-concepts/portage-cache/, ...
commit: 1d49e091adefb61f2e5b8dc3a190195651203faa Author: Brian Evans gentoo org> AuthorDate: Wed Oct 24 17:16:26 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 17:16:26 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=1d49e091 Remove more versionator references Signed-off-by: Brian Evans gentoo.org> appendices/common-problems/text.xml | 4 ++-- ebuild-writing/file-format/text.xml | 4 ++-- ebuild-writing/variables/text.xml | 2 +- eclass-writing/text.xml | 2 +- general-concepts/portage-cache/text.xml | 6 +++--- xsl/lang.highlight.ebuild.xsl | 6 ++ 6 files changed, 15 insertions(+), 9 deletions(-) diff --git a/appendices/common-problems/text.xml b/appendices/common-problems/text.xml index bced1db..992f863 100644 --- a/appendices/common-problems/text.xml +++ b/appendices/common-problems/text.xml @@ -57,9 +57,9 @@ in use, there are various alternatives: Usually when any of the above are used in global scope, it is to manipulate a version or program name string. These should be avoided in favour of -pure bash constructs. The versionator eclass is often of use here. +pure bash constructs. The eapi7-ver eclass is often of use here. See , -man versionator.eclass and man eapi7-ver.eclass and . diff --git a/ebuild-writing/file-format/text.xml b/ebuild-writing/file-format/text.xml index f9e6a4f..2c130af 100644 --- a/ebuild-writing/file-format/text.xml +++ b/ebuild-writing/file-format/text.xml @@ -130,8 +130,8 @@ is to use as the version (or as the last version component). The - -versionator.eclass may be used to manipulate and extract ebuild + +eapi7-ver.eclass may be used to manipulate and extract ebuild version components. diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index f2575ad..98babe4 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -540,7 +540,7 @@ to read. Some ebuilds use calls to sed, awk and / or cut to do this. This must not be done for any new code, and should be fixed to use either -versionator or bash substitution where possible. Global scope non-bash code is +eapi7-ver or bash substitution where possible. Global scope non-bash code is highly discouraged. diff --git a/eclass-writing/text.xml b/eclass-writing/text.xml index db7d9f1..99824e5 100644 --- a/eclass-writing/text.xml +++ b/eclass-writing/text.xml @@ -26,7 +26,7 @@ Roughly speaking, there are three kinds of eclass: Those which provide common functions which are used by many ebuilds (for -example, eutils, versionator, cvs, bash-completion) +example, eutils, eapi7-ver, cvs, bash-completion) Those which provide a basic build system for many similar packages (for diff --git a/general-concepts/portage-cache/text.xml b/general-concepts/portage-cache/text.xml index f985d56..13dcfae 100644 --- a/general-concepts/portage-cache/text.xml +++ b/general-concepts/portage-cache/text.xml @@ -25,14 +25,14 @@ fi -However, this is legal, since versionator.eclass works upon PV, and +However, this is legal, since eapi7-ver.eclass works upon PV, and PV and PN are both static: -inherit versionator +inherit eapi7-ver -if [[ $(get_major_version) -ge 7 ]] ; then +if ver_test -ge 7.0 ; then IUSE="${IUSE} tcltk mzscheme" DEPEND="${DEPEND} tcltk?( dev-lang/tcl ) diff --git a/xsl/lang.highlight.ebuild.xsl b/xsl/lang.highlight.ebuild.xsl index 4f84b8d..e2b1d72 100644 --- a/xsl/lang.highlight.ebuild.xsl +++ b/xsl/lang.highlight.ebuild.xsl @@ -331,6 +331,11 @@ + + + + + @@ -412,3 +417,4 @@ +
[gentoo-commits] proj/devmanual:master commit in: function-reference/install-functions/, ebuild-writing/variables/, ...
commit: 48b054eb8da9f4689480249e6d65076953dc0ed5 Author: Brian Evans gentoo org> AuthorDate: Wed Oct 24 16:50:22 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 16:50:22 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=48b054eb Tidy up formatting, links and typo for BDEPEND Signed-off-by: Brian Evans gentoo.org> ebuild-writing/eapi/text.xml | 4 ++-- ebuild-writing/functions/src_prepare/epatch/text.xml | 6 +++--- ebuild-writing/variables/text.xml| 2 +- function-reference/install-functions/text.xml| 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index 1eb82b9..fabbc93 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -1054,7 +1054,7 @@ src_install() { Empty groupings are banned Groupings which are empty, such as DEPEND="|| ( ${empty_var} )" will now generate an error. Furthermore, conditions within groupings are more strictly enforced. - Eg. REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )" would previously work with USE="-a -b" now requires + Eg. REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )" would previously work with USE="-foo -baz" now requires either USE="foo bar" or USE="baz zoinks". @@ -1110,7 +1110,7 @@ src_install() { ver_rs replaces separators in a version string ver_test compares two versions - See + See Version and Name Formatting Issues for examples of common uses or https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html#version-manipulation-and-comparison-commands";> an in-depth look diff --git a/ebuild-writing/functions/src_prepare/epatch/text.xml b/ebuild-writing/functions/src_prepare/epatch/text.xml index 720fd67..5a6939d 100644 --- a/ebuild-writing/functions/src_prepare/epatch/text.xml +++ b/ebuild-writing/functions/src_prepare/epatch/text.xml @@ -14,15 +14,15 @@ Also note that old ebuilds may still use src_unpack to apply patches. This is because those ebuilds are based in EAPI=1. You are advised to use the latest and apply your patches in src_prepare function instead. -Starting with EAPI=7, this function is banned and eapply must be used. +Starting with EAPI=7, this function is banned and eapply must be used. -Beginning with EAPI=6, a new function eapply was added to apply patches +Beginning with EAPI=6, a new function eapply was added to apply patches without the need for an eclass. This function differs from epatch in several ways: -eapply will not unpack patches for you. +eapply will not unpack patches for you. The default patch level is -p1. Other patch levels must be specified manually or the command will fail. diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index fa960ee..f2575ad 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -257,7 +257,7 @@ The following variables may or must be defined by every ebuild. -DEPEND +BDEPEND (EAPI=7) A list of the package's CBUILD build dependencies. See . diff --git a/function-reference/install-functions/text.xml b/function-reference/install-functions/text.xml index d0c8833..2b0cbf2 100644 --- a/function-reference/install-functions/text.xml +++ b/function-reference/install-functions/text.xml @@ -88,10 +88,10 @@ the first is the source name, the second the name to use when installing. libopts - Note: Banned in EAPI=7 Specify arguments passed to install for libraries + Note: Banned in EAPI=7 @@ -208,10 +208,10 @@ the first is the source name, the second the name to use when installing. dolib - Note: Banned in EAPI=7 Install a library file + Note: Banned in EAPI=7
[gentoo-commits] proj/devmanual:master commit in: function-reference/install-functions/, ebuild-writing/functions/src_prepare/, ...
commit: ffa353428d17602c069d4cd2206a698497cc4c33 Author: Brian Evans gentoo org> AuthorDate: Wed Oct 24 14:46:49 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 14:46:49 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=ffa35342 More XML syntax fixes Signed-off-by: Brian Evans gentoo.org> ebuild-writing/eapi/text.xml | 8 ebuild-writing/functions/src_prepare/text.xml | 4 ++-- function-reference/install-functions/text.xml | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index 8653b20..1eb82b9 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -1054,7 +1054,7 @@ src_install() { Empty groupings are banned Groupings which are empty, such as DEPEND="|| ( ${empty_var} )" will now generate an error. Furthermore, conditions within groupings are more strictly enforced. - Eg. REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )" would previously work with USE="-a -b" now requires + Eg. REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )" would previously work with USE="-a -b" now requires either USE="foo bar" or USE="baz zoinks". @@ -1066,7 +1066,7 @@ src_install() { - package.provided banned + package.provided banned Profiles may no longer contain a package.provided file with EAPI=7. @@ -1127,8 +1127,8 @@ src_install() { New function dostrip The dostrip helper has been added with EAPI=7. - This function controls whether or not to strip a binary. - dostrip -x [file] will exclude a binary from being stripped. + This function controls whether or not to strip a binary. + dostrip -x [file] will exclude a binary from being stripped. Conversely, when combined with RESTRICT=strip, dostrip [file] selects a binary file to be stripped. diff --git a/ebuild-writing/functions/src_prepare/text.xml b/ebuild-writing/functions/src_prepare/text.xml index 214dfbf..0425bb1 100644 --- a/ebuild-writing/functions/src_prepare/text.xml +++ b/ebuild-writing/functions/src_prepare/text.xml @@ -46,9 +46,9 @@ Beginning with EAPI=6, the src_prepare function gained a new default implementat src_prepare() { if declare -p PATCHES | grep -q "^declare -a "; then -[[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}" +[[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}" else -[[ -n ${PATCHES} ]] && eapply ${PATCHES} +[[ -n ${PATCHES} ]] && eapply ${PATCHES} fi eapply_user } diff --git a/function-reference/install-functions/text.xml b/function-reference/install-functions/text.xml index e42b4f6..d0c8833 100644 --- a/function-reference/install-functions/text.xml +++ b/function-reference/install-functions/text.xml @@ -243,7 +243,7 @@ the first is the source name, the second the name to use when installing. domo - Install a Gettext .mo file + Install a Gettext .mo file (EAPI=7) No longer looks at the value of into
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/epatch/
commit: 4684bc6ef8285f33d1c31e7b631f4fc85519f42c Author: Brian Evans gentoo org> AuthorDate: Wed Oct 24 14:16:12 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 14:16:12 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=4684bc6e ebuild-writing/epatch: Fix typo "olds ebuild" -> "old ebuilds" Signed-off-by: Brian Evans gentoo.org> ebuild-writing/functions/src_prepare/epatch/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ebuild-writing/functions/src_prepare/epatch/text.xml b/ebuild-writing/functions/src_prepare/epatch/text.xml index a1a2baf..720fd67 100644 --- a/ebuild-writing/functions/src_prepare/epatch/text.xml +++ b/ebuild-writing/functions/src_prepare/epatch/text.xml @@ -10,7 +10,7 @@ use epatch (from epatch.eclass, which you must make sure to inherit!) inside src_prepare. This function automatically handles -p levels, gunzip and so on as necessary. -Also note that olds ebuild may still use src_unpack to apply patches. +Also note that old ebuilds may still use src_unpack to apply patches. This is because those ebuilds are based in EAPI=1. You are advised to use the latest and apply your patches in src_prepare function instead.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/epatch/
commit: 9598695d8c75f47e8f11adb8c468e48a57af4c10 Author: Brian Evans gentoo org> AuthorDate: Wed Oct 24 14:14:06 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 14:14:06 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=9598695d Fix XML syntax in epatch document Signed-off-by: Brian Evans gentoo.org> ebuild-writing/functions/src_prepare/epatch/text.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ebuild-writing/functions/src_prepare/epatch/text.xml b/ebuild-writing/functions/src_prepare/epatch/text.xml index 7f80b93..a1a2baf 100644 --- a/ebuild-writing/functions/src_prepare/epatch/text.xml +++ b/ebuild-writing/functions/src_prepare/epatch/text.xml @@ -9,11 +9,11 @@ The canonical way of applying patches in ebuilds is to use epatch (from epatch.eclass, which you must make sure to inherit!) inside src_prepare. This function automatically handles -p levels, gunzip and so on as necessary. - + Also note that olds ebuild may still use src_unpack to apply patches. This is because those ebuilds are based in EAPI=1. You are advised to use the latest and apply your patches in src_prepare function instead. - + Starting with EAPI=7, this function is banned and eapply must be used.
[gentoo-commits] proj/devmanual:master commit in: function-reference/query-functions/
commit: b52cc8dffe22a0f0428d1bb533acc1b1b92e411e Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 14:58:21 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:36 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b52cc8df function-reference/query-functions: Add EAPI=7 options for {has,best}_version Signed-off-by: Brian Evans gentoo.org> function-reference/query-functions/text.xml | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/function-reference/query-functions/text.xml b/function-reference/query-functions/text.xml index 97d2dfb..8511c93 100644 --- a/function-reference/query-functions/text.xml +++ b/function-reference/query-functions/text.xml @@ -93,18 +93,22 @@ query variables and similar state. - best_version pkg + best_version [option] pkg Echoes category, name and version of the highest version of pkg that is currently installed. Example: best_version app-editors/emacs:24 will output app-editors/emacs-24.5-r3. + (EAPI=7) An option may also be specified to query certain types of dependencies. + -b for BDEPEND + -d for DEPEND + -r (default) for RDEPEND - has_version pkg[flag] + has_version [option] pkg[flag] True if pkg (can include @@ -113,6 +117,10 @@ query variables and similar state. ) is installed. Example: has_version "=app-editors/nano-2.5.3[nls,spell]". + (EAPI=7) An option may also be specified to query certain types of dependencies. + -b for BDEPEND + -d for DEPEND + -r (default) for RDEPEND
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/
commit: f7b0e2c7b3fae81bcbfb69f16be8942be3564880 Author: Brian Evans gentoo org> AuthorDate: Fri Sep 14 19:02:19 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:35 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f7b0e2c7 variables: Prefer eapi7-ver functions to versionator Signed-off-by: Brian Evans gentoo.org> ebuild-writing/variables/text.xml | 38 +++--- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 4829ea8..39aeb76 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -483,14 +483,18 @@ conventions. Using capital letters in names or differences in how underscores an are used in versions are particularly common. For example, what Gentoo calls foo-1.2.3b may be expecting a tarball named Foo-1.2-3b.tar.bz2. Rather than hard coding the package string, it is preferable to make MY_PN, MY_PV and MY_P variables and use those to define the -upstream naming. The easy way of redefining the version, which should be used unless you are sure -you know what you are doing, is to use the versionator eclass: +upstream naming. +EAPI=7 debuted a new set of functions, ver_cut, ver_rs and ver_test. +These were backported into older EAPIs with the eapi7-ver eclass. +The easy way of redefining the version, which should be used unless you are sure +you know what you are doing, is to use these functions: -inherit versionator +inherit eapi7-ver MY_PN="Foo" -MY_PV=$(replace_version_separator 2 '-') +# Replace the second period separator in PV with - +MY_PV=$(ver_rs 2 '-') MY_P="${MY_PN}-${MY_PV}" @@ -501,7 +505,7 @@ switches to a format like Foo-1.3-4.5.tar.bz2 (yes, this really happens). It is also possible to use bash substitution to achieve the same effect (this is -how versionator works internally), but this is complicated, error prone and hard +how eapi7-ver works internally), but this is complicated, error prone and hard to read. @@ -513,8 +517,8 @@ highly discouraged. -The versionator eclass can also be used to extract particular components -from a version string. See man versionator.eclass and the eclass source code +The ver_ functions are used extract particular components +from a version string. See man eapi7-ver.eclass and the eclass source code for further documentation and examples. A brief summary of the functions follows. @@ -525,39 +529,35 @@ follows. Purpose -get_all_version_components -Split up a version string into its component parts. - - -get_version_components +ver_rs [range] ' ' Get important version components, excluding '.', '-' and '_'. -get_major_version +ver_cut 1 Get the major version. -get_version_component_range +ver_cut [range] Extract a range of subparts from a version string. -get_after_major_version +ver_cut 2- Get everything after the major version. -replace_version_separator +ver_rs [range] [char] Replace a particular version separator. -replace_all_version_separators +ver_rs 1- [char] Replace all version separators. -delete_version_separator +ver_rs [range] '' Delete a version separator. -delete_all_version_separators +ver_rs 1- '' Delete all version separators.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/, ebuild-writing/eapi/, ...
commit: f5e2341205570e3ee90bbe235401cca9c1a8d456 Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 16:28:25 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:59:32 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=f5e23412 Clean up whitespace, syntax and wordings Signed-off-by: Brian Evans gentoo.org> ebuild-writing/eapi/text.xml | 24 +++--- .../functions/src_prepare/epatch/text.xml | 2 +- ebuild-writing/functions/src_prepare/text.xml | 14 ++--- ebuild-writing/variables/text.xml | 2 +- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index 7fd018f..8653b20 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -1051,7 +1051,7 @@ src_install() { - Empty groupings are banned + Empty groupings are banned Groupings which are empty, such as DEPEND="|| ( ${empty_var} )" will now generate an error. Furthermore, conditions within groupings are more strictly enforced. Eg. REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )" would previously work with USE="-a -b" now requires @@ -1094,24 +1094,24 @@ src_install() { has_version and best_version now support an optional switch to determine which type of dependencies to check. - - -r (the default) will check runtime dependencies (RDEPEND) - -d will check target build-time dependencies (DEPEND) - -b will check host build-time dependencies (BDEPEND) - + + -r (the default) will check runtime dependencies (RDEPEND) + -d will check CHOST build-time dependencies (DEPEND) + -b will check CBUILD build-time dependencies (BDEPEND) + Version manipulation and comparision commands EAPI=7 introduced three commands for common version number operations. - - ver_cut obtains substrings of a version string - ver_rs replaces separators in a version string - ver_test compares two versions - + + ver_cut obtains substrings of a version string + ver_rs replaces separators in a version string + ver_test compares two versions + See - for examples of common uses or + for examples of common uses or https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html#version-manipulation-and-comparison-commands";> an in-depth look diff --git a/ebuild-writing/functions/src_prepare/epatch/text.xml b/ebuild-writing/functions/src_prepare/epatch/text.xml index eba335b..7f80b93 100644 --- a/ebuild-writing/functions/src_prepare/epatch/text.xml +++ b/ebuild-writing/functions/src_prepare/epatch/text.xml @@ -28,7 +28,7 @@ The default patch level is -p1. Other patch levels must be specified manually or the command will fail. -When specifying a directory, at least file name ending in .patch or .diff +When specifying a directory, at least one file with a name ending in .patch or .diff must exist or the command fails. Other files are ignored. diff --git a/ebuild-writing/functions/src_prepare/text.xml b/ebuild-writing/functions/src_prepare/text.xml index 4ff2074..214dfbf 100644 --- a/ebuild-writing/functions/src_prepare/text.xml +++ b/ebuild-writing/functions/src_prepare/text.xml @@ -44,13 +44,13 @@ src_prepare() { Beginning with EAPI=6, the src_prepare function gained a new default implementation: -src_prepare() { -if declare -p PATCHES | grep -q "^declare -a "; then -[[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}" -else -[[ -n ${PATCHES} ]] && eapply ${PATCHES} -fi -eapply_user +src_prepare() { +if declare -p PATCHES | grep -q "^declare -a "; then +[[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}" +else +[[ -n ${PATCHES} ]] && eapply ${PATCHES} +fi +eapply_user } diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 4cf24dc..fa960ee 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -128,7 +128,7 @@ for these variables when writing ebuilds. EROOT - . + Shorthand for ${ROOT%/}${EPREFIX}/.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/
commit: 273d8d7ba3cd6df5662628fd45ffc13ef214ba77 Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 14:50:04 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:36 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=273d8d7b ebuild-writing/variables: Add EAPI=7 variables Signed-off-by: Brian Evans gentoo.org> ebuild-writing/variables/text.xml | 30 +- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 811d92a..4cf24dc 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -128,7 +128,27 @@ for these variables when writing ebuilds. EROOT - Shorthand for ${ROOT%/}${EPREFIX}/. + . + + + +SYSROOT + + (EAPI=7) The absolute path to the root directory containing build dependencies + satisfied by DEPEND + + + +ESYSROOT + + (EAPI=7) Shorthand for ${SYSROOT%/}${EPREFIX}/. + + + +BROOT + + (EAPI=7) The absolute path to the root directory containing build dependencies + satisfied by BDEPEND, typically executable build tools. @@ -233,6 +253,14 @@ The following variables may or must be defined by every ebuild. A list of the package's build dependencies. See . +Starting with EAPI-7, applies to CHOST only. + + + +DEPEND + +(EAPI=7) A list of the package's CBUILD build dependencies. See +.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/eapi/
commit: b887343bd84cfbfd7c0fa42e1e35158f3817e464 Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 14:35:57 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:36 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b887343b ebuild-writing/eapi: Add summary of EAPI=7 features Reference material used includes "The ultimate guide to EAPI 7"[1] by Michał Górny and the "Package Manager Specification"[2] [1] https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html [2] https://projects.gentoo.org/pms/7/pms.html Signed-off-by: Brian Evans gentoo.org> ebuild-writing/eapi/text.xml | 184 +++ 1 file changed, 184 insertions(+) diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index 406a562..7fd018f 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -976,6 +976,190 @@ src_install() { + +EAPI=7 + + +Terminology + +Documents may use the following terms to better describe dependency and installation targets. + + + CHOST + The system that will be running the installed package. + + + CBUILD + The system used to build packages. When not cross-compiling, CBUILD == CHOST. + + + CTARGET + Used in certain cross-compliations, often empty value. + + + + + +Variables + + + + PORTDIR and ECLASSDIR are removed + PORTDIR and ECLASSDIR are no longer defined and cannot be used + in ebuilds to access these directories. + + + DESTTREE and INSDESTTREE are removed + The unintended exported variables PORTDIR and ECLASSDIR + cannot be used in ebuilds to manipulate installation paths. + Use into or insinto, respectively, instead. + + + D, ED, ROOT, and EROOT modified + These variables no longer contain a trailing slash with EAPI=7. + + + BDEPEND addded + + Previously, all build-time tools and libraries went into the DEPEND. + Now, built-time dependencies are split into DEPEND and BDEPEND. + The difference is simply that BDEPEND are dependencies to be executed on the CBUILD. + DEPEND remains for other dependencies, such as libraries, for the CHOST. + This improves the cross-compliation support. + + + + BROOT added + BROOT is the absolute path to the root directory, including any prefix, containing build + dependencies satisfied by BDEPEND, typically executable build tools. + + + SYSROOT and ESYSROOT added + SYSROOT is the location of where dependencies in DEPEND are installed. + ESYSROOT is SYSROOT with EPREFIX appended. + + + + ENV_UNSET added + A whitespace delimited list of variables to be removed from the build environment. + + + + + +Metadata + + + + Empty groupings are banned + Groupings which are empty, such as DEPEND="|| ( ${empty_var} )" will now generate an error. + Furthermore, conditions within groupings are more strictly enforced. + Eg. REQUIRED_USE="|| ( foo? ( bar ) baz? ( zoinks )" would previously work with USE="-a -b" now requires + either USE="foo bar" or USE="baz zoinks". + + + + + + +Profiles + + + + package.provided banned + Profiles may no longer contain a package.provided file with EAPI=7. + + + + + +Helpers + + + + dohtml banned + + The dohtml helper has been banned with EAPI=7. + + + + dolib and libopts banned + + The dolib helper and the associated libopts have been banned with EAPI=7. + + + + has_version and best_version changes + + has_version and best_version now support an optional switch + to determine which type of dependencies to check. + + + -r (the default) will check runtime dependencies (RDEPEND) + -d will check target build-time dependencies (DEPEND) + -b will check host build-time dependencies (BDEPEND) + + + + Version manipulation and comparision commands + + EAPI=7 introduced three comma
[gentoo-commits] proj/devmanual:master commit in: function-reference/message-functions/, ebuild-writing/messages/
commit: 2c7b36df8e8f8909c05469c643c357cf2da2b41b Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 15:01:50 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:36 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=2c7b36df Update message-functions for EAPI=7 Drop mention of ebeep and epause Promote eqawarn leaving note about pre-EAPI=7 needing eutils Signed-off-by: Brian Evans gentoo.org> ebuild-writing/messages/text.xml | 2 +- function-reference/message-functions/text.xml | 35 +-- 2 files changed, 2 insertions(+), 35 deletions(-) diff --git a/ebuild-writing/messages/text.xml b/ebuild-writing/messages/text.xml index f8b81d6..85afa40 100644 --- a/ebuild-writing/messages/text.xml +++ b/ebuild-writing/messages/text.xml @@ -100,7 +100,7 @@ is mainly used for displaying additional error details before bailing out. The eqawarn function can be used by eclass authors to notify ebuild writers about - deprecated functionality. eqawarn is defined in eutils. Portage doesn't log the qa message + deprecated functionality. eqawarn is defined in eutils prior to EAPI=7. Portage doesn't log the qa message class by default so users don't get annoyed by seeing messages they can't do much about. diff --git a/function-reference/message-functions/text.xml b/function-reference/message-functions/text.xml index 24f4b82..af6771a 100644 --- a/function-reference/message-functions/text.xml +++ b/function-reference/message-functions/text.xml @@ -74,46 +74,13 @@ displaying informational messages. Display the end of an action block. - - - - The following are available from eutils.eclass . ebeep and epause - are deprecated in EAPIS 0, 1 and 2 in favor of GLEP 42 news items and - package manager message logging functionality. - - - - - - Function - - - Details - - - - - epause - - - Pause for the specified number (must be a positive integer) of seconds. - Defaults to a sane value. - - - - - ebeep - - - Beep the specified number (must be a positive integer) of times. Defaults to a sane value. - - eqawarn Used by eclass authors to notify ebuild writers that they are using deprecated functionality. + Before EAPI=7, the eutils eclass must be inherited.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/epatch/
commit: 459be03a011a231ef4c995a234251a3071ceb95f Author: Brian Evans gentoo org> AuthorDate: Fri Sep 14 17:43:06 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:59:24 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=459be03a Change src_prepare/epatch document to include eapply as well Signed-off-by: Brian Evans gentoo.org> .../functions/src_prepare/epatch/text.xml | 63 -- 1 file changed, 60 insertions(+), 3 deletions(-) diff --git a/ebuild-writing/functions/src_prepare/epatch/text.xml b/ebuild-writing/functions/src_prepare/epatch/text.xml index 65386dd..eba335b 100644 --- a/ebuild-writing/functions/src_prepare/epatch/text.xml +++ b/ebuild-writing/functions/src_prepare/epatch/text.xml @@ -1,14 +1,37 @@ -Patching with epatch +Patching with epatch and eapply The canonical way of applying patches in ebuilds is to -use epatch (from eutils.eclass, which you must make sure +use epatch (from epatch.eclass, which you must make sure to inherit!) inside src_prepare. This function automatically -handles -p levels, gunzip and so on as necessary. Also note that olds ebuild may still use src_unpack to apply patches. This is because those ebuilds are based in EAPI=1. You are advised to use EAPI=2 and apply your patches in src_prepare function instead. +handles -p levels, gunzip and so on as necessary. + +Also note that olds ebuild may still use src_unpack to apply patches. +This is because those ebuilds are based in EAPI=1. +You are advised to use the latest and apply your patches in src_prepare function instead. + +Starting with EAPI=7, this function is banned and eapply must be used. + + + +Beginning with EAPI=6, a new function eapply was added to apply patches +without the need for an eclass. +This function differs from epatch in several ways: + +eapply will not unpack patches for you. + +The default patch level is -p1. +Other patch levels must be specified manually or the command will fail. + + +When specifying a directory, at least file name ending in .patch or .diff +must exist or the command fails. Other files are ignored. + + @@ -17,6 +40,40 @@ and patches is highly discouraged. + +Basic eapply + + +The default src_prepare function will look for a global PATCHES array to apply +a list of patches for you. + + +PATCHES=( + "${FILESDIR}/${P}-destdir.patch" + "${FILESDIR}/${P}-parallel_build.patch" +) + + + + + +Advanced eapply + + +This example shows how different patch levels can be applied: + + + +src_prepare() { + eapply -p2 "${WORKDIR}/${P}-suse-update.patch.bz2" + eapply -p0 "${FILESDIR}/${PV}-no-TIOCGDEV.patch" + eapply "${FILESDIR}/${PV}-gcc-6.patch" + eapply_user +} + + + + Basic epatch
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/variables/, ebuild-writing/eapi/
commit: 01cb58aae249511d25609883166477c6bbda992d Author: Brian Evans gentoo org> AuthorDate: Fri Sep 14 19:37:33 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:36 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=01cb58aa Move REQUIRED_USE descripton to variables Instead of having it split on the EAPI page, this allows it to grow organically in its own section Signed-off-by: Brian Evans gentoo.org> ebuild-writing/eapi/text.xml | 39 + ebuild-writing/variables/text.xml | 71 +-- 2 files changed, 70 insertions(+), 40 deletions(-) diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index 3f60d1a..406a562 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -595,45 +595,8 @@ src_install() { must be enabled (or disabled if it has an exclamation mark prefix). - Essentially, REQUIRED_USE is an analogue of DEPEND - style syntax. For example, to state that some combination is - forbidden, i.e. "if foo is set, bar must be unset": + See - -REQUIRED_USE="foo? ( !bar )" - - - To state "if foo is set, then at least one of bar, - baz, and quux must be activated": - - -REQUIRED_USE="foo? ( || ( bar baz quux ) )" - - - To state "exactly one of foo, bar, or baz must - be set, but not several": - - -REQUIRED_USE="^^ ( foo bar baz )" - - - Note that the last relationship is that of an Exclusive OR (XOR). - While an XOR could be formed from usual DEPEND syntax, a - specific ^^ operator has been added for this case. - - - Finally, to state "at least one of foo, bar, or - baz must be set": - - -REQUIRED_USE="|| ( foo bar baz )" - - - - See section - - for when (and when not) to use REQUIRED_USE. - REPLACING_VERSIONS and REPLACED_BY_VERSION diff --git a/ebuild-writing/variables/text.xml b/ebuild-writing/variables/text.xml index 39aeb76..811d92a 100644 --- a/ebuild-writing/variables/text.xml +++ b/ebuild-writing/variables/text.xml @@ -216,8 +216,8 @@ The following variables may or must be defined by every ebuild. REQUIRED_USE A list of assertions that must be met by the configuration of -USE flags to be valid for this ebuild. (Requires -EAPI>=4.) +USE flags to be valid for this ebuild. (Requires EAPI>=4.) +See . @@ -636,5 +636,72 @@ have no direct correlation with the expected string should be avoided. + +REQUIRED_USE + + +The REQUIRED_USE variable contains a list of assertions that must be +met by the configuration of USE flags to be valid for this ebuild. In order +to be matched, a USE flag in a terminal element must be enabled +(or disabled if it has an exclamation mark prefix). + + + +Essentially, REQUIRED_USE is an analogue of DEPEND style syntax. +For example, to state that some combination is forbidden, i.e. "if foo is set, bar must be unset": + + + +REQUIRED_USE="foo? ( !bar )" + + +To state "if foo is set, then at least one of bar, baz, and quux must be activated": + + +REQUIRED_USE="foo? ( || ( bar baz quux ) )" + + +To state "exactly one of foo, bar, or baz must be set, but not several": + + +REQUIRED_USE="^^ ( foo bar baz )" + + +Note that the last relationship is that of an Exclusive OR (XOR). +While an XOR could be formed from usual DEPEND syntax, +a specific ^^ operator has been added for this case. + + +Finally, to state "at least one of foo, bar, or baz must be set": + + +REQUIRED_USE="|| ( foo bar baz )" + + +See section +for when (and when not) to use REQUIRED_USE. + + + +EAPI 5 + + +EAPI 5 added an additional case to simplify conflicting USE flags. + + +To state "zero or one of foo, bar, or baz must be set, but not several": + + +REQUIRED_USE="?? ( foo bar baz )" + +In the previous EAPI, this would be the same as: + +REQUIRED_USE="foo? ( !bar !baz ) bar? ( !foo !baz ) baz? ( !foo !bar )" + + + + + +
[gentoo-commits] proj/devmanual:master commit in: function-reference/install-functions/
commit: 7cb1e1f8abbf1db100e3685cd9d1093c2a788a03 Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 15:13:36 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:37 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=7cb1e1f8 install-functions: Update domo and add dostrip for EAPI=7 Signed-off-by: Brian Evans gentoo.org> function-reference/install-functions/text.xml | 14 +- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/function-reference/install-functions/text.xml b/function-reference/install-functions/text.xml index 1134164..24552a7 100644 --- a/function-reference/install-functions/text.xml +++ b/function-reference/install-functions/text.xml @@ -242,7 +242,8 @@ the first is the source name, the second the name to use when installing. domo - Install a Gettext .mo file + Install a Gettext .mo file + (EAPI=7) No longer looks at the value of into @@ -387,6 +388,17 @@ the first is the source name, the second the name to use when installing. Install an sbin file using the second argument as the name + + + dostrip + + + Introduced with EAPI=7, controls the stripping of executables. + Normally executed to exclude from stripping. + Eg. dostrip -x /path/to/important.so. May also be used to include binaries + to strip when RESTRICT=strip without the -x option. + +
[gentoo-commits] proj/devmanual:master commit in: function-reference/install-functions/
commit: e9a60c0e885eb466dd3251ee33ab309f592ecd1d Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 15:20:59 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:37 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=e9a60c0e install-functions: mark dohtml as banned with EAPI=7 Signed-off-by: Brian Evans gentoo.org> function-reference/install-functions/text.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/function-reference/install-functions/text.xml b/function-reference/install-functions/text.xml index 24552a7..e42b4f6 100644 --- a/function-reference/install-functions/text.xml +++ b/function-reference/install-functions/text.xml @@ -176,7 +176,8 @@ the first is the source name, the second the name to use when installing. Installs HTML document files into /usr/share/doc/${PF}/html The -r option allows directories to be installed recursively. Note: Deprecated in EAPI 6, switch to einstalldocs - instead + instead. + Note: Banned in EAPI=7
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/
commit: 404265ebc3cd062402d737dc120f872c3330fa86 Author: Brian Evans gentoo org> AuthorDate: Fri Sep 14 17:08:48 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:51:35 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=404265eb src_prepare: Show new EAPI 6 default_src_prepare Signed-off-by: Brian Evans gentoo.org> ebuild-writing/functions/src_prepare/text.xml | 13 + 1 file changed, 13 insertions(+) diff --git a/ebuild-writing/functions/src_prepare/text.xml b/ebuild-writing/functions/src_prepare/text.xml index 2a8cb84..4ff2074 100644 --- a/ebuild-writing/functions/src_prepare/text.xml +++ b/ebuild-writing/functions/src_prepare/text.xml @@ -40,6 +40,19 @@ src_prepare() { true; } + +Beginning with EAPI=6, the src_prepare function gained a new default implementation: + + +src_prepare() { +if declare -p PATCHES | grep -q "^declare -a "; then +[[ -n ${PATCHES[@]} ]] && eapply "${PATCHES[@]}" +else +[[ -n ${PATCHES} ]] && eapply ${PATCHES} +fi +eapply_user +} +
[gentoo-commits] proj/devmanual:master commit in: general-concepts/overlay/
commit: 913f947302f399b1ff2834e93973ebd1eeb8e931 Author: Brian Evans gentoo org> AuthorDate: Mon Sep 17 15:17:27 2018 + Commit: Brian Evans gentoo org> CommitDate: Wed Oct 24 12:56:37 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=913f9473 overlays: Remove reference to PORTDIR_OVERLAY Signed-off-by: Brian Evans gentoo.org> general-concepts/overlay/text.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/general-concepts/overlay/text.xml b/general-concepts/overlay/text.xml index 8428e25..aca48c7 100644 --- a/general-concepts/overlay/text.xml +++ b/general-concepts/overlay/text.xml @@ -6,8 +6,8 @@ Portage can look in multiple places for packages by using an overlay. The -locations of overlays are controlled by the PORTDIR_OVERLAY variable, which -should contain a space-separated list of paths. +locations of overlays are controlled by the location variable +in one or more repos.conf files.
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/maintenance-tasks/
commit: e86291bf6f6c1a93a6144d6995396a80cb402fa6 Author: Ulrich Müller gentoo org> AuthorDate: Wed Aug 22 05:02:52 2018 + Commit: Ulrich Müller gentoo org> CommitDate: Sun Sep 23 06:55:56 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=e86291bf ebuild-maintenance/maintenance-tasks: Amend section on package removal. Clarify that reverse dependencies are to be removed. ebuild-maintenance/maintenance-tasks/text.xml | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ebuild-maintenance/maintenance-tasks/text.xml b/ebuild-maintenance/maintenance-tasks/text.xml index 10e25d9..e4a173f 100644 --- a/ebuild-maintenance/maintenance-tasks/text.xml +++ b/ebuild-maintenance/maintenance-tasks/text.xml @@ -437,13 +437,18 @@ When removing packages follow these steps: -Make sure that no dependencies in Portage are broken due to the removal +Make sure that no dependencies in the Gentoo repository are broken due to +the removal Send last rites to gentoo-dev-announce and gentoo-dev Mask the package Wait 30 days (or more) Remove from the git tree unless the reason for removal has been fixed - Remove package.mask entry + +Remove any references to the package from other ebuilds, e.g., +use-conditional dependencies. Blockers are the only exception to this. + + Remove package.mask and any package.use.mask entries Remove thetags referencing this package in the metadata.xml
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_unpack/rpm-sources/
commit: 00a1865827862c17a4019d56afb4b5b5f8a3f658 Author: Brian Evans gentoo org> AuthorDate: Fri Sep 14 16:55:09 2018 + Commit: Brian Evans gentoo org> CommitDate: Fri Sep 14 16:55:09 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=00a18658 Bring rpm example up to EAPI 6 standards Signed-off-by: Brian Evans gentoo.org> .../functions/src_unpack/rpm-sources/text.xml | 22 ++ 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml index 64ac1de..584866a 100644 --- a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml +++ b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml @@ -19,7 +19,7 @@ that will unpack the RPM files. -If you do need to apply patches then override src_unpack in a +If you do need to call additional unpack functions then override src_unpack in a manner such as: @@ -55,9 +55,11 @@ patches. The filename should be suse-fetchmail-6.2.5.54.1.ebuild. # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -inherit eutils versionator rpm +EAPI="6" -MY_PV=$(replace_version_separator 3 '-') +inherit eapi7-ver rpm + +MY_PV=$(ver_rs 3 '-') MY_P=fetchmail-${MY_PV} SRC_URI="https://suse.osuosl.org/suse/i386/9.2/suse/src/${MY_P}.src.rpm"; @@ -80,13 +82,17 @@ RESTRICT="mirror" #USE_RPMOFFSET_ONLY=1 -S=${WORKDIR}/fetchmail-$(get_version_component_range 1-3) +S=${WORKDIR}/fetchmail-$(ver_cut 1-3) src_unpack () { - rpm_src_unpack ${A} - cd "${S}" - EPATCH_SOURCE="${WORKDIR}" EPATCH_SUFFIX="patch" \ - EPATCH_FORCE="yes" epatch +rpm_src_unpack ${A} +} + +src_prepare () { +for i in "${WORKDIR}"/*.patch ; do +eapply "${i}" +done +eapply_user }
[gentoo-commits] proj/devmanual:master commit in: general-concepts/dependencies/
commit: c53568d93df9e2c94d0334e1e42e8a6de1a6797a Author: Mike Gilbert gentoo org> AuthorDate: Fri Aug 24 18:21:10 2018 + Commit: Mike Gilbert gentoo org> CommitDate: Mon Sep 10 15:18:05 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c53568d9 Add section about defining "Test Dependencies" Reviewed-by: Ulrich Müller gentoo.org> general-concepts/dependencies/text.xml | 38 ++ 1 file changed, 38 insertions(+) diff --git a/general-concepts/dependencies/text.xml b/general-concepts/dependencies/text.xml index 2f10380..6b0ce38 100644 --- a/general-concepts/dependencies/text.xml +++ b/general-concepts/dependencies/text.xml @@ -578,6 +578,44 @@ valid. + +Test Dependencies + + + +Packages often have optional dependencies that are needed only when running +tests. These should be specified in DEPEND behind a USE flag. Often, the +'test' USE flag is used for this purpose. + + + +Since testing will likely fail when test dependencies are not installed, the +test phase should be disabled in this case. This may be accomplished via USE +conditionals in the RESTRICT variable. + + + +If other optional features must be enabled/disabled when testing, REQUIRED_USE +may be set to express this. + + + +# Define some USE flags +IUSE="debug test" + +# Require debug support when tests are enabled +REQUIRED_USE="test? ( debug )" + +# Disable test phase when test USE flag is disabled +RESTRICT="!test? ( test )" + +# Running tests requires 'foo' to be installed +DEPEND="test? ( dev-util/foo )" + + + + +
[gentoo-commits] proj/devmanual:master commit in: keywording/
commit: cd0550900d2461ceef2ad82da9371309a49131be Author: Mikle Kolyada gentoo org> AuthorDate: Thu Jul 19 22:46:11 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Mon Aug 27 15:23:54 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=cd055090 keywording: sort keywords out Closes: https://github.com/gentoo/devmanual.gentoo.org/pull/91 keywording/text.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keywording/text.xml b/keywording/text.xml index 5ad2c75..1dfbc32 100644 --- a/keywording/text.xml +++ b/keywording/text.xml @@ -29,7 +29,7 @@ A sample KEYWORDS entry might look like: -KEYWORDS="x86 sparc ~mips ~ppc ~ppc-macos -ia64" +KEYWORDS="-ia64 ~mips ~ppc sparc x86 ~ppc-macos" @@ -82,15 +82,15 @@ The different levels of keyword are: The -* keyword is special. It is used to indicate package versions which are not worth trying to test on unlisted archs. For example, a binary-only package -which is only supported upstream on x86 and ppc might use: +which is only supported upstream on ppc and x86 might use: -KEYWORDS="-* x86 ppc" +KEYWORDS="-* ppc x86" -This is different in implication from "x86 ppc" the former implies that +This is different in implication from "ppc x86" the former implies that it will not work on other archs, whereas the latter implies that it has not been tested.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/pkg_postrm/
commit: 033e6064fbb78eea68f87540c3e0a5c940de935c Author: Mikle Kolyada gentoo org> AuthorDate: Wed Jul 18 18:26:01 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Tue Aug 7 19:27:04 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=033e6064 ebuild-writing/functions/pkg_postrm: sample update ebuild-writing/functions/pkg_postrm/text.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ebuild-writing/functions/pkg_postrm/text.xml b/ebuild-writing/functions/pkg_postrm/text.xml index af9e435..3efaabf 100644 --- a/ebuild-writing/functions/pkg_postrm/text.xml +++ b/ebuild-writing/functions/pkg_postrm/text.xml @@ -45,7 +45,8 @@ pkg_postrm() pkg_postrm() { - fdo-mime_mime_database_update + xdg_desktop_database_update + xdg_mimeinfo_database_update }
[gentoo-commits] proj/devmanual:master commit in: function-reference/install-functions/
commit: 5334a50837431d67a196a7848623e01401b3c5eb Author: Mike Gilbert gentoo org> AuthorDate: Thu Jul 26 17:23:11 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Aug 1 22:57:52 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=5334a508 install-functions: refer to ${ED} instead of ${D} Since EAPI 3, the install functions use ${ED} instead of ${D}. function-reference/install-functions/text.xml | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/function-reference/install-functions/text.xml b/function-reference/install-functions/text.xml index b6bd181..1134164 100644 --- a/function-reference/install-functions/text.xml +++ b/function-reference/install-functions/text.xml @@ -5,9 +5,8 @@ -The following functions, which are all provided by ebuild.sh and the standard -library, handle various install-related tasks. ${D} is automatically handled -for all of these functions. +The following functions are provided by the package manager to handle various +install-related tasks. ${ED} is prepended automatically to the install location. @@ -271,7 +270,7 @@ the first is the source name, the second the name to use when installing. fowners - Call chown on the specified files in ${D} + Call chown on the specified files in ${ED} @@ -279,7 +278,7 @@ the first is the source name, the second the name to use when installing. fperms - Call chmod on the specified files in ${D} + Call chmod on the specified files in ${ED}
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/using-eclasses/
commit: 6b5b8c6a88d02f37792c263620601516b309 Author: Mikle Kolyada gentoo org> AuthorDate: Fri Jun 22 11:23:35 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Jul 19 16:54:13 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=6b5b8c6a ebuild-writing/using-eclasses: get rid of deprecated thingy in the example ebuild-writing/using-eclasses/text.xml | 32 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/ebuild-writing/using-eclasses/text.xml b/ebuild-writing/using-eclasses/text.xml index 912e330..e6a53cf 100644 --- a/ebuild-writing/using-eclasses/text.xml +++ b/ebuild-writing/using-eclasses/text.xml @@ -28,47 +28,47 @@ link="::general-concepts/portage-cache"/>). After inheriting an eclass, its provided functions can be used as normal. Here's an example ebuild, foomatic-0.1-r2.ebuild, which -uses four eclasses: +uses three eclasses: # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -EAPI=2 +EAPI=7 -inherit eutils bash-completion flag-o-matic autotools +inherit autotools bash-completion-r1 flag-o-matic DESCRIPTION="Tool for foo" -HOMEPAGE="http://foomatic.sf.net"; +HOMEPAGE="https://foomatic.sf.net"; SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" LICENSE="GPL-2" SLOT="0" KEYWORDS="alpha ~amd64 ~x86 ~x86-fbsd" -RDEPEND=">=sys-libs/ncurses-5.2 - >=sys-libs/readline-4.1" +RDEPEND="sys-libs/ncurses:0= + >=sys-libs/readline:0=" DEPEND="${RDEPEND}" src_prepare() { - epatch "${FILESDIR}/${P}-gentoo.patch" + eapply "${FILESDIR}/${P}-gentoo.patch" + eapply_user eautoreconf } src_configure() { - econf --sysconfdir=/etc/devtodo + econf --sysconfdir="${EPREFIX}"/etc/devtodo } src_compile() { replace-flags -O? -O1 - emake || die "emake failed" + default } src_install() { - emake DESTDIR="${D}" install || die "emake install failed" - dodoc AUTHORS ChangeLog README TODO || die "dodoc failed" - dobashcompletion "${FILESDIR}/${PN}.bash-completion" ${PN} + default + dobashcomp "${FILESDIR}/${PN}.bash-completion" ${PN} } @@ -78,11 +78,11 @@ Note the inherit immediately after the header. -The eutils eclass (see eutils.eclass) is needed to get the -epatch function. The flag-o-matic eclass (see autotools eclass (see autotools.eclass) is needed to get the +eautoreconf function. The flag-o-matic eclass (see flag-o-matic.eclass) is needed for replace-flags, and -the bash-completion eclass (bash-completion.eclass) is used -to handle the bash completion file via dobashcompletion and bash-completion_pkg_postinst. +the bash-completion-r1 eclass (bash-completion-r1.eclass) is used +to handle the bash completion file via dobashcomp.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/misc-files/patches/
commit: b50b1ad173ee9ea066231289a5b9f5ee644acfcc Author: Mikle Kolyada gentoo org> AuthorDate: Fri Jun 15 22:54:15 2018 + Commit: Ulrich Müller gentoo org> CommitDate: Fri Jun 22 18:39:31 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=b50b1ad1 ebuild-writing/../patches: add warning about strip ebuild-writing/misc-files/patches/text.xml | 7 +++ 1 file changed, 7 insertions(+) diff --git a/ebuild-writing/misc-files/patches/text.xml b/ebuild-writing/misc-files/patches/text.xml index 506871f..fe9f471 100644 --- a/ebuild-writing/misc-files/patches/text.xml +++ b/ebuild-writing/misc-files/patches/text.xml @@ -37,6 +37,13 @@ here. Mirrored patches are often compressed with xz or Patches included in ${FILESDIR} should never be compressed. + +Starting from EAPI=6 a strip patch level was limited to the -p1. +Although it can be overridden with a eapply -p+command, it is higly recommended to adapt the patch itself to work +with the -p1 default. + + If a package requires many patches, even if they are individually small, it is often best to create a patch tarball to avoid cluttering
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_prepare/
commit: 8e52b04d8749afb4f06be7f8fe8e62632e21cb50 Author: Mikle Kolyada gentoo org> AuthorDate: Sat Jun 16 20:39:32 2018 + Commit: Ulrich Müller gentoo org> CommitDate: Mon Jun 18 19:17:39 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=8e52b04d ebuild-writing/functions/src_prepare: modernize src_prepare() ebuild-writing/functions/src_prepare/text.xml | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ebuild-writing/functions/src_prepare/text.xml b/ebuild-writing/functions/src_prepare/text.xml index 2a30581..2a8cb84 100644 --- a/ebuild-writing/functions/src_prepare/text.xml +++ b/ebuild-writing/functions/src_prepare/text.xml @@ -48,8 +48,10 @@ src_prepare() { src_prepare() { - epatch "${FILESDIR}/${PV}/${P}-fix-bogosity.patch" - use pam && epatch "${FILESDIR}/${PV}/${P}-pam.patch" + eapply "${FILESDIR}/${PV}/${P}-fix-bogosity.patch" + eapply "${FILESDIR}/${PV}/${P}-pam.patch" + + eapply_user sed -i -e 's/"ispell"/"aspell"/' src/defaults.h || die "Sed failed!" }
[gentoo-commits] proj/devmanual:master commit in: general-concepts/use-flags/
commit: ffdbcac1b3652fec02efcc695ba15409bfda19f3 Author: Mikle Kolyada gentoo org> AuthorDate: Sat Jun 16 21:57:42 2018 + Commit: Ulrich Müller gentoo org> CommitDate: Fri Jun 22 18:24:13 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=ffdbcac1 general-concepts/use-flags: deprecate LINGUAS in favour of L10N general-concepts/use-flags/text.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/general-concepts/use-flags/text.xml b/general-concepts/use-flags/text.xml index 88da628..0e46546 100644 --- a/general-concepts/use-flags/text.xml +++ b/general-concepts/use-flags/text.xml @@ -240,10 +240,10 @@ src_compile() { - The VIDEO_CARDS, INPUT_DEVICES and LINGUAS variables + The VIDEO_CARDS, INPUT_DEVICES and L10N variables are automatically expanded into USE flags. These are known as - USE_EXPAND variables. If the user has LINGUAS="en fr" in - make.conf, for example, then USE="linguas_en linguas_fr" will + USE_EXPAND variables. If the user has L10N="en fr" in + make.conf, for example, then USE="l10n_en l10n_fr" will automatically be set by Portage.
[gentoo-commits] proj/devmanual:master commit in: function-reference/install-functions/
commit: 97aea4d9a36ee06d82e64de9ce415741b41483d8 Author: Mikle Kolyada gentoo org> AuthorDate: Sat Jun 16 21:25:20 2018 + Commit: Ulrich Müller gentoo org> CommitDate: Fri Jun 22 18:23:59 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=97aea4d9 function-reference/install-functions: add ban notes about libopts and dolib function-reference/install-functions/text.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/function-reference/install-functions/text.xml b/function-reference/install-functions/text.xml index c1392bf..b6bd181 100644 --- a/function-reference/install-functions/text.xml +++ b/function-reference/install-functions/text.xml @@ -89,6 +89,7 @@ the first is the source name, the second the name to use when installing. libopts + Note: Banned in EAPI=7 Specify arguments passed to install for libraries @@ -207,6 +208,7 @@ the first is the source name, the second the name to use when installing. dolib + Note: Banned in EAPI=7 Install a library file
[gentoo-commits] proj/devmanual:master commit in: quickstart/
commit: 94bc3cc1d5939531b437a00decdedda7ff67f640 Author: Mikle Kolyada users noreply github com> AuthorDate: Thu May 24 17:39:26 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Jun 14 18:38:47 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=94bc3cc1 quickstart: Remove einstall reference It is banned since EAPI=6, older EAPIs are deprecated. quickstart/text.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/quickstart/text.xml b/quickstart/text.xml index fd7e677..b82185d 100644 --- a/quickstart/text.xml +++ b/quickstart/text.xml @@ -153,8 +153,7 @@ this see and The canonical install method is emake DESTDIR="${D}" install. This will work with any properly written standard -Makefile. If this gives sandbox errors, try einstall -instead. If this still fails, see Makefile. If this gives sandbox errors, see for how to do manual installs.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/autotools/
commit: c4df53132e81e885635da2f326bb9b6afde78964 Author: Mikle Kolyada gentoo org> AuthorDate: Thu May 24 18:27:54 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Thu Jun 14 18:39:14 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c4df5313 general-concepts/autotools: Add Autotools Mythbuster as a reference general-concepts/autotools/text.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/general-concepts/autotools/text.xml b/general-concepts/autotools/text.xml index 6c6561a..02d8b30 100644 --- a/general-concepts/autotools/text.xml +++ b/general-concepts/autotools/text.xml @@ -675,6 +675,9 @@ For more details on autotools: https://www.gnu.org/software/m4/manual/m4.html";>GNU m4 Manual + + https://autotools.io";>Autotools Mythbuster + There are some good overview lectures available online.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/dependencies/, tools-reference/sed/, profiles/packages/
commit: de8434b4f59434f5e5bd24ce1f807ab0ec16eed8 Author: Göktürk Yüksek gentoo org> AuthorDate: Tue Mar 27 19:45:18 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Sun Apr 22 01:50:43 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=de8434b4 Replace the references to 'system' with '@system' Adopt the set notation using the '@' sign when refering to the system set. Also, system is not a target but a set. Therefore replace any references that refers to @system as 'target' with 'set'. general-concepts/dependencies/text.xml | 17 ++--- profiles/packages/text.xml | 2 +- tools-reference/sed/text.xml | 3 ++- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/general-concepts/dependencies/text.xml b/general-concepts/dependencies/text.xml index e43390c..2f10380 100644 --- a/general-concepts/dependencies/text.xml +++ b/general-concepts/dependencies/text.xml @@ -73,21 +73,24 @@ where this will create circular dependency chains. All packages have an implicit compile-time and runtime dependency upon the -entire system target. It is therefore not necessary, nor advisable, to +entire @system set. It is therefore not necessary, nor +advisable, to specify dependencies upon toolchain packages like gcc, libc and so on, except where specific versions or packages (for example, glibc over uclibc) are required. Note that this rule also needs consideration for packages like flex, zlib and libtool, which aren't in -the system target for every profile. For example, the embedded profile -doesn't have zlib in system target, the libtool ABI might +the @system set for every profile. For example, the embedded +profile doesn't have zlib in @system, the libtool +ABI might change and break building order and flex might get removed from the -system target in future. +@system set in future. -However, packages which are included in the system target, or are -dependencies of system target packages, should generally include a complete -dependency list (excluding bootstrap packages). This makes emerge -e system +However, packages which are included in the @system set, or are +dependencies of @system set packages, should generally include +a complete dependency list (excluding bootstrap packages). This makes +emerge -e @system possible when installing from a stage 1 or stage 2 tarball. diff --git a/profiles/packages/text.xml b/profiles/packages/text.xml index b8215f7..13f98ab 100644 --- a/profiles/packages/text.xml +++ b/profiles/packages/text.xml @@ -6,7 +6,7 @@ The packages file in profiles/ controls the packages pulled in by the -system target. The base/packages file must not be modified without +@system set. The base/packages file must not be modified without discussion on the gentoo-dev list; subprofile overrides are up to the relevant arch teams. diff --git a/tools-reference/sed/text.xml b/tools-reference/sed/text.xml index 02c8c32..3f7a455 100644 --- a/tools-reference/sed/text.xml +++ b/tools-reference/sed/text.xml @@ -62,7 +62,8 @@ A summary of the more common ways of using sed and a description of commonly used address and token patterns follows. Note that some of these constructs are specific to GNU sed 4 on non-GNU userland archs, the sed command must be aliased to GNU sed. Also note that GNU sed 4 is -guaranteed to be installed as part of system. This was not always the case, +guaranteed to be installed as part of @system. This was not +always the case, which is why some packages, particularly those which use sed -i, have DEPEND s upon >=sys-apps/sed-4.
[gentoo-commits] proj/devmanual:master commit in: ebuild-writing/functions/src_unpack/rpm-sources/, ebuild-writing/eapi/, ...
commit: e163dc08df7228bafeadb9a0fac092411ffb946b Author: Göktürk Yüksek gentoo org> AuthorDate: Sat Apr 21 02:25:48 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Sat Apr 21 02:25:48 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=e163dc08 Convert various 'http://' URIs to 'https://' Here's the heuristic for conversion: - If the https substitute is valid, always convert to https - If it's a bogus URI used in an example, convert it to https - If it's a valid URI used in an example with no valid https, leave it alone appendices/contributing/text.xml | 3 ++- ebuild-maintenance/maintenance-tasks/text.xml | 4 ++-- ebuild-writing/common-mistakes/text.xml| 6 - ebuild-writing/eapi/text.xml | 2 +- .../functions/src_unpack/rpm-sources/text.xml | 4 ++-- .../functions/src_unpack/svn-sources/text.xml | 2 +- ebuild-writing/misc-files/metadata/text.xml| 2 +- ebuild-writing/variables/text.xml | 26 +++--- general-concepts/autotools/text.xml| 3 ++- hosted-projects/text.xml | 2 +- quickstart/text.xml| 4 ++-- 11 files changed, 32 insertions(+), 26 deletions(-) diff --git a/appendices/contributing/text.xml b/appendices/contributing/text.xml index 5550aef..9ad2011 100644 --- a/appendices/contributing/text.xml +++ b/appendices/contributing/text.xml @@ -18,7 +18,8 @@ not be discussed. -This document is licensed under the http://creativecommons.org/licenses/by-sa/3.0/";> +This document is licensed under the +https://creativecommons.org/licenses/by-sa/3.0/";> Creative Commons Attribution-ShareAlike 3.0 Unported License. If this is a problem, don't submit anything. diff --git a/ebuild-maintenance/maintenance-tasks/text.xml b/ebuild-maintenance/maintenance-tasks/text.xml index 5e67a46..10e25d9 100644 --- a/ebuild-maintenance/maintenance-tasks/text.xml +++ b/ebuild-maintenance/maintenance-tasks/text.xml @@ -56,8 +56,8 @@ users that will use your package. If your package is broken, and you are not sure how to get it to work, check some other distributions that have done their own versions of the package. You can check http://cvs.mandriva.com/cgi-bin/viewvc.cgi/SPECS/";>Mandriva -or http://www.debian.org/distrib/packages";>Debian or -http://pkgs.fedoraproject.org/cgit/rpms/";>Fedora for some +or https://www.debian.org/distrib/packages";>Debian or +https://pkgs.fedoraproject.org/cgit/rpms/";>Fedora for some examples. diff --git a/ebuild-writing/common-mistakes/text.xml b/ebuild-writing/common-mistakes/text.xml index c188c1f..a66ec49 100644 --- a/ebuild-writing/common-mistakes/text.xml +++ b/ebuild-writing/common-mistakes/text.xml @@ -138,7 +138,11 @@ GCC can turn any specific warning into an error. A specific -Werror flag would b Exceptions -Removing "-Werror" from configure.ac can cause breakage in very rare cases where the configure phase relies on the exit code. See http://sourceforge.net/tracker/?func=detail&aid=2959749&group_id=204462&atid=989708";>app-emulation/open-vm-tools bug. But even then we remove it from the resulting Makefile. +Removing "-Werror" from configure.ac can cause breakage in very rare +cases where the configure phase relies on the exit code. See +https://sourceforge.net/tracker/?func=detail&aid=2959749&group_id=204462&atid=989708";> +app-emulation/open-vm-tools bug. But even then we remove it from +the resulting Makefile. diff --git a/ebuild-writing/eapi/text.xml b/ebuild-writing/eapi/text.xml index 0a2c3aa..3f60d1a 100644 --- a/ebuild-writing/eapi/text.xml +++ b/ebuild-writing/eapi/text.xml @@ -228,7 +228,7 @@ doman foo.lang.1 Example: -SRC_URI="http://dl.google.com/earth/client/GE4/release_4_3/GoogleEarthLinux.bin +SRC_URI="https://dl.google.com/earth/client/GE4/release_4_3/GoogleEarthLinux.bin -> GoogleEarthLinux-${PV}.bin" diff --git a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml index 0142b2f..64ac1de 100644 --- a/ebuild-writing/functions/src_unpack/rpm-sources/text.xml +++ b/ebuild-writing/functions/src_unpack/rpm-sources/text.xml @@ -60,9 +60,9 @@ inherit eutils versionator rpm MY_PV=$(replace_version_separator 3 '-') MY_P=fetchmail-${MY_PV} -SRC_URI="http://suse.osuosl.org/suse/i386/9.2/suse/src/${MY_P}.src.rpm"; +SRC_URI="https://suse.osuosl.org/suse/i386/9.2/suse/src/${MY_P}.src.rpm"; DESCRIPTION="SuSE 9.2 Fetchmail Source Package" -HOMEPAGE="http://www.suse.com"; +HOMEPAGE="https://www.suse.com"; LICENSE="GPL-2 public-domain" SLOT="0" diff --git a/ebuild-writing/functions/src_unpack/svn-sources/text.xml b/ebuild-writing/functions/src_unpack/svn-sources/text.xml index e436c97..9e7f62f 100644 --- a/ebuild-writing/funct
[gentoo-commits] proj/devmanual:master commit in: general-concepts/autotools/, appendices/editor-configuration/emacs/
commit: 5ddef787f71cd4382ca4f2f212fb4974965e14d2 Author: Francesco Turco fastmail fm> AuthorDate: Sun Apr 15 17:05:41 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Sat Apr 21 01:59:00 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=5ddef787 use HTTPS for links to gnu.org appendices/editor-configuration/emacs/text.xml | 8 general-concepts/autotools/text.xml| 8 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/appendices/editor-configuration/emacs/text.xml b/appendices/editor-configuration/emacs/text.xml index 0a5e38d..796de3c 100644 --- a/appendices/editor-configuration/emacs/text.xml +++ b/appendices/editor-configuration/emacs/text.xml @@ -78,12 +78,12 @@ provides a hook for your own customisation. -http://www.gnu.org/software/emacs/manual/html_node/emacs/Recognize-Coding.html";> - http://www.gnu.org/software/emacs/manual/html_node/emacs/Recognize-Coding.html +https://www.gnu.org/software/emacs/manual/html_node/emacs/Recognize-Coding.html";> + https://www.gnu.org/software/emacs/manual/html_node/emacs/Recognize-Coding.html -http://www.gnu.org/software/emacs/manual/html_node/emacs/Specify-Coding.html";> - http://www.gnu.org/software/emacs/manual/html_node/emacs/Specify-Coding.html +https://www.gnu.org/software/emacs/manual/html_node/emacs/Specify-Coding.html";> + https://www.gnu.org/software/emacs/manual/html_node/emacs/Specify-Coding.html http://www.emacswiki.org/emacs/UnicodeEncoding";> diff --git a/general-concepts/autotools/text.xml b/general-concepts/autotools/text.xml index beb3ff6..d57356a 100644 --- a/general-concepts/autotools/text.xml +++ b/general-concepts/autotools/text.xml @@ -661,18 +661,18 @@ For more details on autotools: - http://www.gnu.org/software/automake/manual/automake.html";> + https://www.gnu.org/software/automake/manual/automake.html";> GNU automake Manual - http://www.gnu.org/software/autoconf/manual/";>GNU autoconf Manual + https://www.gnu.org/software/autoconf/manual/";>GNU autoconf Manual - http://www.gnu.org/software/libtool/manual/";>GNU libtool Manual + https://www.gnu.org/software/libtool/manual/";>GNU libtool Manual - http://www.gnu.org/software/m4/manual/m4.html";>GNU m4 Manual + https://www.gnu.org/software/m4/manual/m4.html";>GNU m4 Manual
[gentoo-commits] proj/devmanual:master commit in: appendices/editor-configuration/emacs/
commit: d717001d2dd5b2b9d91f01edd70955e3768533e0 Author: Francesco Turco fastmail fm> AuthorDate: Sun Apr 15 17:07:36 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Sat Apr 21 01:59:04 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d717001d use HTTPS for links to emacswiki.org appendices/editor-configuration/emacs/text.xml | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/appendices/editor-configuration/emacs/text.xml b/appendices/editor-configuration/emacs/text.xml index 796de3c..29bb11e 100644 --- a/appendices/editor-configuration/emacs/text.xml +++ b/appendices/editor-configuration/emacs/text.xml @@ -86,12 +86,12 @@ provides a hook for your own customisation. https://www.gnu.org/software/emacs/manual/html_node/emacs/Specify-Coding.html -http://www.emacswiki.org/emacs/UnicodeEncoding";> -http://www.emacswiki.org/emacs/UnicodeEncoding +https://www.emacswiki.org/emacs/UnicodeEncoding";> +https://www.emacswiki.org/emacs/UnicodeEncoding -http://www.emacswiki.org/emacs/ChangingEncodings";> -http://www.emacswiki.org/emacs/ChangingEncodings +https://www.emacswiki.org/emacs/ChangingEncodings";> +https://www.emacswiki.org/emacs/ChangingEncodings
[gentoo-commits] proj/devmanual:master commit in: tasks-reference/completion/
commit: c2c2914e49e0c7543d38fed5a609fbcbc7f18d20 Author: Göktürk Yüksek gentoo org> AuthorDate: Sat Apr 14 05:55:00 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Sat Apr 14 05:55:00 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=c2c2914e tasks-reference/completion: migrate to bash-completion-r1 #652084 Closes: https://bugs.gentoo.org/652084 tasks-reference/completion/text.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tasks-reference/completion/text.xml b/tasks-reference/completion/text.xml index fd36099..ee2ce35 100644 --- a/tasks-reference/completion/text.xml +++ b/tasks-reference/completion/text.xml @@ -7,7 +7,9 @@ Since v2.05a, bash has offered intelligent programmable completion. Writing such completions for your own programs/things you maintain is relatively easy -provided you know bash already. See bash-completion.eclass +provided you know bash already. See + +bash-completion-r1.eclass for how to install completion files.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/virtuals/
commit: 2e4e9c6914c6198fd50b935989034d389053d6aa Author: Göktürk Yüksek gentoo org> AuthorDate: Tue Feb 13 16:47:13 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Tue Feb 13 16:47:13 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=2e4e9c69 general-concepts/virtuals: s/clean choice/a clean choice/ general-concepts/virtuals/text.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/general-concepts/virtuals/text.xml b/general-concepts/virtuals/text.xml index ff4995a..8eb9675 100644 --- a/general-concepts/virtuals/text.xml +++ b/general-concepts/virtuals/text.xml @@ -144,7 +144,7 @@ RDEPEND="dev-libs/newfoo:0/1" In this case, the package manager will naturally want to upgrade to dev-libs/newfoo whenever possible. Therefore, this solution -is not viable if clean choice between the two providers is desired. +is not viable if a clean choice between the two providers is desired.
[gentoo-commits] proj/devmanual:master commit in: general-concepts/virtuals/
commit: 7266aee16fa73086a1d9553ab9129013d83a4761 Author: Michał Górny gentoo org> AuthorDate: Fri Jan 12 23:23:30 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Tue Feb 13 16:43:32 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=7266aee1 general-concepts/virtuals: Tips on virtual and subslots general-concepts/virtuals/text.xml | 80 ++ 1 file changed, 80 insertions(+) diff --git a/general-concepts/virtuals/text.xml b/general-concepts/virtuals/text.xml index 4809394..ff4995a 100644 --- a/general-concepts/virtuals/text.xml +++ b/general-concepts/virtuals/text.xml @@ -70,5 +70,85 @@ RDEPEND="|| ( dev-libs/liblinux dev-libs/libbsd )" + +Virtuals and subslots + + + +This section is only applicable if virtual providers include versions that +are ABI-compatible with one another (and use matching SONAMEs) and/or +the incompatible providers are being obsoleted. + + + +Like regular packages, virtuals can define subslots that can be used +to trigger rebuilds of their reverse dependencies. For this to work, a new +version of the virtual is created for each subslot of the providers, +where each version contains dependencies on a specific subslot. + + + +For example, a virtual for different packages providing ABI-compatible +libfoo.so.1 libraries could look like the following: + + + +EAPI=6 + +DESCRIPTION="Virtual for libfoo.so.1" +SLOT="0/1" + +RDEPEND=" +|| ( +dev-libs/libfoo:0/1 +dev-libs/libfoo-alternate:0/1 +dev-libs/bigpack:0/libfoo-1+libbar-0 +dev-libs/bigpack:0/libfoo-1+libbar-1 +) +" + + + +Virtuals can also be used when one of the providers is being obsoleted in favor +of another that breaks ABI compatibility while remaining API-compatible. In this +case, multiple versions of the virtual are created, each specifying a single +provider and a unique subslot. + + + +For example, if dev-libs/libfoo (libfoo.so.0) is being replaced +by dev-libs/newfoo (libfoo.so.1), virtual/libfoo-0.ebuild +would contain: + + + +EAPI=6 + +DESCRIPTION="Virtual for libfoo.so.0" +SLOT="0/0" +RDEPEND="dev-libs/libfoo:0/0" + + + +while virtual/libfoo-1.ebuild would contain: + + + +EAPI=6 + +DESCRIPTION="Virtual for libfoo.so.1" +SLOT="0/1" +RDEPEND="dev-libs/newfoo:0/1" + + + +In this case, the package manager will naturally want to upgrade +to dev-libs/newfoo whenever possible. Therefore, this solution +is not viable if clean choice between the two providers is desired. + + + + +
[gentoo-commits] proj/devmanual:master commit in: general-concepts/virtuals/
commit: baa6f758e2f4f21b44b5db92bdba78d8c4b48021 Author: Michał Górny gentoo org> AuthorDate: Fri Jan 12 22:57:47 2018 + Commit: Göktürk Yüksek gentoo org> CommitDate: Tue Feb 13 16:43:07 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=baa6f758 general-concepts/virtuals: Explain how keywording works on virtuals general-concepts/virtuals/text.xml | 28 1 file changed, 28 insertions(+) diff --git a/general-concepts/virtuals/text.xml b/general-concepts/virtuals/text.xml index 5ba9ea5..4809394 100644 --- a/general-concepts/virtuals/text.xml +++ b/general-concepts/virtuals/text.xml @@ -42,5 +42,33 @@ from the Gentoo repository. + +KEYWORDS in virtual packages + + + +Since virtual packages do not install any files, they do not follow the regular +arch testing procedure. Instead, the developer can immediately set +the KEYWORDS of a virtual to the union of KEYWORDS of its +providers. In particular, if a new virtual is created for a stable package, +the virtual is committed straight to stable. + + + +For example, if you have two packages: dev-libs/liblinux with +KEYWORDS="amd64 ~x86" and dev-libs/libbsd with +KEYWORDS="~amd64-fbsd ~x86-fbsd", the resulting virtual will +have: + + + +KEYWORDS="amd64 ~x86 ~amd64-fbsd ~x86-fbsd" + +RDEPEND="|| ( dev-libs/liblinux dev-libs/libbsd )" + + + + +
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/maintenance-tasks/
commit: 74b1623b6414166c1091c08ee90f2d5a509c3da8 Author: Göktürk Yüksek gentoo org> AuthorDate: Wed Dec 13 18:06:09 2017 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Jan 3 05:05:41 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=74b1623b ebuild-maintenance: remove the Gentoo-Bug tag in the package removal subsection Per GLEP 66, the tags Bug and Closes should be used when referring to bugs. The example only illustrates the use of Closes per the commit message. Acked-by: Michael Orlitzky gentoo.org> Closes: https://bugs.gentoo.org/640788 ebuild-maintenance/maintenance-tasks/text.xml | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ebuild-maintenance/maintenance-tasks/text.xml b/ebuild-maintenance/maintenance-tasks/text.xml index 003d14e..5e67a46 100644 --- a/ebuild-maintenance/maintenance-tasks/text.xml +++ b/ebuild-maintenance/maintenance-tasks/text.xml @@ -458,8 +458,8 @@ from the tree: -# cd dev-util -# git rm -rf pmk +# cd dev-qt +# git rm -rf qtphonon # git commit --gpg-sign @@ -468,13 +468,13 @@ An example commit message is shown below: -commit e0bbcf8291501dc7de6b4b120d4372061367dd7a +commit b97eb6d43f45dfd5b739638928db22d3f3392685 Author: Michael Palimaka-Date: Fri Jan 29 07:11:01 2016 +1100 +Date: Tue Oct 3 21:43:03 2017 +1100 - dev-util/pmk: remove last-rited package + dev-qt/qtphonon: remove last rited package - Gentoo-bug: 541522 + Closes: https://bugs.gentoo.org/629144
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/git/
commit: 30c77a7b4c4beab3e93ab32756a2047c6e2d0d77 Author: Michał Górny gentoo org> AuthorDate: Sat Oct 14 18:27:48 2017 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Jan 3 04:38:30 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=30c77a7b ebuild-maintenance/git: Add new section on repoman commit/full ebuild-maintenance/git/text.xml | 43 ++--- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/ebuild-maintenance/git/text.xml b/ebuild-maintenance/git/text.xml index 59f1833..dfc3d5b 100644 --- a/ebuild-maintenance/git/text.xml +++ b/ebuild-maintenance/git/text.xml @@ -112,12 +112,46 @@ the historical commits after the initial git commit. +Committing and verifying commits + + + +The recommended way of committing to the Gentoo repository is to use repoman +commit. It automatically performs the necessary QA checks on the package +being committed and has other features helping with the Gentoo workflow. +However, it is currently limited to creating a single commit to a single +package. + + + +For any other use case, git commit and other git commands need to be +used. The valid uses of git include: + + + +creating commits spanning multiple packages and/or multiple areas +of the Gentoo repository (eclasses, licenses, profiles…), +amending a commit created via repoman commit with additional files +or fixups, +combining multiple commits created via repoman commit using git +rebase. + + + +Whenever repoman is not used to commit, you need to manually verify all +packages affected by the commit using repoman full. Since repoman +is not aware of staged changes, please make sure that all files are included +in the commit. + + + + + + Git Commit Policy -Always run repoman scan before you commit. -Please run repoman full before you commit. Always test that package.mask is okay by doing emerge --pretend mypkg before you commit and check that it doesn't contain any conflicts. @@ -128,11 +162,6 @@ or that is masked, then first commit the revised package.mask and/o then commit the ebuild, patches and metadata.xml all in one go . - Although the set of changes in a single git commit is atomic, and -combining package.mask/license changes with ebuild changes in a -single commit wouldn't break atomicity, it is not currently possible to do so -using repoman commit. -
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/, ebuild-maintenance/maintenance-tasks/
commit: d2e77eb8f1abe200a4c0ede569fa169c08205545 Author: Michał Górny gentoo org> AuthorDate: Sat Oct 14 09:40:48 2017 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Jan 3 01:20:19 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=d2e77eb8 Convert 'Ebuild Maintenance' into a section The committer has reflowed some of the lines past 80 characters. .../{ => maintenance-tasks}/text.xml | 62 +- ebuild-maintenance/text.xml| 670 + 2 files changed, 44 insertions(+), 688 deletions(-) diff --git a/ebuild-maintenance/text.xml b/ebuild-maintenance/maintenance-tasks/text.xml similarity index 92% copy from ebuild-maintenance/text.xml copy to ebuild-maintenance/maintenance-tasks/text.xml index 0a94d9c..ba401ca 100644 --- a/ebuild-maintenance/text.xml +++ b/ebuild-maintenance/maintenance-tasks/text.xml @@ -1,7 +1,7 @@ - + -Ebuild Maintenance +Maintenance Tasks @@ -33,17 +33,18 @@ select all possible fields, then submit the query. For you lazy people, click In general, the Gentoo repository should only be used for storing .ebuild files, as well as any relatively small companion -files, such as patches or sample configuration files. These types of -files should be placed in the /usr/portage/mycat/mypkg/files -directory to keep the main mycat/mypkg directory uncluttered. -Exceptions to this rule are for larger patch files (we recommend this for patches -above 20KB) which should be distributed as tarballs via the -Gentoo mirror system -so that people do not waste excessive amounts of bandwidth and hard drive -space. Also, you should not add binary (non-ASCII) files to the -git tree. Also, speaking of merging -changes, any patches you add to Portage should generally not be -compressed. This will allow git to merge changes and correctly inform +files, such as patches or sample configuration files. These types of +files should be placed in the +/usr/portage/mycat/mypkg/files directory to keep the main +mycat/mypkg directory uncluttered. Exceptions to this +rule are for larger patch files (we recommend this for patches above +20KB) which should be distributed as tarballs via the +Gentoo +mirror system so that people do not waste excessive amounts of +bandwidth and hard drive space. Also, you should not add binary +(non-ASCII) files to the git tree. Also, speaking of merging changes, +any patches you add to Portage should generally not be +compressed. This will allow git to merge changes and correctly inform developers of conflicts. @@ -303,7 +304,12 @@ critical issue that needs to be handled ASAP. Otherwise a soft limit of 2 to 4 weeks depending on the severity of the bug is an acceptable time frame before you go ahead and fix it yourself. - Common sense dictates to us that toolchain/base-system/core packages and eclasses or anything else which is delicate (e.g. glibc) or widely used (e.g. gtk+) should usually be left to those maintainers. If in doubt, don't touch it. + +Common sense dictates to us that toolchain/base-system/core packages +and eclasses or anything else which is delicate (e.g. glibc) or widely +used (e.g. gtk+) should usually be left to those maintainers. If in +doubt, don't touch it. + Respect developers' coding preferences. Unnecessarily changing the @@ -367,10 +373,16 @@ the team can keep an eye out for possible keywording mistakes. -Exotic architectures (like alpha, ia64, sparc, hppa, ppc*) are short on manpower, so it's best if you avoid opening stabilization bugs for them unless it is absolutely necessary (eg, a reverse dependency for your package). More about keywording policies can be found in the keywording section. +Exotic architectures (like alpha, ia64, sparc, hppa, ppc*) are short +on manpower, so it's best if you avoid opening stabilization bugs for +them unless it is absolutely necessary (eg, a reverse dependency for +your package). More about keywording policies can be found in the +keywording section. -Some architectures (like m68k, mips, s390, sh) do not maintain a stable keyword. So there is no use in marking a package stable for one of these architectures. +Some architectures (like m68k, mips, s390, sh) do not maintain a +stable keyword. So there is no use in marking a package stable for one +of these architectures. @@ -522,18 +534,20 @@ Date: Tue Nov 3 20:26:52 2015 +0100 Changing ebuild's SLOT -The process for changing the ebuild's SLOT is very similar to the previous process. -Besides changing the SLOT in the ebuild file, you also need to create a new entry -in profiles/updates/ in the Gentoo repository in the following format: +The process for changing the ebuild's SLOT is very similar to the +previous process. Besides changing the SLOT in the ebuild file, you +also need to create a new entry in profiles/updates/ in +the Gentoo repository in the following format: slotmove app-text/gtkspell 0 2
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/git/
commit: 5121332b708a733b2b52975a1100b847dcb0c60a Author: Michał Górny gentoo org> AuthorDate: Sat Oct 14 18:45:55 2017 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Jan 3 04:42:55 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=5121332b ebuild-maintenance/git: Try to describe atomic commits better (GLEP 66) ebuild-maintenance/git/text.xml | 50 ++--- 1 file changed, 37 insertions(+), 13 deletions(-) diff --git a/ebuild-maintenance/git/text.xml b/ebuild-maintenance/git/text.xml index dfc3d5b..c61589d 100644 --- a/ebuild-maintenance/git/text.xml +++ b/ebuild-maintenance/git/text.xml @@ -148,21 +148,45 @@ in the commit. -Git Commit Policy +Atomic commits - -Always test that package.mask is okay by doing -emerge --pretend mypkg before you commit and check -that it doesn't contain any conflicts. -Always commit the updated package.mask before -the updated package. -Always do atomic commits; if you commit a package with a new license, -or that is masked, then first commit the revised package.mask and/or license, -then commit the ebuild, patches -and metadata.xml all in one go -. - + +Whenever possible, use atomic commits. Try to split your changes into logical +commits, abiding by the following three rules as much as possible: + + + + +Do not include multiple irrelevant changes in a single commit. However, make +sure not to split relevant changes unnecessarily. For example, if a version bump +requires changes in the ebuild, it is correct to perform them in a single +commit. However, if you are fixing an additional bug that has been present +in the previous version, the fix belongs in a separate commit. + + + +Split commits at logical unit boundaries. When updating multiple packages, +preferably use a single commit for each package. Avoid combining changes +to ebuilds, eclasses, licenses, profiles etc. in a single commit. However, +do not split relevant or interdependent changes within a single package. + + + +Avoid creating commits introducing a temporary breakage. Unless impossible, +add packages in dependency install order. Add licenses before the packages +needing them. Commit package.mask and other profile changes before +ebuilds relying on them. Usually it is also acceptable to include those changes +along with the commit adding the package. + + + + +Please note that revision bumps count as side effects of the changes requiring +them and do not belong in separate commits. When doing multiple irrelevant +changes that require a revision bump, it is only necessary to bump the revision +in the first commit in the series introduced by a single push. +
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/git/, ebuild-maintenance/
commit: 9762a7e73d6c641bf879c5bf61fe0509a491acb8 Author: Michał Górny gentoo org> AuthorDate: Sat Oct 14 09:46:04 2017 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Jan 3 01:25:19 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=9762a7e7 ebuild-maintenance/git: Start a new section on git instructions ebuild-maintenance/git/text.xml | 16 ebuild-maintenance/text.xml | 1 + 2 files changed, 17 insertions(+) diff --git a/ebuild-maintenance/git/text.xml b/ebuild-maintenance/git/text.xml new file mode 100644 index 000..172e22c --- /dev/null +++ b/ebuild-maintenance/git/text.xml @@ -0,0 +1,16 @@ + + + +Git for Gentoo Developers + + + +This guide covers git usage instructions and policies specific to Gentoo +ebuild development. It assumes that the readers possess basic git +knowledge. For a generic guide, please see the official +https://git-scm.com/book/";>git book. + + + + + diff --git a/ebuild-maintenance/text.xml b/ebuild-maintenance/text.xml index 46ab82f..f1f759d 100644 --- a/ebuild-maintenance/text.xml +++ b/ebuild-maintenance/text.xml @@ -17,5 +17,6 @@ This section covers various tasks related to working with ebuilds. +
[gentoo-commits] proj/devmanual:master commit in: ebuild-maintenance/git/
commit: 8f6095d523d5e36ddff1f089cf612fd5fe74e75a Author: Michał Górny gentoo org> AuthorDate: Sat Oct 14 10:18:42 2017 + Commit: Göktürk Yüksek gentoo org> CommitDate: Wed Jan 3 04:29:35 2018 + URL:https://gitweb.gentoo.org/proj/devmanual.git/commit/?id=8f6095d5 ebuild-maintenance/git: Include instructions for setting up the checkout ebuild-maintenance/git/text.xml | 102 ++-- 1 file changed, 99 insertions(+), 3 deletions(-) diff --git a/ebuild-maintenance/git/text.xml b/ebuild-maintenance/git/text.xml index 172e22c..2070217 100644 --- a/ebuild-maintenance/git/text.xml +++ b/ebuild-maintenance/git/text.xml @@ -5,12 +5,108 @@ -This guide covers git usage instructions and policies specific to Gentoo -ebuild development. It assumes that the readers possess basic git -knowledge. For a generic guide, please see the official +This guide covers git usage instructions and policies specific to Gentoo ebuild +development. It assumes that the readers possess basic git knowledge. +For a generic guide, please see the official https://git-scm.com/book/";>git book. + + +Preparing a development checkout + + + +Cloning the gentoo.git repository + + + +The ebuild development happens on the official git repository. You can push +your changes only through the SSH protocol. Therefore, clone the repository +using: + + + +git clone g...@git.gentoo.org:repo/gentoo.git + + + +If you do not have SSH access to the Gentoo git service, you can use the anongit +mirror for read-only access instead: + + + +git clone https://anongit.gentoo.org/git/repo/gentoo.git + + + +Normally git will fetch the complete history from the start of git repository +(Aug 2015). This can require a significant amount of disk space. If you do not +need the full history, you can use the --depth option to create a shallow +clone, including only a subset containing the the newest commits. For example, +--depth=50 will include the 50 newest commits. + + + +Please note that git version 1.9 or newer is required to push when using +a shallow clone. + + + + + + +Configuration specific to the Gentoo repository + + + +To ensure that the Gentoo policies are followed, you should set the following +configuration variables: + + + +git config --local user.name "${YOUR_FULL_NAME}" +# use your @gentoo.org address even if you have a different default +git config --local user.email "${YOUR_NICKNAME}@gentoo.org" + +# enable commit and push signing +git config --local user.signingkey "0x${LONG_OPENPGP_KEY_ID}" +git config --local commit.gpgsign 1 +git config --local push.gpgsign 1 + +# prevent implicit merges on 'git pull' +git config --local pull.ff only + + + + + + +Grafting converted CVS history into the clone + + + +To include the converted CVS history in the git repository, you can +graft it into the repository: + + + +git remote add history https://anongit.gentoo.org/git/repo/gentoo/historical.git/ +git fetch history +git replace --graft 56bd759df1d0c750a065b8c845e93d5dfa6b549d history/master + + + +Once this is done, git commands such as git log will include +the historical commits after the initial git commit. + + + + + + + +