feat: install and Xfce
[50][DONE]
This commit is contained in:
@@ -11,6 +11,7 @@ Le projet est construit avec une chaîne `mkarchiso` adaptée pour fonctionner *
|
|||||||
- **Base** : Arch Linux (rolling release)
|
- **Base** : Arch Linux (rolling release)
|
||||||
- **Installeur** : Calamares (compilé depuis l'AUR, servi via un repo local pacman)
|
- **Installeur** : Calamares (compilé depuis l'AUR, servi via un repo local pacman)
|
||||||
- **Affichage live** : Xorg + Openbox, lancement automatique de Calamares
|
- **Affichage live** : Xorg + Openbox, lancement automatique de Calamares
|
||||||
|
- **Bureau installé** : XFCE + LightDM avec autologin du premier compte créé
|
||||||
- **Boot** : BIOS (syslinux) + UEFI (systemd-boot)
|
- **Boot** : BIOS (syslinux) + UEFI (systemd-boot)
|
||||||
- **Compression** : squashfs (xz)
|
- **Compression** : squashfs (xz)
|
||||||
- **Build** : Windows + WSL (Arch) ou directement depuis Arch
|
- **Build** : Windows + WSL (Arch) ou directement depuis Arch
|
||||||
@@ -59,6 +60,7 @@ Les deux scripts détectent automatiquement s'ils sont lancés depuis **Git Bash
|
|||||||
3. `xorg-start.service` → `Xorg :0`
|
3. `xorg-start.service` → `Xorg :0`
|
||||||
4. `calamares.service` → `DISPLAY=:0 calamares`
|
4. `calamares.service` → `DISPLAY=:0 calamares`
|
||||||
5. **Fallback** : si les services échouent, `.zprofile` relance Xorg + Openbox + Calamares manuellement
|
5. **Fallback** : si les services échouent, `.zprofile` relance Xorg + Openbox + Calamares manuellement
|
||||||
|
6. Après installation, le système démarre sur LightDM puis ouvre automatiquement la session XFCE du compte installé
|
||||||
|
|
||||||
## Test rapide en QEMU
|
## Test rapide en QEMU
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,10 @@ units:
|
|||||||
action: "enable"
|
action: "enable"
|
||||||
mandatory: false
|
mandatory: false
|
||||||
|
|
||||||
|
- name: "lightdm.service"
|
||||||
|
action: "enable"
|
||||||
|
mandatory: true
|
||||||
|
|
||||||
- name: "sshd.service"
|
- name: "sshd.service"
|
||||||
action: "enable"
|
action: "enable"
|
||||||
mandatory: false
|
mandatory: false
|
||||||
|
|||||||
@@ -9,6 +9,11 @@ script:
|
|||||||
# Copie le kernel depuis l'ISO vers /boot du système cible
|
# Copie le kernel depuis l'ISO vers /boot du système cible
|
||||||
- 'cp "$(find /run/archiso/bootmnt -name vmlinuz-linux 2>/dev/null | head -1)" "${ROOT}/boot/vmlinuz-linux"'
|
- 'cp "$(find /run/archiso/bootmnt -name vmlinuz-linux 2>/dev/null | head -1)" "${ROOT}/boot/vmlinuz-linux"'
|
||||||
|
|
||||||
|
# Configure LightDM pour démarrer automatiquement la session XFCE du premier utilisateur créé.
|
||||||
|
- 'FIRST_USER="$(awk -F: ''$$3 >= 1000 && $$1 != "nobody" { print $$1; exit }'' "${ROOT}/etc/passwd")"'
|
||||||
|
- 'if [ -n "$$FIRST_USER" ]; then mkdir -p "${ROOT}/etc/lightdm/lightdm.conf.d"; printf ''[Seat:*]\nautologin-user=%s\nautologin-user-timeout=0\nuser-session=xfce\nautologin-session=xfce\ngreeter-hide-users=true\nallow-guest=false\n'' "$$FIRST_USER" > "${ROOT}/etc/lightdm/lightdm.conf.d/50-fws.conf"; fi'
|
||||||
|
- 'if [ -n "$$FIRST_USER" ] && [ -d "${ROOT}/home/$$FIRST_USER" ]; then printf ''[Desktop]\nSession=xfce\n'' > "${ROOT}/home/$$FIRST_USER/.dmrc"; fi'
|
||||||
|
|
||||||
# Supprime le drop-in archiso (surcharge HOOKS avec des hooks inexistants post-install)
|
# Supprime le drop-in archiso (surcharge HOOKS avec des hooks inexistants post-install)
|
||||||
- '-rm -f "${ROOT}/etc/mkinitcpio.conf.d/archiso.conf"'
|
- '-rm -f "${ROOT}/etc/mkinitcpio.conf.d/archiso.conf"'
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ defaultGroups:
|
|||||||
autologinGroup: autologin
|
autologinGroup: autologin
|
||||||
sudoersGroup: wheel
|
sudoersGroup: wheel
|
||||||
setRootPassword: true
|
setRootPassword: true
|
||||||
doAutologin: false
|
doAutologin: true
|
||||||
userShell: /bin/bash
|
userShell: /bin/bash
|
||||||
|
|
||||||
passwordRequirements:
|
passwordRequirements:
|
||||||
|
|||||||
@@ -1,5 +1,9 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Lancé par startx (cf. /root/.zprofile)
|
# Lancé par startx (cf. /root/.zprofile), uniquement dans le live FWS.
|
||||||
|
if [ ! -d /run/archiso ]; then
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
xsetroot -solid "#1a1a2e"
|
xsetroot -solid "#1a1a2e"
|
||||||
openbox &
|
openbox &
|
||||||
sleep 1
|
sleep 1
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
# Démarrage automatique de Xorg + Calamares sur tty1 (autologin root).
|
# Démarrage automatique de Xorg + Calamares uniquement dans le live FWS.
|
||||||
# La session X exécute /root/.xinitrc qui lance Openbox + Calamares.
|
# Sur le système installé, /run/archiso n'existe pas, donc rien ne se lance.
|
||||||
if [[ "$(tty)" == "/dev/tty1" && -z "$DISPLAY" ]]; then
|
if [[ -d /run/archiso && "$(tty)" == "/dev/tty1" && -z "$DISPLAY" ]]; then
|
||||||
exec startx -- vt1
|
exec startx -- vt1
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -93,6 +93,12 @@ xorg-xsetroot
|
|||||||
openbox
|
openbox
|
||||||
ttf-dejavu
|
ttf-dejavu
|
||||||
|
|
||||||
|
# --- Bureau FWS installé ---
|
||||||
|
xfce4
|
||||||
|
xfce4-goodies
|
||||||
|
lightdm
|
||||||
|
lightdm-gtk-greeter
|
||||||
|
|
||||||
# --- Calamares (fournis par fws-local) ---
|
# --- Calamares (fournis par fws-local) ---
|
||||||
calamares
|
calamares
|
||||||
kpmcore
|
kpmcore
|
||||||
|
|||||||
@@ -16,6 +16,10 @@ services:
|
|||||||
- name: systemd-timesyncd
|
- name: systemd-timesyncd
|
||||||
mandatory: true
|
mandatory: true
|
||||||
|
|
||||||
|
# Gestionnaire de session graphique
|
||||||
|
- name: lightdm
|
||||||
|
mandatory: true
|
||||||
|
|
||||||
# Ajoute ici tes services FWS supplémentaires
|
# Ajoute ici tes services FWS supplémentaires
|
||||||
# - name: mon-service-fws
|
# - name: mon-service-fws
|
||||||
# mandatory: false
|
# mandatory: false
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ defaultGroups:
|
|||||||
|
|
||||||
# Autoriser le login automatique
|
# Autoriser le login automatique
|
||||||
autologinGroup: autologin
|
autologinGroup: autologin
|
||||||
|
doAutologin: true
|
||||||
|
|
||||||
# Sudoers — donne les droits sudo au groupe wheel
|
# Sudoers — donne les droits sudo au groupe wheel
|
||||||
sudoersGroup: wheel
|
sudoersGroup: wheel
|
||||||
|
|||||||
@@ -93,6 +93,12 @@ xorg-xsetroot
|
|||||||
openbox
|
openbox
|
||||||
ttf-dejavu
|
ttf-dejavu
|
||||||
|
|
||||||
|
# --- Bureau FWS installé ---
|
||||||
|
xfce4
|
||||||
|
xfce4-goodies
|
||||||
|
lightdm
|
||||||
|
lightdm-gtk-greeter
|
||||||
|
|
||||||
# --- Calamares (fournis par fws-local) ---
|
# --- Calamares (fournis par fws-local) ---
|
||||||
calamares
|
calamares
|
||||||
kpmcore
|
kpmcore
|
||||||
|
|||||||
Reference in New Issue
Block a user