Re: [gentoo-portage-dev] [PATCH v2] install-qa-check: Do not install empty directories
W dniu śro, 10.01.2018 o godzinie 15∶39 -0500, użytkownik Michael Orlitzky napisał: > On 01/10/2018 03:13 PM, Michał Górny wrote: > > Remove empty directories in install-qa-check phase in order to prevent > > Portage from installing them, and therefore from developers relying > > on them being installed. > > This is going to break a lot of packages whose build systems create e.g. > /var/lib/foo and do nothing with it immediately. The ebuild should be > calling keepdir on those paths, but how would anyone know that? > I personally think it'd be best to return to having a stable and testing branch of Portage, with the latter targeted at developers who are supposed to test for this kind of breakage and fix it, and the former keeping the safe behavior longer for end users. -- Best regards, Michał Górny
Re: [gentoo-portage-dev] [PATCH v2] install-qa-check: Do not install empty directories
On 01/10/2018 01:15 PM, Michael Orlitzky wrote: > On 01/10/2018 03:55 PM, Zac Medico wrote: >>> >>> This is going to break a lot of packages whose build systems create e.g. >>> /var/lib/foo and do nothing with it immediately. The ebuild should be >>> calling keepdir on those paths, but how would anyone know that? >> >> If we consider that portage already removes these directories if they >> are still empty when the package is re-merged or upgraded, then maybe >> the risk is low enough? >> > > Does it? (Are we talking about the same thing?) > > For example, the nagios-core build system creates a bunch of empty > directories under /var/nagios: > > $ find /var/nagios > /var/nagios > /var/nagios/rw > /var/nagios/home > /var/nagios/spool > /var/nagios/spool/checkresults > /var/nagios/archives > > Re-emerging the same version of nagios-core doesn't kill them off. Oh, you're right, I was mistaken. It's possible that the behavior changed at some point, but currently it protects directories installed by the new instance, as shown here: --- replaced dir /var/nagios/spool/checkresults --- replaced dir /var/nagios/spool --- replaced dir /var/nagios/rw --- replaced dir /var/nagios/archives --- replaced dir /var/nagios -- Thanks, Zac
Re: [gentoo-portage-dev] [PATCH v2] install-qa-check: Do not install empty directories
On 01/10/2018 03:55 PM, Zac Medico wrote: >> >> This is going to break a lot of packages whose build systems create e.g. >> /var/lib/foo and do nothing with it immediately. The ebuild should be >> calling keepdir on those paths, but how would anyone know that? > > If we consider that portage already removes these directories if they > are still empty when the package is re-merged or upgraded, then maybe > the risk is low enough? > Does it? (Are we talking about the same thing?) For example, the nagios-core build system creates a bunch of empty directories under /var/nagios: $ find /var/nagios /var/nagios /var/nagios/rw /var/nagios/home /var/nagios/spool /var/nagios/spool/checkresults /var/nagios/archives Re-emerging the same version of nagios-core doesn't kill them off.
Re: [gentoo-portage-dev] [PATCH v2] install-qa-check: Do not install empty directories
On 01/10/2018 12:39 PM, Michael Orlitzky wrote: > On 01/10/2018 03:13 PM, Michał Górny wrote: >> Remove empty directories in install-qa-check phase in order to prevent >> Portage from installing them, and therefore from developers relying >> on them being installed. > > This is going to break a lot of packages whose build systems create e.g. > /var/lib/foo and do nothing with it immediately. The ebuild should be > calling keepdir on those paths, but how would anyone know that? If we consider that portage already removes these directories if they are still empty when the package is re-merged or upgraded, then maybe the risk is low enough? -- Thanks, Zac signature.asc Description: OpenPGP digital signature
Re: [gentoo-portage-dev] [PATCH v2] install-qa-check: Do not install empty directories
On 01/10/2018 03:13 PM, Michał Górny wrote: > Remove empty directories in install-qa-check phase in order to prevent > Portage from installing them, and therefore from developers relying > on them being installed. This is going to break a lot of packages whose build systems create e.g. /var/lib/foo and do nothing with it immediately. The ebuild should be calling keepdir on those paths, but how would anyone know that?