diff --git a/doc/build-helpers/testers.chapter.md b/doc/build-helpers/testers.chapter.md index 4ad133d260b6..e0eb0cd1a5de 100644 --- a/doc/build-helpers/testers.chapter.md +++ b/doc/build-helpers/testers.chapter.md @@ -169,7 +169,7 @@ The build will fail if `shellcheck` finds any issues. Checks that the output from running a command contains the specified version string in it as a whole word. -NOTE: In most cases, [`versionCheckHook`](#versioncheckhook) should be preferred, but this function is provided and documented here anyway. The motivation for adding either tests would be: +NOTE: This is a check you add to `passthru.tests` which is mainly run by OfBorg, but not in Hydra. If you want a version check failure to block the build altogether, then [`versionCheckHook`](#versioncheckhook) is the tool you're looking for (and recommended for quick builds). The motivation for adding either of these checks would be: - Catch dynamic linking errors and such and missing environment variables that should be added by wrapping. - Probable protection against accidentally building the wrong version, for example when using an "old" hash in a fixed-output derivation. diff --git a/doc/hooks/versionCheckHook.section.md b/doc/hooks/versionCheckHook.section.md index b8ff79d5dac8..6c45b37cd17b 100644 --- a/doc/hooks/versionCheckHook.section.md +++ b/doc/hooks/versionCheckHook.section.md @@ -1,6 +1,8 @@ # versionCheckHook {#versioncheckhook} -This hook adds a `versionCheckPhase` to the [`preInstallCheckHooks`](#ssec-installCheck-phase) that runs the main program of the derivation with a `--help` or `--version` argument, and checks that the `${version}` string is found in that output. You use it like this: +This hook adds a `versionCheckPhase` to the [`preInstallCheckHooks`](#ssec-installCheck-phase) that runs the main program of the derivation with a `--help` or `--version` argument, and checks that the `${version}` string is found in that output. If this check fails then the whole build will fail. _(A softer option is [`testers.testVersion`](#tester-testVersion).)_ + +You use it like this: ```nix { @@ -33,3 +35,5 @@ The variables that this phase control are: - `versionCheckProgramArg`: The argument that needs to be passed to `versionCheckProgram`. If undefined the hook tries first `--help` and then `--version`. Examples: `version`, `-V`, `-v`. - `preVersionCheck`: A hook to run before the check is done. - `postVersionCheck`: A hook to run after the check is done. + +This check assumes the executable is _hermetic_. If environment variables such as `PATH` or `HOME` are required for the program to function, then [`testers.testVersion`](#tester-testVersion) is currently the better alternative. diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index fcc8363179a2..56bcf86bc00e 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7102,6 +7102,11 @@ githubId = 16175276; keys = [ { fingerprint = "E4CE B0F0 B2EC 09A3 9678 F294 CC7A 7E3C 6CF3 1343"; } ]; }; + EstebanMacanek = { + name = "Esteban Macanek"; + github = "EstebanMacanek"; + githubId = 75503218; + }; ethancedwards8 = { email = "ethan@ethancedwards.com"; matrix = "@ethancedwards8:matrix.org"; diff --git a/nixos/modules/services/misc/guix/default.nix b/nixos/modules/services/misc/guix/default.nix index 049a6a5b4222..501760ab0533 100644 --- a/nixos/modules/services/misc/guix/default.nix +++ b/nixos/modules/services/misc/guix/default.nix @@ -283,7 +283,7 @@ in # It's similar to Nix daemon so there's no question whether or not this # should be sandboxed. systemd.services.guix-daemon = { - environment = serviceEnv; + environment = serviceEnv // config.networking.proxy.envVars; script = '' exec ${lib.getExe' package "guix-daemon"} \ --build-users-group=${cfg.group} \ diff --git a/pkgs/by-name/ad/adminer-pematon/package.nix b/pkgs/by-name/ad/adminer-pematon/package.nix index 2529fc4cf338..7238bfbf3b55 100644 --- a/pkgs/by-name/ad/adminer-pematon/package.nix +++ b/pkgs/by-name/ad/adminer-pematon/package.nix @@ -10,13 +10,13 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { pname = "adminer-pematon"; - version = "4.12"; + version = "4.13"; src = fetchFromGitHub { owner = "pematon"; repo = "adminer"; tag = "v${finalAttrs.version}"; - hash = "sha256-ExCHEsZ+VFmrom3632/1OOjb3zbZgiaZJDapBkBGUnQ="; + hash = "sha256-7kSQl4Ch9S+680FZBsO6ynsyF1GCkT8BPpBONmeJF9U="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/be/beancount-language-server/package.nix b/pkgs/by-name/be/beancount-language-server/package.nix index 6645f183092a..b8ec5cd3281d 100644 --- a/pkgs/by-name/be/beancount-language-server/package.nix +++ b/pkgs/by-name/be/beancount-language-server/package.nix @@ -6,16 +6,16 @@ rustPlatform.buildRustPackage rec { pname = "beancount-language-server"; - version = "1.3.6"; + version = "1.3.7"; src = fetchFromGitHub { owner = "polarmutex"; repo = "beancount-language-server"; rev = "v${version}"; - hash = "sha256-U23e32Xfa0j+U/CrCZzKjipaA0Yv5szbtTHJWWL52K4="; + hash = "sha256-aqWenvNAdDL7B7J1hvt+JXT73SJJKu9KFlpUReOp3s4="; }; - cargoHash = "sha256-OvhG+O+uHHf7e9p3vibrPt9fuGzEqG+l3GGfNwoqXBU="; + cargoHash = "sha256-4p/1sZldbbc/O2jo+PjrcComwExzzVCgDFIjWz9CfTY="; doInstallCheck = true; postInstallCheck = '' diff --git a/pkgs/by-name/bu/bun/package.nix b/pkgs/by-name/bu/bun/package.nix index 5de7c2a9e838..6c3bb7112de0 100644 --- a/pkgs/by-name/bu/bun/package.nix +++ b/pkgs/by-name/bu/bun/package.nix @@ -14,7 +14,7 @@ }: stdenvNoCC.mkDerivation rec { - version = "1.1.43"; + version = "1.2.0"; pname = "bun"; src = passthru.sources.${stdenvNoCC.hostPlatform.system} or (throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}"); @@ -73,19 +73,19 @@ stdenvNoCC.mkDerivation rec { sources = { "aarch64-darwin" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-aarch64.zip"; - hash = "sha256-3sbiB84OHnxm7bSAL6eu+EKeOUQZvWqlqCGuXDCuoBE="; + hash = "sha256-+nIXPLIiDQDi0mUP79wLWze/2Lsz2NZxtQ77QJwvV0U="; }; "aarch64-linux" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-aarch64.zip"; - hash = "sha256-SjI5u1jhmsRMRDqpANuhqyz3YCCiWzz1XJxG5IZharM="; + hash = "sha256-aF6IlwQM+qNtxkoz6EGevUqQa9A2v5DIz8vj1oBE1c8="; }; "x86_64-darwin" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-darwin-x64-baseline.zip"; - hash = "sha256-q2vBAlBJ7FRowGje7F50MUdgDrOmeyG0xHYC1nRpETY="; + hash = "sha256-6Yad3YhRz4IjK20uFdirUpazKAvNmtP55yMZgsMZXco="; }; "x86_64-linux" = fetchurl { url = "https://github.com/oven-sh/bun/releases/download/bun-v${version}/bun-linux-x64.zip"; - hash = "sha256-j5iqhwkVV2R9wjxlwyBrFO6QLI4n0CA9qhIAstH6PCE="; + hash = "sha256-B0fpcBILE6HaU0G3UaXwrxd4vYr9cLXEWPr/+VzppFM="; }; }; updateScript = writeShellScript "update-bun" '' diff --git a/pkgs/by-name/cl/cloudflare-utils/package.nix b/pkgs/by-name/cl/cloudflare-utils/package.nix index ce3079bcc3d9..48f34dd0e08d 100644 --- a/pkgs/by-name/cl/cloudflare-utils/package.nix +++ b/pkgs/by-name/cl/cloudflare-utils/package.nix @@ -5,16 +5,16 @@ }: buildGoModule rec { pname = "cloudflare-utils"; - version = "1.3.3"; + version = "1.3.4"; src = fetchFromGitHub { owner = "Cyb3r-Jak3"; repo = "cloudflare-utils"; rev = "v${version}"; - hash = "sha256-Wa8YCwOY7kwKJmME5hWpEGrC8bxjgVnli1GUwKLyFJg="; + hash = "sha256-XYOYun7PmZEQQRVCi46tBYoNZdXedmhpdUygtVlU0bE="; }; - vendorHash = "sha256-hoU+GSJHBZtb29jJbeuaFQSn496b1xLzXJtBCbKEcYE="; + vendorHash = "sha256-fg2BJkXdCWAO83kMoxkHlEyZuVezu9rs0hEda17KObE="; meta = { description = "Helpful Cloudflare utility program"; diff --git a/pkgs/by-name/do/dovecot-fts-flatcurve/package.nix b/pkgs/by-name/do/dovecot-fts-flatcurve/package.nix new file mode 100644 index 000000000000..65dac4a74402 --- /dev/null +++ b/pkgs/by-name/do/dovecot-fts-flatcurve/package.nix @@ -0,0 +1,43 @@ +{ + lib, + stdenv, + fetchFromGitHub, + autoreconfHook, + pkg-config, + dovecot, + xapian, +}: + +stdenv.mkDerivation rec { + pname = "dovecot-fts-flatcurve"; + version = "1.0.5"; + + src = fetchFromGitHub { + owner = "slusarz"; + repo = "dovecot-fts-flatcurve"; + rev = "refs/tags/v${version}"; + hash = "sha256-96sR/pl0G0sSjh/YrXdgVgASJPhrL32xHCbBGrDxzoU="; + }; + + buildInputs = [ + xapian + ]; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + + configureFlags = [ + "--with-dovecot=${dovecot}/lib/dovecot" + "--with-moduledir=$(out)/lib/dovecot" + ]; + + meta = with lib; { + homepage = "https://slusarz.github.io/dovecot-fts-flatcurve/"; + description = "Dovecot FTS Flatcurve plugin (Xapian)"; + license = licenses.lgpl21Only; + maintainers = with maintainers; [ euxane ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/by-name/fo/forgejo-runner/package.nix b/pkgs/by-name/fo/forgejo-runner/package.nix index 46d9a2d653d3..ee846eadd863 100644 --- a/pkgs/by-name/fo/forgejo-runner/package.nix +++ b/pkgs/by-name/fo/forgejo-runner/package.nix @@ -17,17 +17,17 @@ let in buildGoModule rec { pname = "forgejo-runner"; - version = "6.0.1"; + version = "6.2.0"; src = fetchFromGitea { domain = "code.forgejo.org"; owner = "forgejo"; repo = "runner"; rev = "v${version}"; - hash = "sha256-lwWXJQDtt/qsxWrXUpxhXZTaB+GHxNtY+kLcs/hk6cw="; + hash = "sha256-2+/PJZPqKbxeWbIVx2647/xK5CqVUUvsdd67YFwjhms="; }; - vendorHash = "sha256-nY/sxXnbOYcuPr/uFrnJF8fXROnQxr0SZ5nq87sLgH8="; + vendorHash = "sha256-wvvzD2lD1TPXEriNaI6nzNGR/Kg94zC58pAR42/DlMA="; ldflags = [ "-s" @@ -58,7 +58,6 @@ buildGoModule rec { license = licenses.mit; maintainers = with maintainers; [ adamcstephens - kranzes emilylange christoph-heiss ]; diff --git a/pkgs/by-name/im/impression/package.nix b/pkgs/by-name/im/impression/package.nix index 22b359200ff3..0b38cd3d0f75 100644 --- a/pkgs/by-name/im/impression/package.nix +++ b/pkgs/by-name/im/impression/package.nix @@ -33,10 +33,9 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-F2ZyATDKnUgEOAI++54fR6coJOr9rtyGm5TzsKzkDmg="; }; - cargoDeps = rustPlatform.fetchCargoTarball { - inherit (finalAttrs) src; - name = "${finalAttrs.pname}-${finalAttrs.version}"; - hash = "sha256-H4x7D25UzDdAEad7QEsZZGLXhfiUupm3mTrNho+ShFo="; + cargoDeps = rustPlatform.fetchCargoVendor { + inherit (finalAttrs) pname version src; + hash = "sha256-mQyGQXEFmMkTvkZcniws/11u1RqnsxgNi9dvYn1Mx0o="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/mo/mongodb-ce/package.nix b/pkgs/by-name/mo/mongodb-ce/package.nix index 2fd6497c3ed0..1e9e4d04739d 100644 --- a/pkgs/by-name/mo/mongodb-ce/package.nix +++ b/pkgs/by-name/mo/mongodb-ce/package.nix @@ -66,7 +66,11 @@ stdenv.mkDerivation (finalAttrs: { nativeInstallCheckInputs = [ versionCheckHook ]; versionCheckProgram = "${placeholder "out"}/bin/mongod"; versionCheckProgramArg = [ "--version" ]; - doInstallCheck = true; + # Only enable the version install check on darwin. + # On Linux, this would fail as mongod relies on tcmalloc, which + # requires access to `/sys/devices/system/cpu/possible`. + # See https://github.com/NixOS/nixpkgs/issues/377016 + doInstallCheck = stdenv.hostPlatform.isDarwin; passthru = { diff --git a/pkgs/by-name/mo/mousai/package.nix b/pkgs/by-name/mo/mousai/package.nix index 5bbee8e4ac02..3a45a524d8e9 100644 --- a/pkgs/by-name/mo/mousai/package.nix +++ b/pkgs/by-name/mo/mousai/package.nix @@ -33,9 +33,9 @@ stdenv.mkDerivation rec { hash = "sha256-lib2rPUTKudzbZQIGZxxxzvWNlbLkLdWtb9h7+C05QE="; }; - cargoDeps = rustPlatform.fetchCargoTarball { + cargoDeps = rustPlatform.fetchCargoVendor { inherit pname version src; - hash = "sha256-KrOvPeT8zhxSTNDRJPrAbUnSgnIQegRmNe5TEgGE8+s="; + hash = "sha256-59mxTtXQaGiHHbS4vOtwm5py/1BWwaSf+CBdKEtUpno="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/pi/pika-backup/package.nix b/pkgs/by-name/pi/pika-backup/package.nix index 760fdc069c24..ef4b3357f4e8 100644 --- a/pkgs/by-name/pi/pika-backup/package.nix +++ b/pkgs/by-name/pi/pika-backup/package.nix @@ -33,10 +33,9 @@ stdenv.mkDerivation rec { hash = "sha256-DtLGD7+Ydj2fvEHU+bDQDMC/E/9VgrlVNMCG6OlPmfg="; }; - cargoDeps = rustPlatform.fetchCargoTarball { - inherit src; - name = "${pname}-${version}"; - hash = "sha256-8nFkc77FiLxMA1hMm8k5VB84l+pQeL0JSzYDytXrNUE="; + cargoDeps = rustPlatform.fetchCargoVendor { + inherit pname version src; + hash = "sha256-1JFXSVs9HPPzh+IjH4RGugrZEifPVcQho9B3hLSTL6s="; }; patches = [ diff --git a/pkgs/by-name/re/readarr/package.nix b/pkgs/by-name/re/readarr/package.nix index 5a6a9822fe2f..1719fdb04897 100644 --- a/pkgs/by-name/re/readarr/package.nix +++ b/pkgs/by-name/re/readarr/package.nix @@ -24,15 +24,15 @@ let ."${stdenv.hostPlatform.system}" or (throw "Unsupported system: ${stdenv.hostPlatform.system}"); hash = { - x64-linux_hash = "sha256-dYYvrsYR+xsS9N/btJPCaCg4mS2UVgZs5FaBbWU4ytM="; - arm64-linux_hash = "sha256-Vfdq6Mngr3Cbq844Upq84k6gH0SnbpdPK0dU7LBnJO8="; - x64-osx_hash = "sha256-7mtnnbEQ+70qY5iSfX7pDUYPqKQG2JdzGRFgm1CEhs4="; + x64-linux_hash = "sha256-a3GEZTD3wcg8hz3wNrNMU13939C10S3gfRoNPfMBuAE="; + arm64-linux_hash = "sha256-nqnNgds1VWf6MiryQS6hJzg8bi1Ckegf0CsC8dfqDTY="; + x64-osx_hash = "sha256-IiW8pwLfcpbDGSO0DQhp2+J+tG5EvXth0fi6Z5q/d4c="; } ."${arch}-${os}_hash"; in stdenv.mkDerivation rec { pname = "readarr"; - version = "0.4.8.2726"; + version = "0.4.10.2734"; src = fetchurl { url = "https://github.com/Readarr/Readarr/releases/download/v${version}/Readarr.develop.${version}.${os}-core-${arch}.tar.gz"; diff --git a/pkgs/by-name/sp/spiped/package.nix b/pkgs/by-name/sp/spiped/package.nix index 021549e4f10e..e45caedb7c07 100644 --- a/pkgs/by-name/sp/spiped/package.nix +++ b/pkgs/by-name/sp/spiped/package.nix @@ -9,11 +9,11 @@ stdenv.mkDerivation rec { pname = "spiped"; - version = "1.6.2"; + version = "1.6.3"; src = fetchurl { url = "https://www.tarsnap.com/spiped/spiped-${version}.tgz"; - hash = "sha256-BdRofRLRHX+YiNQ/PYDFQbdyHJhwONCF9xyRuwYgRWc="; + hash = "sha256-cMUwcNu7ENFEJ1Sur7AbCOyCkgPUECNkfb8aFDXuSmU="; }; buildInputs = [ openssl ]; diff --git a/pkgs/by-name/sy/syndicate_utils/lock.json b/pkgs/by-name/sy/syndicate_utils/lock.json deleted file mode 100644 index 3ffb3c36c33d..000000000000 --- a/pkgs/by-name/sy/syndicate_utils/lock.json +++ /dev/null @@ -1,142 +0,0 @@ -{ - "depends": [ - { - "method": "fetchzip", - "packages": [ - "cps" - ], - "path": "/nix/store/8gbhwni0akqskdb3qhn5nfgv6gkdz0vz-source", - "rev": "c90530ac57f98a842b7be969115c6ef08bdcc564", - "sha256": "0h8ghs2fqg68j3jdcg7grnxssmllmgg99kym2w0a3vlwca1zvr62", - "srcDir": "", - "url": "https://github.com/ehmry/cps/archive/c90530ac57f98a842b7be969115c6ef08bdcc564.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "getdns" - ], - "path": "/nix/store/x9xmn7w4k6jg8nv5bnx148ibhnsfh362-source", - "rev": "c73cbe288d9f9480586b8fa87f6d794ffb6a6ce6", - "sha256": "1sbgx2x51szr22i72n7c8jglnfmr8m7y7ga0v85d58fwadiv7g6b", - "srcDir": "src", - "url": "https://git.sr.ht/~ehmry/getdns-nim/archive/c73cbe288d9f9480586b8fa87f6d794ffb6a6ce6.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "hashlib" - ], - "path": "/nix/store/fav82xdbicvlk34nmcbl89zx99lr3mbs-source", - "rev": "f9455d4be988e14e3dc7933eb7cc7d7c4820b7ac", - "sha256": "1sx6j952lj98629qfgr7ds5aipyw9d6lldcnnqs205wpj4pkcjb3", - "srcDir": "", - "url": "https://github.com/ehmry/hashlib/archive/f9455d4be988e14e3dc7933eb7cc7d7c4820b7ac.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "preserves" - ], - "path": "/nix/store/hzb7af7lbd4kgd5y4hbgxv1lswig36yj-source", - "rev": "fd498c6457cb9ad2f3179daa40da69eec00326dd", - "sha256": "182xvw04vjw83mlcrkwkip29b44h0v8dapg2014k9011h90mdsj4", - "srcDir": "src", - "url": "https://git.syndicate-lang.org/ehmry/preserves-nim/archive/fd498c6457cb9ad2f3179daa40da69eec00326dd.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "stew" - ], - "path": "/nix/store/mqg8qzsbcc8xqabq2yzvlhvcyqypk72c-source", - "rev": "3c91b8694e15137a81ec7db37c6c58194ec94a6a", - "sha256": "17lfhfxp5nxvld78xa83p258y80ks5jb4n53152cdr57xk86y07w", - "srcDir": "", - "url": "https://github.com/status-im/nim-stew/archive/3c91b8694e15137a81ec7db37c6c58194ec94a6a.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "syndicate" - ], - "path": "/nix/store/dw30cq9gxz3353zgaq4a36ajq6chvbwc-source", - "rev": "3a4dc1f13392830b587138199643d30fdbec8541", - "sha256": "1mbd17rjm1fsx7d0ckzyjih2nzdjqs52ck9wscqcg9nvf3ib5mvh", - "srcDir": "src", - "url": "https://git.syndicate-lang.org/ehmry/syndicate-nim/archive/3a4dc1f13392830b587138199643d30fdbec8541.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "sys" - ], - "path": "/nix/store/syhxsjlsdqfap0hk4qp3s6kayk8cqknd-source", - "rev": "4ef3b624db86e331ba334e705c1aa235d55b05e1", - "sha256": "1q4qgw4an4mmmcbx48l6xk1jig1vc8p9cq9dbx39kpnb0890j32q", - "srcDir": "src", - "url": "https://github.com/ehmry/nim-sys/archive/4ef3b624db86e331ba334e705c1aa235d55b05e1.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "taps" - ], - "path": "/nix/store/6y14ia52kr7jyaa0izx37mlablmq9s65-source", - "rev": "8c8572cd971d1283e6621006b310993c632da247", - "sha256": "1dp166bv9x773jmfqppg5i3v3rilgff013vb11yzwcid9l7s3iy8", - "srcDir": "src", - "url": "https://git.sr.ht/~ehmry/nim_taps/archive/8c8572cd971d1283e6621006b310993c632da247.tar.gz" - }, - { - "date": "2024-04-02T15:38:57+01:00", - "deepClone": false, - "fetchLFS": false, - "fetchSubmodules": true, - "hash": "sha256-iZb9aAgYr4FGkqfIg49QWiCqeizIi047kFhugHiP8o0=", - "leaveDotGit": false, - "method": "git", - "packages": [ - "solo5_dispatcher" - ], - "path": "/nix/store/sf5dgj2ljvahcm6my7d61ibda51vnrii-solo5_dispatcher", - "rev": "a7a894a96a2221284012800e6fd32923d83d20bd", - "sha256": "13gjixw80vjqj0xlx2y85ixal82sa27q7j57j9383bqq11lgv5l9", - "srcDir": "pkg", - "url": "https://git.sr.ht/~ehmry/solo5_dispatcher" - }, - { - "method": "fetchzip", - "packages": [ - "bigints" - ], - "path": "/nix/store/jvrm392g8adfsgf36prgwkbyd7vh5jsw-source", - "rev": "86ea14d31eea9275e1408ca34e6bfe9c99989a96", - "sha256": "15pcpmnk1bnw3k8769rjzcpg00nahyrypwbxs88jnwr4aczp99j4", - "srcDir": "src", - "url": "https://github.com/ehmry/nim-bigints/archive/86ea14d31eea9275e1408ca34e6bfe9c99989a96.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "nimcrypto" - ], - "path": "/nix/store/h7lgq3by9mx8in03vzh0y964lnnlkalp-source", - "rev": "ff6afc6a753bd645cad4568472c7733d1715e31e", - "sha256": "0h9vpayp66pg66114bl0nsvlv1nzp7f0x5b35gbsbd7svzlcz5zj", - "srcDir": "", - "url": "https://github.com/cheatfate/nimcrypto/archive/ff6afc6a753bd645cad4568472c7733d1715e31e.tar.gz" - }, - { - "method": "fetchzip", - "packages": [ - "npeg" - ], - "path": "/nix/store/xpn694ibgipj8xak3j4bky6b3k0vp7hh-source", - "rev": "ec0cc6e64ea4c62d2aa382b176a4838474238f8d", - "sha256": "1fi9ls3xl20bmv1ikillxywl96i9al6zmmxrbffx448gbrxs86kg", - "srcDir": "src", - "url": "https://github.com/zevv/npeg/archive/ec0cc6e64ea4c62d2aa382b176a4838474238f8d.tar.gz" - } - ] -} diff --git a/pkgs/by-name/sy/syndicate_utils/package.nix b/pkgs/by-name/sy/syndicate_utils/package.nix index ee425f44d5d7..c6db93770c48 100644 --- a/pkgs/by-name/sy/syndicate_utils/package.nix +++ b/pkgs/by-name/sy/syndicate_utils/package.nix @@ -1,6 +1,6 @@ { lib, - buildNimPackage, + buildNimSbom, fetchFromGitea, libxml2, libxslt, @@ -9,27 +9,26 @@ sqlite, }: -buildNimPackage (finalAttrs: { +buildNimSbom (finalAttrs: { pname = "syndicate_utils"; - version = "20240509"; src = fetchFromGitea { domain = "git.syndicate-lang.org"; owner = "ehmry"; repo = "syndicate_utils"; rev = finalAttrs.version; - hash = "sha256-Sy6Ad0nNr/0y5W4z3SzlwfsA8hiXzlOPDOGdwbCYROs="; + hash = "sha256-X8sb/2mkhVp0jJpTk9uYSDhAVui4jHl355amRCnkNhA="; }; buildInputs = [ - postgresql.out + postgresql sqlite libxml2 libxslt openssl ]; - lockFile = ./lock.json; + nimFlags = [ "--define:nimPreviewHashRef" ]; meta = finalAttrs.src.meta // { description = "Utilities for the Syndicated Actor Model"; @@ -37,4 +36,4 @@ buildNimPackage (finalAttrs: { maintainers = [ lib.maintainers.ehmry ]; license = lib.licenses.unlicense; }; -}) +}) ./sbom.json diff --git a/pkgs/by-name/sy/syndicate_utils/sbom.json b/pkgs/by-name/sy/syndicate_utils/sbom.json new file mode 100644 index 000000000000..46a8e74877cf --- /dev/null +++ b/pkgs/by-name/sy/syndicate_utils/sbom.json @@ -0,0 +1,657 @@ +{ + "bomFormat": "CycloneDX", + "specVersion": "1.6", + "metadata": { + "component": { + "type": "application", + "bom-ref": "pkg:nim/syndicate_utils", + "name": "syndicate_utils", + "description": "Utilites for Syndicated Actors and Synit", + "version": "20250110", + "authors": [ + { + "name": "Emery Hemingway" + } + ], + "licenses": [ + { + "license": { + "id": "Unlicense" + } + } + ], + "properties": [ + { + "name": "nim:skipExt", + "value": "nim" + }, + { + "name": "nim:bin:dns-actor", + "value": "dns_actor" + }, + { + "name": "nim:bin:esc-printer-driver", + "value": "esc_printer_driver" + }, + { + "name": "nim:bin:mintsturdyref", + "value": "mintsturdyref" + }, + { + "name": "nim:bin:mount-actor", + "value": "mount_actor" + }, + { + "name": "nim:bin:msg", + "value": "msg" + }, + { + "name": "nim:bin:postgre-actor", + "value": "postgre_actor" + }, + { + "name": "nim:bin:preserve-process-environment", + "value": "preserve_process_environment" + }, + { + "name": "nim:bin:rofi-script-actor", + "value": "rofi_script_actor" + }, + { + "name": "nim:bin:sqlite-actor", + "value": "sqlite_actor" + }, + { + "name": "nim:bin:syndesizer", + "value": "syndesizer" + }, + { + "name": "nim:bin:syndump", + "value": "syndump" + }, + { + "name": "nim:bin:synqa", + "value": "synqa" + }, + { + "name": "nim:bin:xslt-actor", + "value": "xslt_actor" + }, + { + "name": "nim:srcDir", + "value": "src" + }, + { + "name": "nim:backend", + "value": "c" + } + ] + } + }, + "components": [ + { + "type": "library", + "bom-ref": "pkg:nim/syndicate", + "name": "syndicate", + "version": "trunk", + "externalReferences": [ + { + "url": "https://git.syndicate-lang.org/ehmry/syndicate-nim/archive/eb3c522f9f051ceeef4c8518820fcd90fe2a2c2d.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://git.syndicate-lang.org/ehmry/syndicate-nim.git", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/sg7dxaz3g2qgb2sp0lzyyl2iwddbxljl-source" + }, + { + "name": "nix:fod:rev", + "value": "eb3c522f9f051ceeef4c8518820fcd90fe2a2c2d" + }, + { + "name": "nix:fod:sha256", + "value": "1gjjybfgw99dm8m5i6nm5zsgs7bavkqw6pgia8pc4n41h4ppshiw" + }, + { + "name": "nix:fod:url", + "value": "https://git.syndicate-lang.org/ehmry/syndicate-nim/archive/eb3c522f9f051ceeef4c8518820fcd90fe2a2c2d.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "trunk" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/preserves", + "name": "preserves", + "version": "20241221", + "externalReferences": [ + { + "url": "https://git.syndicate-lang.org/ehmry/preserves-nim/archive/c9f5806b153b2fd3ed8f868f8cf36cdbc25cd3d5.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://git.syndicate-lang.org/ehmry/preserves-nim.git", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/jr5la48ywfs0ghn5v5256rjqwyxzmd7a-source" + }, + { + "name": "nix:fod:rev", + "value": "c9f5806b153b2fd3ed8f868f8cf36cdbc25cd3d5" + }, + { + "name": "nix:fod:sha256", + "value": "1fh8r9mhr3f4mf45fc1shnqfxdrdlif1nsvqd016ni16vmcvclmc" + }, + { + "name": "nix:fod:url", + "value": "https://git.syndicate-lang.org/ehmry/preserves-nim/archive/c9f5806b153b2fd3ed8f868f8cf36cdbc25cd3d5.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "20241221" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + }, + { + "name": "nix:fod:date", + "value": "2024-05-23T15:58:40+03:00" + }, + { + "name": "nix:fod:hash", + "value": "sha256-JvdvLdPajDgIPbLblO0LbOm0wEp530fs8LYmgH885sk=" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/sys", + "name": "sys", + "version": "4ef3b624db86e331ba334e705c1aa235d55b05e1", + "externalReferences": [ + { + "url": "https://github.com/ehmry/nim-sys/archive/4ef3b624db86e331ba334e705c1aa235d55b05e1.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://github.com/ehmry/nim-sys.git", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/syhxsjlsdqfap0hk4qp3s6kayk8cqknd-source" + }, + { + "name": "nix:fod:rev", + "value": "4ef3b624db86e331ba334e705c1aa235d55b05e1" + }, + { + "name": "nix:fod:sha256", + "value": "1q4qgw4an4mmmcbx48l6xk1jig1vc8p9cq9dbx39kpnb0890j32q" + }, + { + "name": "nix:fod:url", + "value": "https://github.com/ehmry/nim-sys/archive/4ef3b624db86e331ba334e705c1aa235d55b05e1.tar.gz" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/taps", + "name": "taps", + "version": "20240405", + "externalReferences": [ + { + "url": "https://git.sr.ht/~ehmry/nim_taps/archive/8c8572cd971d1283e6621006b310993c632da247.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://git.sr.ht/~ehmry/nim_taps", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/6y14ia52kr7jyaa0izx37mlablmq9s65-source" + }, + { + "name": "nix:fod:rev", + "value": "8c8572cd971d1283e6621006b310993c632da247" + }, + { + "name": "nix:fod:sha256", + "value": "1dp166bv9x773jmfqppg5i3v3rilgff013vb11yzwcid9l7s3iy8" + }, + { + "name": "nix:fod:url", + "value": "https://git.sr.ht/~ehmry/nim_taps/archive/8c8572cd971d1283e6621006b310993c632da247.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "20240405" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/nimcrypto", + "name": "nimcrypto", + "version": "traditional-api", + "externalReferences": [ + { + "url": "https://github.com/cheatfate/nimcrypto/archive/602c5d20c69c76137201b5d41f788f72afb95aa8.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://github.com/cheatfate/nimcrypto", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/zyr8zwh7vaiycn1s4r8cxwc71f2k5l0h-source" + }, + { + "name": "nix:fod:rev", + "value": "602c5d20c69c76137201b5d41f788f72afb95aa8" + }, + { + "name": "nix:fod:sha256", + "value": "1dmdmgb6b9m5f8dyxk781nnd61dsk3hdxqks7idk9ncnpj9fng65" + }, + { + "name": "nix:fod:url", + "value": "https://github.com/cheatfate/nimcrypto/archive/602c5d20c69c76137201b5d41f788f72afb95aa8.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "traditional-api" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/npeg", + "name": "npeg", + "version": "1.2.2", + "externalReferences": [ + { + "url": "https://github.com/zevv/npeg/archive/ec0cc6e64ea4c62d2aa382b176a4838474238f8d.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://github.com/zevv/npeg.git", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/xpn694ibgipj8xak3j4bky6b3k0vp7hh-source" + }, + { + "name": "nix:fod:rev", + "value": "ec0cc6e64ea4c62d2aa382b176a4838474238f8d" + }, + { + "name": "nix:fod:sha256", + "value": "1fi9ls3xl20bmv1ikillxywl96i9al6zmmxrbffx448gbrxs86kg" + }, + { + "name": "nix:fod:url", + "value": "https://github.com/zevv/npeg/archive/ec0cc6e64ea4c62d2aa382b176a4838474238f8d.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "1.2.2" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/bigints", + "name": "bigints", + "version": "20231006", + "externalReferences": [ + { + "url": "https://github.com/ehmry/nim-bigints/archive/86ea14d31eea9275e1408ca34e6bfe9c99989a96.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://github.com/ehmry/nim-bigints.git", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/jvrm392g8adfsgf36prgwkbyd7vh5jsw-source" + }, + { + "name": "nix:fod:rev", + "value": "86ea14d31eea9275e1408ca34e6bfe9c99989a96" + }, + { + "name": "nix:fod:sha256", + "value": "15pcpmnk1bnw3k8769rjzcpg00nahyrypwbxs88jnwr4aczp99j4" + }, + { + "name": "nix:fod:url", + "value": "https://github.com/ehmry/nim-bigints/archive/86ea14d31eea9275e1408ca34e6bfe9c99989a96.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "20231006" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/cps", + "name": "cps", + "version": "0.10.4", + "externalReferences": [ + { + "url": "https://github.com/nim-works/cps/archive/2a4d771a715ba45cfba3a82fa625ae7ad6591c8b.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://github.com/nim-works/cps", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/m9vpcf3dq6z2h1xpi1vlw0ycxp91s5p7-source" + }, + { + "name": "nix:fod:rev", + "value": "2a4d771a715ba45cfba3a82fa625ae7ad6591c8b" + }, + { + "name": "nix:fod:sha256", + "value": "0c62k5wpq9z9mn8cd4rm8jjc4z0xmnak4piyj5dsfbyj6sbdw2bf" + }, + { + "name": "nix:fod:url", + "value": "https://github.com/nim-works/cps/archive/2a4d771a715ba45cfba3a82fa625ae7ad6591c8b.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "0.10.4" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/stew", + "name": "stew", + "version": "3c91b8694e15137a81ec7db37c6c58194ec94a6a", + "externalReferences": [ + { + "url": "https://github.com/status-im/nim-stew/archive/3c91b8694e15137a81ec7db37c6c58194ec94a6a.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://github.com/status-im/nim-stew", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/mqg8qzsbcc8xqabq2yzvlhvcyqypk72c-source" + }, + { + "name": "nix:fod:rev", + "value": "3c91b8694e15137a81ec7db37c6c58194ec94a6a" + }, + { + "name": "nix:fod:sha256", + "value": "17lfhfxp5nxvld78xa83p258y80ks5jb4n53152cdr57xk86y07w" + }, + { + "name": "nix:fod:url", + "value": "https://github.com/status-im/nim-stew/archive/3c91b8694e15137a81ec7db37c6c58194ec94a6a.tar.gz" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/getdns", + "name": "getdns", + "version": "20241222", + "externalReferences": [ + { + "url": "https://git.sr.ht/~ehmry/getdns-nim/archive/7cdedf05a2d9b3b6b0fffcfc548c63986ac7f5a7.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://git.sr.ht/~ehmry/getdns-nim", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/k662j228f0xh75d75jb212zhy5qd85dv-source" + }, + { + "name": "nix:fod:rev", + "value": "7cdedf05a2d9b3b6b0fffcfc548c63986ac7f5a7" + }, + { + "name": "nix:fod:sha256", + "value": "1j80pv2kv7hxcmxpy6ykil01jywffaagcb1jad5aam4m9r2bfbp0" + }, + { + "name": "nix:fod:url", + "value": "https://git.sr.ht/~ehmry/getdns-nim/archive/7cdedf05a2d9b3b6b0fffcfc548c63986ac7f5a7.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "20241222" + }, + { + "name": "nix:fod:srcDir", + "value": "src" + } + ] + }, + { + "type": "library", + "bom-ref": "pkg:nim/solo5_dispatcher", + "name": "solo5_dispatcher", + "version": "20240522", + "externalReferences": [ + { + "url": "https://git.sr.ht/~ehmry/solo5_dispatcher/archive/cc64ef99416b22b12e4a076d33de9e25a163e57d.tar.gz", + "type": "source-distribution" + }, + { + "url": "https://git.sr.ht/~ehmry/solo5_dispatcher", + "type": "vcs" + } + ], + "properties": [ + { + "name": "nix:fod:method", + "value": "fetchzip" + }, + { + "name": "nix:fod:path", + "value": "/nix/store/4jj467pg4hs6warhksb8nsxn9ykz8c7c-source" + }, + { + "name": "nix:fod:rev", + "value": "cc64ef99416b22b12e4a076d33de9e25a163e57d" + }, + { + "name": "nix:fod:sha256", + "value": "1v9i9fqgx1g76yrmz2xwj9mxfwbjfpar6dsyygr68fv9031cqxq7" + }, + { + "name": "nix:fod:url", + "value": "https://git.sr.ht/~ehmry/solo5_dispatcher/archive/cc64ef99416b22b12e4a076d33de9e25a163e57d.tar.gz" + }, + { + "name": "nix:fod:ref", + "value": "20240522" + }, + { + "name": "nix:fod:srcDir", + "value": "pkg" + } + ] + } + ], + "dependencies": [ + { + "ref": "pkg:nim/syndicate_utils", + "dependsOn": [ + "pkg:nim/syndicate" + ] + }, + { + "ref": "pkg:nim/syndicate", + "dependsOn": [ + "pkg:nim/nimcrypto", + "pkg:nim/preserves", + "pkg:nim/sys", + "pkg:nim/taps" + ] + }, + { + "ref": "pkg:nim/preserves", + "dependsOn": [ + "pkg:nim/npeg", + "pkg:nim/bigints" + ] + }, + { + "ref": "pkg:nim/sys", + "dependsOn": [ + "pkg:nim/cps", + "pkg:nim/stew" + ] + }, + { + "ref": "pkg:nim/taps", + "dependsOn": [ + "pkg:nim/getdns", + "pkg:nim/sys", + "pkg:nim/cps", + "pkg:nim/solo5_dispatcher" + ] + }, + { + "ref": "pkg:nim/nimcrypto", + "dependsOn": [] + }, + { + "ref": "pkg:nim/npeg", + "dependsOn": [] + }, + { + "ref": "pkg:nim/bigints", + "dependsOn": [] + }, + { + "ref": "pkg:nim/cps", + "dependsOn": [] + }, + { + "ref": "pkg:nim/stew", + "dependsOn": [] + }, + { + "ref": "pkg:nim/getdns", + "dependsOn": [] + }, + { + "ref": "pkg:nim/solo5_dispatcher", + "dependsOn": [ + "pkg:nim/cps" + ] + } + ] +} diff --git a/pkgs/by-name/wh/whatsapp-chat-exporter/package.nix b/pkgs/by-name/wh/whatsapp-chat-exporter/package.nix index 339ce42f2be5..bf5633e48c30 100644 --- a/pkgs/by-name/wh/whatsapp-chat-exporter/package.nix +++ b/pkgs/by-name/wh/whatsapp-chat-exporter/package.nix @@ -21,6 +21,7 @@ python3Packages.buildPythonApplication rec { jinja2 pycryptodome javaobj-py3 + vobject ]; meta = with lib; { @@ -34,6 +35,9 @@ python3Packages.buildPythonApplication rec { ''; license = licenses.mit; mainProgram = "wtsexporter"; - maintainers = with maintainers; [ bbenno ]; + maintainers = with maintainers; [ + bbenno + EstebanMacanek + ]; }; } diff --git a/pkgs/development/python-modules/deepsearch-glm/default.nix b/pkgs/development/python-modules/deepsearch-glm/default.nix new file mode 100644 index 000000000000..734e301f697b --- /dev/null +++ b/pkgs/development/python-modules/deepsearch-glm/default.nix @@ -0,0 +1,106 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + cmake, + cxxopts, + deepsearch-toolkit, + docling-core, + fasttext, + fmt, + loguru, + matplotlib, + nlohmann_json, + pandas, + pcre2, + pkg-config, + poetry-core, + pybind11, + python-dotenv, + requests, + rich, + sentencepiece, + tabulate, + tqdm, + utf8cpp, + zlib, +}: + +buildPythonPackage rec { + pname = "deepsearch-glm"; + version = "1.0.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "DS4SD"; + repo = "deepsearch-glm"; + tag = "v${version}"; + hash = "sha256-3sJNkrx0tTm6RMYAwV8Aha7x8dZjf4tGdds8OScRff8="; + }; + + dontUseCmakeConfigure = true; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + build-system = [ + poetry-core + pybind11 + ]; + + env = { + NIX_CFLAGS_COMPILE = "-I${lib.getDev utf8cpp}/include/utf8cpp"; + USE_SYSTEM_DEPS = true; + }; + + optional-dependencies = { + docling = [ + docling-core + pandas + ]; + pyplot = [ + matplotlib + ]; + toolkit = [ + deepsearch-toolkit + python-dotenv + ]; + utils = [ + pandas + python-dotenv + requests + rich + tabulate + tqdm + ]; + }; + + buildInputs = [ + cxxopts + fasttext + fmt + loguru + nlohmann_json + pcre2 + sentencepiece + utf8cpp + zlib + ]; + + # Test suite insists on downloading models, data etc. from s3 bucket + doCheck = false; + + pythonImportsCheck = [ + "deepsearch_glm" + ]; + + meta = { + changelog = "https://github.com/DS4SD/deepsearch-glm/releases/tag/v${version}"; + description = "Create fast graph language models from converted PDF documents for knowledge extraction and Q&A"; + homepage = "https://github.com/DS4SD/deepsearch-glm"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ booxter ]; + }; +} diff --git a/pkgs/development/python-modules/drafthorse/default.nix b/pkgs/development/python-modules/drafthorse/default.nix index 4efde1b74bb8..81874cc6017a 100644 --- a/pkgs/development/python-modules/drafthorse/default.nix +++ b/pkgs/development/python-modules/drafthorse/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "drafthorse"; - version = "2.4.0"; + version = "2025.1.0"; pyproject = true; src = fetchFromGitHub { owner = "pretix"; repo = "python-drafthorse"; rev = version; - hash = "sha256-3W5rQ0YhyhIoZ+KsaOjlEJOrcoejPoTIJaylK7DOwKc="; + hash = "sha256-v4yN2VHSA6pOXCSHscHIECeQchZkzH+/Hal4JwGXh74="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/pypdfium2/default.nix b/pkgs/development/python-modules/pypdfium2/default.nix new file mode 100644 index 000000000000..1d1e9a0769b4 --- /dev/null +++ b/pkgs/development/python-modules/pypdfium2/default.nix @@ -0,0 +1,123 @@ +{ + lib, + pkgs, + buildPythonPackage, + fetchFromGitHub, + fetchurl, + setuptools-scm, + pdfium-binaries, + numpy, + pillow, + pytestCheckHook, + python, +}: + +let + pdfiumVersion = "${pdfium-binaries.version}"; + + headers = fetchurl { + url = "https://pdfium.googlesource.com/pdfium/+archive/refs/heads/chromium/${pdfiumVersion}/public.tar.gz"; + hash = "sha256-vKfs4Jd8LEtA3aTI+DcJMS0VOErq1IR1eThnMlxiER0="; + }; + + # They demand their own fork of ctypesgen + ctypesgen = buildPythonPackage rec { + pname = "ctypesgen"; + version = "1.1.1+g${src.rev}"; # the most recent tag + git version + pyproject = true; + + src = fetchFromGitHub { + owner = "pypdfium2-team"; + repo = "ctypesgen"; + rev = "848e9fbb1374f7f58a7ebf5e5da5c33292480b30"; + hash = "sha256-3JA7cW/xaEj/DxMHEypROwrKGo7EwUEcipRqALTvydw="; + }; + + build-system = [ + setuptools-scm + ]; + + env.SETUPTOOLS_SCM_PRETEND_VERSION = "${version}"; + }; + +in +buildPythonPackage rec { + pname = "pypdfium2"; + version = "4.30.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "pypdfium2-team"; + repo = "pypdfium2"; + tag = version; + hash = "sha256-v8f/XruGJYK3H9z4Q1rLg4fEnPHa8tTOlNTBMVxPEgA="; + }; + + build-system = [ + ctypesgen + setuptools-scm + ]; + + propagatedBuildInputs = [ + pdfium-binaries + ]; + + # Build system insists on fetching from the internet unless "cached" files + # are prepared. Even then, some code patching needs to happen to make it not + # talk to the internet. + + # The project doesn't seem very open to allow for offline building either, + # see: https://github.com/pypdfium2-team/pypdfium2/discussions/274 + preBuild = + let + pdfiumLib = lib.makeLibraryPath [ pdfium-binaries ]; + inputVersionFile = (pkgs.formats.json { }).generate "version.json" { + version = lib.strings.toInt pdfiumVersion; + source = "generated"; + flags = [ ]; + run_lds = [ pdfiumLib ]; + guard_symbols = false; + }; + bindingsDir = "data/bindings"; + headersDir = "${bindingsDir}/headers"; + versionFile = "${bindingsDir}/version.json"; + in + '' + # Preseed the headers and version file + mkdir -p ${headersDir} + tar -xf ${headers} -C ${headersDir} + install -m 644 ${inputVersionFile} ${versionFile} + + # Make generated bindings consider pdfium derivation path when loading dynamic libraries + substituteInPlace setupsrc/pypdfium2_setup/emplace.py \ + --replace-fail 'build_pdfium_bindings(pdfium_ver, flags=flags, guard_symbols=True, run_lds=[])' \ + 'build_pdfium_bindings(pdfium_ver, flags=flags, guard_symbols=True, run_lds=["${pdfiumLib}"])' + + # Short circuit the version pull from the internet + substituteInPlace setupsrc/pypdfium2_setup/packaging_base.py \ + --replace-fail 'PdfiumVer.to_full(build)._asdict()' \ + '{"major": 133, "minor": 0, "build": ${pdfiumVersion}, "patch": 1}' + ''; + env.PDFIUM_PLATFORM = "system:${pdfiumVersion}"; + + nativeCheckInputs = [ + numpy + pillow + pytestCheckHook + ]; + + pythonImportsCheck = [ + "pypdfium2" + ]; + + meta = { + changelog = "https://github.com/pypdfium2-team/pypdfium2/releases/tag/${version}"; + description = "Python bindings to PDFium"; + homepage = "https://pypdfium2.readthedocs.io/"; + license = with lib.licenses; [ + asl20 # or + mit + ]; + maintainers = with lib.maintainers; [ booxter ]; + }; +} diff --git a/pkgs/os-specific/linux/scx/scx_rustscheds.nix b/pkgs/os-specific/linux/scx/scx_rustscheds.nix index 1502f6fbb352..2e4cabfb95ea 100644 --- a/pkgs/os-specific/linux/scx/scx_rustscheds.nix +++ b/pkgs/os-specific/linux/scx/scx_rustscheds.nix @@ -13,6 +13,7 @@ rustPlatform.buildRustPackage { pname = "scx_rustscheds"; inherit (scx-common) version src; + useFetchCargoVendor = true; inherit (scx-common.versionInfo.scx) cargoHash; # Copy compiled headers and libs from scx.cscheds diff --git a/pkgs/os-specific/linux/scx/version.json b/pkgs/os-specific/linux/scx/version.json index f1c52f59fe75..e603cab61294 100644 --- a/pkgs/os-specific/linux/scx/version.json +++ b/pkgs/os-specific/linux/scx/version.json @@ -2,7 +2,7 @@ "scx": { "version": "1.0.8", "hash": "sha256-eXui9fvi8C/HHp8wU7STrDC8b950YZzyhoLoGHXZ6S8=", - "cargoHash": "sha256-ymFO6w4Y/VIKrnf0uF0Sso4OSc1MY2CeEwaXsAL5cgo=" + "cargoHash": "sha256-TdwymmaP6rG+Shh/9ByhXIlo+9yZapi9vWN5/5Rd3RY=" }, "bpftool": { "rev": "183e7010387d1fc9f08051426e9a9fbd5f8d409e", diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix index ebfb9be622c6..1eab18bc5fac 100644 --- a/pkgs/servers/mail/dovecot/default.nix +++ b/pkgs/servers/mail/dovecot/default.nix @@ -15,6 +15,7 @@ coreutils, clucene_core_2, icu, + libexttextcat, openldap, libsodium, libstemmer, @@ -48,6 +49,7 @@ stdenv.mkDerivation rec { lz4 clucene_core_2 icu + libexttextcat openldap libsodium libstemmer @@ -131,6 +133,7 @@ stdenv.mkDerivation rec { "--with-ldap" "--with-lucene" "--with-icu" + "--with-textcat" ] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ "i_cv_epoll_works=${if stdenv.hostPlatform.isLinux then "yes" else "no"}" diff --git a/pkgs/servers/spicedb/zed.nix b/pkgs/servers/spicedb/zed.nix index a2bc60293620..290bf13f1ccf 100644 --- a/pkgs/servers/spicedb/zed.nix +++ b/pkgs/servers/spicedb/zed.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "zed"; - version = "0.24.0"; + version = "0.25.0"; src = fetchFromGitHub { owner = "authzed"; repo = "zed"; rev = "v${version}"; - hash = "sha256-gaTTHkJkKO3MY5tAVJNHEq6ZkcS1iSBSEh1eyPzsXQY="; + hash = "sha256-6VBiMCfkmLdPx0TW8RgZDwLXZvYRZcu6zJ+/ZINo6oQ="; }; - vendorHash = "sha256-7UwpkmFwYT8XP00pTlOK25WDweaalQfA4zX7yvlFWow="; + vendorHash = "sha256-7Lg2IV7xY0qGHqwEg6h9Su0rSt2oLZzjyGGpbKwgnmU="; ldflags = [ "-X 'github.com/jzelinskie/cobrautil/v2.Version=${src.rev}'" diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index ff3cd8bb7b51..3ef71be85705 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3133,6 +3133,10 @@ self: super: with self; { deepmerge = callPackage ../development/python-modules/deepmerge { }; + deepsearch-glm = callPackage ../development/python-modules/deepsearch-glm { + inherit (pkgs) loguru sentencepiece fasttext; + }; + deepsearch-toolkit = callPackage ../development/python-modules/deepsearch-toolkit { }; deeptoolsintervals = callPackage ../development/python-modules/deeptoolsintervals { }; @@ -12363,6 +12367,8 @@ self: super: with self; { pypdf3 = callPackage ../development/python-modules/pypdf3 { }; + pypdfium2 = callPackage ../development/python-modules/pypdfium2 { }; + pypeg2 = callPackage ../development/python-modules/pypeg2 { }; pyperclip = callPackage ../development/python-modules/pyperclip { };