diff --git a/userpatches/customize-image.sh b/userpatches/customize-image.sh index ba22516..7128cb0 100644 --- a/userpatches/customize-image.sh +++ b/userpatches/customize-image.sh @@ -64,6 +64,8 @@ Main() { # startup systemctl enable x6100_chroot.service + systemctl enable x6100_app.service + systemctl enable lightdm_x6100.service case $RELEASE in stretch) diff --git a/userpatches/overlay/boot/x6100Env.txt b/userpatches/overlay/boot/x6100Env.txt index 70e3e0e..060212d 100644 --- a/userpatches/overlay/boot/x6100Env.txt +++ b/userpatches/overlay/boot/x6100Env.txt @@ -1,4 +1,4 @@ BUTTON_NONE=setenv nosdboot 1 -BUTTON_1=setenv lkernel zImage_org; setenv bootargs_extra x6100_app=1 lightdm_screen=0 lightdm_vnc=1 -BUTTON_2=setenv lkernel zImage_org; setenv bootargs_extra x6100_app=0 lightdm_screen=1 lightdm_vnc=1 -BUTTON_3=setenv lkernel zImage; setenv bootargs_extra x6100_app=0 lightdm_screen=0 lightdm_vnc=1 \ No newline at end of file +BUTTON_1=setenv lkernel zImage_org; setenv bootargs_extra x6100_app=1 lightdm_screen=0 +BUTTON_2=setenv lkernel zImage_org; setenv bootargs_extra x6100_app=0 lightdm_screen=1 +BUTTON_3=setenv lkernel zImage; setenv bootargs_extra x6100_app=0 lightdm_screen=0 \ No newline at end of file diff --git a/userpatches/overlay/etc/systemd/system/lightdm_x6100.service b/userpatches/overlay/etc/systemd/system/lightdm_x6100.service new file mode 100644 index 0000000..66893e0 --- /dev/null +++ b/userpatches/overlay/etc/systemd/system/lightdm_x6100.service @@ -0,0 +1,20 @@ +[Unit] +Description=lightdm config based on kernel param +Before=network.target +Before=systemd-user-sessions.service +Before=network-online.target +Before=lightdm.service + +[Service] +User=root +Type=oneshot +RemainAfterExit=yes +ExecStart=/root/lightdm_x6100.sh start +ExecStop=/root/lightdm_x6100.sh stop +TimeoutSec=30 +StartLimitInterval=350 +StartLimitBurst=10 + +[Install] +WantedBy=multi-user.target +lightdm_screen=1 \ No newline at end of file diff --git a/userpatches/overlay/etc/systemd/system/x6100_app.service b/userpatches/overlay/etc/systemd/system/x6100_app.service new file mode 100644 index 0000000..731f84d --- /dev/null +++ b/userpatches/overlay/etc/systemd/system/x6100_app.service @@ -0,0 +1,15 @@ +[Unit] +Description=x6100 APP +Requires=x6100_chroot.service +Requires=amixer.service +Requires=gpio_setup.service +ConditionKernelCommandLine=x6100_app=1 + +[Service] +User=root +ExecStart=/root/run_x6100_app.sh +Restart=on-failure + +[Install] +WantedBy=multi-user.target + diff --git a/userpatches/overlay/root/lightdm_x6100.sh b/userpatches/overlay/root/lightdm_x6100.sh new file mode 100755 index 0000000..2ad500b --- /dev/null +++ b/userpatches/overlay/root/lightdm_x6100.sh @@ -0,0 +1,9 @@ +#!/bin/bash +if grep -r "lightdm_screen=1" /proc/cmdline > /dev/null ; then + rm /etc/lightdm/lightdm.conf.d/90-no-screen.conf +else + cat > /etc/lightdm/lightdm.conf.d/90-no-screen.conf <