Am Freitag, den 18.12.2009, 18:12 +0100 schrieb Nicoleau Fabien:
Hi,
I'm packaging phatch that provides /usr/bin/phatch, a graphical
application to manage some operations on photos. It handles command
line parameters so that it can be used in a script, without a GUI :
if no parameters are given, a GUI is displayed, otherwise it acts as a
console application.
Upstream asked me if it's possible to keep "phatch" package, containing
the graphical requirements (and requires) and requires phatch-cli, and
create a phatch-cli, that provides /usr/bin/phatch. With this way,
people could just install phatch-cli on a server and use it with
command line parameters (but it would crash if it's not launched with
parameters).
My question is :
is it good to provide a -cli package that does not provides a separate
script or executable file, and that will work only if the user is
carefull to not launch it in a way that it does not require a graphic
lib (without parameters in that context) ?
Regards,
Fabien NICOLEAU
I see phatch is a python package, so I think a little trick could be
possible:
%package cli:
BuildRequires: python-devel
Requires: non-gui-dependencies
%files
{_bindir}/phatch
and for the main package:
Requires: phatch-cli
Requires: pygtk2, <gui-dependencies>
[install desktop file etc...]
This way users could explicitly install phatch-cli, and it would "only"
not start up properly if called without arguments on a terminal, and the
main package (gui version) would contain the program and pull in the
graphical dependencies.
I don't know the program though, and if the cli version depends on gui
libraries to work properly as well it wouldn't work.