Remove deprecated one-shot scripts and update first-boot configuration for improved provisioning</message>
<message>Delete obsolete one-shot scripts for setting screen rotation and wallpaper, as well as related Python and shell scripts. Update the first-boot configuration to streamline the provisioning process by removing references to these scripts. This cleanup enhances maintainability and focuses on the essential steps required for the first boot experience, ensuring a more efficient setup for users.
This commit is contained in:
39
emmc-provisioning/cloud-init/fileserver/steps/06-lightdm.sh
Normal file
39
emmc-provisioning/cloud-init/fileserver/steps/06-lightdm.sh
Normal file
@@ -0,0 +1,39 @@
|
||||
#!/bin/bash
|
||||
# Step 06: LightDM session config + DSI panel wait service
|
||||
|
||||
step_06_lightdm() {
|
||||
mkdir -p /etc/lightdm/lightdm.conf.d
|
||||
|
||||
curl -fsSL "${FILE_SERVER}/99-default-session.conf" \
|
||||
-o /etc/lightdm/lightdm.conf.d/99-default-session.conf 2>/dev/null || true
|
||||
|
||||
if [[ -f /etc/lightdm/lightdm.conf ]]; then
|
||||
sed -i "s/^user-session=.*/user-session=$LIGHTDM_SESSION/" /etc/lightdm/lightdm.conf
|
||||
sed -i "s/^autologin-session=.*/autologin-session=$LIGHTDM_SESSION/" /etc/lightdm/lightdm.conf
|
||||
log "LightDM session set to $LIGHTDM_SESSION"
|
||||
fi
|
||||
|
||||
# Wait for DSI panel to report "connected" before LightDM starts (max 30s)
|
||||
mkdir -p /etc/systemd/system/lightdm.service.d
|
||||
cat > /etc/systemd/system/cm4-await-display.service << 'AWAITSVC'
|
||||
[Unit]
|
||||
Description=Wait for reTerminal DM DSI panel before LightDM
|
||||
Before=lightdm.service
|
||||
DefaultDependencies=no
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
ExecStart=/bin/sh -c 'echo "Waiting for DSI panel..."; for i in $(seq 1 30); do for f in /sys/class/drm/card*-DSI-1/status; do [ -f "$f" ] && [ "$(cat "$f" 2>/dev/null)" = "connected" ] && echo "DSI connected." && exit 0; done; sleep 1; done; echo "DSI timeout (30s), starting anyway."'
|
||||
TimeoutStartSec=35
|
||||
|
||||
[Install]
|
||||
WantedBy=graphical.target
|
||||
AWAITSVC
|
||||
|
||||
printf '%s\n' '[Unit]' 'After=cm4-await-display.service' \
|
||||
> /etc/systemd/system/lightdm.service.d/99-await-display.conf
|
||||
systemctl daemon-reload
|
||||
systemctl enable cm4-await-display.service 2>/dev/null || true
|
||||
log "cm4-await-display.service installed (wait for DSI, max 30s)"
|
||||
}
|
||||
Reference in New Issue
Block a user