Ajout tools/redox-services/30_sshd.service au format TOML init Redox :
[unit]
description = "OpenSSH SSH Daemon"
requires_weak = ["10_net.target"]
[service]
cmd = "/usr/bin/sshd"
args = ["-D"]
type = "simple"
Path absolu pour cmd (sshd refuse de re-exec sinon, vu en runtime).
Args ["-D"] = ne pas daemonize (init gère le lifecycle). type "simple"
= init considère le process up dès le fork, pas d'attente notify.
run-qemu.sh copie maintenant automatiquement tous les *.service de
tools/redox-services/ dans /usr/lib/init.d/ du guest. Bénéfice : à
chaque ./run-qemu.sh, sshd est armé pour démarrer au boot suivant.
Pré-requis pour que ça marche au runtime :
- openssh déjà installé (via pkg install openssh)
- Host keys générées (ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N "")
- /home/root/.ssh/authorized_keys peuplé (auto via run-qemu.sh)
Si openssh manque, sshd crash au boot mais init continue (requires_weak,
pas requires hard).
Leyoda 2026 – GPLv3
Plus besoin de taper user/password manuellement à chaque push. Charge la
variable redox_wayland depuis le .env hors-repo, injecte-la dans une URL
temporaire passée comme argument à `git push` (pas de persistance dans
.git/config), redacte le token de toute sortie au cas où il fuiterait
dans un message d'erreur, et fait un fetch après pour synchroniser
correctement le tracking ref origin/main.
Note implémentation : `git -c remote.origin.url=...` ne semble PAS
overrider l'URL utilisée pour push (testé localement), donc on passe
l'URL en argument explicite. Inconvénient : tracking ref ne se met pas
à jour automatiquement → on ajoute un git fetch ciblé après succès du
push pour réaligner origin/main.
Usage : tools/push.sh [args git push optionnels]
Surcharge : REDOX_ENV=/autre/.env tools/push.sh
Leyoda 2026 – GPLv3
Pour éviter de retaper 3 lignes à chaque test runtime dans la fenêtre
QEMU graphique (sans copier-coller possible), ajout de 3 scripts ion
prêts à l'emploi dans tools/redox-scripts/ :
- test-sw : compositor + simple_window client (phase 13.1.b)
- test-subc : compositor + subcompositor client visuel (phase 13.2.b.3)
- test-out : compositor + wl_output gating test (phase 13.2.a)
Tous suivent le même pattern :
rm -f /tmp/redox-wl-comp.sock
redox-wl-compositor &
sleep 1
<client>
run-qemu.sh copie maintenant tout tools/redox-scripts/* dans /usr/bin
de l'image (cp -p pour conserver +x), donc le user peut taper juste
`test-subc` ⏎ dans le shell ion Redox.
Shebang #!/usr/bin/ion : Redox sait exécuter le script directement
(le chemin /usr/bin/ion est stable).
Leyoda 2026 – GPLv3