config

OpenBSD system configuration
git clone git://jacobedwards.org/config
Log | Files | Refs | README

commit d11629b7bb84abecdb99bc3f3bcf098b795a03f4
parent 1509ce02144b1012af1a86b1b67e219a32692c08
Author: Jacob R. Edwards <jacobouno@protonmail.com>
Date:   Thu, 18 Feb 2021 01:23:28 -0800

Use cast(1) instead of GNU stow(1) to manage modules

I'm using cast by default because it uses hardlinks instead of
symlinks which are confusing and dangerous. You may still use stow
by defining the STOW variable for make(1).

Diffstat:
MMakefile | 9+++++++++
MREADME | 8++++++--
2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/Makefile b/Makefile @@ -1,3 +1,4 @@ +STOW = MODULE_DIR = modules MODULES =\ dalias\ @@ -25,7 +26,15 @@ MODULES =\ all: install install: +.ifdef ${STOW} stow -S -t${HOME} -d${MODULE_DIR} ${MODULES} +.else + (cd ${MODULE_DIR} && cast -p ${MODULES} ${HOME}) +.endif uninstall: +.ifdef ${STOW} stow -D -t${HOME} -d${MODULE_DIR} ${MODULES} +.else + rm -v `cd ${MODULE_DIR} && cast -v ${MODULES} ${HOME}` +.endif diff --git a/README b/README @@ -14,9 +14,13 @@ Also note the xorg module requires many programs which may not be installed, if you want my builds of dwm and slstatus see my repositories of the same name. -There are two make(1) targets, install and uninstall, which use GNU -stow(1) to manage modules which can optionally limited to those +There are two make(1) targets, install and uninstall, which use +cast(1) to manage modules which can optionally limited to those listed in make(1)'s MODULES variable, for example, to install only the vi and ksh modules: $ make MODULES='vi ksh' install + +Note that cast(1) is not likely in your packages, to install it +please see my cast repository wherever you found this one. You may +also use GNU stow(1) by defining STOW, e.g. `make STOW=1'.