configuration/tasks/update

26 lines
831 B
Text
Raw Normal View History

2023-02-07 02:41:49 +00:00
#!/usr/bin/env bash
# See https://discourse.nixos.org/t/25274
set -Eeu
2023-02-07 02:41:49 +00:00
root="$(readlink --canonicalize -- "$(dirname -- "$0")/..")"
2023-02-07 02:41:49 +00:00
# Mock nixpkgs
trap 'rm -f "$root/default.nix"' EXIT; cat > "$root/default.nix" << NIX
{}: import <nixpkgs> { overlays = [ (import ./common/packages.nix) ]; }
NIX
# Run update scripts
nixpkgs="$(nix-instantiate --eval --expr '<nixpkgs>')"
nix-shell "$nixpkgs/maintainers/scripts/update.nix" \
--arg include-overlays "(import $root { }).overlays" \
--arg keep-going 'true' \
2023-02-07 02:41:49 +00:00
--arg predicate "(
let prefix = \"$root/packages/\"; prefixLen = builtins.stringLength prefix;
2023-02-07 02:41:49 +00:00
in (_: p: (builtins.substring 0 prefixLen p.meta.position) == prefix)
)"
# Clean up
if [[ -f "$root/update-git-commits.txt" ]]; then
cat "$root/update-git-commits.txt" && rm "$root/update-git-commits.txt"
fi