This commit is contained in:
2026-03-19 21:22:46 +01:00
parent ac7258e9eb
commit b11978eec5
2 changed files with 9 additions and 16 deletions

10
Jenkinsfile vendored
View File

@@ -7,12 +7,12 @@ pipeline {
args '--privileged --security-opt seccomp=unconfined --security-opt apparmor=unconfined -u root:root'
}
}
stage('Clean workspace') {
steps {
deleteDir()
}
}
stages {
stage('Clean workspace') {
steps {
deleteDir()
}
}
stage('Build ISO') {
steps {
dir('root')

View File

@@ -4,25 +4,20 @@ set -e
USER_NAME="bob"
USER_HOME="/home/${USER_NAME}"
# 1) Créer l'utilisateur s'il n'existe pas
if ! id "${USER_NAME}" >/dev/null 2>&1; then
adduser --disabled-password --gecos "" "${USER_NAME}"
fi
# Groupes utiles pour une distro gaming rétro
for grp in audio video cdrom games plugdev; do
if getent group "$grp" >/dev/null 2>&1; then
adduser "${USER_NAME}" "$grp" >/dev/null 2>&1 || true
fi
done
# 2) ~/.xinitrc : démarrer Fluxbox proprement
echo 'gamer ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/gamer
chmod 0440 /etc/sudoers.d/gamer
cat > "${USER_HOME}/.xinitrc" <<'EOF'
#!/bin/sh
exec startfluxbox
EOF
# 3) ~/.profile : lancer X automatiquement seulement sur tty1
cat > "${USER_HOME}/.profile" <<'EOF'
#!/bin/sh
if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
@@ -30,7 +25,6 @@ if [ -z "$DISPLAY" ] && [ "$(tty)" = "/dev/tty1" ]; then
fi
EOF
# 4) Si le shell est bash, .bash_profile doit charger .profile
cat > "${USER_HOME}/.bash_profile" <<'EOF'
if [ -f "$HOME/.profile" ]; then
. "$HOME/.profile"
@@ -47,8 +41,7 @@ chmod 0644 \
"${USER_HOME}/.profile" \
"${USER_HOME}/.bash_profile"
# 5) Autologin sur tty1 via /etc/inittab
# On remplace seulement la ligne tty1.
if grep -q '^1:2345:respawn:' /etc/inittab; then
sed -i 's|^1:2345:respawn:.*|1:2345:respawn:/sbin/getty -a '"${USER_NAME}"' 38400 tty1 linux|' /etc/inittab
else