wip4
This commit is contained in:
69
install/keyd
Executable file
69
install/keyd
Executable file
@@ -0,0 +1,69 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install keyd
|
||||
|
||||
# https://github.com/rvaiya/keyd
|
||||
|
||||
set -eo pipefail
|
||||
|
||||
mkdir -p "$HOME/install"
|
||||
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing keyd (latest)"
|
||||
echo "==============================================="
|
||||
echo
|
||||
hash git || { echo "ERROR: git not installed" ; exit 1; }
|
||||
cd "$HOME/install"
|
||||
git clone --depth=1 --single-branch https://github.com/rvaiya/keyd.git "$HOME/install/keyd"
|
||||
cd "$HOME/install/keyd"
|
||||
make && sudo make install
|
||||
sudo systemctl enable --now keyd
|
||||
echo
|
||||
echo "Finish!"
|
||||
}
|
||||
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading keyd"
|
||||
echo "==============================================="
|
||||
echo
|
||||
hash git || { echo "ERROR: git not installed" ; exit 1; }
|
||||
[ -d "$HOME/install/keyd" ] || { echo "ERROR: repo not found: $HOME/install/keyd" ; exit 1; }
|
||||
cd "$HOME/install/keyd"
|
||||
make && sudo make install
|
||||
sudo systemctl enable --now keyd
|
||||
sudo usermod -aG keyd "$(whoami)"
|
||||
echo
|
||||
echo "Finish!"
|
||||
}
|
||||
|
||||
restart() {
|
||||
sudo systemctl restart keyd
|
||||
}
|
||||
|
||||
reload() {
|
||||
sudo systemctl reload keyd
|
||||
}
|
||||
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing keyd"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo dpkg -r keyd
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
restart) restart ;;
|
||||
reload) reload ;;
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user