Gentoo Archives: gentoo-user

From: Frank Steinmetzger <Warp_7@×××.de>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] question/feature request: First fetch, then compile...
Date: Wed, 17 Dec 2014 18:25:06
Message-Id: 20141217182457.GA3873@kern.lan
In Reply to: Re: [gentoo-user] question/feature request: First fetch, then compile... by meino.cramer@gmx.de
1 On Wed, Dec 17, 2014 at 09:41:06AM +0100, meino.cramer@×××.de wrote:
2
3 > > > With some manual operations:
4 > > >
5 > > > Capture the output of emerge -vp ....
6 > > > Edit it to call
7 > > > ebuild <full patch to <package>.ebuild> fetch
8 > > > for each package.
9 > > >
10 > > > Then issue emerge without -p
11 > >
12 > >
13 > > Way too complicated.
14 > >
15 > > emerge -pvuND world
16 > >
17 > > check list, ensure everything is OK, etc etc. Then
18 > >
19 > > emerge -vunDf world
20 > > emerge -vuND world
21 > > […]
22 > >
23 >
24 > Hi,
25 >
26 > thanks for your replies...
27 >
28 > ...I currently do two emerges, one with -f the second
29 > without.
30 > And as merntioned in my initiao mail, I dont want it, since it implies
31 > two "Calculating dependencies" which is once too often...
32 >
33 > This was the initial reason for asking...
34
35 Well, when I run into this (my old netbook needs over 15 minutes for the
36 dependency calculations of a deep world update), I do -avuD world. Once the
37 output is shown, portage will wait for me to answer 'yes'.
38
39 Then I go to another terminal where I run emerge -f with the -O option,
40 because now I know which packages to fetch, thus eliminating the need for a
41 second dependency calculation. If the list of packages is small, I just type
42 the names by hand. If the list is larger, I usually prepare a list in vim
43 that I can paste to the emerge command.
44
45 Say you have output from emerge like so (my situation right now):
46
47 ...
48 [ebuild U ] media-fonts/dejavu-2.34 [2.33] USE="X -fontforge" 4.597 KiB
49 [ebuild U ] dev-libs/tinyxml2-2.2.0:0/2 [1.0.9_p20121123:0/0] USE="-static-libs {-test}" 445 KiB
50 [ebuild rR ] kde-base/libkexiv2-4.14.3:4/4.14 USE="xmp (-aqua) -debug" 0 KiB
51 ...
52
53 Copy-paste that into a file 'emerge.out'. If you run screen/tmux, that’s
54 easily done even on a mouse-less terminal. Then use the following
55 sed-oneliner on it which I just conjured up:
56
57 sed -e '/ 0 KiB$/d' -e 's/.\{17\}/=/' -e 's/ .*//'
58
59 It first removes all lines ending in " 0 KiB" (meaning no download
60 necessary) and then removes everything around the package name and version,
61 converting
62
63 [ebuild U ] media-fonts/dejavu-2.34 [2.33] USE="X -fontforge" 4.597 KiB
64
65 into
66
67 =media-fonts/dejavu-2.34
68
69 Finally, feed that to emerge -fO:
70
71 emerge -fO $(sed -e '/ 0 KiB$/d' -e 's/.\{17\}/=/' -e 's/ .*//' < emerge.out)
72
73 --
74 Gruß | Greetings | Qapla’
75 Please do not share anything from, with or about me with any social network.
76
77 Arrogant is he who, on his birthday, sends his parents a good wishes card.

Attachments

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