From: Gordon Pettey <petteyg359@gmail.com>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Portage Feature Request: making thirdpartymirrors easier to manage
Date: Sat, 11 Jan 2014 12:27:05 -0600 [thread overview]
Message-ID: <CAHY5MefcGQKa+W1d-S-u=ekiez3dkYVubUGC1NrwoHtbysTbCw@mail.gmail.com> (raw)
In-Reply-To: <CAAr7Pr_KvN37D0mRa_tbocsk0oT6y=tq2nbiMZder_=TeKXR3w@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 2017 bytes --]
On Thu, Jan 9, 2014 at 9:26 AM, Ben Kohler <bkohler@gmail.com> wrote:
>
> On Mon, Jan 6, 2014 at 2:20 PM, Robin H. Johnson <robbat2@gentoo.org>wrote:
>
>> I would like to make it a directory instead of a single file, and extend
>> the internal syntax.
>>
> I'm not sure I see much real value in allowing individual profiles to
> add/remove mirrors from each group, to be honest. Maybe I'm just not
> thinking of the right scenarios.
>
Ignorant question: Can overlays modify profile easily (if at all?) If not,
then taking mirror lists out of profile seems rather sane, and would allow
overlays to add their own mirrors.
Spec thought:
1. make.conf should define MIRROR_REGIONS, which is a space separated list
of Region/Subregion/Locality strings (e.g.
"north_america/united_states/texas europe/germany/düsseldorf").
2. Using the file layout as bkohler suggested (e.g.
mirrors/{mirrorname,othermirrorname,thirdmirrorname}/{Asia,Europe}:
mirrorname may be a file or a directory. If it is a directory, it may
contain a file named "mirrorlist" if there are global mirrors, and it may
contain any number of region-named files or directories.
3. If a region-named "file" is a directory, then it must contain either a
file mirrorlist if it has region-level mirrors, or files/directories for
subregions.
4. When emerge fetches a file, if the most specific region (of the first
entry, if there are multiple entries) is not found, move up to the next
greater-sized region (one directory up). If that region exists, then
concatenate all of its subregions into the list to select a URL from. If it
doesn't exist, move up another level, and again, if it is found,
concatenate everything below it into the list of possible URLs. If the
final top-level region isn't found, move to the next MIRROR_REGIONS entry,
if it exists. Otherwise, concatenate every available region for that mirror
into the list.
This could all be done in a flat XML (or YAML, to avoid boilerplate) file,
too.
[-- Attachment #2: Type: text/html, Size: 2896 bytes --]
next prev parent reply other threads:[~2014-01-11 18:27 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-06 20:20 [gentoo-dev] Portage Feature Request: making thirdpartymirrors easier to manage Robin H. Johnson
2014-01-06 21:09 ` Alex Xu
2014-01-07 21:12 ` Robin H. Johnson
2014-01-08 15:11 ` Jeroen Roovers
2014-01-08 18:37 ` Alex Xu
2014-01-09 2:14 ` Jeroen Roovers
2014-01-09 2:23 ` Alec Warner
2014-01-09 15:14 ` Ben Kohler
2014-01-09 7:59 ` "Paweł Hajdan, Jr."
2014-01-09 15:26 ` Ben Kohler
2014-01-10 4:58 ` Michał Górny
2014-01-10 6:05 ` Alec Warner
2014-01-11 18:27 ` Gordon Pettey [this message]
2014-01-11 19:16 ` Kent Fredric
2014-01-11 19:19 ` Kent Fredric
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAHY5MefcGQKa+W1d-S-u=ekiez3dkYVubUGC1NrwoHtbysTbCw@mail.gmail.com' \
--to=petteyg359@gmail.com \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox