diff --git a/ci/OWNERS b/ci/OWNERS index f0483935cc5e..2c9d3c0fa690 100644 --- a/ci/OWNERS +++ b/ci/OWNERS @@ -206,6 +206,12 @@ pkgs/data/misc/cacert/ @ajs124 @lukegb @mweinelt pkgs/development/libraries/nss/ @ajs124 @lukegb @mweinelt pkgs/development/python-modules/buildcatrust/ @ajs124 @lukegb @mweinelt +# Java +/doc/languages-frameworks/java.section.md @NixOS/java +/doc/languages-frameworks/gradle.section.md @NixOS/java +/doc/languages-frameworks/maven.section.md @NixOS/java +/pkgs/top-level/java-packages.nix @NixOS/java + # Jetbrains /pkgs/applications/editors/jetbrains @edwtjo diff --git a/maintainers/README.md b/maintainers/README.md index 118356a5168f..eb17b0b51824 100644 --- a/maintainers/README.md +++ b/maintainers/README.md @@ -175,3 +175,54 @@ for further information. # nixpkgs-merge-bot To streamline autoupdates, leverage the nixpkgs-merge-bot by commenting `@NixOS/nixpkgs-merge-bot merge` if the package resides in pkgs-by-name and the commenter is among the package maintainers. The bot ensures that all ofborg checks, except for darwin, are successfully completed before merging the pull request. Should the checks still be underway, the bot patiently waits for ofborg to finish before attempting the merge again. + +# Guidelines for Committers + +When merging pull requests, care must be taken to reduce impact to the `master` +branch. If a commit breaks evaluation, it will affect Ofborg evaluation results +in other pull requests and block Hydra CI, thus introducing chaos to our +workflow. + +One approach to avoid merging such problematic changes is to wait for +successful Ofborg evaluation. Additionally, using tools like +[nixpkgs-review](https://github.com/Mic92/nixpkgs-review) can help spot issues +early, before Ofborg finishes evaluation. + +## Breaking changes + +In general breaking changes to `master` and `staging` branches are permitted, +as long as they are documented in the release notes. Though restrictions might +apply towards the end of a NixOS release cycle, due to our feature freeze +mechanism. This is to avoid large-scale breakages shortly before and during +a Zero Hydra Failures (ZHF) campaign. These restrictions also intend to +decrease the likelihood of a delayed NixOS release. The feature freeze period +is documented in the announcement of each release schedule. + +> These are some example changes and if they are considered a breaking change +> during a freeze period: +> +> - `foo: 1.2.3 -> 1.2.4` - Assuming this package follows semantic versioning +> and none of its dependent packages fail to build because of this change, it +> can be safely merged. Otherwise, if it can be confirmed that there is no +> major change in its functionality or API, but only adding new features or +> fixing bugs, it +> can also be merged. +> - `unmaintained-software: drop` - If this PR removes a leaf package or the +> removal doesn't otherwise break other packages, it can be merged. +> - `cool-tool: rename from fancy-tool` - As long as this PR replaces all +> references to the old attribute name with the new name and adds an alias, +> it can be merged. +> - `libpopular: 4.3.2 -> 5.0.0` - If this PR would trigger many rebuilds +> and/or target `staging`, it should probably be delayed until after the +> freeze-period is over. Alternatively, if this PR is for a popular package +> and doesn't cause many rebuilds, it should also be delayed to reduce risk +> of breakage. If a PR includes important changes, such as security fixes, it +> should be brought up to +> release managers. +> - `nixos/transmission: refactor` - If this PR adjusts the type, default value +> or effect of options in the NixOS module, so that users must rewrite their +> configuration to keep the current behavior unchanged, it should not be +> merged, as we don't have enough time to collect user feedback and avoid +> possible breakage. However, it should be accepted if the current behavior +> is +> considered broken and is fixed by the PR. diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index fdd7825291e2..b33c15d863cf 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -18613,6 +18613,16 @@ { fingerprint = "C0A7 A9BB 115B C857 4D75 EA99 BBB7 A680 1DF1 E03F"; } ]; }; + ritiek = { + name = "Ritiek Malhotra"; + email = "ritiekmalhotra123@gmail.com"; + matrix = "@ritiek:matrix.org"; + github = "ritiek"; + githubId = 20314742; + keys = [ + { fingerprint = "66FF 6099 7B04 845F F4C0 CB4F EB6F C9F9 FC96 4257"; } + ]; + }; rixed = { email = "rixed-github@happyleptic.org"; github = "rixed"; diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix index b4f555105051..3deec6c11555 100644 --- a/maintainers/team-list.nix +++ b/maintainers/team-list.nix @@ -497,6 +497,19 @@ with lib.maintainers; shortName = "Input-Output Global employees"; }; + java = { + githubTeams = [ "java" ]; + members = [ + chayleaf + fliegendewurst + infinidoge + tomodachi94 + ]; + shortName = "Java"; + scope = "Maintainers of the Nixpkgs Java ecosystem (JDK, JVM, Java, Gradle, Maven, Ant, and adjacent projects)"; + enableFeatureFreezePing = true; + }; + jitsi = { members = [ cleeyv diff --git a/nixos/modules/security/acme/default.nix b/nixos/modules/security/acme/default.nix index 4af92d8779ef..140fa590efef 100644 --- a/nixos/modules/security/acme/default.nix +++ b/nixos/modules/security/acme/default.nix @@ -183,7 +183,6 @@ let certToConfig = cert: data: let acmeServer = data.server; useDns = data.dnsProvider != null; - useDnsOrS3 = useDns || data.s3Bucket != null; destPath = "/var/lib/acme/${cert}"; selfsignedDeps = lib.optionals (cfg.preliminarySelfsigned) [ "acme-selfsigned-${cert}.service" ]; @@ -367,13 +366,11 @@ let "/var/lib/acme/.lego/${cert}/${certDir}:/tmp/certificates" ]; - EnvironmentFile = lib.mkIf useDnsOrS3 data.environmentFile; + EnvironmentFile = lib.mkIf (data.environmentFile != null) data.environmentFile; - Environment = lib.mkIf useDnsOrS3 - (lib.mapAttrsToList (k: v: ''"${k}=%d/${k}"'') data.credentialFiles); + Environment = lib.mapAttrsToList (k: v: ''"${k}=%d/${k}"'') data.credentialFiles; - LoadCredential = lib.mkIf useDnsOrS3 - (lib.mapAttrsToList (k: v: "${k}:${v}") data.credentialFiles); + LoadCredential = lib.mapAttrsToList (k: v: "${k}:${v}") data.credentialFiles; # Run as root (Prefixed with +) ExecStartPost = "+" + (pkgs.writeShellScript "acme-postrun" '' diff --git a/nixos/modules/services/video/frigate.nix b/nixos/modules/services/video/frigate.nix index a5fa6375c648..72e96df5442e 100644 --- a/nixos/modules/services/video/frigate.nix +++ b/nixos/modules/services/video/frigate.nix @@ -526,6 +526,7 @@ in ExecStartPre = "-rm /var/cache/frigate/*.mp4"; ExecStart = "${cfg.package.python.interpreter} -m frigate"; Restart = "on-failure"; + SyslogIdentifier = "frigate"; User = "frigate"; Group = "frigate"; diff --git a/nixos/modules/services/web-apps/nextcloud-notify_push.nix b/nixos/modules/services/web-apps/nextcloud-notify_push.nix index 961178cedc06..475cddf5f751 100644 --- a/nixos/modules/services/web-apps/nextcloud-notify_push.nix +++ b/nixos/modules/services/web-apps/nextcloud-notify_push.nix @@ -48,7 +48,7 @@ in ] ( opt: options.services.nextcloud.config.${opt} // { default = config.services.nextcloud.config.${opt}; - defaultText = "config.services.nextcloud.config.${opt}"; + defaultText = lib.literalExpression "config.services.nextcloud.config.${opt}"; } ) ); diff --git a/nixos/tests/frr.nix b/nixos/tests/frr.nix index a975d4b402a1..f4cd68c9d315 100644 --- a/nixos/tests/frr.nix +++ b/nixos/tests/frr.nix @@ -5,10 +5,11 @@ # # All interfaces are in OSPF Area 0. -import ./make-test-python.nix ({ pkgs, ... }: +import ./make-test-python.nix ( + { pkgs, ... }: let - ifAddr = node: iface: (pkgs.lib.head node.config.networking.interfaces.${iface}.ipv4.addresses).address; + ifAddr = node: iface: (pkgs.lib.head node.networking.interfaces.${iface}.ipv4.addresses).address; ospfConf1 = '' router ospf @@ -25,87 +26,94 @@ import ./make-test-python.nix ({ pkgs, ... }: ''; in - { - name = "frr"; + { + name = "frr"; - meta = with pkgs.lib.maintainers; { - maintainers = [ ]; - }; + meta = with pkgs.lib.maintainers; { + maintainers = [ ]; + }; - nodes = { + nodes = { - client = - { nodes, ... }: - { - virtualisation.vlans = [ 1 ]; - services.frr = { - config = '' - ip route 192.168.0.0/16 ${ifAddr nodes.router1 "eth1"} - ''; - }; - }; - - router1 = - { ... }: - { - virtualisation.vlans = [ 1 2 ]; - boot.kernel.sysctl."net.ipv4.ip_forward" = "1"; - networking.firewall.extraCommands = "iptables -A nixos-fw -i eth2 -p ospfigp -j ACCEPT"; - services.frr = { - ospfd.enable = true; - config = ospfConf1; - }; - - specialisation.ospf.configuration = { - services.frr.config = ospfConf2; - }; - }; - - router2 = - { ... }: - { - virtualisation.vlans = [ 3 2 ]; - boot.kernel.sysctl."net.ipv4.ip_forward" = "1"; - networking.firewall.extraCommands = "iptables -A nixos-fw -i eth2 -p ospfigp -j ACCEPT"; - services.frr = { - ospfd.enable = true; - config = ospfConf2; - }; - }; - - server = - { nodes, ... }: - { - virtualisation.vlans = [ 3 ]; - services.frr = { - config = '' - ip route 192.168.0.0/16 ${ifAddr nodes.router2 "eth1"} - ''; - }; - }; - }; - - testScript = + client = { nodes, ... }: - '' - start_all() + { + virtualisation.vlans = [ 1 ]; + services.frr = { + config = '' + ip route 192.168.0.0/16 ${ifAddr nodes.router1 "eth1"} + ''; + }; + }; - # Wait for the networking to start on all machines - for machine in client, router1, router2, server: - machine.wait_for_unit("network.target") + router1 = + { ... }: + { + virtualisation.vlans = [ + 1 + 2 + ]; + boot.kernel.sysctl."net.ipv4.ip_forward" = "1"; + networking.firewall.extraCommands = "iptables -A nixos-fw -i eth2 -p ospfigp -j ACCEPT"; + services.frr = { + ospfd.enable = true; + config = ospfConf1; + }; - with subtest("Wait for FRR"): - for gw in client, router1, router2, server: - gw.wait_for_unit("frr") + specialisation.ospf.configuration = { + services.frr.config = ospfConf2; + }; + }; - router1.succeed("${nodes.router1.config.system.build.toplevel}/specialisation/ospf/bin/switch-to-configuration test >&2") + router2 = + { ... }: + { + virtualisation.vlans = [ + 3 + 2 + ]; + boot.kernel.sysctl."net.ipv4.ip_forward" = "1"; + networking.firewall.extraCommands = "iptables -A nixos-fw -i eth2 -p ospfigp -j ACCEPT"; + services.frr = { + ospfd.enable = true; + config = ospfConf2; + }; + }; - with subtest("Wait for OSPF to form adjacencies"): - for gw in router1, router2: - gw.wait_until_succeeds("vtysh -c 'show ip ospf neighbor' | grep Full") - gw.wait_until_succeeds("vtysh -c 'show ip route' | grep '^O>'") + server = + { nodes, ... }: + { + virtualisation.vlans = [ 3 ]; + services.frr = { + config = '' + ip route 192.168.0.0/16 ${ifAddr nodes.router2 "eth1"} + ''; + }; + }; + }; - with subtest("Test ICMP"): - client.wait_until_succeeds("ping -4 -c 3 server >&2") - ''; - }) + testScript = + { nodes, ... }: + '' + start_all() + + # Wait for the networking to start on all machines + for machine in client, router1, router2, server: + machine.wait_for_unit("network.target") + + with subtest("Wait for FRR"): + for gw in client, router1, router2, server: + gw.wait_for_unit("frr") + + router1.succeed("${nodes.router1.system.build.toplevel}/specialisation/ospf/bin/switch-to-configuration test >&2") + + with subtest("Wait for OSPF to form adjacencies"): + for gw in router1, router2: + gw.wait_until_succeeds("vtysh -c 'show ip ospf neighbor' | grep Full") + gw.wait_until_succeeds("vtysh -c 'show ip route' | grep '^O>'") + + with subtest("Test ICMP"): + client.wait_until_succeeds("ping -4 -c 3 server >&2") + ''; + } +) diff --git a/pkgs/applications/emulators/wibo/default.nix b/pkgs/applications/emulators/wibo/default.nix index f34f8d6b2f0f..71ed31ff4bcb 100644 --- a/pkgs/applications/emulators/wibo/default.nix +++ b/pkgs/applications/emulators/wibo/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "wibo"; - version = "0.4.2"; + version = "0.6.14"; src = fetchFromGitHub { owner = "decompals"; repo = "wibo"; rev = version; - hash = "sha256-oq/i0Hb2y5pwDEvaqSyC4+6LH1oUbvDZ/62l+V3S7Uk="; + hash = "sha256-6YcraHBFWmm8TBfuFHbM9jGvUm9KvTOplJrFSTQkt70="; }; nativeBuildInputs = [ @@ -29,8 +29,8 @@ stdenv.mkDerivation rec { gc = srcOnly { name = "GC_WII_COMPILERS"; src = fetchzip { - url = "https://cdn.discordapp.com/attachments/727918646525165659/917185027656286218/GC_WII_COMPILERS.zip"; - hash = "sha256-o+UrmIbCsa74LxtLofT0DKrTRgT0qDK5/V7GsG2Zprc="; + url = "https://files.decomp.dev/compilers_20230715.zip"; + hash = "sha256-IX3byvEUVJB6Rmc+NqO9ZNt1jl95nQpEIqxbHI+uUio="; stripRoot = false; }; meta.license = lib.licenses.unfree; diff --git a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix b/pkgs/applications/networking/instant-messengers/teamspeak/client.nix deleted file mode 100644 index 6aa7e45ac117..000000000000 --- a/pkgs/applications/networking/instant-messengers/teamspeak/client.nix +++ /dev/null @@ -1,168 +0,0 @@ -{ - lib, - stdenv, - fetchurl, - fetchzip, - makeWrapper, - makeDesktopItem, - zlib, - glib, - libpng, - freetype, - openssl, - xorg, - fontconfig, - qtbase, - qtwebengine, - qtwebchannel, - qtsvg, - qtwebsockets, - xkeyboard_config, - alsa-lib, - libpulseaudio ? null, - libredirect, - quazip, - which, - perl, - llvmPackages, -}: - -let - - arch = "amd64"; - - libDir = "lib64"; - - deps = [ - zlib - glib - libpng - freetype - xorg.libSM - xorg.libICE - xorg.libXrender - openssl - xorg.libXrandr - xorg.libXfixes - xorg.libXcursor - xorg.libXinerama - xorg.libxcb - fontconfig - xorg.libXext - xorg.libX11 - alsa-lib - qtbase - qtwebengine - qtwebchannel - qtsvg - qtwebsockets - libpulseaudio - quazip - llvmPackages.libcxx - ]; - - desktopItem = makeDesktopItem { - name = "teamspeak"; - exec = "ts3client"; - icon = "teamspeak"; - comment = "The TeamSpeak voice communication tool"; - desktopName = "TeamSpeak"; - genericName = "TeamSpeak"; - categories = [ "Network" ]; - }; -in - -stdenv.mkDerivation rec { - pname = "teamspeak-client"; - - version = "3.6.2"; - - src = fetchurl { - url = "https://files.teamspeak-services.com/releases/client/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run"; - hash = "sha256-WfEQQ4lxoj+QSnAOfdCoEc+Z1Oa5dbo6pFli1DsAZCI="; - }; - - # grab the plugin sdk for the desktop icon - pluginsdk = fetchzip { - url = "https://files.teamspeak-services.com/releases/sdk/3.3.1/ts_sdk_3.3.1.zip"; - hash = "sha256-wx4pBZHpFPoNvEe4xYE80KnXGVda9XcX35ho4R8QxrQ="; - }; - - nativeBuildInputs = [ - makeWrapper - which - perl # Installer script needs `shasum` - ]; - - # This just runs the installer script. If it gets stuck at something like - # ++ exec - # + PAGER_PATH= - # it's looking for a dependency and didn't find it. Check the script and make sure the dep is in nativeBuildInputs. - unpackPhase = '' - echo -e '\ny' | PAGER=cat sh -xe $src - cd TeamSpeak* - ''; - - buildPhase = '' - mv ts3client_linux_${arch} ts3client - echo "patching ts3client..." - patchelf --replace-needed libquazip.so ${quazip}/lib/libquazip1-qt5.so ts3client - patchelf \ - --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath ${lib.makeLibraryPath deps}:$(cat $NIX_CC/nix-support/orig-cc)/${libDir} \ - --force-rpath \ - ts3client - ''; - - installPhase = - '' - # Delete unecessary libraries - these are provided by nixos. - rm *.so.* *.so - rm QtWebEngineProcess - rm qt.conf - rm -r platforms # contains libqxcb.so - - # Install files. - mkdir -p $out/lib/teamspeak - mv * $out/lib/teamspeak/ - - # Make a desktop item - mkdir -p $out/share/applications/ $out/share/icons/hicolor/64x64/apps/ - cp ${pluginsdk}/doc/_static/logo.png $out/share/icons/hicolor/64x64/apps/teamspeak.png - cp ${desktopItem}/share/applications/* $out/share/applications/ - - # Make a symlink to the binary from bin. - mkdir -p $out/bin/ - ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client - - wrapProgram $out/bin/ts3client \ - --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ - --set QT_PLUGIN_PATH "${qtbase}/${qtbase.qtPluginPrefix}" \ - '' # wayland is currently broken, remove when TS3 fixes that - + '' - --set QT_QPA_PLATFORM xcb \ - --set NIX_REDIRECTS /usr/share/X11/xkb=${xkeyboard_config}/share/X11/xkb - ''; - - dontStrip = true; - dontPatchELF = true; - - meta = with lib; { - description = "TeamSpeak voice communication tool"; - homepage = "https://teamspeak.com/"; - sourceProvenance = with sourceTypes; [ binaryNativeCode ]; - license = { - # See distribution-permit.txt for a confirmation that nixpkgs is allowed to distribute TeamSpeak. - fullName = "Teamspeak client license"; - url = "https://www.teamspeak.com/en/privacy-and-terms/"; - free = false; - }; - maintainers = with maintainers; [ - lhvwb - lukegb - atemu - ]; - mainProgram = "ts3client"; - platforms = [ "x86_64-linux" ]; - }; -} diff --git a/pkgs/by-name/ap/apacheAnt/package.nix b/pkgs/by-name/ap/apacheAnt/package.nix index 5e00d302ac4c..883163d00c42 100644 --- a/pkgs/by-name/ap/apacheAnt/package.nix +++ b/pkgs/by-name/ap/apacheAnt/package.nix @@ -106,7 +106,7 @@ stdenv.mkDerivation rec { sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; license = lib.licenses.asl20; - maintainers = [ ]; + maintainers = [ ] ++ lib.teams.java.members; platforms = lib.platforms.all; }; } diff --git a/pkgs/by-name/aq/aquamarine/package.nix b/pkgs/by-name/aq/aquamarine/package.nix index e5452579a5a2..758f1e96a733 100644 --- a/pkgs/by-name/aq/aquamarine/package.nix +++ b/pkgs/by-name/aq/aquamarine/package.nix @@ -23,13 +23,13 @@ }: stdenv.mkDerivation (finalAttrs: { pname = "aquamarine"; - version = "0.4.3"; + version = "0.4.4"; src = fetchFromGitHub { owner = "hyprwm"; repo = "aquamarine"; rev = "v${finalAttrs.version}"; - hash = "sha256-44bnoY0nAvbBQ/lVjmn511yL39Sv7SknV0BDxn34P3Q="; + hash = "sha256-6DQM7jT2CzfxYceyrtcBQSL9BOEGfuin8GAyMjCpAzc="; }; nativeBuildInputs = [ diff --git a/pkgs/by-name/ev/evcc/package.nix b/pkgs/by-name/ev/evcc/package.nix index 11809da781a6..2849c3509494 100644 --- a/pkgs/by-name/ev/evcc/package.nix +++ b/pkgs/by-name/ev/evcc/package.nix @@ -16,16 +16,16 @@ buildGoModule rec { pname = "evcc"; - version = "0.131.4"; + version = "0.131.5"; src = fetchFromGitHub { owner = "evcc-io"; repo = "evcc"; rev = version; - hash = "sha256-sU5h29sXz1am44iFGNrVfMzrI1aAc/m355Aevm81sQc="; + hash = "sha256-CRqxxbPkcjswntMgGkIrPFEbnjI90sfTmG6D1eCo45w="; }; - vendorHash = "sha256-hPCTAK4u79r9EoHkv6g1QvkRDZ95hXzyiiQpRD+0aLQ="; + vendorHash = "sha256-x0EWFsR/O2Ztg39DL+yZx2ZDzJHADo2aPAeg/i+5KqM="; npmDeps = fetchNpmDeps { inherit src; diff --git a/pkgs/by-name/gr/gradle-completion/package.nix b/pkgs/by-name/gr/gradle-completion/package.nix index 6112c2edfa1d..f02977de87ef 100644 --- a/pkgs/by-name/gr/gradle-completion/package.nix +++ b/pkgs/by-name/gr/gradle-completion/package.nix @@ -32,6 +32,6 @@ stdenv.mkDerivation rec { description = "Gradle tab completion for bash and zsh"; homepage = "https://github.com/gradle/gradle-completion"; license = licenses.mit; - maintainers = [ ]; + maintainers = [ ] ++ teams.java.members; }; } diff --git a/pkgs/by-name/hy/hyprland/info.json b/pkgs/by-name/hy/hyprland/info.json index 0f61f205b570..c7170f8c905e 100644 --- a/pkgs/by-name/hy/hyprland/info.json +++ b/pkgs/by-name/hy/hyprland/info.json @@ -1,7 +1,7 @@ { - "branch": "v0.44.1-b", - "commit_hash": "4520b30d498daca8079365bdb909a8dea38e8d55", - "commit_message": "version: bump to 0.44.1", - "date": "2024-10-09", - "tag": "v0.44.1" + "branch": "main", + "commit_hash": "a425fbebe4cf4238e48a42f724ef2208959d66cf", + "commit_message": "version: bump to 0.45.0", + "date": "2024-11-09", + "tag": "v0.45.0" } diff --git a/pkgs/by-name/hy/hyprland/package.nix b/pkgs/by-name/hy/hyprland/package.nix index 3364348a1d58..7fdf15bf59e8 100644 --- a/pkgs/by-name/hy/hyprland/package.nix +++ b/pkgs/by-name/hy/hyprland/package.nix @@ -82,14 +82,14 @@ assert assertMsg (!hidpiXWayland) customStdenv.mkDerivation (finalAttrs: { pname = "hyprland" + optionalString debug "-debug"; - version = "0.44.1"; + version = "0.45.0"; src = fetchFromGitHub { owner = "hyprwm"; repo = "hyprland"; fetchSubmodules = true; rev = "refs/tags/v${finalAttrs.version}"; - hash = "sha256-hnoPoxMFetuoXQuAMgvopl1kCRQ33FYaVVBgV9FIFkM="; + hash = "sha256-//Ib7gXCA8jq8c+QGTTIO0oH0rUYYBXGp8sqpI1jlhA="; }; postPatch = '' diff --git a/pkgs/by-name/ma/maven/package.nix b/pkgs/by-name/ma/maven/package.nix index d48e0448ea12..f7d88548f36b 100644 --- a/pkgs/by-name/ma/maven/package.nix +++ b/pkgs/by-name/ma/maven/package.nix @@ -54,7 +54,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { ''; license = lib.licenses.asl20; mainProgram = "mvn"; - maintainers = [ ]; + maintainers = [ ] ++ lib.teams.java.members; inherit (jdk_headless.meta) platforms; }; }) diff --git a/pkgs/by-name/ne/netclient/package.nix b/pkgs/by-name/ne/netclient/package.nix index 5ac4e9f7a451..66a2bae71f46 100644 --- a/pkgs/by-name/ne/netclient/package.nix +++ b/pkgs/by-name/ne/netclient/package.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "netclient"; - version = "0.25.0"; + version = "0.26.0"; src = fetchFromGitHub { owner = "gravitl"; repo = "netclient"; rev = "v${version}"; - hash = "sha256-cc0OBDDyg+egnQWPoteGVVHtg8vfYC9RVIpe7A+ZJPQ="; + hash = "sha256-vGiOVAulqngodUSOmpqMs5ZNHtUhx5TGhpihSaAo164="; }; - vendorHash = "sha256-DzTTESPxYuZYNGjEG3PufLoS02+R9275arVcUzImpBU="; + vendorHash = "sha256-ENrBJ0XbCfLfzTVZEVtDBjGxupdiLI7USGVImkYWDdY="; buildInputs = lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Cocoa ++ lib.optional stdenv.hostPlatform.isLinux libX11; diff --git a/pkgs/by-name/pi/piano-rs/package.nix b/pkgs/by-name/pi/piano-rs/package.nix new file mode 100644 index 000000000000..70feb3ba5cb0 --- /dev/null +++ b/pkgs/by-name/pi/piano-rs/package.nix @@ -0,0 +1,47 @@ +{ + lib, + rustPlatform, + fetchFromGitHub, + makeBinaryWrapper, + pkg-config, + alsa-lib, +}: + +rustPlatform.buildRustPackage rec { + pname = "piano-rs"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "ritiek"; + repo = pname; + rev = "v${version}"; + hash = "sha256-qZeH9xXQPIOJ87mvLahnJB3DuEgLX0EAXPvECgxNlq0="; + }; + + cargoHash = "sha256-vDqfWXeQVEnMWMjhAG/A0afff7dWMoQejDZjcVlYBMQ="; + + nativeBuildInputs = [ + makeBinaryWrapper + pkg-config + ]; + + buildInputs = [ + alsa-lib + ]; + + postInstall = '' + mkdir -p "$out"/share/piano-rs + cp -r assets "$out"/share/piano-rs + wrapProgram "$out"/bin/piano-rs \ + --set ASSETS "$out"/share/piano-rs/assets + ''; + + meta = with lib; { + description = "A multiplayer piano using UDP sockets that can be played using computer keyboard, in the terminal"; + homepage = "https://github.com/ritiek/piano-rs"; + license = licenses.mit; + mainProgram = "piano-rs"; + maintainers = with maintainers; [ ritiek ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/by-name/py/pylyzer/Cargo.lock b/pkgs/by-name/py/pylyzer/Cargo.lock index 353c5f0f38d9..bc834e889976 100644 --- a/pkgs/by-name/py/pylyzer/Cargo.lock +++ b/pkgs/by-name/py/pylyzer/Cargo.lock @@ -31,9 +31,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.92" +version = "1.0.93" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" +checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775" [[package]] name = "autocfg" @@ -93,9 +93,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "cc" -version = "1.1.34" +version = "1.1.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67b9470d453346108f93a59222a9a1a5724db32d0a4727b7ab7ace4b4d822dc9" +checksum = "40545c26d092346d8a8dab71ee48e7685a7a9cba76e634790c215b41a4a7b4cf" dependencies = [ "shlex", ] @@ -131,6 +131,17 @@ dependencies = [ "syn 2.0.87", ] +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + [[package]] name = "either" version = "1.13.0" @@ -139,9 +150,9 @@ checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" [[package]] name = "els" -version = "0.1.60-nightly.0" +version = "0.1.60-nightly.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91526cd54184ae2ddea4124e87a00dca78fff3780de423dcc0b089d8ed0f31e1" +checksum = "89c30c054c5e833e623d0673f81696e19e58269c66a7a134785e00c0534979b6" dependencies = [ "erg_common", "erg_compiler", @@ -155,9 +166,9 @@ dependencies = [ [[package]] name = "erg_common" -version = "0.6.48-nightly.0" +version = "0.6.48-nightly.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc5e16917f93caa5866a8f628d8d4c82c72c7bde70bb1cae1969f1f5d0521f9a" +checksum = "b194a638b1a921dfe528d62aa8a027f822142a3898f28d65c965bdacf50a2de1" dependencies = [ "backtrace-on-stack-overflow", "erg_proc_macros", @@ -168,9 +179,9 @@ dependencies = [ [[package]] name = "erg_compiler" -version = "0.6.48-nightly.0" +version = "0.6.48-nightly.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "446393772e60305fbbce5d331aad109037e4ee7c098f8431c6431c2fab200548" +checksum = "9d437395714e82c213db0366bab94b314f8f0fac5eaeb8297580df1e0b004fa1" dependencies = [ "erg_common", "erg_parser", @@ -178,9 +189,9 @@ dependencies = [ [[package]] name = "erg_parser" -version = "0.6.48-nightly.0" +version = "0.6.48-nightly.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e00edb38b9576bace8b914c65d5c4511055feb2de41527449bae6471bd05017" +checksum = "d27a6c9659043cf12bcfc8066f34193438e19633ecc1161bfe5e36df12d2aa4a" dependencies = [ "erg_common", "erg_proc_macros", @@ -189,9 +200,9 @@ dependencies = [ [[package]] name = "erg_proc_macros" -version = "0.6.48-nightly.0" +version = "0.6.48-nightly.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f51df19e941a11864b34dc9cbf7c94b36a8641def3bdb041de873dad566b9f7" +checksum = "52070b88941a145aecc724ff8dd57742f6e36cbb422311db5858dccf7c84efed" dependencies = [ "quote", "syn 1.0.109", @@ -248,13 +259,142 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] -name = "idna" -version = "0.5.0" +name = "icu_collections" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" dependencies = [ - "unicode-bidi", - "unicode-normalization", + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + +[[package]] +name = "idna" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" +dependencies = [ + "icu_normalizer", + "icu_properties", ] [[package]] @@ -292,9 +432,9 @@ checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" [[package]] name = "libc" -version = "0.2.161" +version = "0.2.162" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" +checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398" [[package]] name = "libm" @@ -302,6 +442,12 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +[[package]] +name = "litemap" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" + [[package]] name = "lock_api" version = "0.4.12" @@ -563,7 +709,7 @@ dependencies = [ [[package]] name = "py2erg" -version = "0.0.69" +version = "0.0.70" dependencies = [ "erg_common", "erg_compiler", @@ -573,7 +719,7 @@ dependencies = [ [[package]] name = "pylyzer" -version = "0.0.69" +version = "0.0.70" dependencies = [ "els", "erg_common", @@ -583,7 +729,7 @@ dependencies = [ [[package]] name = "pylyzer_core" -version = "0.0.69" +version = "0.0.70" dependencies = [ "erg_common", "erg_compiler", @@ -594,7 +740,7 @@ dependencies = [ [[package]] name = "pylyzer_wasm" -version = "0.0.69" +version = "0.0.70" dependencies = [ "erg_common", "erg_compiler", @@ -803,6 +949,12 @@ version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + [[package]] name = "static_assertions" version = "1.1.0" @@ -831,6 +983,17 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + [[package]] name = "thread_local" version = "1.1.8" @@ -851,20 +1014,15 @@ dependencies = [ ] [[package]] -name = "tinyvec" -version = "1.8.0" +name = "tinystr" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" dependencies = [ - "tinyvec_macros", + "displaydoc", + "zerovec", ] -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - [[package]] name = "unic-char-property" version = "0.9.0" @@ -917,27 +1075,12 @@ dependencies = [ "unic-common", ] -[[package]] -name = "unicode-bidi" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" - [[package]] name = "unicode-ident" version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" -[[package]] -name = "unicode-normalization" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" -dependencies = [ - "tinyvec", -] - [[package]] name = "unicode-width" version = "0.1.14" @@ -974,9 +1117,9 @@ dependencies = [ [[package]] name = "url" -version = "2.5.2" +version = "2.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +checksum = "8d157f1b96d14500ffdc1f10ba712e780825526c03d9a49b4d0324b0d9113ada" dependencies = [ "form_urlencoded", "idna", @@ -984,6 +1127,18 @@ dependencies = [ "serde", ] +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + [[package]] name = "version_check" version = "0.9.5" @@ -1188,6 +1343,42 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + +[[package]] +name = "yoke" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", + "synstructure", +] + [[package]] name = "zerocopy" version = "0.7.35" @@ -1208,3 +1399,46 @@ dependencies = [ "quote", "syn 2.0.87", ] + +[[package]] +name = "zerofrom" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", + "synstructure", +] + +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] diff --git a/pkgs/by-name/py/pylyzer/package.nix b/pkgs/by-name/py/pylyzer/package.nix index 0c4d6a456a2f..a73a9de8f728 100644 --- a/pkgs/by-name/py/pylyzer/package.nix +++ b/pkgs/by-name/py/pylyzer/package.nix @@ -7,7 +7,6 @@ python3, makeWrapper, writeScriptBin, - darwin, which, nix-update-script, versionCheckHook, @@ -15,13 +14,13 @@ rustPlatform.buildRustPackage rec { pname = "pylyzer"; - version = "0.0.69"; + version = "0.0.70"; src = fetchFromGitHub { owner = "mtshiba"; repo = "pylyzer"; rev = "refs/tags/v${version}"; - hash = "sha256-3Ufige1OQWriJ6qQXjpfzL1tlA/9Sa8BEmhMDdpYlAQ="; + hash = "sha256-jj9r5npClLY9mhDHFI92825RYvwn6m9KlngfFL0bqCw="; }; cargoLock = { @@ -39,10 +38,10 @@ rustPlatform.buildRustPackage rec { buildInputs = [ python3 - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Security ]; + ]; preBuild = '' - export HOME=$TMPDIR + export HOME=$(mktemp -d) ''; postInstall = '' @@ -52,11 +51,17 @@ rustPlatform.buildRustPackage rec { nativeCheckInputs = [ which ]; - checkFlags = [ - # this test causes stack overflow - # > thread 'exec_import' has overflowed its stack - "--skip=exec_import" - ]; + checkFlags = + [ + # this test causes stack overflow + # > thread 'exec_import' has overflowed its stack + "--skip=exec_import" + ] + ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [ + # Dict({Str..Obj: Int}) does not implement Iterable(Str..Obj..Obj) and Indexable({"a"}..Obj, Int) + # https://github.com/mtshiba/pylyzer/issues/114 + "--skip=exec_casting" + ]; postFixup = '' wrapProgram $out/bin/pylyzer --set ERG_PATH $out/lib/erg diff --git a/pkgs/by-name/ri/rime-zhwiki/package.nix b/pkgs/by-name/ri/rime-zhwiki/package.nix new file mode 100644 index 000000000000..95fba1f22899 --- /dev/null +++ b/pkgs/by-name/ri/rime-zhwiki/package.nix @@ -0,0 +1,33 @@ +{ + fetchurl, + stdenvNoCC, + lib, +}: +stdenvNoCC.mkDerivation { + pname = "rime-zhwiki"; + version = "20240909"; + src = fetchurl { + url = "https://github.com/felixonmars/fcitx5-pinyin-zhwiki/releases/download/0.2.5/zhwiki-20240909.dict.yaml"; + hash = "sha256-ZQ8orW7jEbPtOEvYYxdnTJGTwdXVZBEWjUMYR93vOCE="; + }; + + dontUnpack = true; + installPhase = '' + runHook preInstall + + mkdir -p $out/share/rime-data + cp $src $out/share/rime-data/zhwiki.dict.yaml + + runHook postInstall + ''; + + meta = { + maintainers = with lib.maintainers; [ xddxdd ]; + description = "RIME dictionary file for entries from zh.wikipedia.org"; + homepage = "https://github.com/felixonmars/fcitx5-pinyin-zhwiki"; + license = [ + lib.licenses.fdl13Plus + lib.licenses.cc-by-sa-40 + ]; + }; +} diff --git a/pkgs/by-name/te/teamspeak3/package.nix b/pkgs/by-name/te/teamspeak3/package.nix new file mode 100644 index 000000000000..01e5739b169f --- /dev/null +++ b/pkgs/by-name/te/teamspeak3/package.nix @@ -0,0 +1,143 @@ +{ + lib, + stdenv, + fetchurl, + fetchzip, + makeDesktopItem, + glib, + qt5, + libsForQt5, + perl, + libcxx, + autoPatchelfHook, + copyDesktopItems, +}: + +let + pluginsdk = fetchzip { + url = "https://files.teamspeak-services.com/releases/sdk/3.3.1/ts_sdk_3.3.1.zip"; + hash = "sha256-wx4pBZHpFPoNvEe4xYE80KnXGVda9XcX35ho4R8QxrQ="; + }; +in + +stdenv.mkDerivation rec { + pname = "teamspeak3"; + + version = "3.6.2"; + + src = fetchurl { + url = "https://files.teamspeak-services.com/releases/client/${version}/TeamSpeak3-Client-linux_amd64-${version}.run"; + hash = "sha256-WfEQQ4lxoj+QSnAOfdCoEc+Z1Oa5dbo6pFli1DsAZCI="; + }; + + nativeBuildInputs = [ + perl # Installer script needs `shasum` + qt5.wrapQtAppsHook + autoPatchelfHook + copyDesktopItems + ]; + + buildInputs = + [ + libsForQt5.quazip + glib + libcxx + ] + ++ (with qt5; [ + qtbase + qtwebengine + qtwebchannel + qtwebsockets + qtsvg + ]); + + # This runs the installer script. If it gets stuck, run it with -x. + # If it then gets stuck at something like: + # + # ++ exec + # + PAGER_PATH= + # + # it's looking for a dependency and didn't find it. Check the script and make + # sure the dep is in nativeBuildInputs. + unpackPhase = '' + runHook preUnpack + + # Run the installer script non-interactively + echo -e '\ny' | PAGER=cat sh -e $src + + cd TeamSpeak3-Client-linux_amd64 + + runHook postUnpack + ''; + + patchPhase = '' + runHook prePatch + + # Delete unecessary libraries - these are provided by nixos. + find . -\( -name '*.so' -or -name '*.so.*' -\) -print0 | xargs -0 rm # I hate find. + + rm QtWebEngineProcess + rm qt.conf + + mv ts3client_linux_amd64 ts3client + + # Our libquazip's so name has this suffix and there is no symlink + patchelf --replace-needed libquazip.so libquazip1-qt5.so ts3client error_report + + runHook postPatch + ''; + + dontConfigure = true; + dontBuild = true; + + desktopItems = [ + (makeDesktopItem { + name = "teamspeak"; + exec = "ts3client"; + icon = "teamspeak"; + comment = "The TeamSpeak voice communication tool"; + desktopName = "TeamSpeak"; + genericName = "TeamSpeak"; + categories = [ "Network" ]; + }) + ]; + + qtWrapperArgs = [ + # wayland is currently broken, remove when TS3 fixes that + "--set QT_QPA_PLATFORM xcb" + ]; + + installPhase = '' + runHook preInstall + + mkdir -p $out/opt/teamspeak + mv * $out/opt/teamspeak/ + + # Grab the desktop icon from the plugin sdk + install ${pluginsdk}/doc/_static/logo.png -D $out/share/icons/hicolor/64x64/apps/teamspeak.png + + mkdir -p $out/bin/ + ln -s $out/opt/teamspeak/ts3client $out/bin/ts3client + + runHook postInstall + ''; + + meta = { + description = "TeamSpeak voice communication tool"; + homepage = "https://teamspeak.com/"; + sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; + license = { + # See distribution-permit.txt for a confirmation that nixpkgs is allowed to distribute TeamSpeak. + fullName = "Teamspeak client license"; + url = "https://www.teamspeak.com/en/privacy-and-terms/"; + free = false; + }; + maintainers = with lib.maintainers; [ + lhvwb + lukegb + atemu + ]; + mainProgram = "ts3client"; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/by-name/yu/yubioath-flutter/package.nix b/pkgs/by-name/yu/yubioath-flutter/package.nix index 23fa019d75dc..a13c6e623da6 100644 --- a/pkgs/by-name/yu/yubioath-flutter/package.nix +++ b/pkgs/by-name/yu/yubioath-flutter/package.nix @@ -13,13 +13,13 @@ flutter324.buildFlutterApplication rec { pname = "yubioath-flutter"; - version = "7.1.0"; + version = "7.1.1"; src = fetchFromGitHub { owner = "Yubico"; repo = "yubioath-flutter"; rev = version; - hash = "sha256-sAs/tglLt1igovtfs07+7G5/xeMcQgfR9G4b7VzyDVY="; + hash = "sha256-MpY6yJvGBaFiEwuGEme2Uvyi5INCYhZJHyaRpC9pCuk="; }; passthru.helper = python3.pkgs.callPackage ./helper.nix { inherit src version meta; }; diff --git a/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix b/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix index de8c8eb3c5e8..7c410237e1da 100644 --- a/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix +++ b/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix @@ -1,7 +1,6 @@ { lib , stdenv , fetchFromGitHub -, fetchpatch , nix-update-script , meson , ninja @@ -20,24 +19,15 @@ stdenv.mkDerivation rec { pname = "elementary-onboarding"; - version = "8.0.1"; + version = "8.0.2"; src = fetchFromGitHub { owner = "elementary"; repo = "onboarding"; rev = version; - sha256 = "sha256-p9N8Pblt15+BHcvlLjdPRyquM8w7ipieTcmUHpcMd6k="; + sha256 = "sha256-tLqLGkcryXGe1wsupgwtnNtFj5aXXUPrwkpxUQmyJFM="; }; - patches = [ - # WelcomeView: Fix missing handler when a row activated - # https://github.com/elementary/onboarding/pull/243 - (fetchpatch { - url = "https://github.com/elementary/onboarding/commit/391fab7867885578015abbebbe678e8d4f0f331d.patch"; - hash = "sha256-NnnvPQV2GBe8A6TiW5lq3J8hb4ruCSmri5UZ2W0fBIA="; - }) - ]; - nativeBuildInputs = [ meson ninja diff --git a/pkgs/development/compilers/openjdk/generic.nix b/pkgs/development/compilers/openjdk/generic.nix index 7126caa02e13..ee3b6b5991a1 100644 --- a/pkgs/development/compilers/openjdk/generic.nix +++ b/pkgs/development/compilers/openjdk/generic.nix @@ -623,10 +623,13 @@ stdenv.mkDerivation (finalAttrs: { description = "Open-source Java Development Kit"; homepage = "https://openjdk.java.net/"; license = lib.licenses.gpl2Only; - maintainers = with lib.maintainers; [ - edwtjo - infinidoge - ]; + maintainers = + with lib.maintainers; + [ + edwtjo + infinidoge + ] + ++ lib.teams.java.members; mainProgram = "java"; platforms = [ diff --git a/pkgs/development/compilers/temurin-bin/jdk-darwin-base.nix b/pkgs/development/compilers/temurin-bin/jdk-darwin-base.nix index 886c92ba2e38..836b282b0e49 100644 --- a/pkgs/development/compilers/temurin-bin/jdk-darwin-base.nix +++ b/pkgs/development/compilers/temurin-bin/jdk-darwin-base.nix @@ -69,7 +69,7 @@ let sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ]; description = "${brand-name}, prebuilt OpenJDK binary"; platforms = builtins.map (arch: arch + "-darwin") providedCpuTypes; # some inherit jre.meta.platforms - maintainers = with maintainers; [ taku0 ]; + maintainers = with maintainers; [ taku0 ] ++ lib.teams.java.members; inherit knownVulnerabilities; mainProgram = "java"; }; diff --git a/pkgs/development/compilers/temurin-bin/jdk-linux-base.nix b/pkgs/development/compilers/temurin-bin/jdk-linux-base.nix index 9d9033506aac..b166d3c0738b 100644 --- a/pkgs/development/compilers/temurin-bin/jdk-linux-base.nix +++ b/pkgs/development/compilers/temurin-bin/jdk-linux-base.nix @@ -127,7 +127,7 @@ let sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ]; description = "${brand-name}, prebuilt OpenJDK binary"; platforms = builtins.map (arch: arch + "-linux") providedCpuTypes; # some inherit jre.meta.platforms - maintainers = with maintainers; [ taku0 ]; + maintainers = with maintainers; [ taku0 ] ++ lib.teams.java.members; inherit knownVulnerabilities; mainProgram = "java"; }; diff --git a/pkgs/development/compilers/zulu/common.nix b/pkgs/development/compilers/zulu/common.nix index f8127b2b7450..6b20c71c5438 100644 --- a/pkgs/development/compilers/zulu/common.nix +++ b/pkgs/development/compilers/zulu/common.nix @@ -164,7 +164,7 @@ let homepage = "https://www.azul.com/products/zulu/"; license = lib.licenses.gpl2Only; mainProgram = "java"; - maintainers = [ ]; + maintainers = [ ] ++ lib.teams.java.members; platforms = builtins.attrNames dists; sourceProvenance = with lib.sourceTypes; [ binaryBytecode binaryNativeCode ]; }; diff --git a/pkgs/development/libraries/quarto/default.nix b/pkgs/development/libraries/quarto/default.nix index dd5375ef8d56..acdb76cc52b2 100644 --- a/pkgs/development/libraries/quarto/default.nix +++ b/pkgs/development/libraries/quarto/default.nix @@ -13,28 +13,27 @@ , runCommand , python3 , quarto -, extraPythonPackages ? ps: with ps; [] +, extraPythonPackages ? ps: [] , sysctl }: stdenv.mkDerivation (final: { pname = "quarto"; - version = "1.6.30"; + version = "1.6.33"; + src = fetchurl { url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${final.version}/quarto-${final.version}-linux-amd64.tar.gz"; - sha256 = "sha256-2gzpQbaFLUox4EMo8RO3bwVjhsm239w5hv4Z0UuS1Qs="; + hash = "sha256-0qCQswtBC8R1Q7pHLhJtqCncllqgXo1t9pG97VwCtAI="; }; + patches = [ + ./deno2.patch + ]; + nativeBuildInputs = [ makeWrapper ]; - postPatch = '' - # Compat for Deno >=1.26 - substituteInPlace bin/quarto.js \ - --replace-fail ']))?.trim();' ']))?.trim().split(" ")[0];' - ''; - dontStrip = true; preFixup = '' diff --git a/pkgs/development/libraries/quarto/deno2.patch b/pkgs/development/libraries/quarto/deno2.patch new file mode 100644 index 000000000000..1ece9ae95450 --- /dev/null +++ b/pkgs/development/libraries/quarto/deno2.patch @@ -0,0 +1,149 @@ +diff --git a/bin/quarto.js b/bin/quarto.js +index f854281..0b78f6e 100644 +--- a/bin/quarto.js ++++ b/bin/quarto.js +@@ -28511,7 +28511,7 @@ function jupyterHubServicePrefix() { + return Deno.env.get("JUPYTERHUB_SERVICE_PREFIX"); + } + function isInteractiveTerminal() { +- return Deno.isatty(Deno.stderr.rid); ++ return Deno.stderr.isTerminal(); + } + function isInteractiveSession() { + return isRStudio() || isInteractiveTerminal() || isVSCodeOutputChannel(); +@@ -83562,7 +83562,7 @@ function writeFileToStdout(file) { + }); + const contents = readAllSync(df); + writeAllSync1(Deno.stdout, contents); +- Deno.close(df.rid); ++ df.close(); + } + function clearLine() { + info(ansi.eraseLine.cursorLeft(), { +@@ -96154,6 +96154,7 @@ class ParserBase { + class SAXParser extends ParserBase { + _listeners = {}; + _controller; ++ _encoding; + fireListeners(event) { + const [name, ...args] = event; + const list = this._listeners[name] || []; +@@ -96189,33 +96190,23 @@ class SAXParser extends ParserBase { + write(chunk, controller) { + try { + this._controller = controller; +- this.chunk = new TextDecoder().decode(chunk); ++ this.chunk = new TextDecoder(this._encoding).decode(chunk); + this.run(); + } finally{ + this._controller = undefined; + } + } +- getStream() { +- return new WritableStream(this); +- } +- getWriter() { +- const streamWriter = this.getStream().getWriter(); +- return { +- async write (p) { +- await streamWriter.ready; +- await streamWriter.write(p); +- return p.length; +- } +- }; +- } +- async parse(source) { ++ async parse(source, encoding) { ++ this._encoding = encoding; + if (typeof source === 'string') { + this.chunk = source; + this.run(); + } else if (source instanceof Uint8Array) { + this.write(source); + } else { +- await Deno.copy(source, this.getWriter()); ++ await source.pipeThrough(new TextDecoderStream(this._encoding)).pipeTo(new WritableStream({ ++ write: (str)=>this.parse(str, encoding) ++ })); + } + } + on(event, listener) { +@@ -96326,8 +96317,7 @@ async function readSitemap(sitemapPath) { + } + }); + const reader = await Deno.open(sitemapPath); +- await parser.parse(reader); +- reader.close(); ++ await parser.parse(reader.readable); + return urlset; + } + function writeSitemap(sitemapPath, urlset, draftMode) { +@@ -98407,21 +98397,21 @@ async function generateFeed(feed, feedItems, path) { + feed, + escape: __VIRTUAL_FILE172 + }); +- await Deno.write(feedFile.rid, textEncoder.encode(preamble)); ++ await feedFile.write(textEncoder.encode(preamble)); + for (const feedItem of feedItems){ + const item = renderEjs(resourcePath("projects/website/listing/feed/item.ejs.md"), { + item: feedItem, + escape: __VIRTUAL_FILE172 + }); +- await Deno.write(feedFile.rid, textEncoder.encode(item)); ++ await feedFile.write(textEncoder.encode(item)); + } + const postamble = renderEjs(resourcePath("projects/website/listing/feed/postamble.ejs.md"), { + feed, + escape: __VIRTUAL_FILE172 + }); +- await Deno.write(feedFile.rid, textEncoder.encode(postamble)); ++ await feedFile.write(textEncoder.encode(postamble)); + } finally{ +- Deno.close(feedFile.rid); ++ feedFile.close(); + } + } + function prepareItems(items, options) { +@@ -112277,7 +112267,7 @@ async function renderForPublish(render, providerName, type, title, siteUrl) { + } + function stageDocumentPublish(title, publishFiles) { + const publishDir = globalTempContext().createDir(); +- const stagedFiles = window.structuredClone(publishFiles); ++ const stagedFiles = globalThis.structuredClone(publishFiles); + stagedFiles.baseDir = publishDir; + for (const file of publishFiles.files){ + const src = join2(publishFiles.baseDir, file); +@@ -126377,33 +126367,6 @@ function reportPeformanceMetrics() { + console.log("Performance metrics"); + console.log("Quarto:"); + console.log(JSON.stringify(quartoPerformanceMetrics(), null, 2)); +- console.log(); +- console.log("Deno:"); +- const denoMetrics = JSON.parse(JSON.stringify(Deno.metrics())); +- denoMetrics.ops = Object.fromEntries(Object.entries(denoMetrics.ops).map(([key, opMetrics])=>{ +- for (const key of Object.keys(opMetrics)){ +- if (opMetrics[key] === 0) { +- delete opMetrics[key]; +- } +- } +- return [ +- key, +- opMetrics +- ]; +- }).filter(([_key, opMetrics])=>Object.keys(opMetrics).length > 0).map(([key, opMetrics])=>{ +- if (opMetrics.opsDispatched === opMetrics.opsDispatchedSync && opMetrics.opsDispatched === opMetrics.opsCompleted && opMetrics.opsDispatched === opMetrics.opsCompletedSync || opMetrics.opsDispatched === opMetrics.opsDispatchedAsync && opMetrics.opsDispatched === opMetrics.opsCompleted && opMetrics.opsDispatched === opMetrics.opsCompletedAsync) { +- return [ +- key, +- opMetrics.opsDispatched +- ]; +- } else { +- return [ +- key, +- opMetrics +- ]; +- } +- })); +- console.log(JSON.stringify(denoMetrics, null, 2)); + } + async function mainRunner(runner) { + try { diff --git a/pkgs/development/python-modules/debugpy/default.nix b/pkgs/development/python-modules/debugpy/default.nix index cce50d3b7e51..d9b3dfce72a5 100644 --- a/pkgs/development/python-modules/debugpy/default.nix +++ b/pkgs/development/python-modules/debugpy/default.nix @@ -22,7 +22,7 @@ buildPythonPackage rec { pname = "debugpy"; - version = "1.8.7"; + version = "1.8.8"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -31,7 +31,7 @@ buildPythonPackage rec { owner = "microsoft"; repo = "debugpy"; rev = "refs/tags/v${version}"; - hash = "sha256-JFVhEAfdSfl2ACfXLMdoO/1otdif9bHialdQXucTM5A="; + hash = "sha256-zkNV+tFRAxTdl+lCPD4XYI1Oz0dVyX4GGuNdfzy2sJU="; }; patches = @@ -73,13 +73,12 @@ buildPythonPackage rec { }) ]; - # Remove pre-compiled "attach" libraries and recompile for host platform - # Compile flags taken from linux_and_mac/compile_linux.sh & linux_and_mac/compile_mac.sh + # Compile attach library for host platform + # Derived from linux_and_mac/compile_linux.sh & linux_and_mac/compile_mac.sh preBuild = '' ( set -x cd src/debugpy/_vendored/pydevd/pydevd_attach_to_process - rm *.so *.dylib *.dll *.exe *.pdb $CXX linux_and_mac/attach.cpp -Ilinux_and_mac -std=c++11 -fPIC -nostartfiles ${ { "x86_64-linux" = "-shared -o attach_linux_amd64.so"; diff --git a/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix b/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix index caec0be06cbf..469905525324 100644 --- a/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix +++ b/pkgs/development/python-modules/home-assistant-chip-wheels/default.nix @@ -229,7 +229,7 @@ stdenv.mkDerivation rec { map (dep: { name = dep.name; value = dep; - }) list + }) (lib.filter (x: x != null) list) ); saturateDependencies = deps: diff --git a/pkgs/development/python-modules/msprime/default.nix b/pkgs/development/python-modules/msprime/default.nix index 83e1314a5501..c0cd877ccaaa 100644 --- a/pkgs/development/python-modules/msprime/default.nix +++ b/pkgs/development/python-modules/msprime/default.nix @@ -28,6 +28,12 @@ buildPythonPackage rec { hash = "sha256-2K55gHYWf2Mrj9fszVCJ+qqEyQNMppQi+IZCX5SlsBs="; }; + postPatch = '' + # build-time constriant, used to ensure forward and backward compat + substituteInPlace pyproject.toml \ + --replace-fail "numpy>=2" "numpy" + ''; + nativeBuildInputs = [ gsl oldest-supported-numpy diff --git a/pkgs/development/python-modules/phonemizer/default.nix b/pkgs/development/python-modules/phonemizer/default.nix index 7a0deabae3c0..561088b606d8 100644 --- a/pkgs/development/python-modules/phonemizer/default.nix +++ b/pkgs/development/python-modules/phonemizer/default.nix @@ -10,22 +10,22 @@ dlinfo, typing-extensions, espeak-ng, + setuptools, + pytest, }: buildPythonPackage rec { pname = "phonemizer"; version = "3.3.0"; - format = "setuptools"; + pyproject = true; + + build-system = [ setuptools ]; src = fetchPypi { inherit pname version; hash = "sha256-Xgw4Ei7/4LMxok5nSv8laHTs4WnXCpzxEgM3tW+OPQw="; }; - postPatch = '' - sed -i '/pytest-runner/d' setup.py - ''; - patches = [ (substituteAll { src = ./backend-paths.patch; @@ -46,12 +46,12 @@ buildPythonPackage rec { # so let's disable related tests. doCheck = false; - meta = with lib; { + meta = { homepage = "https://github.com/bootphon/phonemizer"; changelog = "https://github.com/bootphon/phonemizer/blob/v${version}/CHANGELOG.md"; description = "Simple text to phones converter for multiple languages"; mainProgram = "phonemize"; - license = licenses.gpl3Plus; - maintainers = [ ]; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ bot-wxt1221 ]; }; } diff --git a/pkgs/development/python-modules/phonopy/default.nix b/pkgs/development/python-modules/phonopy/default.nix index 3e7629a31335..a00929e3d16c 100644 --- a/pkgs/development/python-modules/phonopy/default.nix +++ b/pkgs/development/python-modules/phonopy/default.nix @@ -11,21 +11,35 @@ pytestCheckHook, pythonOlder, setuptools, + scikit-build-core, + cmake, + setuptools-scm, + ninja, + pkg-config, + nanobind, }: buildPythonPackage rec { pname = "phonopy"; - version = "2.28.0"; + version = "2.29.1"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-3BxFOT/nXuK++epTghrQxDm19JTMJm33D4uSQ/KS+aE="; + hash = "sha256-MabBtEOyM82R0NbdVaY+2f9GT8rT44xjOi/o38GSRp8="; }; - nativeBuildInputs = [ setuptools ]; + nativeBuildInputs = [ + setuptools + scikit-build-core + nanobind + setuptools-scm + ninja + cmake + ]; + dontUseCmakeConfigure = true; propagatedBuildInputs = [ h5py diff --git a/pkgs/development/python-modules/pytest-flake8/default.nix b/pkgs/development/python-modules/pytest-flake8/default.nix index f45abf0941fa..16d75ace33c2 100644 --- a/pkgs/development/python-modules/pytest-flake8/default.nix +++ b/pkgs/development/python-modules/pytest-flake8/default.nix @@ -10,16 +10,16 @@ buildPythonPackage rec { pname = "pytest-flake8"; - version = "1.2.2"; + version = "1.3.0"; pyproject = true; - disabled = pythonOlder "3.8"; + disabled = pythonOlder "3.9"; src = fetchFromGitHub { owner = "coherent-oss"; repo = "pytest-flake8"; rev = "refs/tags/v${version}"; - hash = "sha256-FsJysBj5S5HHGay+YZKMgb9RdUN637J+FfNl+m9l6ik="; + hash = "sha256-uc5DOqqdoLfhzI2ogDOqhbJOHzdu+uqSOojIH+S1LZI="; }; build-system = [ setuptools-scm ]; @@ -29,8 +29,6 @@ buildPythonPackage rec { nativeCheckInputs = [ pytestCheckHook ]; meta = { - # https://github.com/coherent-oss/pytest-flake8/issues/3 - broken = lib.versionAtLeast flake8.version "6"; changelog = "https://github.com/coherent-oss/pytest-flake8/blob/${src.rev}/NEWS.rst"; description = "py.test plugin for efficiently checking PEP8 compliance"; homepage = "https://github.com/coherent-oss/pytest-flake8"; diff --git a/pkgs/development/python-modules/subliminal/default.nix b/pkgs/development/python-modules/subliminal/default.nix index a810ecb48699..bf06b126c668 100644 --- a/pkgs/development/python-modules/subliminal/default.nix +++ b/pkgs/development/python-modules/subliminal/default.nix @@ -84,10 +84,5 @@ buildPythonPackage rec { changelog = "https://github.com/Diaoul/subliminal/blob/${version}/HISTORY.rst"; license = lib.licenses.mit; maintainers = with lib.maintainers; [ doronbehar ]; - # Too many tests fail ever since a certain python-updates merge, see: - # https://github.com/Diaoul/subliminal/issues/1062 . Disabling tests - # alltogether may produce a not completly failing executable, but that - # executable apparently isn't able to download subtitles at all. - broken = true; }; } diff --git a/pkgs/development/python-modules/tskit/default.nix b/pkgs/development/python-modules/tskit/default.nix index 775284b8990b..e91fba90dc77 100644 --- a/pkgs/development/python-modules/tskit/default.nix +++ b/pkgs/development/python-modules/tskit/default.nix @@ -21,6 +21,12 @@ buildPythonPackage rec { hash = "sha256-Wq7ar96w5hdAyKMMvK4zjYln74RmX1l/VhvS++CN+Xk="; }; + postPatch = '' + # build-time constriant, used to ensure forward and backward compat + substituteInPlace pyproject.toml \ + --replace-fail "numpy>=2.0" "numpy" + ''; + build-system = [ setuptools ]; dependencies = [ diff --git a/pkgs/development/python-modules/us/default.nix b/pkgs/development/python-modules/us/default.nix index d6d2b53731c7..aca1f00c6898 100644 --- a/pkgs/development/python-modules/us/default.nix +++ b/pkgs/development/python-modules/us/default.nix @@ -6,12 +6,15 @@ pytestCheckHook, pythonOlder, pytz, + setuptools, }: buildPythonPackage rec { pname = "us"; version = "3.2.0"; - format = "setuptools"; + pyproject = true; + + build-system = [ setuptools ]; disabled = pythonOlder "3.6"; @@ -20,13 +23,9 @@ buildPythonPackage rec { hash = "sha256-yyI+hTk9zFFx6tDdISutxH+WZ7I3AP6j5+pfMQ1UUzg="; }; - postPatch = '' - # Upstream spins jellyfish - substituteInPlace setup.py \ - --replace "jellyfish==" "jellyfish>=" - ''; - - propagatedBuildInputs = [ jellyfish ]; + propagatedBuildInputs = [ + jellyfish + ]; nativeCheckInputs = [ pytestCheckHook @@ -35,7 +34,7 @@ buildPythonPackage rec { pythonImportsCheck = [ "us" ]; - meta = with lib; { + meta = { description = "Package for easily working with US and state metadata"; mainProgram = "states"; longDescription = '' @@ -45,7 +44,7 @@ buildPythonPackage rec { census, congressional districts, counties, and census tracts. ''; homepage = "https://github.com/unitedstates/python-us/"; - license = licenses.bsd3; - maintainers = [ ]; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ bot-wxt1221 ]; }; } diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix index e1087a476c5c..5f34894e8dc3 100644 --- a/pkgs/development/tools/build-managers/gradle/default.nix +++ b/pkgs/development/tools/build-managers/gradle/default.nix @@ -174,7 +174,7 @@ rec { binaryNativeCode ]; license = licenses.asl20; - maintainers = with maintainers; [ lorenzleutgeb liff ]; + maintainers = with maintainers; [ lorenzleutgeb liff ] ++ lib.teams.java.members; mainProgram = "gradle"; } // meta; }); diff --git a/pkgs/os-specific/linux/kernel/hardened/patches.json b/pkgs/os-specific/linux/kernel/hardened/patches.json index 52cb45ad5319..4e0e3feb67df 100644 --- a/pkgs/os-specific/linux/kernel/hardened/patches.json +++ b/pkgs/os-specific/linux/kernel/hardened/patches.json @@ -2,61 +2,61 @@ "5.10": { "patch": { "extra": "-hardened1", - "name": "linux-hardened-v5.10.228-hardened1.patch", - "sha256": "1fzpiv9gn2krbx2v61j1dzzsdm0qlgps4rjdkzmi8a8fv9g1iq0p", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.10.228-hardened1/linux-hardened-v5.10.228-hardened1.patch" + "name": "linux-hardened-v5.10.229-hardened1.patch", + "sha256": "0bagy0x1kwm05x9mlgisjrlybk9yl91maxw6fai2si5m4xb3xv7n", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.10.229-hardened1/linux-hardened-v5.10.229-hardened1.patch" }, - "sha256": "0wkvn49sdy9ykyz6cqdqd9yplqfhc6b255w6wc17ky182mzqvk3n", - "version": "5.10.228" + "sha256": "1q6di05rk4bsy91r03zw6vz14zzcpvv25dv7gw0yz1gzpgkbb9h8", + "version": "5.10.229" }, "5.15": { "patch": { "extra": "-hardened1", - "name": "linux-hardened-v5.15.170-hardened1.patch", - "sha256": "16b3dzfgx737hsr16n9j3v4lr1qrl5vgsjmmcri0szbcd5sm0620", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.15.170-hardened1/linux-hardened-v5.15.170-hardened1.patch" + "name": "linux-hardened-v5.15.171-hardened1.patch", + "sha256": "08fbvra05rj0xcj9a8hd6mhv4lis2mhp57v7x4mw7rxxz2vim4bz", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.15.171-hardened1/linux-hardened-v5.15.171-hardened1.patch" }, - "sha256": "1ag7fvixhdcyxv6rqfsvq2wh02g64r4rx8izvfb33nfnld2nangx", - "version": "5.15.170" + "sha256": "0fra5zwcixgl6fg9hgdzlfcqng6pg09h2j7xqhi4qg0jv1jf0lr9", + "version": "5.15.171" }, "5.4": { "patch": { "extra": "-hardened1", - "name": "linux-hardened-v5.4.284-hardened1.patch", - "sha256": "1skqaq90bigrxg0w075nssqbdq868ii62r8asx0m6wcvd5cl50af", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.4.284-hardened1/linux-hardened-v5.4.284-hardened1.patch" + "name": "linux-hardened-v5.4.285-hardened1.patch", + "sha256": "1zm846mzvz1x88iskfw8513jkhlphxkd4v2qs86maxlgiz5zcxqp", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.4.285-hardened1/linux-hardened-v5.4.285-hardened1.patch" }, - "sha256": "0axkwfhvq3w2072xjqww476qa3rjglxyqmf72mlp9b5ymswil8kp", - "version": "5.4.284" + "sha256": "1722sc365ajxmqyr4r49yp73mzdckay3rx5c2gx29xzny9zc6cmy", + "version": "5.4.285" }, "6.1": { "patch": { "extra": "-hardened1", - "name": "linux-hardened-v6.1.115-hardened1.patch", - "sha256": "1vly83nqpridysywj8aby6pmzjgz7jlk6ni957s9v05gfkvf906l", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.1.115-hardened1/linux-hardened-v6.1.115-hardened1.patch" + "name": "linux-hardened-v6.1.116-hardened1.patch", + "sha256": "0q597vszhgj6bgq56j11nq01mjjxl0ws8kqcr839fzkcgn1h6xv9", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.1.116-hardened1/linux-hardened-v6.1.116-hardened1.patch" }, - "sha256": "0vxs6zj4p0ihcp11h3svqy3wa1yph0f1vzc8dlvqh60zgs1bmn0g", - "version": "6.1.115" + "sha256": "109vhc1hcfx6sacw4553xmwbj1gqx3zqjq5zg11z7a72dqrnisqp", + "version": "6.1.116" }, "6.11": { "patch": { "extra": "-hardened1", - "name": "linux-hardened-v6.11.6-hardened1.patch", - "sha256": "0g5drxsknvhcd80s1mwmbbc9d3v3qpj4c7rha95ygzwxidvagr9f", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.11.6-hardened1/linux-hardened-v6.11.6-hardened1.patch" + "name": "linux-hardened-v6.11.7-hardened1.patch", + "sha256": "1rfvlhgl78ixsb75aah9173h8jp37c8i0hs7b4484vljmqv0khcy", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.11.7-hardened1/linux-hardened-v6.11.7-hardened1.patch" }, - "sha256": "1kiky6viwrgm47slpv234lfq1wrwj29p5rx168gix3q0jw0zcm69", - "version": "6.11.6" + "sha256": "1cpbycx79nl517rz573mja52bgzm249mhqzp424r5mqp91jfrx8b", + "version": "6.11.7" }, "6.6": { "patch": { "extra": "-hardened1", - "name": "linux-hardened-v6.6.59-hardened1.patch", - "sha256": "1vdyryd0m9rr0z2pznq6jyxbdhy4w4x85c37gfl4sbbcs9549gnw", - "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.6.59-hardened1/linux-hardened-v6.6.59-hardened1.patch" + "name": "linux-hardened-v6.6.60-hardened1.patch", + "sha256": "090bs6nvc9by5higmxfwmzlqjrhbhqs21gsmpxvm18p9l3s08dq3", + "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.6.60-hardened1/linux-hardened-v6.6.60-hardened1.patch" }, - "sha256": "0vd76ccd4li4wsg04gc4nai9f4y1nknz967qby0i53y0v046hq93", - "version": "6.6.59" + "sha256": "1vsjb7ifmf6ic6zv16fbrxjvffqc1mkndza76hjr9aw2a0ny7yaj", + "version": "6.6.60" } } diff --git a/pkgs/tools/games/scarab/default.nix b/pkgs/tools/games/scarab/default.nix index 617f8f0e87b2..844d38ed0063 100644 --- a/pkgs/tools/games/scarab/default.nix +++ b/pkgs/tools/games/scarab/default.nix @@ -1,13 +1,10 @@ { lib, + bc, buildDotnetModule, fetchFromGitHub, - glibc, - zlib, - gtk3, copyDesktopItems, icoutils, - wrapGAppsHook3, makeDesktopItem, }: @@ -34,19 +31,12 @@ buildDotnetModule rec { ''; runtimeDeps = [ - glibc - zlib - gtk3 - ]; - - buildInputs = [ - gtk3 + bc ]; nativeBuildInputs = [ copyDesktopItems icoutils - wrapGAppsHook3 ]; doCheck = true; @@ -60,6 +50,8 @@ buildDotnetModule rec { size=''${sizes[$i]}x''${sizes[$i]} install -D omegamaggotprime_''$((i+1))_''${size}x32.png $out/share/icons/hicolor/$size/apps/scarab.png done + + wrapProgram "$out/bin/Scarab" --run '. ${./scaling-settings.bash}' ''; desktopItems = [ diff --git a/pkgs/tools/games/scarab/scaling-settings.bash b/pkgs/tools/games/scarab/scaling-settings.bash new file mode 100644 index 000000000000..f4bfdfd6389f --- /dev/null +++ b/pkgs/tools/games/scarab/scaling-settings.bash @@ -0,0 +1,24 @@ +# Keep existing value if it is already non-empty +if [[ -z "${AVALONIA_GLOBAL_SCALE_FACTOR-}" ]] && command -v gsettings >/dev/null; then + echo 'Attempting to get GNOME desktop interface scaling factor' >&2 + AVALONIA_GLOBAL_SCALE_FACTOR="$(gsettings get org.gnome.desktop.interface scaling-factor)" + AVALONIA_GLOBAL_SCALE_FACTOR="${AVALONIA_GLOBAL_SCALE_FACTOR##* }" +fi + +if [[ "${AVALONIA_GLOBAL_SCALE_FACTOR-}" == "0" ]]; then + echo 'Unset invalid scaling value' >&2 + unset AVALONIA_GLOBAL_SCALE_FACTOR +fi + +if [[ -z "${AVALONIA_GLOBAL_SCALE_FACTOR-}" ]] && command -v xrdb >/dev/null; then + echo 'Attempting to get scaling factor from X FreeType DPI setting' >&2 + dpi="$(xrdb -get Xft.dpi)" + if [[ -n "${dpi}" ]]; then + AVALONIA_GLOBAL_SCALE_FACTOR=$(echo "scale=2; ${dpi}/96" | bc) + fi +fi + +if [[ -n "${AVALONIA_GLOBAL_SCALE_FACTOR-}" ]]; then + echo "Applying scale factor: ${AVALONIA_GLOBAL_SCALE_FACTOR}" >&2 + export AVALONIA_GLOBAL_SCALE_FACTOR +fi diff --git a/pkgs/tools/typesetting/tex/texlive/bin.nix b/pkgs/tools/typesetting/tex/texlive/bin.nix index d712b48b8cea..c65aceae112b 100644 --- a/pkgs/tools/typesetting/tex/texlive/bin.nix +++ b/pkgs/tools/typesetting/tex/texlive/bin.nix @@ -264,6 +264,11 @@ core-big = stdenv.mkDerivation { utils/{tpic2pdftex,vlna,xindy,xml2pmx,xpdfopen} mkdir WorkDir cd WorkDir + '' + # force XeTeX to use fontconfig instead of Core Text, so that fonts can be made available via FONTCONFIG_FILE, + # by tricking configure into thinking that the relevant test result is already in the config cache + + lib.optionalString stdenv.isDarwin '' + export kpse_cv_have_ApplicationServices=no ''; configureFlags = common.configureFlags diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 31052ecaf4f1..d2a4ae44b08c 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1184,6 +1184,7 @@ mapAliases { tclx = tclPackages.tclx; # Added 2024-10-02 tdesktop = telegram-desktop; # Added 2023-04-07 tdom = tclPackages.tdom; # Added 2024-10-02 + teamspeak_client = teamspeak3; # Added 2024-11-07 teck-programmer = throw "teck-programmer was removed because it was broken and unmaintained"; # added 2024-08-23 teleport_13 = throw "teleport 13 has been removed as it is EOL. Please upgrade to Teleport 14 or later"; # Added 2024-05-26 teleport_14 = throw "teleport 14 has been removed as it is EOL. Please upgrade to Teleport 15 or later"; # Added 2024-10-18 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 50b6b5b3b5f1..6c1543804863 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16090,7 +16090,6 @@ with pkgs; tamgamp.lv2 = callPackage ../applications/audio/tamgamp.lv2 { }; - teamspeak_client = libsForQt5.callPackage ../applications/networking/instant-messengers/teamspeak/client.nix { }; teamspeak5_client = callPackage ../applications/networking/instant-messengers/teamspeak/client5.nix { }; teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { };