From ed923dc0774e7a4bffeb3d63146d604dd147730e Mon Sep 17 00:00:00 2001 From: Adam Stephens Date: Thu, 14 Dec 2023 20:53:55 -0500 Subject: [PATCH 1/3] openvswitch: add updateScript --- .../os-specific/linux/openvswitch/generic.nix | 6 ++++++ pkgs/os-specific/linux/openvswitch/lts.nix | 1 + pkgs/os-specific/linux/openvswitch/update.nu | 19 +++++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100755 pkgs/os-specific/linux/openvswitch/update.nu diff --git a/pkgs/os-specific/linux/openvswitch/generic.nix b/pkgs/os-specific/linux/openvswitch/generic.nix index be4bc90fe428..83749782d274 100644 --- a/pkgs/os-specific/linux/openvswitch/generic.nix +++ b/pkgs/os-specific/linux/openvswitch/generic.nix @@ -1,5 +1,6 @@ { version , hash +, updateScriptArgs ? "" }: { lib @@ -20,6 +21,7 @@ , sphinxHook , util-linux , which +, writeScript }: let @@ -105,6 +107,10 @@ in stdenv.mkDerivation rec { pytest ]); + passthru.updateScript = writeScript "ovs-update.nu" '' + ${./update.nu} ${updateScriptArgs} + ''; + meta = with lib; { changelog = "https://www.openvswitch.org/releases/NEWS-${version}.txt"; description = "A multilayer virtual switch"; diff --git a/pkgs/os-specific/linux/openvswitch/lts.nix b/pkgs/os-specific/linux/openvswitch/lts.nix index 9fb9977c2017..20ea3d86090d 100644 --- a/pkgs/os-specific/linux/openvswitch/lts.nix +++ b/pkgs/os-specific/linux/openvswitch/lts.nix @@ -1,4 +1,5 @@ import ./generic.nix { version = "2.17.6"; hash = "sha256-dNqvK+c0iuXdQBe6RbjaxlNB8Vn0+0paecVC/tQQENk="; + updateScriptArgs = "--lts=true --regex '2\.17.*'"; } diff --git a/pkgs/os-specific/linux/openvswitch/update.nu b/pkgs/os-specific/linux/openvswitch/update.nu new file mode 100755 index 000000000000..5d457dda5f3e --- /dev/null +++ b/pkgs/os-specific/linux/openvswitch/update.nu @@ -0,0 +1,19 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i nu -p nushell common-updater-scripts + +def main [--lts: bool = false, --regex: string] { + let tags = list-git-tags --url=https://github.com/openvswitch/ovs | lines | sort --natural | str replace v '' + + let latest_tag = if $regex == null { $tags } else { $tags | find --regex $regex } | last + let current_version = nix eval --raw -f default.nix $"openvswitch(if $lts {"-lts"}).version" | str trim + + if $latest_tag != $current_version { + if $lts { + update-source-version openvswitch-lts $latest_tag $"--file=(pwd)/pkgs/os-specific/linux/openvswitch/lts.nix" + } else { + update-source-version openvswitch $latest_tag $"--file=(pwd)/pkgs/os-specific/linux/openvswitch/default.nix" + } + } + + {"lts?": $lts, before: $current_version, after: $latest_tag} +} From e317292b6808a50af81f881c1a59e820be27e7b0 Mon Sep 17 00:00:00 2001 From: Adam Stephens Date: Thu, 14 Dec 2023 20:55:41 -0500 Subject: [PATCH 2/3] openvswitch-lts: 2.17.6 -> 2.17.8 --- pkgs/os-specific/linux/openvswitch/lts.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/openvswitch/lts.nix b/pkgs/os-specific/linux/openvswitch/lts.nix index 20ea3d86090d..d52aae987085 100644 --- a/pkgs/os-specific/linux/openvswitch/lts.nix +++ b/pkgs/os-specific/linux/openvswitch/lts.nix @@ -1,5 +1,5 @@ import ./generic.nix { - version = "2.17.6"; - hash = "sha256-dNqvK+c0iuXdQBe6RbjaxlNB8Vn0+0paecVC/tQQENk="; + version = "2.17.8"; + hash = "sha256-DWAwepAxl90ay7MXPCz++BicaeSHYuZ06O8VeFZac+U="; updateScriptArgs = "--lts=true --regex '2\.17.*'"; } From 30f8135bb6c8e9f1a0a8cc1289acc5e32f67aaec Mon Sep 17 00:00:00 2001 From: Adam Stephens Date: Thu, 14 Dec 2023 20:56:19 -0500 Subject: [PATCH 3/3] openvswitch: 3.1.1 -> 3.2.1 --- pkgs/os-specific/linux/openvswitch/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/openvswitch/default.nix b/pkgs/os-specific/linux/openvswitch/default.nix index 664adfdc164c..b1944778237d 100644 --- a/pkgs/os-specific/linux/openvswitch/default.nix +++ b/pkgs/os-specific/linux/openvswitch/default.nix @@ -1,4 +1,4 @@ import ./generic.nix { - version = "3.1.1"; - hash = "sha256-YEiRg6RNO5WlUiQHIhfF9tN6oRvhKnV2JRDO25Ok4gQ="; + version = "3.2.1"; + hash = "sha256-nXdyDJIU60Lx9cvpLuUp3E7MUnaZvvGDm+UKbXJRH0o="; }