[DRE-commits] [SCM] gem2deb.git branch, master, updated. 9da0b9e1b428f9c61a3fabd74440b700292d5697
Vincent Fourmond
fourmond at debian.org
Mon May 2 14:22:51 UTC 2011
The following commit has been merged in the master branch:
commit 9da0b9e1b428f9c61a3fabd74440b700292d5697
Author: Vincent Fourmond <fourmond at debian.org>
Date: Mon May 2 16:22:20 2011 +0200
Moving away the Ruby policy to its own package
diff --git a/ruby-policy/ruby-policy.xml b/ruby-policy/ruby-policy.xml
deleted file mode 100644
index 17855f9..0000000
--- a/ruby-policy/ruby-policy.xml
+++ /dev/null
@@ -1,294 +0,0 @@
-<?xml version='1.0'?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
- "/usr/share/sgml/docbook/dtd/4.1/docbook.dtd"
-[
-<!ENTITY must "<emphasis>must</emphasis>">
-<!ENTITY mustnot "<emphasis>must not</emphasis>">
-<!ENTITY may "<emphasis>may</emphasis>">
-<!ENTITY should "<emphasis>should</emphasis>">
-<!ENTITY pkg "<emphasis>pkg</emphasis>">
-<!ENTITY debian-policy "http://www.debian.org/doc/debian-policy">
-<!ENTITY dr-ldo "<email>debian-ruby at lists.debian.org</email>">
-]>
-
-<!--
- This is the Debian Ruby Policy
-
- Copyright 2011 by Vincent Fourmond
-
- 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 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- This document is greatly inspired from the Debian Java Policy
- -->
-<book>
- <bookinfo>
- <title>Debian Ruby policy draft</title>
- <authorgroup>
- <author>
- <surname>Fourmond</surname>
- <firstname>Vincent</firstname>
- <authorblurb>
- <para>
- <email>fourmond at debian.org</email>
- </para>
- </authorblurb>
- </author>
- <author>
- <othername>the Debian Ruby mailing list</othername>
- <authorblurb>
- <para>
- &dr-ldo;
- </para>
- <para>
- Most of the points of this document were discussed in the
- Debian Ruby mailing list.
- </para>
- </authorblurb>
- </author>
- </authorgroup>
- <abstract>
- <title>Abstract</title>
- <para>
- This is the ruby policy for Debian.
- </para>
- </abstract>
- </bookinfo>
-
- <chapter id="background">
- <title>Background</title>
-
- <para>
- There are several <quote>subpolicies</quote> in Debian. Their
- purpose is to provide guidelines and packaging requirements in
- addition to the <ulink url="&debian-policy;">Debian
- Policy</ulink> when specific topic are concerned, such as
- packages providing Perl libraries, Emacs extensions...
- </para>
-
- <para>
- Similarly to the other subpolicies, the aim of the Debian Ruby
- Policy is to unify the packaging of Ruby libraries and programs
- under a single well-defined structure that packagers and users
- alike can rely on.
- </para>
-
- <para>
- An important feature of Ruby is that there are quite a few
- different implentations of the Ruby language, first of all the
- different versions of the mainstream implementation (1.8 and
- 1.9.2), but also other implementations, such as JRuby and
- Rubinius for instance. One of the aims of this policy is to make
- it as painless as possible for different versions of the Ruby
- language to coexist and to share code (in as far as it is
- technically possible).
- </para>
-
-
- <para>
- As packaging practices and Ruby-related technologies evolve over
- time, this Policy is to some extent a permanent
- <quote>work-in-progress</quote>. Please feel free to comment and
- suggest improvements on the &dr-ldo; mailing list.
- </para>
-
- </chapter>
-
- <chapter id="policy">
- <title>Policy</title>
-
- <para>
- Only the present chapter contains the actual policy,
- i.e. normative statements about how Ruby-related packages should
- be organized. The verbs &must;, &mustnot;, &may; and &should;
- are used with the same meanings as in the <ulink
- url="&debian-policy;">Debian Policy</ulink>.
- </para>
-
- <para>
- Here a descroiption of the main points
- </para>
-
- <sect1 id="interpreters">
- <title>Ruby interpreters</title>
-
- <para>
- Requirements for the interpreters (load path, virtual packages
- provided...)
- </para>
- </sect1>
-
- <sect1 id="libraries">
- <title>Ruby libraries</title>
-
- <para>
- By library, we mean <quote>every package that contains ruby
- code and is not a Ruby interpreter</quote>. In particular,
- this also includes programs not necessarily meant to be used
- as libraries. For programs additional requirements and/or
- relaxing of some requirements listed here apply, see next
- section.
- </para>
-
- <sect2>
- <title>Package names</title>
- <para>
- All binary packages that contains Ruby code &must; have a
- package name in the form <literal>ruby-</literal>&pkg;,
- where &pkg; is left to the choice of the packager. However,
- packagers &may; ignore this rule in the following cases:
- <itemizedlist>
- <listitem>
- <para>
- ruby interpreters;
- </para>
- </listitem>
-
- <listitem>
- <para>
- programs;
- </para>
- </listitem>
-
- <listitem>
- <para>
- packages providing ruby code to be use specifically as
- plugins for a given program, and that have no use
- outside of this program.
- </para>
- </listitem>
- </itemizedlist>
- The source package name &should; match the name of package
- that holds the code.
- </para>
- <para>
- In the case of software previoulsy relased with the old
- package name policy
- (<literal>lib-</literal>&pkg;<literal>-ruby</literal> and
- versioned variants thereof), packagers &should; provide
- transition packages with the old names depending on the new
- package.
- </para>
- </sect2>
-
- <sect2>
- <title>Supported Ruby implementations</title>
- <para>
- Packages &should; support as many different implementations
- of Ruby as is possible. Reasons why this is not done
- &should; be documented visibly, such as in the
- <filename>README.Debian</filename> file.
- </para>
- <para>
- Packages &must; list the versions of Ruby supported in the
- source package using the <literal>XS-Ruby-Versions</literal>
- statement in <filename>debian/control</filename>. This
- statement &must; be a space-separated list of one or more of
- <literal>ruby1.8</literal>, <literal>ruby1.9</literal> or
- <literal>all</literal> (the latter meaning all the supported
- Ruby versions).
- </para>
- <para>
- All files for the different implementations &must; be
- shipped inside a single binary package. This binary package
- &must; have a <literal>XB-Ruby-Versions</literal> statement
- containing the space-separated list of Ruby implementations
- supported by the binary package, with fields identical to
- those for the source package, excepted that
- <literal>all</literal> cannot be used: the full list &must;
- be listed explicitly.
- </para>
- </sect2>
- <sect2>
- <title>Installation paths</title>
- <para>
- Pure ruby code (ie ruby files) &must; be installed under
- <filename>/usr/lib/ruby/vendor_ruby</filename>.
- </para>
- <para>
- Compiled extensions &must; be installed in the
- <literal>'vendorarchdir'</literal> path.
- </para>
- </sect2>
-
- <sect2>
- <title>Dependencies</title>
- <para>
- All package &must; depend either on <literal>ruby1.8 |
- ruby-interpreter</literal> if the package supports all
- implementations of Ruby or on the specific implementations
- needed if that is not the case.
- </para>
- </sect2>
-
- <sect2>
- <title>Documentation</title>
- <para>
- Packages &may; build a <literal>rdoc</literal>
- documentation. Unless the documentation is really small, it
- &should; be packaged in a separate binary package named
- <literal>ruby-</literal>&pkg;<literal>-doc</literal>.
- </para>
- </sect2>
-
- <sect2>
- <title>Rubygems</title>
- <para>
- Do we disallow the use of <literal>require
- 'rubygems'</literal> by policy ?
- </para>
- </sect2>
-
- </sect1>
-
- <sect1 id="programs">
- <title>Ruby programs</title>
-
- <para>
- Excepted for the package name, which does not have to comply
- to any rules, Ruby programs &must; obey all rules that apply
- to Ruby libraries (previous sections). In addition, they must
- obey the following rules.
- </para>
-
- <sect2>
- <title>Shebang</title>
- <para>
- All the programs &must; have a <literal>#!
- /usr/bin/ruby1.8</literal> shebang, unless they rely on
- implementation specific libraries, in which case the shebang
- should reflect these requirements.
- </para>
- </sect2>
- </sect1>
-
-
- </chapter>
-
- <chapter id="advices">
- <title>Advices to Ruby packagers</title>
-
- <para>
- The contents of this chapter are not part of the Policy per
- se. However, they should prove useful for developers wishing to
- package Ruby-related packages.
- </para>
-
- <para>
- Nothing here yet.
- </para>
-
-
- </chapter>
-
-</book>
--
gem2deb.git
More information about the Pkg-ruby-extras-commits
mailing list