Hello, I'm preparing my own software source RPMs for inclusion into EPEL-5. My software is similar to fail2ban but it also includes a nice web interface.
While I'm distributing this software with my own commercial products I ship the software in two packages. One for the software and one for the javascript library that I use in the web interface(ExtJS/Sencha). I do that because I have other web interfaces using the same javascript library.
I talked with wolfy on irc and I have a dilema about how to organize the package for the EPEL repository.
Should I continue to have the javascript library as a separate package?
Also if it is a separate package, what would be the appropriate place for the files?
Since it is a library it should be under /usr/lib, but since it is only web related, maybe the better place would be under /var/www. In either case my application should have a symlink to the directory in order to work.
Also if it is under /var/www wolfy mentioned that it would be best if it is not web accessible, what are your toughs about that?
So guys, please give me some advice, I want to minimize the work of the reviewer once I file the package review request.
On Sun, Jun 19, 2011 at 06:27:32PM +0300, Marian Marinov wrote:
Hello, I'm preparing my own software source RPMs for inclusion into EPEL-5. My software is similar to fail2ban but it also includes a nice web interface.
While I'm distributing this software with my own commercial products I ship the software in two packages. One for the software and one for the javascript library that I use in the web interface(ExtJS/Sencha). I do that because I have other web interfaces using the same javascript library.
I talked with wolfy on irc and I have a dilema about how to organize the package for the EPEL repository.
Should I continue to have the javascript library as a separate package?
Yes, that would be quite nice.
Also if it is a separate package, what would be the appropriate place for the files?
Since it is a library it should be under /usr/lib, but since it is only web related, maybe the better place would be under /var/www. In either case my application should have a symlink to the directory in order to work.
/usr/share (%{_datadir} in an rpm spec file)
Look at the MochiKit package for one example: http://pkgs.fedoraproject.org/gitweb/?p=MochiKit.git;a=tree
Also look at http://fedoraproject.org/wiki/JavaScript_libraries_packaging_guideline_draft for some more current ideas (This is just a draft so it's not to be taken as MUSTs for now, though.)
Also if it is under /var/www wolfy mentioned that it would be best if it is not web accessible, what are your toughs about that?
It should not be under /var/www... Use the apache.conf to set it up to be served.
-Toshio
On Monday 20 June 2011 19:37:38 Toshio Kuratomi wrote:
On Sun, Jun 19, 2011 at 06:27:32PM +0300, Marian Marinov wrote:
Hello, I'm preparing my own software source RPMs for inclusion into EPEL-5. My software is similar to fail2ban but it also includes a nice web interface.
While I'm distributing this software with my own commercial products I ship the software in two packages. One for the software and one for the javascript library that I use in the web interface(ExtJS/Sencha). I do that because I have other web interfaces using the same javascript library.
I talked with wolfy on irc and I have a dilema about how to organize the package for the EPEL repository.
Should I continue to have the javascript library as a separate package?
Yes, that would be quite nice.
Also if it is a separate package, what would be the appropriate place for the files?
Since it is a library it should be under /usr/lib, but since it is only web related, maybe the better place would be under /var/www. In either case my application should have a symlink to the directory in order to work.
/usr/share (%{_datadir} in an rpm spec file)
Look at the MochiKit package for one example: http://pkgs.fedoraproject.org/gitweb/?p=MochiKit.git;a=tree
Also look at http://fedoraproject.org/wiki/JavaScript_libraries_packaging_guideline_draf t for some more current ideas (This is just a draft so it's not to be taken as MUSTs for now, though.)
Toshio, thanks for the information. It was quire helpful.
But now I have more questions :) Since currentle there isn't %{_sysconfdir}/js.d/ wouldn't it be better if i create a %{_sysconfdir}/httpd/conf.d/jslibs.conf in which I define alias for my library: Alias /js/extjs /usr/share/extjs
And we can then add additional aliases to that file.
Also if it is under /var/www wolfy mentioned that it would be best if it is not web accessible, what are your toughs about that?
It should not be under /var/www... Use the apache.conf to set it up to be served.
Do you mean that I have to have a %{_sysconfdir}/httpd/conf.d/hawk.conf (Hawk is the name of my application). And in it to have aliases setup for my application? If so, where should the web interface reside? Under %{_datadir}/hawk ?
-Toshio
On Mon, Jun 20, 2011 at 08:39:24PM +0300, Marian Marinov wrote:
On Monday 20 June 2011 19:37:38 Toshio Kuratomi wrote:
Look at the MochiKit package for one example: http://pkgs.fedoraproject.org/gitweb/?p=MochiKit.git;a=tree
Also look at http://fedoraproject.org/wiki/JavaScript_libraries_packaging_guideline_draf t for some more current ideas (This is just a draft so it's not to be taken as MUSTs for now, though.)
Toshio, thanks for the information. It was quire helpful.
But now I have more questions :) Since currentle there isn't %{_sysconfdir}/js.d/ wouldn't it be better if i create a %{_sysconfdir}/httpd/conf.d/jslibs.conf in which I define alias for my library: Alias /js/extjs /usr/share/extjs
And we can then add additional aliases to that file.
+1
yeah, since the javascript library guidelines are still a draft, that extra dir doesn't exist so your proposal works well.
Also if it is under /var/www wolfy mentioned that it would be best if it is not web accessible, what are your toughs about that?
It should not be under /var/www... Use the apache.conf to set it up to be served.
Do you mean that I have to have a %{_sysconfdir}/httpd/conf.d/hawk.conf (Hawk is the name of my application). And in it to have aliases setup for my application? If so, where should the web interface reside? Under %{_datadir}/hawk ?
I was talking specifically about the javascript library but yeah, /var/www shouldn't directly be used for hawk either. Your proposed solution sounds good. Take a look at:
http://fedoraproject.org/wiki/Packaging:Guidelines#Web_Applications
-Toshio
epel-devel@lists.fedoraproject.org