init script
This commit is contained in:
parent
951ef339ff
commit
248b7e644d
4 changed files with 101 additions and 104 deletions
14
X11/init.d/init.sh
Normal file
14
X11/init.d/init.sh
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
STATUS_BLOCKS="tray vol mic net bat kbd time date" dwmstatus &
|
||||||
|
dbus-update-activation-environment --systemd --all
|
||||||
|
systemctl --user import-environment DISPLAY
|
||||||
|
xset r rate 300 70
|
||||||
|
setxkbmap en
|
||||||
|
#clipmenud &
|
||||||
|
#dunst
|
||||||
|
#picom --experimental-backends --animation-for-open-window=zoom &
|
||||||
|
#emacs --daemon &
|
||||||
|
#xrandr --output DVI-D-0 --right-of HDMI-0
|
||||||
|
xsetroot -solid '#1e2326'
|
||||||
|
|
||||||
|
clear
|
||||||
|
sleep 0.2
|
60
X11/xinitrc
60
X11/xinitrc
|
@ -1,5 +1,12 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# $ printf '#!/bin/sh\n\n[ -f ~/.config/X11/xinitrc ] && . ~/.config/X11/xinitrc || . /etc/X11/Xsession\n' | sudo tee /etc/X11/xinit/xinitrc
|
# `/etc/X11/xinit/xinitrc`:
|
||||||
|
#
|
||||||
|
# #!/bin/sh
|
||||||
|
# if [ -f ~/.config/X11/xinitrc ] ; then
|
||||||
|
# . ~/.config/X11/xinitrc
|
||||||
|
# else
|
||||||
|
# . /etc/X11/Xsession
|
||||||
|
# fi
|
||||||
|
|
||||||
userresources=$XDG_CONFIG_HOME/X11/Xresources
|
userresources=$XDG_CONFIG_HOME/X11/Xresources
|
||||||
ERRFILE=$XDG_CACHE_HOME/X11/xsession-errors
|
ERRFILE=$XDG_CACHE_HOME/X11/xsession-errors
|
||||||
|
@ -7,34 +14,35 @@ usermodmap=$XDG_CONFIG_HOME/X11/Xmodmap
|
||||||
sysresources=/etc/X11/xinit/.Xresources
|
sysresources=/etc/X11/xinit/.Xresources
|
||||||
sysmodmap=/etc/X11/xinit/.Xmodmap
|
sysmodmap=/etc/X11/xinit/.Xmodmap
|
||||||
|
|
||||||
# merge in defaults and keymaps
|
if [ -f $sysresources ] ; then
|
||||||
[ -f $sysresources ] && xrdb -merge $sysresources
|
xrdb -merge $sysresources
|
||||||
[ -f $sysmodmap ] && xmodmap $sysmodmap
|
fi
|
||||||
[ -f "$userresources" ] && xrdb -merge "$userresources"
|
|
||||||
[ -f "$usermodmap" ] && xmodmap "$usermodmap"
|
|
||||||
|
|
||||||
[ -d /etc/X11/xinit/xinitrc.d ] &&
|
if [ -f $sysmodmap ] ; then
|
||||||
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do [ -x "$f" ] && . "$f" ; done &&
|
xmodmap $sysmodmap
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "$userresources" ] ; then
|
||||||
|
xrdb -merge "$userresources"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f "$usermodmap" ] ; then
|
||||||
|
xmodmap "$usermodmap"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
|
||||||
|
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
|
||||||
|
[ -x "$f" ] && . "$f"
|
||||||
|
done
|
||||||
unset f
|
unset f
|
||||||
|
fi
|
||||||
|
|
||||||
# Added xinitrc config
|
if test -d ~/.config/X11/init.d/; then
|
||||||
dbus-update-activation-environment --systemd --all &
|
for config in ~/.config/X11/init.d/*.sh; do
|
||||||
systemctl --user import-environment DISPLAY &
|
test -r "$config" && . "$config"
|
||||||
xset r rate 300 70 &
|
done
|
||||||
setxkbmap en &
|
unset config
|
||||||
STATUS_BLOCKS="tray vol mic net bat kbd time date" dwmstatus &
|
fi
|
||||||
clipmenud &
|
|
||||||
dunst &
|
|
||||||
picom --experimental-backends --animation-for-open-window=zoom &
|
|
||||||
emacs --daemon &
|
|
||||||
dropbox &
|
|
||||||
clear &
|
|
||||||
|
|
||||||
# Multiple displays, add this into xinitrc.displays:
|
|
||||||
# xrandr --output DVI-D-0 --right-of HDMI-0
|
|
||||||
[ -f "$HOME/.config/X11/xinitrc.displays" ] && . /home/tavo/.config/X11/xinitrc.displays
|
|
||||||
xsetroot -solid '#1e2326' &
|
|
||||||
sleep 0.2
|
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
dwm >/dev/null 2>&1
|
dwm >/dev/null 2>&1
|
||||||
|
|
|
@ -4,8 +4,6 @@
|
||||||
# a fetch in pure POSIX shell
|
# a fetch in pure POSIX shell
|
||||||
#
|
#
|
||||||
|
|
||||||
[ "$1" = "min" ] && mode="min"
|
|
||||||
|
|
||||||
# supress errors
|
# supress errors
|
||||||
exec 2>/dev/null
|
exec 2>/dev/null
|
||||||
set --
|
set --
|
||||||
|
@ -27,7 +25,6 @@ for os in /etc/os-release /usr/lib/os-release; do
|
||||||
# some POSIX shells exit when trying to source a file that doesn't exist
|
# some POSIX shells exit when trying to source a file that doesn't exist
|
||||||
[ -f $os ] && . $os && break
|
[ -f $os ] && . $os && break
|
||||||
done
|
done
|
||||||
[ -e "/data/data/com.termux" ] && ID="android $(getprop ro.build.version.release)"
|
|
||||||
|
|
||||||
if [ -e /proc/$$/comm ]; then
|
if [ -e /proc/$$/comm ]; then
|
||||||
## Terminal
|
## Terminal
|
||||||
|
@ -63,20 +60,20 @@ if [ -e /proc/$$/comm ]; then
|
||||||
read -r c < "$i"
|
read -r c < "$i"
|
||||||
case $c in
|
case $c in
|
||||||
*bar*|*rc) ;;
|
*bar*|*rc) ;;
|
||||||
dwm|awesome|xmonad*|qtile|sway|i3|[bfo]*box|*wm) wm=${c%%-*}; break;;
|
awesome|xmonad*|qtile|sway|i3|[bfo]*box|*wm*) wm=${c%%-*}; break;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
## Memory
|
## Memory
|
||||||
# loop over lines in /proc/meminfo until it reaches MemTotal,
|
# loop over lines in /proc/meminfo until it reaches MemTotal,
|
||||||
# then convert the amount (second word) from KB to MB
|
# then convert the amount (second word) from KB to MB
|
||||||
while read -r line; [ "$mode" != "min" ]; do
|
while read -r line; do
|
||||||
eq "$line" 'MemTotal*' && set -- $line && break
|
eq "$line" 'MemTotal*' && set -- $line && break
|
||||||
done < /proc/meminfo
|
done < /proc/meminfo
|
||||||
[ "$mode" != "min" ] && mem="$(( $2 / 1000 ))MB"
|
mem="$(( $2 / 1000 ))MB"
|
||||||
|
|
||||||
## Processor
|
## Processor
|
||||||
while read -r line; [ "$mode" != "min" ] ; do
|
while read -r line; do
|
||||||
case $line in
|
case $line in
|
||||||
vendor_id*) vendor="${line##*: } ";;
|
vendor_id*) vendor="${line##*: } ";;
|
||||||
model\ name*) cpu=${line##*: }; break;;
|
model\ name*) cpu=${line##*: }; break;;
|
||||||
|
@ -92,14 +89,13 @@ if [ -e /proc/$$/comm ]; then
|
||||||
|
|
||||||
## Kernel
|
## Kernel
|
||||||
read -r _ _ version _ < /proc/version
|
read -r _ _ version _ < /proc/version
|
||||||
[ -z "$version" ] && version=$(uname -r)
|
|
||||||
kernel=${version%%-*}
|
kernel=${version%%-*}
|
||||||
eq "$version" '*Microsoft*' && ID="fake $ID"
|
eq "$version" '*Microsoft*' && ID="fake $ID"
|
||||||
|
|
||||||
## Motherboard // laptop
|
## Motherboard // laptop
|
||||||
[ "$mode" != "min" ] && read -r model < /sys/devices/virtual/dmi/id/product_name
|
read -r model < /sys/devices/virtual/dmi/id/product_name
|
||||||
# invalid model handling
|
# invalid model handling
|
||||||
[ "$mode" != "min" ] && case $model in
|
case $model in
|
||||||
# alternate file with slightly different info
|
# alternate file with slightly different info
|
||||||
# on my laptop it has the device model (instead of 'hp notebook')
|
# on my laptop it has the device model (instead of 'hp notebook')
|
||||||
# on my desktop it has the extended motherboard model
|
# on my desktop it has the extended motherboard model
|
||||||
|
@ -118,20 +114,6 @@ if [ -e /proc/$$/comm ]; then
|
||||||
[ $# -gt 1 ] && pkgs=$# && break
|
[ $# -gt 1 ] && pkgs=$# && break
|
||||||
done
|
done
|
||||||
|
|
||||||
[ -d "/var/db/kiss" ] && pkgs="$pkgs (kiss)"
|
|
||||||
[ -d "/var/lib/pacman" ] && pkgs="$pkgs (pacman)"
|
|
||||||
[ -d "/var/lib/dpkg" ] && pkgs="$pkgs (dpkg)"
|
|
||||||
[ -d "/var/db/xbps" ] && pkgs="$pkgs (xbps)"
|
|
||||||
[ -d "/var/db/pkg" ] && pkgs="$pkgs (emerge)"
|
|
||||||
|
|
||||||
set --
|
|
||||||
# Universal formats
|
|
||||||
for i in '/var/lib/flatpak/exports/bin/* /var/lib/flatpak/runtime/*' ; do
|
|
||||||
set -- $i
|
|
||||||
[ $# -gt 2 ] && flatpak=$# && break
|
|
||||||
done
|
|
||||||
[ "$flatpak" ] && pkgs="$pkgs $flatpak (flatpak)"
|
|
||||||
|
|
||||||
read -r host < /proc/sys/kernel/hostname
|
read -r host < /proc/sys/kernel/hostname
|
||||||
elif [ -f /var/run/dmesg.boot ]; then
|
elif [ -f /var/run/dmesg.boot ]; then
|
||||||
# Both OpenBSD and FreeBSD use this file, however they're formatted differently
|
# Both OpenBSD and FreeBSD use this file, however they're formatted differently
|
||||||
|
@ -226,11 +208,13 @@ elif v=/System/Library/CoreServices/SystemVersion.plist; [ -f "$v" ]; then
|
||||||
done < "$v"
|
done < "$v"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
eq "$0" '*fetish' && printf 'Step on me daddy\n' && exit
|
||||||
|
|
||||||
# help i dont know if it's a capital consistently
|
# help i dont know if it's a capital consistently
|
||||||
eq "$wm" '*[Gg][Nn][Oo][Mm][Ee]*' && wm='foot DE'
|
eq "$wm" '*[Gg][Nn][Oo][Mm][Ee]*' && wm='foot DE'
|
||||||
|
|
||||||
## GTK
|
## GTK
|
||||||
while read -r line; [ "$mode" != "min" ]; do
|
while read -r line; do
|
||||||
eq "$line" 'gtk-theme*' && gtk=${line##*=} && break
|
eq "$line" 'gtk-theme*' && gtk=${line##*=} && break
|
||||||
done < "${XDG_CONFIG_HOME:=$HOME/.config}/gtk-3.0/settings.ini"
|
done < "${XDG_CONFIG_HOME:=$HOME/.config}/gtk-3.0/settings.ini"
|
||||||
|
|
||||||
|
@ -247,55 +231,36 @@ cpu=${cpu%% with*}
|
||||||
cpu=${cpu% *-Core*}
|
cpu=${cpu% *-Core*}
|
||||||
|
|
||||||
col() {
|
col() {
|
||||||
char="●"
|
printf ' '
|
||||||
printf ' \033[91m%s \033[92m%s \033[93m%s \033[94m%s \033[95m%s \033[96m%s
|
for i in 1 2 3 4 5 6; do
|
||||||
\033[0m' "$char" "$char" "$char" "$char" "$char" "$char"
|
printf '\033[9%sm%s' "$i" "${colourblocks:-▅▅}"
|
||||||
|
done
|
||||||
|
printf '\033[0m\n'
|
||||||
}
|
}
|
||||||
|
|
||||||
full() {
|
print() {
|
||||||
printf '
|
[ "$2" ] && printf '\033[9%sm%6s\033[0m%b%s\n' \
|
||||||
\033[1mDIST\033[0m %s
|
"${accent:-4}" "$1" "${separator:- ~ }" "$2"
|
||||||
\033[1mKERN\033[0m %s
|
|
||||||
\033[1mPKGS\033[0m %s
|
|
||||||
\033[1mTERM\033[0m %s
|
|
||||||
\033[1mSHLL\033[0m %s
|
|
||||||
\033[1mWDMG\033[0m %s
|
|
||||||
\033[1mTHME\033[0m %s
|
|
||||||
\033[1mHOST\033[0m %s
|
|
||||||
\033[1mPCSR\033[0m %s
|
|
||||||
\033[1mMMRY\033[0m %s
|
|
||||||
\033[1mUPTM\033[0m %s
|
|
||||||
' "$ID" \
|
|
||||||
"$kernel" \
|
|
||||||
"$pkgs" \
|
|
||||||
"$term" \
|
|
||||||
"${SHELL##*/}" \
|
|
||||||
"${wm##*/}" \
|
|
||||||
"${gtk# }" \
|
|
||||||
"$model" \
|
|
||||||
"$vendor$cpu" \
|
|
||||||
"$mem" \
|
|
||||||
"$up"
|
|
||||||
col
|
|
||||||
}
|
}
|
||||||
|
|
||||||
min() {
|
# default value
|
||||||
printf '
|
: "${info:=n user os sh wm up gtk cpu mem host kern pkgs term col n}"
|
||||||
\033[1mDIST\033[0m %s
|
|
||||||
\033[1mKERN\033[0m %s
|
|
||||||
\033[1mPKGS\033[0m %s
|
|
||||||
\033[1mTERM\033[0m %s
|
|
||||||
\033[1mSHLL\033[0m %s
|
|
||||||
\033[1mWDMG\033[0m %s
|
|
||||||
\033[1mUPTM\033[0m %s
|
|
||||||
' "$ID" \
|
|
||||||
"$kernel" \
|
|
||||||
"$pkgs" \
|
|
||||||
"$term" \
|
|
||||||
"${SHELL##*/}" \
|
|
||||||
"${wm##*/}" \
|
|
||||||
"$up"
|
|
||||||
col
|
|
||||||
}
|
|
||||||
|
|
||||||
[ "$mode" = "min" ] && min || full
|
for i in $info; do
|
||||||
|
case $i in
|
||||||
|
n) echo;;
|
||||||
|
os) print os "$ID";;
|
||||||
|
sh) print sh "${SHELL##*/}";;
|
||||||
|
wm) print wm "${wm##*/}";;
|
||||||
|
up) print up "$up";;
|
||||||
|
gtk) print gtk "${gtk# }";;
|
||||||
|
cpu) print cpu "$vendor$cpu";;
|
||||||
|
mem) print mem "$mem";;
|
||||||
|
host) print host "$model";;
|
||||||
|
kern) print kern "$kernel";;
|
||||||
|
pkgs) print pkgs "$pkgs";;
|
||||||
|
term) print term "$term";;
|
||||||
|
user) printf '%7s@%s\n' "$USER" "$host";;
|
||||||
|
col) col;;
|
||||||
|
esac
|
||||||
|
done
|
|
@ -3,15 +3,25 @@
|
||||||
|
|
||||||
option=$(printf "Shutdown\nRestart\nLog out" | ~/.config/scripts/menu/menu "Power:")
|
option=$(printf "Shutdown\nRestart\nLog out" | ~/.config/scripts/menu/menu "Power:")
|
||||||
|
|
||||||
slogout() {
|
_logout() {
|
||||||
killall xinit
|
if ps -a | grep -q 'tty1.*xinit' ; then
|
||||||
swaymsg exit
|
pkill xinit
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
_shutdown() {
|
||||||
|
shutdown now
|
||||||
|
}
|
||||||
|
|
||||||
|
_reboot() {
|
||||||
|
shutdown -r 0
|
||||||
}
|
}
|
||||||
|
|
||||||
case "$option" in
|
case "$option" in
|
||||||
"Shutdown") systemctl poweroff ;;
|
"Shutdown") _shutdown ;;
|
||||||
"Restart") systemctl reboot ;;
|
"Restart") _reboot ;;
|
||||||
"Log out") pkill xinit;;
|
"Log out") _logout ;;
|
||||||
*) exit 1 ;;
|
*) exit 1 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue