[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFC deb822 sources.list format



Hi Anthony,

thanks for your feedback!

On Sun, Jan 19, 2014 at 01:52:49PM +0000, Anthony Towns wrote:
> On Fri, Jan 17, 2014 at 08:59:22PM +0100, Michael Vogt wrote:
[..]
> It might be sensible to have a Key or Keyring field here, so that you can
> say debian archives should be signed by the Debian key, and your personal
> archive should be signed by your personal key, but not vice-versa. Having
> an "Allow-Unsigned: yes" option to let you have a local repo that doesn't
> have a signed Release file while still validating the main Debian archive
> could also improve security over having apps just disable sig checking
> globally.

Indeed, that is a good idea. Needs a bit of infrastructure inside apt
first.

> It would be wonderful if you could specify basic apt-pinning bits here, so
> that you could say something like:
> 
>   Type: deb deb-src
>   URI: http://mirror.home.lan/debian
>   Suite: testing
>   Section: main contrib
>   Default-Release: yes
> 
>   Type: deb deb-src
>   URI: http://mirror.home.lan/debian
>   Suite: unstable experimental
>   Section: main contrib
>   Pin-Priority: 50

I like that idea, I wonder if people might get confused by having two
places, but my gut-feeling is that most of the pinning use-cases could
well be served here instead of the extra "preferences" file. I will
look into that and see what can be done here.

> Hmm, looking at things yum supports for its yum.repos.d/ files...
> 
> Having an "Enabled: false" field so that stanzas can be disabled without
> commenting them out might be valuable? Not sure. Being able to distribute
> pre-filled-out sources lists including things that are interesting but
> not needed by default is a win; and Enabled: false->true is an easier
> thing for aptitude or similar to switch over than a commented-out stanza
> I think. Could be useful for backports, proposed-updates, non-free,
> multimedia repos for instance.

Yeah, I think that is useful for frontends but also as a easy way for
vi users to enable/disable easily. And apt could provide a cli option
later that would use this "apt source-disable 1".

I added the "Enabled:" tag to my branch now.

> Being able to specify mirrors in a single stanza might be useful? ie
> 
>   Type: deb deb-src
>   URI: http://mirror.home.lan/debian
>    http://mirror.internode.on.net/pub/debian
>    http://cdn.debian.net/debian
>   Suite: testing
>   Section: main contrib
[..]

Yes, great idea! Added to my branch.

> > I would welcome feedback on the naming of the
> > fields/options. E.g. singular vs plural for field names (
> > "Suite or Suites", "Section or Sections").
> 
> Support both as aliases?

Thats probably a good idea, not done yet though. Right now its all
plural (including Type -> Types).

> Comments in rfc822 format files strike me as odd. I'd consider a "Comment:
> ..." field instead or something personally, probably.

We did not support them /etc/apt/preferences for a long time and
people did not like that. So this time I wanted to be a bit more
liberal with the format. But Julians idea with the Description field
should eliminate most of the needs for the comment field. The code
will ignore tags it does not understand so having "Comment" in there
is no problem.
 
> It seems somewhat odd to do this as an rfc822 format rather than the {}
> format used by apt's other config files. (I'd probably be in favour of
> converting all apt's configfiles to rfc822-style, though; or yaml for
> that matter)

Personally I find the bind style {} format not very user-friendly. I
would love to provide a alternative style here too. I like deb822 but
for the apt configuration format its probably not expressive enough,
i.e. the apt config style options nesting would be a bit tricky and
(probably) not look natural. Yaml is probably the best alternative,
easy to read and write and still has support for all the features we
need. Definitely worth exploring in the (longer) term.

So thanks for your feedback, now you can have:
"""
Types: deb deb-src
URIs: http://ftp.de.debian.org/debian http://ftp.debian.org/debian 
Suites: stable testing unstable
Sections: main contrib
Description: my repo
 and some more infos
"""

nice and compat.


Cheers,
 Michael



Reply to: