Evie Litherland-Smith
763a1d2a05
Place home-manager config under home directory, move system config under system directory. Add hostname-specific entries under home directory to be consistent with how system is configured, update flake accordingly
34 lines
1.5 KiB
Bash
Executable file
34 lines
1.5 KiB
Bash
Executable file
HOSTS=("$@")
|
|
# Config files
|
|
for TARGET in bat bottom git starship.toml; do
|
|
SOURCE="$HOME/.config/$TARGET"
|
|
echo "--- $SOURCE ---"
|
|
TMP_TARGET=/tmp/rsync-local-config
|
|
TMP_SOURCE=$TMP_TARGET
|
|
NIX_SED="sed -i 's|/nix/.*/bin/||g'"
|
|
NIX_REPLACE="$NIX_SED $TMP_TARGET"
|
|
if [[ -e $SOURCE ]]; then
|
|
if [[ -d $SOURCE ]]; then
|
|
SOURCE=$SOURCE/
|
|
TMP_SOURCE=$TMP_SOURCE/
|
|
NIX_REPLACE="fd -g '**' $TMP_TARGET -tfile -x $NIX_SED {};"
|
|
fi
|
|
rsync -avzL --exclude=".git*" --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r "$SOURCE" $TMP_TARGET
|
|
sh -c "$NIX_REPLACE"
|
|
for HOST in "${HOSTS[@]}"; do
|
|
rsync -avzL --delete --exclude=".git*" $TMP_SOURCE "$HOST:.config/$TARGET"
|
|
done
|
|
rm -rf $TMP_SOURCE
|
|
fi
|
|
done
|
|
|
|
# Fonts
|
|
IOSEVKA_FLAKE_URL="git+https://git.xenia.me.uk/pixelifytica/iosevka.git?ref=main"
|
|
IOSEVKA_CUSTOM_NERDFONT="$IOSEVKA_FLAKE_URL#packages.x86_64-linux.iosevka-custom-nerdfont"
|
|
IOSEVKA_CUSTOM_AILE="$IOSEVKA_FLAKE_URL#packages.x86_64-linux.iosevka-custom-aile"
|
|
echo "--- Fonts ---"
|
|
for HOST in "${HOSTS[@]}"; do
|
|
rsync -avzL --delete --exclude=".git*" --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r "$(nix path-info "$IOSEVKA_CUSTOM_NERDFONT")/share/fonts/truetype/" "$HOST:.fonts/IosevkaCustomNerdFont"
|
|
rsync -avzL --delete --exclude=".git*" --chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r "$(nix path-info "$IOSEVKA_CUSTOM_AILE")/share/fonts/truetype/" "$HOST:.fonts/IosevkaCustomAile"
|
|
done
|