Hello there!
This may look like like a lot of text but it actually isn't.
Please read on. Thanks.
During the last few days rbu and I have been teaming up on a proposal
implementation improving on some of the issues that persist around
layman-global.txt. (previously summarized in [1])
Both layman and the feed aggregator (planet) behind overlays.gentoo.org
work with a database of information on repositories. These databases
are not shared so changes do not propagate. That's not cool.
What we have done for now:
- Extended layman-global.txt format to repositories.xml format adding
- A list of feed URIs
.. for the planet side
- Several source URIs
.. for mirroring and several protocols
- Owner name
i.e. the name of the person to contact
- quality classification
(core, stable, testing, experimental, graveyard)
.. to better guide users
- project/person distinction
.. for the planet side mainly
- Created DTDs and Relax NG schemas for both the old and new format
- Wrote a converter script from layman-global.txt format to
repositories.xml format and back. It also adds
"generated file" style warnings. The scripts have no dependencies
other than plain Python.
- Prepared a patch against layman trunk at r38 that adds support for
- repositories.xml format
- display of owner names (in addition to e-mail addresses)
We have more or less the following future process in mind:
- Collect feedback from the list (right now)
and adjust the format and process as needed
- Give birth to repositories.xml online
- Decide about the final web location of repositories.xml
- Put an initial repositories.xml on gentoo infra
- Set up the repositories.xml to layman-global.txt converter
script on the same machine to propagate all changes over
to layman-global.txt in an automated fashion so we can keep
it alive and up-to-date while still only editing its replacement
- Revise layman patch until wrobel wants it upstream
and put our a new layman release after
- Setup script to create planet config from repositories.xml
(Script creation is in progress.)
- Take layman-global.txt offline in a year or so
Here is a sample entry for each XML formats:
layman-global.txt
=====================================================================
<overlay
contact="sebastian@pipping.org"
name="sping" src="git://git.goodpoint.de/overlay-sping.git"
status="unofficial"
type="git">
<link>http://git.goodpoint.de/?p=overlay-sping.git</link>
<description>Gentoo overlay of Sebastian Pipping</description>
</overlay>
=====================================================================
repositories.xml
=====================================================================
<repo
name="sping"
quality="experimental"
status="unofficial">
<description>Gentoo overlay of Sebastian Pipping</description>
<homepage>http://git.goodpoint.de/?p=overlay-sping.git</homepage>
<owner type="person">
<email>sebastian@pipping.org</email>
<name>Sebastian Pipping</name>
</owner>
<source type="git">git://git.goodpoint.de/overlay-sping.git</source>
<feed>http://git.goodpoint.de/?p=overlay-sping.git.git;a=atom</feed>
</repo>
=====================================================================
The code and schemas can be found at [2].
Now please ask questions and let us know what you think.
Sebastian
[1] http://www.mail-archive.com/gentoo-dev@lists.gentoo.org/msg35095.html
[2] http://git.goodpoint.de/?p=overlays-xml-specification.git;a=summary
This may look like like a lot of text but it actually isn't.
Please read on. Thanks.
During the last few days rbu and I have been teaming up on a proposal
implementation improving on some of the issues that persist around
layman-global.txt. (previously summarized in [1])
Both layman and the feed aggregator (planet) behind overlays.gentoo.org
work with a database of information on repositories. These databases
are not shared so changes do not propagate. That's not cool.
What we have done for now:
- Extended layman-global.txt format to repositories.xml format adding
- A list of feed URIs
.. for the planet side
- Several source URIs
.. for mirroring and several protocols
- Owner name
i.e. the name of the person to contact
- quality classification
(core, stable, testing, experimental, graveyard)
.. to better guide users
- project/person distinction
.. for the planet side mainly
- Created DTDs and Relax NG schemas for both the old and new format
- Wrote a converter script from layman-global.txt format to
repositories.xml format and back. It also adds
"generated file" style warnings. The scripts have no dependencies
other than plain Python.
- Prepared a patch against layman trunk at r38 that adds support for
- repositories.xml format
- display of owner names (in addition to e-mail addresses)
We have more or less the following future process in mind:
- Collect feedback from the list (right now)
and adjust the format and process as needed
- Give birth to repositories.xml online
- Decide about the final web location of repositories.xml
- Put an initial repositories.xml on gentoo infra
- Set up the repositories.xml to layman-global.txt converter
script on the same machine to propagate all changes over
to layman-global.txt in an automated fashion so we can keep
it alive and up-to-date while still only editing its replacement
- Revise layman patch until wrobel wants it upstream
and put our a new layman release after
- Setup script to create planet config from repositories.xml
(Script creation is in progress.)
- Take layman-global.txt offline in a year or so
Here is a sample entry for each XML formats:
layman-global.txt
=====================================================================
<overlay
contact="sebastian@pipping.org"
name="sping" src="git://git.goodpoint.de/overlay-sping.git"
status="unofficial"
type="git">
<link>http://git.goodpoint.de/?p=overlay-sping.git</link>
<description>Gentoo overlay of Sebastian Pipping</description>
</overlay>
=====================================================================
repositories.xml
=====================================================================
<repo
name="sping"
quality="experimental"
status="unofficial">
<description>Gentoo overlay of Sebastian Pipping</description>
<homepage>http://git.goodpoint.de/?p=overlay-sping.git</homepage>
<owner type="person">
<email>sebastian@pipping.org</email>
<name>Sebastian Pipping</name>
</owner>
<source type="git">git://git.goodpoint.de/overlay-sping.git</source>
<feed>http://git.goodpoint.de/?p=overlay-sping.git.git;a=atom</feed>
</repo>
=====================================================================
The code and schemas can be found at [2].
Now please ask questions and let us know what you think.
Sebastian
[1] http://www.mail-archive.com/gentoo-dev@lists.gentoo.org/msg35095.html
[2] http://git.goodpoint.de/?p=overlays-xml-specification.git;a=summary