Le journal de PacMiam

GNU/Linux, Python, Rétrogaming et billevesées

TutoBidouille – Lancer ses jeux GNU/Linux via GEM

Rédigé par PacMiam Aucun commentaire
J’ouvre mon premier TutoBidouille avec l’ajout des jeux natifs GNU/Linux dans GEM. Concrètement, cela signifie surtout qu’il sera possible de gérer les jeux installés sur votre système et de les lancer depuis l’interface de GEM.


Une bonne capture d’écran, c’est primordial !

Explications

Pour faire simple, j’ai créé une nouvelle console nommée « GNU/Linux » qui liste les fichiers utilisant l’extension « .desktop ». Ces fichiers sont lancés via l’émulateur « run-desktop », qui est un script de ma conception, qui se charge d’exécuter la commande spécifier dans le fichier.

L’avantage de l’utilisation des fichiers desktop est de permettre de profiter de la robustesse de l’ensemble, mais surtout d’une compatibilité avec le menu de votre environnement de bureau ou lanceur d’applications.

Pour assurer cette compatibilité, j’ai donc utilisé le dossier ~/.local/share/applications qui contient les fichiers desktop de l’utilisateur. Pour être sûr d’éviter de prendre des applications qui ne sont pas des jeux en compte, j’ai ajouté un sous-dossier « games » à ce dossier.

Installation

Pour intégrer cette bidouille sur votre version de GEM, vous allez avoir besoin de quelques dépendances et de deux scripts.

Dépendances requises

  • python3-xdg
  • python3-dbus
  • python3-xlib
  • xset
  • maim
  • xdotool
  • xdg-user-dirs
  • bumblebee (facultatif)
  • primus (facultatif)

Présentation des scripts

Les deux scripts nécessaires au fonctionnement de cette bidouille sont disponibles depuis Framagit en tant que Snippets de GEM.
Le premier script est le lanceur de fichier qui peut être comparé à un émulateur (pour simplifier). Le second script est juste un script shell qui s’arrange pour prendre une capture du jeu en cours et le placer dans un dossier dédié (comme le ferait un émulateur).

Pour le lanceur d’application, des options sont disponibles pour vous permettre de modifier son comportement. De base, le lanceur permet :
  • de détecter les appuis clavier avec un démon dédié
  • de changer le statut de votre compte Pidgin
  • d'éviter à votre moniteur de s’éteindre pendant le jeu
  • de prendre des captures d'écran avec la touche F12
  • de spécifier l’utilisation d’optirun si vous utilisez bumblebee
Pour avoir la liste des paramètres disponibles, il vous suffira de faire :
run-desktop --help
Pour le script des captures d’écran, j’ai utilisé l’utilitaire maim accompagné de xdotool. Il est tout à fait possible de modifier ce script pour mettre l’outil que vous préférez ou de spécifier un autre dossier de destination.

Installation des scripts

Il suffit de placer les deux scripts dans un dossier accessible depuis la variable d’environnement PATH (/usr/local/bin, /usr/bin, etc) et de s’assurer qu’ils soient exécutables.

Pour l’exemple qui va suivre, je présume que vous souhaitez les placer dans /usr/local/bin.
wget https://download.tuxfamily.org/gem/extra/run-desktop -O /usr/local/bin/run-desktop
wget https://download.tuxfamily.org/gem/extra/run-desktop-screenshot -O /usr/local/bin/run-desktop-screenshot
chmod +x /usr/local/bin/run-desktop*

Paramétrage de GEM

Création d’un nouveau lanceur

Dans la fenêtre des préférences de GEM, ajouter un nouvel émulateur avec les données suivantes (l’icône est à votre convenance) :


Il est à savoir que le dossier des captures d’écran est défini dans run-desktop-screenshot. Si vous souhaitez le modifier, il vous suffit de modifier le script.

Création d’une nouvelle collection

Dans la fenêtre des préférences de GEM, ajouter une nouvelle console avec les données suivantes :


Le dossier games fait référence au dossier ~/.local/share/applications/games qui va donc contenir les jeux au format « .desktop ».

En conclusion

L’importance de ce TutoBidouille est de montrer que GEM ne se limite pas seulement aux jeux rétros. Cette application est surtout un gestionnaire de collections et il est tout à fait possible de faire en sorte de modifier GEM pour qu’il gère vos séries en utilisant « l’émulateur » VLC par exemple.

Cette solution et ses scripts sont loin d’être parfaits, mais ils me suffisent pour mon utilisation personnelle. Si vous avez des idées d’améliorations ou si vous avez amélioré ces scripts, n’hésitez pas à les partager avec moi :)

Sur ce, je vous dis à la semaine prochaine pour la suite de ce TutoBidouille. Si vous souhaitez découvrir de quoi il va parler, je vous invite à regarder attentivement la première capture d’écran ;)

Écrire un commentaire