Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/scripts/shell/start-sugar
blob: 5f5d3d4cf6e108cc8edd80d14c93f3f90de526a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash

shelldir=`dirname "$0"`
scriptsdir=`dirname "$shelldir"`
rootdir=`dirname "$scriptsdir"`
display=`$scriptsdir/find-free-display`

if [ -f $rootdir/config ]; then
    source $rootdir/config
fi

if [ -n $SUGAR_DISPLAY ]; then
    SUGAR_XKBCONFIG=`mktemp -t sugar-xkbconfig-XXXXXX`
    setxkbmap -print > $SUGAR_XKBCONFIG
    export SUGAR_XKBCONFIG
fi

if [ ! -z $SUGAR_PROFILE ]; then
    grep -q PROFILE $rootdir/config
    if [ $? -eq 1 ]; then
        randomstring=`</dev/urandom tr -cd A-Za-z0-9 | head -c10`
        echo "PROFILE=$randomstring" >> $ROOT_DIR/config
    fi
fi

if [ -z $DISPLAY ]; then
    tty_num=`tty | grep -oE '[0-9]+$'`
    x_options="vt$tty_num"

    xinit $scriptsdir/xinitrc -- $display $x_options
else
    screen_dpi=`$scriptsdir/get-screen-dpi`
    xephyr_options="-dpi $screen_dpi"

    if [ -z $RUN_IN_WINDOW ]; then
        xephyr_options="$xephyr_options -fullscreen"
    fi

    xinit $scriptsdir/xinitrc -- /usr/bin/Xephyr $display $xephyr_options
fi