diff --git a/doc/release-notes/rl-2611.section.md b/doc/release-notes/rl-2611.section.md index 0b02ac2f8337..3df6dcba2037 100644 --- a/doc/release-notes/rl-2611.section.md +++ b/doc/release-notes/rl-2611.section.md @@ -108,6 +108,7 @@ - Starting with v14, `flameshot` will primarily utilise xdg-desktop-portal calls for screenshotting. This will directly affect users on X11 window managers due to the lack of a compatible portal with Screenshot feature. See [upstream changelog](https://github.com/flameshot-org/flameshot/releases/tag/v14.0.0) or [NixOS Flameshot](https://wiki.nixos.org/wiki/Flameshot) wiki page for workarounds. - `nim1` and respective aliases have been removed due to entering EOL; please migrate to `nim` or `nim-unwrapped` (nim 2). - `nim-2_0` & `nim-2_2` and respective aliases have been removed; please migrate to `nim` or `nim-unwrapped` (nim 2.2.10). +- `domoticz` has been updated from `2024.7` to `2026.x`, breaking third party applications and scripts using the old RType calls. Review the [release notes](https://github.com/domoticz/domoticz/blob/2026.2/History.txt#L398) for more information. - `vimacs` has been removed, as it has not been maintained in 10 years and was built for an old version of vim (6.0). diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 286091ba75fc..7667360d7624 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8853,6 +8853,13 @@ githubId = 345808; name = "Jakub OkoĊ„ski"; }; + FatBoyXPC = { + name = "FatBoyXPC"; + email = "fatboyxpc@gmail.com"; + github = "FatBoyXPC"; + githubId = 744962; + keys = [ { fingerprint = "0E08 1B81 CBCA 1CF7 9568 A13F C4ED 3CA2 3211 8969"; } ]; + }; faukah = { github = "faukah"; name = "faukah"; diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.json b/pkgs/applications/networking/cluster/terraform-providers/providers.json index 2f748aa730a1..c48d47e8b89c 100644 --- a/pkgs/applications/networking/cluster/terraform-providers/providers.json +++ b/pkgs/applications/networking/cluster/terraform-providers/providers.json @@ -1319,11 +1319,11 @@ "vendorHash": "sha256-7ZoJg1HEVj5Nygr46lmBZeJDfZuU4F90yntrgkBVgGg=" }, "tencentcloudstack_tencentcloud": { - "hash": "sha256-tADmls3GAmR3S5wdasoHrBYOtZTVXDS2alZD6Mzfo4M=", + "hash": "sha256-1UBML3E5ZnOcsdGZlZ5qkaqQsE1+Q9Uw9R8FeWJXFSw=", "homepage": "https://registry.terraform.io/providers/tencentcloudstack/tencentcloud", "owner": "tencentcloudstack", "repo": "terraform-provider-tencentcloud", - "rev": "v1.83.7", + "rev": "v1.83.10", "spdx": "MPL-2.0", "vendorHash": null }, diff --git a/pkgs/by-name/co/cockpit-zfs/package.nix b/pkgs/by-name/co/cockpit-zfs/package.nix index 99de320d99f9..5ead4c6b4786 100644 --- a/pkgs/by-name/co/cockpit-zfs/package.nix +++ b/pkgs/by-name/co/cockpit-zfs/package.nix @@ -46,28 +46,22 @@ in stdenv.mkDerivation (finalAttrs: { pname = "cockpit-zfs"; - version = "1.2.27-3"; + version = "1.2.30"; src = fetchFromGitHub { owner = "45Drives"; repo = "cockpit-zfs"; tag = "v${finalAttrs.version}"; fetchSubmodules = true; - hash = "sha256-7hx9FJxFN7xsozMvAb0fdRTX2hAcxtJc5wdgrs2PGJc="; + hash = "sha256-G24xNoKoBnlXxxyo9IJIoQW3PrktQxsx37/cX6QYfyE="; }; - patches = [ - # Remove after upstream updates to Yarn 4.14 - # https://github.com/45Drives/cockpit-zfs/blob/main/package.json#L13 - ./yarn-4.14-support.patch - ]; - missingHashes = ./missing-hashes.json; # Use buildPackages for cross-compilation support offlineCache = yarnBerryForBuild.fetchYarnBerryDeps { - inherit (finalAttrs) src missingHashes patches; - hash = "sha256-Tdxe5bXN9psSrnUXL1f+1nh4WPzuvOI7j0I+VPU2/1s="; + inherit (finalAttrs) src missingHashes; + hash = "sha256-nm3iHf9Rm5JFKzH0HAvglkQPFIV6Fl1e9WvNdqevTug="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/co/cockpit-zfs/yarn-4.14-support.patch b/pkgs/by-name/co/cockpit-zfs/yarn-4.14-support.patch deleted file mode 100644 index 2d23ed3e118c..000000000000 --- a/pkgs/by-name/co/cockpit-zfs/yarn-4.14-support.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff --git a/yarn.lock b/yarn.lock ---- a/yarn.lock -+++ b/yarn.lock -@@ -2,6 +2,6 @@ - # Manual changes might be lost - proceed with caution! - - __metadata: -- version: 8 -+ version: 9 - cacheKey: 10c0 - diff --git a/pkgs/by-name/do/domoticz/package.nix b/pkgs/by-name/do/domoticz/package.nix index beeeafccb3a0..5bbdf8dc17cd 100644 --- a/pkgs/by-name/do/domoticz/package.nix +++ b/pkgs/by-name/do/domoticz/package.nix @@ -2,7 +2,6 @@ lib, stdenv, fetchFromGitHub, - fetchpatch, makeWrapper, cmake, python3, @@ -24,23 +23,16 @@ stdenv.mkDerivation (finalAttrs: { pname = "domoticz"; - version = "2024.7"; + version = "2026.2-unstable-2026-07-09"; src = fetchFromGitHub { owner = "domoticz"; repo = "domoticz"; - tag = finalAttrs.version; - hash = "sha256-D8U1kK3m1zT83YvZ42hGSU9PzBfS1VGr2mxUYbM2vNQ="; + rev = "7e12d1e5d7bf3f7d083ef31d5dd611d678f89d48"; # pinned due to removed dependency (see nixpkgs pr #539060) + hash = "sha256-+6EIEsgGTaLEPzBa/R5EYAxnYB3+cj54LGDJwutTQGA="; + fetchSubmodules = true; }; - patches = [ - # Boost 1.87 compatibility, remove once upgraded to 2025.1 - (fetchpatch { - url = "https://github.com/domoticz/domoticz/commit/5d0db89bbd120ed5dc05b4ff8c136f14a42f0cd3.patch"; - hash = "sha256-FPe83yJKJEgnY3kABy9CTRe1CBh42dPG1ZWCUE5PO8E="; - }) - ]; - buildInputs = [ openssl python3 @@ -87,7 +79,7 @@ stdenv.mkDerivation (finalAttrs: { ''; nativeInstallCheckInputs = [ - versionCheckHook + # versionCheckHook # readd once we can move to a tagged release again ]; doInstallCheck = true; @@ -98,15 +90,15 @@ stdenv.mkDerivation (finalAttrs: { various devices like: lights, switches, various sensors/meters like temperature, rain, wind, UV, electra, gas, water and much more ''; - maintainers = with lib.maintainers; [ edcragg ]; + maintainers = with lib.maintainers; [ + edcragg + lenny + ]; homepage = "https://www.domoticz.com/"; changelog = "https://github.com/domoticz/domoticz/blob/${finalAttrs.version}/History.txt"; license = lib.licenses.gpl3Plus; platforms = lib.platforms.all; broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/domoticz.x86_64-darwin mainProgram = "domoticz"; - knownVulnerabilities = [ - "CVE-2026-1001" - ]; }; }) diff --git a/pkgs/by-name/gg/ggmorse/package.nix b/pkgs/by-name/gg/ggmorse/package.nix new file mode 100644 index 000000000000..51a4ce819e28 --- /dev/null +++ b/pkgs/by-name/gg/ggmorse/package.nix @@ -0,0 +1,45 @@ +{ + lib, + stdenv, + cmake, + fetchFromGitHub, + nix-update-script, +}: +stdenv.mkDerivation { + pname = "ggmorse"; + version = "0.1.0-unstable-2024-05-31"; + + src = fetchFromGitHub { + owner = "ggerganov"; + repo = "ggmorse"; + rev = "8fb433d6cd6a71940f51b5724663ec0c75bf0b62"; + hash = "sha256-6GhyPhzNNAx1DSomfIfejbnLTckKa7/+VUZhSaGvGtI="; + }; + + postPatch = '' + substituteInPlace ./CMakeLists.txt \ + --replace-fail "cmake_minimum_required (VERSION 3.0)" \ + "cmake_minimum_required (VERSION 3.5)" + ''; + + __structuredAttrs = true; + strictDeps = true; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + (lib.cmakeBool "GGMORSE_BUILD_EXAMPLES" false) + ]; + + passthru.updateScript = nix-update-script { + extraArgs = [ "--version=branch" ]; + }; + + meta = { + description = "Morse code decoding library"; + homepage = "https://github.com/ggerganov/ggmorse"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.nekowinston ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/by-name/gi/git-spice/package.nix b/pkgs/by-name/gi/git-spice/package.nix index fa9e5daae8a0..60e201062113 100644 --- a/pkgs/by-name/gi/git-spice/package.nix +++ b/pkgs/by-name/gi/git-spice/package.nix @@ -10,16 +10,16 @@ buildGoModule (finalAttrs: { pname = "git-spice"; - version = "0.30.1"; + version = "0.31.0"; src = fetchFromGitHub { owner = "abhinav"; repo = "git-spice"; tag = "v${finalAttrs.version}"; - hash = "sha256-zqHTbsK/vIeNKfvIH8funMLD0ehercVkufIYcRZ7VD0="; + hash = "sha256-3VHT9/oCQaySWPAfnZYRxSsKCz8S8As685V3wvpqip8="; }; - vendorHash = "sha256-dCAgnfnwDudTUsQE/RapWslnz/MtefdlzqneRbWrLmc="; + vendorHash = "sha256-xcU0B+ju1f/JfNVKpXkIy5SO9rd3O9Nl0FizW3kVgI0="; subPackages = [ "." ]; @@ -31,7 +31,6 @@ buildGoModule (finalAttrs: { ldflags = [ "-s" - "-w" "-X=main._version=${finalAttrs.version}" ]; diff --git a/pkgs/by-name/gr/graphite-cli/package.nix b/pkgs/by-name/gr/graphite-cli/package.nix index c9fe9e7f899d..af2cc83f569d 100644 --- a/pkgs/by-name/gr/graphite-cli/package.nix +++ b/pkgs/by-name/gr/graphite-cli/package.nix @@ -76,9 +76,10 @@ let dontConfigure = true; dontBuild = true; - # On Linux the binary is wrapped with buildFHSEnv; completions are - # generated there. Here we only need to skip fixup to avoid patchelf/strip. - dontFixup = stdenv.hostPlatform.isLinux; + # Skip fixup on all platforms: strip discards the vercel/pkg virtual + # filesystem appended to the binary (see the comment below), leaving a + # binary that fails at runtime with "Pkg: Error reading from file." + dontFixup = true; installPhase = '' runHook preInstall @@ -86,7 +87,13 @@ let runHook postInstall ''; - postInstall = lib.optionalString stdenv.hostPlatform.isDarwin shellCompletions; + # gt tries to create ~/.config/graphite/aliases on startup and exits 1 + # with no output when HOME is not writable, which would leave the + # completion files empty. + postInstall = lib.optionalString stdenv.hostPlatform.isDarwin '' + export HOME=$(mktemp -d) + ${shellCompletions} + ''; }; in # The binary is built with vercel/pkg, which appends a virtual filesystem to diff --git a/pkgs/by-name/in/incus-ui-canonical/package.nix b/pkgs/by-name/in/incus-ui-canonical/package.nix index f3175515d1c4..98e384369006 100644 --- a/pkgs/by-name/in/incus-ui-canonical/package.nix +++ b/pkgs/by-name/in/incus-ui-canonical/package.nix @@ -1,6 +1,6 @@ { lib, - stdenv, + stdenvNoCC, fetchurl, fetchFromGitHub, fetchYarnDeps, @@ -18,7 +18,7 @@ let hash = "sha256-f0vd/Xp/kBbZkg6CBM4cZPlwg5WUL/zv3mCAEmugzCE="; }; in -stdenv.mkDerivation (finalAttrs: { +stdenvNoCC.mkDerivation (finalAttrs: { pname = "incus-ui-canonical"; version = "0.21.4"; diff --git a/pkgs/by-name/in/inmarsatc/package.nix b/pkgs/by-name/in/inmarsatc/package.nix new file mode 100644 index 000000000000..c1ff54c4e6b3 --- /dev/null +++ b/pkgs/by-name/in/inmarsatc/package.nix @@ -0,0 +1,35 @@ +{ + lib, + stdenv, + cmake, + fetchFromGitHub, + nix-update-script, +}: +stdenv.mkDerivation { + pname = "inmarsatc"; + version = "0-unstable-2023-07-10"; + + src = fetchFromGitHub { + owner = "cropinghigh"; + repo = "inmarsatc"; + rev = "cda1242e79981d71cd8608e971c8dbc691942b10"; + hash = "sha256-UCmdHR9bSr1x4G0OP7n+o6pdS1thTl9hzH7YMykSiGw="; + }; + + __structuredAttrs = true; + strictDeps = true; + + nativeBuildInputs = [ cmake ]; + + passthru.updateScript = nix-update-script { + extraArgs = [ "--version=branch" ]; + }; + + meta = { + description = "C++ library with functions to receive Inmarsat-C signals"; + homepage = "https://github.com/cropinghigh/inmarsatc"; + license = lib.licenses.gpl3Only; + maintainers = [ lib.maintainers.nekowinston ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/oh/oh-my-posh/package.nix b/pkgs/by-name/oh/oh-my-posh/package.nix index 0999756f48aa..87ea74ede309 100644 --- a/pkgs/by-name/oh/oh-my-posh/package.nix +++ b/pkgs/by-name/oh/oh-my-posh/package.nix @@ -6,16 +6,16 @@ }: buildGoModule (finalAttrs: { pname = "oh-my-posh"; - version = "29.20.0"; + version = "29.26.1"; src = fetchFromGitHub { owner = "jandedobbeleer"; repo = "oh-my-posh"; tag = "v${finalAttrs.version}"; - hash = "sha256-EzdrqeWM85hh8lPxrweSPezydICRFyOStgDlEq8g9+8="; + hash = "sha256-hE3L7emTk7MxzBUqSUDNKYiA2H1w9mcGhPYiR1OhYxg="; }; - vendorHash = "sha256-PAdk6nf750wL619W6nyt1Ne/eYYlVkewIhWirNi9rK8="; + vendorHash = "sha256-6DX/x9uWUbwXy9ccB6NIVRKsOc1nJXtctItONAI7zPQ="; sourceRoot = "${finalAttrs.src.name}/src"; diff --git a/pkgs/by-name/ol/olm/package.nix b/pkgs/by-name/ol/olm/package.nix index 37ed67e9fb2f..0d0b15ee291a 100644 --- a/pkgs/by-name/ol/olm/package.nix +++ b/pkgs/by-name/ol/olm/package.nix @@ -5,16 +5,19 @@ cmake, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "olm"; version = "3.2.16"; + __structuredAttrs = true; + strictDeps = true; + src = fetchFromGitLab { domain = "gitlab.matrix.org"; owner = "matrix-org"; repo = "olm"; - rev = version; - sha256 = "sha256-JX20mpuLO+UoNc8iQlXEHAbH9sfblkBbM1gE27Ve0ac="; + tag = finalAttrs.version; + hash = "sha256-JX20mpuLO+UoNc8iQlXEHAbH9sfblkBbM1gE27Ve0ac="; }; nativeBuildInputs = [ cmake ]; @@ -94,4 +97,4 @@ stdenv.mkDerivation rec { '' ]; }; -} +}) diff --git a/pkgs/by-name/op/openrct2/package.nix b/pkgs/by-name/op/openrct2/package.nix index 96713155bebd..793a766a5e48 100644 --- a/pkgs/by-name/op/openrct2/package.nix +++ b/pkgs/by-name/op/openrct2/package.nix @@ -32,40 +32,22 @@ speexdsp, versionCheckHook, zlib, + zstd, withDiscordRpc ? false, + verifyAssets ? true, # Paths to RCT1 and RCT2 installs can be specified to have them added as a wrapped argument rct1Path ? null, rct2Path ? null, }: -let - objects-version = "1.7.10"; - openmusic-version = "1.6.1"; - opensfx-version = "1.0.6"; - title-sequences-version = "0.4.26"; - - objects = fetchurl { - url = "https://github.com/OpenRCT2/objects/releases/download/v${objects-version}/objects.zip"; - hash = "sha256-9IO+Jm3CIHe6hRe78y/+OIw1Q7LuWF4K+9QQLbRSgCE="; - }; - openmusic = fetchurl { - url = "https://github.com/OpenRCT2/OpenMusic/releases/download/v${openmusic-version}/openmusic.zip"; - hash = "sha256-mUs1DTsYDuHLlhn+J/frrjoaUjKEDEvUeonzP6id4aE="; - }; - opensfx = fetchurl { - url = "https://github.com/OpenRCT2/OpenSoundEffects/releases/download/v${opensfx-version}/opensound.zip"; - hash = "sha256-BrkPPhnCFnUt9EHVUbJqnj4bp3Vb3SECUEtzv5k2CL4="; - }; - title-sequences = fetchurl { - url = "https://github.com/OpenRCT2/title-sequences/releases/download/v${title-sequences-version}/title-sequences.zip"; - hash = "sha256-2ruXh7FXY0L8pN2fZLP4z6BKfmzpwruWEPR7dikFyFg="; - }; -in stdenv.mkDerivation (finalAttrs: { pname = "openrct2"; version = "0.5.3"; + __structuredAttrs = true; + strictDeps = true; + src = fetchFromGitHub { owner = "OpenRCT2"; repo = "OpenRCT2"; @@ -73,6 +55,34 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-my7fPBD5N0bO1yPaxwHUFqw6TvayQs10kcAX/NqPpIg="; }; + passthru = { + updateScript = ./update.sh; + + objects-version = "1.7.10"; + openmusic-version = "1.6.1"; + opensfx-version = "1.0.6"; + title-sequences-version = "0.4.26"; + + assets = { + objects = fetchurl { + url = "https://github.com/OpenRCT2/objects/releases/download/v${finalAttrs.passthru.objects-version}/objects.zip"; + hash = "sha256-9IO+Jm3CIHe6hRe78y/+OIw1Q7LuWF4K+9QQLbRSgCE="; + }; + openmusic = fetchurl { + url = "https://github.com/OpenRCT2/OpenMusic/releases/download/v${finalAttrs.passthru.openmusic-version}/openmusic.zip"; + hash = "sha256-mUs1DTsYDuHLlhn+J/frrjoaUjKEDEvUeonzP6id4aE="; + }; + opensfx = fetchurl { + url = "https://github.com/OpenRCT2/OpenSoundEffects/releases/download/v${finalAttrs.passthru.opensfx-version}/opensound.zip"; + hash = "sha256-BrkPPhnCFnUt9EHVUbJqnj4bp3Vb3SECUEtzv5k2CL4="; + }; + title-sequences = fetchurl { + url = "https://github.com/OpenRCT2/title-sequences/releases/download/v${finalAttrs.passthru.title-sequences-version}/title-sequences.zip"; + hash = "sha256-2ruXh7FXY0L8pN2fZLP4z6BKfmzpwruWEPR7dikFyFg="; + }; + }; + }; + nativeBuildInputs = [ cmake pkg-config @@ -104,6 +114,7 @@ stdenv.mkDerivation (finalAttrs: { openssl speexdsp zlib + zstd ] ++ lib.optional withDiscordRpc discord-rpc; @@ -117,31 +128,21 @@ stdenv.mkDerivation (finalAttrs: { postUnpack = '' mkdir -p $sourceRoot/data/{object,sequence} - unzip -o ${objects} -d $sourceRoot/data/object - unzip -o ${openmusic} -d $sourceRoot/data - unzip -o ${opensfx} -d $sourceRoot/data - unzip -o ${title-sequences} -d $sourceRoot/data/sequence - ''; - - # Fix blank changelog & contributors screen. See https://github.com/OpenRCT2/OpenRCT2/issues/16988 - postPatch = '' - substituteInPlace src/openrct2/platform/Platform.Linux.cpp \ - --replace-fail "/usr/share/doc/openrct2" "$out/share/doc/openrct2" + unzip -o ${finalAttrs.passthru.assets.objects} -d $sourceRoot/data/object + unzip -o ${finalAttrs.passthru.assets.openmusic} -d $sourceRoot/data + unzip -o ${finalAttrs.passthru.assets.opensfx} -d $sourceRoot/data + unzip -o ${finalAttrs.passthru.assets.title-sequences} -d $sourceRoot/data/sequence ''; preConfigure = # Verify that the correct version of each third party repository is used. - ( - let - versionCheck = assetKey: url: '' - grep -qF '"${url}"' assets.json \ - || (echo "${assetKey} differs from expected version!"; exit 1) - ''; - in - (versionCheck "objects" objects.url) - + (versionCheck "openmusic" openmusic.url) - + (versionCheck "opensfx" opensfx.url) - + (versionCheck "title-sequences" title-sequences.url) + lib.optionalString verifyAssets ( + lib.concatStringsSep "\n" ( + lib.mapAttrsToList (assetName: asset: '' + grep -qF '"${asset.url}"' assets.json \ + || (echo "${assetName} differs from expected version!"; exit 1) + '') finalAttrs.passthru.assets + ) ); doInstallCheck = true; @@ -152,8 +153,6 @@ stdenv.mkDerivation (finalAttrs: { ${lib.optionalString (rct2Path != null) "--add-flags '--rct2-data-path=\"${rct2Path}\"'"} ''; - passthru.updateScript = ./update.sh; - meta = { description = "Open source re-implementation of RollerCoaster Tycoon 2"; longDescription = '' diff --git a/pkgs/by-name/pl/plezy/git-hashes.json b/pkgs/by-name/pl/plezy/git-hashes.json index af3ee856e9f5..ff287f73ce93 100644 --- a/pkgs/by-name/pl/plezy/git-hashes.json +++ b/pkgs/by-name/pl/plezy/git-hashes.json @@ -3,9 +3,7 @@ "auto_updater_macos": "sha256-787cMkeT2BlfwVcy4y46XkWioNqLKJgQ/CCxQvERa+A=", "auto_updater_platform_interface": "sha256-787cMkeT2BlfwVcy4y46XkWioNqLKJgQ/CCxQvERa+A=", "auto_updater_windows": "sha256-787cMkeT2BlfwVcy4y46XkWioNqLKJgQ/CCxQvERa+A=", - "background_downloader": "sha256-VHi4g/S/kCxxaeHnDTc64oS6lMHMFiU31VqFqBmdmo8=", - "connectivity_plus": "sha256-PGt4eEp32+w4XMDVwB0Kjla1OSole4l/++Zs5PHXs/U=", - "material_symbols_icons": "sha256-XRB6AZ4Q33sQKVZFA8lgdXCW/bx55h/RpmuItmFYVJM=", - "os_media_controls": "sha256-Xd1RdtmZbuWaljNXZ/rSInQF5/F06aPtr1uVrxIdhP8=", - "wakelock_plus": "sha256-89xs0sLNuoCqApFqwEY+SEk2DUqjHf8JsSd7dfxX3P0=" + "background_downloader": "sha256-y37tzAxOwql1193E+aTJOIi2B0gXLxL3azghEYzcRGA=", + "connectivity_plus": "sha256-sVUG5/6GF0Eu47BgUCkgbGi8w1ip5o0yQS00NnNjAGs=", + "os_media_controls": "sha256-UkrBz52dkdlSJ+UJwC2E7RhuSOcXzJx+dVo0JcW8pEY=" } diff --git a/pkgs/by-name/pl/plezy/package.nix b/pkgs/by-name/pl/plezy/package.nix index 36952fbf6120..17ef30c364d1 100644 --- a/pkgs/by-name/pl/plezy/package.nix +++ b/pkgs/by-name/pl/plezy/package.nix @@ -27,13 +27,13 @@ let pname = "plezy"; - version = "2.8.0"; + version = "2.9.1"; src = fetchFromGitHub { owner = "edde746"; repo = "plezy"; tag = version; - hash = "sha256-NvBCh++teOB0uNyy71NmOFwCQvkg9/v9Rx+76UybLQo="; + hash = "sha256-Fc2KWx4byfrulWzOGm0WW6EUXMvV8uwmvVjoSgzQmuA="; }; simdutf = fetchurl { @@ -55,6 +55,7 @@ let maintainers = with lib.maintainers; [ mio miniharinn + BatteredBunny ]; platforms = lib.platforms.linux ++ [ "x86_64-darwin" @@ -72,13 +73,7 @@ let gitHashes = lib.importJSON ./git-hashes.json; - # Upstream uses a sentry-dart fork that fetches sentry-native as a zip instead of via - # git clone. The PR was merged and reverted upstream (getsentry/sentry-dart#3630), so - # we use upstream since theres no actual meaningful difference - patches = [ - ./replace-sentry-fork.patch - ] - ++ lib.optionals use16kPagesizeWorkaround [ + patches = lib.optionals use16kPagesizeWorkaround [ ./16k-font-workaround.patch ]; @@ -152,7 +147,7 @@ let src = fetchurl { url = "https://github.com/edde746/plezy/releases/download/${version}/plezy-macos.dmg"; - hash = "sha256-eN8CJ/yaV4wln6fN2lJqJnn+RvW+ZiD3oCDhjQjyBvU="; + hash = "sha256-jNwMukPYLTWBk1daanHtxYdJpZCB5I/hiKvFx4tL4sY="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/pl/plezy/pubspec.lock.json b/pkgs/by-name/pl/plezy/pubspec.lock.json index 55fe06f92542..46ae84a50b07 100644 --- a/pkgs/by-name/pl/plezy/pubspec.lock.json +++ b/pkgs/by-name/pl/plezy/pubspec.lock.json @@ -10,6 +10,16 @@ "source": "hosted", "version": "93.0.0" }, + "analysis_server_plugin": { + "dependency": "transitive", + "description": { + "name": "analysis_server_plugin", + "sha256": "5f3920acbd5765764ec9ef6c5bbdd102015424281232ee4fb4f5431c87abb4eb", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "0.3.7" + }, "analyzer": { "dependency": "transitive", "description": { @@ -108,12 +118,12 @@ "dependency": "direct main", "description": { "path": ".", - "ref": "b4d36f88bb365faaf308ff26be7ade49bbaec859", - "resolved-ref": "b4d36f88bb365faaf308ff26be7ade49bbaec859", + "ref": "021e2075260e324b7440a5c81b57bf0242d35020", + "resolved-ref": "021e2075260e324b7440a5c81b57bf0242d35020", "url": "https://github.com/edde746/background_downloader" }, "source": "git", - "version": "9.5.4" + "version": "9.5.5" }, "boolean_selector": { "dependency": "transitive", @@ -299,12 +309,12 @@ "dependency": "direct main", "description": { "path": "packages/connectivity_plus/connectivity_plus", - "ref": "2b614414ce95d920880765d07cbb9759699a4563", - "resolved-ref": "2b614414ce95d920880765d07cbb9759699a4563", - "url": "https://github.com/edde746/plus_plugins" + "ref": "bf04cdf66598dc3fca274b8b1db2b92b0bf6b73e", + "resolved-ref": "bf04cdf66598dc3fca274b8b1db2b92b0bf6b73e", + "url": "https://github.com/fluttercommunity/plus_plugins" }, "source": "git", - "version": "7.1.1" + "version": "7.2.0" }, "connectivity_plus_platform_interface": { "dependency": "transitive", @@ -390,11 +400,11 @@ "dependency": "direct dev", "description": { "name": "dart_code_linter", - "sha256": "8ece88f710621ca1c40b6c344b316d78bb2269d728d37d2a44f19a81d9d2cb93", + "sha256": "44cce8527a2094201067b50aed97778930638cc43e8bb3cb0b40a90c36fb9c84", "url": "https://pub.dev" }, "source": "hosted", - "version": "4.0.2" + "version": "4.1.6" }, "dart_discord_presence": { "dependency": "direct main", @@ -873,13 +883,12 @@ "material_symbols_icons": { "dependency": "direct main", "description": { - "path": ".", - "ref": "1d8cd83", - "resolved-ref": "1d8cd8325db29691a01738a25f220dd3515bd1e2", - "url": "https://github.com/edde746/material_symbols_icons" + "name": "material_symbols_icons", + "sha256": "49c532dd0b74544e9d8d93ec0f821d52ec532e7c9263c889ebe71b1be4f34ba7", + "url": "https://pub.dev" }, - "source": "git", - "version": "4.2906.0" + "source": "hosted", + "version": "4.2951.0" }, "meta": { "dependency": "transitive", @@ -955,12 +964,12 @@ "dependency": "direct main", "description": { "path": ".", - "ref": "f51c805ebc15bf7a2f49a74174aeb470d3c4c78e", - "resolved-ref": "f51c805ebc15bf7a2f49a74174aeb470d3c4c78e", + "ref": "75556a968a4a1ebc42fbb8c31942c2418d4326e1", + "resolved-ref": "75556a968a4a1ebc42fbb8c31942c2418d4326e1", "url": "https://github.com/edde746/media_controls" }, "source": "git", - "version": "0.2.4" + "version": "0.3.0" }, "package_config": { "dependency": "transitive", @@ -1225,12 +1234,11 @@ "saf_util": { "dependency": "direct main", "description": { - "name": "saf_util", - "sha256": "0cf5fc462fc7e466e1d5608dd5a331d88d6dd6c7b01f62a305aaf469bf3309ea", - "url": "https://pub.dev" + "path": "packages/saf_util", + "relative": true }, - "source": "hosted", - "version": "2.0.0" + "source": "path", + "version": "3.1.0" }, "screen_retriever": { "dependency": "transitive", @@ -1286,11 +1294,11 @@ "dependency": "transitive", "description": { "name": "sentry", - "sha256": "288aee3d35f252ac0dc3a4b0accbbe7212fa2867604027f2cc5bc65334afd743", + "sha256": "09c573f98ff6c5e98d527f351f037eb8ea9ff684a6e9e84b2e91357144016254", "url": "https://pub.dev" }, "source": "hosted", - "version": "9.16.0" + "version": "9.24.0" }, "sentry_dart_plugin": { "dependency": "direct dev", @@ -1306,11 +1314,11 @@ "dependency": "direct main", "description": { "name": "sentry_flutter", - "sha256": "f9e87d5895cc437902aa2b081727ee7e46524fe7cc2e1910f535480a3eeb8bed", + "sha256": "4a04b7e1901b8128df783b6d36d48706b07b0cd055e621517c998de87f5dafb9", "url": "https://pub.dev" }, "source": "hosted", - "version": "9.16.0" + "version": "9.24.0" }, "serial_csv": { "dependency": "transitive", @@ -1751,13 +1759,11 @@ "wakelock_plus": { "dependency": "direct main", "description": { - "path": "wakelock_plus", - "ref": "8595fee595c952b73d430f2eab05f2e0d858290e", - "resolved-ref": "8595fee595c952b73d430f2eab05f2e0d858290e", - "url": "https://github.com/edde746/wakelock_plus" + "path": "packages/wakelock_plus", + "relative": true }, - "source": "git", - "version": "1.4.0" + "source": "path", + "version": "1.5.2" }, "wakelock_plus_platform_interface": { "dependency": "transitive", @@ -1833,11 +1839,11 @@ "dependency": "direct main", "description": { "name": "win_http", - "sha256": "a50a14f1bf32bc5c9b39add9baa01658b97146b21de25237810ca6b850a6704e", + "sha256": "ebc4d37e2c0e6800cc200e40d289d3bac22fc17d40fce3ae7909d49a20da77bc", "url": "https://pub.dev" }, "source": "hosted", - "version": "0.2.1" + "version": "0.2.2" }, "window_manager": { "dependency": "direct main", @@ -1878,6 +1884,16 @@ }, "source": "hosted", "version": "3.1.3" + }, + "yaml_edit": { + "dependency": "transitive", + "description": { + "name": "yaml_edit", + "sha256": "07c9e63ba42519745182b88ca12264a7ba2484d8239958778dfe4d44fe760488", + "url": "https://pub.dev" + }, + "source": "hosted", + "version": "2.2.4" } }, "sdks": { diff --git a/pkgs/by-name/pl/plezy/replace-sentry-fork.patch b/pkgs/by-name/pl/plezy/replace-sentry-fork.patch deleted file mode 100644 index f2ad98d1f153..000000000000 --- a/pkgs/by-name/pl/plezy/replace-sentry-fork.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- a/pubspec.yaml -+++ b/pubspec.yaml -@@ -60,11 +60,7 @@ - git: - url: https://github.com/edde746/background_downloader - ref: b4d36f88bb365faaf308ff26be7ade49bbaec859 -- sentry_flutter: -- git: -- url: https://github.com/edde746/sentry-dart -- path: packages/flutter -- ref: build/fetch-native-zip -+ sentry_flutter: 9.16.0 - auto_updater: - git: - url: https://github.com/edde746/auto_updater -@@ -110,16 +106,6 @@ - url: https://github.com/edde746/auto_updater - ref: 9e150f7 - path: packages/auto_updater_windows -- sentry: -- git: -- url: https://github.com/edde746/sentry-dart -- path: packages/dart -- ref: build/fetch-native-zip -- sentry_flutter: -- git: -- url: https://github.com/edde746/sentry-dart -- path: packages/flutter -- ref: build/fetch-native-zip - material_symbols_icons: - git: - url: https://github.com/edde746/material_symbols_icons diff --git a/pkgs/by-name/pl/plezy/update.sh b/pkgs/by-name/pl/plezy/update.sh index 3791bc122fa0..6cba0df4c373 100755 --- a/pkgs/by-name/pl/plezy/update.sh +++ b/pkgs/by-name/pl/plezy/update.sh @@ -1,5 +1,5 @@ #!/usr/bin/env nix-shell -#! nix-shell -I nixpkgs=./. -i bash -p curl gnused jq nix nix-prefetch-git python3 yq-go flutter344 git +#! nix-shell -I nixpkgs=./. -i bash -p curl gnused jq nix nix-prefetch-git python3 yq-go set -eou pipefail @@ -26,18 +26,8 @@ DMG_URL="https://github.com/edde746/plezy/releases/download/${latestVersion}/ple DMG_SHA=$(nix --extra-experimental-features nix-command hash convert --hash-algo sha256 --to sri "$(nix-prefetch-url "$DMG_URL")") sed -i "/plezy-macos.dmg/,/hash/{s|hash = \".*\"|hash = \"${DMG_SHA}\"|}" "$ROOT/package.nix" -# Only here to handle the patched pubsec.yaml -workdir=$(mktemp -d) -trap 'rm -rf "$workdir"' EXIT - -curl --fail --silent --location "$GIT_SRC_URL" | tar -xz -C "$workdir" --strip-components=1 -patch -d "$workdir" -p1 < "$ROOT/replace-sentry-fork.patch" - -export PUB_CACHE="$workdir/.pub-cache" -flutter --no-version-check config --no-analytics >/dev/null -(cd "$workdir" && flutter --no-version-check pub get) - -yq eval --output-format=json --prettyPrint "$workdir/pubspec.lock" > "$ROOT/pubspec.lock.json" +curl --fail --silent --location "https://raw.githubusercontent.com/edde746/plezy/${latestVersion}/pubspec.lock" \ + | yq eval --output-format=json --prettyPrint > "$ROOT/pubspec.lock.json" python3 "$(dirname "$(readlink -f "$0")")/../../../development/compilers/dart/fetch-git-hashes.py" \ --input "$ROOT/pubspec.lock.json" \ diff --git a/pkgs/by-name/sd/sdrangel/package.nix b/pkgs/by-name/sd/sdrangel/package.nix index 203ac01b72c9..4322a0d654e4 100644 --- a/pkgs/by-name/sd/sdrangel/package.nix +++ b/pkgs/by-name/sd/sdrangel/package.nix @@ -12,16 +12,19 @@ dsdcc, faad2, fetchFromGitHub, - fetchpatch, fftwFloat, flac, + ggmorse, glew, hackrf, hidapi, ffmpeg, + inmarsatc, libiio, + libogg, libopus, libpulseaudio, + libunwind, libusb1, limesuite, libbladeRF, @@ -31,6 +34,7 @@ pkg-config, qt6, qt6Packages, + rnnoise, rtl-sdr, serialdv, sdrplay, @@ -39,26 +43,22 @@ uhd, zlib, withSDRplay ? false, + nix-update-script, }: stdenv.mkDerivation (finalAttrs: { pname = "sdrangel"; - version = "7.22.9"; + version = "7.27.1"; src = fetchFromGitHub { owner = "f4exb"; repo = "sdrangel"; tag = "v${finalAttrs.version}"; - hash = "sha256-VYSM9ldzx/8tWKQb++qGROSXdeEXIDhGqnnHUmkW4+k="; + hash = "sha256-rdPXqA0ySnqh/rlMlfcDLyAd6egbggWHrRQRnXeQPFM="; }; - patches = [ - # Fix build with Qt 6.10, remove when the commit reaches a release - (fetchpatch { - url = "https://github.com/f4exb/sdrangel/commit/fd6a8d51f8c39fd31b4e864f528bf1921ebd4260.patch"; - hash = "sha256-S8LQbCTEgyEt1wByDsDMqqyQjK5HALtvUIODgQ1skSA="; - }) - ]; + __structuredAttrs = true; + strictDeps = true; nativeBuildInputs = [ cmake @@ -80,11 +80,13 @@ stdenv.mkDerivation (finalAttrs: { ffmpeg fftwFloat flac + ggmorse glew hackrf hidapi libbladeRF libiio + libogg libopus libpulseaudio libusb1 @@ -101,7 +103,7 @@ stdenv.mkDerivation (finalAttrs: { qt6Packages.qtspeech qt6Packages.qttools qt6Packages.qtwebsockets - qt6Packages.qtwebengine + rnnoise rtl-sdr serialdv sgp4 @@ -109,18 +111,25 @@ stdenv.mkDerivation (finalAttrs: { uhd zlib ] - ++ lib.optionals stdenv.hostPlatform.isLinux [ qt6Packages.qtwayland ] + ++ lib.optionals stdenv.hostPlatform.isLinux [ + inmarsatc + libunwind + qt6Packages.qtwayland + qt6Packages.qtwebengine + ] ++ lib.optionals withSDRplay [ sdrplay ]; cmakeFlags = [ - "-DAPT_DIR=${aptdec}" - "-DDAB_DIR=${dab_lib}" - "-DSGP4_DIR=${sgp4}" - "-DSOAPYSDR_DIR=${soapysdr-with-plugins}" + (lib.cmakeFeature "APT_DIR" aptdec.outPath) + (lib.cmakeFeature "DAB_DIR" dab_lib.outPath) + (lib.cmakeFeature "SGP4_DIR" sgp4.outPath) + (lib.cmakeFeature "SOAPYSDR_DIR" soapysdr-with-plugins.outPath) + (lib.cmakeBool "ENABLE_QT6" true) "-Wno-dev" - "-DENABLE_QT6=ON" ]; + passthru.updateScript = nix-update-script { }; + meta = { description = "Software defined radio (SDR) software"; homepage = "https://github.com/f4exb/sdrangel"; diff --git a/pkgs/by-name/sk/sketchybar/package.nix b/pkgs/by-name/sk/sketchybar/package.nix index 68106fd82420..4d615ad3b9a8 100644 --- a/pkgs/by-name/sk/sketchybar/package.nix +++ b/pkgs/by-name/sk/sketchybar/package.nix @@ -5,6 +5,7 @@ nix-update-script, apple-sdk_15, versionCheckHook, + llvmPackages, }: let @@ -28,12 +29,20 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-5tyc/yYzdV/3JTtujuj7le/14XkC7TlN/nZg7tOZsNg="; }; + nativeBuildInputs = [ + # TODO: Remove once #536365 reaches this branch + llvmPackages.lld + ]; + buildInputs = [ apple-sdk_15 ]; makeFlags = [ target ]; + # TODO: Remove once #536365 reaches this branch + env.NIX_CFLAGS_LINK = "-fuse-ld=lld"; + installPhase = '' runHook preInstall diff --git a/pkgs/by-name/sk/skills/package.nix b/pkgs/by-name/sk/skills/package.nix index ab66664bd318..5be0cecd7181 100644 --- a/pkgs/by-name/sk/skills/package.nix +++ b/pkgs/by-name/sk/skills/package.nix @@ -14,20 +14,20 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "skills"; - version = "1.5.14"; + version = "1.5.16"; src = fetchFromGitHub { owner = "vercel-labs"; repo = "skills"; tag = "v${finalAttrs.version}"; - hash = "sha256-176EeM1VhNSBH1cYUUy3oLST21PbV0v+tCNglfM9+6Y="; + hash = "sha256-gL8uNkS3gsRGXIunIsYLYykLYs2c1gO9PFVTE69nWKU="; }; pnpmDeps = fetchPnpmDeps { fetcherVersion = 3; inherit (finalAttrs) pname version src; inherit pnpm; - hash = "sha256-3GSa4ze859dRA4Yrxw8r3rwZKn7FMSjBMvpz1HTDobU="; + hash = "sha256-wntHp5UT21wD1myxj8EQafQis5QMuQ9U2PKiKg2jalw="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/sr/srsran/package.nix b/pkgs/by-name/sr/srsran/package.nix index a49abe56173f..1a9388f38d43 100644 --- a/pkgs/by-name/sr/srsran/package.nix +++ b/pkgs/by-name/sr/srsran/package.nix @@ -24,11 +24,12 @@ stdenv.mkDerivation (finalAttrs: { pname = "srsran"; version = "25_10"; + __structuredAttrs = true; src = fetchFromGitHub { owner = "srsran"; - repo = "srsran"; - rev = "release_${builtins.replaceStrings [ "." ] [ "_" ] finalAttrs.version}"; + repo = "srsRAN_4G"; + tag = "release_${builtins.replaceStrings [ "." ] [ "_" ] finalAttrs.version}"; sha256 = "sha256-DwQ4u17m8D5RqX3OIYSyeE5+51sLah1qchRcwlX5i0A="; }; @@ -68,7 +69,7 @@ stdenv.mkDerivation (finalAttrs: { cmakeFlags = [ "-DENABLE_WERROR=OFF" - (lib.cmakeBool "ENABLE_LTE_RATES" enableLteRates) + (lib.cmakeBool "USE_LTE_RATES" enableLteRates) (lib.cmakeBool "ENABLE_AVX" enableAvx) (lib.cmakeBool "ENABLE_AVX2" enableAvx2) (lib.cmakeBool "ENABLE_FMA" enableFma) @@ -81,9 +82,13 @@ stdenv.mkDerivation (finalAttrs: { meta = { homepage = "https://www.srslte.com/"; - description = "Open-source 4G and 5G software radio suite"; + changelog = "https://github.com/srsran/srsRAN_4G/releases/tag/${finalAttrs.src.tag}"; + description = "Open-source 4G software radio suite, including complete LTE UE, eNodeB and EPC applications"; license = lib.licenses.agpl3Plus; - platforms = with lib.platforms; linux; - maintainers = with lib.maintainers; [ hexagonal-sun ]; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ + hexagonal-sun + felbinger + ]; }; }) diff --git a/pkgs/by-name/ss/sssnake/package.nix b/pkgs/by-name/ss/sssnake/package.nix index 8ef9d6a4252f..827090d5de74 100644 --- a/pkgs/by-name/ss/sssnake/package.nix +++ b/pkgs/by-name/ss/sssnake/package.nix @@ -6,12 +6,12 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "sssnake"; - version = "0.3.2"; + version = "0.4.0"; src = fetchFromGitHub { owner = "angeljumbo"; repo = "sssnake"; rev = "v${finalAttrs.version}"; - hash = "sha256-zkErOV6Az0kJdwyXzMCnVW1997zpAB79TBvf/41Igic="; + hash = "sha256-RU+yYT+GcCsk0lBisE2/4Y9zMVLA6dbN4n0ibAovav4="; }; postPatch = '' substituteInPlace makefile --replace '-lncursesw' '-lncursesw -D_XOPEN_SOURCE=500' diff --git a/pkgs/by-name/st/stremio-linux-shell/out-path.patch b/pkgs/by-name/st/stremio-linux-shell/out-path.patch new file mode 100644 index 000000000000..db60b233ce0b --- /dev/null +++ b/pkgs/by-name/st/stremio-linux-shell/out-path.patch @@ -0,0 +1,42 @@ +diff --git a/build.rs b/build.rs +index aa2bec5..d512a42 100644 +--- a/build.rs ++++ b/build.rs +@@ -26,7 +26,7 @@ fn setup_po() -> Result<()> { + && extension == "po" + && let Some(po_lang) = path.file_stem() + { +- let mo_dir = po_dir.join(po_lang).join("LC_MESSAGES"); ++ let mo_dir = Path::new("@out@/share/locale").join(po_lang).join("LC_MESSAGES"); + + fs::create_dir_all(&mo_dir)?; + +@@ -46,7 +46,7 @@ fn setup_po() -> Result<()> { + fn setup_schemas(filename: &str) -> Result<()> { + println!("cargo:rerun-if-changed={DATA_DIR}"); + +- let out_dir = dirs::data_dir().expect("Failed to get data dir"); ++ let out_dir = Path::new("@out@/share"); + let out_dir = out_dir.join("glib-2.0/schemas"); + + fs::create_dir_all(&out_dir)?; +diff --git a/data/com.stremio.Stremio.service b/data/com.stremio.Stremio.service +index 7cfb139..7491969 100644 +--- a/data/com.stremio.Stremio.service ++++ b/data/com.stremio.Stremio.service +@@ -1,3 +1,3 @@ + [D-BUS Service] + Name=com.stremio.Stremio +-Exec=/app/bin/stremio --gapplication-service ++Exec=@out@/bin/stremio --gapplication-service +diff --git a/data/stremio.sh b/data/stremio.sh +index 161bada..37373b0 100644 +--- a/data/stremio.sh ++++ b/data/stremio.sh +@@ -5,4 +5,4 @@ if ls /dev/nvidia0 &>/dev/null 2>&1; then + export GSK_RENDERER=opengl + fi + +-exec /app/libexec/stremio/stremio "$@" +\ No newline at end of file ++exec @out@/libexec/stremio/stremio "$@" diff --git a/pkgs/by-name/st/stremio-linux-shell/package.nix b/pkgs/by-name/st/stremio-linux-shell/package.nix index c93dffdd91e9..4a44bf0861f5 100644 --- a/pkgs/by-name/st/stremio-linux-shell/package.nix +++ b/pkgs/by-name/st/stremio-linux-shell/package.nix @@ -3,7 +3,7 @@ rustPlatform, fetchFromGitHub, versionCheckHook, - gitUpdater, + nix-update-script, # nativeBuildInputs pkg-config, @@ -26,7 +26,7 @@ rustPlatform.buildRustPackage (finalAttrs: { pname = "stremio-linux-shell"; - version = "1.0.2"; + version = "1.1.2"; strictDeps = true; __structuredAttrs = true; @@ -35,17 +35,18 @@ rustPlatform.buildRustPackage (finalAttrs: { owner = "Stremio"; repo = "stremio-linux-shell"; tag = "v${finalAttrs.version}"; - hash = "sha256-NbzUAv/L8xzdepqn677nlROumjlliZIHzPXIToHHeTU="; + hash = "sha256-jo+9KDX/a46jPTmYhiFNgp5fDKhoAsML/+m7u3ituEQ="; }; - cargoHash = "sha256-yafkD7D0E+lbFV7MlLwQM4iWC8Glo/Tn2F+TFff6GoM="; + cargoHash = "sha256-hZ9neZD+aB7bth4UTsWJXIKGSbo/c3wZRtfOIp7LvwY="; + + patches = [ + ./out-path.patch + ]; postPatch = '' - substituteInPlace data/com.stremio.Stremio.service \ - --replace-fail "Exec=/app/bin/stremio" "Exec=$out/bin/stremio" - - substituteInPlace data/stremio.sh \ - --replace-fail "/app/libexec/stremio/stremio" "$out/libexec/stremio/stremio" + substituteInPlace data/com.stremio.Stremio.service data/stremio.sh build.rs \ + --subst-var out ''; nativeBuildInputs = [ @@ -67,9 +68,11 @@ rustPlatform.buildRustPackage (finalAttrs: { postInstall = '' install -Dm644 data/icons/com.stremio.Stremio.svg $out/share/icons/hicolor/scalable/apps/com.stremio.Stremio.svg install -Dm644 data/com.stremio.Stremio.desktop $out/share/applications/com.stremio.Stremio.desktop + install -Dm644 data/com.stremio.Stremio.metainfo.xml $out/share/metainfo/com.stremio.Stremio.metainfo.xml install -Dm644 data/com.stremio.Stremio.service $out/share/dbus-1/services/com.stremio.Stremio.service install -Dm644 data/server.js $out/libexec/stremio/server.js install -Dm755 data/stremio.sh $out/bin/stremio + install -Dm644 LICENSE $out/share/licenses/stremio/LICENSE mv $out/bin/stremio-linux-shell $out/libexec/stremio/stremio ''; @@ -93,7 +96,9 @@ rustPlatform.buildRustPackage (finalAttrs: { doInstallCheck = true; passthru = { - updateScript = gitUpdater { rev-prefix = "v"; }; + updateScript = nix-update-script { + extraArgs = [ "--version-regex=^v([0-9.]+)$" ]; + }; }; meta = { @@ -111,7 +116,10 @@ rustPlatform.buildRustPackage (finalAttrs: { fromSource obfuscatedCode # server.js ]; - maintainers = with lib.maintainers; [ thunze ]; + maintainers = with lib.maintainers; [ + thunze + fazzi + ]; platforms = lib.platforms.linux; mainProgram = "stremio"; }; diff --git a/pkgs/by-name/t3/t3code/package.nix b/pkgs/by-name/t3/t3code/package.nix index 835c397f59ca..6352c9047ff7 100644 --- a/pkgs/by-name/t3/t3code/package.nix +++ b/pkgs/by-name/t3/t3code/package.nix @@ -1,25 +1,8 @@ { - cctools, - copyDesktopItems, - electron_41, - fetchFromGitHub, - installShellFiles, lib, - libicns, + callPackage, + symlinkJoin, makeBinaryWrapper, - makeDesktopItem, - nix-update-script, - node-gyp, - nodejs, - python3, - stdenv, - writeDarwinBundle, - xcbuild, - fetchPnpmDeps, - pnpm_10, - pnpmConfigHook, - pnpmBuildHook, - cacert, enableAzureDevOps ? false, azure-cli, azure-cli-extensions, @@ -43,214 +26,59 @@ jujutsu, enableOpencode ? false, opencode, + t3code-unwrapped ? callPackage ./unwrapped.nix { }, }: -stdenv.mkDerivation ( - finalAttrs: - let - appName = "T3 Code (Alpha)"; - electron = electron_41; - pnpm = pnpm_10; - desktopIcon = - if stdenv.hostPlatform.isDarwin then - "assets/prod/black-macos-1024.png" - else - "assets/prod/black-universal-1024.png"; - - runtimePackages = - lib.optionals enableAzureDevOps [ - azure-cli.withExtensions - [ azure-cli-extensions.azure-devops ] - ] - ++ lib.optionals enableBitbucket [ bitbucket-cli ] - ++ lib.optionals enableClaude [ claude-code ] - ++ lib.optionals enableCodex [ codex ] - ++ lib.optionals enableCursor [ code-cursor ] - ++ lib.optionals enableCursorCli [ cursor-cli ] - ++ lib.optionals enableGitHub [ gh ] - ++ lib.optionals enableGit [ git ] - ++ lib.optionals enableGitLab [ glab ] - ++ lib.optionals enableJujutsu [ jujutsu ] - ++ lib.optionals enableOpencode [ opencode ]; - - runtimePathWrapperArgs = lib.optionalString (runtimePackages != [ ]) '' - \ - --prefix PATH : ${lib.makeBinPath runtimePackages} - ''; - in - { - pname = "t3code"; - version = "0.0.28"; - strictDeps = true; - __structuredAttrs = true; - - src = fetchFromGitHub { - owner = "pingdotgg"; - repo = "t3code"; - tag = "v${finalAttrs.version}"; - hash = "sha256-InVrw9L281QSSPrHSiZuivmb+FkYEd6FkHwHIAAxmGk="; - }; - - postPatch = '' - substituteInPlace apps/web/vite.config.ts \ - --replace-fail 'const host = process.env.HOST?.trim() || "localhost";' \ - 'const host = process.env.HOST?.trim() || "127.0.0.1";' - ''; - - nativeBuildInputs = [ - installShellFiles - makeBinaryWrapper - node-gyp - nodejs - python3 - pnpmConfigHook - pnpmBuildHook - pnpm - cacert +let + runtimePackages = + lib.optionals enableAzureDevOps [ + (azure-cli.withExtensions [ azure-cli-extensions.azure-devops ]) ] - ++ lib.optionals stdenv.hostPlatform.isLinux [ copyDesktopItems ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - cctools.libtool - libicns - writeDarwinBundle - xcbuild - ]; + ++ lib.optionals enableBitbucket [ bitbucket-cli ] + ++ lib.optionals enableClaude [ claude-code ] + ++ lib.optionals enableCodex [ codex ] + ++ lib.optionals enableCursor [ code-cursor ] + ++ lib.optionals enableCursorCli [ cursor-cli ] + ++ lib.optionals enableGitHub [ gh ] + ++ lib.optionals enableGit [ git ] + ++ lib.optionals enableGitLab [ glab ] + ++ lib.optionals enableJujutsu [ jujutsu ] + ++ lib.optionals enableOpencode [ opencode ]; - pnpmWorkspaces = [ - # `...` suffix is used to also include other workspace packages that are - # directly or indirectly depended on by the listed packages, such as - # `@t3tools/contracts` and `@t3tools/shared`. - "@t3tools/monorepo" - "t3..." - "@t3tools/desktop..." - "@t3tools/scripts..." - ]; +in +symlinkJoin { + pname = "t3code"; + inherit (t3code-unwrapped) version; + __structuredAttrs = true; + strictDeps = true; - pnpmDeps = fetchPnpmDeps { - inherit pnpm; - inherit (finalAttrs) - pname - version - src - pnpmWorkspaces - ; + paths = [ t3code-unwrapped ]; - fetcherVersion = 4; - hash = "sha256-+JqW/iI0wdRPxyL7y6ggD/+AvwwZXs9+fSUtG/SgW9s="; - }; + nativeBuildInputs = [ makeBinaryWrapper ]; - preBuild = '' - node scripts/update-release-package-versions.ts ${finalAttrs.version} + postBuild = lib.optionalString (runtimePackages != [ ]) '' + for program in "$out/bin"/*; do + wrapProgram "$program" \ + --prefix PATH : "${lib.makeBinPath runtimePackages}" + done + ''; - export npm_config_nodedir=${nodejs} - export ELECTRON_SKIP_BINARY_DOWNLOAD=1 - # Exclude the `@t3tools/monorepo` workspace from the pending rebuild since - # `vp config` needs git - pnpm rebuild --pending "''${pnpmInstallFlags[@]}" --filter '!@t3tools/monorepo' - ''; - - pnpmBuildScript = "build:desktop"; - - postBuild = '' - pnpm vp cache clean - ''; - - # Many dependencies vendors many prebuilt native artifacts for non-host - # platforms, and some of those binaries are statically linked. Let fixup - # handle wrappers, shebangs, and stripping, but skip patchelf on the - # vendored tree. - dontPatchELF = true; - # The tmpdir audit hook also shells out to patchelf while scanning every - # vendored ELF for leaked build paths. That produces spurious warnings on - # some dependencies' static foreign-platform binaries. - noAuditTmpdir = true; - - installPhase = '' - runHook preInstall - - mkdir --parents "$out"/libexec/t3code/apps/desktop "$out"/libexec/t3code/apps/server - cp --recursive --no-preserve=mode node_modules "$out"/libexec/t3code - cp --recursive --no-preserve=mode apps/server/{node_modules,dist} "$out"/libexec/t3code/apps/server - cp --recursive --no-preserve=mode \ - apps/desktop/{package.json,node_modules,dist-electron} \ - "$out"/libexec/t3code/apps/desktop - - mkdir --parents "$out"/libexec/t3code/apps/desktop/prod-resources - install --mode=444 ${desktopIcon} \ - "$out"/libexec/t3code/apps/desktop/prod-resources/icon.png - - find "$out"/libexec/t3code -xtype l -delete - - makeWrapper ${lib.getExe nodejs} "$out"/bin/t3 \ - --add-flags "$out"/libexec/t3code/apps/server/dist/bin.mjs ${runtimePathWrapperArgs} - - makeWrapper ${lib.getExe electron} "$out"/bin/t3code-desktop \ - --add-flags "$out"/libexec/t3code/apps/desktop \ - --inherit-argv0 ${runtimePathWrapperArgs} - '' - + lib.optionalString stdenv.hostPlatform.isDarwin '' - # node-pty tries to chmod this helper at runtime, but the Nix store is - # immutable by then. - find "$out"/libexec/t3code \ - -path '*/node-pty/prebuilds/darwin-*/spawn-helper' \ - -exec chmod 755 {} + - - mkdir --parents "$out/Applications/${appName}.app/Contents/"{MacOS,Resources} - png2icns \ - "$out/Applications/${appName}.app/Contents/Resources/t3code.icns" \ - ${desktopIcon} - - # writeDarwinBundle is a shebangless bash script; run it explicitly via - # stdenv.shell to avoid Darwin's intermittent ENOEXEC fallback issues. - ${stdenv.shell} ${lib.getExe writeDarwinBundle} \ - "$out" "${appName}" t3code-desktop t3code - '' - + '' - mkdir --parents \ - "$out"/share/icons/hicolor/scalable/apps - install --mode=444 ${desktopIcon} \ - "$out"/share/icons/t3code.png - install --mode=444 assets/prod/logo.svg \ - "$out"/share/icons/hicolor/scalable/apps/t3code.svg - - runHook postInstall - ''; - - postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' - for shell in bash fish zsh; do - installShellCompletion --cmd t3 --"$shell" <("$out/bin/t3" --completions "$shell") - done - ''; - - desktopItems = [ - (makeDesktopItem { - name = "t3code"; - desktopName = appName; - comment = "Minimal web GUI for coding agents"; - exec = "t3code-desktop %U"; - terminal = false; - icon = "t3code"; - startupWMClass = "t3code"; - categories = [ "Development" ]; - }) - ]; - - passthru = { - updateScript = nix-update-script { }; - }; - - meta = { - description = "Minimal web GUI for coding agents"; - homepage = "https://t3.codes"; - downloadPage = "https://t3.codes/download"; - changelog = "https://github.com/pingdotgg/t3code/releases/tag/${finalAttrs.src.tag}"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ - iamanaws - qweered - ]; - mainProgram = "t3code-desktop"; - inherit (nodejs.meta) platforms; - }; + passthru = { + unwrapped = t3code-unwrapped; } -) + // t3code-unwrapped.passthru; + + meta = { + # Manually inherit so that pos works + inherit (t3code-unwrapped.meta) + description + homepage + downloadPage + changelog + license + maintainers + mainProgram + platforms + ; + }; +} diff --git a/pkgs/by-name/t3/t3code/unwrapped.nix b/pkgs/by-name/t3/t3code/unwrapped.nix new file mode 100644 index 000000000000..eddfbebb6874 --- /dev/null +++ b/pkgs/by-name/t3/t3code/unwrapped.nix @@ -0,0 +1,216 @@ +{ + cctools, + copyDesktopItems, + electron_41, + fetchFromGitHub, + installShellFiles, + lib, + libicns, + makeBinaryWrapper, + makeDesktopItem, + nix-update-script, + node-gyp, + nodejs, + python3, + stdenv, + writeDarwinBundle, + xcbuild, + fetchPnpmDeps, + pnpm_10, + pnpmConfigHook, + pnpmBuildHook, + cacert, +}: + +stdenv.mkDerivation ( + finalAttrs: + let + appName = "T3 Code (Alpha)"; + electron = electron_41; + pnpm = pnpm_10; + desktopIcon = + if stdenv.hostPlatform.isDarwin then + "assets/prod/black-macos-1024.png" + else + "assets/prod/black-universal-1024.png"; + + in + { + pname = "t3code-unwrapped"; + version = "0.0.28"; + strictDeps = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "pingdotgg"; + repo = "t3code"; + tag = "v${finalAttrs.version}"; + hash = "sha256-InVrw9L281QSSPrHSiZuivmb+FkYEd6FkHwHIAAxmGk="; + }; + + postPatch = '' + substituteInPlace apps/web/vite.config.ts \ + --replace-fail 'const host = process.env.HOST?.trim() || "localhost";' \ + 'const host = process.env.HOST?.trim() || "127.0.0.1";' + ''; + + nativeBuildInputs = [ + installShellFiles + makeBinaryWrapper + node-gyp + nodejs + python3 + pnpmConfigHook + pnpmBuildHook + pnpm + cacert + ] + ++ lib.optionals stdenv.hostPlatform.isLinux [ copyDesktopItems ] + ++ lib.optionals stdenv.hostPlatform.isDarwin [ + cctools.libtool + libicns + writeDarwinBundle + xcbuild + ]; + + pnpmWorkspaces = [ + # `...` suffix is used to also include other workspace packages that are + # directly or indirectly depended on by the listed packages, such as + # `@t3tools/contracts` and `@t3tools/shared`. + "@t3tools/monorepo" + "t3..." + "@t3tools/desktop..." + "@t3tools/scripts..." + ]; + + pnpmDeps = fetchPnpmDeps { + inherit pnpm; + inherit (finalAttrs) + pname + version + src + pnpmWorkspaces + ; + + fetcherVersion = 4; + hash = "sha256-+JqW/iI0wdRPxyL7y6ggD/+AvwwZXs9+fSUtG/SgW9s="; + }; + + preBuild = '' + node scripts/update-release-package-versions.ts ${finalAttrs.version} + + export npm_config_nodedir=${nodejs} + export ELECTRON_SKIP_BINARY_DOWNLOAD=1 + # Exclude the `@t3tools/monorepo` workspace from the pending rebuild since + # `vp config` needs git + pnpm rebuild --pending "''${pnpmInstallFlags[@]}" --filter '!@t3tools/monorepo' + ''; + + pnpmBuildScript = "build:desktop"; + + postBuild = '' + pnpm vp cache clean + ''; + + # Many dependencies vendors many prebuilt native artifacts for non-host + # platforms, and some of those binaries are statically linked. Let fixup + # handle wrappers, shebangs, and stripping, but skip patchelf on the + # vendored tree. + dontPatchELF = true; + # The tmpdir audit hook also shells out to patchelf while scanning every + # vendored ELF for leaked build paths. That produces spurious warnings on + # some dependencies' static foreign-platform binaries. + noAuditTmpdir = true; + + installPhase = '' + runHook preInstall + + mkdir --parents "$out"/libexec/t3code/apps/desktop "$out"/libexec/t3code/apps/server + cp --recursive --no-preserve=mode node_modules "$out"/libexec/t3code + cp --recursive --no-preserve=mode apps/server/{node_modules,dist} "$out"/libexec/t3code/apps/server + cp --recursive --no-preserve=mode \ + apps/desktop/{package.json,node_modules,dist-electron} \ + "$out"/libexec/t3code/apps/desktop + + mkdir --parents "$out"/libexec/t3code/apps/desktop/prod-resources + install --mode=444 ${desktopIcon} \ + "$out"/libexec/t3code/apps/desktop/prod-resources/icon.png + + find "$out"/libexec/t3code -xtype l -delete + + makeWrapper ${lib.getExe nodejs} "$out"/bin/t3 \ + --add-flags "$out"/libexec/t3code/apps/server/dist/bin.mjs + + makeWrapper ${lib.getExe electron} "$out"/bin/t3code-desktop \ + --add-flags "$out"/libexec/t3code/apps/desktop \ + --inherit-argv0 + '' + + lib.optionalString stdenv.hostPlatform.isDarwin '' + # node-pty tries to chmod this helper at runtime, but the Nix store is + # immutable by then. + find "$out"/libexec/t3code \ + -path '*/node-pty/prebuilds/darwin-*/spawn-helper' \ + -exec chmod 755 {} + + + mkdir --parents "$out/Applications/${appName}.app/Contents/"{MacOS,Resources} + png2icns \ + "$out/Applications/${appName}.app/Contents/Resources/t3code.icns" \ + ${desktopIcon} + + # writeDarwinBundle is a shebangless bash script; run it explicitly via + # stdenv.shell to avoid Darwin's intermittent ENOEXEC fallback issues. + ${stdenv.shell} ${lib.getExe writeDarwinBundle} \ + "$out" "${appName}" t3code-desktop t3code + '' + + '' + mkdir --parents \ + "$out"/share/icons/hicolor/scalable/apps + install --mode=444 ${desktopIcon} \ + "$out"/share/icons/t3code.png + install --mode=444 assets/prod/logo.svg \ + "$out"/share/icons/hicolor/scalable/apps/t3code.svg + + runHook postInstall + ''; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + for shell in bash fish zsh; do + installShellCompletion --cmd t3 --"$shell" <("$out/bin/t3" --completions "$shell") + done + ''; + + desktopItems = [ + (makeDesktopItem { + name = "t3code"; + desktopName = appName; + comment = "Minimal web GUI for coding agents"; + exec = "t3code-desktop %U"; + terminal = false; + icon = "t3code"; + startupWMClass = "t3code"; + categories = [ "Development" ]; + }) + ]; + + passthru = { + updateScript = nix-update-script { + attrPath = "t3code.unwrapped"; + extraArgs = [ "--use-github-releases" ]; + }; + }; + + meta = { + description = "Minimal web GUI for coding agents"; + homepage = "https://t3.codes"; + downloadPage = "https://t3.codes/download"; + changelog = "https://github.com/pingdotgg/t3code/releases/tag/${finalAttrs.src.tag}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ + iamanaws + qweered + ]; + mainProgram = "t3code-desktop"; + inherit (nodejs.meta) platforms; + }; + } +) diff --git a/pkgs/by-name/vm/vmaware/package.nix b/pkgs/by-name/vm/vmaware/package.nix new file mode 100644 index 000000000000..1f99151f85bc --- /dev/null +++ b/pkgs/by-name/vm/vmaware/package.nix @@ -0,0 +1,40 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + nix-update-script, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "vmaware"; + version = "2.8.0"; + + strictDeps = true; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "kernelwernel"; + repo = "VMAware"; + tag = "v${finalAttrs.version}"; + hash = "sha256-KPjIk5nm27RcxGg3owfLVt+b1sL0y90IPPgeGv7fTgQ="; + }; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + "-DCMAKE_BUILD_TYPE=Release" + ]; + + passthru.updateScript = nix-update-script { }; + + meta = { + description = "Cross-platform C++ library and CLI tool for virtual machine detection"; + homepage = "https://github.com/kernelwernel/VMAware"; + changelog = "https://github.com/kernelwernel/VMAware/releases/tag/v${finalAttrs.version}"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ patrickdag ]; + platforms = lib.platforms.linux; + mainProgram = "vmaware"; + }; +}) diff --git a/pkgs/by-name/we/webex/package.nix b/pkgs/by-name/we/webex/package.nix index aef406ccd310..adaabe200cab 100644 --- a/pkgs/by-name/we/webex/package.nix +++ b/pkgs/by-name/we/webex/package.nix @@ -58,11 +58,11 @@ stdenv.mkDerivation rec { pname = "webex"; - version = "46.4.0.34752"; + version = "46.6.1.35236"; src = fetchurl { - url = "https://binaries.webex.com/WebexDesktop-Ubuntu-2004-Gold/20260422175501/Webex_ubuntu.7z"; - sha256 = "8b0711259237ae1009c05b012d44c5fc4e222005bf26d9ac1b84af063719d09a"; + url = "https://binaries.webex.com/WebexDesktop-Ubuntu-2004-Gold/20260625094602/Webex_ubuntu.7z"; + sha256 = "2420fda7e86883d53751c38a358dc61b3b9a731e20abda8b84dfcd367ecfc67f"; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/zs/zs/package.nix b/pkgs/by-name/zs/zs/package.nix index 1a07ada5be0d..1e4e4c56dab6 100644 --- a/pkgs/by-name/zs/zs/package.nix +++ b/pkgs/by-name/zs/zs/package.nix @@ -8,17 +8,17 @@ buildGoModule (finalAttrs: { pname = "zs"; - version = "0.4.1"; + version = "0.4.5"; src = fetchFromGitea { domain = "git.mills.io"; owner = "prologic"; repo = "zs"; rev = finalAttrs.version; - hash = "sha256-V8+p19kvVh64yCreNVp4RVdkJkjrq8Q5VbjaJWekZHY="; + hash = "sha256-NYnr0s730u4ICppPVZAAHB753XVooZtSSKIAp+z98Gw="; }; - vendorHash = "sha256-KXcYTYO4wnWOup5uJ6T+XwthX5l2FL02JyOt1Nv51Sg="; + vendorHash = "sha256-21UukhXVVj1AO+HlTlEpHkf5zLHA6dapjrOriVQd1jM="; ldflags = [ "-w" @@ -41,7 +41,7 @@ buildGoModule (finalAttrs: { homepage = "https://git.mills.io/prologic/zs"; changelog = "https://git.mills.io/prologic/zs/releases/tag/${finalAttrs.version}"; license = lib.licenses.mit; - maintainers = [ ]; + maintainers = with lib.maintainers; [ wariuccio ]; mainProgram = "zs"; }; }) diff --git a/pkgs/by-name/zs/zsh-artisan/package.nix b/pkgs/by-name/zs/zsh-artisan/package.nix new file mode 100644 index 000000000000..06ffdad5966d --- /dev/null +++ b/pkgs/by-name/zs/zsh-artisan/package.nix @@ -0,0 +1,38 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, +}: + +stdenvNoCC.mkDerivation { + pname = "zsh-artisan"; + version = "0-unstable-2025-12-08"; + + src = fetchFromGitHub { + owner = "jessarcher"; + repo = "zsh-artisan"; + rev = "4063d53fd310f715c7a8fb7d4e133812ef0b3128"; + hash = "sha256-O0Tn9zQWR0i7UWJ9VtOvxjqpqz9Sj7aKogdHZSOATC0="; + }; + + __structuredAttrs = true; + strictDeps = true; + installPhase = '' + runHook preInstall + + install -D artisan.plugin.zsh --target-directory=$out/share/zsh-artisan + + runHook postInstall + ''; + + meta = { + description = "Laravel artisan plugin for zsh"; + longDescription = '' + Laravel artisan plugin for zsh to help you to run artisan from anywhere in the project tree, + with auto-completion, and it can automatically open files created by artisan! + ''; + homepage = "https://github.com/jessarcher/zsh-artisan"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.FatBoyXPC ]; + }; +} diff --git a/pkgs/development/libraries/astal/source.nix b/pkgs/development/libraries/astal/source.nix index 7e51dc43b61e..f1f35969bd49 100644 --- a/pkgs/development/libraries/astal/source.nix +++ b/pkgs/development/libraries/astal/source.nix @@ -7,15 +7,15 @@ let originalDrv = fetchFromGitHub { owner = "Aylur"; repo = "astal"; - rev = "11842ae3045c1367fb3a62a2302dba0d9ccb4a33"; - hash = "sha256-FGZHls4eQJ8y3pvf5h3b83PfXlve3vD/Gj3g1qoAK6o="; + rev = "04454c22094401cc8e682cfe1f8ecc3194cac5f9"; + hash = "sha256-bXd034/ARs18ZQ7hWUAw9NwyfBmcKQws8DQHzwYp6jM="; }; in originalDrv.overrideAttrs ( final: prev: { name = "${final.pname}-${final.version}"; # fetchFromGitHub already defines name pname = "astal-source"; - version = "0-unstable-2026-06-21"; + version = "0-unstable-2026-07-03"; meta = prev.meta // { description = "Building blocks for creating custom desktop shells (source)";