Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/11/2016, à 02:19

favdb

[abandon] Créer un nouvel empaquetage

Bonjour,

Je m'occupe de la maintenance et du développement d'un logiciel au bénéfice de la communauté, donc open source. Jusqu'à présent je m'étais débrouillé pour fabriquer le paquetage nécessaire à la distribution en .deb, mais un volume non négligeable est constitué de fichiers qui ne bougent pas, ou très peu, d'une version à l'autre.

Je cherche donc des conseils éclairés pour réaliser un autre empaquetage constitué de deux paquets distincts mais interdépendants:
- un paquet principal : le logiciel proprement dit soit environ 7,0Mo, qu'on pourrait appeler "core", soumis à 3 versions annuelles,
- un paquet "statique" : ce sont les libraries et quelques fichiers de service, soit environ 20Mo.

Merci d'avance à ceux qui pourront m'aider.

PS: le logiciel en question est oStorybook. Il est développé en JAVA sous Netbeans.

Dernière modification par favdb (Le 26/11/2016, à 12:19)

Hors ligne

#2 Le 21/11/2016, à 17:14

elburgos

Re : [abandon] Créer un nouvel empaquetage

Vu que tu sais créer un paquet, je vois pas où est le problème.Tu crée tes deux paquets indépendamment, et tu les lies par une dépendance.


Envoyé depuis mon Windows Phone

Hors ligne

#3 Le 21/11/2016, à 18:37

erresse

Re : [abandon] Créer un nouvel empaquetage

elburgos a écrit :

Vu que tu sais créer un paquet, je vois pas où est le problème.Tu crée tes deux paquets indépendamment, et tu les lies par une dépendance.

Le problème, c'est peut-être que cette application n'est pas disponible dans un dépôt ou un PPA et, de ce fait, il faut télécharger les deux paquets et les installer dans l'ordre "dépendances -> application" pour que les dépendances soient trouvées lorsque l'application est installée.
Dans le cas d'une mise à jour du paquet "application", les dépendances n'ayant pas changé, elles doivent être déjà présentes et le système devrait alors les trouver...


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#4 Le 22/11/2016, à 01:13

favdb

Re : [abandon] Créer un nouvel empaquetage

Merci erresse, ton diagnostique est exact. En réalité je ne maîtrise absolument pas la technique de l'empaquetage. Je me suis borné à tenter de reproduire un paquet existant. Par exemple, je ne sais pas où trouver la liste des sections autorisées. Mon bidouillage n'est rien d'autre qu'un... bidouillage, et j'aimerais bien faire quelque chose de propre. Je n'ai pas réussi non plus à trouver la procédure à suivre  pour faire entrer ce paquet dans un dépôt officiel. Le plus important c'est comment on fait pour définir les dépendances. D'après ce que j'ai cru comprendre il faudrait donc deux paquets:
- le paquet contenant les bibliothèques et autres fichiers de service qui ne bougent presque pas, ce serait le paquet "lib", soit environ 25Mo
- le paquet contenant le coeur de l'application, ce serait le "core", et je suppose que c'est dans celui-ci qu'il faut indiquer qu'il dépend du "lib", soit 7Mo.

Pour une installation à partir d'un dépôt on utilise simplement le paquet "core", le "lib" serait automatiquement installé si besoin.

C'est ça? Et comment on indique la dépendance? Et comment on fait si le "lib" évolue lors d'une nouvelle version?

En tout cas merci de vous intéresser à ce sujet.

Hors ligne

#5 Le 22/11/2016, à 09:44

derderder

Re : [abandon] Créer un nouvel empaquetage

Si tu veux integrer ton paquet dans un dépot officiel, il faut un paquet propre, pas un bidouillage. Le site de debian à un guide sur comment faire un paquet proprement:
https://wiki.debian.org/HowToPackageForDebian
Comme ton soft est en Java, regarde les guidelines java également:
https://www.debian.org/doc/packaging-ma … index.html

Pour inclure ton paquet dans un dépot, tu dois d'abord l'intégrer à Debian, il sera automatiquement integrer dans la prochaine maj d'ubuntu. Par contre integrer un paquet à Debian est long et relativement complexe, prépare toi à y passer beaucoup de temps.

Dernière modification par derderder (Le 22/11/2016, à 09:45)

Hors ligne

#6 Le 22/11/2016, à 11:37

erresse

Re : [abandon] Créer un nouvel empaquetage

En fait, les dépendances d'un paquet sont indiquées dans le répertoire "DEBIAN" du paquet, dans le fichier "control", mais cela ne peut fonctionner que si tous les paquets indiqués en dépendances sont dans des dépôts qui peuvent être atteints lors de l'installation.
Il est possible de créer son propre dépôt (un PPA) et une fois ajouté aux sources de logiciels de l'utilisateur, l'installation des paquets de ce dépôt sera traitée comme ceux d'un dépôt officiel, par les mêmes gestionnaires de paquets.
Toutefois, la création et la maintenance d'un dépôt PPA n'est peut-être pas si simple et c'est une responsabilité importante, car il ne s'agit pas que l'installation d'un paquet de ce dépôt ne casse le système de l'utilisateur...
Le moyen simple de palier ce problème de dépendances, c'est encore de signaler dans un document (notice, mode d'emploi) quelle est la procédure pour installer l'application, et celle pour la mettre à jour s'il y a des différences.


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne

#7 Le 26/11/2016, à 12:19

favdb

Re : [abandon] Créer un nouvel empaquetage

Merci beaucoup pour vos réponses.

Comme c'est complexe je vais donc en rester là, je préfère m'occuper du logiciel lui même. J'attendrai qu'un volontaire ayant la connaissance veuille bien s'occuper de ça (ce qui est le cas pour ArchLinux). Je vais me contenter d'essayer de faire un paquet "update" qui ne mettra à jour que la partie "core", ça réduira d'autant le temps de téléchargement.

Hors ligne

#8 Le 26/11/2016, à 13:17

erresse

Re : [abandon] Créer un nouvel empaquetage

Ce que tu peux peut-être aussi envisager de faire, c'est un petit paquet d'installation contenant le "core" et une procédure preinst (c'est un petit script bash) qui vérifie si l'application est déjà installée sur le système et, si ce n'est pas le cas, lance le téléchargement et l'installation du paquet complémentaire contenant les bibliothèques et autres dépendances.
Dans le cas où l'application est déjà présente, on saute cette installation complémentaire et on se borne à installer le paquet "core".
De cette manière, même sans avoir un dépôt en ligne, tu peux quand même vérifier si des dépendances sont nécessaires et les installer automatiquement depuis ton propre site...


Plus de 50 ans d'informatique, ça en fait des lignes de commandes en console, mais on n'avait pas le choix...
Excellente raison pour, aujourd'hui qu'on le peut, utiliser au maximum les INTERFACES GRAPHIQUES !
Important : Une fois résolu, pensez à clore votre sujet en ajoutant [Résolu] devant le titre du 1er message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci.

Hors ligne