Gentoo Archives: gentoo-user

From: Miroslav Rovis <miro.rovis@××××××××××××××.hr>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Pale Moon Air-Gapped portage EAPI 6 Install WAS: [Logging] SSL with PM
Date: Fri, 23 Dec 2016 16:57:59
Message-Id: 20161223165822.GC9835@g0n.xdwgrp
In Reply to: [gentoo-user] Pale Moon Air-Gapped portage EAPI 6 Install WAS: [Logging] SSL with PM by Miroslav Rovis
1 On 161223-05:38+0100, Miroslav Rovis wrote:
2 > It took me all of my skills ;-) . But I installed Pale Moon
3 ...
4 > That's new technology. EAPI=6 in the ebuild
5 > Nothing I've seen in my previous 7 years as Gentoo
6 ...
7 > I'd like to provide detailed info here how the above happened
8
9 Maybe start from the witness of the completed install.
10
11 That is, from the (witnessing) log:
12 /var/log/portage/www-client:palemoon-27.0.3-r6:20161221-204523.log
13
14 after having in some apparently correct way modified the ebuild in my local
15 overlay, and upon issuing:
16
17 # emerge palemoon
18
19 So, the log:
20
21 * Package: www-client/palemoon-27.0.3-r6
22 * Repository: miro
23 * USE: abi_x86_64 alsa amd64 elibc_glibc gstreamer gtk2 kernel_linux official-branding optimize userland_GNU
24 * FEATURES: preserve-libs sandbox userpriv usersandbox
25 >>> Unpacking source...
26 * Fetching http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git ...
27 git fetch http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git +refs/tags/27.0.3_Release:refs/tags/27.0.3_Release
28 From http://localhost/cgi-bin/cgit.cgi/Pale-Moon
29 * [new tag] 27.0.3_Release -> 27.0.3_Release
30 * [new tag] 24.5.1_beta4 -> 24.5.1_beta4
31
32 ... [130 entries cut here] ...
33
34 * [new tag] 27.0.1_Release -> 27.0.1_Release
35 * [new tag] 27.0.2_Release -> 27.0.2_Release
36 * [new tag] GUID_working_base -> GUID_working_base
37
38 ... [35 entries cut here] ...
39
40 * [new tag] SUMOZI_25.1.0_MERGE -> SUMOZI_25.1.0_MERGE
41 * [new tag] SUMOZI_25.2.0_MERGE -> SUMOZI_25.2.0_MERGE
42 git symbolic-ref refs/git-r3/www-client/palemoon/0/__main__ refs/tags/27.0.3_Release
43 * 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 ...
44 git checkout --quiet refs/tags/27.0.3_Release
45 GIT NEW branch -->
46 repository: http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git
47 at the commit: cff1b1447aa25e27b7294bb6986e79c98ae04a03
48 >>> Source unpacked in /var/tmp/portage/www-client/palemoon-27.0.3-r6/work
49 >>> Preparing source in /var/tmp/portage/www-client/palemoon-27.0.3-r6/work/palemoon-27.0.3 ...
50 >>> Source prepared.
51 >>> Configuring source in /var/tmp/portage/www-client/palemoon-27.0.3-r6/work/palemoon-27.0.3 ...
52 * You are enabling official branding. You may not redistribute this build
53
54 ... [9700 lines cut here] ...
55
56 >>> /usr/lib64/palemoon/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}/install.rdf
57 >>> /usr/lib64/palemoon/browser/blocklist.xml
58 >>> /usr/lib64/palemoon/browser/searchplugins/
59
60 ... [5 lines cut here] ...
61
62 >>> /usr/lib64/palemoon/browser/searchplugins/duckduckgo-palemoon.xml
63
64 ... [12 lines cut here] ...
65
66 >>> /usr/lib64/palemoon/libnssdbm3.so
67 >>> /usr/lib64/palemoon/components/
68 >>> /usr/lib64/palemoon/components/components.manifest
69 >>> /usr/lib64/palemoon/components/libmozgnome.so
70 >>> /usr/lib64/palemoon/palemoon
71 --- /usr/bin/
72 >>> /usr/bin/palemoon -> /usr/lib64/palemoon/palemoon
73 * Updating desktop mime database ...
74 * Updating icons cache ...
75 [ ok ]
76 >>> www-client/palemoon-27.0.3-r6 merged.
77 >>> Regenerating /etc/ld.so.cache...
78
79 So the installation completed smoothly.
80
81 Now, in the /usr/portage/distfiles it looks pretty courious. Never seen
82 anything in my 8 years more or less daily using of Gentoo (hundreds upon
83 hundreds of compilations ;-) ):
84
85 The git object pack sources, guess where they are by looking up:
86
87 # du -hs /usr/portage/distfiles/git3-src\
88 EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/*/
89
90 48K /usr/portage/distfiles/git3-src
91 EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/hooks/
92
93 8.0K /usr/portage/distfiles/git3-src
94 EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/info/
95
96 283M /usr/portage/distfiles/git3-src
97 EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/objects/
98
99 744K /usr/portage/distfiles/git3-src
100 EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/refs/
101
102 #
103
104 ( reformatted the above output for email, but those are 5 distinct lines of
105 stdout only )
106
107 The successful ebuild that I modified the palemon-overlay ebuild into is:
108
109 palemoon-27.0.3-r6.ebuild
110
111 but my other previous ebuild modifications/adaptations for local cgit mirror
112 had all failed. Obviously all based on palemoon-27.0.3.ebuild from the
113 official palemoon-overlay repo.
114
115 Let me again return to the strange looks of the
116 /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git
117
118 That above is the complete path, but here I present it more clearly (and
119 verbosely):
120
121 # ls -l /usr/portage/distfiles/ | grep git3-src
122 drwxr-xr-x 3 portage portage 4096 2016-12-21 21:19 git3-src EGIT_MIRROR_URI=git:
123 # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/
124 total 4
125 drwxr-xr-x 3 portage portage 4096 2016-12-21 21:19 localhost
126 # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/
127 total 4
128 drwxr-xr-x 3 portage portage 4096 2016-12-21 21:19 cgi-bin
129 # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/
130 total 4
131 drwxr-xr-x 4 portage portage 4096 2016-12-21 21:24 cgit.cgi
132 # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/
133 total 8
134 drwxr-xr-x 6 portage portage 4096 2016-12-21 21:19 cgi-bin_cgit.cgi_Pale-Moon.git
135 drwxr-xr-x 6 portage portage 4096 2016-12-21 21:24 MoonchildProductions_Pale-Moon.git
136 # ls -l /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/
137 total 52
138 -rw-r--r-- 1 portage portage 66 2016-12-21 21:19 config
139 -rw-r--r-- 1 portage portage 73 2016-12-21 21:19 description
140 -rw-r--r-- 1 portage portage 22016 2016-12-21 21:45 FETCH_HEAD
141 -rw-r--r-- 1 portage portage 23 2016-12-21 21:19 HEAD
142 drwxr-xr-x 2 portage portage 4096 2016-12-21 21:19 hooks
143 drwxr-xr-x 2 portage portage 4096 2016-12-21 21:19 info
144 drwxr-xr-x 5 portage portage 4096 2016-12-21 21:45 objects
145 drwxr-xr-x 5 portage portage 4096 2016-12-21 21:45 refs
146 # du -hs /usr/portage/distfiles/git3-src\ EGIT_MIRROR_URI\=git\:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/*/
147 48K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/hooks/
148 8.0K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/info/
149 283M /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/objects/
150 744K /usr/portage/distfiles/git3-src EGIT_MIRROR_URI=git:/localhost/cgi-bin/cgit.cgi/cgi-bin_cgit.cgi_Pale-Moon.git/refs/
151 #
152
153 ( it's the same 5 distinct lines of stdout these in bottom, and if they don't
154 show well in your mail client, look them up in reformated guise further above )
155
156 So, let me remember how I got there.
157
158 Firstly, I, sure, cloned the palemoon-overlay. No I didn't use the layman for
159 that (I'd be using layman if I were able to verify installs like I can with
160 webrsync-gpg which is not feasible with git at this time, so I go
161 manually, and carefully check all the components to compilations), but
162 simply instead I 'git clone'-d it:
163
164 $ git clone https://github.com/deuiore/palemoon-overlay
165
166 I also cloned the Moonchild Productions' PaleMoon.git overlay (else how would
167 I install it in Air-Gapped?):
168
169 $ git clone https://github.com/MoonchildProductions/Pale-Moon.git
170
171 I followed again (it's heavily changed since some one year ago, no more
172 PORTDIR_OVERLAY) the guide at:
173
174 https://wiki.gentoo.org/wiki/Overlay/Local_overlay
175
176 and copied over files from the just cloned palemoon-overlay, and created, what
177 with the copy-renamed and modified ebuilds looks like:
178
179 # ls -lR /usr/local/portage/www-client/palemoon/
180 /usr/local/portage/www-client/palemoon/:
181 total 76
182 drwxr-xr-x 3 miro miro 4096 2016-12-18 08:40 files
183 -rw-r--r-- 1 root root 4209 2016-12-21 21:44 Manifest
184 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 palemoon-27.0.2.ebuild
185 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 palemoon-27.0.3.ebuild
186 -rw-r--r-- 1 miro miro 5956 2016-12-21 16:53 palemoon-27.0.3-r1.ebuild
187 ... [ 4 more unsuccessful ebuilds from -r2 to -r5 here ] ...
188 -rw-r--r-- 1 miro miro 5903 2016-12-21 21:44 palemoon-27.0.3-r6.ebuild
189
190 /usr/local/portage/www-client/palemoon/files:
191 total 8
192 -rw-r--r-- 1 miro miro 329 2016-12-18 08:40 default-prefs.js-0
193 drwxr-xr-x 2 miro miro 4096 2016-12-18 08:40 icon
194
195 /usr/local/portage/www-client/palemoon/files/icon:
196 total 4
197 -rw-r--r-- 1 miro miro 277 2016-12-18 08:40 palemoon.desktop
198 #
199
200 I also needed to copy over some that you can recognize which ones by
201 their sizes:
202
203 # ls -l /some-dir/palemoon-overlay/[emp]*
204 /some-dir/palemoon-overlay/eclass:
205 total 8
206 -rw-r--r-- 1 miro miro 1764 2016-12-18 08:40 palemoon-0.eclass
207 -rw-r--r-- 1 miro miro 360 2016-12-18 08:40 palemoon-bin-0.eclass
208
209 /some-dir/palemoon-overlay/metadata:
210 total 4
211 -rw-r--r-- 1 miro miro 17 2016-12-18 08:40 layout.conf
212
213 /some-dir/palemoon-overlay/profiles:
214 total 8
215 -rw-r--r-- 1 miro miro 510 2016-12-18 08:40 package.mask
216 -rw-r--r-- 1 miro miro 9 2016-12-18 08:40 repo_name
217 #
218
219 # ls -l /usr/local/portage/[emp]*
220 /usr/local/portage/eclass:
221 total 4
222 -rw-r--r-- 1 miro miro 1764 2016-12-18 08:40 palemoon-0.eclass
223
224 /usr/local/portage/metadata:
225 total 4
226 -rw-r--r-- 1 portage portage 17 2015-07-08 15:54 layout.conf
227
228 /usr/local/portage/profiles:
229 total 8
230 -rw-r--r-- 1 portage portage 60 2016-11-13 21:55 categories
231 -rw-r--r-- 1 portage portage 5 2015-07-08 15:54 repo_name
232 #
233
234 ( but my repo_name contains the string 'miro', not the string 'palemoon', the
235 string + newline, makes 5 and 9 ; I guess the most important of the
236 above is the palemoon-0.eclass )
237
238 What is needed in the /etc/portage/make.conf is:
239
240 EGIT3_STORE_DIR=${DISTDIR}/git3-src"
241 EGIT_MIRROR_URI=git://localhost/cgi-bin/cgit.cgi/"
242
243 ( Note at proofreading time: true, that is still stuck in the make.conf,
244 and it is what was in there when the successful install happend, but
245 shouldn't it be http://localhost/cgi-bin/cgit.cgi/ instead? )
246
247 I got those by studying over at devmanual this page:
248
249 https://devmanual.gentoo.org/eclass-reference/git-r3.eclass/index.html
250
251 and actually I also studied where there's even more, in:
252
253 /usr/portage/eclass/git-r3.eclass
254
255 ( a very interesting but somewhat hard read :-( )
256
257 And here follow all the tries. Listing them all because it's simpler... I'll
258 just run this bash line to loop on all of them:
259
260 # 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 ;
261
262 ( that's just one line, in case your mail client reformated it for you,
263 I'm running too slow with all of this, rushing a little, sorry, except
264 same excuse for below )
265
266 And that command line got me these:
267
268 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
269 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /usr/local/portage/www-client/palemoon/palemoon-27.0.3.ebuild
270 --
271
272 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
273 -rw-r--r-- 1 miro miro 5956 2016-12-21 16:53 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r1.ebuild
274 21c21
275 < EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git"
276 ---
277 > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git"
278 --
279
280 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
281 -rw-r--r-- 1 miro miro 6051 2016-12-21 17:15 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r2.ebuild
282 21c21
283 < 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"
284 ---
285 > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git"
286 --
287
288 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
289 -rw-r--r-- 1 miro miro 5999 2016-12-21 17:25 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r3.ebuild
290 21c21
291 < 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"
292 ---
293 > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git"
294 --
295
296 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
297 -rw-r--r-- 1 miro miro 5951 2016-12-21 21:26 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r4.ebuild
298 21c21
299 < EGIT_REPO_URI="https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git git://localhost/cgi-bin/cgit.cgi/Pale-Moon.git"
300 ---
301 > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git"
302 --
303
304 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
305 -rw-r--r-- 1 miro miro 5902 2016-12-21 21:29 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r5.ebuild
306 21c21
307 < EGIT_REPO_URI="git://localhost/cgi-bin/cgit.cgi/Pale-Moon.git"
308 ---
309 > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git"
310 --
311
312 -rw-r--r-- 1 miro miro 5907 2016-12-21 00:42 /some-dir/palemoon-overlay/www-client/palemoon/palemoon-27.0.3.ebuild
313 -rw-r--r-- 1 miro miro 5903 2016-12-21 21:44 /usr/local/portage/www-client/palemoon/palemoon-27.0.3-r6.ebuild
314 21c21
315 < EGIT_REPO_URI="http://localhost/cgi-bin/cgit.cgi/Pale-Moon.git"
316 ---
317 > EGIT_REPO_URI="git://github.com/MoonchildProductions/Pale-Moon.git"
318 --
319
320 The: https://localhost/cgi-bin/cgit.cgi/Pale-Moon.git would have probably also
321 worked, but it was refused because the cert is both self-signed and expired
322 ;-) .
323
324 If the reader followed carefully, she/he will have noticed that only the
325 last one (palemoon-27.0.3-r6.ebuild) worked, and I actually started this
326 email with how that ebuild installed palemoon in my Air-Gapped machine.
327
328 If I show to have forgot any details (which I tried not to), I'll post them in
329 another reply to this thread.
330
331 ( Ah, the cgit, maybe. It's just a regular cgit install, other than I
332 wasn't able to get the cgit, in many months now that I use it, so that
333 my apache would serve git listings and tar.gz's, tar.bz2's, and zip's,
334 with rewritten urls to get read of the cgi-bin/cgit.cgi string in every
335 url...
336
337 Otherwise, it's just
338
339 $ cd /where-I-keep-my-local-and-cloned-git-repos/Pale-Moon/
340 git clone --bare . /where-my-apache-serves-git-from/Pale-Moon.git/
341
342 and then
343
344 # /var/www/localhost/cgi-bin/cgit.cgi \
345 --scan-tree=/where-my-apache-serves-git-from/ > cgit-repos
346
347 (and append that to /etc/cgit-repos)
348 )
349
350 I'm actually kind of almost disbelieving that this has happened, because the
351 naming appears as if it worked out by some luck, so unusual it is, with the
352 spaces in the filenames
353 (
354 e.g. just see the:
355
356 git3-src EGIT_MIRROR_URI=git:
357
358 name of the directory, first level underneath /usr/portage/distfiles/
359 ).
360
361 It couldn't have been designed to be this kind of strange naming in the
362 very /usr/portage/distfiles/ , or could it?
363
364 Is this regular, or have I successfully installed by some chance?
365
366 Thanks if there will be any explanations and advice. And in the meantime, I
367 really enjoy using Pale Moon in my Gentoo, both master and, of course,
368 clone(s)!
369
370 Regards!
371
372 --
373 Miroslav Rovis
374 Zagreb, Croatia
375 http://www.CroatiaFidelis.hr

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies