diff --git a/pkgs/by-name/ra/raycast-beta/package.nix b/pkgs/by-name/ra/raycast-beta/package.nix deleted file mode 100644 index 9f624a65edf6..000000000000 --- a/pkgs/by-name/ra/raycast-beta/package.nix +++ /dev/null @@ -1,82 +0,0 @@ -{ - lib, - stdenvNoCC, - fetchurl, - writeShellApplication, - cacert, - curl, - openssl, - undmg, -}: - -stdenvNoCC.mkDerivation (finalAttrs: { - pname = "raycast-beta"; - version = "0.71.5.0"; - - __structuredAttrs = true; - strictDeps = true; - - src = - { - aarch64-darwin = fetchurl { - name = "Raycast_Beta.dmg"; - url = "https://x-r2.raycast-releases.com/Raycast_Beta_0.71.5.0_7520eff523_arm64.dmg"; - hash = "sha256-KveiWuyeNuMGwDAeyPMqUxMzFTei23NnEOBVL5HKXMk="; - }; - } - .${stdenvNoCC.system} or (throw "raycast-beta: ${stdenvNoCC.system} is unsupported."); - - dontPatch = true; - dontConfigure = true; - dontBuild = true; - dontFixup = true; - - nativeBuildInputs = [ undmg ]; - - sourceRoot = "Raycast Beta.app"; - - installPhase = '' - runHook preInstall - - mkdir -p "$out/Applications/Raycast Beta.app" - cp -R . "$out/Applications/Raycast Beta.app" - mkdir -p "$out/bin" - ln -s "$out/Applications/Raycast Beta.app/Contents/MacOS/Raycast Beta" "$out/bin/raycast-beta" - - runHook postInstall - ''; - - passthru.updateScript = lib.getExe (writeShellApplication { - name = "raycast-beta-update-script"; - runtimeInputs = [ - cacert - curl - openssl - ]; - text = '' - url=$(curl --silent "https://www.raycast.com/new" | grep -o 'https://x-r2\.raycast-releases\.com/Raycast_Beta_[^"]*_arm64\.dmg' | head -n1) - version=$(echo "$url" | sed -E 's|.*/Raycast_Beta_([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)_[^/]+_arm64\.dmg|\1|') - hash="sha256-$(curl -sL "$url" | openssl dgst -sha256 -binary | openssl base64)" - - sed -i -E \ - -e 's|(version = )"[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+";|\1"'"$version"'";|' \ - -e 's|url = "https://x-r2\.raycast-releases\.com/Raycast_Beta_[^"]*_arm64\.dmg";|url = "'"$url"'";|' \ - -e 's|(hash = )"sha256-[A-Za-z0-9+/]+=";|\1"'"$hash"'";|' \ - ./pkgs/by-name/ra/raycast-beta/package.nix - ''; - }); - - meta = { - description = "Control your tools with a few keystrokes - beta release"; - homepage = "https://raycast.app/new"; - changelog = "https://www.raycast.com/changelog/macos-beta"; - license = lib.licenses.unfree; - mainProgram = "raycast-beta"; - maintainers = with lib.maintainers; [ - _4evy - Br1ght0ne - ]; - platforms = [ "aarch64-darwin" ]; - sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; - }; -}) diff --git a/pkgs/by-name/ra/raycast/package.nix b/pkgs/by-name/ra/raycast/package.nix index 6113908e4aec..2448f1990245 100644 --- a/pkgs/by-name/ra/raycast/package.nix +++ b/pkgs/by-name/ra/raycast/package.nix @@ -5,19 +5,21 @@ writeShellApplication, cacert, curl, - jq, openssl, undmg, }: -stdenvNoCC.mkDerivation (finalAttrs: { +stdenvNoCC.mkDerivation { pname = "raycast"; - version = "1.104.24"; + version = "2.0.5.0"; + + __structuredAttrs = true; + strictDeps = true; src = fetchurl { name = "Raycast.dmg"; - url = "https://releases.raycast.com/releases/${finalAttrs.version}/download?build=arm"; - hash = "sha256-kn9bZYSeASKj23NYiWX76OIRXCTonAbUCATyYhPdGgo="; + url = "https://x-r2.raycast-releases.com/Raycast_2.0.5.0_7ecbc62a97_arm64.dmg"; + hash = "sha256-8/EJVGTfTVqN+4U9vT84TLpo137RWnD2YtFTtYK7tH0="; }; dontPatch = true; @@ -32,8 +34,10 @@ stdenvNoCC.mkDerivation (finalAttrs: { installPhase = '' runHook preInstall - mkdir -p $out/Applications/Raycast.app - cp -R . $out/Applications/Raycast.app + mkdir -p "$out/Applications/Raycast.app" + cp -R . "$out/Applications/Raycast.app" + mkdir -p "$out/bin" + ln -s "$out/Applications/Raycast.app/Contents/MacOS/Raycast" "$out/bin/raycast" runHook postInstall ''; @@ -43,19 +47,20 @@ stdenvNoCC.mkDerivation (finalAttrs: { runtimeInputs = [ cacert curl - jq openssl ]; text = '' - url=$(curl --silent "https://releases.raycast.com/releases/latest?build=universal") - version=$(echo "$url" | jq -r '.version') - - arm_url="https://releases.raycast.com/releases/$version/download?build=arm" - arm_hash="sha256-$(curl -sL "$arm_url" | openssl dgst -sha256 -binary | openssl base64)" + download_url="https://x.raycast-releases.com/download?platform=macos&architecture=arm64" + url=$(curl --fail --silent --show-error --head --output /dev/null --write-out '%{redirect_url}' "$download_url") + filename="''${url##*/}" + version="''${filename#Raycast_}" + version="''${version%%_*}" + hash="sha256-$(curl --fail --silent --show-error --location "$url" | openssl dgst -sha256 -binary | openssl base64)" sed -i -E \ - -e 's|(version = )"[0-9]+\.[0-9]+\.[0-9]+";|\1"'"$version"'";|' \ - -e '/src = fetchurl/,/};/ s|(hash = )"sha256-[A-Za-z0-9+/]+=";|\1"'"$arm_hash"'";|' \ + -e 's|(version = )"[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+";|\1"'"$version"'";|' \ + -e 's|url = "https://x-r2\.raycast-releases\.com/Raycast_[^"]*_arm64\.dmg";|url = "'"$url"'";|' \ + -e 's|(hash = )"sha256-[A-Za-z0-9+/]+=";|\1"'"$hash"'";|' \ ./pkgs/by-name/ra/raycast/package.nix ''; }); @@ -64,6 +69,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { description = "Control your tools with a few keystrokes"; homepage = "https://raycast.app/"; license = lib.licenses.unfree; + mainProgram = "raycast"; maintainers = with lib.maintainers; [ lovesegfault stepbrobd @@ -75,4 +81,4 @@ stdenvNoCC.mkDerivation (finalAttrs: { ]; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; }; -}) +} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index c39df1db99f7..c727ff8c2d88 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -2143,6 +2143,7 @@ mapAliases { rambox-pro = throw "'rambox-pro' has been renamed to/replaced by 'rambox'"; # Converted to throw 2025-10-27 rapidjson-unstable = throw "'rapidjson-unstable' has been renamed to/replaced by 'rapidjson'"; # Converted to throw 2025-10-27 rar2fs = throw "'rar2fs' has been removed as it is unmaintained, and depends on the unmaintained fuse2 library"; # Added 2026-05-19 + raycast-beta = throw "'raycast-beta' has been removed because Raycast 2.0 is out of beta. Use 'raycast' instead."; # Added 2026-08-24 react-static = throw "'react-static' has been removed due to lack of maintenance upstream"; # Added 2025-11-04 recurseIntoAttrs = warnAlias "'recurseIntoAttrs' has been removed from pkgs, use `lib.recurseIntoAttrs` instead" lib.recurseIntoAttrs; # Added 2025-10-30 redict = throw "'redict' has been removed due to lack of nixpkgs maintenance and a slow upstream development pace. Consider using 'valkey'."; # Added 2025-10-16