Various packages now install files into /usr/lib/rpm/fileattrs for use when building rpms. Currently that directory is owned by:
rpm-build-4.13.0-0.rc1.4.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch
Of the various packages on my machine that install files there:
gstreamer1-1.6.0-2.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch kde-settings-23-7.fc23.noarch nodejs-0.10.36-4.fc23.x86_64 perl-generators-1.06-1.fc23.noarch python3-cups-1.9.72-2.fc23.x86_64 redhat-rpm-config-36-1.fc23.noarch rpm-build-4.13.0-0.rc1.4.fc23.x86_64 rpm-mpi-hooks-3-2.fc23.noarch
only rpm-mpi-hooks requires rpm-build for directory ownership, while javapackages-tools takes the route of owning the directory. However, I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory. The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
On Fri, Oct 16, 2015 at 03:06:01PM -0600, Orion Poplawski wrote:
Various packages now install files into /usr/lib/rpm/fileattrs for use when building rpms. Currently that directory is owned by:
rpm-build-4.13.0-0.rc1.4.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch
Of the various packages on my machine that install files there:
gstreamer1-1.6.0-2.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch kde-settings-23-7.fc23.noarch nodejs-0.10.36-4.fc23.x86_64 perl-generators-1.06-1.fc23.noarch python3-cups-1.9.72-2.fc23.x86_64 redhat-rpm-config-36-1.fc23.noarch rpm-build-4.13.0-0.rc1.4.fc23.x86_64 rpm-mpi-hooks-3-2.fc23.noarch
only rpm-mpi-hooks requires rpm-build for directory ownership, while javapackages-tools takes the route of owning the directory. However, I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory. The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
+1 to not having dependencies on non-trivial packages for the sake of directory ownership.
Zbyszek
On Fri, Oct 16, 2015 at 03:06:01PM -0600, Orion Poplawski wrote:
The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
Your proposed solution sounds good.
FWIW another package that installs a file in this directory and thus 'Requires: rpm-build' is supermin-devel:
http://pkgs.fedoraproject.org/cgit/supermin.git/commit/?id=69cab538c2961e5f5...
Rich.
On Fri, 16 Oct 2015 15:06:01 -0600 Orion Poplawski orion@cora.nwra.com wrote:
Various packages now install files into /usr/lib/rpm/fileattrs for use when building rpms. Currently that directory is owned by:
rpm-build-4.13.0-0.rc1.4.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch
Of the various packages on my machine that install files there:
gstreamer1-1.6.0-2.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch kde-settings-23-7.fc23.noarch nodejs-0.10.36-4.fc23.x86_64 perl-generators-1.06-1.fc23.noarch python3-cups-1.9.72-2.fc23.x86_64 redhat-rpm-config-36-1.fc23.noarch rpm-build-4.13.0-0.rc1.4.fc23.x86_64 rpm-mpi-hooks-3-2.fc23.noarch
only rpm-mpi-hooks requires rpm-build for directory ownership, while javapackages-tools takes the route of owning the directory. However, I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory. The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
Sounds reasonable to me.
kevin
On 2015-10-16, Orion Poplawski orion@cora.nwra.com wrote:
only rpm-mpi-hooks requires rpm-build for directory ownership, while javapackages-tools takes the route of owning the directory. However, I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory. The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
If you move the directory from rpm-build to rpm, then all the packages should require rpm instead of rpm-build.
But that contradicts your wish "I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory". rpm-mpi-hooks does not need rpm more or less than it needs rpm-build, does it?
If the only reason for the dependency is the ownership, then co-owning the directory as javapackages-tools does is the right way.
But the directory hosts dependency generators executed by rpmbuild. Not by rpm. Moving the ownership from rpm-build to rpm sounds semantically wrong.
One can perceive the package packages as rpm-build plugins. Having the dependency on rpm-build does not look wrong in the end.
-- Petr
On 2015-10-19, Petr Pisar ppisar@redhat.com wrote:
One can perceive the package packages as rpm-build plugins. Having the dependency on rpm-build does not look wrong in the end.
One must perceive the scripts as rpm-build plugins because they are installed into rpm-build's package directory. Otherwise the were installed into /usr/bin (or /usr/libexec). So the dependency on rpm-build is correct.
If the scripts are usable without rpmbuild, then the *.{prov,req} scripts should go into different binary package then the *.attr files. The package with *.attr files will require both rpm-build and the package with *.{prov,req} scripts.
-- Petr
On 10/16/2015 11:06 PM, Orion Poplawski wrote:
Various packages now install files into /usr/lib/rpm/fileattrs for use when building rpms. Currently that directory is owned by:
rpm-build-4.13.0-0.rc1.4.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch
Of the various packages on my machine that install files there:
gstreamer1-1.6.0-2.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch kde-settings-23-7.fc23.noarch nodejs-0.10.36-4.fc23.x86_64 perl-generators-1.06-1.fc23.noarch python3-cups-1.9.72-2.fc23.x86_64 redhat-rpm-config-36-1.fc23.noarch rpm-build-4.13.0-0.rc1.4.fc23.x86_64 rpm-mpi-hooks-3-2.fc23.noarch
only rpm-mpi-hooks requires rpm-build for directory ownership, while javapackages-tools takes the route of owning the directory. However, I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory. The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
I agree. While Petr is right from an purist POV practicality is what counts here. Forcing all those packages to either require rpmbuild or splitting out an devel-rpm sub package is not a good option. Having the directory within rpm makes things work without any Requires:
I moved the directory over in rawhide (rpm-4.13.0-0.rc1.8.fc24). It is probably a bit late for F23. Shall I clone the bug for javapackages-tools, rpm-mpi-hooks, supermin-devel to get them adjusted or can you take care of them on your own?
Florian
On Fri, Oct 30, 2015 at 12:24:35PM +0100, Florian Festi wrote:
On 10/16/2015 11:06 PM, Orion Poplawski wrote:
Various packages now install files into /usr/lib/rpm/fileattrs for use when building rpms. Currently that directory is owned by:
rpm-build-4.13.0-0.rc1.4.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch
Of the various packages on my machine that install files there:
gstreamer1-1.6.0-2.fc23.x86_64 javapackages-tools-4.6.0-6.fc23.noarch kde-settings-23-7.fc23.noarch nodejs-0.10.36-4.fc23.x86_64 perl-generators-1.06-1.fc23.noarch python3-cups-1.9.72-2.fc23.x86_64 redhat-rpm-config-36-1.fc23.noarch rpm-build-4.13.0-0.rc1.4.fc23.x86_64 rpm-mpi-hooks-3-2.fc23.noarch
only rpm-mpi-hooks requires rpm-build for directory ownership, while javapackages-tools takes the route of owning the directory. However, I'd rather rpm-mpi-hooks not require rpm-build as it's not really necessary other than for this directory. The simple thing I think would be for rpm to own the directory. Does that seem reasonable?
I agree. While Petr is right from an purist POV practicality is what counts here. Forcing all those packages to either require rpmbuild or splitting out an devel-rpm sub package is not a good option. Having the directory within rpm makes things work without any Requires:
I moved the directory over in rawhide (rpm-4.13.0-0.rc1.8.fc24). It is probably a bit late for F23. Shall I clone the bug for javapackages-tools, rpm-mpi-hooks, supermin-devel to get them adjusted or can you take care of them on your own?
The change is just dropping `Requires: rpm-build'?
Rich.
On 11/02/2015 11:13 AM, Richard W.M. Jones wrote:
On Fri, Oct 30, 2015 at 12:24:35PM +0100, Florian Festi wrote:
I moved the directory over in rawhide (rpm-4.13.0-0.rc1.8.fc24). It is probably a bit late for F23. Shall I clone the bug for javapackages-tools, rpm-mpi-hooks, supermin-devel to get them adjusted or can you take care of them on your own?
The change is just dropping `Requires: rpm-build'?
Rich.
Yup. I don't think we need to clone any bugs...
On 10/30/2015 12:24 PM, Florian Festi wrote:
I moved the directory over in rawhide (rpm-4.13.0-0.rc1.8.fc24). It is probably a bit late for F23. Shall I clone the bug for javapackages-tools, rpm-mpi-hooks, supermin-devel to get them adjusted or can you take care of them on your own?
I have just fixed javapackages-tools upstream [1] by adding missing directory ownership. The change will propagate to rawhide with next upstream release.
[1] https://github.com/mizdebsk/javapackages/commit/4cfed9e
On 11/02/2015 03:23 PM, Mikolaj Izdebski wrote:
On 10/30/2015 12:24 PM, Florian Festi wrote:
I moved the directory over in rawhide (rpm-4.13.0-0.rc1.8.fc24). It is probably a bit late for F23. Shall I clone the bug for javapackages-tools, rpm-mpi-hooks, supermin-devel to get them adjusted or can you take care of them on your own?
I have just fixed javapackages-tools upstream [1] by adding missing directory ownership. The change will propagate to rawhide with next upstream release.
I think you missed a bit of the point. There is no need to require rpm since *everything* implicitly requires rpm, so there is no need to own those directories.
On 11/02/2015 11:43 PM, Orion Poplawski wrote:
On 11/02/2015 03:23 PM, Mikolaj Izdebski wrote:
On 10/30/2015 12:24 PM, Florian Festi wrote:
I moved the directory over in rawhide (rpm-4.13.0-0.rc1.8.fc24). It is probably a bit late for F23. Shall I clone the bug for javapackages-tools, rpm-mpi-hooks, supermin-devel to get them adjusted or can you take care of them on your own?
I have just fixed javapackages-tools upstream [1] by adding missing directory ownership. The change will propagate to rawhide with next upstream release.
I think you missed a bit of the point. There is no need to require rpm since *everything* implicitly requires rpm, so there is no need to own those directories.
Initially I assumed so -- that's why javapackages-tools didn't own these directories. It only owned fileattrs directory, which was installed by rpm-build.
Now I re-read packaging guidelines part about directory ownership [1], which implies that package installing file to directory not owned by filesystem or man packages should own the directory, unless it requires package owning the directory. I didn't find anything about implicit dependency on rpm.
[1] https://fedoraproject.org/wiki/Packaging:Guidelines#File_and_Directory_Owner...