#!/bin/zsh cd "${0:a:h}" FORCE_ROOT=false CI=false OVERWRITE_EXISTING=false COMPILE_DMENU=true MIN=false while [[ "${#}" -gt 0 ]] do case "${1}" in ( --force-root ) FORCE_ROOT=true ;; ( --ci ) export CI=true ;; ( --overwrite ) OVERWRITE_EXISTING=true ;; ( --no-compile-dmenu ) COMPILE_DMENU=false ;; ( --min ) MIN=true COMPILE_DMENU=false ;; esac shift 1 done source ./requirements.zsh || exit 1 ################################################################################ logfile="${HOME}/dotwryn-install.txt" echo.status "installation start : $(date)" 2>> "${logfile}" { setup.os || utils.fail 1 'failed to set up os-dependencies (see above)' setup.git || utils.fail 2 'failed to set up git (see above)' setup.config || utils.fail 3 'failed to set up program configuration (see above)' } 2>&1 | tee -a "${logfile}" echo.status "installation complete: $(date)" 2>> "${logfile}" ################################################################################ [[ "${ERRORS}" -eq 0 ]] || { utils.yN 'keep logfile?' \ || { rm "${logfile}" || echo.error "unable to remove '${logfile}'" } } echo.success "\n.wryn setup complete; have a nice day :)\n "