diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md index b3f4405ee935..7ee2dea2daf2 100644 --- a/doc/languages-frameworks/rust.section.md +++ b/doc/languages-frameworks/rust.section.md @@ -411,13 +411,13 @@ rustPlatform.buildRustPackage rec { } ``` -## Compiling non-Rust packages that include Rust code {#compiling-non-rust-packages-that-include-rust-code} +### Compiling non-Rust packages that include Rust code {#compiling-non-rust-packages-that-include-rust-code} Several non-Rust packages incorporate Rust code for performance- or security-sensitive parts. `rustPlatform` exposes several functions and hooks that can be used to integrate Cargo in non-Rust packages. -### Vendoring of dependencies {#vendoring-of-dependencies} +#### Vendoring of dependencies {#vendoring-of-dependencies} Since network access is not allowed in sandboxed builds, Rust crate dependencies need to be retrieved using a fetcher. `rustPlatform` @@ -477,7 +477,7 @@ added. To find the correct hash, you can first use `lib.fakeSha256` or `lib.fakeHash` as a stub hash. Building `cargoDeps` will then inform you of the correct hash. -### Hooks {#hooks} +#### Hooks {#hooks} `rustPlatform` provides the following hooks to automate Cargo builds: @@ -513,7 +513,7 @@ you of the correct hash. * `bindgenHook`: for crates which use `bindgen` as a build dependency, lets `bindgen` find `libclang` and `libclang` find the libraries in `buildInputs`. -### Examples {#examples} +#### Examples {#examples} #### Python package using `setuptools-rust` {#python-package-using-setuptools-rust} @@ -642,7 +642,127 @@ buildPythonPackage rec { } ``` -## Setting Up `nix-shell` {#setting-up-nix-shell} +## `buildRustCrate`: Compiling Rust crates using Nix instead of Cargo {#compiling-rust-crates-using-nix-instead-of-cargo} + +### Simple operation {#simple-operation} + +When run, `cargo build` produces a file called `Cargo.lock`, +containing pinned versions of all dependencies. Nixpkgs contains a +tool called `crate2Nix` (`nix-shell -p crate2nix`), which can be +used to turn a `Cargo.lock` into a Nix expression. That Nix +expression calls `rustc` directly (hence bypassing Cargo), and can +be used to compile a crate and all its dependencies. + +See [`crate2nix`'s documentation](https://github.com/kolloch/crate2nix#known-restrictions) +for instructions on how to use it. + +### Handling external dependencies {#handling-external-dependencies} + +Some crates require external libraries. For crates from +[crates.io](https://crates.io), such libraries can be specified in +`defaultCrateOverrides` package in nixpkgs itself. + +Starting from that file, one can add more overrides, to add features +or build inputs by overriding the hello crate in a separate file. + +```nix +with import {}; +((import ./hello.nix).hello {}).override { + crateOverrides = defaultCrateOverrides // { + hello = attrs: { buildInputs = [ openssl ]; }; + }; +} +``` + +Here, `crateOverrides` is expected to be a attribute set, where the +key is the crate name without version number and the value a function. +The function gets all attributes passed to `buildRustCrate` as first +argument and returns a set that contains all attribute that should be +overwritten. + +For more complicated cases, such as when parts of the crate's +derivation depend on the crate's version, the `attrs` argument of +the override above can be read, as in the following example, which +patches the derivation: + +```nix +with import {}; +((import ./hello.nix).hello {}).override { + crateOverrides = defaultCrateOverrides // { + hello = attrs: lib.optionalAttrs (lib.versionAtLeast attrs.version "1.0") { + postPatch = '' + substituteInPlace lib/zoneinfo.rs \ + --replace "/usr/share/zoneinfo" "${tzdata}/share/zoneinfo" + ''; + }; + }; +} +``` + +Another situation is when we want to override a nested +dependency. This actually works in the exact same way, since the +`crateOverrides` parameter is forwarded to the crate's +dependencies. For instance, to override the build inputs for crate +`libc` in the example above, where `libc` is a dependency of the main +crate, we could do: + +```nix +with import {}; +((import hello.nix).hello {}).override { + crateOverrides = defaultCrateOverrides // { + libc = attrs: { buildInputs = []; }; + }; +} +``` + +### Options and phases configuration {#options-and-phases-configuration} + +Actually, the overrides introduced in the previous section are more +general. A number of other parameters can be overridden: + +- The version of `rustc` used to compile the crate: + + ```nix + (hello {}).override { rust = pkgs.rust; }; + ``` + +- Whether to build in release mode or debug mode (release mode by + default): + + ```nix + (hello {}).override { release = false; }; + ``` + +- Whether to print the commands sent to `rustc` when building + (equivalent to `--verbose` in cargo: + + ```nix + (hello {}).override { verbose = false; }; + ``` + +- Extra arguments to be passed to `rustc`: + + ```nix + (hello {}).override { extraRustcOpts = "-Z debuginfo=2"; }; + ``` + +- Phases, just like in any other derivation, can be specified using + the following attributes: `preUnpack`, `postUnpack`, `prePatch`, + `patches`, `postPatch`, `preConfigure` (in the case of a Rust crate, + this is run before calling the "build" script), `postConfigure` + (after the "build" script),`preBuild`, `postBuild`, `preInstall` and + `postInstall`. As an example, here is how to create a new module + before running the build script: + + ```nix + (hello {}).override { + preConfigure = '' + echo "pub const PATH=\"${hi.out}\";" >> src/path.rs" + ''; + }; + ``` + +### Setting Up `nix-shell` {#setting-up-nix-shell} Oftentimes you want to develop code from within `nix-shell`. Unfortunately `buildRustCrate` does not support common `nix-shell` operations directly diff --git a/nixos/modules/services/misc/sssd.nix b/nixos/modules/services/misc/sssd.nix index edd5750a4a47..7c7a3b464a83 100644 --- a/nixos/modules/services/misc/sssd.nix +++ b/nixos/modules/services/misc/sssd.nix @@ -77,6 +77,10 @@ in { }; config = mkMerge [ (mkIf cfg.enable { + # For `sssctl` to work. + environment.etc."sssd/sssd.conf".source = settingsFile; + environment.etc."sssd/conf.d".source = "${dataDir}/conf.d"; + systemd.services.sssd = { description = "System Security Services Daemon"; wantedBy = [ "multi-user.target" ]; @@ -101,6 +105,7 @@ in { EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile; }; preStart = '' + mkdir -p "${dataDir}/conf.d" [ -f ${settingsFile} ] && rm -f ${settingsFile} old_umask=$(umask) umask 0177 diff --git a/nixos/tests/sssd.nix b/nixos/tests/sssd.nix index 25527cb59a59..c8d356e074ad 100644 --- a/nixos/tests/sssd.nix +++ b/nixos/tests/sssd.nix @@ -13,5 +13,6 @@ import ./make-test-python.nix ({ pkgs, ... }: start_all() machine.wait_for_unit("multi-user.target") machine.wait_for_unit("sssd.service") + machine.succeed("sssctl config-check") ''; }) diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index cb2c36d59e2c..dfb3ad2b3ad6 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -694,6 +694,23 @@ let }; }; + chris-hayes.chatgpt-reborn = buildVscodeMarketplaceExtension { + meta = { + changelog = "https://marketplace.visualstudio.com/items/chris-hayes.chatgpt-reborn/changelog"; + description = "A Visual Studio Code extension to support ChatGPT, GPT-3 and Codex conversations"; + downloadPage = "https://marketplace.visualstudio.com/items?itemName=chris-hayes.chatgpt-reborn"; + homepage = "https://github.com/christopher-hayes/vscode-chatgpt-reborn"; + license = lib.licenses.isc; + maintainers = [ lib.maintainers.drupol ]; + }; + mktplcRef = { + name = "chatgpt-reborn"; + publisher = "chris-hayes"; + version = "3.10.2"; + sha256 = "sha256-rVfHJxJYgwaiWuckHGcTMIoaFSs3RH4vIrp1I/48pCI="; + }; + }; + cweijan.vscode-database-client2 = buildVscodeMarketplaceExtension { mktplcRef = { name = "vscode-database-client2"; diff --git a/pkgs/applications/emulators/dosbox-staging/default.nix b/pkgs/applications/emulators/dosbox-staging/default.nix index 233dffca405e..62331bd62191 100644 --- a/pkgs/applications/emulators/dosbox-staging/default.nix +++ b/pkgs/applications/emulators/dosbox-staging/default.nix @@ -9,7 +9,7 @@ , fluidsynth , glib , gtest -, irr1 +, iir1 , libGL , libGLU , libjack2 @@ -52,7 +52,7 @@ stdenv.mkDerivation (self: { alsa-lib fluidsynth glib - irr1 + iir1 libGL libGLU libjack2 diff --git a/pkgs/applications/graphics/icon-library/default.nix b/pkgs/applications/graphics/icon-library/default.nix index 4f16a0d6e2d8..d62c6853976e 100644 --- a/pkgs/applications/graphics/icon-library/default.nix +++ b/pkgs/applications/graphics/icon-library/default.nix @@ -1,6 +1,6 @@ { lib, stdenv, fetchurl, fetchpatch, wrapGAppsHook4 , cargo, desktop-file-utils, meson, ninja, pkg-config, rustc -, gdk-pixbuf, glib, gtk4, gtksourceview5, libadwaita +, gdk-pixbuf, glib, gtk4, gtksourceview5, libadwaita, darwin }: stdenv.mkDerivation rec { @@ -25,7 +25,11 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cargo desktop-file-utils meson ninja pkg-config rustc wrapGAppsHook4 ]; - buildInputs = [ gdk-pixbuf glib gtk4 gtksourceview5 libadwaita ]; + buildInputs = [ + gdk-pixbuf glib gtk4 gtksourceview5 libadwaita + ] ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk.frameworks.Foundation + ]; meta = with lib; { homepage = "https://gitlab.gnome.org/World/design/icon-library"; diff --git a/pkgs/applications/misc/loxodo/default.nix b/pkgs/applications/misc/loxodo/default.nix index bcfd581edcf9..53ea7730cb12 100644 --- a/pkgs/applications/misc/loxodo/default.nix +++ b/pkgs/applications/misc/loxodo/default.nix @@ -11,7 +11,9 @@ python3.pkgs.buildPythonApplication { sha256 = "1cips4pvrqga8q1ibs23vjrf8dwan860x8jvjmc52h6qvvvv60yl"; }; - propagatedBuildInputs = with python3.pkgs; [ six wxPython_4_0 ]; + patches = [ ./wxpython.patch ]; + + propagatedBuildInputs = with python3.pkgs; [ six wxPython_4_2 ]; postInstall = '' mv $out/bin/loxodo.py $out/bin/loxodo diff --git a/pkgs/applications/misc/loxodo/wxpython.patch b/pkgs/applications/misc/loxodo/wxpython.patch new file mode 100644 index 000000000000..e22d3b5ad708 --- /dev/null +++ b/pkgs/applications/misc/loxodo/wxpython.patch @@ -0,0 +1,25 @@ +diff --git a/loxodo.py b/loxodo.py +index 68ad4c8..e96bc1a 100755 +--- a/loxodo.py ++++ b/loxodo.py +@@ -41,7 +41,7 @@ if len(sys.argv) > 1: + # In all other cases, use the "wx" frontend. + try: + import wx +- assert(wx.__version__.startswith('4.0.')) ++ assert(wx.__version__.startswith('4.')) + except AssertionError as e: + print('Found incompatible wxPython, the wxWidgets Python bindings: %s' % wx.__version__, file=sys.stderr) + print('Falling back to cmdline frontend.', file=sys.stderr) +diff --git a/src/frontends/wx/loxodo.py b/src/frontends/wx/loxodo.py +index bc3f509..e02c4bf 100644 +--- a/src/frontends/wx/loxodo.py ++++ b/src/frontends/wx/loxodo.py +@@ -25,6 +25,7 @@ from .loadframe import LoadFrame + + + def main(): ++ wx.SizerFlags.DisableConsistencyChecks() + app = wx.App(False) + setup_wx_locale() + mainframe = LoadFrame(None, -1, "") diff --git a/pkgs/applications/misc/printrun/default.nix b/pkgs/applications/misc/printrun/default.nix index 546c0544cffa..e436d0514a61 100644 --- a/pkgs/applications/misc/printrun/default.nix +++ b/pkgs/applications/misc/printrun/default.nix @@ -2,29 +2,33 @@ python3Packages.buildPythonApplication rec { pname = "printrun"; - version = "2.0.0rc5"; + version = "2.0.0"; src = fetchFromGitHub { owner = "kliment"; repo = "Printrun"; - rev = "${pname}-${version}"; - sha256 = "179x8lwrw2h7cxnkq7izny6qcb4nhjnd8zx893i77zfhzsa6kx81"; + rev = "printrun-${version}"; + hash = "sha256-ijJc0CVPiYW5VjTqhY1kO+Fy3dfuPoMn7KRhvcsdAZw="; }; + postPatch = '' + substituteInPlace requirements.txt \ + --replace "pyglet >= 1.1, < 2.0" "pyglet" \ + --replace "cairosvg >= 1.0.9, < 2.6.0" "cairosvg" + sed -i -r "s|/usr(/local)?/share/|$out/share/|g" printrun/utils.py + ''; + nativeBuildInputs = [ glib wrapGAppsHook ]; propagatedBuildInputs = with python3Packages; [ - appdirs cython dbus-python numpy six wxPython_4_0 psutil pyglet pyopengl pyserial + appdirs cython dbus-python numpy six wxPython_4_2 psutil pyglet pyopengl pyserial cffi cairosvg lxml ]; + # pyglet.canvas.xlib.NoSuchDisplayException: Cannot connect to "None" doCheck = false; setupPyBuildFlags = ["-i"]; - postPatch = '' - sed -i -r "s|/usr(/local)?/share/|$out/share/|g" printrun/utils.py - ''; - postInstall = '' for f in $out/share/applications/*.desktop; do sed -i -e "s|/usr/|$out/|g" "$f" @@ -40,7 +44,7 @@ python3Packages.buildPythonApplication rec { meta = with lib; { description = "Pronterface, Pronsole, and Printcore - Pure Python 3d printing host software"; homepage = "https://github.com/kliment/Printrun"; - license = licenses.gpl3; + license = licenses.gpl3Plus; platforms = platforms.linux; }; } diff --git a/pkgs/applications/networking/sniffnet/default.nix b/pkgs/applications/networking/sniffnet/default.nix index a5c0c73fac92..be02c13d6d6c 100644 --- a/pkgs/applications/networking/sniffnet/default.nix +++ b/pkgs/applications/networking/sniffnet/default.nix @@ -14,16 +14,16 @@ rustPlatform.buildRustPackage rec { pname = "sniffnet"; - version = "1.1.1"; + version = "1.1.2"; src = fetchFromGitHub { owner = "gyulyvgc"; repo = "sniffnet"; - rev = "v${version}"; - hash = "sha256-o971F3JxZUfTCaLRPYxCsU5UZ2VcvZftVEl/sZAQwpA="; + rev = "refs/tags/v${version}"; + hash = "sha256-QEMd/vOi0DFCq7AJHhii7rnBAHS89XP3/b2UIewAgLc="; }; - cargoHash = "sha256-Otn5FvZZkzO0MHiopjU2/+redyusituDQb7DT5bdbPE="; + cargoHash = "sha256-VcmiM7prK5l8Ow8K9TGUR2xfx9648IoU6i40hOGAqGQ="; nativeBuildInputs = [ pkg-config ]; @@ -51,7 +51,7 @@ rustPlatform.buildRustPackage rec { meta = with lib; { description = "Cross-platform application to monitor your network traffic with ease"; homepage = "https://github.com/gyulyvgc/sniffnet"; - changelog = "https://github.com/gyulyvgc/sniffnet/blob/main/CHANGELOG.md"; + changelog = "https://github.com/gyulyvgc/sniffnet/blob/v${version}/CHANGELOG.md"; license = with licenses; [ mit /* or */ asl20 ]; maintainers = with maintainers; [ figsoda ]; }; diff --git a/pkgs/applications/office/paperwork/paperwork-backend.nix b/pkgs/applications/office/paperwork/paperwork-backend.nix index b67dfe436fa2..c7ddfa09e234 100644 --- a/pkgs/applications/office/paperwork/paperwork-backend.nix +++ b/pkgs/applications/office/paperwork/paperwork-backend.nix @@ -1,5 +1,6 @@ { buildPythonPackage , lib +, fetchpatch , fetchFromGitLab , pyenchant , scikit-learn @@ -34,6 +35,10 @@ buildPythonPackage rec { patches = [ # disables a flaky test https://gitlab.gnome.org/World/OpenPaperwork/paperwork/-/issues/1035#note_1493700 ./flaky_test.patch + (fetchpatch { + url = "https://gitlab.gnome.org/World/OpenPaperwork/paperwork/-/commit/0f5cf0fe7ef223000e02c28e4c7576f74a778fe6.patch"; + hash = "sha256-NIK3j2TdydfeK3/udS/Pc+tJa/pPkfAmSPPeaYuaCq4="; + }) ]; patchFlags = [ "-p2" ]; diff --git a/pkgs/applications/video/kodi/addons/youtube/default.nix b/pkgs/applications/video/kodi/addons/youtube/default.nix index 5957d8a2208d..8a9ccc5554f9 100644 --- a/pkgs/applications/video/kodi/addons/youtube/default.nix +++ b/pkgs/applications/video/kodi/addons/youtube/default.nix @@ -3,11 +3,11 @@ buildKodiAddon rec { pname = "youtube"; namespace = "plugin.video.youtube"; - version = "7.0.0"; + version = "7.0.1"; src = fetchzip { url = "https://mirrors.kodi.tv/addons/nexus/${namespace}/${namespace}-${version}.zip"; - sha256 = "sha256-azluf+CATsgjotTqBUAbqB3PvWuHpsS6weakKAbk9F8="; + sha256 = "sha256-Wdju7d2kFX0V1J1TB75qEVq0UWN2xYYFNlD8UTt1New="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/compilers/binaryen/default.nix b/pkgs/development/compilers/binaryen/default.nix index 3dbc61be4197..73f32af28e19 100644 --- a/pkgs/development/compilers/binaryen/default.nix +++ b/pkgs/development/compilers/binaryen/default.nix @@ -1,31 +1,18 @@ { lib, stdenv, cmake, python3, fetchFromGitHub, emscripten, - gtest, lit, nodejs, filecheck, fetchpatch + gtest, lit, nodejs, filecheck }: stdenv.mkDerivation rec { pname = "binaryen"; - version = "111"; + version = "112"; src = fetchFromGitHub { owner = "WebAssembly"; repo = "binaryen"; rev = "version_${version}"; - sha256 = "sha256-wSwLs/YvrH7nswDSbtR6onOMArCdPE2zi6G7oA10U4Y="; + hash = "sha256-xVumVmiLMHJp3SItE8eL8OBPeq58HtOOiK9LL8SP4CQ="; }; - patches = [ - # https://github.com/WebAssembly/binaryen/pull/5378 - (fetchpatch { - url = "https://github.com/WebAssembly/binaryen/commit/a96fe1a8422140072db7ad7db421378b87898a0d.patch"; - sha256 = "sha256-Wred1IoRxcQBi0nLBWpiUSgt2ApGoGsq9GkoO3mSS6o="; - }) - # https://github.com/WebAssembly/binaryen/pull/5391 - (fetchpatch { - url = "https://github.com/WebAssembly/binaryen/commit/f92350d2949934c0e0ce4a27ec8b799ac2a85e45.patch"; - sha256 = "sha256-fBwdGSIPjF2WKNnD8I0/2hnQvqevdk3NS9fAxutkZG0="; - }) - ]; - nativeBuildInputs = [ cmake python3 ]; preConfigure = '' diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix index e063268f9680..e0cae8546585 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.4.x.nix @@ -194,6 +194,28 @@ in { hls-stylish-haskell-plugin = null; }; + # needed to build servant + http-api-data = super.http-api-data_0_5; + attoparsec-iso8601 = super.attoparsec-iso8601_1_1_0_0; + + # requires newer versions to work with GHC 9.4 + swagger2 = dontCheck super.swagger2; + servant = doJailbreak super.servant; + servant-server = doJailbreak super.servant-server; + servant-auth = doJailbreak super.servant-auth; + servant-auth-swagger = doJailbreak super.servant-auth-swagger; + servant-swagger = doJailbreak super.servant-swagger; + servant-client-core = doJailbreak super.servant-client-core; + servant-client = doJailbreak super.servant-client; + relude = doJailbreak super.relude; + + cborg = appendPatch (pkgs.fetchpatch { + name = "cborg-support-ghc-9.4.patch"; + url = "https://github.com/well-typed/cborg/pull/304.diff"; + sha256 = "sha256-W4HldlESKOVkTPhz9nkFrvbj9akCOtF1SbIt5eJqtj8="; + relative = "cborg"; + }) super.cborg; + # https://github.com/tweag/ormolu/issues/941 ormolu = doDistribute self.ormolu_0_5_3_0; fourmolu = overrideCabal (drv: { diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index 0642f04e36a4..d39c86916641 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -879,17 +879,17 @@ self: super: builtins.intersectAttrs super { domaindriven-core = dontCheck super.domaindriven-core; cachix = overrideCabal (drv: { - version = "1.3.1"; + version = "1.3.3"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; - rev = "v1.3.1"; - sha256 = "sha256-fYQrAgxEMdtMAYadff9Hg4MAh0PSfGPiYw5Z4BrvgFU="; + rev = "v1.3.3"; + sha256 = "sha256-xhLCsAkz5c+XIqQ4eGY9bSp3zBgCDCaHXZ2HLk8vqmE="; }; buildDepends = [ self.conduit-concurrent-map ]; postUnpack = "sourceRoot=$sourceRoot/cachix"; postPatch = '' - sed -i 's/1.3/1.3.1/' cachix.cabal + sed -i 's/1.3.2/1.3.3/' cachix.cabal ''; }) (super.cachix.override { nix = self.hercules-ci-cnix-store.passthru.nixPackage; @@ -897,12 +897,12 @@ self: super: builtins.intersectAttrs super { hnix-store-core = super.hnix-store-core_0_6_1_0; }); cachix-api = overrideCabal (drv: { - version = "1.3.1"; + version = "1.3.3"; src = pkgs.fetchFromGitHub { owner = "cachix"; repo = "cachix"; - rev = "v1.3.1"; - sha256 = "sha256-fYQrAgxEMdtMAYadff9Hg4MAh0PSfGPiYw5Z4BrvgFU="; + rev = "v1.3.3"; + sha256 = "sha256-xhLCsAkz5c+XIqQ4eGY9bSp3zBgCDCaHXZ2HLk8vqmE="; }; postUnpack = "sourceRoot=$sourceRoot/cachix-api"; }) super.cachix-api; diff --git a/pkgs/development/interpreters/clojure/babashka.nix b/pkgs/development/interpreters/clojure/babashka.nix index 04c605f29236..e8ed1a25224f 100644 --- a/pkgs/development/interpreters/clojure/babashka.nix +++ b/pkgs/development/interpreters/clojure/babashka.nix @@ -7,11 +7,11 @@ buildGraalvmNativeImage rec { pname = "babashka"; - version = "1.2.174"; + version = "1.3.176"; src = fetchurl { url = "https://github.com/babashka/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar"; - sha256 = "sha256-5ZvqbOU69ZZNIT5Mh7+Cg5s+gLhOnFMSIO4ZI9t6D/8="; + sha256 = "sha256-Kf7Yb7IrXiX5MGbpxvXSKqx3LEdHFV8+hgq43SAoe00="; }; graalvmDrv = graalvmCEPackages.graalvm19-ce; diff --git a/pkgs/development/libraries/irr1/default.nix b/pkgs/development/libraries/iir1/default.nix similarity index 97% rename from pkgs/development/libraries/irr1/default.nix rename to pkgs/development/libraries/iir1/default.nix index 8740919ce3ae..d277e14f567a 100644 --- a/pkgs/development/libraries/irr1/default.nix +++ b/pkgs/development/libraries/iir1/default.nix @@ -5,7 +5,7 @@ }: stdenv.mkDerivation rec { - pname = "irr1"; + pname = "iir1"; version = "1.9.4"; src = fetchFromGitHub { diff --git a/pkgs/development/libraries/libslirp/default.nix b/pkgs/development/libraries/libslirp/default.nix index 06fb0d41b8bc..9ce3241e8fbb 100644 --- a/pkgs/development/libraries/libslirp/default.nix +++ b/pkgs/development/libraries/libslirp/default.nix @@ -19,6 +19,8 @@ stdenv.mkDerivation rec { sha256 = "sha256-avUbgXPPV3IhUwZyARxCvctbVlLqDKWmMhAjdVBA3jY="; }; + separateDebugInfo = true; + nativeBuildInputs = [ meson ninja pkg-config ]; buildInputs = [ glib ]; diff --git a/pkgs/development/python-modules/adafruit-platformdetect/default.nix b/pkgs/development/python-modules/adafruit-platformdetect/default.nix index 20853b133955..f92071b27a82 100644 --- a/pkgs/development/python-modules/adafruit-platformdetect/default.nix +++ b/pkgs/development/python-modules/adafruit-platformdetect/default.nix @@ -7,7 +7,7 @@ buildPythonPackage rec { pname = "adafruit-platformdetect"; - version = "3.41.0"; + version = "3.42.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -15,7 +15,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "Adafruit-PlatformDetect"; inherit version; - hash = "sha256-NWdY1ykuF8mYxXPCwaVq6mEkQXHrUmhEy/BXDFYn2V0="; + hash = "sha256-nFpPJKQv7UNsza1PAcTsZNVp9nFVa/pHlvNRVM4UIUY="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/pkgs/development/python-modules/adblock/default.nix b/pkgs/development/python-modules/adblock/default.nix index 7dfe54fddbc4..87f42fbd35b6 100644 --- a/pkgs/development/python-modules/adblock/default.nix +++ b/pkgs/development/python-modules/adblock/default.nix @@ -39,6 +39,11 @@ buildPythonPackage rec { }) ]; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace "0.0.0" "${version}" + ''; + cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; @@ -85,6 +90,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python wrapper for Brave's adblocking library"; homepage = "https://github.com/ArniDagur/python-adblock/"; + changelog = "https://github.com/ArniDagur/python-adblock/blob/${version}/CHANGELOG.md"; maintainers = with maintainers; [ dotlambda ]; license = with licenses; [ asl20 /* or */ mit ]; }; diff --git a/pkgs/development/python-modules/aeppl/default.nix b/pkgs/development/python-modules/aeppl/default.nix index 7be777cef026..5940bc86a599 100644 --- a/pkgs/development/python-modules/aeppl/default.nix +++ b/pkgs/development/python-modules/aeppl/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "aeppl"; - version = "0.1.2"; + version = "0.1.3"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "aesara-devs"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-SxMuYKnV4VBv38CcAI7NCvHutSEB+coHnw5b1RPEpzY="; + hash = "sha256-IVABUFGOLHexiiQrtXWertddYqGfFEqqWG9+ca10p+U="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/aesara/default.nix b/pkgs/development/python-modules/aesara/default.nix index 9e053547835e..1d6abad17b49 100644 --- a/pkgs/development/python-modules/aesara/default.nix +++ b/pkgs/development/python-modules/aesara/default.nix @@ -1,11 +1,13 @@ -{ stdenv -, lib +{ lib +, stdenv , buildPythonPackage , cons , cython , etuples , fetchFromGitHub , filelock +, hatch-vcs +, hatchling , jax , jaxlib , logical-unification @@ -22,7 +24,7 @@ buildPythonPackage rec { pname = "aesara"; version = "2.8.12"; - format = "setuptools"; + format = "pyproject"; disabled = pythonOlder "3.7"; @@ -35,6 +37,8 @@ buildPythonPackage rec { nativeBuildInputs = [ cython + hatch-vcs + hatchling ]; propagatedBuildInputs = [ @@ -57,7 +61,7 @@ buildPythonPackage rec { ]; postPatch = '' - substituteInPlace setup.cfg \ + substituteInPlace pyproject.toml \ --replace "--durations=50" "" ''; @@ -75,12 +79,20 @@ buildPythonPackage rec { "tests/tensor/" "tests/sandbox/" "tests/sparse/sandbox/" + # JAX is not available on all platform and often broken + "tests/link/jax/" + ]; + + disabledTests = [ + # Disable all benchmark tests + "test_scan_multiple_output" + "test_logsumexp_benchmark" ]; meta = with lib; { description = "Python library to define, optimize, and efficiently evaluate mathematical expressions involving multi-dimensional arrays"; homepage = "https://github.com/aesara-devs/aesara"; - changelog = "https://github.com/aesara-devs/aesara/releases"; + changelog = "https://github.com/aesara-devs/aesara/releases/tag/rel-${version}"; license = licenses.bsd3; maintainers = with maintainers; [ Etjean ]; broken = (stdenv.isLinux && stdenv.isAarch64); diff --git a/pkgs/development/python-modules/azure-storage-file-share/default.nix b/pkgs/development/python-modules/azure-storage-file-share/default.nix index 2b2d22ec13c0..ffd578524ebf 100644 --- a/pkgs/development/python-modules/azure-storage-file-share/default.nix +++ b/pkgs/development/python-modules/azure-storage-file-share/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "azure-storage-file-share"; - version = "12.11.0"; + version = "12.11.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; extension = "zip"; - hash = "sha256-RlKL2q3O2gazyK7kCZLjgZZJ1K6vD0H2jpUV8epuhmQ="; + hash = "sha256-lyVbyZUDWyHZIuFPM47kY2LXlNjDXjF6soyhhIdayLA="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/faraday-agent-parameters-types/default.nix b/pkgs/development/python-modules/faraday-agent-parameters-types/default.nix index 8c532925834d..299e34d6db14 100644 --- a/pkgs/development/python-modules/faraday-agent-parameters-types/default.nix +++ b/pkgs/development/python-modules/faraday-agent-parameters-types/default.nix @@ -39,6 +39,11 @@ buildPythonPackage rec { "faraday_agent_parameters_types.utils" ]; + disabledTests = [ + # assert 'Version requested not valid' in "Invalid version: 'hola'" + "test_incorrect_version_requested" + ]; + meta = with lib; { description = "Collection of Faraday agent parameters types"; homepage = "https://github.com/infobyte/faraday_agent_parameters_types"; diff --git a/pkgs/development/python-modules/lightwave2/default.nix b/pkgs/development/python-modules/lightwave2/default.nix index 964806911d94..07f23d4312ed 100644 --- a/pkgs/development/python-modules/lightwave2/default.nix +++ b/pkgs/development/python-modules/lightwave2/default.nix @@ -7,14 +7,14 @@ buildPythonPackage rec { pname = "lightwave2"; - version = "0.8.19"; + version = "0.8.21"; format = "setuptools"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-S4nHJMaSX8qCYoUnMqb6AbObTR96Wg098FJAM+dQJTc="; + hash = "sha256-Zgsgt78ll/5NVSca4lnxXYkiw5FE2WgcO10o/IZaHgQ="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/python-songpal/default.nix b/pkgs/development/python-modules/python-songpal/default.nix index c01819d67305..44deb68dc6d9 100644 --- a/pkgs/development/python-modules/python-songpal/default.nix +++ b/pkgs/development/python-modules/python-songpal/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "python-songpal"; - version = "0.15.1"; + version = "0.15.2"; format = "pyproject"; @@ -22,7 +22,7 @@ buildPythonPackage rec { owner = "rytilahti"; repo = "python-songpal"; rev = "refs/tags/release/${version}"; - hash = "sha256-FX5pDWjUhrhK5B7zEfvihN77pSNi2QltRu0xbkUdc/c="; + hash = "sha256-bAlMOxX4rx4URk+xvlte7l005i3H0VDaH67AWMdhTeY="; }; nativeBuildInputs = [ @@ -45,6 +45,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python library for interfacing with Sony's Songpal devices"; homepage = "https://github.com/rytilahti/python-songpal"; + changelog = "https://github.com/rytilahti/python-songpal/blob/release/${version}/CHANGELOG.md"; license = licenses.gpl3Only; maintainers = with maintainers; [ dotlambda ]; }; diff --git a/pkgs/development/tools/misc/gdbgui/default.nix b/pkgs/development/tools/misc/gdbgui/default.nix index e953fa0ba40d..523cd85efb6a 100644 --- a/pkgs/development/tools/misc/gdbgui/default.nix +++ b/pkgs/development/tools/misc/gdbgui/default.nix @@ -2,8 +2,9 @@ , buildPythonApplication , fetchPypi , gdb -, flask-socketio +, eventlet , flask-compress +, flask-socketio , pygdbmi , pygments , }: @@ -11,26 +12,26 @@ buildPythonApplication rec { pname = "gdbgui"; - version = "0.15.0.1"; - + version = "0.15.1.0"; buildInputs = [ gdb ]; propagatedBuildInputs = [ - flask-socketio + eventlet flask-compress + flask-socketio pygdbmi pygments ]; src = fetchPypi { inherit pname version; - sha256 = "sha256-bwrleLn3GBx4Mie2kujtaUo+XCALM+hRLySIZERlBg0="; + sha256 = "sha256-YcD3om7N6yddm02It6/fjXDsVHG0Cs46fdGof0PMJXM="; }; postPatch = '' echo ${version} > gdbgui/VERSION.txt - # remove upper version bound - sed -ie 's!,.*<.*!!' requirements.in + # relax version requirements + sed -i 's/==.*$//' requirements.txt ''; postInstall = '' diff --git a/pkgs/games/unciv/default.nix b/pkgs/games/unciv/default.nix index 193bab3ded81..6aa2fe6312bb 100644 --- a/pkgs/games/unciv/default.nix +++ b/pkgs/games/unciv/default.nix @@ -25,11 +25,11 @@ let in stdenv.mkDerivation rec { pname = "unciv"; - version = "4.5.8"; + version = "4.5.9"; src = fetchurl { url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar"; - hash = "sha256-bVVu7imSej3ApSTpmrD3fzZCgOHyXvJQySd6d+FYILA="; + hash = "sha256-sDrVGQeyhMHurbmdqWBUDepJmdPYajiSrpqvts2view="; }; dontUnpack = true; diff --git a/pkgs/os-specific/linux/dmidecode/default.nix b/pkgs/os-specific/linux/dmidecode/default.nix index a8c263144208..f09dec758f74 100644 --- a/pkgs/os-specific/linux/dmidecode/default.nix +++ b/pkgs/os-specific/linux/dmidecode/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "dmidecode"; - version = "3.4"; + version = "3.5"; src = fetchurl { url = "mirror://savannah/dmidecode/dmidecode-${version}.tar.xz"; - sha256 = "sha256-Q8uoUdhGfJl5zNvqsZLrZjjH06aX66Xdt3naiDdUIhI="; + sha256 = "sha256-eddnNe6OJRluKnIpZM+Wg/WglYFQNTeISyVrATicwHM="; }; makeFlags = [ diff --git a/pkgs/servers/geospatial/martin/default.nix b/pkgs/servers/geospatial/martin/default.nix index 6276ad90189d..0bbe63fe3ec8 100644 --- a/pkgs/servers/geospatial/martin/default.nix +++ b/pkgs/servers/geospatial/martin/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "martin"; - version = "0.7.2"; + version = "0.8.0"; src = fetchFromGitHub { owner = "maplibre"; repo = "martin"; rev = "v${version}"; - hash = "sha256-F7CAP7PrG71EdAe2hb13L/fKSiFyNHYHHweqg2GiJeU="; + hash = "sha256-gaPq4sEt9MweY91PQJPiZT5DzZ9fQZnPNiFocGVjWTc="; }; - cargoHash = "sha256-/bIMQJ2+39PShVx/W/tOeD+EjPNLw4NianwJl9wkwmk="; + cargoHash = "sha256-LfpxPqbLZhq59CjBzTfP4ih+Mj1L/72rkosbp12+bds="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix index d9f649c4045d..60815d8fab9b 100644 --- a/pkgs/servers/tailscale/default.nix +++ b/pkgs/servers/tailscale/default.nix @@ -18,7 +18,12 @@ buildGoModule rec { subPackages = [ "cmd/tailscale" "cmd/tailscaled" ]; - ldflags = [ "-X tailscale.com/version.Long=${version}" "-X tailscale.com/version.Short=${version}" ]; + ldflags = [ + "-w" + "-s" + "-X tailscale.com/version.longStamp=${version}" + "-X tailscale.com/version.shortStamp=${version}" + ]; doCheck = false; diff --git a/pkgs/tools/admin/trivy/default.nix b/pkgs/tools/admin/trivy/default.nix index 87c31cf736bb..ac97dac146d9 100644 --- a/pkgs/tools/admin/trivy/default.nix +++ b/pkgs/tools/admin/trivy/default.nix @@ -5,17 +5,17 @@ buildGoModule rec { pname = "trivy"; - version = "0.38.2"; + version = "0.38.3"; src = fetchFromGitHub { owner = "aquasecurity"; repo = pname; rev = "v${version}"; - sha256 = "sha256-mQXXS3Hg7bnspdznvThRKaY7aoCB8UsBP6J1tVZKTj4="; + sha256 = "sha256-CSqueR++2vL4K8aexpbzawIhN0dJoSvS6Nzrn97hJe4="; }; # hash missmatch on across linux and darwin proxyVendor = true; - vendorHash = "sha256-PTPhfgI7wheK1brr/YvDh1T01vCu7YoJX8UB+SGV3Zg="; + vendorHash = "sha256-ZB3QVMeLtR9bNUnGVqcADf3RHT99b1jiVvBuGYjtJds="; excludedPackages = "misc"; diff --git a/pkgs/tools/misc/yt-dlp/default.nix b/pkgs/tools/misc/yt-dlp/default.nix index 77e5e9c3ed25..181858a828fb 100644 --- a/pkgs/tools/misc/yt-dlp/default.nix +++ b/pkgs/tools/misc/yt-dlp/default.nix @@ -9,6 +9,7 @@ , pycryptodomex , websockets , mutagen +, secretstorage , atomicparsleySupport ? true , ffmpegSupport ? true , rtmpSupport ? true @@ -28,7 +29,14 @@ buildPythonPackage rec { sha256 = "sha256-Jl1dqXp2wV19mkCIpnt4rNXc9vjP2CV8UvWB/5lv9RU="; }; - propagatedBuildInputs = [ brotli certifi mutagen pycryptodomex websockets ]; + propagatedBuildInputs = [ + brotli + certifi + mutagen + pycryptodomex + secretstorage # "optional", as in not in requirements.txt, needed for `--cookies-from-browser` + websockets + ]; # Ensure these utilities are available in $PATH: # - ffmpeg: post-processing & transcoding support diff --git a/pkgs/tools/networking/croc/default.nix b/pkgs/tools/networking/croc/default.nix index 1ff3a511f692..03faa44d1a27 100644 --- a/pkgs/tools/networking/croc/default.nix +++ b/pkgs/tools/networking/croc/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "croc"; - version = "9.6.3"; + version = "9.6.4"; src = fetchFromGitHub { owner = "schollz"; repo = pname; rev = "v${version}"; - sha256 = "sha256-nAziLnuLkkPl1/RskKEehvQBMG4sYTEv+uPOQemum9w="; + sha256 = "sha256-ksTKB/UInMHxZT7/B13jVK+w78gUF4KINv2HU1qRPgo="; }; - vendorSha256 = "sha256-yZ7S/6I5xdrfmyPkZsUUavXum8RqEVrlgrkJMQZc6IQ="; + vendorHash = "sha256-d6fsy0ROKX91YkFW2aC2A+pO7dmcmMkoz076z1XcZtE="; subPackages = [ "." ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fbfc435b53a3..b451fef5c6ec 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -19418,7 +19418,7 @@ with pkgs; c-blosc = callPackage ../development/libraries/c-blosc { }; # justStaticExecutables is needed due to https://github.com/NixOS/nix/issues/2990 - cachix = (haskell.lib.compose.justStaticExecutables haskellPackages.cachix).overrideAttrs(o: { + cachix = (haskell.lib.compose.justStaticExecutables haskell.packages.ghc94.cachix).overrideAttrs(o: { passthru = o.passthru or {} // { tests = o.passthru.tests or {} // { inherit hci; @@ -20778,7 +20778,7 @@ with pkgs; ip2location-c = callPackage ../development/libraries/ip2location-c { }; - irr1 = callPackage ../development/libraries/irr1 { }; + iir1 = callPackage ../development/libraries/iir1 { }; irrlicht = if !stdenv.isDarwin then callPackage ../development/libraries/irrlicht { } diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 7eda3c5ddca2..5941959a815b 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -475,7 +475,7 @@ in { ghc = bh.compiler.ghc944; compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-9.4.x.nix { }; }; - ghc94 = ghc942; + ghc94 = ghc944; ghc961 = callPackage ../development/haskell-modules { buildHaskellPackages = bh.packages.ghc961; ghc = bh.compiler.ghc961;