Table des matières:
- Fournitures
- Étape 1: Flashez Raspbian sur votre carte SD
- Étape 2: créez un fichier texte nommé "wpa_supplicant.conf" sur le lecteur de démarrage
- Étape 3: Créez un fichier vide nommé « ssh » sur le lecteur de démarrage
- Étape 4: Éjectez la carte SD de votre PC, placez-la dans votre Pi et allumez votre Pi
- Étape 5: Connectez-vous à votre Pi à l'aide de Putty
- Étape 6: Facultatif: modifiez le nom d'hôte de votre Pi
- Étape 7: Mettez à jour vos packages de candidature
- Étape 8: Installez Git
- Étape 9: Installez Maven
- Étape 10: Téléchargez les fichiers du serveur Prétendre que vous êtes Xyzzy
- Étape 11: passez au répertoire PretendYoureXyzzy
- Étape 12: Ouvrez et modifiez le fichier « build.properties.example » et enregistrez-le sous « build.properties »
- Étape 13: Ouvrez et modifiez le fichier "pom.xml" (C'EST CE QUI LE FAIT FONCTIONNER SUR un PI)
- Étape 14: démarrez le serveur prétendant que vous êtes Xyzzy et assurez-vous qu'il fonctionne
- Étape 15: créez un script pour démarrer le serveur prétendant que vous êtes Xyzzy
- Étape 16: Rendez votre script exécutable
- Étape 17: créez une entrée Crontab pour exécuter automatiquement votre script au démarrage
- Étape 18: redémarrez votre Pi et voyez si vous pouvez vous connecter pour prétendre que vous êtes Xyzzy
- Étape 19: Facultatif: Transférer les ports pour autoriser l'accès à votre serveur Xyzzy sur Internet
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-13 06:57
Ce guide vous montrera comment configurer un serveur Pretend You're Xyzzy (PYX) sur un Raspberry Pi. Je l'appelle un XyzzyPi
Pretend You're Xyzzy est un clone en ligne et open source de Cards Against Humanity joué dans un navigateur Web.
Sur Android, vous pouvez également utiliser l'application Client pour faire semblant d'être Xyzzy.
Lorsque j'ai commencé à chercher à configurer mon propre serveur PYX, j'ai eu du mal à trouver des instructions qui n'étaient pas obsolètes et faciles à suivre. Il semblait que la plupart d'entre eux avaient été écrits pour des personnes qui avaient déjà une certaine expérience de la configuration d'un serveur PYX. J'ai pu comprendre les choses, mais je voulais créer un guide étape par étape pour ceux qui sont moins férus de technologie ou qui n'ont pas beaucoup d'expérience avec de telles choses. De plus, je n'ai trouvé aucune instruction pour le faire fonctionner sur un Raspberry Pi. Après quelques essais et erreurs, j'ai pu faire fonctionner le serveur PYX sur un Pi avec seulement quelques légères modifications aux fichiers. J'espère que cela fera gagner du temps à ceux que ça intéresse.
Je l'ai fait sur un Pi 3 modèle B+ et un Pi 4 modèle B 4 Go. Il y a quelques problèmes avec l'utilisation d'un Pi Zero W en raison du fait que le processeur ne gère pas correctement une machine virtuelle Java. J'essaie actuellement de le faire fonctionner sur un Zero W et je mettrai à jour les instructions si je réussis. Je n'ai pas de Pi 1 ou 2 à tester, donc cela peut ou non fonctionner avec ceux-ci.
J'ai essayé de rendre ce didacticiel facile à suivre pour les personnes de tous niveaux, il peut donc y avoir des choses ici que vous connaissez déjà.
Si vous savez déjà comment installer Raspbian et vous connecter à votre Pi, passez à l'étape 6
Si vous avez de l'expérience dans la configuration d'un serveur PYX et que vous souhaitez simplement connaître les modifications nécessaires pour le faire fonctionner sur un Pi, passez à l'étape 13
Avis de non-responsabilité: je n'ai pas créé Pretend You're Xyzzy ou l'application cliente Android.
Le crédit pour la création de Pretend You're Xyzzy revient à l'utilisateur de GitHub ajanata (https://github.com/ajanata/PretendYoureXyzzy)
Le crédit pour la création de Client For Pretend You're Xyzzy revient à Gianlu (https://play.google.com/store/apps/dev?id=8675761046824387020)
S'il y a quelqu'un que j'ai manqué, merci de me le faire savoir.
Fournitures
Matériel:
Framboise Pi 3 ou 4
Carte micro SD (j'utilise des cartes micro SD de 32 Go car c'est ce que j'ai sous la main. Vous pouvez probablement vous en tirer avec aussi peu que 2 Go, mais je recommanderais au moins 4 Go.)
PC avec lecteur de carte SD (j'utilise Windows pour ce didacticiel. Si vous utilisez Linux, vous êtes probablement déjà familiarisé avec beaucoup de ces choses, alors ajustez les instructions si nécessaire.)
Logiciel:
Image Raspbian: https://www.raspberrypi.org/downloads/raspbian/ (Tout devrait fonctionner. J'utilise Raspbian Buster Lite au moment de la rédaction.)
Imageur de disque Win32: https://sourceforge.net/projects/win32diskimager/ (Il existe d'autres programmes que vous pouvez utiliser pour flasher l'image Raspbian, mais c'est ma préférence personnelle.)
Mastic:
Étape 1: Flashez Raspbian sur votre carte SD
Insérez votre carte SD dans le lecteur de carte de votre ordinateur avant d'ouvrir Win32 Disk Imager. Sélectionnez ensuite votre image Raspbian et la lettre de lecteur de votre carte SD et cliquez sur « Écrire ».
ATTENTION: Tout ce qui se trouve sur la carte SD sera supprimé et écrasé. S'il y a des données importantes sur la carte SD, sauvegardez-les d'abord. Assurez-vous également de sélectionner la bonne lettre de lecteur pour votre carte SD. Sinon, vous pourriez effacer/écraser par inadvertance le mauvais lecteur
Une fois terminé, vous aurez deux lecteurs distincts sur votre carte SD. Une fois appelé boot et que Windows ne peut pas lire. Vous obtiendrez probablement une fenêtre contextuelle dans Windows vous demandant de formater la carte. Cliquez simplement sur annuler. Si vous le formatez, vous devrez à nouveau flasher Raspbian.
Étape 2: créez un fichier texte nommé "wpa_supplicant.conf" sur le lecteur de démarrage
Sur le lecteur de démarrage de la carte SD, créez un fichier texte nommé wpa_supplicant.conf et collez le code ci-dessous à l'intérieur. Remplacez "nom wifi" et "mot de passe" par votre nom et mot de passe wifi réels, mais conservez les guillemets autour d'eux. Enregistrez le fichier.
Cela permettra à votre Pi de se connecter à votre wifi. Si vous utilisez un câble Ethernet pour connecter votre Pi à votre réseau, vous pouvez probablement ignorer cette étape.
Assurez-vous que l'extension de fichier est correcte. Il devrait s'agir de wpa_supplicant.conf et non de wpa_supplicant.conf.txt
country=usupdate_config=1 ctrl_interface=/var/run/wpa_supplicant
réseau={
scan_ssid=1 ssid="nom wifi" psk="mot de passe" }
Étape 3: Créez un fichier vide nommé « ssh » sur le lecteur de démarrage
Sur le lecteur de démarrage de la carte SD, créez un fichier vide nommé ssh
Il n'a pas besoin d'avoir quoi que ce soit dedans, il a juste besoin d'être nommé correctement.
Cela activera ssh sur votre Pi, ce qui vous permettra de vous y connecter à l'aide de Putty.
Assurez-vous que le fichier est simplement nommé ssh sans extension. Pas ssh.txt etc
Étape 4: Éjectez la carte SD de votre PC, placez-la dans votre Pi et allumez votre Pi
Éjectez la carte SD de votre PC, insérez-la dans votre Pi et allumez votre Pi.
Si tout a fonctionné, votre Pi démarrera et se connectera à votre wifi.
Donnez-lui quelques minutes pour parcourir sa configuration initiale.
Étape 5: Connectez-vous à votre Pi à l'aide de Putty
Ouvrez Putty et dans la zone Nom d'hôte, tapez raspberrypi en vous assurant que le type de connexion est SSH et que le port est 22. S'il se connecte, vous serez dirigé vers un écran noir avec du texte appelé terminal. Il vous demandera votre nom d'utilisateur et votre mot de passe. Le nom d'utilisateur par défaut est "pi" et le mot de passe par défaut est "raspberry". Il est fortement recommandé de modifier le mot de passe, surtout si vous prévoyez d'exposer votre Pi à Internet. Pour ce faire, tapez "passwd" une fois connecté et suivez les instructions. Assurez-vous de choisir un mot de passe dont vous vous souviendrez.
S'il ne se connecte pas, vous devrez peut-être trouver l'adresse IP utilisée par votre Pi. Il existe plusieurs façons de le faire, mais personnellement, je me connecte simplement à mon routeur et je vérifie la liste des appareils connectés. Une fois que vous avez trouvé l'adresse IP de votre Pi, saisissez-la dans la zone Nom d'hôte de Putty au lieu de raspberrypi et essayez de vous connecter à nouveau.
Si vous ne parvenez toujours pas à vous connecter, vous n'avez peut-être pas créé le fichier ssh correctement. Lisez les étapes précédentes et vérifiez tout.
Étape 6: Facultatif: modifiez le nom d'hôte de votre Pi
Ce n'est pas nécessaire, mais je préfère que le nom d'hôte de mon Pi soit pertinent pour son utilisation plutôt que simplement le générique "raspberrypi". Dans ce cas, je l'ai nommé "xyzzypi" mais vous pouvez l'appeler comme vous le souhaitez.
Pour modifier le type de nom d'hôte:
sudo raspi-config
Sélectionnez les options de réseau
Sélectionnez le nom d'hôte
Entrez le nom d'hôte que vous voulez
Sélectionnez Terminer
Il vous demandera si vous souhaitez redémarrer le Pi maintenant. Le nouveau nom d'hôte n'entrera en vigueur qu'après le redémarrage. Si vous le faites, votre session Putty se déconnectera. Une fois le redémarrage terminé, vous devrez utiliser le nouveau nom d'hôte que vous avez défini pour vous reconnecter à Putty. Si vous vous connectez en utilisant l'adresse IP au lieu du nom d'hôte, cela devrait toujours être le même.
Il existe de nombreuses autres options que vous pouvez définir à l'aide de l'outil raspi-config, mais il existe déjà de nombreux didacticiels à ce sujet en ligne, je ne les aborderai donc pas ici.
Étape 7: Mettez à jour vos packages de candidature
Mettez à jour vos packages d'application à l'aide de la commande suivante:
sudo apt-get mise à jour
Laissez-le fonctionner jusqu'à ce qu'il soit terminé.
Remarque: Techniquement, vous n'avez plus besoin de taper "apt-get", vous pouvez simplement taper "apt". Cependant, je suis tellement habitué à taper "apt-get" que c'est juste de la mémoire musculaire pour moi à ce stade.
Étape 8: Installez Git
Une fois la mise à jour des packages d'application terminée, installez Git à l'aide de la commande suivante:
sudo apt-get -y installer git
Laissez-le fonctionner jusqu'à ce qu'il se termine.
Étape 9: Installez Maven
Installez Maven à l'aide de la commande suivante:
sudo apt-get -y installer maven
Laissez-le fonctionner jusqu'à ce qu'il se termine
Étape 10: Téléchargez les fichiers du serveur Prétendre que vous êtes Xyzzy
Téléchargez les fichiers du serveur Pretend You're Xyzzy à l'aide de la commande suivante:
git clone git://github.com/ajanata/PretendYoureXyzzy.git
Cela créera un répertoire sur votre Pi nommé PretendYoureXyzzy et téléchargera les fichiers dedans.
Laissez-le fonctionner jusqu'à ce qu'il se termine.
Étape 11: passez au répertoire PretendYoureXyzzy
Accédez au répertoire PretendYoureXyzzy à l'aide de la commande suivante:
cd PretendYoureXyzzy
Remarque: les commandes Linux sont sensibles à la casse, donc cd PretendYoureXyzzy fonctionnera mais pas cd prétendyourexyzzy.
Étape 12: Ouvrez et modifiez le fichier « build.properties.example » et enregistrez-le sous « build.properties »
Ouvrez le fichier build.properties.example avec l'éditeur de texte nano à l'aide de la commande suivante:
sudo nano build.properties.example
Utiliser un éditeur de texte basé sur un terminal peut sembler un peu intimidant pour ceux qui n'y sont pas habitués, mais ce que nous faisons est très simple.
Utilisez la touche fléchée vers le bas pour faire défiler vers le bas jusqu'à ce que vous trouviez les sections qui disent "hibernate.username" et "hibernate.password".
Utilisez la touche fléchée droite pour vous déplacer jusqu'à la fin de ces lignes et remplacez le nom d'utilisateur et le mot de passe par autre chose. Honnêtement, je ne sais pas si c'est même vraiment nécessaire, mais je ne suis pas à l'aise de les laisser sur le nom d'utilisateur et le mot de passe par défaut avec lesquels ils sont fournis.
Une fois que vous les avez modifiés, appuyez sur ctrl+o pour afficher la boîte de dialogue de sauvegarde.
Retour arrière pour supprimer le ".example" à la fin du nom de fichier afin que vous n'ayez plus que "build.properties"
Il vous demandera si vous souhaitez enregistrer le fichier sous un nom différent. Appuyez sur y pour oui.
Appuyez sur ctrl+x pour fermer l'éditeur de texte nano.
Étape 13: Ouvrez et modifiez le fichier "pom.xml" (C'EST CE QUI LE FAIT FONCTIONNER SUR un PI)
Ouvrez le fichier pom.xml avec l'éditeur de texte nano en utilisant la commande suivante:
sudo nano pom.xml
Faites défiler vers le bas comme vous le faisiez auparavant. Cette fois, la ligne que vous recherchez est sqlite-jdbc
Juste en dessous de cette ligne se trouve une ligne avec un numéro de version. Vous devez changer ce nombre en 3.28.0 pour qu'il ressemble à:
3.28.0
Une fois que vous avez modifié le numéro de version, appuyez sur ctrl+o pour afficher la boîte de dialogue de sauvegarde.
Conservez le nom de fichier en tant que "pom.xml" et enregistrez-le.
Une fois enregistré, appuyez sur ctrl+x pour fermer l'éditeur de texte nano.
C'est l'édition qui fait que le serveur Pretend You're Xyzzy s'exécute sur un Pi. La version sqlite-jdbc fournie ne fonctionnera pas correctement sur un Pi. La version 3.28.0 fonctionne très bien dans mes tests jusqu'à présent
Étape 14: démarrez le serveur prétendant que vous êtes Xyzzy et assurez-vous qu'il fonctionne
Maintenant que vous avez effectué les modifications nécessaires pour exécuter un serveur Pretend You Xyzzy sur votre Pi, démarrons-le et voyons si tout fonctionne. Démarrez le serveur à l'aide de la commande suivante:
mvn clean package war:exploded jetty:run -Dmaven.buildNumber.doCheck=false -Dmaven.buildNumber.doUpdate=false
Il téléchargera des fichiers supplémentaires, les compilera et démarrera le serveur. Cela prendra probablement quelques minutes.
Remarque: actuellement, c'est la seule façon dont je sais comment faire fonctionner le serveur afin qu'il se compile à chaque fois que vous le démarrez.
Vous saurez que c'est fait lorsque vous recevez un message disant "Le rechargement de la console est ACTIVÉ. Appuyez sur ENTRÉE sur la console pour redémarrer le contexte."
À ce stade, vous pouvez ouvrir votre navigateur et saisir le nom d'hôte (ou l'adresse IP) du Pi en ajoutant le port 8080 à la fin. Donc nom d'hôte: 8080 ou IP: 8080
Si vous utilisiez xyzzypi comme nom d'hôte, ce serait xyzzypi:8080 ou dans mon cas, en utilisant l'adresse IP, ce serait 192.168.1.189:8080
Si tout a fonctionné, vous serez redirigé vers la page principale de Faites semblant d'être Xyzzy.
Toutes nos félicitations! Vous l'avez fait
Cependant, pour le moment, il ne fonctionnera que si vous vous connectez à votre Pi avec Putty et exécutez la commande ci-dessus pour démarrer le serveur. Une fois que vous fermez Putty, le serveur s'arrête. Cela peut convenir à certaines personnes, mais vous souhaiterez peut-être que le serveur Pretend You're Xyzzy s'exécute automatiquement chaque fois que le Pi démarre ou est redémarré sans avoir à se connecter. Les prochaines étapes couvriront le fonctionnement de cela.
Étape 15: créez un script pour démarrer le serveur prétendant que vous êtes Xyzzy
Si nous voulons que le serveur Pretend You're Xyzzy démarre automatiquement lorsque le Pi démarre ou redémarre, la première chose que nous devons faire est de créer un script.
Appuyez sur ctrl+c pour arrêter le serveur.
Une fois qu'il s'arrête, tapez la commande suivante:
sudo nano xyzzy.sh
Remarque: j'ai nommé mon script xyzzy.sh mais vous pouvez le nommer comme vous le souhaitez. Assurez-vous simplement qu'il a.sh comme extension de fichier.
À l'aide de l'éditeur de texte nano, saisissez ou collez ce qui suit dans le fichier:
#!/bin/bashcd /home/pi/PretendYoureXyzzy mvn clean package war:exploded jetty:run -Dmaven.buildNumber.doCheck=false -Dmaven.buildNumber.doUpdate=false
Appuyez sur ctrl + o pour afficher la boîte de dialogue de sauvegarde
Enregistrez le fichier et appuyez sur ctrl+x pour fermer nano
Étape 16: Rendez votre script exécutable
Nous devons rendre le script exécutable à l'aide de la commande suivante:
sudo chmod 755 xyzzy.sh
Remarque: si vous avez nommé votre script différemment à l'étape précédente, utilisez plutôt ce nom de fichier.
Étape 17: créez une entrée Crontab pour exécuter automatiquement votre script au démarrage
Il existe plusieurs façons de faire exécuter un script au démarrage. J'utilise crontab ici.
Modifiez les tables crontab à l'aide de la commande suivante:
crontab -e
Il va vous demander quel éditeur vous souhaitez utiliser. Tapez 1 et appuyez sur Entrée pour utiliser nano.
Une fois qu'il s'ouvre, faites défiler jusqu'en bas et ajoutez la ligne suivante:
@reboot /home/pi/PretendYoureXyzzy/xyzzy.sh
Remarque: Encore une fois, si vous avez utilisé un nom de fichier différent pour votre script, saisissez-le à la place.
Appuyez sur ctrl+o pour afficher la boîte de dialogue de sauvegarde.
Enregistrez et appuyez sur ctrl+x pour fermer nano.
Étape 18: redémarrez votre Pi et voyez si vous pouvez vous connecter pour prétendre que vous êtes Xyzzy
Maintenant que votre serveur Pretend You Xyzzy est configuré pour s'exécuter au démarrage, vous pouvez redémarrer le Pi et vous assurer que tout fonctionne.
Redémarrez à l'aide de la commande suivante:
redémarrage sudo
Une fois que le Pi a redémarré, il faudra quelques minutes pour tout recompiler pour le serveur. Donnez-lui le temps, puis essayez à nouveau de vous connecter dans le navigateur en utilisant le nom d'hôte ou l'adresse IP du Pi en ajoutant le port 8080 à la fin.
xyzzypi: 8080 ou adresse IP: 8080
Si tout a fonctionné, vous serez redirigé vers la page Faites semblant d'être Xyzzy.
Toutes nos félicitations! Vous avez maintenant le serveur Pretend You Xyzzy qui s'exécute automatiquement sur un Raspberry Pi
Étape 19: Facultatif: Transférer les ports pour autoriser l'accès à votre serveur Xyzzy sur Internet
Alors maintenant, vous avez un serveur Pretend You Xyzzy qui fonctionne, mais pour le moment, il n'est accessible que sur votre réseau local. Cela fonctionne bien si vous avez un groupe d'amis pour jouer chez vous mais que les personnes en dehors de votre réseau local ne pourront pas se connecter.
Vous devrez rechercher les instructions de redirection de port pour votre routeur spécifique si vous ne savez pas déjà comment. Pretend You're Xyzzy utilise le port 8080, c'est donc le port que vous voudrez transférer. Une fois que vous l'aurez configuré, vous pourrez donner à vos amis votre adresse IP et votre port externes et ils pourront se connecter à votre serveur via Internet.
Si vous le souhaitez, vous pouvez également configurer le DNS dynamique afin d'avoir votre propre URL (quelque chose comme JoesPYXserver.noip.com) à donner à des amis pour se connecter à votre serveur. Il existe déjà de nombreux tutoriels pour ce genre de choses.