diff options
-rw-r--r-- | Makefile | 6 | ||||
-rwxr-xr-x | dep.sh | 58 |
2 files changed, 63 insertions, 1 deletions
@@ -86,7 +86,11 @@ directory: $(BOOKDIR) \ $(TESTPROJDIR) \ $(BINDIR) + +depcheck: + @./dep.sh + clean: rm -rf dwm st dmenu dwm.tar.gz st.tar.gz dmenu.tar.gz slstatus slstatus.tar.gz -.PHONY: all config scripts server desktop arch-linux directory dwm st dmenu slstatus clean full +.PHONY: all config scripts server desktop arch-linux directory dwm st dmenu slstatus clean full depcheck @@ -0,0 +1,58 @@ +#!/bin/sh + +check() +{ + for program in "${@}"; do + if ! command -v "${program}" > /dev/null 2>&1; then + echo "'${program}' is missing." >&2 + retval=1; + fi + done; +} +check_double() +{ + if ! command -v "${1}" > /dev/null 2>&1 && ! command -v "${2}" > /dev/null 2>&1; then + echo "'${1}' is missing." >&2 + fi +} +check_with_msg() +{ + if ! command -v "${1}" > /dev/null 2>&1; then + echo "${2}" >&2 + retval=1; + fi +} + + +retval=0 + +# Configurated programs +check \ + git \ + lf \ + mpv \ + picom \ + qutebrowser \ + zathura + +check_double vim nvim # If at least one exists don't print error +check_double sxiv nsxiv +check_double zsh bash + +# Programs required by the scripts +check \ + dunst \ + scrot \ + brightnessctl + +check_with_msg pactl "pulseaudio is missing." + +# X11 dependencies +check \ + xinput \ + xset \ + xgamma + +check_with_msg startx "xorg-xinit is missing." + +return "${retval}" |