32 lines
584 B
Bash
Executable File
32 lines
584 B
Bash
Executable File
#!/bin/sh
|
|
set -ex
|
|
|
|
usage() {
|
|
set +x
|
|
printf "\
|
|
Usage:
|
|
%s start [window manager]\n" "$argv0" >>/dev/stderr
|
|
exit 1
|
|
}
|
|
|
|
[ -n "$1" ] || usage
|
|
|
|
# assumption: $HOME contains the path to the user's home directory
|
|
|
|
DISPLAYM_CONFIG="$HOME/.config/displaym"; export DISPLAYM_CONFIG
|
|
[ -d "$DISPLAYM_CONFIG" ] || mkdir -p "$DISPLAYM_CONFIG"
|
|
|
|
case "$1" in
|
|
(start)
|
|
WM="$2"; export WM
|
|
cat "$DISPLAYM_CONFIG/.xinitrc" "$DISPLAYM_CONFIG/$WM/.xinitrc" >"$HOME/.xinitrc"
|
|
sh "$DISPLAYM_CONFIG/$WM/start.sh"
|
|
;;
|
|
(stop)
|
|
sh "$DISPLAYM_CONFIG/$WM/stop.sh"
|
|
pkill "$WM"
|
|
;;
|
|
(*) usage ;;
|
|
esac
|
|
|