I'm trying to put a package together for webmin. It wants to install to libexec, but if I do that rpmlint (rightly) complains that there are non-executable text files. Perl files & HTML files are intermixed and separating them out would be a patching nightmare. With a bit of sed scripting, I can coax the whole thing into a different base directory.
The official packaging guidelines say Fedora follows the Filesystem Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess. If I try to use /opt/webmin though, rpmlint pitches a fit about using /opt. Nothing in the guidelines says I can't use /opt. Can I just ignore all these errors?
Also, neither the packing guidelines nor FHS make any mention of /var. Maybe that's a more appropriate spot.
These are the packaging guidelines I've been referring to: http://fedoraproject.org/wiki/Packaging/Guidelines
On Thursday 23 October 2008 06:57:50 pm Andy Theuninck wrote:
I'm trying to put a package together for webmin. It wants to install to libexec, but if I do that rpmlint (rightly) complains that there are non-executable text files. Perl files & HTML files are intermixed and separating them out would be a patching nightmare. With a bit of sed scripting, I can coax the whole thing into a different base directory.
The official packaging guidelines say Fedora follows the Filesystem Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess. If I try to use /opt/webmin though, rpmlint pitches a fit about using /opt. Nothing in the guidelines says I can't use /opt. Can I just ignore all these errors?
Also, neither the packing guidelines nor FHS make any mention of /var. Maybe that's a more appropriate spot.
These are the packaging guidelines I've been referring to: http://fedoraproject.org/wiki/Packaging/Guidelines
Actually, the FHS explicitly mentions /var [0] and /opt [1]. And you can't use either for a package included in Fedora. (Or at least, you can't install your package to a /var/PKGNAME prefix.)
[0]: http://www.pathname.com/fhs/pub/fhs-2.3.html#PURPOSE31 [1]: http://www.pathname.com/fhs/pub/fhs-2.3.html#PURPOSE14
Regards,
Andy Theuninck wrote:
I'm trying to put a package together for webmin. It wants to install to libexec, but if I do that rpmlint (rightly) complains that there are non-executable text files. Perl files & HTML files are intermixed and separating them out would be a patching nightmare. With a bit of sed scripting, I can coax the whole thing into a different base directory.
Separating different types of files and getting upstream to accept the patches is the right thing to do.
Failing to get buyin from upstream, separating them and symlinking is acceptable but not encouraged.
This brief section of the guidelines has useful information about where things might belong in this case:: http://fedoraproject.org/wiki/Packaging/Guidelines#Web_Applications
If you look at moin and other web packages, you'll see that they place a lot of files into /usr/share, perhaps how you're intending to use /opt. However, you do have to make sure you aren't putting executables, binaries, or files that need to be written there.
The official packaging guidelines say Fedora follows the Filesystem Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess. If I try to use /opt/webmin though, rpmlint pitches a fit about using /opt. Nothing in the guidelines says I can't use /opt. Can I just ignore all these errors?
The FHS says: /opt is reserved for the installation of add-on application software packages.
Anything packaged by Fedora is part of the system packaging rather than an addon so we stay out of /opt.
Also, neither the packing guidelines nor FHS make any mention of /var. Maybe that's a more appropriate spot.
For some content, yes. But not for the bulk of it.
The Guidelines section I linked to earlier mentions that /var is not the place for (most of) these files.
-Toshio
Thanks for the hints. As far as upstream goes, [as I understand it] the main goal is to support as many OSes as possible with the default. And from that prospective, I can understand the advantage of sticking everything into a single directory.
Moving as much as possible over to /usr/share and symlinking against the files that are actually needed should be a workable solution (and maybe an entertaining exercise in bash scripting).
~Andy
2008/10/23 Toshio Kuratomi a.badger@gmail.com:
Andy Theuninck wrote:
I'm trying to put a package together for webmin. It wants to install to libexec, but if I do that rpmlint (rightly) complains that there are non-executable text files. Perl files & HTML files are intermixed and separating them out would be a patching nightmare. With a bit of sed scripting, I can coax the whole thing into a different base directory.
Separating different types of files and getting upstream to accept the patches is the right thing to do.
Failing to get buyin from upstream, separating them and symlinking is acceptable but not encouraged.
This brief section of the guidelines has useful information about where things might belong in this case:: http://fedoraproject.org/wiki/Packaging/Guidelines#Web_Applications
If you look at moin and other web packages, you'll see that they place a lot of files into /usr/share, perhaps how you're intending to use /opt. However, you do have to make sure you aren't putting executables, binaries, or files that need to be written there.
The official packaging guidelines say Fedora follows the Filesystem Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess. If I try to use /opt/webmin though, rpmlint pitches a fit about using /opt. Nothing in the guidelines says I can't use /opt. Can I just ignore all these errors?
The FHS says: /opt is reserved for the installation of add-on application software packages.
Anything packaged by Fedora is part of the system packaging rather than an addon so we stay out of /opt.
Also, neither the packing guidelines nor FHS make any mention of /var. Maybe that's a more appropriate spot.
For some content, yes. But not for the bulk of it.
The Guidelines section I linked to earlier mentions that /var is not the place for (most of) these files.
-Toshio
-- fedora-devel-list mailing list fedora-devel-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-devel-list
On Thu, Oct 23, 2008 at 08:57:50PM -0500, Andy Theuninck wrote:
Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess. If I try to use /opt/webmin
I'm surprised the Fedora packaging guidelines don't mention this explicitly, but historically Red Hat and Fedora have read "add-on application software packages" to mean third-party packages -- i.e., not things we package.
Also, neither the packing guidelines nor FHS make any mention of /var. Maybe that's a more appropriate spot.
These files aren't intended to change, are they? In that case /var really shouldn't be in the picture.
There's some precedent for packages using /usr/lib/packagename for this purpose -- bugzilla, for example, and, um, anaconda.
On Thu, Oct 23, 2008 at 10:30:06PM -0400, Matthew Miller wrote:
There's some precedent for packages using /usr/lib/packagename for this purpose -- bugzilla, for example, and, um, anaconda.
I mean /usr/share. And looks like the only thing anaconda puts there is completely legitimate image data so ignore that part.
Le jeudi 23 octobre 2008 à 20:57 -0500, Andy Theuninck a écrit :
The official packaging guidelines say Fedora follows the Filesystem Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess.
opt is the right place to dump messes and is good enough for ISVs with no ambitions but Fedora does not package messes so you have to try harder.
Nicolas Mailhot wrote:
Le jeudi 23 octobre 2008 à 20:57 -0500, Andy Theuninck a écrit :
The official packaging guidelines say Fedora follows the Filesystem Hierarchy Standard, and as I read FHS /opt would be the most appropriate place to dump this mess.
opt is the right place to dump messes and is good enough for ISVs with no ambitions but Fedora does not package messes so you have to try harder.
Easy, he's here because he wants to do the right thing, and he's not upstream, so there's no reason to clueby4 him just yet.
You might do what apache does and simply place the files where they go, then symlink them to a conf directory in /etc . You'd be doing it on a much larger scale than apache, but until you get upstream to suck less, you at least have a precedent for it (though doing it for apache hasn't particularly encouraged them to change their goofy-as-hell recommended file layout).
--CJD
Le jeudi 23 octobre 2008 à 20:57 -0500, Andy Theuninck a écrit :
Also, neither the packing guidelines nor FHS make any mention of /var. Maybe that's a more appropriate spot.
"Applications must generally not add directories to the top level of /var. Such directories should only be added if they have some system-wide implication, and in consultation with the FHS mailing list."
There, read again