From 1e534e234b0a92bf06361fa41b7ac8691fdbc769 Mon Sep 17 00:00:00 2001 From: Benno Fünfstück Date: Sat, 23 Jul 2016 22:31:57 +0200 Subject: fix nixos-version --hash when building from git --- nixos/modules/installer/tools/get-git-revision | 22 ++++++++++++++++++++++ nixos/modules/installer/tools/get-version-suffix | 22 ---------------------- nixos/modules/installer/tools/nixos-rebuild.sh | 7 ++++--- 3 files changed, 26 insertions(+), 25 deletions(-) create mode 100644 nixos/modules/installer/tools/get-git-revision delete mode 100644 nixos/modules/installer/tools/get-version-suffix diff --git a/nixos/modules/installer/tools/get-git-revision b/nixos/modules/installer/tools/get-git-revision new file mode 100644 index 000000000000..b57d9cf9fa08 --- /dev/null +++ b/nixos/modules/installer/tools/get-git-revision @@ -0,0 +1,22 @@ +getVersion() { + local dir="$1" + rev= + if [ -e "$dir/.git" ]; then + if [ -z "$(type -P git)" ]; then + echo "warning: Git not found; cannot figure out revision of $dir" >&2 + return + fi + cd "$dir" + rev=$(git rev-parse --short HEAD) + if git describe --always --dirty | grep -q dirty; then + rev+=M + fi + fi +} + +if nixpkgs=$(nix-instantiate --find-file nixpkgs "$@"); then + getVersion $nixpkgs + if [ -n "$rev" ]; then + echo "$rev" + fi +fi diff --git a/nixos/modules/installer/tools/get-version-suffix b/nixos/modules/installer/tools/get-version-suffix deleted file mode 100644 index b8972cd57d22..000000000000 --- a/nixos/modules/installer/tools/get-version-suffix +++ /dev/null @@ -1,22 +0,0 @@ -getVersion() { - local dir="$1" - rev= - if [ -e "$dir/.git" ]; then - if [ -z "$(type -P git)" ]; then - echo "warning: Git not found; cannot figure out revision of $dir" >&2 - return - fi - cd "$dir" - rev=$(git rev-parse --short HEAD) - if git describe --always --dirty | grep -q dirty; then - rev+=M - fi - fi -} - -if nixpkgs=$(nix-instantiate --find-file nixpkgs "$@"); then - getVersion $nixpkgs - if [ -n "$rev" ]; then - echo ".git.$rev" - fi -fi diff --git a/nixos/modules/installer/tools/nixos-rebuild.sh b/nixos/modules/installer/tools/nixos-rebuild.sh index 5ecdcdb3cdb5..80a4537375c4 100644 --- a/nixos/modules/installer/tools/nixos-rebuild.sh +++ b/nixos/modules/installer/tools/nixos-rebuild.sh @@ -311,9 +311,10 @@ fi # nixos-version shows something useful). if [ -n "$canRun" ]; then if nixpkgs=$(nix-instantiate --find-file nixpkgs "${extraBuildFlags[@]}"); then - suffix=$($SHELL $nixpkgs/nixos/modules/installer/tools/get-version-suffix "${extraBuildFlags[@]}" || true) - if [ -n "$suffix" ]; then - echo -n "$suffix" > "$nixpkgs/.version-suffix" || true + revision=$($SHELL $nixpkgs/nixos/modules/installer/tools/get-git-revision "${extraBuildFlags[@]}" || true) + if [ -n "$revision" ]; then + echo -n ".git.$revision" > "$nixpkgs/.version-suffix" || true + echo -n "$revision" > "$nixpkgs/.git-revision" || true fi fi fi -- cgit 1.4.1