La distribution d'un programme sous Linux sans la source
Question
Je veux être en mesure de distribuer un programme sous Linux sans distribuer la source avec elle. La solution actuelle distribue un tar.gz avec un binaire précompilés. Quelle est la meilleure façon d'avoir ce binaire être placé dans le menu Applications? Est-il possible de le faire qui est commun dans la plupart des distributions Linux, mais Ubuntu, Fedora et OpenSUSE serait la priorité.
La solution
Vous voulez créer un .deb et .rpm. L'ancien couvre Ubuntu (Debian variantes), et les dernières variantes de Red Hat. Vous pouvez également fournir un exécutable autonome pour d'autres utilisateurs qui peuvent faire face à des choses comme les menus eux-mêmes.
Vous devrez traiter avec Gnome et la gestion du menu KDE, ainsi que les différentes distributions différemment leurs laïcs menus. Il y a aussi la question des variantes de netbook tels que Moblin, qui ont une interface netbook qui a probablement son propre mécanisme « ajouter une application ». Je ne sais pas s'il est possible pour un seul .deb pour gérer les deux systèmes de menus Gnome et KDE (pour Ubuntu et Kubuntu respectivement) mais j'imagine la capacité est là pour réduire la duplication des efforts pour Ubuntu.
Autres conseils
Toutes les distributions récentes devraient Vous installé xdg-utils
, qui fournit des scripts tels que
- xdg-desktop-icon
- xdg-desktop-menu
qui semblent être ce que vous cherchez.
ai pas regardé en elle ces derniers temps ... mais dans la journée (ce qui était vraiment pas tout ce qui il y a longtemps) quand j'utilisais Linux, RPM était la meilleure façon de distribuer les binaires pré-CombiLED (la plupart avaient distributations , et ont encore, une sorte de soutien pour les paquets RPM).
Voici un vieux comment faire sur la construction d'un paquet RPM:
Vous pouvez regarder BitRock intaller .
Autopackage ou d'autres solutions déposés dans un autre question .
Faites tar.gz et donner des droits communautaires à redistribuer les paquets modifiés. Ils feront, DEB et RPM d'autres paquets pour leurs distributions bien-aimés ... qui probablement répondent à leurs distros beaucoup mieux que vous ne pourriez jamais faire.
Il y a vraiment trop de différences entre les distributions pour faire une taille unique forfait, les souvent subtiles. Par exemple, certaines distributions a la section "Application", d'autres "Application " ... et cela fait disparaître des éléments de menu sur certains distros. Les bibliothèques peuvent être différents, les paramètres par défaut peuvent être différents, et ainsi de suite ...
et DEB sont RPMs pas portables comme on le croit. Avec un paquet il pourrait y avoir des problèmes même avec différentes versions d'une seule distribution, et il n'y a rien de pire que de se battre pour installer le paquet mal préparé correctement.
JeeBee est exact que vous voulez aller avec .deb ou .rpm.
Pour Ubuntu / Debian (.deb) Je voudrais ajouter que vous ne l'envoyez pas aux personnes mais vous créer un « référentiel » et ont les utilisateurs ajoutent que leur URL à /etc/apt/sources.list, vous obtenir un moyen facile de mettre à jour le logiciel ainsi.
De cette façon, vous résoudre le problème de distribution et de mise à jour en même temps.
Et voici un exemple de la façon dont cela pourrait ressembler à:
Et comment un dépôt pourrait ressembler à:
Mais ne pas répéter erreur ne Atmels et seulement i386 parce qu'il ya beaucoup d'autres architectures communes là-bas en ce moment, comme le amd64.
/ Johan
Pour RPM, ce tutoriel en trois parties par IBM est le guide du meilleur débutant à l'emballage, je sais:
http://www.ibm.com/developerworks/library/l- RPM1 /
http://www.ibm.com/developerworks/library/l-rpm2/
http://www.ibm.com/developerworks/library/l-rpm3. html