Moved to new phase
This commit is contained in:
@@ -484,7 +484,7 @@ for f in rc.conf inittab fstab.template zprofile; do
|
||||
fi
|
||||
done
|
||||
|
||||
for daemon in eudev syslog dbus dhcpcd pipewire; do
|
||||
for daemon in eudev seatd syslog dbus dhcpcd pipewire; do
|
||||
script="${PROJECT_ROOT}/configs/rc.d/${daemon}"
|
||||
if [ -x "$script" ]; then
|
||||
if bash -n "$script" 2>/dev/null; then
|
||||
@@ -544,7 +544,7 @@ done
|
||||
# anywhere in the file within the DAEMONS block (or just present as a daemon entry)
|
||||
RC_CONF="${PROJECT_ROOT}/configs/rc.conf"
|
||||
if [ -f "$RC_CONF" ]; then
|
||||
for svc in eudev dbus dhcpcd pipewire; do
|
||||
for svc in eudev seatd dbus dhcpcd pipewire; do
|
||||
if grep -q "^[[:space:]]*${svc}" "$RC_CONF"; then
|
||||
record_test "chain.daemon_listed.${svc}" "pass"
|
||||
else
|
||||
@@ -591,10 +591,89 @@ if [ -f "$ZPROFILE" ]; then
|
||||
else
|
||||
record_test "chain.zprofile_xdg_runtime" "fail" "zprofile missing XDG_RUNTIME_DIR setup"
|
||||
fi
|
||||
|
||||
# D-Bus user session — required by PipeWire and polkit
|
||||
if grep -q 'dbus-launch' "$ZPROFILE"; then
|
||||
record_test "chain.zprofile_dbus_session" "pass"
|
||||
else
|
||||
record_test "chain.zprofile_dbus_session" "fail" "zprofile missing dbus-launch — PipeWire and polkit won't work"
|
||||
fi
|
||||
|
||||
# polkit authentication agent — needed for GUI password prompts (e.g., Steam)
|
||||
if grep -q 'policykit-agent\|polkit.*agent' "$ZPROFILE"; then
|
||||
record_test "chain.zprofile_polkit_agent" "pass"
|
||||
else
|
||||
record_test "chain.zprofile_polkit_agent" "fail" "zprofile missing polkit agent — no GUI password prompts"
|
||||
fi
|
||||
|
||||
# LIBSEAT_BACKEND — seatd environment for wlroots/dwl
|
||||
if grep -q 'LIBSEAT_BACKEND' "$ZPROFILE"; then
|
||||
record_test "chain.zprofile_seatd_env" "pass"
|
||||
else
|
||||
record_test "chain.zprofile_seatd_env" "fail" "zprofile missing LIBSEAT_BACKEND — dwl may not get GPU access"
|
||||
fi
|
||||
|
||||
# pipewire-pulse — PulseAudio compat server needed by Firefox/Steam
|
||||
if grep -q 'pipewire-pulse' "$ZPROFILE"; then
|
||||
record_test "chain.zprofile_pipewire_pulse" "pass"
|
||||
else
|
||||
record_test "chain.zprofile_pipewire_pulse" "fail" "zprofile missing pipewire-pulse — Firefox/Steam audio won't work"
|
||||
fi
|
||||
|
||||
# wireplumber — session manager for PipeWire
|
||||
if grep -q 'wireplumber' "$ZPROFILE"; then
|
||||
record_test "chain.zprofile_wireplumber" "pass"
|
||||
else
|
||||
record_test "chain.zprofile_wireplumber" "fail" "zprofile missing wireplumber — audio routing won't work"
|
||||
fi
|
||||
else
|
||||
record_test "chain.zprofile_dwl" "fail" "zprofile file missing entirely"
|
||||
fi
|
||||
|
||||
# 7.11 — dwl config.h exists with keybindings
|
||||
DWL_CONFIG="${PROJECT_ROOT}/configs/dwl/config.h"
|
||||
if [ -f "$DWL_CONFIG" ]; then
|
||||
record_test "chain.dwl_config_exists" "pass"
|
||||
# Check for critical keybindings
|
||||
if grep -q 'XKB_KEY_Return' "$DWL_CONFIG" && grep -q 'termcmd' "$DWL_CONFIG"; then
|
||||
record_test "chain.dwl_config_terminal" "pass"
|
||||
else
|
||||
record_test "chain.dwl_config_terminal" "fail" "dwl config.h missing terminal keybinding"
|
||||
fi
|
||||
if grep -q 'browsercmd\|firefox' "$DWL_CONFIG"; then
|
||||
record_test "chain.dwl_config_browser" "pass"
|
||||
else
|
||||
record_test "chain.dwl_config_browser" "fail" "dwl config.h missing browser keybinding"
|
||||
fi
|
||||
if grep -q 'steamcmd\|steam' "$DWL_CONFIG"; then
|
||||
record_test "chain.dwl_config_steam" "pass"
|
||||
else
|
||||
record_test "chain.dwl_config_steam" "fail" "dwl config.h missing Steam keybinding"
|
||||
fi
|
||||
if grep -q 'XF86Audio' "$DWL_CONFIG"; then
|
||||
record_test "chain.dwl_config_audio_keys" "pass"
|
||||
else
|
||||
record_test "chain.dwl_config_audio_keys" "fail" "dwl config.h missing audio key controls"
|
||||
fi
|
||||
else
|
||||
record_test "chain.dwl_config_exists" "fail" "configs/dwl/config.h missing — dwl will use defaults (no custom keybindings)"
|
||||
fi
|
||||
|
||||
# 7.12 — Installer deploys rc.d scripts and dwl config to target
|
||||
INSTALLER_PKG="${PROJECT_ROOT}/src/install/modules/packages.sh"
|
||||
if [ -f "$INSTALLER_PKG" ]; then
|
||||
if grep -q 'rc\.d' "$INSTALLER_PKG" && grep -q 'cp.*rc\.d' "$INSTALLER_PKG"; then
|
||||
record_test "chain.installer_deploys_rcd" "pass"
|
||||
else
|
||||
record_test "chain.installer_deploys_rcd" "fail" "Installer doesn't copy rc.d scripts to target"
|
||||
fi
|
||||
if grep -q 'dwl' "$INSTALLER_PKG"; then
|
||||
record_test "chain.installer_deploys_dwl_config" "pass"
|
||||
else
|
||||
record_test "chain.installer_deploys_dwl_config" "fail" "Installer doesn't copy dwl config to target"
|
||||
fi
|
||||
fi
|
||||
|
||||
# 7.7 — rc.d/pipewire does NOT hardcode a username (should auto-detect)
|
||||
PW_SCRIPT="${PROJECT_ROOT}/configs/rc.d/pipewire"
|
||||
if [ -f "$PW_SCRIPT" ]; then
|
||||
@@ -786,7 +865,9 @@ if [ "$QUICK_MODE" = false ] && [ "$ISO_PREREQS_OK" = true ]; then
|
||||
"install/modules/user.sh:user module in live rootfs" \
|
||||
"install/modules/locale.sh:locale module in live rootfs" \
|
||||
"install/modules/packages.sh:packages module in live rootfs" \
|
||||
"install/configs/zprofile:zprofile for target user in live rootfs"; do
|
||||
"install/configs/zprofile:zprofile for target user in live rootfs" \
|
||||
"etc/rc.d/seatd:seatd daemon in live rootfs" \
|
||||
"install/configs/dwl/config.h:dwl config.h for target in live rootfs"; do
|
||||
fpath="${check_file%%:*}"
|
||||
fdesc="${check_file##*:}"
|
||||
if sudo test -f "$SQFS_MNT/$fpath"; then
|
||||
|
||||
Reference in New Issue
Block a user