Comments on: The easiest way to start X https://blog.ciberterminal.net/2011/09/27/the-easiest-way-to-start-x/ Welcome, connect your terminal Wed, 28 Sep 2011 08:36:06 +0000 hourly 1 https://wordpress.org/?v=6.8.1 By: dodger https://blog.ciberterminal.net/2011/09/27/the-easiest-way-to-start-x/comment-page-1/#comment-81 Wed, 28 Sep 2011 08:24:08 +0000 http://blog.ciberterminal.net/?p=572#comment-81 I’ve improved a bit the start script:

[cc lang=”bash”]#!/bin/bash
LOGDIR=/var/log/autofluxbox
[ ! -d $LOGDIR ] && mkdir $LOGDIR
USER=dodger
STARTX=”/usr/bin/startx”
SCREENID=0

getpid()
{
SCREENID=$(while read LINE ; do [[ “$LINE” =~ ^([0-9]{2,})\.Fluxbox_startup.*$ ]] && echo ${BASH_REMATCH[1]} ; done < <(sudo -u dodger screen -ls)) } mystart() { su - ${USER} -c "screen -S Fluxbox_startup -d -m ${STARTX}" echo "$(date) - Autofluxbox started with screen pid $SCREENID" | tee -a $LOGDIR/autofluxbox.$(date +%Y%m%d).log } mystop() { getpid [ $SCREENID -gt 10 ] && kill $SCREENID || echo "No X pid found" for i in $(ps waux | grep ^${USER} | grep xinitrc | awk '{print $2}') ; do kill $i ; done echo "$(date) - Autofluxbox stoped" | tee -a $LOGDIR/autofluxbox.$(date +%Y%m%d).log } usage() { echo "$0 {stop|start|status}" } mystatus() { getpid if [ $SCREENID -gt 10 ] then echo "$(date) - Autofluxbox running with screen pid $SCREENID" | tee -a $LOGDIR/autofluxbox.$(date +%Y%m%d).log else echo "$(date) - No X pid found" | tee -a $LOGDIR/autofluxbox.$(date +%Y%m%d).log fi } case $1 in start) mystart ;; stop) mystop ;; restart) mystop sleep 3 mystart ;; status) mystatus ;; *) usage ;; esac [/cc]

]]>