<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>201511</bug_id>
          
          <creation_ts>2007-12-06 19:43 0000</creation_ts>
          <short_desc>mirrorselect removes local distfiles directories from mirror list</short_desc>
          <delta_ts>2007-12-21 19:09:32 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Portage Development</product>
          <component>Tools</component>
          <version>unspecified</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          
          <priority>P2</priority>
          <bug_severity>minor</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>gb_about_gnu@gmx.net</reporter>
          <assigned_to>tools-portage@gentoo.org</assigned_to>
          <cc>gb_about_gnu@gmx.net</cc>
    
    <cc>mpagano@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>gb_about_gnu@gmx.net</who>
            <bug_when>2007-12-06 19:43:17 0000</bug_when>
            <thetext>$GENTOO_MIRRORS in /etc/make.conf is allowed to contain local filesystem paths.

Unfortunately, mirrorselect removes such paths, requiring the admin to manually re-insert those paths into GENTOO_MIRRORS after mirrorselect has been run.

Reproducible: Always

Steps to Reproduce:
1. Prefix GENTOO_MIRRORS with something like &quot;/usr/local/portage/distfiles &quot;
2. Run &quot;mirrorselect&quot;.


Actual Results:  
The prefix is lost.

Expected Results:  
All leading GENTOO_MIRRORS entries which do not look like some URI syntax should be retained.

When writing private ebuilds in an overlay for the local host only, it is common to add a directory like /usr/local/portage/distfiles before the first mirror listed in $GENTOO_MIRRORS.

Unfortunately, mirrorselect removes such entries, and so the admin has to manually re-insert them.

I would suggest parsing the old $GENTOO_MIRRORS value, split it into words and remember all such leading words which start with a slash (and are therefore local paths).

Then mirrorselect should do what it does now. But before writing back the newly detected GENTOO_MIRRORS, the saved paths should be inserted before the first actual mirror.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mpagano@gentoo.org</who>
            <bug_when>2007-12-21 00:16:28 0000</bug_when>
            <thetext>Created an attachment (id=139002)
mirrorselect patch to retain mounted filesystems

Here&apos;s a patch providing a potential fix. Comments and testing are welcome. You can apply the patch via:

patch -p0 &lt; /path/to/retain_mounted_filesystems.patch 

in a directory where mirrorselect is.

Please back up /etc/make.conf first!
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>gb_about_gnu@gmx.net</who>
            <bug_when>2007-12-21 08:48:40 0000</bug_when>
            <thetext>(In reply to comment #1)
&gt; Here&apos;s a patch providing a potential fix. Comments and testing are welcome.

Well done - works like a charm! :-)
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mpagano@gentoo.org</who>
            <bug_when>2007-12-21 19:06:45 0000</bug_when>
            <thetext>fixed in mirrorselect 1.3</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>mpagano@gentoo.org</who>
            <bug_when>2007-12-21 19:09:32 0000</bug_when>
            <thetext>closing</thetext>
          </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>139002</attachid>
            <date>2007-12-21 00:16 0000</date>
            <desc>mirrorselect patch to retain mounted filesystems</desc>
            <filename>retain_mounted_filesystems.patch</filename>
            <type>text/plain</type>
            <data encoding="base64">LS0tIG9yaWcubWlycm9yc2VsZWN0CTIwMDctMTItMjAgMTg6Mjk6NTAuMDAwMDAwMDAwIC0wNTAw
CisrKyBtaXJyb3JzZWxlY3QJMjAwNy0xMi0yMCAxOTowOTowMC4wMDAwMDAwMDAgLTA1MDAKQEAg
LTQsMTAgKzQsMTAgQEAKIE1pcnJvcnNlbGVjdCAxLnggd3JpdHRlbiBieSBDb2xpbiBLaW5nc2xl
eSAodGVyY2VsQGdlbnRvby5vcmcpCiBUb29sIGZvciBzZWxlY3RpbmcgR2VudG9vIHNvdXJjZSBh
bmQgcnN5bmMgbWlycm9ycy4KICIiIgotX19yZXZpc2lvbl9fID0gJzEuMicKK19fcmV2aXNpb25f
XyA9ICcxLjMnCiAKIGltcG9ydCBzeXMKLWltcG9ydCBvcywgdGltZSwgcG9wZW4yLCByZSwgc2h1
dGlsLCBzaWduYWwKK2ltcG9ydCBvcywgdGltZSwgcG9wZW4yLCByZSwgc2h1dGlsLCBzaWduYWws
IHNobGV4LCBzdHJpbmcKIGZyb20gSFRNTFBhcnNlciBpbXBvcnQgSFRNTFBhcnNlcgogZnJvbSBv
cHRwYXJzZSBpbXBvcnQgSW5kZW50ZWRIZWxwRm9ybWF0dGVyLCBPcHRpb25QYXJzZXIKIAkKQEAg
LTY1Nyw2ICs2NTcsNTQgQEAgZGVmIHdyaXRlX2NvbmZpZyhob3N0cywgb3V0LCBwYXRoLCBzeW5j
PQogCW91dHB1dC5wcmludF9pbmZvKCdEb25lLlxuJykKIAlzeXMuZXhpdCgwKQogCitkZWYgZ2V0
X2ZpbGVzeXN0ZW1fbWlycm9ycyhvdXQsIHBhdGgsIHN5bmM9RmFsc2UpOgorCSIiIgorCVJlYWQg
dGhlIGN1cnJlbnQgbWlycm9ycyBhbmQgcmV0YWluIG1vdW50ZWQgZmlsZXN5c3RlbXMgbWlycm9y
cworCSIiIgorCWZzbWlycm9ycyA9IFtdCisKKwlpZiBzeW5jOgorCQl2YXIgPSAnU1lOQycKKwll
bHNlOgorCQl2YXIgPSAnR0VOVE9PX01JUlJPUlMnCisJCisJdHJ5OgorCQlmID0gb3BlbihwYXRo
LCdyJykKKwlleGNlcHQgSU9FcnJvcixlOgorCQlyZXR1cm4gZnNtaXJyb3JzCisKKwkiIiIgU2Vh
cmNoIGZvciAndmFyJyBpbiBtYWtlLmNvbmYgYW5kIGV4dHJhY3QgdmFsdWUgIiIiCisJdHJ5Ogor
CQlsZXggPSBzaGxleC5zaGxleChmLCBwb3NpeD1UcnVlKQorCQlsZXgud29yZGNoYXJzPXN0cmlu
Zy5kaWdpdHMrc3RyaW5nLmxldHRlcnMrIn4hQCMkJSpfXDo7PywuLy0re30iCisJCWxleC5xdW90
ZXM9IlwiJyIKKwkJd2hpbGUgMToKKwkJCWtleSA9IGxleC5nZXRfdG9rZW4oKQorCQkJaWYga2V5
ID09IHZhcjoKKwkJCQllcXUgPSBsZXguZ2V0X3Rva2VuKCkKKwkJCQkKKwkJCQlpZiAoZXF1ID09
ICcnKToKKwkJCQkJYnJlYWs7CisJCQkJZWxpZiAoZXF1ICE9ICc9Jyk6CisJCQkJCWJyZWFrOwor
CisJCQkJdmFsID0gbGV4LmdldF90b2tlbigpCisJCQkJaWYgdmFsIGlzIE5vbmU6CisJCQkJCWJy
ZWFrOworCisJCQkJIiIiIExvb2sgZm9yIG1vdW50ZWQgZmlsZXN5c3RlbSBpbiB2YWx1ZSAiIiIK
KwkJCQltaXJyb3JsaXN0ID0gdmFsLnJzcGxpdCgpCisJCQkJcCA9IHJlLmNvbXBpbGUoJ3JzeW5j
Oi8vfGh0dHA6Ly98ZnRwOi8vJyxyZS5JR05PUkVDQVNFKQorCQkJCWZvciBtaXJyb3IgaW4gbWly
cm9ybGlzdDoKKwkJCQkJaWYgKHAubWF0Y2gobWlycm9yKSA9PSBOb25lKToKKwkJCQkJCWZzbWly
cm9ycy5hcHBlbmQobWlycm9yKQorCQkJCWJyZWFrCisJCQllbGlmIGtleSBpcyBOb25lOgorCQkJ
CWJyZWFrCisJZXhjZXB0IEV4Y2VwdGlvbiwgZToKKwkJZnNtaXJyb3JzID0gW10KKworCXJldHVy
biBmc21pcnJvcnMKIAogZGVmIHBhcnNlX2FyZ3MoYXJndik6CiAJIiIiCkBAIC03ODUsNiArODMz
LDcgQEAgZGVmIG1haW4oYXJndik6CiAJb3B0aW9ucyA9IHBhcnNlX2FyZ3MoYXJndikKIAlvdXRw
dXQudmVyYm9zaXR5ID0gb3B0aW9ucy52ZXJib3NpdHkKIAorCWZzbWlycm9ycyA9IGdldF9maWxl
c3lzdGVtX21pcnJvcnMob3B0aW9ucy5vdXRwdXQsIGNvbmZpZ19wYXRoLCBvcHRpb25zLnJzeW5j
KQogCWhvc3RzID0gRXh0cmFjdG9yKGxpc3RfdXJsLCBvcHRpb25zKS5ob3N0cwogCiAJaWYgb3B0
aW9ucy5pbnRlcmFjdGl2ZToKQEAgLTc5NCw3ICs4NDMsNyBAQCBkZWYgbWFpbihhcmd2KToKIAll
bHNlOgogCQlzZWxlY3RvciA9IFNoYWxsb3coaG9zdHMsIG9wdGlvbnMpCiAKLQl3cml0ZV9jb25m
aWcoc2VsZWN0b3IudXJscywgb3B0aW9ucy5vdXRwdXQsIGNvbmZpZ19wYXRoLCBvcHRpb25zLnJz
eW5jKQorCXdyaXRlX2NvbmZpZyhmc21pcnJvcnMgKyBzZWxlY3Rvci51cmxzLCBvcHRpb25zLm91
dHB1dCwgY29uZmlnX3BhdGgsIG9wdGlvbnMucnN5bmMpCiAKIAogaWYgX19uYW1lX18gPT0gJ19f
bWFpbl9fJzoK
</data>        

          </attachment>
    </bug>

</bugzilla>