about summary refs log tree commit diff
path: root/pkgs/by-name/wa
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/wa')
-rwxr-xr-xpkgs/by-name/wa/warp-terminal/update.sh37
-rw-r--r--pkgs/by-name/wa/warp-terminal/versions.json8
-rw-r--r--pkgs/by-name/wa/waycheck/package.nix8
-rw-r--r--pkgs/by-name/wa/wayland-logout/package.nix1
4 files changed, 35 insertions, 19 deletions
diff --git a/pkgs/by-name/wa/warp-terminal/update.sh b/pkgs/by-name/wa/warp-terminal/update.sh
index d60e0f1f5aa9..2c9c69dc0cec 100755
--- a/pkgs/by-name/wa/warp-terminal/update.sh
+++ b/pkgs/by-name/wa/warp-terminal/update.sh
@@ -1,20 +1,22 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl jq moreutils nix-prefetch
+#!nix-shell -i bash -p cacert curl jq nix moreutils --pure
 #shellcheck shell=bash
 set -eu -o pipefail
 
-dirname="$(dirname "$0")"
+cd "$(dirname "$0")"
+nixpkgs=../../../../.
 
 err() {
     echo "$*" >&2
+    exit 1
 }
 
 json_get() {
-    jq -r "$1" < "$dirname/versions.json"
+    jq -r "$1" < "./versions.json"
 }
 
 json_set() {
-    jq --arg x "$2" "$1 = \$x" < "$dirname/versions.json" | sponge "$dirname/versions.json"
+    jq --arg x "$2" "$1 = \$x" < "./versions.json" | sponge "./versions.json"
 }
 
 resolve_url() {
@@ -31,7 +33,6 @@ resolve_url() {
             ;;
         *)
             err "Unexpected download type: $1"
-            exit 1
             ;;
     esac
     url="https://app.warp.dev/download?package=${pkg}"
@@ -40,7 +41,7 @@ resolve_url() {
         url=$(curl -s -o /dev/null -w '%{redirect_url}' "${url}")
         [[ ${url} != *.${sfx} ]] || break
     done
-    ((i < max_redirects)) || { err "too many redirects"; exit 1; }
+    ((i < max_redirects)) || { err "too many redirects"; }
     echo "${url}"
 }
 
@@ -48,13 +49,27 @@ get_version() {
     echo "$1" | grep -oP -m 1 '(?<=/v)[\d.\w]+(?=/)'
 }
 
+# nix-prefect-url seems to be uncompressing the archive then taking the hash
+# so just get the hash from fetchurl
+sri_get() {
+    local ouput sri
+    output=$(nix-build  --expr \
+        "with import $nixpkgs {};
+         fetchurl {
+           url = \"$1\";
+         }" 2>&1 || true)
+    sri=$(echo "$output" | awk '/^\s+got:\s+/{ print $2 }')
+    [[ -z "$sri" ]] && err "$output"
+    echo "$sri"
+}
+
+
 for sys in darwin linux; do
     url=$(resolve_url ${sys})
     version=$(get_version "${url}")
-    if [[ ${version} != "$(json_get ".${sys}.version")" ]];
-        then
-            sri=$(nix hash to-sri --type sha256 "$(nix-prefetch-url --type sha256 "${url}")")
-            json_set ".${sys}.version" "${version}"
-            json_set ".${sys}.hash" "${sri}"
+    if [[ ${version} != "$(json_get ".${sys}.version")" ]]; then
+        sri=$(sri_get "${url}")
+        json_set ".${sys}.version" "${version}"
+        json_set ".${sys}.hash" "${sri}"
     fi
 done
diff --git a/pkgs/by-name/wa/warp-terminal/versions.json b/pkgs/by-name/wa/warp-terminal/versions.json
index 8b58fef47f57..154c7ffdeccc 100644
--- a/pkgs/by-name/wa/warp-terminal/versions.json
+++ b/pkgs/by-name/wa/warp-terminal/versions.json
@@ -1,10 +1,10 @@
 {
   "darwin": {
-    "hash": "sha256-VHyEE0SziwDAzlv8VLt08tMXb20sqxTSj64hC+FyjUw=",
-    "version": "0.2024.03.05.08.02.stable_01"
+    "hash": "sha256-aOw/c6Y+4x6kwxcwnajHh92ZZDeaM/Y1df76HgUjVn8=",
+    "version": "0.2024.03.19.08.01.stable_01"
   },
   "linux": {
-    "hash": "sha256-CI1bzdFles9XNvqmkyNq9zJBf4P6HF8QIo1FsSDydjQ=",
-    "version": "0.2024.03.05.08.02.stable_01"
+    "hash": "sha256-efnYh48xcLneeotH9iSY0xQRgMXI/erM6F2fIH38yjY=",
+    "version": "0.2024.03.19.08.01.stable_01"
   }
 }
diff --git a/pkgs/by-name/wa/waycheck/package.nix b/pkgs/by-name/wa/waycheck/package.nix
index cb78db2d6e38..ddbd67e88220 100644
--- a/pkgs/by-name/wa/waycheck/package.nix
+++ b/pkgs/by-name/wa/waycheck/package.nix
@@ -47,12 +47,12 @@ stdenv.mkDerivation (finalAttrs: {
       --replace "update-desktop-database -q" "update-desktop-database $out/share/applications"
   '';
 
-  meta = with lib; {
+  meta = {
     description = "Simple GUI that displays the protocols implemented by a Wayland compositor";
     homepage = "https://gitlab.freedesktop.org/serebit/waycheck";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ julienmalka federicoschonborn ];
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ julienmalka federicoschonborn ];
     mainProgram = "waycheck";
-    platforms = platforms.linux;
+    platforms = lib.platforms.linux;
   };
 })
diff --git a/pkgs/by-name/wa/wayland-logout/package.nix b/pkgs/by-name/wa/wayland-logout/package.nix
index 22e197a4987a..272b3dfbe06f 100644
--- a/pkgs/by-name/wa/wayland-logout/package.nix
+++ b/pkgs/by-name/wa/wayland-logout/package.nix
@@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
     description = ''
       A utility designed to kill a single instance of a wayland compositor
     '';
+    mainProgram = "wayland-logout";
     homepage = "https://github.com/soreau/wayland-logout";
     maintainers = with maintainers; [quantenzitrone];
     license = with licenses; [mit];