Merge staging-next into staging

authored by nixpkgs-ci[bot] and committed by GitHub 4e99205f d1b01f0d

+582 -424
+1 -1
nixos/modules/services/monitoring/grafana-image-renderer.nix
··· 142 systemd.services.grafana-image-renderer = { 143 wantedBy = [ "multi-user.target" ]; 144 after = [ "network.target" ]; 145 - description = " A Grafana backend plugin that handles rendering of panels & dashboards to PNGs using headless browser (Chromium/Chrome)"; 146 147 environment = { 148 PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "true";
··· 142 systemd.services.grafana-image-renderer = { 143 wantedBy = [ "multi-user.target" ]; 144 after = [ "network.target" ]; 145 + description = "Grafana backend plugin that handles rendering of panels & dashboards to PNGs using headless browser (Chromium/Chrome)"; 146 147 environment = { 148 PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "true";
+1 -1
nixos/modules/services/networking/flannel.nix
··· 83 }; 84 85 network = lib.mkOption { 86 - description = " IPv4 network in CIDR format to use for the entire flannel network."; 87 type = lib.types.str; 88 }; 89
··· 83 }; 84 85 network = lib.mkOption { 86 + description = "IPv4 network in CIDR format to use for the entire flannel network"; 87 type = lib.types.str; 88 }; 89
+1 -1
nixos/modules/services/networking/quicktun.nix
··· 62 type = types.port; 63 default = qtcfg.localPort; 64 defaultText = lib.literalExpression "config.services.quicktun.<name>.localPort"; 65 - description = " remote UDP port"; 66 }; 67 68 remoteFloat = mkOption {
··· 62 type = types.port; 63 default = qtcfg.localPort; 64 defaultText = lib.literalExpression "config.services.quicktun.<name>.localPort"; 65 + description = "Remote UDP port"; 66 }; 67 68 remoteFloat = mkOption {
+1 -1
nixos/modules/services/web-apps/nextcloud.nix
··· 1559 ]); 1560 1561 meta.doc = ./nextcloud.md; 1562 - meta.maintainers = teams.nextcloud; 1563 }
··· 1559 ]); 1560 1561 meta.doc = ./nextcloud.md; 1562 + meta.maintainers = teams.nextcloud.members; 1563 }
+1 -1
pkgs/applications/editors/vscode/extensions/default.nix
··· 808 hash = "sha256-vVbaHSaBX6QzpnYMQlpPsJU1TQYJEBe8jq95muzwN0o="; 809 }; 810 meta = { 811 - description = " A solarized-palenight theme for vscode"; 812 downloadPage = "https://marketplace.visualstudio.com/items?itemName=BrandonKirbyson.solarized-palenight"; 813 homepage = "https://github.com/BrandonKirbyson/Solarized-Palenight"; 814 license = lib.licenses.mit;
··· 808 hash = "sha256-vVbaHSaBX6QzpnYMQlpPsJU1TQYJEBe8jq95muzwN0o="; 809 }; 810 meta = { 811 + description = "Solarized-palenight theme for vscode"; 812 downloadPage = "https://marketplace.visualstudio.com/items?itemName=BrandonKirbyson.solarized-palenight"; 813 homepage = "https://github.com/BrandonKirbyson/Solarized-Palenight"; 814 license = lib.licenses.mit;
+10 -10
pkgs/applications/networking/browsers/chromium/info.json
··· 1 { 2 "chromium": { 3 - "version": "138.0.7204.157", 4 "chromedriver": { 5 - "version": "138.0.7204.158", 6 - "hash_darwin": "sha256-rNd7glDAVNkd4CNn4k3rdpb//yD/ccpebnGhDv1EGb8=", 7 - "hash_darwin_aarch64": "sha256-oUMFW09mp2aUgplboMHaKvTVbKtqAy5C0KsA7DXbElc=" 8 }, 9 "deps": { 10 "depot_tools": { ··· 20 "DEPS": { 21 "src": { 22 "url": "https://chromium.googlesource.com/chromium/src.git", 23 - "rev": "e533e98b1267baa1f1c46d666b120e64e5146aa9", 24 - "hash": "sha256-LbZ8/6Lvz1p3ydRL4fXtd7RL426PU3jU01Hx+DP5QYQ=", 25 "recompress": true 26 }, 27 "src/third_party/clang-format/script": { ··· 246 }, 247 "src/third_party/devtools-frontend/src": { 248 "url": "https://chromium.googlesource.com/devtools/devtools-frontend", 249 - "rev": "4cca0aa00c4915947f1081014d5cfa2e83d357fa", 250 - "hash": "sha256-pVNr8NB5U/Uf688oOvPLpu81isCn/WmjJky01A000a4=" 251 }, 252 "src/third_party/dom_distiller_js/dist": { 253 "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git", ··· 796 }, 797 "src/v8": { 798 "url": "https://chromium.googlesource.com/v8/v8.git", 799 - "rev": "de9d0f8b56ae61896e4d2ac577fc589efb14f87d", 800 - "hash": "sha256-/T5fisjmN80bs3PtQrCRfH3Bo9dRSd3f+xpPLDh1RTY=" 801 } 802 } 803 },
··· 1 { 2 "chromium": { 3 + "version": "138.0.7204.168", 4 "chromedriver": { 5 + "version": "138.0.7204.169", 6 + "hash_darwin": "sha256-I87LWl+F8nmxpIUXUT+InLFf2nZ1Sh1nAtYVLCq9r5M=", 7 + "hash_darwin_aarch64": "sha256-6DoMi5gy68tuauNGvFl0QKPZnh5lY9S73+S+FNltDow=" 8 }, 9 "deps": { 10 "depot_tools": { ··· 20 "DEPS": { 21 "src": { 22 "url": "https://chromium.googlesource.com/chromium/src.git", 23 + "rev": "3e8d82e86e9f508e88ed406c2a24657a6c691d30", 24 + "hash": "sha256-6s9mkfckhibpb+L74oPZsgvOZZT58BeSo362t/s92UI=", 25 "recompress": true 26 }, 27 "src/third_party/clang-format/script": { ··· 246 }, 247 "src/third_party/devtools-frontend/src": { 248 "url": "https://chromium.googlesource.com/devtools/devtools-frontend", 249 + "rev": "a718e86b3dc6f1ba3c8cc8092cd79b401d428cfc", 250 + "hash": "sha256-50KQk54JwwRS3ENUjB0QedQYFuwmkv9oxytfuNDTVPo=" 251 }, 252 "src/third_party/dom_distiller_js/dist": { 253 "url": "https://chromium.googlesource.com/chromium/dom-distiller/dist.git", ··· 796 }, 797 "src/v8": { 798 "url": "https://chromium.googlesource.com/v8/v8.git", 799 + "rev": "f5036f509b5e147cccb298a069c40827f3d5edd6", 800 + "hash": "sha256-n4/Lf5ZawqUY0QHF2jYl3JPPx9Br/wzVmtqnMvq3Vzk=" 801 } 802 } 803 },
+3 -3
pkgs/applications/networking/instant-messengers/ferdium/default.nix
··· 15 ."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 16 hash = 17 { 18 - amd64-linux_hash = "sha256-e5O8cvQqvymHQiu7kY1AhKfoVOsDLYK8hDX+PKgZPFs="; 19 - arm64-linux_hash = "sha256-UskXFGxAFOrAK8bIXRHSwN0G1lakGyuRGXTYYRFKHaw="; 20 } 21 ."${arch}-linux_hash"; 22 in 23 mkFranzDerivation rec { 24 pname = "ferdium"; 25 name = "Ferdium"; 26 - version = "7.0.1"; 27 src = fetchurl { 28 url = "https://github.com/ferdium/ferdium-app/releases/download/v${version}/Ferdium-linux-${version}-${arch}.deb"; 29 inherit hash;
··· 15 ."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); 16 hash = 17 { 18 + amd64-linux_hash = "sha256-84W40++U+5/kTI84vGEqAVb93TCgFPduBkhMQG0yDRo="; 19 + arm64-linux_hash = "sha256-lOQW559aXXBIDuindVj8YBB8pzNAJPoTSJ70y1YnZQ4="; 20 } 21 ."${arch}-linux_hash"; 22 in 23 mkFranzDerivation rec { 24 pname = "ferdium"; 25 name = "Ferdium"; 26 + version = "7.1.0"; 27 src = fetchurl { 28 url = "https://github.com/ferdium/ferdium-app/releases/download/v${version}/Ferdium-linux-${version}-${arch}.deb"; 29 inherit hash;
-46
pkgs/by-name/ca/cargonode/package.nix
··· 1 - { 2 - lib, 3 - rustPlatform, 4 - fetchFromGitHub, 5 - pkg-config, 6 - }: 7 - 8 - rustPlatform.buildRustPackage rec { 9 - pname = "cargonode"; 10 - version = "0.1.3"; 11 - 12 - src = fetchFromGitHub { 13 - owner = "xosnrdev"; 14 - repo = "cargonode"; 15 - tag = version; 16 - hash = "sha256-O5+wAM99m1rgQpwz36mkHEU/FvGnY6hBCKPMIGXCeCU="; 17 - }; 18 - 19 - useFetchCargoVendor = true; 20 - cargoHash = "sha256-dYOdnyKdzL93kuSTUb+1vRqfDgkZLymaEZo9FUrR1JI="; 21 - 22 - checkFlags = [ 23 - # Skip test that requires network access 24 - "--skip test_download_file" 25 - "--skip test_extract_zip" 26 - "--skip test_invalid_download_url" 27 - "--skip test_create_package" 28 - "--skip test_init_package" 29 - ]; 30 - 31 - nativeBuildInputs = [ 32 - pkg-config 33 - ]; 34 - 35 - meta = { 36 - description = "Unified tooling for Node.js"; 37 - mainProgram = "cargonode"; 38 - homepage = "https://github.com/xosnrdev/cargonode?tab=readme-ov-file#readme"; 39 - changelog = "https://github.com/xosnrdev/cargonode/blob/${version}/CHANGELOG.md"; 40 - license = with lib.licenses; [ 41 - asl20 # or 42 - mit 43 - ]; 44 - maintainers = with lib.maintainers; [ xosnrdev ]; 45 - }; 46 - }
···
+1 -1
pkgs/by-name/ca/caroline/package.nix
··· 36 ]; 37 38 meta = with lib; { 39 - description = " A simple Cairo Chart Library for GTK and Vala"; 40 homepage = "https://github.com/dcharles525/Caroline"; 41 maintainers = with maintainers; [ grindhold ]; 42 license = licenses.mit;
··· 36 ]; 37 38 meta = with lib; { 39 + description = "Simple Cairo Chart Library for GTK and Vala"; 40 homepage = "https://github.com/dcharles525/Caroline"; 41 maintainers = with maintainers; [ grindhold ]; 42 license = licenses.mit;
+1 -1
pkgs/by-name/cb/cbftp/package.nix
··· 35 36 meta = with lib; { 37 homepage = "https://cbftp.eu/"; 38 - description = " An advanced multi-purpose FTP/FXP client"; 39 longDescription = '' 40 Cbftp is an advanced multi-purpose FTP/FXP client that focuses on 41 efficient large-scale data spreading, while also supporting most regular
··· 35 36 meta = with lib; { 37 homepage = "https://cbftp.eu/"; 38 + description = "Advanced multi-purpose FTP/FXP client"; 39 longDescription = '' 40 Cbftp is an advanced multi-purpose FTP/FXP client that focuses on 41 efficient large-scale data spreading, while also supporting most regular
+4 -4
pkgs/by-name/cl/clash-verge-rev/package.nix
··· 12 }: 13 let 14 pname = "clash-verge-rev"; 15 - version = "2.3.1"; 16 17 src = fetchFromGitHub { 18 owner = "clash-verge-rev"; 19 repo = "clash-verge-rev"; 20 tag = "v${version}"; 21 - hash = "sha256-NNP/NDC/Y4oBQftM6Z+pOFMEtdtvcIMYyY3sGwkpmrc="; 22 }; 23 24 src-service = fetchFromGitHub { ··· 29 }; 30 31 service-cargo-hash = "sha256-HET7/Lyc0Ip1f9WMVzUWr0QFuL8YN3dgZdK0adl/rYc="; 32 - pnpm-hash = "sha256-bhWaDP0gHJC6Mx9QFl4Ltk7y5jozt0eLtsPOWg821Yw="; 33 - vendor-hash = "sha256-UkiPJNr5leKuffrrh8n2uhCe/QVjIb4S9heZXP7oKqw="; 34 35 service = callPackage ./service.nix { 36 inherit
··· 12 }: 13 let 14 pname = "clash-verge-rev"; 15 + version = "2.3.2"; 16 17 src = fetchFromGitHub { 18 owner = "clash-verge-rev"; 19 repo = "clash-verge-rev"; 20 tag = "v${version}"; 21 + hash = "sha256-Wdd1iZspVcCxifCYvST4vlatQJXnyeZkm3Ifc8Q2xtM="; 22 }; 23 24 src-service = fetchFromGitHub { ··· 29 }; 30 31 service-cargo-hash = "sha256-HET7/Lyc0Ip1f9WMVzUWr0QFuL8YN3dgZdK0adl/rYc="; 32 + pnpm-hash = "sha256-yizUju+AswVkbfPMxNhHkrkKsFIe7yedEUqS15uy+V0="; 33 + vendor-hash = "sha256-u2y0fSx15Kbe3auL7c4enW0y6z4gjvTg4WIGkmXpMmI="; 34 35 service = callPackage ./service.nix { 36 inherit
+1 -1
pkgs/by-name/ea/each/package.nix
··· 19 cargoHash = "sha256-TfAT36/JeBjBxymnX1gIyCEPZcxTW4fPVIOhHF3z9wA="; 20 21 meta = with lib; { 22 - description = " A better way of working with structured data on the command line"; 23 mainProgram = "each"; 24 homepage = "https://github.com/arraypad/each"; 25 license = with licenses; [ mit ];
··· 19 cargoHash = "sha256-TfAT36/JeBjBxymnX1gIyCEPZcxTW4fPVIOhHF3z9wA="; 20 21 meta = with lib; { 22 + description = "A better way of working with structured data on the command line"; 23 mainProgram = "each"; 24 homepage = "https://github.com/arraypad/each"; 25 license = with licenses; [ mit ];
+4 -4
pkgs/by-name/fi/firefly-iii-data-importer/package.nix
··· 13 14 stdenvNoCC.mkDerivation (finalAttrs: { 15 pname = "firefly-iii-data-importer"; 16 - version = "1.7.6"; 17 18 src = fetchFromGitHub { 19 owner = "firefly-iii"; 20 repo = "data-importer"; 21 tag = "v${finalAttrs.version}"; 22 - hash = "sha256-2QjflXnusdqg63S1RgSbDsYHk9U4Xjf59wkvvo9n+Zo="; 23 }; 24 25 buildInputs = [ php84 ]; ··· 38 composerStrictValidation = true; 39 strictDeps = true; 40 41 - vendorHash = "sha256-j0KjjmaDyFBFWnz6e4Bkrb3gkitfSKsj9UB2j/G19do="; 42 43 npmDeps = fetchNpmDeps { 44 inherit (finalAttrs) src; 45 name = "${finalAttrs.pname}-npm-deps"; 46 - hash = "sha256-4bDSEGg5vGoam1PLRfaxJK0aQ+MLBTF+GP0AZQjHvVw="; 47 }; 48 49 composerRepository = php84.mkComposerRepository {
··· 13 14 stdenvNoCC.mkDerivation (finalAttrs: { 15 pname = "firefly-iii-data-importer"; 16 + version = "1.7.8"; 17 18 src = fetchFromGitHub { 19 owner = "firefly-iii"; 20 repo = "data-importer"; 21 tag = "v${finalAttrs.version}"; 22 + hash = "sha256-ZsrzB9jO9huMb7N6J+LPAKOGisIjuXaXAGhyewWC+cA="; 23 }; 24 25 buildInputs = [ php84 ]; ··· 38 composerStrictValidation = true; 39 strictDeps = true; 40 41 + vendorHash = "sha256-mgliWS/PrGGGc0we8/TH/7xitbXtZFCrFBF+ElNYXBA="; 42 43 npmDeps = fetchNpmDeps { 44 inherit (finalAttrs) src; 45 name = "${finalAttrs.pname}-npm-deps"; 46 + hash = "sha256-28Y8fM88Z83VVZMm3ZanP9CskUWCE3043lgoP7WhW/I="; 47 }; 48 49 composerRepository = php84.mkComposerRepository {
+1 -1
pkgs/by-name/ga/galerio/package.nix
··· 19 cargoHash = "sha256-jXUAjK/fqBaXaehcbFZU02w9/MTHluqKjtWGoAJa7ks="; 20 21 meta = with lib; { 22 - description = " A simple generator for self-contained HTML flexbox galleries"; 23 homepage = "https://github.com/dbrgn/galerio"; 24 maintainers = with maintainers; [ dbrgn ]; 25 license = with licenses; [
··· 19 cargoHash = "sha256-jXUAjK/fqBaXaehcbFZU02w9/MTHluqKjtWGoAJa7ks="; 20 21 meta = with lib; { 22 + description = "Simple generator for self-contained HTML flexbox galleries"; 23 homepage = "https://github.com/dbrgn/galerio"; 24 maintainers = with maintainers; [ dbrgn ]; 25 license = with licenses; [
+1 -1
pkgs/by-name/gi/gitlab-ci-ls/package.nix
··· 13 owner = "alesbrelih"; 14 repo = "gitlab-ci-ls"; 15 rev = "${version}"; 16 - hash = "sha256-yJA6xdeLJVPbHI2VdRAmsYvuULCJk40ntIJ0JIWsZds="; 17 }; 18 19 useFetchCargoVendor = true;
··· 13 owner = "alesbrelih"; 14 repo = "gitlab-ci-ls"; 15 rev = "${version}"; 16 + hash = "sha256-0AVi/DyaWh+dCXm/jUf3M63KjobJWCCKHDvm1xGUzCw="; 17 }; 18 19 useFetchCargoVendor = true;
+1 -1
pkgs/by-name/gi/gitlab-timelogs/package.nix
··· 29 cargoHash = "sha256-qSIRcf0HpRg1Eu12L6UcJajHBgjJgfhsHmF1oV1h8HM="; 30 31 meta = { 32 - description = " CLI utility to support you with your time logs in GitLab"; 33 mainProgram = "gitlab-timelogs"; 34 longDescription = '' 35 CLI utility to support you with your time logs in GitLab.
··· 29 cargoHash = "sha256-qSIRcf0HpRg1Eu12L6UcJajHBgjJgfhsHmF1oV1h8HM="; 30 31 meta = { 32 + description = "CLI utility to support you with your time logs in GitLab"; 33 mainProgram = "gitlab-timelogs"; 34 longDescription = '' 35 CLI utility to support you with your time logs in GitLab.
+39
pkgs/by-name/go/go-i18n/package.nix
···
··· 1 + { 2 + lib, 3 + buildGoModule, 4 + fetchFromGitHub, 5 + }: 6 + buildGoModule (finalAttrs: { 7 + pname = "go-i18n"; 8 + version = "2.6.0"; 9 + 10 + src = fetchFromGitHub { 11 + owner = "nicksnyder"; 12 + repo = "go-i18n"; 13 + tag = "v${finalAttrs.version}"; 14 + hash = "sha256-UrSECFbpCIg5avJ+f3LkJy/ncZFHa4q8sDqDIQ3YZJM="; 15 + }; 16 + 17 + vendorHash = "sha256-4Kbdj2D6eJTjZtdsFMNES3AEZ0PEi01HS73uFNZsFMA="; 18 + 19 + subPackages = [ 20 + "goi18n" 21 + ]; 22 + 23 + env.CGO_ENABLED = 0; 24 + 25 + doCheck = true; 26 + 27 + meta = { 28 + changelog = "https://github.com/nicksnyder/go-i18n/releases/tag/${finalAttrs.src.tag}"; 29 + description = "Translate your Go program into multiple languages"; 30 + longDescription = '' 31 + goi18n is a tool that lets you extract messages from all your Go source files, 32 + generates new language files. 33 + ''; 34 + homepage = "https://github.com/nicksnyder/go-i18n"; 35 + license = lib.licenses.mit; 36 + maintainers = with lib.maintainers; [ videl ]; 37 + mainProgram = "goi18n"; 38 + }; 39 + })
+1 -1
pkgs/by-name/go/go-protobuf/package.nix
··· 19 20 meta = with lib; { 21 homepage = "https://github.com/golang/protobuf"; 22 - description = " Go bindings for protocol buffer"; 23 maintainers = with maintainers; [ lewo ]; 24 license = licenses.bsd3; 25 };
··· 19 20 meta = with lib; { 21 homepage = "https://github.com/golang/protobuf"; 22 + description = "Go bindings for protocol buffer"; 23 maintainers = with maintainers; [ lewo ]; 24 license = licenses.bsd3; 25 };
+5 -5
pkgs/by-name/go/google-chrome/package.nix
··· 171 172 linux = stdenvNoCC.mkDerivation (finalAttrs: { 173 inherit pname meta passthru; 174 - version = "138.0.7204.157"; 175 176 src = fetchurl { 177 url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb"; 178 - hash = "sha256-QmWevU4cYmUc6lUbFG4bQ1aKFuUyIUorJjMMF14bzZ4="; 179 }; 180 181 # With strictDeps on, some shebangs were not being patched correctly ··· 276 277 darwin = stdenvNoCC.mkDerivation (finalAttrs: { 278 inherit pname meta passthru; 279 - version = "138.0.7204.158"; 280 281 src = fetchurl { 282 - url = "http://dl.google.com/release2/chrome/adskeulizkrq3h2yvus65pybna6a_138.0.7204.158/GoogleChrome-138.0.7204.158.dmg"; 283 - hash = "sha256-D7Iik+R9PIfvL1QEASfip5M2pE+nco90dKet4Fehq/8="; 284 }; 285 286 dontPatch = true;
··· 171 172 linux = stdenvNoCC.mkDerivation (finalAttrs: { 173 inherit pname meta passthru; 174 + version = "138.0.7204.168"; 175 176 src = fetchurl { 177 url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb"; 178 + hash = "sha256-vfMEQOh9VZsLElld8qfeLY9B53z1AqyRTQ/7p2cxHYg="; 179 }; 180 181 # With strictDeps on, some shebangs were not being patched correctly ··· 276 277 darwin = stdenvNoCC.mkDerivation (finalAttrs: { 278 inherit pname meta passthru; 279 + version = "138.0.7204.169"; 280 281 src = fetchurl { 282 + url = "http://dl.google.com/release2/chrome/acwjggvog6ot2icovazewas35mgq_138.0.7204.169/GoogleChrome-138.0.7204.169.dmg"; 283 + hash = "sha256-58/hSldBZ3gtzjY0GCt6GkxUX97GORwTh5uEfEjxM3A="; 284 }; 285 286 dontPatch = true;
+1 -1
pkgs/by-name/gt/gtg/package.nix
··· 79 checkPhase = "xvfb-run pytest ../tests/"; 80 81 meta = with lib; { 82 - description = " A personal tasks and TODO-list items organizer"; 83 mainProgram = "gtg"; 84 longDescription = '' 85 "Getting Things GNOME" (GTG) is a personal tasks and ToDo list organizer inspired by the "Getting Things Done" (GTD) methodology.
··· 79 checkPhase = "xvfb-run pytest ../tests/"; 80 81 meta = with lib; { 82 + description = "Personal tasks and TODO-list items organizer"; 83 mainProgram = "gtg"; 84 longDescription = '' 85 "Getting Things GNOME" (GTG) is a personal tasks and ToDo list organizer inspired by the "Getting Things Done" (GTD) methodology.
+1 -1
pkgs/by-name/jw/jwx/package.nix
··· 20 sourceRoot = "${finalAttrs.src.name}/cmd/jwx"; 21 22 meta = { 23 - description = " Implementation of various JWx (Javascript Object Signing and Encryption/JOSE) technologies"; 24 mainProgram = "jwx"; 25 homepage = "https://github.com/lestrrat-go/jwx"; 26 changelog = "https://github.com/lestrrat-go/jwx/blob/v${finalAttrs.version}/Changes";
··· 20 sourceRoot = "${finalAttrs.src.name}/cmd/jwx"; 21 22 meta = { 23 + description = "Implementation of various JWx (Javascript Object Signing and Encryption/JOSE) technologies"; 24 mainProgram = "jwx"; 25 homepage = "https://github.com/lestrrat-go/jwx"; 26 changelog = "https://github.com/lestrrat-go/jwx/blob/v${finalAttrs.version}/Changes";
+1 -1
pkgs/by-name/kn/knewave/package.nix
··· 25 ''; 26 27 meta = { 28 - description = " A bold, painted face for the rocker within"; 29 longDescription = '' 30 Knewave is bold, painted face. Get it? Git it. 31 '';
··· 25 ''; 26 27 meta = { 28 + description = "Bold, painted face for the rocker within"; 29 longDescription = '' 30 Knewave is bold, painted face. Get it? Git it. 31 '';
+1 -1
pkgs/by-name/le/lessc/plugins/clean-css/default.nix
··· 54 55 meta = { 56 homepage = "https://github.com/less/less-plugin-clean-css"; 57 - description = " Post-process and compress CSS using clean-css"; 58 license = lib.licenses.asl20; 59 maintainers = with lib.maintainers; [ lelgenio ]; 60 };
··· 54 55 meta = { 56 homepage = "https://github.com/less/less-plugin-clean-css"; 57 + description = "Post-process and compress CSS using clean-css"; 58 license = lib.licenses.asl20; 59 maintainers = with lib.maintainers; [ lelgenio ]; 60 };
+1 -1
pkgs/by-name/li/libmsym/package.nix
··· 19 nativeBuildInputs = [ cmake ]; 20 21 meta = with lib; { 22 - description = " molecular point group symmetry lib"; 23 homepage = "https://github.com/mcodev31/libmsym"; 24 license = licenses.mit; 25 platforms = platforms.linux;
··· 19 nativeBuildInputs = [ cmake ]; 20 21 meta = with lib; { 22 + description = "Molecular point group symmetry lib"; 23 homepage = "https://github.com/mcodev31/libmsym"; 24 license = licenses.mit; 25 platforms = platforms.linux;
+1 -1
pkgs/by-name/lv/lv_font_conv/package.nix
··· 27 meta = { 28 description = "Converts TTF/WOFF fonts to compact bitmap format"; 29 mainProgram = "lv_font_conv"; 30 - homepage = " https://lvgl.io/tools/fontconverter"; 31 license = lib.licenses.mit; 32 maintainers = with lib.maintainers; [ pyrox0 ]; 33 };
··· 27 meta = { 28 description = "Converts TTF/WOFF fonts to compact bitmap format"; 29 mainProgram = "lv_font_conv"; 30 + homepage = "https://lvgl.io/tools/fontconverter"; 31 license = lib.licenses.mit; 32 maintainers = with lib.maintainers; [ pyrox0 ]; 33 };
+13 -3
pkgs/by-name/mb/mbake/package.nix
··· 1 { 2 lib, 3 fetchFromGitHub, 4 python3Packages, 5 versionCheckHook, 6 }: 7 8 python3Packages.buildPythonApplication rec { 9 pname = "mbake"; 10 - version = "1.2.4"; 11 pyproject = true; 12 13 src = fetchFromGitHub { 14 owner = "EbodShojaei"; 15 repo = "bake"; 16 tag = "v${version}"; 17 - hash = "sha256-RzM3HC3lYq93mngpqNCohcPMISWQ4+Lwa1V88S0O0To="; 18 }; 19 20 build-system = [ 21 python3Packages.hatchling 22 ]; 23 ··· 26 typer 27 ]; 28 29 nativeCheckInputs = [ 30 python3Packages.pytestCheckHook 31 versionCheckHook 32 ]; 33 versionCheckProgramArg = "--version"; 34 35 - pythonImportsCheck = [ "bake" ]; 36 37 meta = { 38 description = "Makefile formatter and linter";
··· 1 { 2 + stdenv, 3 lib, 4 fetchFromGitHub, 5 + installShellFiles, 6 python3Packages, 7 versionCheckHook, 8 }: 9 10 python3Packages.buildPythonApplication rec { 11 pname = "mbake"; 12 + version = "1.3.1"; 13 pyproject = true; 14 15 src = fetchFromGitHub { 16 owner = "EbodShojaei"; 17 repo = "bake"; 18 tag = "v${version}"; 19 + hash = "sha256-gQsie4/iUIe4g6ZH8bL33xW6CNxSg/sh429P4Xv0GjQ="; 20 }; 21 22 build-system = [ 23 + installShellFiles 24 python3Packages.hatchling 25 ]; 26 ··· 29 typer 30 ]; 31 32 + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' 33 + installShellCompletion --cmd mbake \ 34 + --bash <($out/bin/mbake completions bash) \ 35 + --fish <($out/bin/mbake completions fish) \ 36 + --zsh <($out/bin/mbake completions zsh) 37 + ''; 38 + 39 nativeCheckInputs = [ 40 python3Packages.pytestCheckHook 41 versionCheckHook 42 ]; 43 versionCheckProgramArg = "--version"; 44 45 + pythonImportsCheck = [ "mbake" ]; 46 47 meta = { 48 description = "Makefile formatter and linter";
+1
pkgs/by-name/op/openswitcher/package.nix
··· 79 homepage = "https://openswitcher.org/"; 80 license = licenses.gpl3Only; 81 maintainers = with maintainers; [ hexa ]; 82 }; 83 }
··· 79 homepage = "https://openswitcher.org/"; 80 license = licenses.gpl3Only; 81 maintainers = with maintainers; [ hexa ]; 82 + mainProgram = "switcher-control"; 83 }; 84 }
+62
pkgs/by-name/os/oss-rebuild/package.nix
···
··· 1 + { 2 + lib, 3 + buildGoModule, 4 + fetchFromGitHub, 5 + }: 6 + 7 + buildGoModule (finalAttrs: { 8 + pname = "oss-rebuild"; 9 + version = "0-unstable-2025-07-22"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "google"; 13 + repo = "oss-rebuild"; 14 + rev = "6f57c474a8faf3012204792af8ef5d8b6fae2fd1"; 15 + hash = "sha256-H8HkhQcRt6C+lxoMVLzRfhv60Mq8TAf83ctOBRbx4p0="; 16 + }; 17 + 18 + proxyVendor = true; 19 + vendorHash = "sha256-H6ZMop3tXwpzvjoLWAaovP8UHSYLLFxvSz2jhz8tj/g="; 20 + 21 + subPackages = [ 22 + "cmd/oss-rebuild" 23 + "cmd/proxy" 24 + "cmd/stabilize" 25 + "cmd/timewarp" 26 + # There are other tools in available, but without documentation. 27 + ]; 28 + 29 + ldflags = [ "-s" ]; 30 + 31 + env.CGO_ENABLED = 0; 32 + 33 + meta = { 34 + description = "Securing open-source package ecosystems by originating, validating, and augmenting build attestations"; 35 + longDescription = '' 36 + OSS Rebuild aims to apply reproducible build concepts at low-cost and high-scale for open-source package ecosystems. 37 + 38 + Rebuilds are derived by analyzing the published metadata and artifacts and are evaluated against the upstream package 39 + versions. When successful, build attestations are published for the upstream artifacts, verifying the integrity of 40 + the upstream artifact and eliminating many possible sources of compromise. 41 + 42 + [`oss-rebuild`](https://github.com/google/oss-rebuild?tab=readme-ov-file#usage) CLI tool provides access to OSS Rebuild 43 + data. 44 + 45 + [`proxy`](https://github.com/google/oss-rebuild/blob/main/cmd/proxy/README.md) is a transparent HTTP(S) proxy that 46 + intercepts and records network activity. It's primarily used within OSS Rebuild to monitor network interactions during 47 + the build process, helping to passively enumerate remote dependencies and to identify suspect build behavior. 48 + 49 + [`stabilize`](https://github.com/google/oss-rebuild/blob/main/cmd/stabilize/README.md) is a command-line tool that 50 + removes non-deterministic metadata from software packages to facilitate functional comparison of artifacts. 51 + 52 + [`timewarp`](https://github.com/google/oss-rebuild/blob/main/cmd/timewarp/README.md) is a registry-fronting HTTP 53 + service that filters returned content by time. This tool allows you to transparently adjust the data returned to 54 + package manager clients to reflect the state of a registry at a given point in time (especially useful for reproducing 55 + prior builds). 56 + ''; 57 + homepage = "https://github.com/google/oss-rebuild"; 58 + license = lib.licenses.asl20; 59 + maintainers = with lib.maintainers; [ katexochen ]; 60 + mainProgram = "oss-rebuild"; 61 + }; 62 + })
+2 -2
pkgs/by-name/pl/plutovg/package.nix
··· 6 }: 7 stdenv.mkDerivation (finalAttrs: { 8 pname = "plutovg"; 9 - version = "1.2.0"; 10 11 src = fetchFromGitHub { 12 owner = "sammycage"; 13 repo = "plutovg"; 14 tag = "v${finalAttrs.version}"; 15 - hash = "sha256-+LJhQb8uZ7iPNcdhL40LLk/6mR97VCgDtYgnj2R8vno="; 16 }; 17 18 cmakeFlags = [
··· 6 }: 7 stdenv.mkDerivation (finalAttrs: { 8 pname = "plutovg"; 9 + version = "1.3.0"; 10 11 src = fetchFromGitHub { 12 owner = "sammycage"; 13 repo = "plutovg"; 14 tag = "v${finalAttrs.version}"; 15 + hash = "sha256-9h7UvUSJLBRs4jD0/qTs3nzMBZKyyZg2T9eVEIpSYMg="; 16 }; 17 18 cmakeFlags = [
-2
pkgs/by-name/pm/pmix/package.nix
··· 15 hwloc, 16 munge, 17 zlib, 18 - pandoc, 19 gitMinimal, 20 }: 21 ··· 39 ''; 40 41 nativeBuildInputs = [ 42 - pandoc 43 perl 44 autoconf 45 automake
··· 15 hwloc, 16 munge, 17 zlib, 18 gitMinimal, 19 }: 20 ··· 38 ''; 39 40 nativeBuildInputs = [ 41 perl 42 autoconf 43 automake
+1 -1
pkgs/by-name/pr/prometheus-klipper-exporter/package.nix
··· 29 }; 30 31 meta = with lib; { 32 - description = " Prometheus Exporter for Klipper "; 33 homepage = "https://github.com/scross01/prometheus-klipper-exporter"; 34 license = licenses.mit; 35 maintainers = with maintainers; [ wulfsta ];
··· 29 }; 30 31 meta = with lib; { 32 + description = "Prometheus Exporter for Klipper"; 33 homepage = "https://github.com/scross01/prometheus-klipper-exporter"; 34 license = licenses.mit; 35 maintainers = with maintainers; [ wulfsta ];
+1 -1
pkgs/by-name/pu/pulsarctl/package.nix
··· 67 }; 68 69 meta = with lib; { 70 - description = " a CLI for Apache Pulsar written in Go"; 71 homepage = "https://github.com/streamnative/pulsarctl"; 72 license = with licenses; [ asl20 ]; 73 platforms = platforms.unix;
··· 67 }; 68 69 meta = with lib; { 70 + description = "CLI for Apache Pulsar written in Go"; 71 homepage = "https://github.com/streamnative/pulsarctl"; 72 license = with licenses; [ asl20 ]; 73 platforms = platforms.unix;
+2 -2
pkgs/by-name/ri/rime-wanxiang/package.nix
··· 9 10 stdenvNoCC.mkDerivation (finalAttrs: { 11 pname = "rime-wanxiang"; 12 - version = "8.7.7"; 13 14 src = fetchFromGitHub { 15 owner = "amzxyz"; 16 repo = "rime_wanxiang"; 17 tag = "v" + finalAttrs.version; 18 - hash = "sha256-X64kxr93V0ilAefmQcJgMCegdzpoNoI0TuMdkYRG66I="; 19 }; 20 21 nativeBuildInputs = [
··· 9 10 stdenvNoCC.mkDerivation (finalAttrs: { 11 pname = "rime-wanxiang"; 12 + version = "9.1.3"; 13 14 src = fetchFromGitHub { 15 owner = "amzxyz"; 16 repo = "rime_wanxiang"; 17 tag = "v" + finalAttrs.version; 18 + hash = "sha256-jcYvDktk1zj32i92LQKYu35Br2uPRcoNtoyPKo3hP/Y="; 19 }; 20 21 nativeBuildInputs = [
+1 -1
pkgs/by-name/ro/roxterm/package.nix
··· 74 75 meta = { 76 homepage = "https://github.com/realh/roxterm"; 77 - description = " A highly configurable terminal emulator"; 78 longDescription = '' 79 ROXTerm is a terminal emulator intended to provide similar features to 80 gnome-terminal, based on the same VTE library. It was originally designed
··· 74 75 meta = { 76 homepage = "https://github.com/realh/roxterm"; 77 + description = "Highly configurable terminal emulator"; 78 longDescription = '' 79 ROXTerm is a terminal emulator intended to provide similar features to 80 gnome-terminal, based on the same VTE library. It was originally designed
+9 -3
pkgs/by-name/sn/snphost/package.nix
··· 10 nix-update-script, 11 findutils, 12 installShellFiles, 13 }: 14 15 rustPlatform.buildRustPackage rec { 16 pname = "snphost"; 17 - version = "0.6.0"; 18 19 src = fetchFromGitHub { 20 owner = "virtee"; 21 repo = "snphost"; 22 tag = "v${version}"; 23 - hash = "sha256-sBEIQQ0vfwQh5eqsC6x37VDlbXuBUybRh4LNUjfEJ5A="; 24 }; 25 26 useFetchCargoVendor = true; 27 - cargoHash = "sha256-aNXv6Av3JvnTqTbxX70FmwEF4jJaQmD6FHjvh7om9iE="; 28 29 nativeBuildInputs = [ 30 asciidoctor ··· 39 zlib 40 ]; 41 42 # man page is placed in cargo's $OUT_DIR, which is randomized. 43 # Contacted upstream about it, for now use find to locate it. 44 postInstall = '' 45 installManPage $(find target/x86_64-unknown-linux-gnu/release/build -name "snphost.1") 46 ''; 47 48 passthru.updateScript = nix-update-script { }; 49
··· 10 nix-update-script, 11 findutils, 12 installShellFiles, 13 + versionCheckHook, 14 }: 15 16 rustPlatform.buildRustPackage rec { 17 pname = "snphost"; 18 + version = "0.6.1"; 19 20 src = fetchFromGitHub { 21 owner = "virtee"; 22 repo = "snphost"; 23 tag = "v${version}"; 24 + hash = "sha256-FvHawwoIqCiZ+Jm1itDWspaI+vDN6xDfeI11KoiO/DU="; 25 }; 26 27 useFetchCargoVendor = true; 28 + cargoHash = "sha256-ZOXOfFYingTBq5LfJqHRf6ZdvrdY1Zve/ZMnAE25kPM="; 29 30 nativeBuildInputs = [ 31 asciidoctor ··· 40 zlib 41 ]; 42 43 + env.OPENSSL_NO_VENDOR = true; 44 + 45 # man page is placed in cargo's $OUT_DIR, which is randomized. 46 # Contacted upstream about it, for now use find to locate it. 47 postInstall = '' 48 installManPage $(find target/x86_64-unknown-linux-gnu/release/build -name "snphost.1") 49 ''; 50 + 51 + nativeInstallCheckInputs = [ versionCheckHook ]; 52 + doInstallCheck = true; 53 54 passthru.updateScript = nix-update-script { }; 55
+1 -1
pkgs/by-name/to/tomato-c/package.nix
··· 67 68 meta = { 69 homepage = "https://github.com/gabrielzschmitz/Tomato.C"; 70 - description = " A pomodoro timer written in pure C"; 71 license = with lib.licenses; [ gpl3Plus ]; 72 maintainers = with lib.maintainers; [ ]; 73 mainProgram = "tomato";
··· 67 68 meta = { 69 homepage = "https://github.com/gabrielzschmitz/Tomato.C"; 70 + description = "Pomodoro timer written in pure C"; 71 license = with lib.licenses; [ gpl3Plus ]; 72 maintainers = with lib.maintainers; [ ]; 73 mainProgram = "tomato";
+1 -1
pkgs/by-name/tr/treedome/package.nix
··· 74 75 meta = { 76 description = "Local-first, encrypted, note taking application organized in tree-like structures"; 77 - homepage = " https://codeberg.org/solver-orgz/treedome"; 78 license = lib.licenses.agpl3Plus; 79 platforms = [ "x86_64-linux" ]; 80 mainProgram = "treedome";
··· 74 75 meta = { 76 description = "Local-first, encrypted, note taking application organized in tree-like structures"; 77 + homepage = "https://codeberg.org/solver-orgz/treedome"; 78 license = lib.licenses.agpl3Plus; 79 platforms = [ "x86_64-linux" ]; 80 mainProgram = "treedome";
+55
pkgs/by-name/va/valeronoi/package.nix
···
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + boost, 6 + cgal, 7 + cmake, 8 + gpp, 9 + mpfr, 10 + qt6Packages, 11 + }: 12 + 13 + stdenv.mkDerivation (finalAttrs: { 14 + pname = "valeronoi"; 15 + version = "0.2.2"; 16 + 17 + src = fetchFromGitHub { 18 + owner = "ccoors"; 19 + repo = "valeronoi"; 20 + tag = "v${finalAttrs.version}"; 21 + hash = "sha256-5KXVSIqWDkXnpO+qgBzFtbJb444RW8dIVXp8Y/aAOrk="; 22 + }; 23 + 24 + buildInputs = 25 + [ 26 + boost 27 + cgal 28 + gpp 29 + mpfr 30 + ] 31 + ++ (with qt6Packages; [ 32 + qtbase 33 + qtimageformats 34 + qtsvg 35 + ]); 36 + 37 + nativeBuildInputs = [ 38 + cmake 39 + qt6Packages.wrapQtAppsHook 40 + ]; 41 + 42 + doCheck = true; 43 + 44 + meta = { 45 + homepage = "https://github.com/ccoors/Valeronoi/"; 46 + description = "WiFi mapping companion app for Valetudo"; 47 + license = lib.licenses.gpl3Only; 48 + platforms = [ "x86_64-linux" ]; 49 + maintainers = with lib.maintainers; [ 50 + nova-madeline 51 + maeve 52 + ]; 53 + mainProgram = "valeronoi"; 54 + }; 55 + })
+1 -1
pkgs/by-name/vu/vulkan-volk/package.nix
··· 23 cmakeFlags = [ "-DVOLK_INSTALL=1" ]; 24 25 meta = with lib; { 26 - description = " Meta loader for Vulkan API"; 27 homepage = "https://github.com/zeux/volk"; 28 platforms = platforms.all; 29 license = licenses.mit;
··· 23 cmakeFlags = [ "-DVOLK_INSTALL=1" ]; 24 25 meta = with lib; { 26 + description = "Meta loader for Vulkan API"; 27 homepage = "https://github.com/zeux/volk"; 28 platforms = platforms.all; 29 license = licenses.mit;
+28
pkgs/by-name/xb/xbyak/package.nix
···
··· 1 + { 2 + lib, 3 + stdenv, 4 + fetchFromGitHub, 5 + cmake, 6 + }: 7 + stdenv.mkDerivation (finalAttrs: { 8 + pname = "xbyak"; 9 + version = "7.28"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "herumi"; 13 + repo = "xbyak"; 14 + tag = "v${finalAttrs.version}"; 15 + hash = "sha256-jBxpNeA2Ed13zpJ++ODsjKgSC14z/RTFX3px4SapeS0="; 16 + }; 17 + 18 + nativeBuildInputs = [ cmake ]; 19 + 20 + meta = { 21 + description = "JIT assembler for x86/x64 architectures supporting advanced instruction sets up to AVX10.2"; 22 + homepage = "https://github.com/herumi/xbyak"; 23 + changelog = "https://github.com/herumi/xbyak/blob/v${finalAttrs.version}/doc/changelog.md"; 24 + license = lib.licenses.bsd3; 25 + platforms = lib.platforms.all; 26 + maintainers = [ lib.maintainers.ryand56 ]; 27 + }; 28 + })
+1 -1
pkgs/development/compilers/elm/packages/node/default.nix
··· 53 with lib; 54 nodePkgs."@dillonkearns/elm-graphql".meta 55 // { 56 - description = " Autogenerate type-safe GraphQL queries in Elm"; 57 license = licenses.bsd3; 58 maintainers = [ maintainers.pedrohlc ]; 59 };
··· 53 with lib; 54 nodePkgs."@dillonkearns/elm-graphql".meta 55 // { 56 + description = "Autogenerate type-safe GraphQL queries in Elm"; 57 license = licenses.bsd3; 58 maintainers = [ maintainers.pedrohlc ]; 59 };
+226 -158
pkgs/development/compilers/flutter/update/update.py
··· 1 #! /usr/bin/env nix-shell 2 #! nix-shell -i python3 -p python3Packages.pyyaml 3 4 - import shutil 5 import json 6 - import urllib.request 7 - import tempfile 8 - from sys import exit 9 import os 10 - import subprocess 11 import re 12 - import json 13 - import argparse 14 import yaml 15 - import json 16 17 - FAKE_HASH = 'sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=' 18 19 - NIXPKGS_ROOT = subprocess.Popen(['git', 20 - 'rev-parse', 21 - '--show-toplevel'], 22 - stdout=subprocess.PIPE, 23 - text=True).communicate()[0].strip() 24 25 26 def load_code(name, **kwargs): 27 - with open(f"{NIXPKGS_ROOT}/pkgs/development/compilers/flutter/update/{name}.in", 'r') as f: 28 code = f.read() 29 30 - for (key, value) in kwargs.items(): 31 code = code.replace(f"@{key}@", value) 32 33 return code ··· 35 36 # Return out paths 37 def nix_build(code): 38 - temp = tempfile.NamedTemporaryFile(mode='w') 39 - temp.write(code) 40 - temp.flush() 41 - os.fsync(temp.fileno()) 42 43 process = subprocess.Popen( 44 [ ··· 46 "--impure", 47 "--no-out-link", 48 "--expr", 49 - f"with import {NIXPKGS_ROOT} {{}}; callPackage {temp.name} {{}}"], 50 stdout=subprocess.PIPE, 51 - text=True) 52 53 process.wait() 54 - temp.close() 55 return process.stdout.read().strip().splitlines()[0] 56 57 58 # Return errors 59 def nix_build_to_fail(code): 60 - temp = tempfile.NamedTemporaryFile(mode='w') 61 - temp.write(code) 62 - temp.flush() 63 - os.fsync(temp.fileno()) 64 65 process = subprocess.Popen( 66 [ ··· 69 "--keep-going", 70 "--no-link", 71 "--expr", 72 - f"with import {NIXPKGS_ROOT} {{}}; callPackage {temp.name} {{}}"], 73 stderr=subprocess.PIPE, 74 - text=True) 75 76 stderr = "" 77 while True: ··· 82 print(line.strip()) 83 84 process.wait() 85 - temp.close() 86 return stderr 87 88 89 def get_engine_hashes(engine_version, flutter_version): 90 - code = load_code("get-engine-hashes.nix", 91 - nixpkgs_root=NIXPKGS_ROOT, 92 - flutter_version=flutter_version, 93 - engine_version=engine_version) 94 95 stderr = nix_build_to_fail(code) 96 97 pattern = re.compile( 98 - rf"/nix/store/.*-flutter-engine-source-{engine_version}-(.+?-.+?)-(.+?-.+?).drv':\n\s+specified: .*\n\s+got:\s+(.+?)\n") 99 matches = pattern.findall(stderr) 100 result_dict = {} 101 ··· 105 106 def sort_dict_recursive(d): 107 return { 108 - k: sort_dict_recursive(v) if isinstance( 109 - v, dict) else v for k, v in sorted( 110 - d.items())} 111 - result_dict = sort_dict_recursive(result_dict) 112 113 - return result_dict 114 115 116 def get_artifact_hashes(flutter_compact_version): 117 - code = load_code("get-artifact-hashes.nix", 118 - nixpkgs_root=NIXPKGS_ROOT, 119 - flutter_compact_version=flutter_compact_version) 120 121 stderr = nix_build_to_fail(code) 122 123 pattern = re.compile( 124 - r"/nix/store/.*-flutter-artifacts-(.+?)-(.+?).drv':\n\s+specified: .*\n\s+got:\s+(.+?)\n") 125 matches = pattern.findall(stderr) 126 result_dict = {} 127 ··· 131 132 def sort_dict_recursive(d): 133 return { 134 - k: sort_dict_recursive(v) if isinstance( 135 - v, dict) else v for k, v in sorted( 136 - d.items())} 137 - result_dict = sort_dict_recursive(result_dict) 138 139 - return result_dict 140 141 142 def get_dart_hashes(dart_version, channel): 143 - platforms = [ 144 - "x86_64-linux", 145 - "aarch64-linux", 146 - "x86_64-darwin", 147 - "aarch64-darwin"] 148 result_dict = {} 149 for platform in platforms: 150 code = load_code( 151 "get-dart-hashes.nix", 152 dart_version=dart_version, 153 channel=channel, 154 - platform=platform) 155 stderr = nix_build_to_fail(code) 156 157 pattern = re.compile(r"got:\s+(.+?)\n") ··· 161 162 163 def get_flutter_hash_and_src(flutter_version): 164 - code = load_code( 165 - "get-flutter.nix", 166 - flutter_version=flutter_version, 167 - hash="") 168 169 stderr = nix_build_to_fail(code) 170 pattern = re.compile(r"got:\s+(.+?)\n") 171 - hash = pattern.findall(stderr)[0] 172 173 code = load_code( 174 - "get-flutter.nix", 175 - flutter_version=flutter_version, 176 - hash=hash) 177 178 - return (hash, nix_build(code)) 179 180 181 def get_pubspec_lock(flutter_compact_version, flutter_src): ··· 183 "get-pubspec-lock.nix", 184 flutter_compact_version=flutter_compact_version, 185 flutter_src=flutter_src, 186 - hash="") 187 188 stderr = nix_build_to_fail(code) 189 pattern = re.compile(r"got:\s+(.+?)\n") 190 - hash = pattern.findall(stderr)[0] 191 192 code = load_code( 193 "get-pubspec-lock.nix", 194 flutter_compact_version=flutter_compact_version, 195 flutter_src=flutter_src, 196 - hash=hash) 197 198 pubspec_lock_file = nix_build(code) 199 200 - with open(pubspec_lock_file, 'r') as f: 201 pubspec_lock_yaml = f.read() 202 203 return yaml.safe_load(pubspec_lock_yaml) 204 205 def get_engine_swiftshader_rev(engine_version): 206 - with urllib.request.urlopen(f"https://github.com/flutter/flutter/raw/{engine_version}/DEPS") as f: 207 - deps = f.read().decode('utf-8') 208 - pattern = re.compile(r"Var\('swiftshader_git'\) \+ '\/SwiftShader\.git' \+ '@' \+ \'([0-9a-fA-F]{40})\'\,") 209 - rev = pattern.findall(deps)[0] 210 - return rev 211 212 def get_engine_swiftshader_hash(engine_swiftshader_rev): 213 code = load_code( 214 "get-engine-swiftshader.nix", 215 engine_swiftshader_rev=engine_swiftshader_rev, 216 - hash="") 217 218 stderr = nix_build_to_fail(code) 219 pattern = re.compile(r"got:\s+(.+?)\n") 220 return pattern.findall(stderr)[0] 221 222 def write_data( 223 - nixpkgs_flutter_version_directory, 224 - flutter_version, 225 - channel, 226 - engine_hash, 227 - engine_hashes, 228 - engine_swiftshader_hash, 229 - engine_swiftshader_rev, 230 - dart_version, 231 - dart_hash, 232 - flutter_hash, 233 - artifact_hashes, 234 - pubspec_lock): 235 - with open(f"{nixpkgs_flutter_version_directory}/data.json", "w") as f: 236 - f.write(json.dumps({ 237 - "version": flutter_version, 238 - "engineVersion": engine_hash, 239 - "engineSwiftShaderHash": engine_swiftshader_hash, 240 - "engineSwiftShaderRev": engine_swiftshader_rev, 241 - "channel": channel, 242 - "engineHashes": engine_hashes, 243 - "dartVersion": dart_version, 244 - "dartHash": dart_hash, 245 - "flutterHash": flutter_hash, 246 - "artifactHashes": artifact_hashes, 247 - "pubspecLock": pubspec_lock, 248 - }, indent=2).strip() + "\n") 249 250 251 def update_all_packages(): 252 versions_directory = f"{NIXPKGS_ROOT}/pkgs/development/compilers/flutter/versions" 253 - versions = [directory for directory in os.listdir(versions_directory)] 254 - versions = sorted(versions, key=lambda x: ( 255 - int(x.split('_')[0]), int(x.split('_')[1])), reverse=True) 256 257 new_content = [ 258 "flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });", 259 - "flutterPackages-source = recurseIntoAttrs (callPackage ../development/compilers/flutter { useNixpkgsEngine = true; });", 260 "flutterPackages = flutterPackages-bin;", 261 "flutter = flutterPackages.stable;", 262 - ] + [f"flutter{version.replace('_', '')} = flutterPackages.v{version};" for version in versions] 263 264 - with open(f"{NIXPKGS_ROOT}/pkgs/top-level/all-packages.nix", 'r') as file: 265 lines = file.read().splitlines(keepends=True) 266 267 start = -1 268 end = -1 269 for i, line in enumerate(lines): 270 - if "flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });" in line: 271 start = i 272 if start != -1 and len(line.strip()) == 0: 273 end = i ··· 275 276 if start != -1 and end != -1: 277 del lines[start:end] 278 - lines[start:start] = [f" {l}\n" for l in new_content] 279 280 - with open(f"{NIXPKGS_ROOT}/pkgs/top-level/all-packages.nix", 'w') as file: 281 file.write("".join(lines)) 282 283 ··· 288 engine_hash = None 289 dart_version = None 290 291 - releases = json.load(urllib.request.urlopen( 292 - "https://storage.googleapis.com/flutter_infra_release/releases/releases_linux.json")) 293 294 if not channel: 295 - channel = 'stable' 296 297 if not flutter_version: 298 - hash = releases['current_release'][channel] 299 release = next( 300 filter( 301 - lambda release: release['hash'] == hash, 302 - releases['releases'])) 303 - flutter_version = release['version'] 304 305 - tags = subprocess.Popen(['git', 306 - 'ls-remote', 307 - '--tags', 308 - 'https://github.com/flutter/flutter.git'], 309 - stdout=subprocess.PIPE, 310 - text=True).communicate()[0].strip() 311 312 try: 313 - flutter_hash = next( 314 - filter( 315 - lambda line: line.endswith(f'refs/tags/{flutter_version}'), 316 - tags.splitlines())).split('refs')[0].strip() 317 318 - engine_hash = urllib.request.urlopen(f'https://github.com/flutter/flutter/raw/{flutter_hash}/bin/internal/engine.version').read().decode('utf-8').strip() 319 except StopIteration: 320 - exit( 321 - f"Couldn't find Engine hash for Flutter version: {flutter_version}") 322 323 try: 324 dart_version = next( 325 filter( 326 - lambda release: release['version'] == flutter_version, 327 - releases['releases']))['dart_sdk_version'] 328 329 if " " in dart_version: 330 - dart_version = dart_version.split(' ')[2][:-1] 331 except StopIteration: 332 - exit( 333 - f"Couldn't find Dart version for Flutter version: {flutter_version}") 334 335 return (flutter_version, engine_hash, dart_version, channel) 336 337 338 def main(): 339 - parser = argparse.ArgumentParser(description='Update Flutter in Nixpkgs') 340 - parser.add_argument('--version', type=str, help='Specify Flutter version') 341 - parser.add_argument('--channel', type=str, help='Specify Flutter release channel') 342 - parser.add_argument('--artifact-hashes', action='store_true', 343 - help='Whether to get artifact hashes') 344 args = parser.parse_args() 345 346 - (flutter_version, engine_hash, dart_version, channel) = find_versions(args.version, args.channel) 347 348 - flutter_compact_version = '_'.join(flutter_version.split('.')[:2]) 349 350 if args.artifact_hashes: 351 print( 352 - json.dumps( 353 - get_artifact_hashes(flutter_compact_version), 354 - indent=2).strip() + 355 - "\n") 356 return 357 358 - print(f"Flutter version: {flutter_version} ({flutter_compact_version}) on ({channel})") 359 print(f"Engine hash: {engine_hash}") 360 print(f"Dart version: {dart_version}") 361 ··· 364 365 nixpkgs_flutter_version_directory = f"{NIXPKGS_ROOT}/pkgs/development/compilers/flutter/versions/{flutter_compact_version}" 366 367 - if os.path.exists(f"{nixpkgs_flutter_version_directory}/data.json"): 368 - os.remove(f"{nixpkgs_flutter_version_directory}/data.json") 369 - os.makedirs(nixpkgs_flutter_version_directory, exist_ok=True) 370 371 update_all_packages() 372 ··· 385 artifact_hashes={}, 386 engine_hashes={}, 387 engine_swiftshader_hash=FAKE_HASH, 388 - engine_swiftshader_rev='0', 389 - **common_data_args) 390 391 pubspec_lock = get_pubspec_lock(flutter_compact_version, flutter_src) 392 ··· 395 artifact_hashes={}, 396 engine_hashes={}, 397 engine_swiftshader_hash=FAKE_HASH, 398 - engine_swiftshader_rev='0', 399 - **common_data_args) 400 401 artifact_hashes = get_artifact_hashes(flutter_compact_version) 402 ··· 405 artifact_hashes=artifact_hashes, 406 engine_hashes={}, 407 engine_swiftshader_hash=FAKE_HASH, 408 - engine_swiftshader_rev='0', 409 - **common_data_args) 410 411 engine_hashes = get_engine_hashes(engine_hash, flutter_version) 412 ··· 415 artifact_hashes=artifact_hashes, 416 engine_hashes=engine_hashes, 417 engine_swiftshader_hash=FAKE_HASH, 418 - engine_swiftshader_rev='0', 419 - **common_data_args) 420 421 engine_swiftshader_rev = get_engine_swiftshader_rev(engine_hash) 422 engine_swiftshader_hash = get_engine_swiftshader_hash(engine_swiftshader_rev) ··· 427 engine_hashes=engine_hashes, 428 engine_swiftshader_hash=engine_swiftshader_hash, 429 engine_swiftshader_rev=engine_swiftshader_rev, 430 - **common_data_args) 431 432 433 if __name__ == "__main__":
··· 1 #! /usr/bin/env nix-shell 2 #! nix-shell -i python3 -p python3Packages.pyyaml 3 4 + import argparse 5 import json 6 import os 7 import re 8 + import subprocess 9 + import sys 10 + import tempfile 11 + import urllib.request 12 + from pathlib import Path 13 + 14 import yaml 15 16 + FAKE_HASH = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" 17 18 + NIXPKGS_ROOT = ( 19 + subprocess.Popen( 20 + ["git", "rev-parse", "--show-toplevel"], stdout=subprocess.PIPE, text=True 21 + ) 22 + .communicate()[0] 23 + .strip() 24 + ) 25 26 27 def load_code(name, **kwargs): 28 + with Path( 29 + f"{NIXPKGS_ROOT}/pkgs/development/compilers/flutter/update/{name}.in" 30 + ).open("r", encoding="utf-8") as f: 31 code = f.read() 32 33 + for key, value in kwargs.items(): 34 code = code.replace(f"@{key}@", value) 35 36 return code ··· 38 39 # Return out paths 40 def nix_build(code): 41 + with tempfile.NamedTemporaryFile(mode="w", encoding="utf-8", delete=False) as temp: 42 + temp.write(code) 43 + temp.flush() 44 + os.fsync(temp.fileno()) 45 + temp_name = temp.name 46 47 process = subprocess.Popen( 48 [ ··· 50 "--impure", 51 "--no-out-link", 52 "--expr", 53 + f"with import {NIXPKGS_ROOT} {{}}; callPackage {temp_name} {{}}", 54 + ], 55 stdout=subprocess.PIPE, 56 + text=True, 57 + ) 58 59 process.wait() 60 + Path(temp_name).unlink() # Clean up the temporary file 61 return process.stdout.read().strip().splitlines()[0] 62 63 64 # Return errors 65 def nix_build_to_fail(code): 66 + with tempfile.NamedTemporaryFile(mode="w", encoding="utf-8", delete=False) as temp: 67 + temp.write(code) 68 + temp.flush() 69 + os.fsync(temp.fileno()) 70 + temp_name = temp.name 71 72 process = subprocess.Popen( 73 [ ··· 76 "--keep-going", 77 "--no-link", 78 "--expr", 79 + f"with import {NIXPKGS_ROOT} {{}}; callPackage {temp_name} {{}}", 80 + ], 81 stderr=subprocess.PIPE, 82 + text=True, 83 + ) 84 85 stderr = "" 86 while True: ··· 91 print(line.strip()) 92 93 process.wait() 94 + Path(temp_name).unlink() # Clean up the temporary file 95 return stderr 96 97 98 def get_engine_hashes(engine_version, flutter_version): 99 + code = load_code( 100 + "get-engine-hashes.nix", 101 + nixpkgs_root=NIXPKGS_ROOT, 102 + flutter_version=flutter_version, 103 + engine_version=engine_version, 104 + ) 105 106 stderr = nix_build_to_fail(code) 107 108 pattern = re.compile( 109 + rf"/nix/store/.*-flutter-engine-source-{engine_version}-(.+?-.+?)-(.+?-.+?).drv':\n\s+specified: .*\n\s+got:\s+(.+?)\n" 110 + ) 111 matches = pattern.findall(stderr) 112 result_dict = {} 113 ··· 117 118 def sort_dict_recursive(d): 119 return { 120 + k: sort_dict_recursive(v) if isinstance(v, dict) else v 121 + for k, v in sorted(d.items()) 122 + } 123 124 + return sort_dict_recursive(result_dict) 125 126 127 def get_artifact_hashes(flutter_compact_version): 128 + code = load_code( 129 + "get-artifact-hashes.nix", 130 + nixpkgs_root=NIXPKGS_ROOT, 131 + flutter_compact_version=flutter_compact_version, 132 + ) 133 134 stderr = nix_build_to_fail(code) 135 136 pattern = re.compile( 137 + r"/nix/store/.*-flutter-artifacts-(.+?)-(.+?).drv':\n\s+specified: .*\n\s+got:\s+(.+?)\n" 138 + ) 139 matches = pattern.findall(stderr) 140 result_dict = {} 141 ··· 145 146 def sort_dict_recursive(d): 147 return { 148 + k: sort_dict_recursive(v) if isinstance(v, dict) else v 149 + for k, v in sorted(d.items()) 150 + } 151 152 + return sort_dict_recursive(result_dict) 153 154 155 def get_dart_hashes(dart_version, channel): 156 + platforms = ["x86_64-linux", "aarch64-linux", "x86_64-darwin", "aarch64-darwin"] 157 result_dict = {} 158 for platform in platforms: 159 code = load_code( 160 "get-dart-hashes.nix", 161 dart_version=dart_version, 162 channel=channel, 163 + platform=platform, 164 + ) 165 stderr = nix_build_to_fail(code) 166 167 pattern = re.compile(r"got:\s+(.+?)\n") ··· 171 172 173 def get_flutter_hash_and_src(flutter_version): 174 + code = load_code("get-flutter.nix", flutter_version=flutter_version, hash="") 175 176 stderr = nix_build_to_fail(code) 177 pattern = re.compile(r"got:\s+(.+?)\n") 178 + flutter_hash_value = pattern.findall(stderr)[0] 179 180 code = load_code( 181 + "get-flutter.nix", flutter_version=flutter_version, hash=flutter_hash_value 182 + ) 183 184 + return (flutter_hash_value, nix_build(code)) 185 186 187 def get_pubspec_lock(flutter_compact_version, flutter_src): ··· 189 "get-pubspec-lock.nix", 190 flutter_compact_version=flutter_compact_version, 191 flutter_src=flutter_src, 192 + hash="", 193 + ) 194 195 stderr = nix_build_to_fail(code) 196 pattern = re.compile(r"got:\s+(.+?)\n") 197 + pubspec_lock_hash = pattern.findall(stderr)[0] 198 199 code = load_code( 200 "get-pubspec-lock.nix", 201 flutter_compact_version=flutter_compact_version, 202 flutter_src=flutter_src, 203 + hash=pubspec_lock_hash, 204 + ) 205 206 pubspec_lock_file = nix_build(code) 207 208 + with Path(pubspec_lock_file).open("r", encoding="utf-8") as f: 209 pubspec_lock_yaml = f.read() 210 211 return yaml.safe_load(pubspec_lock_yaml) 212 213 + 214 def get_engine_swiftshader_rev(engine_version): 215 + with urllib.request.urlopen( 216 + f"https://github.com/flutter/flutter/raw/{engine_version}/DEPS" 217 + ) as f: 218 + deps = f.read().decode("utf-8") 219 + pattern = re.compile( 220 + r"Var\('swiftshader_git'\) \+ '\/SwiftShader\.git' \+ '@' \+ \'([0-9a-fA-F]{40})\'\," 221 + ) 222 + return pattern.findall(deps)[0] 223 + 224 225 def get_engine_swiftshader_hash(engine_swiftshader_rev): 226 code = load_code( 227 "get-engine-swiftshader.nix", 228 engine_swiftshader_rev=engine_swiftshader_rev, 229 + hash="", 230 + ) 231 232 stderr = nix_build_to_fail(code) 233 pattern = re.compile(r"got:\s+(.+?)\n") 234 return pattern.findall(stderr)[0] 235 236 + 237 def write_data( 238 + nixpkgs_flutter_version_directory, 239 + flutter_version, 240 + channel, 241 + engine_hash, 242 + engine_hashes, 243 + engine_swiftshader_hash, 244 + engine_swiftshader_rev, 245 + dart_version, 246 + dart_hash, 247 + flutter_hash, 248 + artifact_hashes, 249 + pubspec_lock, 250 + ): 251 + with Path(f"{nixpkgs_flutter_version_directory}/data.json").open( 252 + "w", encoding="utf-8" 253 + ) as f: 254 + f.write( 255 + json.dumps( 256 + { 257 + "version": flutter_version, 258 + "engineVersion": engine_hash, 259 + "engineSwiftShaderHash": engine_swiftshader_hash, 260 + "engineSwiftShaderRev": engine_swiftshader_rev, 261 + "channel": channel, 262 + "engineHashes": engine_hashes, 263 + "dartVersion": dart_version, 264 + "dartHash": dart_hash, 265 + "flutterHash": flutter_hash, 266 + "artifactHashes": artifact_hashes, 267 + "pubspecLock": pubspec_lock, 268 + }, 269 + indent=2, 270 + ).strip() 271 + + "\n" 272 + ) 273 274 275 def update_all_packages(): 276 versions_directory = f"{NIXPKGS_ROOT}/pkgs/development/compilers/flutter/versions" 277 + versions = [d.name for d in Path(versions_directory).iterdir()] 278 + versions = sorted( 279 + versions, 280 + key=lambda x: (int(x.split("_")[0]), int(x.split("_")[1])), 281 + reverse=True, 282 + ) 283 284 new_content = [ 285 "flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });", 286 + "flutterPackages-source = recurseIntoAttrs (", 287 + " callPackage ../development/compilers/flutter { useNixpkgsEngine = true; }", 288 + ");", 289 "flutterPackages = flutterPackages-bin;", 290 "flutter = flutterPackages.stable;", 291 + ] + [ 292 + f"flutter{version.replace('_', '')} = flutterPackages.v{version};" 293 + for version in versions 294 + ] 295 296 + with Path(f"{NIXPKGS_ROOT}/pkgs/top-level/all-packages.nix").open( 297 + "r", encoding="utf-8" 298 + ) as file: 299 lines = file.read().splitlines(keepends=True) 300 301 start = -1 302 end = -1 303 for i, line in enumerate(lines): 304 + if ( 305 + "flutterPackages-bin = recurseIntoAttrs (callPackage ../development/compilers/flutter { });" 306 + in line 307 + ): 308 start = i 309 if start != -1 and len(line.strip()) == 0: 310 end = i ··· 312 313 if start != -1 and end != -1: 314 del lines[start:end] 315 + lines[start:start] = [f" {line}\n" for line in new_content] 316 317 + with Path(f"{NIXPKGS_ROOT}/pkgs/top-level/all-packages.nix").open( 318 + "w", encoding="utf-8" 319 + ) as file: 320 file.write("".join(lines)) 321 322 ··· 327 engine_hash = None 328 dart_version = None 329 330 + releases = json.load( 331 + urllib.request.urlopen( 332 + "https://storage.googleapis.com/flutter_infra_release/releases/releases_linux.json" 333 + ) 334 + ) 335 336 if not channel: 337 + channel = "stable" 338 339 if not flutter_version: 340 + release_hash = releases["current_release"][channel] 341 release = next( 342 filter( 343 + lambda release: release["hash"] == release_hash, releases["releases"] 344 + ) 345 + ) 346 + flutter_version = release["version"] 347 348 + tags = ( 349 + subprocess.Popen( 350 + ["git", "ls-remote", "--tags", "https://github.com/flutter/flutter.git"], 351 + stdout=subprocess.PIPE, 352 + text=True, 353 + ) 354 + .communicate()[0] 355 + .strip() 356 + ) 357 358 try: 359 + flutter_hash = ( 360 + next( 361 + filter( 362 + lambda line: line.endswith(f"refs/tags/{flutter_version}"), 363 + tags.splitlines(), 364 + ) 365 + ) 366 + .split("refs")[0] 367 + .strip() 368 + ) 369 370 + engine_hash = ( 371 + urllib.request.urlopen( 372 + f"https://github.com/flutter/flutter/raw/{flutter_hash}/bin/internal/engine.version" 373 + ) 374 + .read() 375 + .decode("utf-8") 376 + .strip() 377 + ) 378 except StopIteration: 379 + sys.exit(f"Couldn't find Engine hash for Flutter version: {flutter_version}") 380 381 try: 382 dart_version = next( 383 filter( 384 + lambda release: release["version"] == flutter_version, 385 + releases["releases"], 386 + ) 387 + )["dart_sdk_version"] 388 389 if " " in dart_version: 390 + dart_version = dart_version.split(" ")[2][:-1] 391 except StopIteration: 392 + sys.exit(f"Couldn't find Dart version for Flutter version: {flutter_version}") 393 394 return (flutter_version, engine_hash, dart_version, channel) 395 396 397 def main(): 398 + parser = argparse.ArgumentParser(description="Update Flutter in Nixpkgs") 399 + parser.add_argument("--version", type=str, help="Specify Flutter version") 400 + parser.add_argument("--channel", type=str, help="Specify Flutter release channel") 401 + parser.add_argument( 402 + "--artifact-hashes", action="store_true", help="Whether to get artifact hashes" 403 + ) 404 args = parser.parse_args() 405 406 + (flutter_version, engine_hash, dart_version, channel) = find_versions( 407 + args.version, args.channel 408 + ) 409 410 + flutter_compact_version = "_".join(flutter_version.split(".")[:2]) 411 412 if args.artifact_hashes: 413 print( 414 + json.dumps(get_artifact_hashes(flutter_compact_version), indent=2).strip() 415 + + "\n" 416 + ) 417 return 418 419 + print( 420 + f"Flutter version: {flutter_version} ({flutter_compact_version}) on ({channel})" 421 + ) 422 print(f"Engine hash: {engine_hash}") 423 print(f"Dart version: {dart_version}") 424 ··· 427 428 nixpkgs_flutter_version_directory = f"{NIXPKGS_ROOT}/pkgs/development/compilers/flutter/versions/{flutter_compact_version}" 429 430 + if Path(f"{nixpkgs_flutter_version_directory}/data.json").exists(): 431 + Path(f"{nixpkgs_flutter_version_directory}/data.json").unlink() 432 + Path(nixpkgs_flutter_version_directory).mkdir(parents=True, exist_ok=True) 433 434 update_all_packages() 435 ··· 448 artifact_hashes={}, 449 engine_hashes={}, 450 engine_swiftshader_hash=FAKE_HASH, 451 + engine_swiftshader_rev="0", 452 + **common_data_args, 453 + ) 454 455 pubspec_lock = get_pubspec_lock(flutter_compact_version, flutter_src) 456 ··· 459 artifact_hashes={}, 460 engine_hashes={}, 461 engine_swiftshader_hash=FAKE_HASH, 462 + engine_swiftshader_rev="0", 463 + **common_data_args, 464 + ) 465 466 artifact_hashes = get_artifact_hashes(flutter_compact_version) 467 ··· 470 artifact_hashes=artifact_hashes, 471 engine_hashes={}, 472 engine_swiftshader_hash=FAKE_HASH, 473 + engine_swiftshader_rev="0", 474 + **common_data_args, 475 + ) 476 477 engine_hashes = get_engine_hashes(engine_hash, flutter_version) 478 ··· 481 artifact_hashes=artifact_hashes, 482 engine_hashes=engine_hashes, 483 engine_swiftshader_hash=FAKE_HASH, 484 + engine_swiftshader_rev="0", 485 + **common_data_args, 486 + ) 487 488 engine_swiftshader_rev = get_engine_swiftshader_rev(engine_hash) 489 engine_swiftshader_hash = get_engine_swiftshader_hash(engine_swiftshader_rev) ··· 494 engine_hashes=engine_hashes, 495 engine_swiftshader_hash=engine_swiftshader_hash, 496 engine_swiftshader_rev=engine_swiftshader_rev, 497 + **common_data_args, 498 + ) 499 500 501 if __name__ == "__main__":
+37 -37
pkgs/development/compilers/flutter/versions/3_32/data.json
··· 1 { 2 - "version": "3.32.6", 3 - "engineVersion": "72f2b18bb094f92f62a3113a8075240ebb59affa", 4 "engineSwiftShaderHash": "sha256-ATVcuxqPHqHOWYyO7DoX9LdgUiO3INUi7m9Mc6ccc1M=", 5 "engineSwiftShaderRev": "d040a5bab638bf7c226235c95787ba6288bb6416", 6 "channel": "stable", 7 "engineHashes": { 8 "aarch64-linux": { 9 - "aarch64-linux": "sha256-MjWz+aveIDXygAejZiNGFZluR0gjpS62h16UcFGz7FA=", 10 - "x86_64-linux": "sha256-MjWz+aveIDXygAejZiNGFZluR0gjpS62h16UcFGz7FA=" 11 }, 12 "x86_64-linux": { 13 - "aarch64-linux": "sha256-jWM+egf2tZVR8bnBXSHiXOG0CbkEjxEqxwPnaR7tJKk=", 14 - "x86_64-linux": "sha256-jWM+egf2tZVR8bnBXSHiXOG0CbkEjxEqxwPnaR7tJKk=" 15 } 16 }, 17 "dartVersion": "3.8.1", ··· 21 "x86_64-darwin": "sha256-S3iGDVLollApke2SnXAcV919qsDTVmz5Gf9fTletr00=", 22 "aarch64-darwin": "sha256-haHQks9N1mBIqRsYg9sOLw7ra7gC708gsTWfKxvIK1c=" 23 }, 24 - "flutterHash": "sha256-YxApWMp6Ax1ZNOH/7kgeXgiaBcXN7Ves4TFUImFtd3s=", 25 "artifactHashes": { 26 "android": { 27 - "aarch64-darwin": "sha256-thfXrVn6nWlQg23yDHiNAx6XebQkV80tkckONwmfjaU=", 28 - "aarch64-linux": "sha256-fM90NqMpD4SkrjZfDXvHjMNdGiaDqX2T+A4cNNZkplk=", 29 - "x86_64-darwin": "sha256-thfXrVn6nWlQg23yDHiNAx6XebQkV80tkckONwmfjaU=", 30 - "x86_64-linux": "sha256-fM90NqMpD4SkrjZfDXvHjMNdGiaDqX2T+A4cNNZkplk=" 31 }, 32 "fuchsia": { 33 - "aarch64-darwin": "sha256-Lh6z51v14kZIGxriaKDdOn5fAKyANm8FAzIozoOiAZg=", 34 - "aarch64-linux": "sha256-Lh6z51v14kZIGxriaKDdOn5fAKyANm8FAzIozoOiAZg=", 35 - "x86_64-darwin": "sha256-Lh6z51v14kZIGxriaKDdOn5fAKyANm8FAzIozoOiAZg=", 36 - "x86_64-linux": "sha256-Lh6z51v14kZIGxriaKDdOn5fAKyANm8FAzIozoOiAZg=" 37 }, 38 "ios": { 39 - "aarch64-darwin": "sha256-zCR8wt7QZHl9UFOhkU8KFkyRbaUitXJHTiMLOe+M5/g=", 40 - "aarch64-linux": "sha256-zCR8wt7QZHl9UFOhkU8KFkyRbaUitXJHTiMLOe+M5/g=", 41 - "x86_64-darwin": "sha256-zCR8wt7QZHl9UFOhkU8KFkyRbaUitXJHTiMLOe+M5/g=", 42 - "x86_64-linux": "sha256-zCR8wt7QZHl9UFOhkU8KFkyRbaUitXJHTiMLOe+M5/g=" 43 }, 44 "linux": { 45 - "aarch64-darwin": "sha256-dSXB6GFQZjHoyiDStAnohYtzFIrVWmD3DfQ0b+cGwcU=", 46 - "aarch64-linux": "sha256-dSXB6GFQZjHoyiDStAnohYtzFIrVWmD3DfQ0b+cGwcU=", 47 - "x86_64-darwin": "sha256-9ds2C7XBIvnzbgwcBPwJhaF/l/t+uZQEiuwQg2WIVkE=", 48 - "x86_64-linux": "sha256-9ds2C7XBIvnzbgwcBPwJhaF/l/t+uZQEiuwQg2WIVkE=" 49 }, 50 "macos": { 51 - "aarch64-darwin": "sha256-Qybdtwy8MfPEsCJUHxlV62fZyEAClOHM4thsEw4nmvg=", 52 - "aarch64-linux": "sha256-Qybdtwy8MfPEsCJUHxlV62fZyEAClOHM4thsEw4nmvg=", 53 - "x86_64-darwin": "sha256-Qybdtwy8MfPEsCJUHxlV62fZyEAClOHM4thsEw4nmvg=", 54 - "x86_64-linux": "sha256-Qybdtwy8MfPEsCJUHxlV62fZyEAClOHM4thsEw4nmvg=" 55 }, 56 "universal": { 57 - "aarch64-darwin": "sha256-37CxKej4SB4Qm3aJVkf3SK0uiimLYSGJBAOwqWStmEY=", 58 - "aarch64-linux": "sha256-7p4CTx///0ND5xUpb9uGbBgaLeClt/aGoSm6mE56ySk=", 59 - "x86_64-darwin": "sha256-sjrzv4jJ28RViNaC7jG4utnerBj3521kXfT8CAgGOLI=", 60 - "x86_64-linux": "sha256-B9gqS5lfLy8pYjP7N52jLqZmroukuAS/ed0xP5xspeg=" 61 }, 62 "web": { 63 - "aarch64-darwin": "sha256-iLAX0UCh+ZTsSggKj29cUm+8CIEJfXj+iWiTV1ndfrU=", 64 - "aarch64-linux": "sha256-iLAX0UCh+ZTsSggKj29cUm+8CIEJfXj+iWiTV1ndfrU=", 65 - "x86_64-darwin": "sha256-iLAX0UCh+ZTsSggKj29cUm+8CIEJfXj+iWiTV1ndfrU=", 66 - "x86_64-linux": "sha256-iLAX0UCh+ZTsSggKj29cUm+8CIEJfXj+iWiTV1ndfrU=" 67 }, 68 "windows": { 69 - "x86_64-darwin": "sha256-7M6lLznB1FwQi4e4O6r5IWRxYFaXhfdkSx3rN2GZr5c=", 70 - "x86_64-linux": "sha256-7M6lLznB1FwQi4e4O6r5IWRxYFaXhfdkSx3rN2GZr5c=" 71 } 72 }, 73 "pubspecLock": {
··· 1 { 2 + "version": "3.32.7", 3 + "engineVersion": "39d6d6e699e51b2874210e14cddf1a22fb9524b2", 4 "engineSwiftShaderHash": "sha256-ATVcuxqPHqHOWYyO7DoX9LdgUiO3INUi7m9Mc6ccc1M=", 5 "engineSwiftShaderRev": "d040a5bab638bf7c226235c95787ba6288bb6416", 6 "channel": "stable", 7 "engineHashes": { 8 "aarch64-linux": { 9 + "aarch64-linux": "sha256-3cqYwwQlnHPMRoeRLsru+Xk9rMiAaLZ6rBxdJttJSW0=", 10 + "x86_64-linux": "sha256-3cqYwwQlnHPMRoeRLsru+Xk9rMiAaLZ6rBxdJttJSW0=" 11 }, 12 "x86_64-linux": { 13 + "aarch64-linux": "sha256-8jXbz7gQZhaoU2Cs6uAbR5xF22HzBxMghA4edm/7oa4=", 14 + "x86_64-linux": "sha256-8jXbz7gQZhaoU2Cs6uAbR5xF22HzBxMghA4edm/7oa4=" 15 } 16 }, 17 "dartVersion": "3.8.1", ··· 21 "x86_64-darwin": "sha256-S3iGDVLollApke2SnXAcV919qsDTVmz5Gf9fTletr00=", 22 "aarch64-darwin": "sha256-haHQks9N1mBIqRsYg9sOLw7ra7gC708gsTWfKxvIK1c=" 23 }, 24 + "flutterHash": "sha256-fPCa9JHvQGP47uo6LHbGC2aMMwdX+AOEZfvIyZ3M2/U=", 25 "artifactHashes": { 26 "android": { 27 + "aarch64-darwin": "sha256-Gs4SLCLh/6e/n8lu6pTujksW/MqIieWymF151N5dDnw=", 28 + "aarch64-linux": "sha256-aTVHfbG6V4T2/SDbxdCEYo3+7EryjK6sAUL4FF4AmUM=", 29 + "x86_64-darwin": "sha256-Gs4SLCLh/6e/n8lu6pTujksW/MqIieWymF151N5dDnw=", 30 + "x86_64-linux": "sha256-aTVHfbG6V4T2/SDbxdCEYo3+7EryjK6sAUL4FF4AmUM=" 31 }, 32 "fuchsia": { 33 + "aarch64-darwin": "sha256-cKUp9CQq10Ls3dOcB3wPdnnwVK26RG0JWn0n4TsWigc=", 34 + "aarch64-linux": "sha256-cKUp9CQq10Ls3dOcB3wPdnnwVK26RG0JWn0n4TsWigc=", 35 + "x86_64-darwin": "sha256-cKUp9CQq10Ls3dOcB3wPdnnwVK26RG0JWn0n4TsWigc=", 36 + "x86_64-linux": "sha256-cKUp9CQq10Ls3dOcB3wPdnnwVK26RG0JWn0n4TsWigc=" 37 }, 38 "ios": { 39 + "aarch64-darwin": "sha256-EvzvRyR2aRomFPiz7WfGyhg0JiOHzCIi6xEDbLeIGAQ=", 40 + "aarch64-linux": "sha256-EvzvRyR2aRomFPiz7WfGyhg0JiOHzCIi6xEDbLeIGAQ=", 41 + "x86_64-darwin": "sha256-EvzvRyR2aRomFPiz7WfGyhg0JiOHzCIi6xEDbLeIGAQ=", 42 + "x86_64-linux": "sha256-EvzvRyR2aRomFPiz7WfGyhg0JiOHzCIi6xEDbLeIGAQ=" 43 }, 44 "linux": { 45 + "aarch64-darwin": "sha256-eLGFwZxd4P9NSnHhOssAvjWea+ahuPUtIi4BrsOxZDE=", 46 + "aarch64-linux": "sha256-eLGFwZxd4P9NSnHhOssAvjWea+ahuPUtIi4BrsOxZDE=", 47 + "x86_64-darwin": "sha256-WhDM+gxvSWsQ0RyaInKH3obabboMfBtfBPZPx6379kc=", 48 + "x86_64-linux": "sha256-WhDM+gxvSWsQ0RyaInKH3obabboMfBtfBPZPx6379kc=" 49 }, 50 "macos": { 51 + "aarch64-darwin": "sha256-3QXe7KTjh9noCdZnCRbo6bXuif7dhQ75mk6/lyydSck=", 52 + "aarch64-linux": "sha256-3QXe7KTjh9noCdZnCRbo6bXuif7dhQ75mk6/lyydSck=", 53 + "x86_64-darwin": "sha256-3QXe7KTjh9noCdZnCRbo6bXuif7dhQ75mk6/lyydSck=", 54 + "x86_64-linux": "sha256-3QXe7KTjh9noCdZnCRbo6bXuif7dhQ75mk6/lyydSck=" 55 }, 56 "universal": { 57 + "aarch64-darwin": "sha256-Z7UTqCTESwcpv0yxzTEMThkQMNfisOCnhC7sltY0dUA=", 58 + "aarch64-linux": "sha256-VIMu52o7BIEkxt4h0u4sILcrgKg85TY+3ieQl290icM=", 59 + "x86_64-darwin": "sha256-/jOrwEy6EWCx8cS9MyIEI4NqO2H8Rs/VV7N6RmCyPWM=", 60 + "x86_64-linux": "sha256-mcQYpXo8E/j4j4OYIwlcx6xpiyYbnKXrwfT+rl6W4Zw=" 61 }, 62 "web": { 63 + "aarch64-darwin": "sha256-2nnM91LPjdxuU2uWCdE2tFoZ75N0L5DWlJa75KCulY8=", 64 + "aarch64-linux": "sha256-2nnM91LPjdxuU2uWCdE2tFoZ75N0L5DWlJa75KCulY8=", 65 + "x86_64-darwin": "sha256-2nnM91LPjdxuU2uWCdE2tFoZ75N0L5DWlJa75KCulY8=", 66 + "x86_64-linux": "sha256-2nnM91LPjdxuU2uWCdE2tFoZ75N0L5DWlJa75KCulY8=" 67 }, 68 "windows": { 69 + "x86_64-darwin": "sha256-boajU3GH29bhgDT+emE3gIQjAtuon1OUi1gGBH6iq/4=", 70 + "x86_64-linux": "sha256-boajU3GH29bhgDT+emE3gIQjAtuon1OUi1gGBH6iq/4=" 71 } 72 }, 73 "pubspecLock": {
+1 -1
pkgs/development/lua-modules/generated-packages.nix
··· 949 950 meta = { 951 homepage = "https://github.com/mrcjkb/haskell-tools.nvim"; 952 - description = " 🦥 Supercharge your Haskell experience in neovim!"; 953 maintainers = with lib.maintainers; [ mrcjkb ]; 954 license.fullName = "GPL-2.0"; 955 };
··· 949 950 meta = { 951 homepage = "https://github.com/mrcjkb/haskell-tools.nvim"; 952 + description = "🦥 Supercharge your Haskell experience in neovim!"; 953 maintainers = with lib.maintainers; [ mrcjkb ]; 954 license.fullName = "GPL-2.0"; 955 };
+1 -1
pkgs/development/ocaml-modules/bls12-381/default.nix
··· 41 doCheck = true; 42 43 meta = { 44 - homepage = " https://nomadic-labs.gitlab.io/cryptography/ocaml-bls12-381/bls12-381/"; 45 description = "Implementation of BLS12-381 and some cryptographic primitives built on top of it"; 46 license = lib.licenses.mit; 47 maintainers = [ lib.maintainers.ulrikstrid ];
··· 41 doCheck = true; 42 43 meta = { 44 + homepage = "https://nomadic-labs.gitlab.io/cryptography/ocaml-bls12-381/bls12-381/"; 45 description = "Implementation of BLS12-381 and some cryptographic primitives built on top of it"; 46 license = lib.licenses.mit; 47 maintainers = [ lib.maintainers.ulrikstrid ];
+1 -1
pkgs/development/ocaml-modules/janestreet/0.17.nix
··· 951 ocaml_openapi_generator = janePackage { 952 pname = "ocaml_openapi_generator"; 953 hash = "sha256-HCq9fylcVjBMs8L6E860nw+EonWEQadlyEKpQI6mynU="; 954 - meta.description = " An OpenAPI 3 to OCaml client generator"; 955 buildInputs = [ 956 async 957 core
··· 951 ocaml_openapi_generator = janePackage { 952 pname = "ocaml_openapi_generator"; 953 hash = "sha256-HCq9fylcVjBMs8L6E860nw+EonWEQadlyEKpQI6mynU="; 954 + meta.description = "OpenAPI 3 to OCaml client generator"; 955 buildInputs = [ 956 async 957 core
+1 -1
pkgs/development/ocaml-modules/ocsigen-toolkit/default.nix
··· 47 48 meta = { 49 homepage = "http://ocsigen.org/ocsigen-toolkit/"; 50 - description = " User interface widgets for Ocsigen applications"; 51 license = lib.licenses.lgpl21; 52 maintainers = [ lib.maintainers.gal_bolle ]; 53 inherit (ocaml.meta) platforms;
··· 47 48 meta = { 49 homepage = "http://ocsigen.org/ocsigen-toolkit/"; 50 + description = "User interface widgets for Ocsigen applications"; 51 license = lib.licenses.lgpl21; 52 maintainers = [ lib.maintainers.gal_bolle ]; 53 inherit (ocaml.meta) platforms;
+1 -1
pkgs/development/octave-modules/communications/default.nix
··· 27 homepage = "https://gnu-octave.github.io/packages/communications/"; 28 license = lib.licenses.gpl3Plus; 29 maintainers = with lib.maintainers; [ KarlJoad ]; 30 - description = " Digital Communications, Error Correcting Codes (Channel Code), Source Code functions, Modulation and Galois Fields"; 31 }; 32 }
··· 27 homepage = "https://gnu-octave.github.io/packages/communications/"; 28 license = lib.licenses.gpl3Plus; 29 maintainers = with lib.maintainers; [ KarlJoad ]; 30 + description = "Digital Communications, Error Correcting Codes (Channel Code), Source Code functions, Modulation and Galois Fields"; 31 }; 32 }
+1 -4
pkgs/development/python-modules/ahocorapy/default.nix
··· 1 { 2 buildPythonPackage, 3 fetchFromGitHub, 4 - future, 5 lib, 6 pytestCheckHook, 7 setuptools, ··· 21 22 build-system = [ setuptools ]; 23 24 - dependencies = [ 25 - future 26 - ]; 27 28 pythonImportsCheck = [ "ahocorapy" ]; 29
··· 1 { 2 buildPythonPackage, 3 fetchFromGitHub, 4 lib, 5 pytestCheckHook, 6 setuptools, ··· 20 21 build-system = [ setuptools ]; 22 23 + pythonRemoveDeps = [ "future" ]; 24 25 pythonImportsCheck = [ "ahocorapy" ]; 26
+2 -2
pkgs/development/python-modules/aioamazondevices/default.nix
··· 15 16 buildPythonPackage rec { 17 pname = "aioamazondevices"; 18 - version = "3.3.0"; 19 pyproject = true; 20 21 src = fetchFromGitHub { 22 owner = "chemelli74"; 23 repo = "aioamazondevices"; 24 tag = "v${version}"; 25 - hash = "sha256-MXVQ/VtsT/ppeQsSnf+LiddlZFKylQxL48vPRKj932w="; 26 }; 27 28 build-system = [ poetry-core ];
··· 15 16 buildPythonPackage rec { 17 pname = "aioamazondevices"; 18 + version = "3.5.0"; 19 pyproject = true; 20 21 src = fetchFromGitHub { 22 owner = "chemelli74"; 23 repo = "aioamazondevices"; 24 tag = "v${version}"; 25 + hash = "sha256-gFO0E5tphInHOTAgaifp+jNQQvs+HfLDhvErmLwwrPU="; 26 }; 27 28 build-system = [ poetry-core ];
+1 -1
pkgs/development/python-modules/aioguardian/default.nix
··· 65 pythonImportsCheck = [ "aioguardian" ]; 66 67 meta = with lib; { 68 - description = " Python library to interact with Elexa Guardian devices"; 69 longDescription = '' 70 aioguardian is an asyncio-focused library for interacting with the 71 Guardian line of water valves and sensors from Elexa.
··· 65 pythonImportsCheck = [ "aioguardian" ]; 66 67 meta = with lib; { 68 + description = "Python library to interact with Elexa Guardian devices"; 69 longDescription = '' 70 aioguardian is an asyncio-focused library for interacting with the 71 Guardian line of water valves and sensors from Elexa.
+9 -10
pkgs/development/python-modules/aurorapy/default.nix
··· 2 lib, 3 buildPythonPackage, 4 fetchFromGitLab, 5 - future, 6 pyserial, 7 pytestCheckHook, 8 - pythonOlder, 9 setuptools, 10 six, 11 }: ··· 13 buildPythonPackage rec { 14 pname = "aurorapy"; 15 version = "0.2.7"; 16 - format = "pyproject"; 17 - 18 - disabled = pythonOlder "3.7"; 19 20 src = fetchFromGitLab { 21 owner = "energievalsabbia"; ··· 24 hash = "sha256-rGwfGq3zdoG9NCGqVN29Q4bWApk5B6CRdsW9ctWgOec="; 25 }; 26 27 - nativeBuildInputs = [ setuptools ]; 28 29 - propagatedBuildInputs = [ 30 - future 31 - pyserial 32 - ]; 33 34 nativeCheckInputs = [ 35 pytestCheckHook
··· 2 lib, 3 buildPythonPackage, 4 fetchFromGitLab, 5 pyserial, 6 pytestCheckHook, 7 setuptools, 8 six, 9 }: ··· 11 buildPythonPackage rec { 12 pname = "aurorapy"; 13 version = "0.2.7"; 14 + pyproject = true; 15 16 src = fetchFromGitLab { 17 owner = "energievalsabbia"; ··· 20 hash = "sha256-rGwfGq3zdoG9NCGqVN29Q4bWApk5B6CRdsW9ctWgOec="; 21 }; 22 23 + postPatch = '' 24 + sed -i "/from past.builtins import map/d" aurorapy/client.py 25 + ''; 26 + 27 + build-system = [ setuptools ]; 28 + 29 + pythonRemoveDeps = [ "future" ]; 30 31 + dependencies = [ pyserial ]; 32 33 nativeCheckInputs = [ 34 pytestCheckHook
+1 -1
pkgs/development/python-modules/djangorestframework-recursive/default.nix
··· 29 pythonImportsCheck = [ "rest_framework_recursive" ]; 30 31 meta = with lib; { 32 - description = " Recursive Serialization for Django REST framework"; 33 homepage = "https://github.com/heywbj/django-rest-framework-recursive"; 34 license = licenses.isc; 35 maintainers = [ ];
··· 29 pythonImportsCheck = [ "rest_framework_recursive" ]; 30 31 meta = with lib; { 32 + description = "Recursive Serialization for Django REST framework"; 33 homepage = "https://github.com/heywbj/django-rest-framework-recursive"; 34 license = licenses.isc; 35 maintainers = [ ];
+2 -2
pkgs/development/python-modules/gios/default.nix
··· 15 16 buildPythonPackage rec { 17 pname = "gios"; 18 - version = "6.1.1"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.12"; ··· 24 owner = "bieniu"; 25 repo = "gios"; 26 tag = version; 27 - hash = "sha256-BjyeWg75JQd+VAIQmtFIwEdByMPdGG+nIOgKCavjF0c="; 28 }; 29 30 build-system = [ setuptools ];
··· 15 16 buildPythonPackage rec { 17 pname = "gios"; 18 + version = "6.1.2"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.12"; ··· 24 owner = "bieniu"; 25 repo = "gios"; 26 tag = version; 27 + hash = "sha256-z0MFXlim0YJ2ifAU94IjDOsIgaRzQk6YRqy64+LNehQ="; 28 }; 29 30 build-system = [ setuptools ];
+1 -1
pkgs/development/python-modules/manuf/default.nix
··· 49 50 meta = with lib; { 51 homepage = "https://github.com/coolbho3k/manuf"; 52 - description = " Parser library for Wireshark's OUI database"; 53 mainProgram = "manuf"; 54 platforms = platforms.linux; 55 license = with licenses; [
··· 49 50 meta = with lib; { 51 homepage = "https://github.com/coolbho3k/manuf"; 52 + description = "Parser library for Wireshark's OUI database"; 53 mainProgram = "manuf"; 54 platforms = platforms.linux; 55 license = with licenses; [
+1 -1
pkgs/development/python-modules/midea-local/default.nix
··· 41 ]; 42 43 meta = with lib; { 44 - description = " Control your Midea M-Smart appliances via local area network"; 45 homepage = "https://github.com/midea-lan/midea-local"; 46 changelog = "https://github.com/midea-lan/midea-local/releases/tag/${src.tag}"; 47 maintainers = with maintainers; [ k900 ];
··· 41 ]; 42 43 meta = with lib; { 44 + description = "Control your Midea M-Smart appliances via local area network"; 45 homepage = "https://github.com/midea-lan/midea-local"; 46 changelog = "https://github.com/midea-lan/midea-local/releases/tag/${src.tag}"; 47 maintainers = with maintainers; [ k900 ];
+1 -1
pkgs/development/python-modules/migen/default.nix
··· 31 passthru.updateScript = unstableGitUpdater { }; 32 33 meta = { 34 - description = " A Python toolbox for building complex digital hardware"; 35 homepage = "https://m-labs.hk/migen"; 36 license = lib.licenses.bsd2; 37 maintainers = with lib.maintainers; [ l-as ];
··· 31 passthru.updateScript = unstableGitUpdater { }; 32 33 meta = { 34 + description = "Python toolbox for building complex digital hardware"; 35 homepage = "https://m-labs.hk/migen"; 36 license = lib.licenses.bsd2; 37 maintainers = with lib.maintainers; [ l-as ];
+1 -1
pkgs/development/python-modules/plumbum/default.nix
··· 66 meta = with lib; { 67 description = "Module Shell Combinators"; 68 changelog = "https://github.com/tomerfiliba/plumbum/releases/tag/v${version}"; 69 - homepage = " https://github.com/tomerfiliba/plumbum"; 70 license = licenses.mit; 71 maintainers = [ ]; 72 };
··· 66 meta = with lib; { 67 description = "Module Shell Combinators"; 68 changelog = "https://github.com/tomerfiliba/plumbum/releases/tag/v${version}"; 69 + homepage = "https://github.com/tomerfiliba/plumbum"; 70 license = licenses.mit; 71 maintainers = [ ]; 72 };
+2 -2
pkgs/development/python-modules/pyenphase/default.nix
··· 22 23 buildPythonPackage rec { 24 pname = "pyenphase"; 25 - version = "2.2.1"; 26 pyproject = true; 27 28 disabled = pythonOlder "3.11"; ··· 31 owner = "pyenphase"; 32 repo = "pyenphase"; 33 tag = "v${version}"; 34 - hash = "sha256-rIGPkeEh36Au2F+zx/4vR79212BWMdnG5yz+vJ2sxfU="; 35 }; 36 37 pythonRelaxDeps = [ "tenacity" ];
··· 22 23 buildPythonPackage rec { 24 pname = "pyenphase"; 25 + version = "2.2.2"; 26 pyproject = true; 27 28 disabled = pythonOlder "3.11"; ··· 31 owner = "pyenphase"; 32 repo = "pyenphase"; 33 tag = "v${version}"; 34 + hash = "sha256-1RF1U4hMsGRa2OJJY2Plvuow3P+R7wbwd4ouo7QQ4n0="; 35 }; 36 37 pythonRelaxDeps = [ "tenacity" ];
+1 -1
pkgs/development/python-modules/pytile/default.nix
··· 52 __darwinAllowLocalNetworking = true; 53 54 meta = with lib; { 55 - description = " Python API for Tile Bluetooth trackers"; 56 longDescription = '' 57 pytile is a simple Python library for retrieving information on Tile 58 Bluetooth trackers (including last location and more).
··· 52 __darwinAllowLocalNetworking = true; 53 54 meta = with lib; { 55 + description = "Python API for Tile Bluetooth trackers"; 56 longDescription = '' 57 pytile is a simple Python library for retrieving information on Tile 58 Bluetooth trackers (including last location and more).
+2 -2
pkgs/development/python-modules/tesla-fleet-api/default.nix
··· 15 16 buildPythonPackage rec { 17 pname = "tesla-fleet-api"; 18 - version = "1.2.0"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.10"; ··· 24 owner = "Teslemetry"; 25 repo = "python-tesla-fleet-api"; 26 tag = "v${version}"; 27 - hash = "sha256-z7oniC58MpWlz/IGd2oRWgoj5yAL/gaDHGotLKK2CVc="; 28 }; 29 30 build-system = [ setuptools ];
··· 15 16 buildPythonPackage rec { 17 pname = "tesla-fleet-api"; 18 + version = "1.2.2"; 19 pyproject = true; 20 21 disabled = pythonOlder "3.10"; ··· 24 owner = "Teslemetry"; 25 repo = "python-tesla-fleet-api"; 26 tag = "v${version}"; 27 + hash = "sha256-FWOAjNjzpImDWSFxbVVdBFuM1gUJUYyLN694B24kD9U="; 28 }; 29 30 build-system = [ setuptools ];
+1 -1
pkgs/os-specific/linux/rtw89/default.nix
··· 38 ''; 39 40 meta = with lib; { 41 - description = " Driver for Realtek 8852AE, 8852BE, and 8853CE, 802.11ax devices"; 42 homepage = "https://github.com/lwfinger/rtw89"; 43 license = with licenses; [ gpl2Only ]; 44 maintainers = with maintainers; [ tvorog ];
··· 38 ''; 39 40 meta = with lib; { 41 + description = "Driver for Realtek 8852AE, 8852BE, and 8853CE, 802.11ax devices"; 42 homepage = "https://github.com/lwfinger/rtw89"; 43 license = with licenses; [ gpl2Only ]; 44 maintainers = with maintainers; [ tvorog ];
+1 -1
pkgs/servers/home-assistant/component-packages.nix
··· 2 # Do not edit! 3 4 { 5 - version = "2025.7.2"; 6 components = { 7 "3_day_blinds" = 8 ps: with ps; [
··· 2 # Do not edit! 3 4 { 5 + version = "2025.7.3"; 6 components = { 7 "3_day_blinds" = 8 ps: with ps; [
+3 -3
pkgs/servers/home-assistant/default.nix
··· 354 extraBuildInputs = extraPackages python.pkgs; 355 356 # Don't forget to run update-component-packages.py after updating 357 - hassVersion = "2025.7.2"; 358 359 in 360 python.pkgs.buildPythonApplication rec { ··· 375 owner = "home-assistant"; 376 repo = "core"; 377 tag = version; 378 - hash = "sha256-aBIG4dxCdj1dQP5wMd5ySXggUvspGlnh7btxmMr/51Y="; 379 }; 380 381 # Secondary source is pypi sdist for translations 382 sdist = fetchPypi { 383 inherit pname version; 384 - hash = "sha256-J8KH9y8dNsKW+jc5Wkqnw9VreKoUQH0dEBbne/6xiMw="; 385 }; 386 387 build-system = with python.pkgs; [
··· 354 extraBuildInputs = extraPackages python.pkgs; 355 356 # Don't forget to run update-component-packages.py after updating 357 + hassVersion = "2025.7.3"; 358 359 in 360 python.pkgs.buildPythonApplication rec { ··· 375 owner = "home-assistant"; 376 repo = "core"; 377 tag = version; 378 + hash = "sha256-FT77obtb081QOgw+nqbQvvW+3x/L2WUr3DLT8X1Wpwg="; 379 }; 380 381 # Secondary source is pypi sdist for translations 382 sdist = fetchPypi { 383 inherit pname version; 384 + hash = "sha256-jO+rNIzEvtQ1vhSD1Xbq/SKV5XvBOb4MmkkczoeD1Kc="; 385 }; 386 387 build-system = with python.pkgs; [
+2 -2
pkgs/servers/home-assistant/frontend.nix
··· 8 # the frontend version corresponding to a specific home-assistant version can be found here 9 # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json 10 pname = "home-assistant-frontend"; 11 - version = "20250702.2"; 12 format = "wheel"; 13 14 src = fetchPypi { ··· 16 pname = "home_assistant_frontend"; 17 dist = "py3"; 18 python = "py3"; 19 - hash = "sha256-3/m2T2yUpjczHEIywdwL+fqr9juiN2Mtd1iT+X+lTxo="; 20 }; 21 22 # there is nothing to strip in this package
··· 8 # the frontend version corresponding to a specific home-assistant version can be found here 9 # https://github.com/home-assistant/home-assistant/blob/master/homeassistant/components/frontend/manifest.json 10 pname = "home-assistant-frontend"; 11 + version = "20250702.3"; 12 format = "wheel"; 13 14 src = fetchPypi { ··· 16 pname = "home_assistant_frontend"; 17 dist = "py3"; 18 python = "py3"; 19 + hash = "sha256-Uj7auy5emdP8l9vUxLbAL28UNoAi1OQ/8qIhmJMmA8Q="; 20 }; 21 22 # there is nothing to strip in this package
+2 -2
pkgs/servers/home-assistant/pytest-homeassistant-custom-component.nix
··· 18 19 buildPythonPackage rec { 20 pname = "pytest-homeassistant-custom-component"; 21 - version = "0.13.261"; 22 pyproject = true; 23 24 disabled = pythonOlder "3.13"; ··· 27 owner = "MatthewFlamm"; 28 repo = "pytest-homeassistant-custom-component"; 29 rev = "refs/tags/${version}"; 30 - hash = "sha256-23qNOWz04uEPg2SHsdERVcFuYoVK16lznWYm8R1fJXc="; 31 }; 32 33 build-system = [ setuptools ];
··· 18 19 buildPythonPackage rec { 20 pname = "pytest-homeassistant-custom-component"; 21 + version = "0.13.262"; 22 pyproject = true; 23 24 disabled = pythonOlder "3.13"; ··· 27 owner = "MatthewFlamm"; 28 repo = "pytest-homeassistant-custom-component"; 29 rev = "refs/tags/${version}"; 30 + hash = "sha256-dlGZD9JNEMGaDpH4RiX1LJtx2owdRJvJX+V2b5QzD7U="; 31 }; 32 33 build-system = [ setuptools ];
+2 -2
pkgs/servers/home-assistant/stubs.nix
··· 10 11 buildPythonPackage rec { 12 pname = "homeassistant-stubs"; 13 - version = "2025.7.2"; 14 pyproject = true; 15 16 disabled = python.version != home-assistant.python.version; ··· 19 owner = "KapJI"; 20 repo = "homeassistant-stubs"; 21 tag = version; 22 - hash = "sha256-qpNDeJHnGmjxgFOfNDl1jyK+t/BFzC+VtkTu+zL8NaQ="; 23 }; 24 25 build-system = [
··· 10 11 buildPythonPackage rec { 12 pname = "homeassistant-stubs"; 13 + version = "2025.7.3"; 14 pyproject = true; 15 16 disabled = python.version != home-assistant.python.version; ··· 19 owner = "KapJI"; 20 repo = "homeassistant-stubs"; 21 tag = version; 22 + hash = "sha256-iHNBFtdIQMAKiQGJ35xCBqDbYYphoAJPXjhmgIEEE5E="; 23 }; 24 25 build-system = [
+1 -1
pkgs/servers/home-assistant/update-component-packages.py
··· 97 with urlopen( 98 f"https://github.com/home-assistant/home-assistant/archive/{version}.tar.gz" 99 ) as response: 100 - tarfile.open(fileobj=BytesIO(response.read())).extractall(tmp) 101 # Use part of a script from the Home Assistant codebase 102 core_path = os.path.join(tmp, f"core-{version}") 103
··· 97 with urlopen( 98 f"https://github.com/home-assistant/home-assistant/archive/{version}.tar.gz" 99 ) as response: 100 + tarfile.open(fileobj=BytesIO(response.read())).extractall(tmp, filter="data") 101 # Use part of a script from the Home Assistant codebase 102 core_path = os.path.join(tmp, f"core-{version}") 103
+2 -2
pkgs/servers/http/nginx/modules.nix
··· 268 }; 269 270 meta = with lib; { 271 - description = " Fancy indexes module"; 272 homepage = "https://github.com/aperezdc/ngx-fancyindex"; 273 license = with licenses; [ bsd2 ]; 274 maintainers = with maintainers; [ aneeshusa ]; ··· 340 inputs = [ libbsd ]; 341 342 meta = with lib; { 343 - description = " IP address anonymizer"; 344 homepage = "https://github.com/masonicboom/ipscrub"; 345 license = with licenses; [ bsd3 ]; 346 maintainers = [ ];
··· 268 }; 269 270 meta = with lib; { 271 + description = "Fancy indexes module"; 272 homepage = "https://github.com/aperezdc/ngx-fancyindex"; 273 license = with licenses; [ bsd2 ]; 274 maintainers = with maintainers; [ aneeshusa ]; ··· 340 inputs = [ libbsd ]; 341 342 meta = with lib; { 343 + description = "IP address anonymizer"; 344 homepage = "https://github.com/masonicboom/ipscrub"; 345 license = with licenses; [ bsd3 ]; 346 maintainers = [ ];
+1 -1
pkgs/servers/nextcloud/packages/apps/hmr_enabler.nix
··· 28 ''; 29 30 meta = { 31 - description = " Development Nextcloud app to enable apps to use hot module reloading"; 32 homepage = "https://github.com/nextcloud/hmr_enabler"; 33 changelog = "https://github.com/nextcloud/hmr_enabler/blob/master/CHANGELOG.md"; 34 license = lib.licenses.agpl3Only;
··· 28 ''; 29 30 meta = { 31 + description = "Development Nextcloud app to enable apps to use hot module reloading"; 32 homepage = "https://github.com/nextcloud/hmr_enabler"; 33 changelog = "https://github.com/nextcloud/hmr_enabler/blob/master/CHANGELOG.md"; 34 license = lib.licenses.agpl3Only;
+1 -1
pkgs/servers/web-apps/plausible/default.nix
··· 178 license = licenses.agpl3Plus; 179 homepage = "https://plausible.io/"; 180 changelog = "https://github.com/plausible/analytics/blob/${src.rev}/CHANGELOG.md"; 181 - description = " Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics"; 182 mainProgram = "plausible"; 183 teams = [ teams.cyberus ]; 184 platforms = platforms.unix;
··· 178 license = licenses.agpl3Plus; 179 homepage = "https://plausible.io/"; 180 changelog = "https://github.com/plausible/analytics/blob/${src.rev}/CHANGELOG.md"; 181 + description = "Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics"; 182 mainProgram = "plausible"; 183 teams = [ teams.cyberus ]; 184 platforms = platforms.unix;
-55
pkgs/tools/misc/valeronoi/default.nix
··· 1 - { 2 - lib, 3 - stdenv, 4 - fetchFromGitHub, 5 - boost, 6 - cgal, 7 - cmake, 8 - gpp, 9 - mpfr, 10 - qtbase, 11 - qtimageformats, 12 - qtsvg, 13 - wrapQtAppsHook, 14 - }: 15 - 16 - stdenv.mkDerivation rec { 17 - pname = "valeronoi"; 18 - version = "0.2.2"; 19 - 20 - src = fetchFromGitHub { 21 - owner = "ccoors"; 22 - repo = pname; 23 - tag = "v${version}"; 24 - sha256 = "sha256-5KXVSIqWDkXnpO+qgBzFtbJb444RW8dIVXp8Y/aAOrk="; 25 - }; 26 - 27 - buildInputs = [ 28 - boost 29 - cgal 30 - gpp 31 - mpfr 32 - qtbase 33 - qtimageformats 34 - qtsvg 35 - ]; 36 - 37 - nativeBuildInputs = [ 38 - cmake 39 - wrapQtAppsHook 40 - ]; 41 - 42 - doCheck = true; 43 - 44 - meta = with lib; { 45 - homepage = "https://github.com/ccoors/Valeronoi/"; 46 - description = "WiFi mapping companion app for Valetudo"; 47 - license = licenses.gpl3Only; 48 - platforms = [ "x86_64-linux" ]; 49 - maintainers = with maintainers; [ 50 - nova-madeline 51 - maeve 52 - ]; 53 - mainProgram = "valeronoi"; 54 - }; 55 - }
···
+10 -11
pkgs/tools/security/fwbuilder/default.nix pkgs/by-name/fw/fwbuilder/package.nix
··· 4 fetchFromGitHub, 5 cmake, 6 ninja, 7 - wrapQtAppsHook, 8 wayland, 9 wayland-protocols, 10 - qtwayland, 11 }: 12 13 - stdenv.mkDerivation rec { 14 pname = "fwbuilder"; 15 version = "6.0.0-rc1"; 16 17 src = fetchFromGitHub { 18 owner = "fwbuilder"; 19 repo = "fwbuilder"; 20 - rev = "v${version}"; 21 hash = "sha256-j5HjGcIqq93Ca9OBqEgSotoSXyw+q6Fqxa3hKk1ctwQ="; 22 }; 23 ··· 31 nativeBuildInputs = [ 32 cmake 33 ninja 34 - wrapQtAppsHook 35 ]; 36 37 buildInputs = [ 38 wayland 39 wayland-protocols 40 - qtwayland 41 ]; 42 43 - meta = with lib; { 44 description = "GUI Firewall Management Application"; 45 longDescription = '' 46 Firewall Builder is a GUI firewall management application for iptables, ··· 49 managed from a single UI. 50 ''; 51 homepage = "https://github.com/fwbuilder/fwbuilder"; 52 - license = licenses.gpl2Only; 53 - platforms = platforms.linux; 54 - maintainers = [ maintainers.elatov ]; 55 }; 56 - }
··· 4 fetchFromGitHub, 5 cmake, 6 ninja, 7 wayland, 8 wayland-protocols, 9 + libsForQt5, 10 }: 11 12 + stdenv.mkDerivation (finalAttrs: { 13 pname = "fwbuilder"; 14 version = "6.0.0-rc1"; 15 16 src = fetchFromGitHub { 17 owner = "fwbuilder"; 18 repo = "fwbuilder"; 19 + tag = "v${finalAttrs.version}"; 20 hash = "sha256-j5HjGcIqq93Ca9OBqEgSotoSXyw+q6Fqxa3hKk1ctwQ="; 21 }; 22 ··· 30 nativeBuildInputs = [ 31 cmake 32 ninja 33 + libsForQt5.wrapQtAppsHook 34 ]; 35 36 buildInputs = [ 37 wayland 38 wayland-protocols 39 + libsForQt5.qtwayland 40 ]; 41 42 + meta = { 43 description = "GUI Firewall Management Application"; 44 longDescription = '' 45 Firewall Builder is a GUI firewall management application for iptables, ··· 48 managed from a single UI. 49 ''; 50 homepage = "https://github.com/fwbuilder/fwbuilder"; 51 + license = lib.licenses.gpl2Only; 52 + platforms = lib.platforms.linux; 53 + maintainers = with lib.maintainers; [ elatov ]; 54 }; 55 + })
+1
pkgs/top-level/aliases.nix
··· 408 cargo-information = throw "'cargo-information' has been removed due to being merged upstream into 'cargo'"; # Added 2025-03-09 409 cargo-inspect = throw "'cargo-inspect' has been removed due to lack of upstream maintenance. Upstream recommends cargo-expand."; # Added 2025-01-26 410 cargo-web = throw "'cargo-web' has been removed due to lack of upstream maintenance"; # Added 2025-01-26 411 cassandra_3_0 = throw "'cassandra_3_0' has been removed has it reached end-of-life"; # Added 2025-03-23 412 cassandra_3_11 = throw "'cassandra_3_11' has been removed has it reached end-of-life"; # Added 2025-03-23 413 cawbird = throw "cawbird has been abandoned upstream and is broken anyways due to Twitter closing its API";
··· 408 cargo-information = throw "'cargo-information' has been removed due to being merged upstream into 'cargo'"; # Added 2025-03-09 409 cargo-inspect = throw "'cargo-inspect' has been removed due to lack of upstream maintenance. Upstream recommends cargo-expand."; # Added 2025-01-26 410 cargo-web = throw "'cargo-web' has been removed due to lack of upstream maintenance"; # Added 2025-01-26 411 + cargonode = throw "'cargonode' has been removed due to lack of upstream maintenance"; # Added 2025-06-18 412 cassandra_3_0 = throw "'cassandra_3_0' has been removed has it reached end-of-life"; # Added 2025-03-23 413 cassandra_3_11 = throw "'cassandra_3_11' has been removed has it reached end-of-life"; # Added 2025-03-23 414 cawbird = throw "cawbird has been abandoned upstream and is broken anyways due to Twitter closing its API";
-4
pkgs/top-level/all-packages.nix
··· 1088 1089 gp-saml-gui = python3Packages.callPackage ../tools/networking/gp-saml-gui { }; 1090 1091 - fwbuilder = libsForQt5.callPackage ../tools/security/fwbuilder { }; 1092 - 1093 inherit (callPackages ../tools/networking/ivpn/default.nix { }) 1094 ivpn 1095 ivpn-service ··· 1153 }; 1154 1155 ufolint = with python3Packages; toPythonApplication ufolint; 1156 - 1157 - valeronoi = qt6Packages.callPackage ../tools/misc/valeronoi { }; 1158 1159 veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { }; 1160
··· 1088 1089 gp-saml-gui = python3Packages.callPackage ../tools/networking/gp-saml-gui { }; 1090 1091 inherit (callPackages ../tools/networking/ivpn/default.nix { }) 1092 ivpn 1093 ivpn-service ··· 1151 }; 1152 1153 ufolint = with python3Packages; toPythonApplication ufolint; 1154 1155 veikk-linux-driver-gui = libsForQt5.callPackage ../tools/misc/veikk-linux-driver-gui { }; 1156