Files
nocode 05a44af161 feat(gameboot-windows): add windows 11 offline unattend answer file template
Add unattend.offline.xml.tmpl for Windows 11 deployment via fws-windows-deploy.

This offline answer file handles specialize and oobeSystem passes after wimlib
image application. It configures:
- Computer name and locale settings
- BitLocker and OOBE registry tweaks
- Local admin gaming account with temporary auto-login
- FirstBoot PowerShell script execution

Tokens (__HOSTNAME__, __USER__, __DISPLAY__, __LOCALE__, __INPUT__,
__FIRSTBOOT__) are substituted by fws-windows-deploy via sed.
2026-07-08 23:57:28 +02:00
..

FWS Gameboot — composant Windows

Composant à déployer dans le Windows 11 gaming (partition bare-metal dédiée) pour le dual-boot orchestré « hibernate-swap » de FWS : retour vers FWS après la session, lancement automatique du jeu, auto-login, et premier démarrage tout automatique (config + installation des jeux).

⚠️ Statut : non validé sur matériel réel. Sémantique bcdedit bootsequence, auto-login, URLs d'installeurs Riot, resume GPU — à tester. Plan : docs/hibernate-swap-dualboot.md.

Fichiers

Fichier Rôle
FirstBoot-FwsGameboot.ps1 1er démarrage (une fois) : lance Install-FwsGameboot puis Install-Games, pose un marqueur.
Install-FwsGameboot.ps1 Auto-login + tâche logon (fws-play) + tâche ONSTART + powercfg /h off. Vérifie compte admin/sans mot de passe.
Install-Games.ps1 Télécharge + lance les installeurs officiels des jeux autoinstall (Riot).
installers.json URLs des installeurs Riot (à vérifier — Riot les change).
fws-play.ps1 Lit le jeu demandé, le lance, attend, rebascule vers FWS.
fws-return.ps1 Arme le boot suivant vers FWS ou Windows (locale-indépendant).
games.json Registre des jeux : id → {type, …, process}.

Ce que FWS ne peut PAS faire (et ce qu'il fait à la place)

FWS ne pré-embarque pas Valorant/LoL : bundler Windows (licence) et redistribuer les binaires Riot est interdit, et Vanguard flaggerait un jeu pré-copié. À la place, Install-Games.ps1 télécharge les installeurs officiels depuis Riot au premier boot → même résultat (« ils sont déjà là ») sans rien redistribuer. L'install de Valorant n'est pas 100 % silencieuse (Vanguard installe un driver noyau + impose un reboot).

Câbler le « premier démarrage automatique »

Le déclencheur dépend de comment Windows est installé :

A. Install Windows piloté par FWS (recommandé, via autounattend.xml) — ajouter dans <FirstLogonCommands> :

<SynchronousCommand wcm:action="add">
  <Order>1</Order>
  <CommandLine>powershell.exe -NoProfile -ExecutionPolicy Bypass -File "C:\ProgramData\FWS\deploy\FirstBoot-FwsGameboot.ps1"</CommandLine>
  <Description>FWS Gameboot first boot</Description>
</SynchronousCommand>

(en ayant copié ce dossier dans C:\ProgramData\FWS\deploy\ pendant le déploiement).

B. Manuel (pour tester maintenant) — dans le Windows gaming, PowerShell admin :

Set-ExecutionPolicy -Scope Process Bypass -Force
.\FirstBoot-FwsGameboot.ps1

Idempotent : le marqueur C:\ProgramData\FWS\.firstboot-done empêche toute réexécution.

Prérequis (vérifiés par Install-FwsGameboot, échec explicite sinon)

  • Compte gaming = administrateur local (bcdedit + tâches SYSTEM).
  • Compte sans mot de passe (auto-login fiable), ou lancer avec -Password.
  • Secure Boot + TPM 2.0 + VBS/HVCI actifs (Vanguard les exige).

Flux complet (aucune interaction, hors confirmations Vanguard)

  1. 1er bootFirstBoot → auto-login configuré + Valo/LoL téléchargés et installés.
  2. Depuis FWS : fws-gameboot to-windows --game valorant → jeton sur l'ESP, hibernation, bascule.
  3. Windows démarre bare-metalauto-loginfws-play lit le jeton, lance le jeu.
  4. À la fermeture/crash → retour, session FWS restaurée (apps/pages intactes).

Filet permanent : côté FWS, BootOrder[0] = FWS ré-affirmé à chaque démarrage.

Ajouter un jeu

  • Lancement : ajouter une entrée dans games.json (id en [a-z0-9_-]).
  • Auto-install : ajouter l'URL de l'installeur officiel dans installers.json (autoinstall: true). Types de lancement : riot / uri (steam://…, com.epicgames.launcher://…) / exe.

Rappels sécurité

  • Poste kiosque : auto-login + tâches non-UAC ⇒ accès physique = bureau admin.
  • BitLocker : ne pas l'activer sans sauvegarder la clé (flip Secure Boot → écran de récupération). manage-bde -status.