From b53c53b1b4dd30d4c28ed86ec4f6c49079de4f66 Mon Sep 17 00:00:00 2001 From: Tuomas Tynkkynen Date: Sat, 31 Dec 2016 14:31:56 +0200 Subject: maintainers: Add script to patch version/sha256 in .nix files Adds a script to help automatically upgrading packages: this one can patch name/version attributes like: version = "50.1.0"; name = "bc-1.06"; ... to the given version, and updates the sha256 hash to match. Usage is: update-source-version [] where: - attr is the attribute path of the package - new-version is the version string to be patched in - new-source-hash is the optional sha256/etc. hash of the source. If not given, the script will automatically calculate it. This is added to a subdirectory where other useful scripts can be added in the future, like figuring out the newest version from a git repo or GitHub releases etc. --- pkgs/common-updater/scripts.nix | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 pkgs/common-updater/scripts.nix (limited to 'pkgs/common-updater/scripts.nix') diff --git a/pkgs/common-updater/scripts.nix b/pkgs/common-updater/scripts.nix new file mode 100644 index 0000000000000..cb7f23f7480ac --- /dev/null +++ b/pkgs/common-updater/scripts.nix @@ -0,0 +1,18 @@ +{ stdenv, makeWrapper, coreutils, gawk, gnused, nix }: + +stdenv.mkDerivation { + name = "common-updater-scripts"; + + buildInputs = [ makeWrapper ]; + + unpackPhase = "true"; + + installPhase = '' + mkdir -p $out/bin + cp ${./scripts}/* $out/bin + + for f in $out/bin/*; do + wrapProgram $f --prefix PATH : ${stdenv.lib.makeBinPath [ coreutils gawk gnused nix ]} + done + ''; +} -- cgit 1.4.1