Gentoo Archives: gentoo-dev

From: Mike Gilbert <floppym@g.o>
To: Gentoo Dev <gentoo-dev@l.g.o>
Subject: Re: [gentoo-dev] act-{user,group} & RDEPEND
Date: Wed, 28 Aug 2019 15:24:50
Message-Id: CAJ0EP40tr-yE1uJSXeU4OEWbkg_yVhRddQmJiswOnDyCKeFAQw@mail.gmail.com
In Reply to: [gentoo-dev] act-{user,group} & RDEPEND by Thomas Deutschmann
1 On Wed, Aug 28, 2019 at 11:09 AM Thomas Deutschmann <whissi@g.o> wrote:
2 >
3 > Hi,
4 >
5 > most packages are putting acct-{user,group}/* dependencies into RDEPEND.
6 >
7 > What about packages using tmpfiles eclass and installing tmpfiles which
8 > will make use of acct-{user,group}/* depedencies?
9 >
10 > I.e. dev-db/mysql-init-scripts will install
11 > "/usr/lib/tmpfiles.d/mysql.conf" with the following content:
12 >
13 > > d /var/run/mysqld 0755 mysql mysql -
14 >
15 > The package is a requirement for all
16 > dev-db/{mysql,mariadb,percona-server} packages because it will provide
17 > runscript/services.
18 >
19 > To be able to start your chosen database server right after
20 > installation, we trigger tmpfiles service in pkg_postinst via
21 > tmpfiles_process().
22 >
23 > Therefore, mysql user and group provided by acct-{user,group}/mysql must
24 > be merged *before* tmpfiles_process() will be called or
25 > "/var/run/mysqld" will be created as root:root which will prevent your
26 > favorite database server to start.
27 >
28 > However, devmanual
29 > (https://devmanual.gentoo.org/general-concepts/dependencies/) says:
30 >
31 > > Items which are in RDEPEND but not DEPEND could in theory be merged
32 > > after the target package. Portage does not currently do this.
33 > So don't we have a conceptual problem here and are just lucky that
34 > current used PMs don't do at the moment what specification will allow
35 > them to do?
36 >
37 > Moving to (B)DEPEND will address the problem for non-binary package
38 > users only.
39
40 There is an open bug to address this in a future EAPI.
41
42 https://bugs.gentoo.org/660306
43
44 Until then, putting the deps in RDEPEND is the best we can do.