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. |