#!/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