1 |
On Mon, 18 May 2015 05:48:59 +0000 (UTC) |
2 |
Martin Vaeth <martin@×××××.de> wrote: |
3 |
|
4 |
> Rich Freeman <rich0@g.o> wrote: |
5 |
> > Downsides include: |
6 |
> > 2. Impossible to tweak ebuilds without setting up an overlay. This |
7 |
> > might be annoying for devs/etc. |
8 |
> |
9 |
> It is still possible to setup a read-writable portage tree |
10 |
> (using overlayfs/aufs/unionfs-fuse/... e.g. using the squashmount |
11 |
> tool from the mv overlay). |
12 |
> |
13 |
> However, currently this does not play nicely with squashdelta: |
14 |
> You have to "undo" the mounting of squashdelta and have to use |
15 |
> different command (e.g. squashmount) afterwards. |
16 |
> Although this can probably be done e.g. in eix-sync with hooks, |
17 |
> I hope that in the near future there will be a possibility to |
18 |
> combine these methods more conveniently. |
19 |
> |
20 |
> Currently, I made only some remarks in comment #3 of bug 549716, |
21 |
> because it seems that the sync module mechanism is currently |
22 |
> lacking the infrastructure for adding custom data (like hooks) to |
23 |
> a module. |
24 |
> |
25 |
> |
26 |
|
27 |
No, that is not correct, the new sync system also introduced a new |
28 |
native portage postsync hook system. |
29 |
|
30 |
1) /etc/portage/postsync.d/... runs each script once at the completion |
31 |
of all repos that were synced. (no arguments passed in) |
32 |
|
33 |
2) /etc/portage/repo.postsync.d runs each script at the end of each |
34 |
repo that is synced. Each script can determine if it needs to run or |
35 |
simply exit. Each script is called with 3 arguments the repo name, |
36 |
the url link it was synced to and the path to the repo. |
37 |
|
38 |
Using that information you could easily add a postsync hook there |
39 |
looking for the gentoo repo argument. And if not exit. If it is the |
40 |
gentoo repo, call your squashmount script to remount it your way. |
41 |
|
42 |
See the example script in that directory. |
43 |
|
44 |
-- |
45 |
Brian Dolbec <dolsen> |