about summary refs log tree commit diff
diff options
context:
space:
mode:
authorMartin Weinelt <hexa@darmstadt.ccc.de>2022-06-28 11:53:18 +0200
committerMartin Weinelt <hexa@darmstadt.ccc.de>2022-06-28 11:53:18 +0200
commit76ff0191534b2123b6c56e09e674b4e86362165e (patch)
tree2bdbfd79d97cb5ad47d1659f3eeef19c38aca749
parent0c4852c7bc40747e734a84a0d234105a4d5c146f (diff)
firefox: Extend upgrade script with version prefix
Prevents upgrades of versioned ESR packages between major versions.
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix2
-rw-r--r--pkgs/applications/networking/browsers/firefox/update.nix3
2 files changed, 4 insertions, 1 deletions
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index fbf7ee1e1116e..4daf18d3c2084 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -48,6 +48,7 @@ rec {
     tests = [ nixosTests.firefox-esr-102 ];
     updateScript = callPackage ./update.nix {
       attrPath = "firefox-esr-102-unwrapped";
+      versionPrefix = "102";
       versionSuffix = "esr";
     };
   };
@@ -74,6 +75,7 @@ rec {
     tests = [ nixosTests.firefox-esr-91 ];
     updateScript = callPackage ./update.nix {
       attrPath = "firefox-esr-91-unwrapped";
+      versionPrefix = "91";
       versionSuffix = "esr";
     };
   };
diff --git a/pkgs/applications/networking/browsers/firefox/update.nix b/pkgs/applications/networking/browsers/firefox/update.nix
index bbfd17d1fea8c..4a24fe85b2eef 100644
--- a/pkgs/applications/networking/browsers/firefox/update.nix
+++ b/pkgs/applications/networking/browsers/firefox/update.nix
@@ -10,6 +10,7 @@
 , attrPath
 , runtimeShell
 , baseUrl ? "http://archive.mozilla.org/pub/firefox/releases/"
+, versionPrefix ? ""
 , versionSuffix ? ""
 , versionKey ? "version"
 }:
@@ -32,7 +33,7 @@ writeScript "update-${attrPath}" ''
   #  - sorts everything with semver in mind
   #  - picks up latest release
   version=`xidel -s $url --extract "//a" | \
-           grep "^[0-9.]*${versionSuffix}/$" | \
+           grep "^${versionPrefix}[0-9.]*${versionSuffix}/$" | \
            sed s/[/]$// | \
            sort --version-sort | \
            tail -n 1`