publication de hackademy

This commit is contained in:
ben
2025-11-02 00:12:04 +01:00
parent 917f67857b
commit 97db4a0aec
6 changed files with 144 additions and 0 deletions

28
hackademy.mdwn Normal file
View File

@@ -0,0 +1,28 @@
# Hackademy
Hackademy est une plateforme d'expérimentation du système d'exploitation Linux.
Basé sur un environnement Linux émulé dans le navigateur, Hackademy Linux permet de tester, de se former et d'expérimenter sans serveurs.
La plateforme est personnalisable directement via l'URL afin de proposer plusieurs scénarios et cas d'usage.
[[!note "Ce projet est en cours de développement et peut être très instable."]]
## Fonctionnalités
* Émulation d'une image Linux Buildroot (2025.08.1).
* Plusieurs [images](images) disponibles.
* [Transfert de fichiers](file_transfert) avec Zmodem et Trzsz.
* Configuration via des [paramètres dans l'URL](url).
* Accès au navigateur depuis la VM avec [host_browser](host_browser).
* [Gestionnaire de paquets](packages).
## Accès
Hackademy Linux est disponible à l'URL : [linux.hackade.org](https://linux.hackade.org)
Les identifiants pour se connecter sont "user" et "hackademy" comme mot de passe. Le mot de passe root est "hackademy".
## Scénarios
.. à venir ..

View File

@@ -0,0 +1,15 @@
# Transfert de fichiers
Zmodem et [Trzsz](https://trzsz.github.io/go) sont supporté pour échanger des fichiers avec la VM.
## Zmodem
Il est disponible sur toutes les images et avec tous les navigateurs, grâce aux commandes __sz__ et __rz__.
## Trzsz
L'outil est disponible à partir de l'image "Minimal" avec les commandes __trz__ et __tsz__.
Il a l'avantage de fonctionner au sein de tmux et d'afficher une progression.
Fonctionne qu'avec un nombre réduit de navigateurs (voir [compatibilité](https://developer.mozilla.org/en-US/docs/Web/API/Window/showOpenFilePicker#browser_compatibility)).

View File

@@ -0,0 +1,17 @@
# host_browser
Un canal de communication existe entre la machine virtuelle et le navigateur afin que la VM puisse interagir avec le navigateur.
La virtio_console est utilisée via le périphérique /dev/hvc0.
```
Usage: host_browser [-h]
A tool that interacts with the JavaScript engine of the host browser.
Evaluate JavaScript code from standard input and return the result.
ARGUMENTS
-h | --help: Print help and exit
EXAMPLE
echo "alert('Hello from VM')" | host_browser
```

47
hackademy/images.mdwn Normal file
View File

@@ -0,0 +1,47 @@
# Images
[[!note "Les images sont en cours développements"]]
## Core
Accessible avec le paramètre [disk=core](https://linux.hackade.org/?disk=core) c'est l'image la plus petite possible. Elle comprends le noyau Linux (3,0M) et l'initramfs (1,7M).
Les paquets suivants sont disponibles:
* util_linux
* lrzsz
* opkg
## Minimal
Taille: 4,5M
C'est l'image par défaut si aucune image n'est paramétrée. C'est un overlay au-dessus de Core qui ajoute les éléments suivants:
* La configuration du shell pour les utilisateurs root et user
* l'outil trzsz
## Basic
Taille: 9,5M
Accessible avec le paramètre [disk=basic](https://linux.hackade.org/?disk=basic) c'est un overlay au dessus de Core qui ajoute les éléments suivants:
* La configuration du shell pour les utilisateurs root et user
* trzsz
* sudo
* tmux
* vim
## Normal
Taille: 9,7M
Accessible avec le paramètre [disk=normal](https://linux.hackade.org/?disk=normal) c'est un overlay au dessus de Core qui ajoute les éléments suivants:
* La configuration du shell pour les utilisateurs root et user
* trzsz
* sudo
* tmux
* vim
* strace

12
hackademy/packages.mdwn Normal file
View File

@@ -0,0 +1,12 @@
# Paquets
Il est possible d'ajouter des paquets avec le gestionnaire __opkg__.
## Listes des paquets
[[!note "La création des paquets est en cours de développement"]]
* ncurses
* libevent
* tmux
* vim

25
hackademy/url.mdwn Normal file
View File

@@ -0,0 +1,25 @@
# Paramètres URL
Hackademy Linux accepte de recevoir des paramètres dans son URL, comme par exemple :
[https://linux.hackade.org/?disk=normal&autologin=user&autostart=true](https://linux.hackade.org/?disk=normal&autologin=user&autostart=true)
## Sélection de l'image
La sélection de l'image se fait avec le paramètre __disk__. Les images disponibles sont :
* core
* minimal (valeur par défaut)
* basic
* normal
## Login automatique
Le paramètre __autoLogin__ permet de se connecter directement à la VM au lancement. Trois options sont possibles : rien, user ou root. Par défaut l'autologin n'est pas activé.
## Démarrage automatique
Le paramètre __autostart__ permet d'indiquer si au chargement de la page, la VM doit démarrer. Par défaut le démarrage est automatique.