diff options
author | Tim Keller <tjk@tjkeller.xyz> | 2025-08-26 21:36:16 -0500 |
---|---|---|
committer | Tim Keller <tjk@tjkeller.xyz> | 2025-08-26 21:36:16 -0500 |
commit | c3c3d6f1fd19a5da015c9a9d3ae5c54f2d177be0 (patch) | |
tree | 559a0d9385df907f471b9bdd2bf708ec4650c718 /home-manager/resources/activation-scripts/clone-repos.sh | |
parent | 125313aabedb17516d735a718968bfad1289f12b (diff) | |
download | nixos-master.tar.xz nixos-master.zip |
reogranize files more only working on optiplex for now prepare for home manager refactoringHEADmaster
Diffstat (limited to 'home-manager/resources/activation-scripts/clone-repos.sh')
-rw-r--r-- | home-manager/resources/activation-scripts/clone-repos.sh | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/home-manager/resources/activation-scripts/clone-repos.sh b/home-manager/resources/activation-scripts/clone-repos.sh new file mode 100644 index 0000000..eaee4dc --- /dev/null +++ b/home-manager/resources/activation-scripts/clone-repos.sh @@ -0,0 +1,30 @@ +#!/bin/sh + +server="https://git.tjkeller.xyz/" + +clonemissing() { + # pull and return if already existing + if [ -d "$2"/.git ]; then + run cd $VERBOSE_ARG "$2" + run git pull $VERBOSE_ARG || echo "$2: failed to pull from remote" + return + fi + + # clone to $2 + run mkdir -p $VERBOSE_ARG "$2" + run git clone $VERBOSE_ARG "$server$1" "$2" + + # link to $3 + [ -z "$3" ] && return + run mkdir -p $VERBOSE_ARG "$3" + run ln -sf $VERBOSE_ARG "$2"/* "$3" +} + +# # repo # clone to # link to +clonemissing scripts $HOME/docs/src/scripts $HOME/.local/bin +clonemissing dotconfig $HOME/docs/src/config $HOME/.config +clonemissing userscripts $HOME/docs/src/userscripts '' +clonemissing nixos $HOME/docs/src/nixos '' +clonemissing awesome $HOME/.config/awesome '' +clonemissing nvim $HOME/.config/nvim '' +clonemissing zsh $HOME/.config/zsh '' |