public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/
@ 2012-11-11 19:33 Markos Chandras
  0 siblings, 0 replies; 6+ messages in thread
From: Markos Chandras @ 2012-11-11 19:33 UTC (permalink / raw
  To: gentoo-commits

commit:     e05bdc89da53cd6aa538396d44c0723c7c53ae84
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Sat Nov  3 21:47:55 2012 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Sun Nov 11 19:32:24 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=e05bdc89

ebuild-maintenance: Add cvs and other portage rules from devrel hb

---
 ebuild-writing/ebuild-maintenance/text.xml |  139 ++++++++++++++++++++++++++++
 1 files changed, 139 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/ebuild-maintenance/text.xml b/ebuild-writing/ebuild-maintenance/text.xml
index 133fe93..3915476 100644
--- a/ebuild-writing/ebuild-maintenance/text.xml
+++ b/ebuild-writing/ebuild-maintenance/text.xml
@@ -13,6 +13,78 @@ developers may not be familiar with.
 <section>
 <title>Adding a new ebuild</title>
 <body>
+
+<subsection>
+<title>What (not) to put in the Portage tree</title>
+<body>
+
+<p>
+Before writing a new ebuild, check 
+<uri link="http://bugs.gentoo.org/">bugs.gentoo.org</uri> 
+to see if an ebuild has already been written for the package, but has not yet 
+been added to the Portage tree.  Go to <uri 
+link="http://bugs.gentoo.org/">bugs.gentoo.org</uri>, choose query and select 
+Advanced Search; as product select <e>Gentoo Linux</e>, as component select 
+<e>ebuilds</e>.  In the search field put the name of the ebuild and as status 
+select NEW, ASSIGNED, REOPENED and RESOLVED (RESOLVED is important), then 
+submit the query.  For you lazy people, click <uri 
+link="http://bugs.gentoo.org/query.cgi?product=Gentoo%20Linux&amp;component=Ebuilds&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;bug_status=RESOLVED">here</uri>.
+</p>
+
+<p>
+In general, the Portage tree should only be used for storing 
+<path>.ebuild</path> 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 <path>/usr/portage/mycat/mypkg/files</path>
+directory to keep the main <path>mycat/mypkg</path> directory uncluttered.
+Exceptions to this rule are for larger patch files (we recommend this for patches
+above 20KB) which should be put onto the Gentoo mirrors 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
+Portage CVS tree. If you need to do this in another CVS tree, for
+example, if you need to add a small PNG graphic for whatever reason,
+be sure to add it to CVS by using the <c>-kb</c> option, like so:
+</p>
+
+<pre caption="Adding binary files to CVS">
+# <i>cvs add -kb myphoto.png</i>
+</pre>
+
+<p>
+The <c>-kb</c> option tells CVS that <path>myphoto.png</path> is a binary
+file and should be treated specially.  For example, merging the 
+differences between two different versions of this file should not be 
+allowed to happen, for obvious reasons.  Also, speaking of merging 
+changes, any patches you add to Portage should generally <e>not</e> be 
+compressed.  This will allow CVS to merge changes and correctly inform 
+developers of conflicts.
+</p>
+
+<p>
+Remember, the packages that you commit must be <e>ready</e> <e>out of the 
+box</e> for end users when committed as stable.  Make sure that you have a good 
+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 
+<uri link="http://cvs.mandriva.com/cgi-bin/viewvc.cgi/SPECS/">Mandriva</uri>
+or <uri link="http://www.debian.org/distrib/packages">Debian</uri> or 
+<uri link="http://cvs.fedora.redhat.com/">Fedora</uri> for some 
+examples.
+</p>
+
+<p>
+When committing to CVS, all developers should use <c>repoman commit</c> 
+instead of <c>cvs commit</c> to submit their ebuilds.  Before committing, 
+please run <c>repoman full</c> to make sure you didn't forget something.
+</p>
+
+</body>
+</subsection>
+
+<subsection>
+<title>Initial Architecture Keywords</title>
+<body>
 <p>
 When adding a new ebuild, you should only include <c>KEYWORDS</c> for
 architectures on which you have actually tested the ebuild, confirming
@@ -33,6 +105,73 @@ work on those architectures.
 </p>
 
 </body>
+</subsection>
+
+<subsection>
+<title>CVS Commit Policy</title>
+<body>
+
+<ul>
+<li>Always run <c>repoman scan</c> before you commit.</li>
+<li>Please run <c>repoman full</c> before you commit.</li>
+<li>Always test that <path>package.mask</path> is okay by doing 
+<c>emerge --pretend mypkg</c> before you commit and check 
+that it doesn't contain any conflicts.</li>
+<li>Always update the <path>ChangeLog</path> before you commit.</li>
+<li>Always commit the updated <path>package.mask</path> before 
+the updated package, in case conflicts occur while you commit 
+<path>package.mask</path>.</li>
+<li>Always do atomic commits; if you commit a package with a new license, 
+or that is masked, then first commit the revised <path>package.mask</path> and/or license, 
+then commit the ebuild, <path>ChangeLog</path>, patches
+and <uri link="::ebuild-writing/misc-files/metadata">metadata.xml</uri> all in <b>one</b> go
+to avoid breaking users' installations.</li>
+</ul>
+
+</body>
+</subsection>
+
+<subsection>
+<title>The files Directory</title>
+<body>
+
+<p>
+As noted earlier, under each package subdirectory is
+a <path>files/</path> directory. Any patches, configuration files, or
+other ancillary files your package might require should be added to
+this directory; any files bigger than 20KB-or-so should go to the
+mirrors to lower the amount of (unneeded) files our users have to
+download. You may want to consider naming patches you create yourself
+just to get your package to build with a version-specific name, such
+as <path>mypkg-1.0-gentoo.diff</path>, or more
+simply, <path>1.0-gentoo.diff</path>.  Also note that the
+<path>gentoo</path> extension informs people that this patch was created 
+by us, the Gentoo Linux developers, rather than having been grabbed from a 
+mailing list or somewhere else. Again, you should not compress these 
+patches because CVS does not play well with binary files.
+</p>
+
+<p>
+Consider prefixing or suffixing (such as <path>mypkg-1.0</path>) every file 
+you put into the <path>files/</path> directory, so that the files used for 
+each individual version on an ebuild are distinguishable from one another, and 
+so that the changes between different revisions are visible.  This is generally 
+a really good idea :).  You may want to use a different suffix if you wish to 
+convey more meaning with the patch name.
+</p>
+
+<p>
+If you have many files that should go into the <path>files/</path> directory, 
+consider creating subdirectories such as <path>files/1.0/</path> and putting the
+relevant files in the appropriate subdirectory.  If you use this method, 
+you do not need to add version information to the names of the files, 
+which is often more convenient.
+</p>
+
+</body>
+</subsection>
+
+</body>
 </section>
 
 <section>


^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/
@ 2013-02-16  0:03 Markos Chandras
  0 siblings, 0 replies; 6+ messages in thread
From: Markos Chandras @ 2013-02-16  0:03 UTC (permalink / raw
  To: gentoo-commits

commit:     fbc1b8fb9c98d34bdade68a4bbb6b17eba699e74
Author:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 15 23:59:58 2013 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Fri Feb 15 23:59:58 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=fbc1b8fb

ebuild-writing/ebuild-maintainance: Add note about exotic arches. Bug #453378

---
 ebuild-writing/ebuild-maintenance/text.xml |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/ebuild-maintenance/text.xml b/ebuild-writing/ebuild-maintenance/text.xml
index 3915476..d056c78 100644
--- a/ebuild-writing/ebuild-maintenance/text.xml
+++ b/ebuild-writing/ebuild-maintenance/text.xml
@@ -230,6 +230,10 @@ of the massive range of hardware involved, being on the mips alias and
 having access to a variety of MIPS systems are generally requirements.
 </p>
 
+<p>
+Exotic architectures (like alpha, ia64, s390, sh, 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 <uri link="::keywording">keywording</uri> section.
+</p>
+
 </body>
 </section>
 


^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/
@ 2013-03-17 22:57 Julian Ospald
  0 siblings, 0 replies; 6+ messages in thread
From: Julian Ospald @ 2013-03-17 22:57 UTC (permalink / raw
  To: gentoo-commits

commit:     1ce290eb9f03ced4348078e0b3c8b18ce6caf996
Author:     hasufell <julian.ospald <AT> googlemail <DOT> com>
AuthorDate: Sun Mar 17 22:56:53 2013 +0000
Commit:     Julian Ospald <julian.ospald <AT> googlemail <DOT> com>
CommitDate: Sun Mar 17 22:56:53 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=1ce290eb

add "Touching other developers ebuilds" section wrt #445402

---
 ebuild-writing/ebuild-maintenance/text.xml |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/ebuild-writing/ebuild-maintenance/text.xml b/ebuild-writing/ebuild-maintenance/text.xml
index 35af736..c228074 100644
--- a/ebuild-writing/ebuild-maintenance/text.xml
+++ b/ebuild-writing/ebuild-maintenance/text.xml
@@ -175,6 +175,14 @@ which is often more convenient.
 </section>
 
 <section>
+<title>Touching other developers ebuilds</title>
+<body>
+<p>Usually you don't just change other developers ebuilds without permission unless you know that developer does not mind or if you are part of the herd involved in maintenance (this information can typically be found in metadata.xml). Start with filing a bug or trying to catch them on IRC or via email. Sometimes you cannot reach them, or there is no response to your bug. It's a good idea to consult other developers on how to handle the situation, especially if it's a 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.</p> 
+<important> 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.</important>
+</body>
+</section>
+
+<section>
 <title>Stabilizing ebuilds</title>
 <body>
 


^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/
@ 2013-08-23 15:50 Johann Schmitz
  0 siblings, 0 replies; 6+ messages in thread
From: Johann Schmitz @ 2013-08-23 15:50 UTC (permalink / raw
  To: gentoo-commits

commit:     8d717dda93e8a9a5425ff9e4fe194f1df946d15f
Author:     Johann Schmitz <ercpe <AT> gentoo <DOT> org>
AuthorDate: Fri Aug 23 13:49:53 2013 +0000
Commit:     Johann Schmitz <ercpe <AT> gentoo <DOT> org>
CommitDate: Fri Aug 23 13:49:53 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=8d717dda

Linked the mirror page from the ebuild maintenance page.

Reworded the surrounding sentence to remove the ambiguity regarding the place of the patch tarballs.

---
 ebuild-writing/ebuild-maintenance/text.xml | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/ebuild-writing/ebuild-maintenance/text.xml b/ebuild-writing/ebuild-maintenance/text.xml
index c228074..4b57815 100644
--- a/ebuild-writing/ebuild-maintenance/text.xml
+++ b/ebuild-writing/ebuild-maintenance/text.xml
@@ -38,8 +38,9 @@ files, such as patches or sample configuration files.  These types of
 files should be placed in the <path>/usr/portage/mycat/mypkg/files</path>
 directory to keep the main <path>mycat/mypkg</path> directory uncluttered.
 Exceptions to this rule are for larger patch files (we recommend this for patches
-above 20KB) which should be put onto the Gentoo mirrors so that people
-do not waste excessive amounts of bandwidth and hard drive
+above 20KB) which should be distributed as tarballs via the
+<uri link="::general-concepts/mirrors/#suitable-download-hosts">Gentoo mirror system</uri>
+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
 Portage CVS tree. If you need to do this in another CVS tree, for
 example, if you need to add a small PNG graphic for whatever reason,


^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/
@ 2013-09-26  7:41 Markos Chandras
  0 siblings, 0 replies; 6+ messages in thread
From: Markos Chandras @ 2013-09-26  7:41 UTC (permalink / raw
  To: gentoo-commits

commit:     b092fa847e2af0993bc81d4d18918ecc2c6d6692
Author:     Manuel Rüger <mrueg <AT> rueg <DOT> eu>
AuthorDate: Thu Sep 26 03:19:45 2013 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Thu Sep 26 03:19:45 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=b092fa84

Add note about architectures that don't have a stable keyword.

---
 ebuild-writing/ebuild-maintenance/text.xml | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/ebuild-writing/ebuild-maintenance/text.xml b/ebuild-writing/ebuild-maintenance/text.xml
index c228074..2959b50 100644
--- a/ebuild-writing/ebuild-maintenance/text.xml
+++ b/ebuild-writing/ebuild-maintenance/text.xml
@@ -233,9 +233,11 @@ the team can keep an eye out for possible keywording mistakes.
 </p>
 
 <p>
-Exotic architectures (like alpha, ia64, s390, sh, 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 <uri link="::keywording">keywording</uri> 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 <uri link="::keywording">keywording</uri> section.
+</p>
+<p>
+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.
 </p>
-
 </body>
 </section>
 


^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/
@ 2014-10-18 17:35 Markos Chandras
  0 siblings, 0 replies; 6+ messages in thread
From: Markos Chandras @ 2014-10-18 17:35 UTC (permalink / raw
  To: gentoo-commits

commit:     e629201c5295b0e33040a1c6bf84174d3232bae6
Author:     Manuel Rüger <mrueg <AT> gentoo <DOT> org>
AuthorDate: Mon Jul 21 15:13:06 2014 +0000
Commit:     Markos Chandras <hwoarang <AT> gentoo <DOT> org>
CommitDate: Fri Jul 25 15:45:52 2014 +0000
URL:        http://sources.gentoo.org/gitweb/?p=proj/devmanual.git;a=commit;h=e629201c

Add paragraph regarding packages without existing HOMEPAGE

See Dev-ML discussion: http://article.gmane.org/gmane.linux.gentoo.devel/92024
As proposed in https://bugs.gentoo.org/show_bug.cgi?id=517644#c6

---
 ebuild-writing/ebuild-maintenance/text.xml | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/ebuild-writing/ebuild-maintenance/text.xml b/ebuild-writing/ebuild-maintenance/text.xml
index 290b5df..4fa3a8b 100644
--- a/ebuild-writing/ebuild-maintenance/text.xml
+++ b/ebuild-writing/ebuild-maintenance/text.xml
@@ -468,6 +468,20 @@ won't overwrite them).
 </body>
 </section>
 
+<section>
+<title>Homepage unavailable</title>
+<body>
+
+<p>
+If the <c>HOMEPAGE</c> of your package seems to be unavailable or it 
+never existed at all, please set the HOMEPAGE variable in every ebuild
+to <uri link="https://wiki.gentoo.org/wiki/No_homepage">
+https://wiki.gentoo.org/wiki/No_homepage</uri>
+</p>
+
+</body>
+</section>
+
 </body>
 </chapter>
 </guide>


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-10-18 17:36 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-11 19:33 [gentoo-commits] proj/devmanual:master commit in: ebuild-writing/ebuild-maintenance/ Markos Chandras
  -- strict thread matches above, loose matches on Subject: below --
2013-02-16  0:03 Markos Chandras
2013-03-17 22:57 Julian Ospald
2013-08-23 15:50 Johann Schmitz
2013-09-26  7:41 Markos Chandras
2014-10-18 17:35 Markos Chandras

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox