Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Portage questions
Date: Tue, 22 Sep 2015 04:16:01
Message-Id: 5600D5F7.8040300@gentoo.org
In Reply to: Re: [gentoo-portage-dev] Portage questions by Joakim Tjernlund
1 On 09/21/2015 06:45 AM, Joakim Tjernlund wrote:
2 > On Sun, 2015-09-20 at 09:47 -0700, Zac Medico wrote:
3 >> On 09/16/2015 06:13 AM, Joakim Tjernlund wrote:
4 >>> 1)
5 >>> Is there a way to generate a snapshot of an installed portage VDB and then later
6 >>> compare that snapshot against the current VDB and generate a list of
7 >>> added/updated packages?
8 >>
9 >> This command will generate a flat file that is useful for comparisons
10 >> with diff -u:
11 >>
12 >> qlist -IvCURS | LC_ALL=C sort
13 >
14 > I was hoping for something akin to "emerge -pNDu world" but pointing emerge
15 > to another VDB. That would make it easier to see what has changed between then and now.
16
17 You can export the EPREFIX variable in order to make emerge enter prefix
18 mode.
19
20 >>
21 >>> 2)
22 >>> Currently we generate a tar file with binary pkgs containing all updated pkgs,
23 >>> unpack the tar file and emerge the binary pkgs with emerge --usepkgonly ...
24 >>> into a new ROOT. This works but that misses any updates to the profile(both gentoo and our own).
25 >>>
26 >>> To fix that we include a copy of both profiles in the tar file and copy our
27 >>> updated profiles into the new ROOT profiles before merging. This feels a bit
28 >>> clumsy and I wonder if there is a better way?
29 >>>
30 >>> Jocke
31 >>>
32 >>
33 >> Like Duncan said, I feel like we're missing some context here. I wonder
34 >> why you use binary packages instead of a full system image, considering
35 >> that it's a "new ROOT."
36 >
37 > Every update to ROOT will be too big if one have use a full system image at every update.
38 > Instead we use BTRFS and create a snapshot of current / in a new BTRFS subvolume
39 > and install the updates into this snapshot, then just change default subvolume in BTRFS and
40 > reboot.
41 > To transfer profile changes before merging binary pkgs one have to copy these into
42 > the new ROOT.
43 >
44 > Jocke
45 >
46
47 I suppose that emerge --sync is what most people use for this. To
48 distribute your profiles, you might configure portage to sync from your
49 own rsync server.
50 --
51 Thanks,
52 Zac