Marty Oehme
496522605f
Added lockscreen trapping and media pausing for lockscreen. When it is invoked `lockscreen`, all media will be attempted to be pause and the system will be muted. Then the lockscreen is engaged. This should happen automatically when the screen shuts off or the system suspends or hibernates and can be invoked manually, as before, with super+x shortcut.
77 lines
2.7 KiB
Bash
77 lines
2.7 KiB
Bash
#!/bin/sh
|
|
|
|
userresources=$XDG_CONFIG_HOME/xresources/Xresources
|
|
usermodmap=$XDG_CONFIG_HOME/xresources/Xmodmap
|
|
sysresources=/etc/X11/xinit/.Xresources
|
|
sysmodmap=/etc/X11/xinit/.Xmodmap
|
|
|
|
# merge in defaults and keymaps
|
|
|
|
if [ -f $sysresources ]; then
|
|
xrdb -merge $sysresources
|
|
fi
|
|
|
|
if [ -f $sysmodmap ]; then
|
|
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
|
|
# shellcheck disable=1090
|
|
[ -x "$f" ] && . "$f"
|
|
done
|
|
unset f
|
|
fi
|
|
|
|
# unclutter is a program to hide your mouse cursor when it is not moved
|
|
type unclutter >/dev/null 2>&1 && unclutter &
|
|
# picom is the maintained version of desktop compositor compton
|
|
type picom >/dev/null 2>&1 && picom &
|
|
|
|
# if sxhkd - the key-binding daemon is installed, start it up
|
|
# set it to start up a custom fifo-creating version
|
|
# and set the chain-mode exiting key to a non existing one (default would be escape)
|
|
type sxhkd >/dev/null 2>&1 && sxhkd-piped -a "copyright" &
|
|
|
|
# if nextcloud-client exists, start it up
|
|
type nextcloud >/dev/null 2>&1 && nextcloud --background &
|
|
|
|
# load nm-applet, to allow easy vpn setting/switching from x interface
|
|
# TODO this should over time be replaced with a custom polybar interface
|
|
type nm-applet >/dev/null 2>&1 && nm-applet &
|
|
|
|
# additional config options for Touchpad devices ONLY
|
|
if [ "$(journalctl --dmesg -o short-monotonic --no-hostname --no-pager | grep -c "Touchpad")" -gt 0 ]; then
|
|
# enable touch tapping for XPS13 touchpad - for different devices get the touchpad name with xinput list-prop <TAB>
|
|
xinput set-prop "DLL075B:01 06CB:76AF Touchpad" "libinput Tapping Enabled" 1
|
|
|
|
# sets default to EURkey layout, with possibility to switch to german
|
|
# sets german layout to be default for the only pc I have with a german keyboard
|
|
# allows switching layouts with alt+space
|
|
setxkbmap -layout eu,de
|
|
else
|
|
setxkbmap -layout de,eu
|
|
fi
|
|
# Remaps Capslock key to control.
|
|
# (only works for x environment - I haven't needed it for non-x yet)
|
|
setxkbmap -option ctrl:nocaps
|
|
setxkbmap -option grp:alt_shift_toggle
|
|
|
|
# Makes Capslock behave as escape - when ONLY capslock is pressed and released
|
|
# this only works when we already substitute a ctrl for caps with the lines above,
|
|
# otherwise control itself will act as escape.
|
|
# Needs xcape package installed. https://github.com/alols/xcape
|
|
# set a timeout of 500ms, if pressed longer it will ignore esc
|
|
type xcape >/dev/null 2>&1 && xcape -e 'Control_L=Escape' -t 500
|
|
|
|
type feh >/dev/null 2>&1 && exec feh --bg-scale ~/media/pictures/wall.jpg &
|
|
type xss-lock >/dev/null 2>&1 && exec xss-lock &
|
|
type i3 >/dev/null 2>&1 && exec i3
|