diff --git a/doc/languages-frameworks/coq.section.md b/doc/languages-frameworks/coq.section.md index fdc824781cd1..557896074bf0 100644 --- a/doc/languages-frameworks/coq.section.md +++ b/doc/languages-frameworks/coq.section.md @@ -84,7 +84,7 @@ mkCoqDerivation { [ mathcomp.ssreflect mathcomp.algebra mathcomp-finmap mathcomp-bigenough ]; meta = { - description = "A Coq/SSReflect Library for Monoidal Rings and Multinomials"; + description = "Coq/SSReflect Library for Monoidal Rings and Multinomials"; license = lib.licenses.cecill-c; }; } diff --git a/doc/languages-frameworks/javascript.section.md b/doc/languages-frameworks/javascript.section.md index 80d61816acb4..7975d7c9e43f 100644 --- a/doc/languages-frameworks/javascript.section.md +++ b/doc/languages-frameworks/javascript.section.md @@ -206,7 +206,7 @@ buildNpmPackage rec { NODE_OPTIONS = "--openssl-legacy-provider"; meta = { - description = "A modern web UI for various torrent clients with a Node.js backend and React frontend"; + description = "Modern web UI for various torrent clients with a Node.js backend and React frontend"; homepage = "https://flood.js.org"; license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ winter ]; diff --git a/doc/languages-frameworks/ocaml.section.md b/doc/languages-frameworks/ocaml.section.md index 46fddcb3b9de..acefddc7c2f2 100644 --- a/doc/languages-frameworks/ocaml.section.md +++ b/doc/languages-frameworks/ocaml.section.md @@ -113,7 +113,7 @@ buildDunePackage rec { meta = { homepage = "https://github.com/flowtype/ocaml-wtf8"; - description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates."; + description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates"; license = lib.licenses.mit; maintainers = [ lib.maintainers.eqyiel ]; }; diff --git a/doc/languages-frameworks/perl.section.md b/doc/languages-frameworks/perl.section.md index 4ef6d173a178..a3d76a44f656 100644 --- a/doc/languages-frameworks/perl.section.md +++ b/doc/languages-frameworks/perl.section.md @@ -158,7 +158,7 @@ $ nix-generate-from-cpan XML::Simple }; propagatedBuildInputs = [ XMLNamespaceSupport XMLSAX XMLSAXExpat ]; meta = { - description = "An API for simple XML files"; + description = "API for simple XML files"; license = with lib.licenses; [ artistic1 gpl1Plus ]; }; }; diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md index 07b7fad74a6e..519fd6fbf960 100644 --- a/doc/languages-frameworks/python.section.md +++ b/doc/languages-frameworks/python.section.md @@ -993,7 +993,7 @@ buildPythonPackage rec { meta = { changelog = "https://github.com/blaze/datashape/releases/tag/${version}"; homepage = "https://github.com/ContinuumIO/datashape"; - description = "A data description language"; + description = "Data description language"; license = lib.licenses.bsd2; }; } @@ -1118,7 +1118,7 @@ buildPythonPackage rec { meta = { changelog = "https://github.com/pyFFTW/pyFFTW/releases/tag/v${version}"; - description = "A pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms"; + description = "Pythonic wrapper around FFTW, the FFT library, presenting a unified interface for all the supported transforms"; homepage = "http://hgomersall.github.com/pyFFTW"; license = with lib.licenses; [ bsd2 bsd3 ]; }; diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md index e12bbe02bfb5..48c32f324df4 100644 --- a/doc/languages-frameworks/rust.section.md +++ b/doc/languages-frameworks/rust.section.md @@ -38,7 +38,7 @@ rustPlatform.buildRustPackage rec { cargoHash = "sha256-jtBw4ahSl88L0iuCXxQgZVm1EcboWRJMNtjxLVTtzts="; meta = { - description = "A fast line-oriented regex search tool, similar to ag and ack"; + description = "Fast line-oriented regex search tool, similar to ag and ack"; homepage = "https://github.com/BurntSushi/ripgrep"; license = lib.licenses.unlicense; maintainers = []; @@ -1000,7 +1000,7 @@ rustPlatform.buildRustPackage rec { doCheck = false; meta = { - description = "A fast line-oriented regex search tool, similar to ag and ack"; + description = "Fast line-oriented regex search tool, similar to ag and ack"; homepage = "https://github.com/BurntSushi/ripgrep"; license = with lib.licenses; [ mit unlicense ]; maintainers = with lib.maintainers; []; diff --git a/doc/languages-frameworks/texlive.section.md b/doc/languages-frameworks/texlive.section.md index 05ef288141c3..35fb0db9a444 100644 --- a/doc/languages-frameworks/texlive.section.md +++ b/doc/languages-frameworks/texlive.section.md @@ -183,7 +183,7 @@ let ''; meta = { - description = "A LaTeX2e class for overhead transparencies"; + description = "LaTeX2e class for overhead transparencies"; license = lib.licenses.unfreeRedistributable; maintainers = with lib.maintainers; [ veprbl ]; platforms = lib.platforms.all; diff --git a/doc/stdenv/meta.chapter.md b/doc/stdenv/meta.chapter.md index e6de030ff9c1..c8dd47533801 100644 --- a/doc/stdenv/meta.chapter.md +++ b/doc/stdenv/meta.chapter.md @@ -5,7 +5,7 @@ Nix packages can declare *meta-attributes* that contain information about a pack ```nix { meta = { - description = "A program that produces a familiar, friendly greeting"; + description = "Program that produces a familiar, friendly greeting"; longDescription = '' GNU Hello is a program that prints "Hello, world!" when you run it. It is fully customizable. diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index 96cc4301851d..38168b312e41 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -18,6 +18,8 @@ ## New Services {#sec-release-24.11-new-services} +- [FlareSolverr](https://github.com/FlareSolverr/FlareSolverr), proxy server to bypass Cloudflare protection. Available as [services.flaresolverr](#opt-services.flaresolverr.enable) service. + - [Open-WebUI](https://github.com/open-webui/open-webui), a user-friendly WebUI for LLMs. Available as [services.open-webui](#opt-services.open-webui.enable) service. diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index de15aa8c4be6..14ff9fd8b68f 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -732,6 +732,7 @@ ./services/misc/etesync-dav.nix ./services/misc/evdevremapkeys.nix ./services/misc/felix.nix + ./services/misc/flaresolverr.nix ./services/misc/forgejo.nix ./services/misc/freeswitch.nix ./services/misc/fstrim.nix diff --git a/nixos/modules/services/misc/flaresolverr.nix b/nixos/modules/services/misc/flaresolverr.nix new file mode 100644 index 000000000000..7967580307f9 --- /dev/null +++ b/nixos/modules/services/misc/flaresolverr.nix @@ -0,0 +1,58 @@ +{ + config, + pkgs, + lib, + ... +}: + +let + cfg = config.services.flaresolverr; +in +{ + options = { + services.flaresolverr = { + enable = lib.mkEnableOption "FlareSolverr, a proxy server to bypass Cloudflare protection"; + + package = lib.mkPackageOption pkgs "flaresolverr" { }; + + openFirewall = lib.mkOption { + type = lib.types.bool; + default = false; + description = "Open the port in the firewall for FlareSolverr."; + }; + + port = lib.mkOption { + type = lib.types.port; + default = 8191; + description = "The port on which FlareSolverr will listen for incoming HTTP traffic."; + }; + }; + }; + + config = lib.mkIf cfg.enable { + systemd.services.flaresolverr = { + description = "FlareSolverr"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + + environment = { + HOME = "/run/flaresolverr"; + PORT = toString cfg.port; + }; + + serviceConfig = { + SyslogIdentifier = "flaresolverr"; + Restart = "always"; + RestartSec = 5; + Type = "simple"; + DynamicUser = true; + RuntimeDirectory = "flaresolverr"; + WorkingDirectory = "/run/flaresolverr"; + ExecStart = lib.getExe cfg.package; + TimeoutStopSec = 30; + }; + }; + + networking.firewall = lib.mkIf cfg.openFirewall { allowedTCPPorts = [ cfg.port ]; }; + }; +} diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 718aec882b4c..0852f2350e1d 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -332,6 +332,7 @@ in { firewall-nftables = handleTest ./firewall.nix { nftables = true; }; fish = handleTest ./fish.nix {}; flannel = handleTestOn ["x86_64-linux"] ./flannel.nix {}; + flaresolverr = handleTest ./flaresolverr.nix {}; flood = handleTest ./flood.nix {}; floorp = handleTest ./firefox.nix { firefoxPackage = pkgs.floorp; }; fluentd = handleTest ./fluentd.nix {}; diff --git a/nixos/tests/flaresolverr.nix b/nixos/tests/flaresolverr.nix new file mode 100644 index 000000000000..0cec7adf6d6b --- /dev/null +++ b/nixos/tests/flaresolverr.nix @@ -0,0 +1,22 @@ +import ./make-test-python.nix ( + { lib, ... }: + { + name = "flaresolverr"; + meta.maintainers = with lib.maintainers; [ paveloom ]; + + nodes.machine = + { pkgs, ... }: + { + services.flaresolverr = { + enable = true; + port = 8888; + }; + }; + + testScript = '' + machine.wait_for_unit("flaresolverr.service") + machine.wait_for_open_port(8888) + machine.succeed("curl --fail http://localhost:8888/") + ''; + } +) diff --git a/pkgs/applications/audio/non/default.nix b/pkgs/applications/audio/non/default.nix index f6f2ba3f73c9..bd4c83742930 100644 --- a/pkgs/applications/audio/non/default.nix +++ b/pkgs/applications/audio/non/default.nix @@ -17,6 +17,13 @@ stdenv.mkDerivation { ladspaH liblo libsigcxx lrdf ]; + # NOTE: non provides its own waf script that is incompatible with new + # python versions. If the script is not present, wafHook will install + # a compatible version from nixpkgs. + prePatch = '' + rm waf + ''; + env.CXXFLAGS = "-std=c++14"; meta = { diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix index 51dbc26f5617..c583f08d02f7 100644 --- a/pkgs/applications/audio/radiotray-ng/default.nix +++ b/pkgs/applications/audio/radiotray-ng/default.nix @@ -105,7 +105,7 @@ stdenv.mkDerivation rec { description = "Internet radio player for linux"; homepage = "https://github.com/ebruck/radiotray-ng"; license = licenses.gpl3; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; platforms = platforms.linux; }; } diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix index d7b64de97cf2..d45c35401502 100644 --- a/pkgs/applications/editors/android-studio/default.nix +++ b/pkgs/applications/editors/android-studio/default.nix @@ -9,16 +9,16 @@ let inherit tiling_wm; }; stableVersion = { - version = "2024.1.1.11"; # "Android Studio Koala | 2024.1.1" - sha256Hash = "sha256-2PqOz+QVtEUTNQkBUB4qD0KcoDPPGAUFSxyBbEpwRWU="; + version = "2024.1.1.12"; # "Android Studio Koala | 2024.1.1 Patch 1" + sha256Hash = "sha256-Qvi/Mc4NEk3dERlfZiowBk2Pmqsgbl5mg56HamvG7aI="; }; betaVersion = { - version = "2024.1.1.10"; # "Android Studio Koala | 2024.1.1 RC 2" - sha256Hash = "sha256-84CpZfoAvJHUCO3ZBJqDbuz9xuGE/5xJfXoetJDXju8="; + version = "2024.1.2.9"; # "Android Studio Koala Feature Drop | 2024.1.2 Beta 1" + sha256Hash = "sha256-eTnpU9KrquW4nMRqde9PUmVQ05kf6kFy1yr+Ima9M50="; }; latestVersion = { - version = "2024.1.2.8"; # "Android Studio Koala Feature Drop | 2024.1.2 Canary 8" - sha256Hash = "sha256-2wqZV0UqZHprfUFvhWh0IdA9TQcwlZtWECZVwZ47ICc="; + version = "2024.1.3.1"; # "Android Studio Ladybug | 2024.1.3 Canary 1" + sha256Hash = "sha256-BSrcPdkK4dU5/bV29NGKcCR10XYMJrPvC91fcJs5Vq8="; }; in { # Attributes are named by their corresponding release channels diff --git a/pkgs/applications/misc/heimer/default.nix b/pkgs/applications/misc/heimer/default.nix index 8672169d02ab..7f9b1ae96bbb 100644 --- a/pkgs/applications/misc/heimer/default.nix +++ b/pkgs/applications/misc/heimer/default.nix @@ -32,7 +32,7 @@ mkDerivation rec { homepage = "https://github.com/juzzlin/Heimer"; changelog = "https://github.com/juzzlin/Heimer/blob/${version}/CHANGELOG"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; platforms = platforms.linux; }; } diff --git a/pkgs/applications/misc/minder/default.nix b/pkgs/applications/misc/minder/default.nix index e4e58d9bf6c3..d3e931116e77 100644 --- a/pkgs/applications/misc/minder/default.nix +++ b/pkgs/applications/misc/minder/default.nix @@ -76,7 +76,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/phase1geo/Minder"; license = licenses.gpl3Plus; platforms = platforms.linux; - maintainers = with maintainers; [ dtzWill ] ++ teams.pantheon.members; + maintainers = with maintainers; [ ] ++ teams.pantheon.members; mainProgram = "com.github.phase1geo.minder"; }; } diff --git a/pkgs/applications/misc/notable/default.nix b/pkgs/applications/misc/notable/default.nix index 0021cc722125..4dde27827c96 100644 --- a/pkgs/applications/misc/notable/default.nix +++ b/pkgs/applications/misc/notable/default.nix @@ -40,6 +40,6 @@ appimageTools.wrapType2 rec { homepage = "https://github.com/notable/notable"; license = licenses.unfree; platforms = [ "x86_64-linux" ]; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/applications/misc/vit/default.nix b/pkgs/applications/misc/vit/default.nix index 59e0345fc402..bc2d73869a60 100644 --- a/pkgs/applications/misc/vit/default.nix +++ b/pkgs/applications/misc/vit/default.nix @@ -34,7 +34,7 @@ buildPythonApplication rec { homepage = "https://github.com/scottkosty/vit"; description = "Visual Interactive Taskwarrior"; mainProgram = "vit"; - maintainers = with maintainers; [ dtzWill arcnmx ]; + maintainers = with maintainers; [ arcnmx ]; platforms = platforms.all; license = licenses.mit; }; diff --git a/pkgs/applications/networking/instant-messengers/fractal/default.nix b/pkgs/applications/networking/instant-messengers/fractal/default.nix index cdbddfe9959a..56593cc315cb 100644 --- a/pkgs/applications/networking/instant-messengers/fractal/default.nix +++ b/pkgs/applications/networking/instant-messengers/fractal/default.nix @@ -86,7 +86,7 @@ stdenv.mkDerivation rec { homepage = "https://gitlab.gnome.org/GNOME/fractal"; changelog = "https://gitlab.gnome.org/World/fractal/-/releases/${version}"; license = licenses.gpl3Plus; - maintainers = teams.gnome.members ++ (with maintainers; [ anselmschueler dtzWill ]); + maintainers = teams.gnome.members ++ (with maintainers; [ anselmschueler ]); platforms = platforms.linux; mainProgram = "fractal"; }; diff --git a/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/purple-googlechat/default.nix b/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/purple-googlechat/default.nix index b274b55ac228..217b87c26aba 100644 --- a/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/purple-googlechat/default.nix +++ b/pkgs/applications/networking/instant-messengers/pidgin/pidgin-plugins/purple-googlechat/default.nix @@ -22,6 +22,6 @@ stdenv.mkDerivation { description = "Native Google Chat support for pidgin"; license = licenses.gpl3Plus; platforms = platforms.linux; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/applications/networking/instant-messengers/slack-term/default.nix b/pkgs/applications/networking/instant-messengers/slack-term/default.nix index 2750336cf1d1..b03446d88981 100644 --- a/pkgs/applications/networking/instant-messengers/slack-term/default.nix +++ b/pkgs/applications/networking/instant-messengers/slack-term/default.nix @@ -16,7 +16,7 @@ buildGoModule rec { description = "Slack client for your terminal"; homepage = "https://github.com/erroneousboat/slack-term"; license = licenses.mit; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "slack-term"; }; } diff --git a/pkgs/applications/networking/pjsip/default.nix b/pkgs/applications/networking/pjsip/default.nix index fe0e032dd224..b267dee36909 100644 --- a/pkgs/applications/networking/pjsip/default.nix +++ b/pkgs/applications/networking/pjsip/default.nix @@ -1,17 +1,18 @@ -{ lib -, testers -, stdenv -, fetchFromGitHub -, openssl -, libsamplerate -, swig -, alsa-lib -, AppKit -, CoreFoundation -, Security -, python3 -, pythonSupport ? true -, runCommand +{ + lib, + testers, + stdenv, + fetchFromGitHub, + openssl, + libsamplerate, + swig, + alsa-lib, + AppKit, + CoreFoundation, + Security, + python3, + pythonSupport ? true, + runCommand, }: stdenv.mkDerivation (finalAttrs: { pname = "pjsip"; @@ -24,22 +25,41 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-LDA3o1QMrAxcGuOi/YRoMzXmw/wFkfDs2wweZuIJ2RY="; }; - patches = [ - ./fix-aarch64.patch + patches = [ ./fix-aarch64.patch ]; + + postPatch = '' + substituteInPlace \ + pjsip-apps/src/py_pjsua/setup.py \ + pjsip-apps/src/swig/python/setup.py \ + pjsip-apps/src/python/setup.py \ + pjsip-apps/src/python/setup-vc.py \ + --replace-fail "distutils.core" "setuptools" + ''; + + nativeBuildInputs = lib.optionals pythonSupport [ + swig + python3 + python3.pkgs.build + python3.pkgs.installer + python3.pkgs.setuptools + python3.pkgs.wheel ]; - nativeBuildInputs = - lib.optionals pythonSupport [ swig python3 ]; - - buildInputs = [ openssl libsamplerate ] + buildInputs = + [ + openssl + libsamplerate + ] ++ lib.optional stdenv.isLinux alsa-lib - ++ lib.optionals stdenv.isDarwin [ AppKit CoreFoundation Security ]; + ++ lib.optionals stdenv.isDarwin [ + AppKit + CoreFoundation + Security + ]; - env = lib.optionalAttrs stdenv.cc.isClang { - CXXFLAGS = "-std=c++11"; - } // lib.optionalAttrs stdenv.isDarwin { - NIX_CFLAGS_LINK = "-headerpad_max_install_names"; - }; + env = + lib.optionalAttrs stdenv.cc.isClang { CXXFLAGS = "-std=c++11"; } + // lib.optionalAttrs stdenv.isDarwin { NIX_CFLAGS_LINK = "-headerpad_max_install_names"; }; preConfigure = '' export LD=$CC @@ -51,52 +71,55 @@ stdenv.mkDerivation (finalAttrs: { configureFlags = [ "--enable-shared" ]; - outputs = [ "out" ] - ++ lib.optional pythonSupport "py"; + outputs = [ "out" ] ++ lib.optional pythonSupport "py"; - postInstall = '' - mkdir -p $out/bin - cp pjsip-apps/bin/pjsua-* $out/bin/pjsua - mkdir -p $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples - cp pjsip-apps/bin/samples/*/* $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples - '' + lib.optionalString pythonSupport '' - (cd pjsip-apps/src/swig/python && \ - python setup.py install --prefix=$py - ) - '' + lib.optionalString stdenv.isDarwin '' - # On MacOS relative paths are used to refer to libraries. All libraries use - # a relative path like ../lib/*.dylib or ../../lib/*.dylib. We need to - # rewrite these to use absolute ones. + postInstall = + '' + mkdir -p $out/bin + cp pjsip-apps/bin/pjsua-* $out/bin/pjsua + mkdir -p $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples + cp pjsip-apps/bin/samples/*/* $out/share/${finalAttrs.pname}-${finalAttrs.version}/samples + '' + + lib.optionalString pythonSupport '' + (cd pjsip-apps/src/swig/python && \ + python -m build --no-isolation --outdir dist/ --wheel + python -m installer --prefix $py dist/*.whl + ) + '' + + lib.optionalString stdenv.isDarwin '' + # On MacOS relative paths are used to refer to libraries. All libraries use + # a relative path like ../lib/*.dylib or ../../lib/*.dylib. We need to + # rewrite these to use absolute ones. - # First, find all libraries (and their symlinks) in our outputs to define - # the install_name_tool -change arguments we should pass. - readarray -t libraries < <( - for outputName in $(getAllOutputNames); do - find "''${!outputName}" \( -name '*.dylib*' -o -name '*.so*' \) + # First, find all libraries (and their symlinks) in our outputs to define + # the install_name_tool -change arguments we should pass. + readarray -t libraries < <( + for outputName in $(getAllOutputNames); do + find "''${!outputName}" \( -name '*.dylib*' -o -name '*.so*' \) + done + ) + + # Determine the install_name_tool -change arguments that are going to be + # applied to all libraries. + change_args=() + for lib in "''${libraries[@]}"; do + lib_name="$(basename $lib)" + change_args+=(-change ../lib/$lib_name $lib) + change_args+=(-change ../../lib/$lib_name $lib) done - ) - # Determine the install_name_tool -change arguments that are going to be - # applied to all libraries. - change_args=() - for lib in "''${libraries[@]}"; do - lib_name="$(basename $lib)" - change_args+=(-change ../lib/$lib_name $lib) - change_args+=(-change ../../lib/$lib_name $lib) - done + # Rewrite id and library refences for all non-symlinked libraries. + for lib in "''${libraries[@]}"; do + if [ -f "$lib" ]; then + install_name_tool -id $lib "''${change_args[@]}" $lib + fi + done - # Rewrite id and library refences for all non-symlinked libraries. - for lib in "''${libraries[@]}"; do - if [ -f "$lib" ]; then - install_name_tool -id $lib "''${change_args[@]}" $lib - fi - done - - # Rewrite library references for all executables. - find "$out" -executable -type f | while read executable; do - install_name_tool "''${change_args[@]}" "$executable" - done - ''; + # Rewrite library references for all executables. + find "$out" -executable -type f | while read executable; do + install_name_tool "''${change_args[@]}" "$executable" + done + ''; # We need the libgcc_s.so.1 loadable (for pthread_cancel to work) dontPatchELF = true; @@ -106,9 +129,7 @@ stdenv.mkDerivation (finalAttrs: { command = "pjsua --version"; }; - passthru.tests.pkg-config = testers.hasPkgConfigModules { - package = finalAttrs.finalPackage; - }; + passthru.tests.pkg-config = testers.hasPkgConfigModules { package = finalAttrs.finalPackage; }; passthru.tests.python-pjsua2 = runCommand "python-pjsua2" { } '' ${(python3.withPackages (pkgs: [ pkgs.pjsua2 ])).interpreter} -c "import pjsua2" > $out @@ -121,8 +142,6 @@ stdenv.mkDerivation (finalAttrs: { maintainers = with maintainers; [ olynch ]; mainProgram = "pjsua"; platforms = platforms.linux ++ platforms.darwin; - pkgConfigModules = [ - "libpjproject" - ]; + pkgConfigModules = [ "libpjproject" ]; }; }) diff --git a/pkgs/applications/office/ktimetracker/default.nix b/pkgs/applications/office/ktimetracker/default.nix index 58720625cc8e..0bca13475338 100644 --- a/pkgs/applications/office/ktimetracker/default.nix +++ b/pkgs/applications/office/ktimetracker/default.nix @@ -28,6 +28,6 @@ kio knotifications kwindowsystem kxmlgui ktextwidgets mainProgram = "ktimetracker"; license = licenses.gpl2; homepage = "https://userbase.kde.org/KTimeTracker"; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/applications/office/mendeley/default.nix b/pkgs/applications/office/mendeley/default.nix index 089e7ca057e5..56b771afdeaf 100644 --- a/pkgs/applications/office/mendeley/default.nix +++ b/pkgs/applications/office/mendeley/default.nix @@ -38,7 +38,7 @@ in appimageTools.wrapType2 { sourceProvenance = with sourceTypes; [ binaryNativeCode ]; license = licenses.unfree; platforms = [ "x86_64-linux" ]; - maintainers = with maintainers; [ dtzWill atila ]; + maintainers = with maintainers; [ atila ]; mainProgram = "mendeley-reference-manager"; }; diff --git a/pkgs/applications/office/planify/default.nix b/pkgs/applications/office/planify/default.nix index 3a084c358469..1181989a3013 100644 --- a/pkgs/applications/office/planify/default.nix +++ b/pkgs/applications/office/planify/default.nix @@ -76,7 +76,7 @@ stdenv.mkDerivation rec { description = "Task manager with Todoist support designed for GNU/Linux"; homepage = "https://github.com/alainm23/planify"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ dtzWill ] ++ teams.pantheon.members; + maintainers = with maintainers; [ ] ++ teams.pantheon.members; platforms = platforms.linux; mainProgram = "io.github.alainm23.planify"; }; diff --git a/pkgs/applications/science/math/nota/default.nix b/pkgs/applications/science/math/nota/default.nix index eae11806d725..6b13c8160cfb 100644 --- a/pkgs/applications/science/math/nota/default.nix +++ b/pkgs/applications/science/math/nota/default.nix @@ -36,6 +36,6 @@ mkDerivation rec { description = "Most beautiful command line calculator"; homepage = "https://kary.us/nota"; license = lib.licenses.mpl20; - maintainers = with lib.maintainers; [ dtzWill ]; + maintainers = with lib.maintainers; [ ]; mainProgram = "nota"; } diff --git a/pkgs/applications/system/qjournalctl/default.nix b/pkgs/applications/system/qjournalctl/default.nix index d3bec7e306d5..5c8714677ad9 100644 --- a/pkgs/applications/system/qjournalctl/default.nix +++ b/pkgs/applications/system/qjournalctl/default.nix @@ -40,6 +40,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/pentix/qjournalctl"; license = licenses.gpl3Only; platforms = platforms.all; - maintainers = with maintainers; [ dtzWill srgom romildo ]; + maintainers = with maintainers; [ srgom romildo ]; }; } diff --git a/pkgs/applications/version-management/lab/default.nix b/pkgs/applications/version-management/lab/default.nix index 0a4637d533fb..9155f7398c8a 100644 --- a/pkgs/applications/version-management/lab/default.nix +++ b/pkgs/applications/version-management/lab/default.nix @@ -36,7 +36,7 @@ buildGoModule rec { description = "Lab wraps Git or Hub, making it simple to clone, fork, and interact with repositories on GitLab"; homepage = "https://zaquestion.github.io/lab"; license = licenses.cc0; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "lab"; }; } diff --git a/pkgs/applications/video/catt/default.nix b/pkgs/applications/video/catt/default.nix index 608236d68830..5b22b30e7682 100644 --- a/pkgs/applications/video/catt/default.nix +++ b/pkgs/applications/video/catt/default.nix @@ -63,7 +63,7 @@ python.pkgs.buildPythonApplication rec { description = "Tool to send media from online sources to Chromecast devices"; homepage = "https://github.com/skorokithakis/catt"; license = licenses.bsd2; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "catt"; }; } diff --git a/pkgs/applications/video/obs-studio/Enable-file-access-and-universal-access-for-file-URL.patch b/pkgs/applications/video/obs-studio/Enable-file-access-and-universal-access-for-file-URL.patch index 49d01bacbd10..b0c9650ddb90 100644 --- a/pkgs/applications/video/obs-studio/Enable-file-access-and-universal-access-for-file-URL.patch +++ b/pkgs/applications/video/obs-studio/Enable-file-access-and-universal-access-for-file-URL.patch @@ -12,12 +12,12 @@ security model. 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/obs-browser-source.cpp b/obs-browser-source.cpp -index ab1181e..c775283 100644 +index 09b3017..1094340 100644 --- a/plugins/obs-browser/obs-browser-source.cpp +++ b/plugins/obs-browser/obs-browser-source.cpp -@@ -179,9 +179,12 @@ bool BrowserSource::CreateBrowser() +@@ -239,9 +239,12 @@ bool BrowserSource::CreateBrowser() - #if ENABLE_LOCAL_FILE_URL_SCHEME + #if ENABLE_LOCAL_FILE_URL_SCHEME && CHROME_VERSION_BUILD < 4430 if (is_local) { - /* Disable web security for file:// URLs to allow - * local content access to remote APIs */ @@ -30,7 +30,4 @@ index ab1181e..c775283 100644 + STATE_ENABLED; } #endif - --- -2.31.1 - + auto browser = CefBrowserHost::CreateBrowserSync( diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix index d787ab91db1e..5a95f746ee2e 100644 --- a/pkgs/applications/video/obs-studio/default.nix +++ b/pkgs/applications/video/obs-studio/default.nix @@ -1,6 +1,8 @@ { config +, uthash , lib , stdenv +, nv-codec-headers-12 , fetchFromGitHub , fetchpatch , addOpenGLRunpath @@ -39,7 +41,6 @@ , withFdk ? true , pipewire , libdrm -, libajantv2 , librist , libva , srt @@ -62,13 +63,13 @@ in stdenv.mkDerivation (finalAttrs: { pname = "obs-studio"; - version = "30.1.2"; + version = "30.2.0"; src = fetchFromGitHub { owner = "obsproject"; repo = "obs-studio"; rev = finalAttrs.version; - hash = "sha256-M4IINBoYrgkM37ykb4boHyWP8AxwMX0b7IAeeNIw9Qo="; + hash = "sha256-mwh2KLSz+I/8f3i/wST/2vKL/hWTCTaq53sinIEX75M="; fetchSubmodules = true; }; @@ -113,7 +114,6 @@ stdenv.mkDerivation (finalAttrs: { libvlc mbedtls pciutils - libajantv2 librist libva srt @@ -124,6 +124,8 @@ stdenv.mkDerivation (finalAttrs: { libdatachannel libvpl qrcodegencpp + uthash + nv-codec-headers-12 ] ++ optionals scriptingSupport [ luajit python3 ] ++ optional alsaSupport alsa-lib @@ -155,6 +157,7 @@ stdenv.mkDerivation (finalAttrs: { (lib.cmakeBool "ENABLE_ALSA" alsaSupport) (lib.cmakeBool "ENABLE_PULSEAUDIO" pulseaudioSupport) (lib.cmakeBool "ENABLE_PIPEWIRE" pipewireSupport) + (lib.cmakeBool "ENABLE_AJA" false) # TODO: fix linking against libajantv2 ]; env.NIX_CFLAGS_COMPILE = toString [ diff --git a/pkgs/applications/video/obs-studio/fix-nix-plugin-path.patch b/pkgs/applications/video/obs-studio/fix-nix-plugin-path.patch index baf45104e6a8..13569e8499b5 100644 --- a/pkgs/applications/video/obs-studio/fix-nix-plugin-path.patch +++ b/pkgs/applications/video/obs-studio/fix-nix-plugin-path.patch @@ -1,9 +1,9 @@ diff --git a/cmake/Modules/ObsDefaults_Linux.cmake b/cmake/Modules/ObsDefaults_Linux.cmake -index d1e58a083..a03c6b98e 100644 +index fe8d72364..1c590fcdb 100644 --- a/cmake/Modules/ObsDefaults_Linux.cmake +++ b/cmake/Modules/ObsDefaults_Linux.cmake @@ -76,7 +76,7 @@ macro(setup_obs_project) - set(OBS_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/") + set(OBS_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") set(OBS_DATA_PATH "${OBS_DATA_DESTINATION}") - set(OBS_SCRIPT_PLUGIN_PATH "${CMAKE_INSTALL_PREFIX}/${OBS_SCRIPT_PLUGIN_DESTINATION}") @@ -12,15 +12,15 @@ index d1e58a083..a03c6b98e 100644 else() set(OBS_EXECUTABLE_DESTINATION "bin/${_ARCH_SUFFIX}bit") diff --git a/libobs/obs-nix.c b/libobs/obs-nix.c -index b006a5598..531655eb3 100644 +index 77c36be5e..fe8a04813 100644 --- a/libobs/obs-nix.c +++ b/libobs/obs-nix.c -@@ -56,7 +56,7 @@ const char *get_module_extension(void) - #define FLATPAK_PLUGIN_PATH "/app/plugins" +@@ -51,7 +51,7 @@ const char *get_module_extension(void) static const char *module_bin[] = { + "../../obs-plugins/64bit", - OBS_INSTALL_PREFIX "/" OBS_PLUGIN_DESTINATION, + OBS_PLUGIN_DESTINATION, - "../../obs-plugins/" BIT_STRING, FLATPAK_PLUGIN_PATH "/" OBS_PLUGIN_DESTINATION, }; + diff --git a/pkgs/by-name/al/alpaca/fix_xdg_path_flatpak.patch b/pkgs/by-name/al/alpaca/fix_xdg_path_flatpak.patch new file mode 100644 index 000000000000..ebb0a44e6575 --- /dev/null +++ b/pkgs/by-name/al/alpaca/fix_xdg_path_flatpak.patch @@ -0,0 +1,26 @@ +diff --git a/src/alpaca.in b/src/alpaca.in +index cb883c8..a9822cc 100755 +--- a/src/alpaca.in ++++ b/src/alpaca.in +@@ -35,7 +35,21 @@ locale.bindtextdomain('alpaca', localedir) + locale.textdomain('alpaca') + gettext.install('alpaca', localedir) + ++# Use the right XDG paths outside flatpak ++def set_xdg_path(env, default): ++ app_id = "com.jeffser.Alpaca" ++ base = os.getenv(env) or os.path.expanduser(default) ++ path = os.path.join(base, app_id) ++ if not os.path.exists(path): ++ os.makedirs(path) ++ os.environ[env] = path ++ return ++ + if __name__ == '__main__': ++ set_xdg_path("XDG_CONFIG_HOME", "~/.config") ++ set_xdg_path("XDG_DATA_HOME", "~/.local/share") ++ set_xdg_path("XDG_CACHE_HOME", "~/.cache") ++ + import gi + + from gi.repository import Gio diff --git a/pkgs/by-name/al/alpaca/package.nix b/pkgs/by-name/al/alpaca/package.nix new file mode 100644 index 000000000000..5ce7ce0b0261 --- /dev/null +++ b/pkgs/by-name/al/alpaca/package.nix @@ -0,0 +1,95 @@ +{ + lib, + python3Packages, + fetchFromGitHub, + fetchpatch, + appstream, + meson, + ninja, + pkg-config, + gobject-introspection, + wrapGAppsHook4, + desktop-file-utils, + libadwaita, + gtksourceview5, + xdg-utils, + ollama, +}: + +python3Packages.buildPythonApplication rec { + pname = "alpaca"; + version = "0.9.6.1"; + pyproject = false; # Built with meson + + src = fetchFromGitHub { + owner = "Jeffser"; + repo = "Alpaca"; + rev = version; + hash = "sha256-EbaEjKqfotJBceaYEyz3LHilK3GnnwEpfMR7Teq96hI="; + }; + + patches = [ + # Change the way XDG paths are handled so it makes sense outside of flatpak + ./fix_xdg_path_flatpak.patch + + # Let ollama instance stop gracefully so we don't have model instance left behind + (fetchpatch { + url = "https://github.com/Jeffser/Alpaca/commit/e81d918675896c1670cf5aa5a55e1b706be5ed51.patch"; + hash = "sha256-gYYFvaoBI/Qn0g2qgS1cB0B4F08swznrSd5KCb51vh0="; + }) + ]; + + postPatch = '' + substituteInPlace src/local_instance.py \ + --replace-fail '/app/bin/ollama' 'ollama' + ''; + + nativeBuildInputs = [ + appstream + meson + ninja + pkg-config + gobject-introspection + wrapGAppsHook4 + desktop-file-utils + ]; + + buildInputs = [ + libadwaita + gtksourceview5 + ]; + + dependencies = with python3Packages; [ + pygobject3 + requests + pillow + pypdf + ]; + + dontWrapGApps = true; + + makeWrapperArgs = [ + "\${gappsWrapperArgs[@]}" + "--prefix PATH : ${lib.makeBinPath [ xdg-utils ollama ]}" + # Declared but not used in src/window.py, for later reference + # https://github.com/flatpak/flatpak/issues/3229 + "--set FLATPAK_DEST ${placeholder "out"}" + ]; + + meta = { + description = "Ollama client made with GTK4 and Adwaita"; + longDescription = '' + To run Alpaca with GPU acceleration enabled, simply override it: + ```nix + pkgs.alpaca.override { + ollama = pkgs.ollama-cuda; + } + ``` + ''; + homepage = "https://jeffser.com/alpaca"; + license = lib.licenses.gpl3Plus; + mainProgram = "alpaca"; + maintainers = with lib.maintainers; [ aleksana ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/by-name/fa/fac/package.nix b/pkgs/by-name/fa/fac/package.nix index e7b09e73b355..93aff4bec617 100644 --- a/pkgs/by-name/fa/fac/package.nix +++ b/pkgs/by-name/fa/fac/package.nix @@ -38,6 +38,6 @@ buildGoModule rec { homepage = "https://github.com/mkchoi212/fac"; license = lib.licenses.mit; mainProgram = "fac"; - maintainers = with lib.maintainers; [ dtzWill ]; + maintainers = with lib.maintainers; [ ]; }; } diff --git a/pkgs/by-name/fl/flaresolverr/package.nix b/pkgs/by-name/fl/flaresolverr/package.nix new file mode 100644 index 000000000000..07e02231997c --- /dev/null +++ b/pkgs/by-name/fl/flaresolverr/package.nix @@ -0,0 +1,82 @@ +{ + lib, + stdenv, + fetchFromGitHub, + + makeWrapper, + + chromium, + python3, + undetected-chromedriver, + xorg, + + nixosTests, +}: + +let + python = python3.withPackages ( + ps: with ps; [ + bottle + func-timeout + prometheus-client + selenium + waitress + xvfbwrapper + + # For `undetected_chromedriver` + looseversion + requests + websockets + ] + ); +in +stdenv.mkDerivation (finalAttrs: { + pname = "flaresolverr"; + version = "3.3.21"; + + src = fetchFromGitHub { + owner = "FlareSolverr"; + repo = "FlareSolverr"; + rev = "v${finalAttrs.version}"; + hash = "sha256-M/snpYKZK3pgzlhYjRYEiAPlK9DUKYRiiu43KcrAy9g="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + postPatch = '' + substituteInPlace src/undetected_chromedriver/patcher.py \ + --replace-fail \ + "from distutils.version import LooseVersion" \ + "from looseversion import LooseVersion" + + substituteInPlace src/utils.py \ + --replace-fail \ + 'CHROME_EXE_PATH = None' \ + 'CHROME_EXE_PATH = "${lib.getExe chromium}"' \ + --replace-fail \ + 'PATCHED_DRIVER_PATH = None' \ + 'PATCHED_DRIVER_PATH = "${lib.getExe undetected-chromedriver}"' + ''; + + installPhase = '' + mkdir -p $out/{bin,share/${finalAttrs.pname}-${finalAttrs.version}} + cp -r * $out/share/${finalAttrs.pname}-${finalAttrs.version}/. + + makeWrapper ${python}/bin/python $out/bin/flaresolverr \ + --add-flags "$out/share/${finalAttrs.pname}-${finalAttrs.version}/src/flaresolverr.py" \ + --prefix PATH : "${lib.makeBinPath [ xorg.xvfb ]}" + ''; + + passthru = { + tests.smoke-test = nixosTests.flaresolverr; + }; + + meta = with lib; { + description = "Proxy server to bypass Cloudflare protection"; + homepage = "https://github.com/FlareSolverr/FlareSolverr"; + license = licenses.mit; + mainProgram = "flaresolverr"; + maintainers = with maintainers; [ paveloom ]; + inherit (undetected-chromedriver.meta) platforms; + }; +}) diff --git a/pkgs/by-name/nh/nh/package.nix b/pkgs/by-name/nh/nh/package.nix index e11a8fc3f957..3150b129b7a2 100644 --- a/pkgs/by-name/nh/nh/package.nix +++ b/pkgs/by-name/nh/nh/package.nix @@ -10,7 +10,7 @@ , nix-output-monitor }: let - version = "3.5.18"; + version = "3.5.19"; runtimeDeps = [ nvd nix-output-monitor ]; in rustPlatform.buildRustPackage { @@ -21,7 +21,7 @@ rustPlatform.buildRustPackage { owner = "viperML"; repo = "nh"; rev = "refs/tags/v${version}"; - hash = "sha256-G5iteuo2gobI0Y5jHNEBc6UN9ixjwj6zopPKi7bJBE4="; + hash = "sha256-m6LmfrUMpt1ZUX3eqB7Gp+ZV6sAWPqkATwZNvA7Bj9U="; }; strictDeps = true; @@ -47,7 +47,7 @@ rustPlatform.buildRustPackage { --prefix PATH : ${lib.makeBinPath runtimeDeps} ''; - cargoHash = "sha256-jd8GOuI5E+l3u8klAKdwUdEP9N0Nao6MfTdHkSjym0M="; + cargoHash = "sha256-fyHyuZGjTsKynihlD3H3tSZeo8s9Trbe4NZ3Zv2MHmQ="; passthru.updateScript = nix-update-script { }; diff --git a/pkgs/tools/networking/ntpd-rs/default.nix b/pkgs/by-name/nt/ntpd-rs/package.nix similarity index 81% rename from pkgs/tools/networking/ntpd-rs/default.nix rename to pkgs/by-name/nt/ntpd-rs/package.nix index 6d1353a4e905..3e7c35227c33 100644 --- a/pkgs/tools/networking/ntpd-rs/default.nix +++ b/pkgs/by-name/nt/ntpd-rs/package.nix @@ -5,26 +5,27 @@ fetchFromGitHub, ntpd-rs, installShellFiles, + darwin, pandoc, - Security, nixosTests, + nix-update-script, testers, }: rustPlatform.buildRustPackage rec { pname = "ntpd-rs"; - version = "1.2.0"; + version = "1.2.2"; src = fetchFromGitHub { owner = "pendulum-project"; repo = "ntpd-rs"; rev = "v${version}"; - hash = "sha256-yIX9RD1xqkFoxDt82wnKfQR3z/vLA0I5/cptaIgSNjw="; + hash = "sha256-td+op7nVmznIcj3JYafEy7HgbBPLuRv25Hu2N5A5qOQ="; }; - cargoHash = "sha256-NRFmb9rZVbd0qYKIkslT4TcbC/aD4QhAjm2GA4BvReY="; + cargoHash = "sha256-guim3IC2uIA7NKMXDCil/UK8Yj+rt2KUSwtJTcBcZoU="; - buildInputs = lib.optionals stdenv.isDarwin [ Security ]; + buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk_11_0.frameworks.Security ]; nativeBuildInputs = [ pandoc installShellFiles @@ -39,6 +40,9 @@ rustPlatform.buildRustPackage rec { source utils/generate-man.sh ''; + # lots of flaky tests + doCheck = false; + checkFlags = [ # doesn't find the testca "--skip=daemon::keyexchange::tests" @@ -62,6 +66,8 @@ rustPlatform.buildRustPackage rec { inherit version; }; }; + + updateScript = nix-update-script { }; }; meta = { diff --git a/pkgs/by-name/op/open-scq30/package.nix b/pkgs/by-name/op/open-scq30/package.nix index 3e2e41a15e98..33d4e47c76fb 100644 --- a/pkgs/by-name/op/open-scq30/package.nix +++ b/pkgs/by-name/op/open-scq30/package.nix @@ -44,6 +44,7 @@ rustPlatform.buildRustPackage rec { pango ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AppKit + darwin.apple_sdk.frameworks.CoreBluetooth darwin.apple_sdk.frameworks.CoreGraphics darwin.apple_sdk.frameworks.Foundation ]; diff --git a/pkgs/by-name/st/steampipe/package.nix b/pkgs/by-name/st/steampipe/package.nix index e52182508c06..0e009f769208 100644 --- a/pkgs/by-name/st/steampipe/package.nix +++ b/pkgs/by-name/st/steampipe/package.nix @@ -11,16 +11,16 @@ buildGoModule rec { pname = "steampipe"; - version = "0.23.2"; + version = "0.23.3"; src = fetchFromGitHub { owner = "turbot"; repo = "steampipe"; rev = "refs/tags/v${version}"; - hash = "sha256-hMEFIPhtvYkBG+HBtigOzFe8iAKmywWWl1da6sksX7k="; + hash = "sha256-V8wy9Q3FU4Ts7cer3tkv3gQbHebje3XRgm+IOg3Xs+c="; }; - vendorHash = "sha256-KY5mVs+YsyHHtV6DvfwwxcF8K9IQWxlxIJeSyFsKkpc="; + vendorHash = "sha256-OVWgDVF2d+OYYCSn+UlSMTfIS+5nFeI2qY41DyX7y/A="; proxyVendor = true; postPatch = '' diff --git a/pkgs/by-name/un/undetected-chromedriver/package.nix b/pkgs/by-name/un/undetected-chromedriver/package.nix new file mode 100644 index 000000000000..3976f3cc685b --- /dev/null +++ b/pkgs/by-name/un/undetected-chromedriver/package.nix @@ -0,0 +1,44 @@ +{ + lib, + stdenv, + + chromedriver, + python3, + + testers, + undetected-chromedriver, +}: + +stdenv.mkDerivation { + pname = "undetected-chromedriver"; + inherit (chromedriver) version; + + nativeBuildInputs = [ (python3.withPackages (ps: [ ps.undetected-chromedriver ])) ]; + + buildCommand = '' + export HOME=$(mktemp -d) + + cp ${chromedriver}/bin/chromedriver . + chmod +w chromedriver + + python < src/pillowfight/_version.h ''; - # Disable tests because they're designed to only work on Debian: - # https://github.com/jflesch/libpillowfight/issues/2#issuecomment-268259174 - doCheck = false; + build-system = [ setuptools ]; - # Python 2.x is not supported, see: - # https://github.com/jflesch/libpillowfight/issues/1 - disabled = !isPy3k && !isPyPy; + dependencies = [ pillow ]; - # This is needed by setup.py regardless of whether tests are enabled. - buildInputs = [ nose ]; - propagatedBuildInputs = [ pillow ]; + nativeCheckInputs = [ pytestCheckHook ]; - meta = with lib; { + meta = { description = "Library containing various image processing algorithms"; inherit (src.meta) homepage; - license = licenses.gpl3Plus; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ pyrox0 ]; }; } diff --git a/pkgs/development/python-modules/rotary-embedding-torch/default.nix b/pkgs/development/python-modules/rotary-embedding-torch/default.nix index 3724cb4adedd..6608071f1dd8 100644 --- a/pkgs/development/python-modules/rotary-embedding-torch/default.nix +++ b/pkgs/development/python-modules/rotary-embedding-torch/default.nix @@ -15,14 +15,14 @@ buildPythonPackage rec { pname = "rotary-embedding-torch"; - version = "0.6.2"; + version = "0.6.4"; pyproject = true; src = fetchFromGitHub { owner = "lucidrains"; repo = "rotary-embedding-torch"; rev = "refs/tags/${version}"; - hash = "sha256-AR/zQFH0uvPrCp61XLiRBiAO3ZnD4jVaDXN00hXDlnI="; + hash = "sha256-dP7QFUNIGFFQcR98po+LYg3MU7P+GUunO7zz/y8vZmY="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/undetected-chromedriver/default.nix b/pkgs/development/python-modules/undetected-chromedriver/default.nix new file mode 100644 index 000000000000..bcb349bfe36d --- /dev/null +++ b/pkgs/development/python-modules/undetected-chromedriver/default.nix @@ -0,0 +1,54 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + + setuptools, + + looseversion, + requests, + selenium, + websockets, +}: + +buildPythonPackage { + pname = "undetected-chromedriver"; + version = "3.5.5"; + pyproject = true; + + src = fetchFromGitHub { + owner = "ultrafunkamsterdam"; + repo = "undetected-chromedriver"; + # Upstream uses the summaries of commits for specifying versions + rev = "0aa5fbe252370b4cb2b95526add445392cad27ba"; + hash = "sha256-Qe+GrsUPnhjJMDgjdUCloapjj0ggFlm/Dr42WLcmb1o="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + looseversion + requests + selenium + websockets + ]; + + # No tests + doCheck = false; + + pythonImportsCheck = [ "undetected_chromedriver" ]; + + postPatch = '' + substituteInPlace undetected_chromedriver/patcher.py \ + --replace-fail \ + "from distutils.version import LooseVersion" \ + "from looseversion import LooseVersion" + ''; + + meta = with lib; { + description = "Python library for the custom Selenium ChromeDriver that passes all bot mitigation systems"; + homepage = "https://github.com/ultrafunkamsterdam/undetected-chromedriver"; + license = licenses.gpl3Only; + maintainers = with lib.maintainers; [ paveloom ]; + }; +} diff --git a/pkgs/development/python-modules/yfinance/default.nix b/pkgs/development/python-modules/yfinance/default.nix index eb454cd9a4dc..2be3d381feb6 100644 --- a/pkgs/development/python-modules/yfinance/default.nix +++ b/pkgs/development/python-modules/yfinance/default.nix @@ -23,7 +23,7 @@ buildPythonPackage rec { pname = "yfinance"; - version = "0.2.40"; + version = "0.2.41"; pyproject = true; disabled = pythonOlder "3.7"; @@ -32,7 +32,7 @@ buildPythonPackage rec { owner = "ranaroussi"; repo = "yfinance"; rev = "refs/tags/${version}"; - hash = "sha256-y3vcgPhksW8g0WpqVgJej7s+aIj9zaAjBjSm8d7yrjs="; + hash = "sha256-9Vp/z0u/Mfil1xWHvHPRFa62sLvEJMjHLBYweLfz42o="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/tools/analysis/retdec/default.nix b/pkgs/development/tools/analysis/retdec/default.nix index 2448556aa62c..c562479eb052 100644 --- a/pkgs/development/tools/analysis/retdec/default.nix +++ b/pkgs/development/tools/analysis/retdec/default.nix @@ -230,7 +230,7 @@ stdenv.mkDerivation (self: { description = "Retargetable machine-code decompiler based on LLVM"; homepage = "https://retdec.com"; license = licenses.mit; - maintainers = with maintainers; [ dtzWill katrinafyi ]; + maintainers = with maintainers; [ katrinafyi ]; platforms = [ "x86_64-linux" ]; }; }) diff --git a/pkgs/development/tools/analysis/snowman/default.nix b/pkgs/development/tools/analysis/snowman/default.nix index 870f084580b8..4e2af64c607b 100644 --- a/pkgs/development/tools/analysis/snowman/default.nix +++ b/pkgs/development/tools/analysis/snowman/default.nix @@ -25,7 +25,7 @@ mkDerivation rec { # https://github.com/yegord/snowman/blob/master/doc/licenses.asciidoc license = licenses.gpl3Plus; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; platforms = platforms.all; }; } diff --git a/pkgs/development/tools/bloaty/default.nix b/pkgs/development/tools/bloaty/default.nix index f9b133f2aaa7..7f2fb6daeaf7 100644 --- a/pkgs/development/tools/bloaty/default.nix +++ b/pkgs/development/tools/bloaty/default.nix @@ -60,6 +60,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/google/bloaty"; license = licenses.asl20; platforms = platforms.unix; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/tools/boomerang/default.nix b/pkgs/development/tools/boomerang/default.nix index e0e6823b0a27..d173403e3dea 100644 --- a/pkgs/development/tools/boomerang/default.nix +++ b/pkgs/development/tools/boomerang/default.nix @@ -33,6 +33,6 @@ mkDerivation rec { homepage = "https://github.com/BoomerangDecompiler/boomerang"; license = licenses.bsd3; description = "General, open source, retargetable decompiler"; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/tools/gllvm/default.nix b/pkgs/development/tools/gllvm/default.nix index 14b24d91dac5..457895c06164 100644 --- a/pkgs/development/tools/gllvm/default.nix +++ b/pkgs/development/tools/gllvm/default.nix @@ -22,6 +22,6 @@ buildGoModule rec { homepage = "https://github.com/SRI-CSL/gllvm"; description = "Whole Program LLVM: wllvm ported to go"; license = licenses.bsd3; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/tools/misc/creduce/default.nix b/pkgs/development/tools/misc/creduce/default.nix index e41d8d3379fe..7adc78013f47 100644 --- a/pkgs/development/tools/misc/creduce/default.nix +++ b/pkgs/development/tools/misc/creduce/default.nix @@ -70,7 +70,7 @@ stdenv.mkDerivation rec { property. It is intended for use by people who discover and report bugs in compilers and other tools that process C/C++ code. ''; - maintainers = [ maintainers.dtzWill ]; + maintainers = [ ]; platforms = platforms.all; }; } diff --git a/pkgs/development/tools/misc/csmith/default.nix b/pkgs/development/tools/misc/csmith/default.nix index 529339c38c11..52955577ee7f 100644 --- a/pkgs/development/tools/misc/csmith/default.nix +++ b/pkgs/development/tools/misc/csmith/default.nix @@ -45,7 +45,7 @@ stdenv.mkDerivation rec { Csmith has found bugs in every tool that it has tested, and has been used to find and report more than 400 previously unknown compiler bugs. ''; - maintainers = [ maintainers.dtzWill ]; + maintainers = [ ]; platforms = platforms.all; }; } diff --git a/pkgs/development/tools/misc/elfinfo/default.nix b/pkgs/development/tools/misc/elfinfo/default.nix index 6b0c5b21af41..2af3f4cd3987 100644 --- a/pkgs/development/tools/misc/elfinfo/default.nix +++ b/pkgs/development/tools/misc/elfinfo/default.nix @@ -22,6 +22,6 @@ buildGoModule rec { homepage = "https://elfinfo.roboticoverlords.org/"; changelog = "https://github.com/xyproto/elfinfo/releases/tag/${version}"; license = licenses.bsd3; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/tools/misc/elfkickers/default.nix b/pkgs/development/tools/misc/elfkickers/default.nix index fa2ed6e39534..9a612593d06f 100644 --- a/pkgs/development/tools/misc/elfkickers/default.nix +++ b/pkgs/development/tools/misc/elfkickers/default.nix @@ -18,6 +18,6 @@ stdenv.mkDerivation rec { description = "Collection of programs that access and manipulate ELF files"; platforms = platforms.linux; license = licenses.gpl2Plus; - maintainers = [ maintainers.dtzWill ]; + maintainers = [ ]; }; } diff --git a/pkgs/development/tools/misc/go-license-detector/default.nix b/pkgs/development/tools/misc/go-license-detector/default.nix index cbef7ae0d9da..81f35d7ec481 100644 --- a/pkgs/development/tools/misc/go-license-detector/default.nix +++ b/pkgs/development/tools/misc/go-license-detector/default.nix @@ -19,7 +19,7 @@ buildGoModule rec { description = "Reliable project licenses detector"; homepage = "https://github.com/go-enry/go-license-detector"; license = licenses.asl20; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "license-detector"; }; } diff --git a/pkgs/development/tools/misc/gtkperf/default.nix b/pkgs/development/tools/misc/gtkperf/default.nix index a478306cad67..bee2b85c78da 100644 --- a/pkgs/development/tools/misc/gtkperf/default.nix +++ b/pkgs/development/tools/misc/gtkperf/default.nix @@ -21,6 +21,6 @@ stdenv.mkDerivation rec { mainProgram = "gtkperf"; homepage = "https://gtkperf.sourceforge.net/"; license = with licenses; [ gpl2 ]; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/tools/misc/libwhich/default.nix b/pkgs/development/tools/misc/libwhich/default.nix index 915e1018c561..c6d89a4c6bdb 100644 --- a/pkgs/development/tools/misc/libwhich/default.nix +++ b/pkgs/development/tools/misc/libwhich/default.nix @@ -20,6 +20,6 @@ stdenv.mkDerivation rec { mainProgram = "libwhich"; homepage = "https://github.com/vtjnash/libwhich"; license = licenses.mit; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/development/tools/misc/whatstyle/default.nix b/pkgs/development/tools/misc/whatstyle/default.nix index 4293a458977b..acfaa7873655 100644 --- a/pkgs/development/tools/misc/whatstyle/default.nix +++ b/pkgs/development/tools/misc/whatstyle/default.nix @@ -25,7 +25,7 @@ python3.pkgs.buildPythonApplication rec { mainProgram = "whatstyle"; homepage = "https://github.com/mikr/whatstyle"; license = licenses.mit; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; platforms = platforms.all; }; } diff --git a/pkgs/development/tools/selenium/chromedriver/binary.nix b/pkgs/development/tools/selenium/chromedriver/binary.nix new file mode 100644 index 000000000000..d58dc30e5b15 --- /dev/null +++ b/pkgs/development/tools/selenium/chromedriver/binary.nix @@ -0,0 +1,64 @@ +{ lib, stdenv, fetchurl, autoPatchelfHook +, glib, nspr, nss, libxcb +, testers, chromedriver +}: + +let + upstream-info = (import ../../../../applications/networking/browsers/chromium/upstream-info.nix).stable.chromedriver; + allSpecs = { + x86_64-linux = { + system = "linux64"; + hash = upstream-info.hash_linux; + }; + + x86_64-darwin = { + system = "mac-x64"; + hash = upstream-info.hash_darwin; + }; + + aarch64-darwin = { + system = "mac-arm64"; + hash = upstream-info.hash_darwin_aarch64; + }; + }; + + spec = allSpecs.${stdenv.hostPlatform.system} + or (throw "missing chromedriver binary for ${stdenv.hostPlatform.system}"); +in stdenv.mkDerivation rec { + pname = "chromedriver"; + version = upstream-info.version; + + src = fetchurl { + url = "https://storage.googleapis.com/chrome-for-testing-public/${version}/${spec.system}/chromedriver-${spec.system}.zip"; + hash = spec.hash; + }; + + nativeBuildInputs = [ autoPatchelfHook ]; + buildInputs = lib.optionals (!stdenv.isDarwin) [ + glib nspr nss libxcb + ]; + + installPhase = '' + install -m555 -D "chromedriver" $out/bin/chromedriver + ''; + + passthru.tests.version = testers.testVersion { package = chromedriver; }; + + meta = with lib; { + homepage = "https://chromedriver.chromium.org/"; + description = "WebDriver server for running Selenium tests on Chrome"; + longDescription = '' + WebDriver is an open source tool for automated testing of webapps across + many browsers. It provides capabilities for navigating to web pages, user + input, JavaScript execution, and more. ChromeDriver is a standalone + server that implements the W3C WebDriver standard. + ''; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + license = licenses.bsd3; + maintainers = with maintainers; [ goibhniu primeos ]; + # Note from primeos: By updating Chromium I also update Google Chrome and + # ChromeDriver. + platforms = attrNames allSpecs; + mainProgram = "chromedriver"; + }; +} diff --git a/pkgs/development/tools/selenium/chromedriver/default.nix b/pkgs/development/tools/selenium/chromedriver/default.nix index 41982c3d7d3e..4d62e7b8692d 100644 --- a/pkgs/development/tools/selenium/chromedriver/default.nix +++ b/pkgs/development/tools/selenium/chromedriver/default.nix @@ -1,78 +1,4 @@ -{ lib, stdenv, fetchurl, unzip, makeWrapper -, cairo, fontconfig, freetype, gdk-pixbuf, glib -, glibc, gtk2, libX11, nspr, nss, pango -, libxcb, libXi, libXrender, libXext, dbus -, testers, chromedriver -}: - -let - upstream-info = (import ../../../../applications/networking/browsers/chromium/upstream-info.nix).stable.chromedriver; - allSpecs = { - x86_64-linux = { - system = "linux64"; - hash = upstream-info.hash_linux; - }; - - x86_64-darwin = { - system = "mac-x64"; - hash = upstream-info.hash_darwin; - }; - - aarch64-darwin = { - system = "mac-arm64"; - hash = upstream-info.hash_darwin_aarch64; - }; - }; - - spec = allSpecs.${stdenv.hostPlatform.system} - or (throw "missing chromedriver binary for ${stdenv.hostPlatform.system}"); - - libs = lib.makeLibraryPath [ - stdenv.cc.cc.lib - cairo fontconfig freetype - gdk-pixbuf glib gtk2 - libX11 nspr nss pango libXrender - libxcb libXext libXi - dbus - ]; - -in stdenv.mkDerivation rec { - pname = "chromedriver"; - version = upstream-info.version; - - src = fetchurl { - url = "https://storage.googleapis.com/chrome-for-testing-public/${version}/${spec.system}/chromedriver-${spec.system}.zip"; - hash = spec.hash; - }; - - nativeBuildInputs = [ unzip makeWrapper ]; - - unpackPhase = "unzip $src"; - - installPhase = '' - install -m755 -D "chromedriver-${spec.system}/chromedriver" $out/bin/chromedriver - '' + lib.optionalString (!stdenv.isDarwin) '' - patchelf --set-interpreter ${glibc.out}/lib/ld-linux-x86-64.so.2 $out/bin/chromedriver - wrapProgram "$out/bin/chromedriver" --prefix LD_LIBRARY_PATH : "${libs}" - ''; - - passthru.tests.version = testers.testVersion { package = chromedriver; }; - - meta = with lib; { - homepage = "https://chromedriver.chromium.org/"; - description = "WebDriver server for running Selenium tests on Chrome"; - longDescription = '' - WebDriver is an open source tool for automated testing of webapps across - many browsers. It provides capabilities for navigating to web pages, user - input, JavaScript execution, and more. ChromeDriver is a standalone - server that implements the W3C WebDriver standard. - ''; - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; - license = licenses.bsd3; - maintainers = with maintainers; [ goibhniu primeos ]; - # Note from primeos: By updating Chromium I also update Google Chrome and - # ChromeDriver. - platforms = attrNames allSpecs; - mainProgram = "chromedriver"; - }; -} +{ lib, stdenv, chromium, callPackage }: +if lib.meta.availableOn stdenv.hostPlatform chromium + then callPackage ./source.nix {} + else callPackage ./binary.nix {} diff --git a/pkgs/development/tools/selenium/chromedriver/source.nix b/pkgs/development/tools/selenium/chromedriver/source.nix new file mode 100644 index 000000000000..fcb22c406644 --- /dev/null +++ b/pkgs/development/tools/selenium/chromedriver/source.nix @@ -0,0 +1,30 @@ +{ chromium, testers, chromedriver }: +chromium.mkDerivation (_: { + name = "chromedriver"; + packageName = "chromedriver"; + + # Build the unstripped target, because stripping in Chromium relies on a prebuilt strip binary + # that doesn't run on NixOS, and we will strip everything ourselves later anyway. + buildTargets = [ "chromedriver.unstripped" ]; + + installPhase = '' + install -Dm555 $buildPath/chromedriver.unstripped $out/bin/chromedriver + ''; + + # Kill existing postFixup that tries to patchelf things + postFixup = null; + + passthru.tests.version = testers.testVersion { package = chromedriver; }; + + meta = chromium.meta // { + homepage = "https://chromedriver.chromium.org/"; + description = "WebDriver server for running Selenium tests on Chrome"; + longDescription = '' + WebDriver is an open source tool for automated testing of webapps across + many browsers. It provides capabilities for navigating to web pages, user + input, JavaScript execution, and more. ChromeDriver is a standalone + server that implements the W3C WebDriver standard. + ''; + mainProgram = "chromedriver"; + }; +}) diff --git a/pkgs/development/tools/wllvm/default.nix b/pkgs/development/tools/wllvm/default.nix index 5a2ef3b16dcf..38e10f726160 100644 --- a/pkgs/development/tools/wllvm/default.nix +++ b/pkgs/development/tools/wllvm/default.nix @@ -13,7 +13,7 @@ python3Packages.buildPythonApplication rec { homepage = "https://github.com/travitch/whole-program-llvm"; description = "Wrapper script to build whole-program LLVM bitcode files"; license = licenses.mit; - maintainers = with maintainers; [ mic92 dtzWill ]; + maintainers = with maintainers; [ mic92 ]; platforms = platforms.all; }; } diff --git a/pkgs/games/nudoku/default.nix b/pkgs/games/nudoku/default.nix index cb09c466c8d5..e9ebeadf4513 100644 --- a/pkgs/games/nudoku/default.nix +++ b/pkgs/games/nudoku/default.nix @@ -36,7 +36,7 @@ stdenv.mkDerivation rec { homepage = "http://jubalh.github.io/nudoku/"; license = licenses.gpl3; platforms = platforms.all; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/games/osu-lazer/bin.nix b/pkgs/games/osu-lazer/bin.nix index 7496514d2a1d..b575c1953c5f 100644 --- a/pkgs/games/osu-lazer/bin.nix +++ b/pkgs/games/osu-lazer/bin.nix @@ -7,22 +7,22 @@ let pname = "osu-lazer-bin"; - version = "2024.718.0"; + version = "2024.718.1"; src = { aarch64-darwin = fetchzip { url = "https://github.com/ppy/osu/releases/download/${version}/osu.app.Apple.Silicon.zip"; - hash = "sha256-XYsfNFnBUzAfiW8WdJvJcd5ufP7a60Fsi8rU9Ul3ax4="; + hash = "sha256-23ZS2lkVDNpaWKkRMrkMwPhCaudoMxehV+k/7wXHnJ0="; stripRoot = false; }; x86_64-darwin = fetchzip { url = "https://github.com/ppy/osu/releases/download/${version}/osu.app.Intel.zip"; - hash = "sha256-rs91+IbYlmtU3NY2EGqqlS/35oU4wFbWJmvyObYF32M="; + hash = "sha256-1ZYPnxyknm7cxPW4CmzE1G652CSC0jKI2g4+yHg7HsE="; stripRoot = false; }; x86_64-linux = fetchurl { url = "https://github.com/ppy/osu/releases/download/${version}/osu.AppImage"; - hash = "sha256-K8YeiHuEfwK/DG+e9VSj9arJ5x5XvwIwEiAi/JFdqMM="; + hash = "sha256-+udJYFOTAUNaQnOTzqwvSm2ryDJ+AfJfQ4hths6aEYs="; }; }.${stdenv.system} or (throw "${pname}-${version}: ${stdenv.system} is unsupported."); diff --git a/pkgs/games/osu-lazer/default.nix b/pkgs/games/osu-lazer/default.nix index 2d49d9dbd0a6..bee4b288aa98 100644 --- a/pkgs/games/osu-lazer/default.nix +++ b/pkgs/games/osu-lazer/default.nix @@ -17,13 +17,13 @@ buildDotnetModule rec { pname = "osu-lazer"; - version = "2024.718.0"; + version = "2024.718.1"; src = fetchFromGitHub { owner = "ppy"; repo = "osu"; rev = version; - hash = "sha256-/JO/kGFhqzDBnkqLqoj1fM+0WRI1ipUaMKZQBtZPFLU="; + hash = "sha256-A3zBYdsOf/Ht15saRQtdNi1ZTnDRcAPWeSelXg6EeaI="; }; projectFile = "osu.Desktop/osu.Desktop.csproj"; diff --git a/pkgs/games/osu-lazer/deps.nix b/pkgs/games/osu-lazer/deps.nix index 7c505b78e194..2e7f38d41dcc 100644 --- a/pkgs/games/osu-lazer/deps.nix +++ b/pkgs/games/osu-lazer/deps.nix @@ -136,13 +136,13 @@ (fetchNuGet { pname = "ppy.ManagedBass.Fx"; version = "2022.1216.0"; hash = "sha256-VfIbFhCDsCRZW5bCbt8MSmE2kAlcKxxx6vdFOus4he8="; }) (fetchNuGet { pname = "ppy.ManagedBass.Mix"; version = "2022.1216.0"; hash = "sha256-qUEGJHoYfDvHrpuXdVaiSoV2iVVh9X0yEB41u96+q6A="; }) (fetchNuGet { pname = "ppy.ManagedBass.Wasapi"; version = "2022.1216.0"; hash = "sha256-HzhypEVJA+6h3aBB95zNeGbmzEIRc5435Eh9nYpjVkA="; }) - (fetchNuGet { pname = "ppy.osu.Framework"; version = "2024.716.0"; hash = "sha256-XC6wujQvoj2f9KMkJmdN7H0iT8dO9n48VJXnrtQ59sM="; }) + (fetchNuGet { pname = "ppy.osu.Framework"; version = "2024.720.0"; hash = "sha256-OL78drEPNhpcfeR7rPIe4egGdNg/ADRF2wfD0Hfz21A="; }) (fetchNuGet { pname = "ppy.osu.Framework.NativeLibs"; version = "2024.326.0-nativelibs"; hash = "sha256-smHbz5/uBrY7cLKOOClrrVv0MyWNYQz6T9kmIv5DfZM="; }) (fetchNuGet { pname = "ppy.osu.Framework.SourceGeneration"; version = "2023.720.0"; hash = "sha256-XXV/qBJ9vEVF15fcOlDyoJ8j47azuSJaXHEgsn3fOwA="; }) (fetchNuGet { pname = "ppy.osu.Game.Resources"; version = "2024.713.0"; hash = "sha256-wdIvhPpSQHKUidy5bP6EFMJLIK5/uL3Pqv6aXGe1Swg="; }) (fetchNuGet { pname = "ppy.osuTK.NS20"; version = "1.0.211"; hash = "sha256-Xu4uiYs1pqIXcBWeTBIc8OIqbLmH6MvaY6Dim4ZNikg="; }) (fetchNuGet { pname = "ppy.SDL2-CS"; version = "1.0.741-alpha"; hash = "sha256-sdX+MoMlIPUyi4yEUVHtqxKWF/VK04e2VaUavmgBEJU="; }) - (fetchNuGet { pname = "ppy.SDL3-CS"; version = "2024.528.0"; hash = "sha256-P43ZV1rzMI+t8S65yBABl9Knp2EHcPkh/Yv1VcAn6Jg="; }) + (fetchNuGet { pname = "ppy.SDL3-CS"; version = "2024.717.0"; hash = "sha256-duH4pLfI6IhTjA+abiOE57e7J41AP7+8ba09rIat1Pg="; }) (fetchNuGet { pname = "ppy.Veldrid"; version = "4.9.58-gfe61932a71"; hash = "sha256-+fZB3EJpXQPolB13mRNglznpUXgCh82MqymkCjteTPg="; }) (fetchNuGet { pname = "ppy.Veldrid.MetalBindings"; version = "4.9.58-gfe61932a71"; hash = "sha256-BejLZdoBRcqCgoiHWi/vSr2apyxnpZ95tYjN9hj9ox4="; }) (fetchNuGet { pname = "ppy.Veldrid.OpenGLBindings"; version = "4.9.58-gfe61932a71"; hash = "sha256-f1a/pHOWs0S5sWsiTRW1KUdqEpA1WVO+d96bdagt0eA="; }) diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix index ddac420f9be0..8c2fcb2eba53 100644 --- a/pkgs/misc/uboot/default.nix +++ b/pkgs/misc/uboot/default.nix @@ -416,6 +416,16 @@ in { filesToInstall = ["u-boot-sunxi-with-spl.bin"]; }; + ubootOrangePiZero3 = buildUBoot { + defconfig = "orangepi_zero3_defconfig"; + extraMeta.platforms = ["aarch64-linux"]; + # According to https://linux-sunxi.org/H616 the H618 "is a minor update with a larger (1MB) L2 cache" (compared to the H616) + # but "does require extra support in U-Boot, TF-A and sunxi-fel. Support for that has been merged in mainline releases." + # But no extra support seems to be in TF-A. + BL31 = "${armTrustedFirmwareAllwinnerH616}/bl31.bin"; + filesToInstall = ["u-boot-sunxi-with-spl.bin"]; + }; + ubootOrangePi3 = buildUBoot { defconfig = "orangepi_3_defconfig"; extraMeta.platforms = ["aarch64-linux"]; diff --git a/pkgs/os-specific/linux/cpustat/default.nix b/pkgs/os-specific/linux/cpustat/default.nix index 029196a0f976..63646007951d 100644 --- a/pkgs/os-specific/linux/cpustat/default.nix +++ b/pkgs/os-specific/linux/cpustat/default.nix @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/ColinIanKing/cpustat"; license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "cpustat"; }; } diff --git a/pkgs/os-specific/linux/fnotifystat/default.nix b/pkgs/os-specific/linux/fnotifystat/default.nix index 4961450fa36e..28fde2629f69 100644 --- a/pkgs/os-specific/linux/fnotifystat/default.nix +++ b/pkgs/os-specific/linux/fnotifystat/default.nix @@ -26,6 +26,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/ColinIanKing/fnotifystat"; license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = with maintainers; [ womfoo dtzWill ]; + maintainers = with maintainers; [ womfoo ]; }; } diff --git a/pkgs/os-specific/linux/rust-out-of-tree-module/default.nix b/pkgs/os-specific/linux/rust-out-of-tree-module/default.nix index 46ae88abb37d..ba0bd561d597 100644 --- a/pkgs/os-specific/linux/rust-out-of-tree-module/default.nix +++ b/pkgs/os-specific/linux/rust-out-of-tree-module/default.nix @@ -1,13 +1,14 @@ -{ lib, fetchFromGitHub, kernel }: +{ lib, fetchFromGitHub, kernel, unstableGitUpdater }: kernel.stdenv.mkDerivation { - name = "rust-out-of-tree-module"; + pname = "rust-out-of-tree-module"; + version = "0-unstable-2024-05-06"; src = fetchFromGitHub { owner = "Rust-for-linux"; repo = "rust-out-of-tree-module"; - rev = "7addf9dafba795524f6179a557f7272ecbe1b165"; - hash = "sha256-Bj7WonZ499W/FajbxjM7yBkU9iTxTW7CrRbCSzWbsSc="; + rev = "9872947486bb8f60b0d11db15d546a3d06156ec5"; + hash = "sha256-TzCySY7uQac98dU+Nu5dC4Usm7oG0iIdZZmZgAOpni4="; }; nativeBuildInputs = kernel.moduleBuildDependencies; @@ -16,6 +17,8 @@ kernel.stdenv.mkDerivation { installFlags = [ "INSTALL_MOD_PATH=${placeholder "out"}" ]; installTargets = [ "modules_install" ]; + passthru.updateScript = unstableGitUpdater { }; + meta = { broken = !kernel.withRust; description = "Basic template for an out-of-tree Linux kernel module written in Rust"; diff --git a/pkgs/servers/irker/default.nix b/pkgs/servers/irker/default.nix index 28f6b60cf76b..7fae20bc1edb 100644 --- a/pkgs/servers/irker/default.nix +++ b/pkgs/servers/irker/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation { description = "IRC client that runs as a daemon accepting notification requests"; homepage = "https://gitlab.com/esr/irker"; license = licenses.bsd2; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "irkerd"; platforms = platforms.unix; }; diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix index 177cee956ca1..ab7573c683e5 100644 --- a/pkgs/servers/matrix-synapse/default.nix +++ b/pkgs/servers/matrix-synapse/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchFromGitHub -, fetchPypi , python3 , openssl , libiconv @@ -13,39 +12,25 @@ }: let - python = python3.override { - packageOverrides = self: super: { - netaddr = super.netaddr.overridePythonAttrs (oldAttrs: rec { - version = "1.0.0"; - - src = fetchPypi { - pname = "netaddr"; - inherit version; - hash = "sha256-6wRrVTVOelv4AcBJAq6SO9aZGQJC2JsJnolvmycktNM="; - }; - }); - }; - }; - - plugins = python.pkgs.callPackage ./plugins { }; + plugins = python3.pkgs.callPackage ./plugins { }; tools = callPackage ./tools { }; in -python.pkgs.buildPythonApplication rec { +python3.pkgs.buildPythonApplication rec { pname = "matrix-synapse"; - version = "1.110.0"; + version = "1.111.0"; format = "pyproject"; src = fetchFromGitHub { owner = "element-hq"; repo = "synapse"; rev = "v${version}"; - hash = "sha256-DsDQgmHDU+iJ+00p1uch9Zj6lleDvdTQMy05hi8R9CM="; + hash = "sha256-CgoJJK2pqkHU8X6oisY19uN6zyjGL8W3irTsraFOYQM="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - hash = "sha256-J0JBp9pCP00Cjs6T4litjhY28mq0OJDBrRZVSQaS03w="; + hash = "sha256-uKyy2m3bvo6U++Qx6t7maeIp84QfMzslPGV1so4ZT3U="; }; postPatch = '' @@ -63,7 +48,7 @@ python.pkgs.buildPythonApplication rec { sed -i 's/Pillow = ".*"/Pillow = ">=5.4.0"/' pyproject.toml ''; - nativeBuildInputs = with python.pkgs; [ + nativeBuildInputs = with python3.pkgs; [ poetry-core rustPlatform.cargoSetupHook setuptools-rust @@ -77,7 +62,7 @@ python.pkgs.buildPythonApplication rec { libiconv ]; - propagatedBuildInputs = with python.pkgs; [ + propagatedBuildInputs = with python3.pkgs; [ attrs bcrypt bleach @@ -89,6 +74,7 @@ python.pkgs.buildPythonApplication rec { jsonschema matrix-common msgpack + python-multipart netaddr packaging phonenumbers @@ -110,7 +96,7 @@ python.pkgs.buildPythonApplication rec { ] ++ twisted.optional-dependencies.tls; - passthru.optional-dependencies = with python.pkgs; { + passthru.optional-dependencies = with python3.pkgs; { postgres = if isPyPy then [ psycopg2cffi ] else [ @@ -148,7 +134,7 @@ python.pkgs.buildPythonApplication rec { nativeCheckInputs = [ openssl - ] ++ (with python.pkgs; [ + ] ++ (with python3.pkgs; [ mock parameterized ]) @@ -169,14 +155,15 @@ python.pkgs.buildPythonApplication rec { NIX_BUILD_CORES=4 fi - PYTHONPATH=".:$PYTHONPATH" ${python.interpreter} -m twisted.trial -j $NIX_BUILD_CORES tests + PYTHONPATH=".:$PYTHONPATH" ${python3.interpreter} -m twisted.trial -j $NIX_BUILD_CORES tests runHook postCheck ''; passthru = { tests = { inherit (nixosTests) matrix-synapse matrix-synapse-workers; }; - inherit plugins tools python; + inherit plugins tools; + python = python3; }; meta = with lib; { diff --git a/pkgs/servers/misc/virtiofsd/default.nix b/pkgs/servers/misc/virtiofsd/default.nix index 53fc114f078c..4835f4699835 100644 --- a/pkgs/servers/misc/virtiofsd/default.nix +++ b/pkgs/servers/misc/virtiofsd/default.nix @@ -2,18 +2,18 @@ rustPlatform.buildRustPackage rec { pname = "virtiofsd"; - version = "1.11.0"; + version = "1.11.1"; src = fetchFromGitLab { owner = "virtio-fs"; repo = "virtiofsd"; rev = "v${version}"; - hash = "sha256-dgGdSnMsz/6dggZXh5crwHEoVVIlcUIHMH5MSOO29TE="; + hash = "sha256-4GX+qqnrUuG6jsdnKU/67YOj0X8qyuPIQbPSkE3xTBo="; }; separateDebugInfo = true; - cargoHash = "sha256-u7mzViTc0f4vApmmRNl6NkJlMfKeWSO0yupBt6adiag="; + cargoHash = "sha256-41pgoX/nGLEbMDJvdZt2HvrVMZPXqH6SWgow7A3rTBY="; LIBCAPNG_LIB_PATH = "${lib.getLib libcap_ng}/lib"; LIBCAPNG_LINK_TYPE = diff --git a/pkgs/shells/bash/5.nix b/pkgs/shells/bash/5.nix index a757834a4f2d..578e338dcb0e 100644 --- a/pkgs/shells/bash/5.nix +++ b/pkgs/shells/bash/5.nix @@ -154,7 +154,7 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl3Plus; platforms = platforms.all; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "bash"; }; } diff --git a/pkgs/tools/misc/bdf2sfd/default.nix b/pkgs/tools/misc/bdf2sfd/default.nix index 73a72ffeb61a..b5b9cd5ec751 100644 --- a/pkgs/tools/misc/bdf2sfd/default.nix +++ b/pkgs/tools/misc/bdf2sfd/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { homepage = "https://github.com/fcambus/bdf2sfd"; license = licenses.bsd2; platforms = platforms.all; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "bdf2sfd"; }; } diff --git a/pkgs/tools/misc/fx-cast-bridge/default.nix b/pkgs/tools/misc/fx-cast-bridge/default.nix index 722905df951f..11402d8f455c 100644 --- a/pkgs/tools/misc/fx-cast-bridge/default.nix +++ b/pkgs/tools/misc/fx-cast-bridge/default.nix @@ -52,7 +52,7 @@ buildNpmPackage rec { description = "Implementation of the Chrome Sender API (Chromecast) within Firefox"; homepage = "https://hensm.github.io/fx_cast/"; license = licenses.mit; - maintainers = with maintainers; [ dtzWill ]; + maintainers = with maintainers; [ ]; mainProgram = "fx_cast_bridge"; }; } diff --git a/pkgs/tools/networking/termscp/default.nix b/pkgs/tools/networking/termscp/default.nix index a5777a1f7f28..fdff493abd90 100644 --- a/pkgs/tools/networking/termscp/default.nix +++ b/pkgs/tools/networking/termscp/default.nix @@ -14,16 +14,16 @@ rustPlatform.buildRustPackage rec { pname = "termscp"; - version = "0.13.0"; + version = "0.14.0"; src = fetchFromGitHub { owner = "veeso"; repo = "termscp"; rev = "refs/tags/v${version}"; - hash = "sha256-/Mnoljgp87ML6+3vV1vZTFO0TSY5hr8E8U1fXJq31pE="; + hash = "sha256-XK0bH5ru248tSlD3Sdxb07O6i335dfTFvxDzKdc/3GQ="; }; - cargoHash = "sha256-xq21cncEYNSwDiKvVSM1J2Jz3TqOkYMK3gckKpM5+6E="; + cargoHash = "sha256-DzKxVqE0GMmpkxLH3raASgha9qGGs4kaUdSaviUwvdM="; nativeBuildInputs = [ pkg-config diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix index e2495db96b4c..a5f326069ae1 100644 --- a/pkgs/tools/security/vault/default.nix +++ b/pkgs/tools/security/vault/default.nix @@ -6,16 +6,16 @@ buildGoModule rec { pname = "vault"; - version = "1.17.1"; + version = "1.17.2"; src = fetchFromGitHub { owner = "hashicorp"; repo = "vault"; rev = "v${version}"; - hash = "sha256-BpiMgLO75zImJJbFgoW6FauJIOin1oSLvm2qmKZONqY="; + hash = "sha256-R8ubsBLpjkBxJaPQokwWKtCcUW45fTkA36JnXCXHkeA="; }; - vendorHash = "sha256-gSQjd59drhG0ZkiKTNQX7NEPpv5hMRoNQqeHr5oOMAQ="; + vendorHash = "sha256-dS8DYiXXXuDJ9shK07kRUv2JnZ0eFm5YK2k470vwW/I="; proxyVendor = true; diff --git a/pkgs/tools/system/proot/default.nix b/pkgs/tools/system/proot/default.nix index 79f96cccf39f..adcbb1de9d2a 100644 --- a/pkgs/tools/system/proot/default.nix +++ b/pkgs/tools/system/proot/default.nix @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { description = "User-space implementation of chroot, mount --bind and binfmt_misc"; platforms = platforms.linux; license = licenses.gpl2Plus; - maintainers = with maintainers; [ ianwookim makefu veprbl dtzWill ]; + maintainers = with maintainers; [ ianwookim makefu veprbl ]; mainProgram = "proot"; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b2018bdc1ec2..f312ca683ded 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1945,10 +1945,6 @@ with pkgs; npm-check-updates = callPackage ../tools/package-management/npm-check-updates { }; - ntpd-rs = darwin.apple_sdk_11_0.callPackage ../tools/networking/ntpd-rs { - inherit (darwin.apple_sdk_11_0.frameworks) Security; - }; - ocs-url = libsForQt5.callPackage ../tools/misc/ocs-url { }; openbugs = pkgsi686Linux.callPackage ../applications/science/machine-learning/openbugs { }; @@ -23249,7 +23245,9 @@ with pkgs; nntp-proxy = callPackage ../applications/networking/nntp-proxy { }; - non = callPackage ../applications/audio/non { }; + non = callPackage ../applications/audio/non { + wafHook = (waf.override { extraTools = [ "gccdeps" ]; }).hook; + }; ntl = callPackage ../development/libraries/ntl { }; @@ -27704,6 +27702,7 @@ with pkgs; ubootOrangePiZeroPlus2H5 ubootOrangePiZero ubootOrangePiZero2 + ubootOrangePiZero3 ubootPcduino3Nano ubootPine64 ubootPine64LTS diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index b31e805460b6..c0342015c5ae 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -16738,6 +16738,8 @@ self: super: with self; { undefined = callPackage ../development/python-modules/undefined { }; + undetected-chromedriver = callPackage ../development/python-modules/undetected-chromedriver { }; + unearth = callPackage ../development/python-modules/unearth { }; unicodecsv = callPackage ../development/python-modules/unicodecsv { };