Gentoo Archives: gentoo-dev

From: Walter Dnes <waltdnes@××××××××.org>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] Sets vs Meta ebuilds
Date: Sun, 09 Jul 2017 00:27:49
Message-Id: 20170709002738.GA28879@waltdnes.org
In Reply to: Re: [gentoo-dev] Sets vs Meta ebuilds by "William L. Thomson Jr."
1 On Fri, Jul 07, 2017 at 01:07:57PM -0400, William L. Thomson Jr. wrote
2 > On Fri, 7 Jul 2017 12:57:17 -0400
3 > Brian Evans <grknight@g.o> wrote:
4 >
5 > > Beware of sets.. if you put toolchain packages in a set and later
6 > > do 'emerge --unmerge @custom-set' , emerge will happily destroy
7 > > your toolchain.
8 >
9 > That is not much different than removing a system package directly.
10 > If you do foolish things you will run into such problems. That would
11 > be a self inflicted issue. Likely done out of not knowing what you
12 > are doing.
13
14 I build Pale Moon to my own custom specs, as well as a contributed
15 SSE-only build for older machines. At one point, I read the list of
16 necessary stuff to do the build. I incorporated the following into
17 /etc/portage/palemoon_build
18
19 >=app-arch/zip-2.3
20 >=dev-lang/perl-5.6
21 >=dev-lang/python-2.7.3
22 >=dev-lang/yasm-1.0.1
23 >=dev-libs/glib-2.24
24 dev-vcs/git
25 media-libs/fontconfig
26 >=media-libs/freetype-2.1.0
27 media-libs/mesa
28 =sys-devel/autoconf-2.13
29 sys-devel/gcc
30 <=x11-libs/gtk+-3.0
31 x11-libs/libXt
32 x11-themes/hicolor-icon-theme
33
34 > Though I will have to see what happens if a package is listed in more
35 > than one set. I think there is a hierarchy there.
36
37 I tried "emerge -pv --unmerge @palemoon_build", and it was ready to
38 delete all the stuff, including gcc, etc.
39
40 > Not to mention if it was removed. I think the world or system set
41 > would pull it back in.
42
43 Kind of hard to "pull it back in" if gcc or glib or ncurses isn't
44 present. This is rather dangerous. The problem is that, unlike an
45 ebuild, "emerge --unmerge @set" removes all packages in the set,
46 regardless of whether they're required by another package or not.
47
48 I deleted /etc/portage/sets/palemoon_build, and the entry
49 "@palemoon_build" from /var/lib/portage/world_sets. It turns out that
50 all these packages are required anyways. hicolor-icon-theme was not
51 required previously, but <RANT> gtk seems to add more and more GNOME
52 dependencies every time I update my system. </RANT>
53
54 Let's say I try to do this as a meta package. So in my overlay I
55 create a category "meta-set" and a file "meta-set/pmbuild-0.ebuild"
56
57 EAPI=5
58 SLOT="0"
59 KEYWORDS="amd64 x86"
60 DEPEND="
61 >=app-arch/zip-2.3
62 >=dev-lang/perl-5.6
63 >=dev-lang/python-2.7.3
64 >=dev-lang/yasm-1.0.1
65 >=dev-libs/glib-2.24
66 dev-vcs/git
67 media-libs/fontconfig
68 >=media-libs/freetype-2.1.0
69 media-libs/mesa
70 =sys-devel/autoconf-2.13
71 sys-devel/gcc
72 <=x11-libs/gtk+-3.0
73 x11-libs/libXt
74 x11-themes/hicolor-icon-theme"
75
76 Does each entry have to be detailed with configure, install, etc,
77 stuff, or is this sufficient?
78
79 --
80 Walter Dnes <waltdnes@××××××××.org>
81 I don't run "desktop environments"; I run useful applications

Replies

Subject Author
Re: [gentoo-dev] Sets vs Meta ebuilds Rich Freeman <rich0@g.o>
Re: [gentoo-dev] Sets vs Meta ebuilds "William L. Thomson Jr." <wlt-ml@××××××.com>
Re: [gentoo-dev] Sets vs Meta ebuilds "William L. Thomson Jr." <wlt-ml@××××××.com>