On 161223-05:38+0100, Miroslav Rovis wrote: > It took me all of my skills ;-) . But I installed Pale Moon ... > That's new technology. EAPI=6 in the ebuild > Nothing I've seen in my previous 7 years as Gentoo ... > I'd like to provide detailed info here how the above happened
Maybe start from the witness of the completed install. That is, from the (witnessing) log: /var/log/portage/www-client:palemoon-27.0.3-r6:20161221-204523.log after having in some apparently correct way modified the ebuild in my local overlay, and upon issuing: # emerge palemoon So, the log: * Package: www-client/palemoon-27.0.3-r6 * Repository: miro * USE: abi_x86_64 alsa amd64 elibc_glibc gstreamer gtk2 kernel_linux official-branding optimize userland_GNU * FEATURES: preserve-libs sandbox userpriv usersandbox >>> Unpacking source... * Fetching http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git ... git fetch http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git +refs/tags/27.0.3_Release:refs/tags/27.0.3_Release From http://localhost/cgi-bin/cgit.cgi/Pale-Moon * [new tag] 27.0.3_Release -> 27.0.3_Release * [new tag] 24.5.1_beta4 -> 24.5.1_beta4 ... [130 entries cut here] ... * [new tag] 27.0.1_Release -> 27.0.1_Release * [new tag] 27.0.2_Release -> 27.0.2_Release * [new tag] GUID_working_base -> GUID_working_base ... [35 entries cut here] ... * [new tag] SUMOZI_25.1.0_MERGE -> SUMOZI_25.1.0_MERGE * [new tag] SUMOZI_25.2.0_MERGE -> SUMOZI_25.2.0_MERGE git symbolic-ref refs/git-r3/www-client/palemoon/0/__main__ refs/tags/27.0.3_Release * Checking out http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git to /var/tmp/portage/www-client/palemoon-27.0.3-r6/work/palemoon-27.0.3 ... git checkout --quiet refs/tags/27.0.3_Release GIT NEW branch --> repository: http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git at the commit: cff1b1447aa25e27b7294bb6986e79c98ae04a03 >>> Source unpacked in /var/tmp/portage/www-client/palemoon-27.0.3-r6/work >>> Preparing source in >>> /var/tmp/portage/www-client/palemoon-27.0.3-r6/work/palemoon-27.0.3 ... >>> Source prepared. >>> Configuring source in >>> /var/tmp/portage/www-client/palemoon-27.0.3-r6/work/palemoon-27.0.3 ... * You are enabling official branding. You may not redistribute this build ... [9700 lines cut here] ... >>> /usr/lib64/palemoon/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf >>> /usr/lib64/palemoon/browser/blocklist.xml >>> /usr/lib64/palemoon/browser/searchplugins/ ... [5 lines cut here] ... >>> /usr/lib64/palemoon/browser/searchplugins/duckduckgo-palemoon.xml ... [12 lines cut here] ... >>> /usr/lib64/palemoon/libnssdbm3.so >>> /usr/lib64/palemoon/components/ >>> /usr/lib64/palemoon/components/components.manifest >>> /usr/lib64/palemoon/components/libmozgnome.so >>> /usr/lib64/palemoon/palemoon --- /usr/bin/ >>> /usr/bin/palemoon -> /usr/lib64/palemoon/palemoon * Updating desktop mime database ... * Updating icons cache ... [ ok ] >>> www-client/palemoon-27.0.3-r6 merged. >>> Regenerating /etc/ld.so.cache... So the installation completed smoothly. Now, in the /usr/portage/distfiles it looks pretty courious. Never seen anything in my 8 years more or less daily using of Gentoo (hundreds upon hundreds of compilations ;-) ): The git object pack sources, guess where they are by looking up: # du -hs /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/*/ 48K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/hooks/ 8.0K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/info/ 283M /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/objects/ 744K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/refs/ # ( reformatted the above output for email, but those are 5 distinct lines of stdout only ) The successful ebuild that I modified the palemon-overlay ebuild into is: palemoon-27.0.3-r6.ebuild but my other previous ebuild modifications/adaptations for local cgit mirror had all failed. Obviously all based on palemoon-27.0.3.ebuild from the official palemoon-overlay repo. Let me again return to the strange looks of the /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git That above is the complete path, but here I present it more clearly (and verbosely): # ls -l /usr/portage/distfiles/ | grep git3-src drwxr-xr-x 3 portage portage 4096 2016-12-21 21:19 git3-src EGIT_MIRROR_URI=git: # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/ total 4 drwxr-xr-x 3 portage portage 4096 2016-12-21 21:19 localhost # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/ total 4 drwxr-xr-x 3 portage portage 4096 2016-12-21 21:19 cgi-bin # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/ total 4 drwxr-xr-x 4 portage portage 4096 2016-12-21 21:24 cgit.cgi # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/ total 8 drwxr-xr-x 6 portage portage 4096 2016-12-21 21:19 cgi-bin_cgit.cgi_Pale-Moon.git drwxr-xr-x 6 portage portage 4096 2016-12-21 21:24 MoonchildProductions_Pale-Moon.git # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/ total 52 -rw-r--r-- 1 portage portage 66 2016-12-21 21:19 config -rw-r--r-- 1 portage portage 73 2016-12-21 21:19 description -rw-r--r-- 1 portage portage 22016 2016-12-21 21:45 FETCH_HEAD -rw-r--r-- 1 portage portage 23 2016-12-21 21:19 HEAD drwxr-xr-x 2 portage portage 4096 2016-12-21 21:19 hooks drwxr-xr-x 2 portage portage 4096 2016-12-21 21:19 info drwxr-xr-x 5 portage portage 4096 2016-12-21 21:45 objects drwxr-xr-x 5 portage portage 4096 2016-12-21 21:45 refs # du -hs /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/*/ 48K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/hooks/ 8.0K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/info/ 283M /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/objects/ 744K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/refs/ # ( it's the same 5 distinct lines of stdout these in bottom, and if they don't show well in your mail client, look them up in reformated guise further above ) So, let me remember how I got there. Firstly, I, sure, cloned the palemoon-overlay. No I didn't use the layman for that (I'd be using layman if I were able to verify installs like I can with webrsync-gpg which is not feasible with git at this time, so I go manually, and carefully check all the components to compilations), but simply instead I 'git clone'-d it: $ git clone https://github.com/deuiore/palemoon-overlay I also cloned the Moonchild Productions' PaleMoon.git overlay (else how would I install it in Air-Gapped?): $ git clone https://github.com/MoonchildProductions/Pale-Moon.git I followed again (it's heavily changed since some one year ago, no more PORTDIR_OVERLAY) the guide at: https://wiki.gentoo.org/wiki/Overlay/Local_overlay and copied over files from the just cloned palemoon-overlay, and created, what with the copy-renamed and modified ebuilds looks like: # ls -lR /usr/local/portage/www-client/palemoon/ /usr/local/portage/www-client/palemoon/: total 76 drwxr-xr-x 3 miro miro 4096 2016-12-18 08:40 files -rw-r--r-- 1 root root 4209 2016-12-21 21:44 Manifest -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 palemoon-27.0.2.ebuild -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5956 2016-12-21 16:53 palemoon-27.0.3-r1.ebuild ... [ 4 more unsuccessful ebuilds from -r2 to -r5 here ] ... -rw-r--r-- 1 miro miro 5903 2016-12-21 21:44 palemoon-27.0.3-r6.ebuild /usr/local/portage/www-client/palemoon/files: total 8 -rw-r--r-- 1 miro miro 329 2016-12-18 08:40 default-prefs.js-0 drwxr-xr-x 2 miro miro 4096 2016-12-18 08:40 icon /usr/local/portage/www-client/palemoon/files/icon: total 4 -rw-r--r-- 1 miro miro 277 2016-12-18 08:40 palemoon.desktop # I also needed to copy over some that you can recognize which ones by their sizes: # ls -l /some-dir/palemoon-overlay/[emp]* /some-dir/palemoon-overlay/eclass: total 8 -rw-r--r-- 1 miro miro 1764 2016-12-18 08:40 palemoon-0.eclass -rw-r--r-- 1 miro miro 360 2016-12-18 08:40 palemoon-bin-0.eclass /some-dir/palemoon-overlay/metadata: total 4 -rw-r--r-- 1 miro miro 17 2016-12-18 08:40 layout.conf /some-dir/palemoon-overlay/profiles: total 8 -rw-r--r-- 1 miro miro 510 2016-12-18 08:40 package.mask -rw-r--r-- 1 miro miro 9 2016-12-18 08:40 repo_name # # ls -l /usr/local/portage/[emp]* /usr/local/portage/eclass: total 4 -rw-r--r-- 1 miro miro 1764 2016-12-18 08:40 palemoon-0.eclass /usr/local/portage/metadata: total 4 -rw-r--r-- 1 portage portage 17 2015-07-08 15:54 layout.conf /usr/local/portage/profiles: total 8 -rw-r--r-- 1 portage portage 60 2016-11-13 21:55 categories -rw-r--r-- 1 portage portage 5 2015-07-08 15:54 repo_name # ( but my repo_name contains the string 'miro', not the string 'palemoon', the string + newline, makes 5 and 9 ; I guess the most important of the above is the palemoon-0.eclass ) What is needed in the /etc/portage/make.conf is: EGIT3_STORE_DIR=${DISTDIR}/git3-src" EGIT_MIRROR_URI=git://localhost/cgi-bin/cgit.cgi/" ( Note at proofreading time: true, that is still stuck in the make.conf, and it is what was in there when the successful install happend, but shouldn't it be http://localhost/cgi-bin/cgit.cgi/ instead? ) I got those by studying over at devmanual this page: https://devmanual.gentoo.org/eclass-reference/git-r3.eclass/index.html and actually I also studied where there's even more, in: /usr/portage/eclass/git-r3.eclass ( a very interesting but somewhat hard read :-( ) And here follow all the tries. Listing them all because it's simpler... I'll just run this bash line to loop on all of them: # for i in $(ls -1 /usr/local/portage/www-client/palemoon/ | grep -E '3.ebuild|3-r[1-6].ebuild'); do ls -l /usr/local/portage/www-client/palemoon/$i /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild ; diff /usr/local/portage/www-client/palemoon/$i /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild ; echo "--" ; echo ; done ; ( that's just one line, in case your mail client reformated it for you, I'm running too slow with all of this, rushing a little, sorry, except same excuse for below ) And that command line got me these: -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /usr/local/portage/www-client/palemoon/palemoon-27.0.3.ebuild -- -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5956 2016-12-21 16:53 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r1.ebuild 21c21 < EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git" --- > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git" -- -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 6051 2016-12-21 17:15 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r2.ebuild 21c21 < EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git git://localhost/cgi-bin/cgit.cgi/Pale-Moon.git" --- > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git" -- -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5999 2016-12-21 17:25 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r3.ebuild 21c21 < EGIT_REPO_URI="https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git git://localhost/cgi-bin/cgit.cgi/Pale-Moon.git" --- > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git" -- -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5951 2016-12-21 21:26 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r4.ebuild 21c21 < EGIT_REPO_URI="https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git git://localhost/cgi-bin/cgit.cgi/Pale-Moon.git" --- > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git" -- -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5902 2016-12-21 21:29 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r5.ebuild 21c21 < EGIT_REPO_URI="git://localhost/cgi-bin/cgit.cgi/Pale-Moon.git" --- > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git" -- -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild -rw-r--r-- 1 miro miro 5903 2016-12-21 21:44 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r6.ebuild 21c21 < EGIT_REPO_URI="http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git" --- > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git" -- The: https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git would have probably also worked, but it was refused because the cert is both self-signed and expired ;-) . If the reader followed carefully, she/he will have noticed that only the last one (palemoon-27.0.3-r6.ebuild) worked, and I actually started this email with how that ebuild installed palemoon in my Air-Gapped machine. If I show to have forgot any details (which I tried not to), I'll post them in another reply to this thread. ( Ah, the cgit, maybe. It's just a regular cgit install, other than I wasn't able to get the cgit, in many months now that I use it, so that my apache would serve git listings and tar.gz's, tar.bz2's, and zip's, with rewritten urls to get read of the cgi-bin/cgit.cgi string in every url... Otherwise, it's just $ cd /where-I-keep-my-local-and-cloned-git-repos/Pale-Moon/ git clone --bare . /where-my-apache-serves-git-from/Pale-Moon.git/ and then # /var/www/localhost/cgi-bin/cgit.cgi \ --scan-tree=/where-my-apache-serves-git-from/ > cgit-repos (and append that to /etc/cgit-repos) ) I'm actually kind of almost disbelieving that this has happened, because the naming appears as if it worked out by some luck, so unusual it is, with the spaces in the filenames ( e.g. just see the: git3-src EGIT_MIRROR_URI=git: name of the directory, first level underneath /usr/portage/distfiles/ ). It couldn't have been designed to be this kind of strange naming in the very /usr/portage/distfiles/ , or could it? Is this regular, or have I successfully installed by some chance? Thanks if there will be any explanations and advice. And in the meantime, I really enjoy using Pale Moon in my Gentoo, both master and, of course, clone(s)! Regards! -- Miroslav Rovis Zagreb, Croatia http://www.CroatiaFidelis.hr
signature.asc
Description: Digital signature