GNU/Linux >> Tutoriels Linux >  >> Linux

Améliorez vos compétences Ansible tout en vous amusant :administrateur système après la tombée de la nuit

Après une longue journée de travail, les administrateurs système méritent un peu de temps d'arrêt. Mais même les temps d'arrêt peuvent être l'occasion de mettre en pratique vos compétences d'administrateur système. Par exemple, j'ai créé un playbook Ansible pour installer un jeu classique pour m'aider à me détendre et à me vider l'esprit. Vous pouvez utiliser mon playbook pour vous entraîner à utiliser Ansible, et vous pouvez vous en inspirer pour écrire vos propres playbooks.

LBreakoutHD est un jeu simple, amusant et addictif développé pour Linux (donc "L" au début) mais maintenant également disponible pour d'autres plateformes. LBreakoutHD est un remake HD de LBreakout2, qui est lui-même un remake du classique Breakout développé dans les années 1970.

L'idée du jeu est d'utiliser une balle pour casser des briques en haut de l'écran en utilisant une raquette en bas pour faire rebondir et rediriger la balle. Vous montez d'un niveau après avoir cassé toutes les briques, et vous perdez la partie si vous laissez les balles tomber sous la raquette.

Certaines briques cachent des boîtes surprises qui peuvent vous donner des points ou des pouvoirs supplémentaires (comme une taille de pagaie plus grande ou des balles qui explosent) pour ajouter au plaisir. Il y a aussi de mauvaises surprises qui augmentent la difficulté du jeu, comme geler la raquette ou diminuer sa taille.

Vous pouvez trouver LBreakoutHD dans la collection LGames. Ces jeux sont développés par Michael Speck et sont open source, sous licence GPL.

[ Si vous vivez de toute façon dans votre émulateur de terminal, pourquoi ne pas vous amuser un peu pendant que vous y êtes ? Voir 5 jeux en ligne de commande pour les administrateurs système .]

Installer le jeu avec Ansible

Pour installer LBreakoutHD sur Linux, vous devez le compiler à partir de son code source. Vous avez également besoin du compilateur GCC, make , et les bibliothèques de développement SDL2. Pour vous faciliter la tâche, vous pouvez utiliser ce playbook Ansible que j'ai conçu pour l'installer sur Fedora 34 :

- name: Manages a local source install of lbreakouthd
  hosts: localhost
  gather_facts: yes
  vars:
    prefix_dir: "{{ ansible_env.HOME }}/.local/"
    version: "1.0.8"
    make_action: "install"
    cleanup_tmp: yes

  tasks:
    - name: Ensure requirements in place
      dnf:
        name:
          - SDL2
          - SDL2_image
          - SDL2_mixer
          - SDL2_ttf
          - SDL2-devel
          - SDL2_ttf-devel
          - SDL2_image-devel
          - SDL2_mixer-devel
          - make
          - gcc
          - gcc-c++
        update_cache: yes
        state: present
      become: yes

    - name: Create temporary directory
      file:
        path: /tmp/lbreakout
        state: directory
        mode: 0770

    - name: Download and extract source code
      unarchive:
        src: "https://sourceforge.net/projects/lgames/files/lbreakouthd/lbreakouthd-{{ version }}.tar.gz"
        dest: /tmp/lbreakout/
        remote_src: yes

    - name: Configure the build
      command: ./configure --prefix={{ prefix_dir }}
      args:
        chdir: "/tmp/lbreakout/lbreakouthd-{{ version }}"
        creates: "/tmp/lbreakout/lbreakouthd-{{ version }}/Makefile"

    - name: Make game according to defined make_action install / uninstall
      make:
        chdir: "/tmp/lbreakout/lbreakouthd-{{ version }}"
        target: "{{ make_action }}"

    - name: Ensure temporary directory is deleted
      file:
        path: /tmp/lbreakout
        state: absent
      when: cleanup_tmp | bool

Cette installation de playbook inclut des dépendances ; crée un répertoire temporaire ; télécharge et extrait la source ; et le configure, le compile et l'installe à l'aide du make Ansible module avec la cible install . Enfin, il supprime le répertoire temporaire et le code source qu'il contient pour nettoyer le système.

Maintenant, lancez le playbook pour installer le jeu. Utiliser ansible option -K pour activer l'élévation de privilèges requise pour installer les dépendances :

$ ansible-playbook -K lbreakout.yaml
BECOME password: 
[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'

PLAY [Manages a local source install of lbreakouthd] ************************

TASK [Gathering Facts] ******************************************************
ok: [localhost]

TASK [Ensure requirements in place] *****************************************
ok: [localhost]

TASK [Create temporary directory] *******************************************
changed: [localhost]

TASK [Download and extract source code] *************************************
changed: [localhost]

TASK [Configure the build] **************************************************
changed: [localhost]

TASK [Make game according to defined make_action install / uninstall] *******
changed: [localhost]

TASK [Ensure temporary directory is deleted] ********************************
changed: [localhost]

PLAY RECAP ******************************************************************
localhost: ok=7 changed=5 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0   

Si vous souhaitez utiliser ce playbook sur d'autres distributions, mettez à jour la tâche Ensure requirements in place pour utiliser les noms de modules et de packages corrects pour votre distribution. Par défaut, ce playbook installe LBreakoutHD dans le .local sous-répertoire sous le répertoire personnel de l'utilisateur actuel. Vous pouvez le mettre à jour en modifiant la variable prefix_dir . Si vous le définissez sur un répertoire système, vous devez exécuter le playbook avec un utilisateur privilégié. Vous pouvez également modifier d'autres variables pour modifier le comportement du playbook, par exemple en définissant make_action=uninstall pour désinstaller le jeu ou cleanup_tmp=no pour conserver le répertoire temporaire au lieu de le supprimer à la fin.

Jouer au jeu

Une fois installé, assurez-vous que le répertoire $HOME/.local/bin est dans votre $PATH , et démarrez le jeu en exécutant lbreakouthd . Le script d'installation crée un raccourci pour le jeu dans $HOME/.local/share/applications . Si votre système utilise cet emplacement pour les fichiers du bureau, vous pouvez lancer le jeu à l'aide des menus de votre bureau.

Lorsque le jeu démarre, sélectionnez Nouvelle partie pour démarrer une nouvelle partie, puis sélectionnez Démarrer les niveaux d'origine pour jouer aux niveaux conçus avec le jeu ou Démarrer un niveau personnalisé pour choisir parmi un grand nombre de niveaux personnalisés créés par les utilisateurs.

Ces niveaux personnalisés ajoutent du plaisir supplémentaire au jeu, car certains de ces niveaux sont difficiles ou très créatifs.

Désinstaller le jeu

Pour désinstaller le jeu, relancez le playbook, en définissant la variable make_action=uninstall :

$ ansible-playbook -K lbreakout.yaml -e make_action=uninstall

Le playbook supprime tous les fichiers de jeu des répertoires d'installation, mais il laisse toutes les données de jeu enregistrées sous votre $HOME répertoire intact.

[ Vous voulez tester vos compétences d'administrateur système ? Faites une évaluation des compétences aujourd'hui. ]

Amusez-vous

LBreakoutHD est un jeu amusant. C'est assez simple pour vous permettre de commencer à jouer rapidement, mais c'est assez stimulant pour rester divertissant. Il y a un peu d'apprentissage pour comprendre ce que font tous les pouvoirs et leur impact sur le jeu. Ces mêmes pouvoirs ajoutent au facteur de rejouabilité du jeu car ils changent les niveaux à chaque fois que vous jouez.

Dans l'ensemble, c'est un excellent jeu avec une certaine nostalgie tout en restant moderne avec de jolis graphismes et un son sympa. C'est formidable de se rafraîchir l'esprit après le travail et de pratiquer ses compétences d'administrateur système tout en s'amusant.


Linux
  1. Construire un laboratoire à domicile :administrateur système après la tombée de la nuit

  2. Gérer les secrets dans vos playbooks Ansible

  3. 6 compétences de dépannage pour les playbooks Ansible

  4. Que faire après l'installation d'Arch Linux ?

  5. Comment installer le thème Arc et Arc Dark dans vos distributions Linux

15 choses à faire après l'installation de Fedora 26

Installer Ansible sur Ubuntu - Guide étape par étape facile

Comment installer Ansible Server sur Ubuntu 18.04

Comment installer Ansible AWX sur Debian 10

Comment installer Ansible sur Linux Mint 20

10 tutoriels Vim pour démarrer vos compétences d'éditeur