OSDN Git Service

improve laptop detection
[instantos/instantOS.git] / autostart.sh
1 #!/usr/bin/env bash
2
3 ####################################################
4 ## script for paperbenni-dwm autostart            ##
5 ####################################################
6
7 bashes=$(pgrep bash | wc -l)
8 if [ "$bashes" -gt 2 ]; then
9         echo "already running"
10         exit
11 fi
12
13 acpi | grep -q '%' && ISLAPTOP="true"
14
15 if command -v picom &>/dev/null; then
16         picom &
17 else
18         compton &
19 fi
20
21 sleep 1
22
23 if command -v deadd &>/dev/null; then
24         if ! pgrep deadd; then
25                 while :; do
26                         deadd
27                         sleep 30
28                 done &
29         fi
30 fi
31
32 # chrome os wallpaper changer
33 [ -e /home/benjamin/paperbenni/menus/dm/wg.sh ] &&
34         bash /home/benjamin/paperbenni/menus/dm/wg.sh
35
36 [ -e /home/benjamin/paperbenni/monitor.sh ] &&
37         bash /home/benjamin/paperbenni/monitor.sh
38
39 # apply german keybpard layout
40 setxkbmap -layout de
41
42 [ -n "$ISLAPTOP" ] && nm-applet &
43
44 INTERNET="X"
45
46 REPETITIONS="xxxxxx"
47
48 # status bar loop
49 while :; do
50         # run every 60 seconds
51         if [ "$REPETITIONS" = "xxxxxx" ]; then
52                 if ping -q -c 1 -W 1 8.8.8.8; then
53                         INTERNET="🌍"
54                 else
55                         INTERNET="X"
56                 fi
57
58                 # battery indicator on laptop
59                 [ -n "$ISLAPTOP" ] && date="$date|⚡$(acpi | egrep -o '[0-9]*%')"
60
61                 REPETITIONS="x"
62         else
63                 REPETITIONS="$REPETITIONS"x
64         fi
65
66         date="$(date +'%d-%m-%Y|%T')"
67         date="$date|🔊$(amixer get Master | egrep -o '[0-9]{1,3}%' | head -1)|$INTERNET"
68         xsetroot -name "$date"
69         sleep 10
70 done