Welcome to Soft32 Linux Forums!
FAQFAQ    SearchSearch      ProfileProfile    Private MessagesPrivate Messages   Log inLog in

[gentoo-dev] [rfc] layman-global.txt, repositories.xml, la..

 
   Soft32 Home -> Linux -> Development RSS
Next:  Accepted mysql-dfsg-5.1 5.1.39-1 (source all amd6..  
Author Message
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 1) Posted: Mon Sep 28, 2009 3:20 pm
Post subject: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org
Archived from groups: linux>gentoo>dev (more info?)

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
Back to top
Login to vote
volkmar

External


Since: Sep 29, 2009
Posts: 1



(Msg. 2) Posted: Tue Sep 29, 2009 5:20 pm
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

On Mon, Sep 28, 2009 at 08:23:34PM +0200, Sebastian Pipping wrote:
> Hello there!
>
>
> This may look like like a lot of text but it actually isn't.
> Please read on. Thanks.

Thanks for your good work.
I agree with your changes it was indeed needed.

Actually, during my GSOC, I've noted layman-global.txt should be changed
to have a cleanier description information and it's probably the moment
to introduce this.

At the moment, <description> is used for very short descriptions:
<description>Arcon Overlay!</description>
or quite longer:
<description>A collection of Bazaar-related ebuilds, including release candidates of Bazaar.</description>
even ery long:
<description>Berkano overlay provides an overlay for Gentoo Linux with
ebuilds of bleeding edge software (such as live subversion builds) and other handy tools that are missing from the official portage tree. Areas of interest include multimedia and system administration.</description>

layman is a cli so it doesn't really care of the description lenght but
it's a pain to use in a GUI like PackageKit repository list. I think we
should introduce a <longdescription> field even with a lang parameter
like we already have in metadata.xml. So, description field will have to
be used for short descriptions (a few words) to complete the name of the
overlay like:
<description>experimental gnome ebuilds</description>

I don't think DTD have abilities to restrict field value lenght but even
if we will have to change a few <description> by hands, having a
<longdescription> field could help.

Sebastian, do you think you can add this to your set of changes ? (only
the new field in the DTD at the moment).

Thanks,
Mounir
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 3) Posted: Tue Sep 29, 2009 11:20 pm
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

volkmar.TakeThisOut@gentoo.org wrote:
> I think we
> should introduce a <longdescription> field even with a lang parameter
> like we already have in metadata.xml.

Done.
http://git.goodpoint.de/?p=overlays-xml-specification.git;a=commit;h=c...394fe1a



Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 4) Posted: Wed Sep 30, 2009 11:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Tiziano Müller wrote:
> Am Montag, den 28.09.2009, 20:23 +0200 schrieb Sebastian Pipping:
>> 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>
>> =====================================================================
>
> What is the reason that "name" is an attribute? While quality, status
> and type have a distinct set of allowed values, name doesn't and I'd
> therefore set it as an element instead.

I don't see value in that change and I like name as it is.


> How about adding an attribute "lang" to <description> to be able to give
> descriptions in different languages?

Done.
http://git.goodpoint.de/?p=overlays-xml-specification.git;a=commitdiff...f7d068d



Sebastian
Back to top
Login to vote
Fabian Groffen

External


Since: Nov 23, 2006
Posts: 15



(Msg. 5) Posted: Wed Sep 30, 2009 11:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

On 30-09-2009 17:36:47 +0200, Sebastian Pipping wrote:
> Tiziano Müller wrote:
> > Am Montag, den 28.09.2009, 20:23 +0200 schrieb Sebastian Pipping:
> >> 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>
> >> =====================================================================
> >
> > What is the reason that "name" is an attribute? While quality, status
> > and type have a distinct set of allowed values, name doesn't and I'd
> > therefore set it as an element instead.
>
> I don't see value in that change and I like name as it is.

Point remains that it looks in-consistant, for repo, name is an
attribute, while for owner it is a sub-element. Why having attributes
in the first place anyway?
It's XML, so it may be extremely annoying to parse/use.


--
Fabian Groffen
Gentoo on a different level
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 6) Posted: Wed Sep 30, 2009 11:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Ciaran McCreesh wrote:
> On Mon, 28 Sep 2009 20:23:34 +0200
> Sebastian Pipping <webmaster DeleteThis @hartwork.org> wrote:
>> Now please ask questions and let us know what you think.
>
> Here's an alternative idea:
>
> * Move the repository information into the overlays themselves. Require
> overlays to provide a file containing the description, homepage,
> owner information etc.

I have created another script yesterday that can auto-merge information
from gitosis.conf into repositories.xml. With that script in a Git hook
setting up new Git-based Gentoo-hosted overlays requires changes at only
an single place and propagates to repositories.xml and
layman-global.txt. (The only extension needed to make it work is adding
a line "gentoo-is-overlay = True" to Git repos that are overlays in
gitosis.conf. The "gentoo-" prefix is meant as a namespace and gitosis
upstream confirmed that this works without interfering with gitosis itself.)

At the moment moving overlay meta info into the overlays does not seem
like a good idea to. It would mean that any script working with
overlays needs to check the repo out to get to that data. That doesn't
sound like fun to me.


> Sounds like a perfect opportunity to make sure that everything in
> layman's still actively maintained and developed.

Let me second that.



Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 7) Posted: Wed Sep 30, 2009 11:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Fabian Groffen wrote:
> Point remains that it looks in-consistant, for repo, name is an
> attribute, while for owner it is a sub-element. Why having attributes
> in the first place anyway?

It's closer to the original layman-global.txt which also makes the
converter scripts simpler (and faster) than the element approach. I
think it's just right.


> It's XML, so it may be extremely annoying to parse/use.

Please elaborate on that.



Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 8) Posted: Wed Sep 30, 2009 11:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Ciaran McCreesh wrote:
> On Wed, 30 Sep 2009 17:51:02 +0200
> Sebastian Pipping <webmaster DeleteThis @hartwork.org> wrote:
>> At the moment moving overlay meta info into the overlays does not seem
>> like a good idea to. It would mean that any script working with
>> overlays needs to check the repo out to get to that data. That
>> doesn't sound like fun to me.
>
> No, you can copy the data into your master file. It's just that the
> original source of the data would be the repository, not the person
> adding the repository to the list.

If it can change, it needs to be kept in sync. I really don't think it
belongs in there.



Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 9) Posted: Wed Sep 30, 2009 1:20 pm
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Ciaran McCreesh wrote:
> Sure. Just periodically fetch the repository centrally. Have a master
> list of sync URLs with expected repository names, and use that to
> generate the full master list that includes metadata.
>
> Added bonus: you can quickly remove any repository that no longer
> exists.

How long do you want the time frame for add-meta-data-or-get-kicked
to be? If half the repos don't not make it will kicking them help
anybody? What if that metadata format changes later or is extended by
additional required entries?



Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 10) Posted: Thu Oct 01, 2009 9:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Tiziano Müller wrote:
>> What if that metadata format changes later or is extended by
>> additional required entries?
> How about using the power of xml and version the schemas? As long as the
> metadata-file specifies the respective dtd/xsd/relaxng you know exactly
> how to validate (and parse) it and may apply a xsl-trafo if necessary to
> convert it to a new format on the fly. As long as you keep using xml you
> can then change the complete format in a new schema version.

We are version the schemas already. My point is that we would need to
wait for the overlay maintainers once again to update their metadata.
Transforming does not save us as we are missing new data.


Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Dec 30, 2008
Posts: 58



(Msg. 11) Posted: Thu Oct 01, 2009 11:20 am
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

Tiziano Müller wrote:
> A simple rule of thumb is: use attributes for values with predefined
> contents, use elements otherwise. So, make "name" an element please.

Okay, let's give it a try.

http://git.goodpoint.de/?p=overlays-xml-specification.git;a=commitdiff...8b10c5c



Sebastian
Back to top
Login to vote
Sebastian Pipping

External


Since: Oct 03, 2009
Posts: 3



(Msg. 12) Posted: Fri Oct 02, 2009 9:20 pm
Post subject: Re: [gentoo-dev] [rfc] layman-global.txt, repositories.xml, layman, overlays.gentoo.org [Login to view extended thread Info.]
Archived from groups: per prev. post (more info?)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Sebastian Pipping wrote:
> I have created another script yesterday that can auto-merge information
> from gitosis.conf into repositories.xml. With that script in a Git hook
> setting up new Git-based Gentoo-hosted overlays requires changes at only
> an single place and propagates to repositories.xml and
> layman-global.txt.

A post-update Git hook seems to be working well, code here:

http://git.goodpoint.de/?p=overlays-xml-specification.git;a=blob;f=pos...pdate.s


I have sent a patch for layman to Gunnar already. Let's see if he likes it.



Sebastian

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkrGmz8ACgkQsAvGakAaFgDmNQCgq6IkOXgRC3SAMpUkleBwPYer
xboAn2gijL3U0fbsylFIfoe280vpO48i
=uM1k
-----END PGP SIGNATURE-----
Back to top
Login to vote
Display posts from previous:   
Related Topics:
[gentoo-dev] two new global USE - any reason we dont have openal and xine has global USE ? both are semi-common multimedia libraries ... openal:..

[gentoo-dev] New Global USE: crossdev - Like to get people's opinions on a new global USE flag for crossdev. This would be needed because there are some..

[gentoo-dev] New Global Useflag: wlan - Hi, There has already been some discussion about a new wireless use flag (especially for kdenetwork). Some peopled..

[gentoo-dev] New global use flag "multilib" - Hi @ll Mea culpa ! I added "multilib" as a useflag to the portage ebuild without recognizing that it was ye...

[gentoo-dev] new global use flag and a new category - The kde herd wants to give everyone the possibility to configure with --enable-final via the "final" use fla...

[gentoo-dev] move USE=lua to global - anyone care if i move the lua USE flag to global scope ? noticed it was still local when bumping swig ... ..
       Soft32 Home -> Linux -> Development All times are: Pacific Time (US & Canada) (change)
Page 1 of 1

 
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Categories:
 Windows
  Linux
 Mac
 PDA


[ Contact us | Terms of Service/Privacy Policy ]