FWS Linux

FWS Linux est une distribution live/installable basée sur Arch Linux, livrée sous forme d'ISO bootable BIOS/UEFI avec l'installeur graphique Calamares.

Le projet se construit depuis Windows via WSL (ou directement depuis Arch Linux) avec mkarchiso.


Aperçu

Base Arch Linux (rolling release)
Installeur Calamares (compilé depuis l'AUR)
Environnement live Xorg + Openbox — Calamares se lance automatiquement
Bureaux installables XFCE, KDE Plasma, GNOME, Hyprland, CLI
Boot BIOS (syslinux) + UEFI (systemd-boot)
Compression squashfs (xz)
Build Windows + WSL (Arch) ou Arch Linux natif

Prérequis

Depuis Windows

  • Windows 10/11 avec WSL 2
  • Une distribution Arch Linux dans WSL (Arch, ArchLinux, ArchWSL…)
  • Git Bash pour lancer les scripts

Depuis Arch Linux (WSL ou natif)

Les scripts installent automatiquement les paquets nécessaires (archiso, base-devel, git, reflector, dos2unix).


Démarrage rapide

# Étape 1 — Build des paquets AUR (calamares, winboat-bin) et création du repo local
./setup-calamares.sh

# Étape 2 — Build de l'ISO
./build.sh

L'ISO finale est générée dans ./out/.

Les deux scripts détectent automatiquement s'ils tournent depuis Git Bash (bascule automatique dans WSL en root) ou directement depuis WSL/Arch.


Structure du projet

FWS/
├── build.sh                  # Build de l'ISO via mkarchiso
├── setup-calamares.sh        # Build des paquets AUR + création du repo local
├── configs/
│   ├── releng/               # Profil principal (base ArchISO releng)
│   │   ├── profiledef.sh     # Métadonnées ISO (nom, label, bootmodes…)
│   │   ├── packages.x86_64   # Liste des paquets du live
│   │   ├── pacman.conf       # Config pacman pour le build
│   │   └── airootfs/         # Overlay rootfs du profil releng
│   │       ├── etc/calamares/    # Config et modules Calamares
│   │       └── usr/local/bin/    # Scripts fws-desktop-init-*
│   └── baseline/             # Overlay FWS appliqué par-dessus releng (prioritaire)
│       └── airootfs/etc/calamares/   # Branding et modules surchargés
├── local-repo/               # Repo pacman local généré (calamares, winboat-bin)
├── out/                      # ISOs générées
└── scripts/
    └── run_archiso.sh        # Test rapide en QEMU

Environnements de bureau

Calamares propose le choix du bureau à l'installation. Chaque option est gérée par un script fws-desktop-init-* qui installe les paquets, configure le display manager et supprime ce qui ne sert pas.

Bureau Display Manager Script
XFCE LightDM fws-desktop-init-xfce
KDE Plasma SDDM fws-desktop-init-kde
GNOME GDM fws-desktop-init-gnome
Hyprland SDDM fws-desktop-init-hyprland
CLI fws-desktop-init-cli

Tous les bureaux installent un socle commun : Firefox, LibreOffice, MariaDB, Wine, Podman et WinBoat (avec support KVM).


Séquence de boot de l'ISO live

  1. Démarrage (BIOS ou UEFI)
  2. systemd → autologin root sur tty1
  3. xorg-start.serviceXorg :0
  4. calamares.serviceDISPLAY=:0 calamares
  5. Fallback : si les services échouent, .zprofile relance Xorg + Openbox + Calamares manuellement

Séquence Calamares

welcome → locale → keyboard → partition → users → desktop environement → summary
         → [installation] →
         partition · mount · unpackfs · machineid · fstab · locale ·
         keyboard · localecfg · users · networkcfg · hwclock ·
         services-systemd · packages · initcpiocfg · initcpio · desktop environement ·
         grubcfg · bootloader · umount
         → finished

Test en QEMU

./scripts/run_archiso.sh -i out/fws-*.iso          # BIOS
./scripts/run_archiso.sh -u -i out/fws-*.iso       # UEFI

Personnalisation

Quoi
Paquets du live configs/releng/packages.x86_64
Overlay rootfs configs/releng/airootfs/ ou configs/baseline/airootfs/
Modules Calamares configs/baseline/airootfs/etc/calamares/modules/
Séquence Calamares configs/releng/airootfs/etc/calamares/settings.conf
Branding ISO configs/releng/profiledef.sh (iso_name, iso_label…)
Branding Calamares configs/releng/airootfs/etc/calamares/branding/fws/branding.desc
Paquets installés configs/releng/airootfs/etc/calamares/modules/packages.conf

Dépannage

pacman.conf introuvable
Vérifier que configs/releng/pacman.conf existe.
Calamares ne démarre pas dans l'ISO
Se logger sur tty (autologin root) et consulter :
journalctl -u xorg-start -u calamares
Erreurs de retours à la ligne (CRLF)
build.sh exécute dos2unix automatiquement sur tout le profil. Éditer depuis Windows ne pose pas de problème.
mkarchiso échoue sur un paquet AUR
Relancer ./setup-calamares.sh pour reconstruire le repo local.
WSL — DisableSandbox manquant
setup-calamares.sh l'ajoute automatiquement à /etc/pacman.conf si WSL est détecté (pacman ≥ 7 utilise landlock, non supporté par le kernel WSL).

Licence

FWS est un fork d'archiso (Arch Linux), redistribué sous GPL-3.0-or-later.

Voir LICENSE pour le texte complet et AUTHORS.rst pour les auteurs originaux d'archiso.

Les ajouts spécifiques à FWS (build.sh, setup-calamares.sh, configs/baseline/, scripts fws-desktop-init-*, intégration Calamares + WinBoat, chaîne WSL) sont également distribués sous GPL-3.0-or-later.

S
Description
The boss of Windows we're here to destroy this heretic
Readme GPL-3.0 3.5 MiB
Languages
Python 72.6%
Shell 23.3%
Makefile 1.6%
Go Template 1%
QML 0.9%
Other 0.5%