Page 1 sur 1

[création] Créer des entrées dans le menu des applications

Publié : ven. 10 mai 2013, 08:49
par Shingo
Bonjour, je suis en train de créer un paquetage et j'aimerais savoir comment informer mon PKBUILD que j'aimerais créer les entrées dans le menu des applications, par exemple mettre le programme dans le menu "jeux" et attribuer une icone au binaire.

Merci.

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 09:38
par Shingo
Je pense avoir trouvé, il faut copier un fichier de configuration dans /usr/share/applications

Voici l'exemple d'un fichier de configuration :

Code : Tout sélectionner

[Desktop Entry]
Version=1.0
Name=Audio Mixer
Name[de]=Lautstärkeregler
Name[es]=Mezclador de audio
Name[id]=Audio Mixer
Name[ja]=オーディオミキサー
Name[nl]=Volumeregelaar
Name[pl]=Mikser dźwięku
Name[pt]=Gestor de som
Name[uk]=Аудіо мікшер
Comment=Adjust volume levels
Comment[de]=Lautstärke einstellen
Comment[es]=Ajusta los niveles de volumen
Comment[id]=Sesuaikan tingkat volume
Comment[ja]=音量レベルを調整します
Comment[nl]=Stel volumeniveaus bij
Comment[pl]=Dostosuj poziom głośności
Comment[pt]=Ajustar nível de volume
Comment[uk]=Налаштувати рівні звуку
Icon=multimedia-volume-control
Exec=xfce4-mixer
Type=Application
StartupNotify=true
Terminal=false
Categories=X-XFCE;Audio;Mixer;AudioVideo;

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 09:49
par FoolEcho
Salut,

Il te faut effectivement un .desktop à placer dans /usr/share/applications/, les icônes devraient être quelque part dans /usr/share/icons/ (note que beaucoup de programmes te fournissent .desktop et icônes).
Et côté rafraîchissement à l'installation, tu peux utiliser un .install avec ton PKGBUILD, de la forme suivante (c'est la forme complète, update-desktop-database -q étant le minimum syndical ; tu as d'autres variantes à partir d'outils gtk ; penser à rajouter les dépendances qui vont bien):

Code : Tout sélectionner

post_install() {
  echo "update mime database..."
  update-mime-database /usr/share/mime/ > /dev/null
  echo "update desktop database..."
  update-desktop-database -q
  echo "update icon cache..."
  xdg-icon-resource forceupdate --theme hicolor &> /dev/null
}

post_upgrade() {
  post_install $1
}

post_remove() {
  post_install $1
}

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 09:52
par karhu
Gagné ! :P
En accord avec les règles XDG.
https://wiki.archlinux.org/index.php/Xdg-menu

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 09:59
par Shingo
Super merci. En fait, j'ai crée mon propre jeu donc il faut impérativement que je crée mes fichiers pour que ça s'installe proprement. J'avais effectivement remarqué le dossier /usr/share/hicolore mais je ne savais pas du tout pour le fichier install. Allez au boulot :)

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 12:29
par Shingo
Je rencontre deux soucis :

Le fichier binaire n'a pas les droits nécessaires pour que l'utilisateur l’exécute. J'ai tenté un chmod 555 dans mon PKGBUILD mais rien n'y fait, tandis qu'en ligne de commande après installation ça fonctionne.

Je vois bien le fichier .desktop avec l’icône mais rien n'est installé dans le menu...

Merci pour votre aide...

Edit : Quand je lance directement le binaire par son répertoire dans /usr/share, il se lance mais pas quand je clique sur le fichier de configuration...

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 12:40
par karhu
donne ton fichier .desktop STP.
Où installes tu ton binaire ? Comment le lances tu dans le terminal, à partir de son répertoire ? Ou de n'importe où ?
Le chemin est il dans $PATH ?

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 12:56
par Shingo
Je me rendu compte d'une erreur de syntaxe. Ça marche et je suis plutôt content. Merci.

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 13:22
par karhu
Comment s'appelle ton jeu ?

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 16:58
par Shingo
X-Blaster Dominator. J'essaie de soumettre le paquet sur AUR, mais à chaque fois la page Internet plante (...). Des problèmes de serveurs ?

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 17:26
par benjarobin
Comment soumet tu le paquet ? As tu bien généré l'archive source du paquet : makepkg --source Et envoyé le résultat ?

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 17:44
par Shingo
Oui c'est bon, j'ai réussi à l'uploader. Par contre, comme c'est la première que je l'utilise je n'avais pas compris qu'il fallait utiliser des noms différents pour la version 64-bits et la version 32-bits. Dommage qu'on ne peut pas supprimer un PKGBUILD. Enfin, j'ai trouvé une solution annexe, je vais écraser la version 64-bits avec le PKGBUILD de la version 32-bits. Je reviendrais un peu plus tard poster un topic sur le jeu afin que tout le monde puisse l'essayer histoire de voir si tout est en règle :)

Re: [création] Créer des entrées dans le menu des applicatio

Publié : ven. 10 mai 2013, 18:51
par FoolEcho
Pas compris ce que tu racontes... :copain:
Un PKGBUILD peut parfaitement se décliner en 32 et 64 bits en même temps, il te suffit de préciser les sources/dépendances selon l'architecture (cf. http://wiki.archlinux.fr/PKGBUILD#arch).
Pour supprimer, renommer, fusionner des PKGBUILDs, etc., il te suffit de passer par la liste de diffusion aur-general.

J'ai juste compilé pour voir. Ton exécutable (ou un lanceur) devrait être placé dans /usr/bin/ car sinon il ne peut apparaître dans le PATH (faut rajouter la licence aussi ; et modifier pkgver: 0.1, c'est la version de ton soft).

(mais bon, c'est pas trop la question ici)