{"id":13775569,"url":"https://github.com/phyver/GameShell","last_synced_at":"2025-05-11T08:32:24.536Z","repository":{"id":37445121,"uuid":"94422621","full_name":"phyver/GameShell","owner":"phyver","description":"a game to learn (or teach) how to use standard commands in a Unix shell","archived":false,"fork":false,"pushed_at":"2025-03-17T17:12:32.000Z","size":5516,"stargazers_count":2257,"open_issues_count":11,"forks_count":148,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-04-11T01:41:46.062Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/phyver.png","metadata":{"files":{"readme":"README-fr.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2017-06-15T09:19:00.000Z","updated_at":"2025-04-07T07:51:18.000Z","dependencies_parsed_at":"2024-03-09T19:26:22.983Z","dependency_job_id":"6626378d-9e04-4c6d-8b40-c9f9db74838b","html_url":"https://github.com/phyver/GameShell","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyver%2FGameShell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyver%2FGameShell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyver%2FGameShell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/phyver%2FGameShell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/phyver","download_url":"https://codeload.github.com/phyver/GameShell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253539961,"owners_count":21924517,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T17:01:41.596Z","updated_at":"2025-05-11T08:32:24.104Z","avatar_url":"https://github.com/phyver.png","language":"Shell","readme":"GameShell : un \"jeu\" pour apprendre le shell Unix\n===================================================\n\n![Illustration inspired by the game](Images/illustration-small.png)\n\nEnseigner l'utilisation d'un shell Unix à des étudiants de première année à\nl'université ou à des lycéens n'est pas toujours simple, ni très amusant.\nGameShell a été conçu comme un outil pour aider les étudiants de [l'Université\nSavoie Mont Blanc](https://univ-smb.fr) à découvrir un *vrai* shell, avec une\napproche qui favorise l'apprentissage tout en s'amusant.\n\nL'idée initiale, due à Rodolphe Lepigre, était de lancer une session bash avec\nun fichier de configuration qui définissait des \"missions\", qui seraient\n\"validées\" pour avancer dans le jeu.\n\nVoilà le résultat...\n\n![GameShell's first mission](Images/gameshell_first_mission_small.gif)\n\nN'hésitez pas à nous envoyer vos remarques, questions ou suggestions en\nouvrant des [\"issues\"](https://github.com/phyver/GameShell/issues) ou en\nsoumettant des [\"pull requests\"](https://github.com/phyver/GameShell/pulls).\nNous sommes particulièrement intéressés pas toute nouvelle mission que vous\npourriez créer !\n\n\nComment jouer ?\n---------------\n\nGameShell devrait fonctionner sur n'importe quel système Linux standard, et\naussi sur macOS et BSD (mais ces systèmes ont été moins testés). Sur Debian ou\nUbuntu, les seules dépendances (autres que `bash`) sont les paquets `awk` et\n`gettext-base` (le premier étant généralement installé par défaut). Certaines\nmissions ont des dépendances additionnelles : elles seront annulées si leurs\ndépendances ne sont pas satisfaites. Sur Debian ou Ubuntu, lancez la commande\nsuivante pour installer toutes les dépendances pour le jeu et les missions.\n```sh\n$ sudo apt install gettext-base man-db psmisc nano tree ncal x11-apps\n```\nConsultez le [manuel utilisateur](doc/user_manual.md) (en anglais) pour voir\ncomment installer les dépendances sur d'autres systèmes (macOS, BSD, ...).\n\nEn supposant que toutes les dépendances sont installées, vous pouvez essayer\nla dernière version du jeu en lançant les deux commandes suivantes dans un\nterminal.\n```sh\n$ wget https://github.com/phyver/GameShell/releases/download/latest/gameshell.sh\n$ bash gameshell.sh\n```\nLa première commande téléchargera la dernière version du jeu sous la forme\nd'une archive auto-extractible, et la seconde commande initialisera et lancera\nle jeu à partir de cette archive. Les instructions pour jouer sont données\ndirectement dans le jeu.\n\nQuand vous quitterez le jeu (avec `control-d` ou la commande `gsh exit`) votre\nprogression sera sauvegardée dans une nouvelle archive (nommée\n`gameshell-save.sh`). Elle peut être lancée pour reprendre le jeu où vous vous\nétiez arrêté.\n\n\nSi vous préférez ne pas exécuter des scripts étrangers sur votre machine,\nvous pouvez générer une image Docker avec :\n```sh\n$ mkdir GameShell; cd GameShell\n$ wget --quiet https://github.com/phyver/GameShell/releases/download/latest/Dockerfile\n$ docker build -t gsh .\n$ docker run -it gsh\n```\nVotre progression ne sera PAS sauvée lorsque vous quittez le jeu, et des\noptions supplémentaires sont nécessaires si vous souhaitez lancer des\nprogrammes X depuis GameShell. Référez vous à [cette\nsection](./doc/deps.md#running-GameShell-from-a-docker-container) du manuel\nd'utilisateur.\n\n\nDocumentation\n-------------\n\nPour en savoir plus sur GameShell les documents suivants sont disponibles (en\nlangue anglaise uniquement):\n- Le [manuel utilisateur](doc/user_manual.md) explique, entre autres, comment\n  lancer le jeu sur toutes les plateformes supportées (Linux, macOS, BSD),\n  comment lancer le jeu à partir des sources, et comment générer une archive\n  de jeu personnalisée (ce qui est utile pour utiliser le jeu dans le cadre\n  d'un cours).\n- Le [manuel développeur](doc/dev_manual.md) explique, entre autres, comment\n  créer une nouvelle mission, comment traduire le jeu et les missions, et\n  comment participer au développement du jeu.\n\n\nQui développe GameShell?\n------------------------\n\n### Développeurs\n\nLe jeu est développé par:\n* [Pierre Hyvernat](http://www.lama.univ-smb.fr/~hyvernat) (développeur\n  principal, [pierre.hyvernat@univ-smb.fr](mailto:pierre.hyvernat@univ-smb.fr)),\n* [Rodolphe Lepigre](https://lepigre.fr).\n\n### Contributeurs missions\n\n* Pierre Hyvernat\n* Rodolphe Lepigre\n* Christophe Raffalli\n* Xavier Provencal\n* Clovis Eberhart\n* Sébastien Tavenas\n* Tiemen Duvillard\n\n### Remerciements\n\n* Tous les étudiants qui ont testé les toutes premières versions du jeu.\n* Joan Stark (alias jgs) qui a créé des centaines d'ASCII-art à la fin des\n  années 90. La majorité des ASCII-art que vous rencontrerez dans GameShell\n  lui sont dus.\n\n\nLicence\n-------\n\nGameShell est distribué sous la licence [GPLv3](https://www.gnu.org/licenses/gpl-3.0.en.html).\n\nMerci de pointer vers ce dépôt si vous l'utilisez.\n\nGameShell est open source et son utilisation est gratuite. Une manière de\nreconnaitre le travail que cela a nécessité est d'envoyer une carte postale à\n\n```\n  Pierre Hyvernat\n  Laboratoire de Mathématiques, CNRS UMR 5127\n  Université de Savoie\n  73376 Le Bourget du Lac\n  FRANCE\n```\n\n","funding_links":[],"categories":["others","Shell","Command Line and Tools","🎓 Educational Resources","\u003ca name=\"learning\"\u003e\u003c/a\u003eLearning and didactic tools"],"sub_categories":["Linux command line","☸️ Kubernetes"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphyver%2FGameShell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphyver%2FGameShell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphyver%2FGameShell/lists"}