33 lines
503 B
Plaintext
33 lines
503 B
Plaintext
|
#! /bin/sh
|
||
|
#
|
||
|
# nixos-fetch-git : nixos-config -> ...
|
||
|
#
|
||
|
set -euf
|
||
|
|
||
|
host=$1
|
||
|
|
||
|
target=root@$host
|
||
|
|
||
|
git_rev=$(nixos-query "$host" nixpkgs.rev)
|
||
|
git_url=$(nixos-query "$host" nixpkgs.url)
|
||
|
|
||
|
worktree=$nixpkgs_root/$host
|
||
|
|
||
|
if [ ! -d "$worktree" ]; then
|
||
|
mkdir -p "$worktree"
|
||
|
fi
|
||
|
|
||
|
cd "$worktree"
|
||
|
|
||
|
git init -q
|
||
|
|
||
|
if ! current_url=$(git config remote.src.url); then
|
||
|
git remote add src "$git_url"
|
||
|
elif [ "$current_url" != "$git_url" ]; then
|
||
|
git remote set-url src "$git_url"
|
||
|
fi
|
||
|
|
||
|
git fetch src
|
||
|
|
||
|
git checkout "$git_rev"
|