[Fedora-packaging] Packaging Guidelines and Servers

Toshio Kuratomi a.badger at gmail.com
Thu Dec 8 00:27:34 UTC 2011


On Wed, Dec 07, 2011 at 03:05:53PM -0500, Jeff Johnston wrote:
> Hello,
> 
> There doesn't seem to be any clear documentation in the Packaging 
> Guidelines concerning servers that aren't meant to start on boot so I 
> thought I would ask for clarification.
> 
> I found the following in the systemd guidelines:
> 
>  > Each package that contains software that wants/needs to start a 
> traditional service at boot MUST have a systemd unit file.
> 
> which I interpret as meaning a script is not required in the case of a 
> server that doesn't mean to start at boot.
> 
> Is this correct?
> 
Probably not but both your wording and ours are making it difficult to
know that for sure.  How does your software start?  Does a normal user run
it, possibly adding it to their ~/.profile or their desktop environment's
system for starting something on boot?  If so, you do not need a systemd
unit file.

OTOH, if a system administrator is required to run it and then it is
a service for people connecting to that box, it almost certainly does fall
into this category and needs to have a systemd unit file.

> The reason I am asking is that I maintain the eclipse-rse package 
> (Remote System Explorer).  In addition to the normal Eclipse plug-ins 
> and features, the upstream project also packages a server for linux that 
> is used to allow exploring of a linux host via the Eclipse client 
> software.  The eclipse-rse package has not packaged the server in the 
> past and I wish to do so now.
> 
> The server is currently packaged upstream as a tarball to be expanded 
> into a single directory (/opt/rseserver is suggested).  It contains perl 
> scripts, jar files, and some property files.  The perl scripts are the 
> front-end and they end up using java to invoke classes found in the jar 
> files.  The property files are used to set certain features, most 
> notably, ssl support.  Ssl support requires some additional set-up to 
> work properly such as setting up a Java Keystore.
> 
> I have split up the tarball into the configuration property files which 
> I placed in /etc/sysconfig/rseserver, the java jar files which I put 
> into /usr/share/java/eclipse-rse-server and the perl scripts which I 
> placed into /usr/share/eclipse-rse-server.  I modified the perl scripts 
> so that they would work with the files moved as they were.
> 
> Is my break-up of the upstream package reasonable?
>
The configuration files should probably go in %{_sysfonfdir}/rseserver
(becomes /etc/rseserver) rather than in /etc/sysconfig.  The other pieces
sound okay to me although a java person may want to weigh in as well.

Be careful, though -- if you're packaging for inclusion in Fedora,
everything must be compiled from source.  That means that the jar files you
refer to would need to be removed in the rpm's %prep section and then
rebuilt in the %build section from the java source files.

-Toshio
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://lists.fedoraproject.org/pipermail/packaging/attachments/20111207/193eb579/attachment.bin 


More information about the packaging mailing list