Merge master into staging-next

This commit is contained in:
github-actions[bot] 2024-11-11 00:14:46 +00:00 committed by GitHub
commit 81f60ef90d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
47 changed files with 1007 additions and 448 deletions

View File

@ -206,6 +206,12 @@ pkgs/data/misc/cacert/ @ajs124 @lukegb @mweinelt
pkgs/development/libraries/nss/ @ajs124 @lukegb @mweinelt pkgs/development/libraries/nss/ @ajs124 @lukegb @mweinelt
pkgs/development/python-modules/buildcatrust/ @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 # Jetbrains
/pkgs/applications/editors/jetbrains @edwtjo /pkgs/applications/editors/jetbrains @edwtjo

View File

@ -175,3 +175,54 @@ for further information.
# nixpkgs-merge-bot # 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. 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.

View File

@ -18613,6 +18613,16 @@
{ fingerprint = "C0A7 A9BB 115B C857 4D75 EA99 BBB7 A680 1DF1 E03F"; } { 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 = { rixed = {
email = "rixed-github@happyleptic.org"; email = "rixed-github@happyleptic.org";
github = "rixed"; github = "rixed";

View File

@ -497,6 +497,19 @@ with lib.maintainers;
shortName = "Input-Output Global employees"; 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 = { jitsi = {
members = [ members = [
cleeyv cleeyv

View File

@ -183,7 +183,6 @@ let
certToConfig = cert: data: let certToConfig = cert: data: let
acmeServer = data.server; acmeServer = data.server;
useDns = data.dnsProvider != null; useDns = data.dnsProvider != null;
useDnsOrS3 = useDns || data.s3Bucket != null;
destPath = "/var/lib/acme/${cert}"; destPath = "/var/lib/acme/${cert}";
selfsignedDeps = lib.optionals (cfg.preliminarySelfsigned) [ "acme-selfsigned-${cert}.service" ]; selfsignedDeps = lib.optionals (cfg.preliminarySelfsigned) [ "acme-selfsigned-${cert}.service" ];
@ -367,13 +366,11 @@ let
"/var/lib/acme/.lego/${cert}/${certDir}:/tmp/certificates" "/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 Environment = lib.mapAttrsToList (k: v: ''"${k}=%d/${k}"'') data.credentialFiles;
(lib.mapAttrsToList (k: v: ''"${k}=%d/${k}"'') data.credentialFiles);
LoadCredential = lib.mkIf useDnsOrS3 LoadCredential = lib.mapAttrsToList (k: v: "${k}:${v}") data.credentialFiles;
(lib.mapAttrsToList (k: v: "${k}:${v}") data.credentialFiles);
# Run as root (Prefixed with +) # Run as root (Prefixed with +)
ExecStartPost = "+" + (pkgs.writeShellScript "acme-postrun" '' ExecStartPost = "+" + (pkgs.writeShellScript "acme-postrun" ''

View File

@ -526,6 +526,7 @@ in
ExecStartPre = "-rm /var/cache/frigate/*.mp4"; ExecStartPre = "-rm /var/cache/frigate/*.mp4";
ExecStart = "${cfg.package.python.interpreter} -m frigate"; ExecStart = "${cfg.package.python.interpreter} -m frigate";
Restart = "on-failure"; Restart = "on-failure";
SyslogIdentifier = "frigate";
User = "frigate"; User = "frigate";
Group = "frigate"; Group = "frigate";

View File

@ -48,7 +48,7 @@ in
] ( ] (
opt: options.services.nextcloud.config.${opt} // { opt: options.services.nextcloud.config.${opt} // {
default = config.services.nextcloud.config.${opt}; default = config.services.nextcloud.config.${opt};
defaultText = "config.services.nextcloud.config.${opt}"; defaultText = lib.literalExpression "config.services.nextcloud.config.${opt}";
} }
) )
); );

View File

@ -5,10 +5,11 @@
# #
# All interfaces are in OSPF Area 0. # All interfaces are in OSPF Area 0.
import ./make-test-python.nix ({ pkgs, ... }: import ./make-test-python.nix (
{ pkgs, ... }:
let 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 = '' ospfConf1 = ''
router ospf router ospf
@ -25,87 +26,94 @@ import ./make-test-python.nix ({ pkgs, ... }:
''; '';
in in
{ {
name = "frr"; name = "frr";
meta = with pkgs.lib.maintainers; { meta = with pkgs.lib.maintainers; {
maintainers = [ ]; maintainers = [ ];
}; };
nodes = { nodes = {
client = 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 =
{ nodes, ... }: { 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 router1 =
for machine in client, router1, router2, server: { ... }:
machine.wait_for_unit("network.target") {
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"): specialisation.ospf.configuration = {
for gw in client, router1, router2, server: services.frr.config = ospfConf2;
gw.wait_for_unit("frr") };
};
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"): server =
for gw in router1, router2: { nodes, ... }:
gw.wait_until_succeeds("vtysh -c 'show ip ospf neighbor' | grep Full") {
gw.wait_until_succeeds("vtysh -c 'show ip route' | grep '^O>'") virtualisation.vlans = [ 3 ];
services.frr = {
config = ''
ip route 192.168.0.0/16 ${ifAddr nodes.router2 "eth1"}
'';
};
};
};
with subtest("Test ICMP"): testScript =
client.wait_until_succeeds("ping -4 -c 3 server >&2") { 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")
'';
}
)

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "wibo"; pname = "wibo";
version = "0.4.2"; version = "0.6.14";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "decompals"; owner = "decompals";
repo = "wibo"; repo = "wibo";
rev = version; rev = version;
hash = "sha256-oq/i0Hb2y5pwDEvaqSyC4+6LH1oUbvDZ/62l+V3S7Uk="; hash = "sha256-6YcraHBFWmm8TBfuFHbM9jGvUm9KvTOplJrFSTQkt70=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -29,8 +29,8 @@ stdenv.mkDerivation rec {
gc = srcOnly { gc = srcOnly {
name = "GC_WII_COMPILERS"; name = "GC_WII_COMPILERS";
src = fetchzip { src = fetchzip {
url = "https://cdn.discordapp.com/attachments/727918646525165659/917185027656286218/GC_WII_COMPILERS.zip"; url = "https://files.decomp.dev/compilers_20230715.zip";
hash = "sha256-o+UrmIbCsa74LxtLofT0DKrTRgT0qDK5/V7GsG2Zprc="; hash = "sha256-IX3byvEUVJB6Rmc+NqO9ZNt1jl95nQpEIqxbHI+uUio=";
stripRoot = false; stripRoot = false;
}; };
meta.license = lib.licenses.unfree; meta.license = lib.licenses.unfree;

View File

@ -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" ];
};
}

View File

@ -106,7 +106,7 @@ stdenv.mkDerivation rec {
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; sourceProvenance = with lib.sourceTypes; [ binaryBytecode ];
license = lib.licenses.asl20; license = lib.licenses.asl20;
maintainers = [ ]; maintainers = [ ] ++ lib.teams.java.members;
platforms = lib.platforms.all; platforms = lib.platforms.all;
}; };
} }

View File

@ -23,13 +23,13 @@
}: }:
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "aquamarine"; pname = "aquamarine";
version = "0.4.3"; version = "0.4.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hyprwm"; owner = "hyprwm";
repo = "aquamarine"; repo = "aquamarine";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-44bnoY0nAvbBQ/lVjmn511yL39Sv7SknV0BDxn34P3Q="; hash = "sha256-6DQM7jT2CzfxYceyrtcBQSL9BOEGfuin8GAyMjCpAzc=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -16,16 +16,16 @@
buildGoModule rec { buildGoModule rec {
pname = "evcc"; pname = "evcc";
version = "0.131.4"; version = "0.131.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "evcc-io"; owner = "evcc-io";
repo = "evcc"; repo = "evcc";
rev = version; rev = version;
hash = "sha256-sU5h29sXz1am44iFGNrVfMzrI1aAc/m355Aevm81sQc="; hash = "sha256-CRqxxbPkcjswntMgGkIrPFEbnjI90sfTmG6D1eCo45w=";
}; };
vendorHash = "sha256-hPCTAK4u79r9EoHkv6g1QvkRDZ95hXzyiiQpRD+0aLQ="; vendorHash = "sha256-x0EWFsR/O2Ztg39DL+yZx2ZDzJHADo2aPAeg/i+5KqM=";
npmDeps = fetchNpmDeps { npmDeps = fetchNpmDeps {
inherit src; inherit src;

View File

@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
description = "Gradle tab completion for bash and zsh"; description = "Gradle tab completion for bash and zsh";
homepage = "https://github.com/gradle/gradle-completion"; homepage = "https://github.com/gradle/gradle-completion";
license = licenses.mit; license = licenses.mit;
maintainers = [ ]; maintainers = [ ] ++ teams.java.members;
}; };
} }

View File

@ -1,7 +1,7 @@
{ {
"branch": "v0.44.1-b", "branch": "main",
"commit_hash": "4520b30d498daca8079365bdb909a8dea38e8d55", "commit_hash": "a425fbebe4cf4238e48a42f724ef2208959d66cf",
"commit_message": "version: bump to 0.44.1", "commit_message": "version: bump to 0.45.0",
"date": "2024-10-09", "date": "2024-11-09",
"tag": "v0.44.1" "tag": "v0.45.0"
} }

View File

@ -82,14 +82,14 @@ assert assertMsg (!hidpiXWayland)
customStdenv.mkDerivation (finalAttrs: { customStdenv.mkDerivation (finalAttrs: {
pname = "hyprland" + optionalString debug "-debug"; pname = "hyprland" + optionalString debug "-debug";
version = "0.44.1"; version = "0.45.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hyprwm"; owner = "hyprwm";
repo = "hyprland"; repo = "hyprland";
fetchSubmodules = true; fetchSubmodules = true;
rev = "refs/tags/v${finalAttrs.version}"; rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-hnoPoxMFetuoXQuAMgvopl1kCRQ33FYaVVBgV9FIFkM="; hash = "sha256-//Ib7gXCA8jq8c+QGTTIO0oH0rUYYBXGp8sqpI1jlhA=";
}; };
postPatch = '' postPatch = ''

View File

@ -54,7 +54,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
''; '';
license = lib.licenses.asl20; license = lib.licenses.asl20;
mainProgram = "mvn"; mainProgram = "mvn";
maintainers = [ ]; maintainers = [ ] ++ lib.teams.java.members;
inherit (jdk_headless.meta) platforms; inherit (jdk_headless.meta) platforms;
}; };
}) })

View File

@ -8,16 +8,16 @@
buildGoModule rec { buildGoModule rec {
pname = "netclient"; pname = "netclient";
version = "0.25.0"; version = "0.26.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "gravitl"; owner = "gravitl";
repo = "netclient"; repo = "netclient";
rev = "v${version}"; 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 buildInputs = lib.optional stdenv.hostPlatform.isDarwin darwin.apple_sdk.frameworks.Cocoa
++ lib.optional stdenv.hostPlatform.isLinux libX11; ++ lib.optional stdenv.hostPlatform.isLinux libX11;

View File

@ -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;
};
}

View File

@ -31,9 +31,9 @@ dependencies = [
[[package]] [[package]]
name = "anyhow" name = "anyhow"
version = "1.0.92" version = "1.0.93"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "74f37166d7d48a0284b99dd824694c26119c700b53bf0d1540cdb147dbdaaf13" checksum = "4c95c10ba0b00a02636238b814946408b1322d5ac4760326e6fb8ec956d85775"
[[package]] [[package]]
name = "autocfg" name = "autocfg"
@ -93,9 +93,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.1.34" version = "1.1.37"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "67b9470d453346108f93a59222a9a1a5724db32d0a4727b7ab7ace4b4d822dc9" checksum = "40545c26d092346d8a8dab71ee48e7685a7a9cba76e634790c215b41a4a7b4cf"
dependencies = [ dependencies = [
"shlex", "shlex",
] ]
@ -131,6 +131,17 @@ dependencies = [
"syn 2.0.87", "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]] [[package]]
name = "either" name = "either"
version = "1.13.0" version = "1.13.0"
@ -139,9 +150,9 @@ checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
[[package]] [[package]]
name = "els" name = "els"
version = "0.1.60-nightly.0" version = "0.1.60-nightly.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "91526cd54184ae2ddea4124e87a00dca78fff3780de423dcc0b089d8ed0f31e1" checksum = "89c30c054c5e833e623d0673f81696e19e58269c66a7a134785e00c0534979b6"
dependencies = [ dependencies = [
"erg_common", "erg_common",
"erg_compiler", "erg_compiler",
@ -155,9 +166,9 @@ dependencies = [
[[package]] [[package]]
name = "erg_common" 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" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc5e16917f93caa5866a8f628d8d4c82c72c7bde70bb1cae1969f1f5d0521f9a" checksum = "b194a638b1a921dfe528d62aa8a027f822142a3898f28d65c965bdacf50a2de1"
dependencies = [ dependencies = [
"backtrace-on-stack-overflow", "backtrace-on-stack-overflow",
"erg_proc_macros", "erg_proc_macros",
@ -168,9 +179,9 @@ dependencies = [
[[package]] [[package]]
name = "erg_compiler" 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" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "446393772e60305fbbce5d331aad109037e4ee7c098f8431c6431c2fab200548" checksum = "9d437395714e82c213db0366bab94b314f8f0fac5eaeb8297580df1e0b004fa1"
dependencies = [ dependencies = [
"erg_common", "erg_common",
"erg_parser", "erg_parser",
@ -178,9 +189,9 @@ dependencies = [
[[package]] [[package]]
name = "erg_parser" 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" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e00edb38b9576bace8b914c65d5c4511055feb2de41527449bae6471bd05017" checksum = "d27a6c9659043cf12bcfc8066f34193438e19633ecc1161bfe5e36df12d2aa4a"
dependencies = [ dependencies = [
"erg_common", "erg_common",
"erg_proc_macros", "erg_proc_macros",
@ -189,9 +200,9 @@ dependencies = [
[[package]] [[package]]
name = "erg_proc_macros" 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" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f51df19e941a11864b34dc9cbf7c94b36a8641def3bdb041de873dad566b9f7" checksum = "52070b88941a145aecc724ff8dd57742f6e36cbb422311db5858dccf7c84efed"
dependencies = [ dependencies = [
"quote", "quote",
"syn 1.0.109", "syn 1.0.109",
@ -248,13 +259,142 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
[[package]] [[package]]
name = "idna" name = "icu_collections"
version = "0.5.0" version = "1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526"
dependencies = [ dependencies = [
"unicode-bidi", "displaydoc",
"unicode-normalization", "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]] [[package]]
@ -292,9 +432,9 @@ checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553"
[[package]] [[package]]
name = "libc" name = "libc"
version = "0.2.161" version = "0.2.162"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398"
[[package]] [[package]]
name = "libm" name = "libm"
@ -302,6 +442,12 @@ version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa"
[[package]]
name = "litemap"
version = "0.7.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704"
[[package]] [[package]]
name = "lock_api" name = "lock_api"
version = "0.4.12" version = "0.4.12"
@ -563,7 +709,7 @@ dependencies = [
[[package]] [[package]]
name = "py2erg" name = "py2erg"
version = "0.0.69" version = "0.0.70"
dependencies = [ dependencies = [
"erg_common", "erg_common",
"erg_compiler", "erg_compiler",
@ -573,7 +719,7 @@ dependencies = [
[[package]] [[package]]
name = "pylyzer" name = "pylyzer"
version = "0.0.69" version = "0.0.70"
dependencies = [ dependencies = [
"els", "els",
"erg_common", "erg_common",
@ -583,7 +729,7 @@ dependencies = [
[[package]] [[package]]
name = "pylyzer_core" name = "pylyzer_core"
version = "0.0.69" version = "0.0.70"
dependencies = [ dependencies = [
"erg_common", "erg_common",
"erg_compiler", "erg_compiler",
@ -594,7 +740,7 @@ dependencies = [
[[package]] [[package]]
name = "pylyzer_wasm" name = "pylyzer_wasm"
version = "0.0.69" version = "0.0.70"
dependencies = [ dependencies = [
"erg_common", "erg_common",
"erg_compiler", "erg_compiler",
@ -803,6 +949,12 @@ version = "1.13.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
[[package]]
name = "stable_deref_trait"
version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
[[package]] [[package]]
name = "static_assertions" name = "static_assertions"
version = "1.1.0" version = "1.1.0"
@ -831,6 +983,17 @@ dependencies = [
"unicode-ident", "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]] [[package]]
name = "thread_local" name = "thread_local"
version = "1.1.8" version = "1.1.8"
@ -851,20 +1014,15 @@ dependencies = [
] ]
[[package]] [[package]]
name = "tinyvec" name = "tinystr"
version = "1.8.0" version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f"
dependencies = [ 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]] [[package]]
name = "unic-char-property" name = "unic-char-property"
version = "0.9.0" version = "0.9.0"
@ -917,27 +1075,12 @@ dependencies = [
"unic-common", "unic-common",
] ]
[[package]]
name = "unicode-bidi"
version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893"
[[package]] [[package]]
name = "unicode-ident" name = "unicode-ident"
version = "1.0.13" version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" 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]] [[package]]
name = "unicode-width" name = "unicode-width"
version = "0.1.14" version = "0.1.14"
@ -974,9 +1117,9 @@ dependencies = [
[[package]] [[package]]
name = "url" name = "url"
version = "2.5.2" version = "2.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" checksum = "8d157f1b96d14500ffdc1f10ba712e780825526c03d9a49b4d0324b0d9113ada"
dependencies = [ dependencies = [
"form_urlencoded", "form_urlencoded",
"idna", "idna",
@ -984,6 +1127,18 @@ dependencies = [
"serde", "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]] [[package]]
name = "version_check" name = "version_check"
version = "0.9.5" version = "0.9.5"
@ -1188,6 +1343,42 @@ version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" 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]] [[package]]
name = "zerocopy" name = "zerocopy"
version = "0.7.35" version = "0.7.35"
@ -1208,3 +1399,46 @@ dependencies = [
"quote", "quote",
"syn 2.0.87", "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",
]

View File

@ -7,7 +7,6 @@
python3, python3,
makeWrapper, makeWrapper,
writeScriptBin, writeScriptBin,
darwin,
which, which,
nix-update-script, nix-update-script,
versionCheckHook, versionCheckHook,
@ -15,13 +14,13 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "pylyzer"; pname = "pylyzer";
version = "0.0.69"; version = "0.0.70";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mtshiba"; owner = "mtshiba";
repo = "pylyzer"; repo = "pylyzer";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-3Ufige1OQWriJ6qQXjpfzL1tlA/9Sa8BEmhMDdpYlAQ="; hash = "sha256-jj9r5npClLY9mhDHFI92825RYvwn6m9KlngfFL0bqCw=";
}; };
cargoLock = { cargoLock = {
@ -39,10 +38,10 @@ rustPlatform.buildRustPackage rec {
buildInputs = [ buildInputs = [
python3 python3
] ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Security ]; ];
preBuild = '' preBuild = ''
export HOME=$TMPDIR export HOME=$(mktemp -d)
''; '';
postInstall = '' postInstall = ''
@ -52,11 +51,17 @@ rustPlatform.buildRustPackage rec {
nativeCheckInputs = [ which ]; nativeCheckInputs = [ which ];
checkFlags = [ checkFlags =
# this test causes stack overflow [
# > thread 'exec_import' has overflowed its stack # this test causes stack overflow
"--skip=exec_import" # > 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 = '' postFixup = ''
wrapProgram $out/bin/pylyzer --set ERG_PATH $out/lib/erg wrapProgram $out/bin/pylyzer --set ERG_PATH $out/lib/erg

View File

@ -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
];
};
}

View File

@ -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" ];
};
}

View File

@ -13,13 +13,13 @@
flutter324.buildFlutterApplication rec { flutter324.buildFlutterApplication rec {
pname = "yubioath-flutter"; pname = "yubioath-flutter";
version = "7.1.0"; version = "7.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Yubico"; owner = "Yubico";
repo = "yubioath-flutter"; repo = "yubioath-flutter";
rev = version; rev = version;
hash = "sha256-sAs/tglLt1igovtfs07+7G5/xeMcQgfR9G4b7VzyDVY="; hash = "sha256-MpY6yJvGBaFiEwuGEme2Uvyi5INCYhZJHyaRpC9pCuk=";
}; };
passthru.helper = python3.pkgs.callPackage ./helper.nix { inherit src version meta; }; passthru.helper = python3.pkgs.callPackage ./helper.nix { inherit src version meta; };

View File

@ -1,7 +1,6 @@
{ lib { lib
, stdenv , stdenv
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, nix-update-script , nix-update-script
, meson , meson
, ninja , ninja
@ -20,24 +19,15 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "elementary-onboarding"; pname = "elementary-onboarding";
version = "8.0.1"; version = "8.0.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "elementary"; owner = "elementary";
repo = "onboarding"; repo = "onboarding";
rev = version; 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 = [ nativeBuildInputs = [
meson meson
ninja ninja

View File

@ -623,10 +623,13 @@ stdenv.mkDerivation (finalAttrs: {
description = "Open-source Java Development Kit"; description = "Open-source Java Development Kit";
homepage = "https://openjdk.java.net/"; homepage = "https://openjdk.java.net/";
license = lib.licenses.gpl2Only; license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ maintainers =
edwtjo with lib.maintainers;
infinidoge [
]; edwtjo
infinidoge
]
++ lib.teams.java.members;
mainProgram = "java"; mainProgram = "java";
platforms = platforms =
[ [

View File

@ -69,7 +69,7 @@ let
sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ]; sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ];
description = "${brand-name}, prebuilt OpenJDK binary"; description = "${brand-name}, prebuilt OpenJDK binary";
platforms = builtins.map (arch: arch + "-darwin") providedCpuTypes; # some inherit jre.meta.platforms 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; inherit knownVulnerabilities;
mainProgram = "java"; mainProgram = "java";
}; };

View File

@ -127,7 +127,7 @@ let
sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ]; sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ];
description = "${brand-name}, prebuilt OpenJDK binary"; description = "${brand-name}, prebuilt OpenJDK binary";
platforms = builtins.map (arch: arch + "-linux") providedCpuTypes; # some inherit jre.meta.platforms 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; inherit knownVulnerabilities;
mainProgram = "java"; mainProgram = "java";
}; };

View File

@ -164,7 +164,7 @@ let
homepage = "https://www.azul.com/products/zulu/"; homepage = "https://www.azul.com/products/zulu/";
license = lib.licenses.gpl2Only; license = lib.licenses.gpl2Only;
mainProgram = "java"; mainProgram = "java";
maintainers = [ ]; maintainers = [ ] ++ lib.teams.java.members;
platforms = builtins.attrNames dists; platforms = builtins.attrNames dists;
sourceProvenance = with lib.sourceTypes; [ binaryBytecode binaryNativeCode ]; sourceProvenance = with lib.sourceTypes; [ binaryBytecode binaryNativeCode ];
}; };

View File

@ -13,28 +13,27 @@
, runCommand , runCommand
, python3 , python3
, quarto , quarto
, extraPythonPackages ? ps: with ps; [] , extraPythonPackages ? ps: []
, sysctl , sysctl
}: }:
stdenv.mkDerivation (final: { stdenv.mkDerivation (final: {
pname = "quarto"; pname = "quarto";
version = "1.6.30"; version = "1.6.33";
src = fetchurl { src = fetchurl {
url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${final.version}/quarto-${final.version}-linux-amd64.tar.gz"; 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 = [ nativeBuildInputs = [
makeWrapper makeWrapper
]; ];
postPatch = ''
# Compat for Deno >=1.26
substituteInPlace bin/quarto.js \
--replace-fail ']))?.trim();' ']))?.trim().split(" ")[0];'
'';
dontStrip = true; dontStrip = true;
preFixup = '' preFixup = ''

View File

@ -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 {

View File

@ -22,7 +22,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "debugpy"; pname = "debugpy";
version = "1.8.7"; version = "1.8.8";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -31,7 +31,7 @@ buildPythonPackage rec {
owner = "microsoft"; owner = "microsoft";
repo = "debugpy"; repo = "debugpy";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-JFVhEAfdSfl2ACfXLMdoO/1otdif9bHialdQXucTM5A="; hash = "sha256-zkNV+tFRAxTdl+lCPD4XYI1Oz0dVyX4GGuNdfzy2sJU=";
}; };
patches = patches =
@ -73,13 +73,12 @@ buildPythonPackage rec {
}) })
]; ];
# Remove pre-compiled "attach" libraries and recompile for host platform # Compile attach library for host platform
# Compile flags taken from linux_and_mac/compile_linux.sh & linux_and_mac/compile_mac.sh # Derived from linux_and_mac/compile_linux.sh & linux_and_mac/compile_mac.sh
preBuild = '' preBuild = ''
( (
set -x set -x
cd src/debugpy/_vendored/pydevd/pydevd_attach_to_process 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 ${ $CXX linux_and_mac/attach.cpp -Ilinux_and_mac -std=c++11 -fPIC -nostartfiles ${
{ {
"x86_64-linux" = "-shared -o attach_linux_amd64.so"; "x86_64-linux" = "-shared -o attach_linux_amd64.so";

View File

@ -229,7 +229,7 @@ stdenv.mkDerivation rec {
map (dep: { map (dep: {
name = dep.name; name = dep.name;
value = dep; value = dep;
}) list }) (lib.filter (x: x != null) list)
); );
saturateDependencies = saturateDependencies =
deps: deps:

View File

@ -28,6 +28,12 @@ buildPythonPackage rec {
hash = "sha256-2K55gHYWf2Mrj9fszVCJ+qqEyQNMppQi+IZCX5SlsBs="; 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 = [ nativeBuildInputs = [
gsl gsl
oldest-supported-numpy oldest-supported-numpy

View File

@ -10,22 +10,22 @@
dlinfo, dlinfo,
typing-extensions, typing-extensions,
espeak-ng, espeak-ng,
setuptools,
pytest,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "phonemizer"; pname = "phonemizer";
version = "3.3.0"; version = "3.3.0";
format = "setuptools"; pyproject = true;
build-system = [ setuptools ];
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-Xgw4Ei7/4LMxok5nSv8laHTs4WnXCpzxEgM3tW+OPQw="; hash = "sha256-Xgw4Ei7/4LMxok5nSv8laHTs4WnXCpzxEgM3tW+OPQw=";
}; };
postPatch = ''
sed -i '/pytest-runner/d' setup.py
'';
patches = [ patches = [
(substituteAll { (substituteAll {
src = ./backend-paths.patch; src = ./backend-paths.patch;
@ -46,12 +46,12 @@ buildPythonPackage rec {
# so let's disable related tests. # so let's disable related tests.
doCheck = false; doCheck = false;
meta = with lib; { meta = {
homepage = "https://github.com/bootphon/phonemizer"; homepage = "https://github.com/bootphon/phonemizer";
changelog = "https://github.com/bootphon/phonemizer/blob/v${version}/CHANGELOG.md"; changelog = "https://github.com/bootphon/phonemizer/blob/v${version}/CHANGELOG.md";
description = "Simple text to phones converter for multiple languages"; description = "Simple text to phones converter for multiple languages";
mainProgram = "phonemize"; mainProgram = "phonemize";
license = licenses.gpl3Plus; license = lib.licenses.gpl3Plus;
maintainers = [ ]; maintainers = with lib.maintainers; [ bot-wxt1221 ];
}; };
} }

View File

@ -11,21 +11,35 @@
pytestCheckHook, pytestCheckHook,
pythonOlder, pythonOlder,
setuptools, setuptools,
scikit-build-core,
cmake,
setuptools-scm,
ninja,
pkg-config,
nanobind,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "phonopy"; pname = "phonopy";
version = "2.28.0"; version = "2.29.1";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchPypi { src = fetchPypi {
inherit pname version; 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 = [ propagatedBuildInputs = [
h5py h5py

View File

@ -10,16 +10,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pytest-flake8"; pname = "pytest-flake8";
version = "1.2.2"; version = "1.3.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.9";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "coherent-oss"; owner = "coherent-oss";
repo = "pytest-flake8"; repo = "pytest-flake8";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-FsJysBj5S5HHGay+YZKMgb9RdUN637J+FfNl+m9l6ik="; hash = "sha256-uc5DOqqdoLfhzI2ogDOqhbJOHzdu+uqSOojIH+S1LZI=";
}; };
build-system = [ setuptools-scm ]; build-system = [ setuptools-scm ];
@ -29,8 +29,6 @@ buildPythonPackage rec {
nativeCheckInputs = [ pytestCheckHook ]; nativeCheckInputs = [ pytestCheckHook ];
meta = { 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"; changelog = "https://github.com/coherent-oss/pytest-flake8/blob/${src.rev}/NEWS.rst";
description = "py.test plugin for efficiently checking PEP8 compliance"; description = "py.test plugin for efficiently checking PEP8 compliance";
homepage = "https://github.com/coherent-oss/pytest-flake8"; homepage = "https://github.com/coherent-oss/pytest-flake8";

View File

@ -84,10 +84,5 @@ buildPythonPackage rec {
changelog = "https://github.com/Diaoul/subliminal/blob/${version}/HISTORY.rst"; changelog = "https://github.com/Diaoul/subliminal/blob/${version}/HISTORY.rst";
license = lib.licenses.mit; license = lib.licenses.mit;
maintainers = with lib.maintainers; [ doronbehar ]; 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;
}; };
} }

View File

@ -21,6 +21,12 @@ buildPythonPackage rec {
hash = "sha256-Wq7ar96w5hdAyKMMvK4zjYln74RmX1l/VhvS++CN+Xk="; 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 ]; build-system = [ setuptools ];
dependencies = [ dependencies = [

View File

@ -6,12 +6,15 @@
pytestCheckHook, pytestCheckHook,
pythonOlder, pythonOlder,
pytz, pytz,
setuptools,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "us"; pname = "us";
version = "3.2.0"; version = "3.2.0";
format = "setuptools"; pyproject = true;
build-system = [ setuptools ];
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -20,13 +23,9 @@ buildPythonPackage rec {
hash = "sha256-yyI+hTk9zFFx6tDdISutxH+WZ7I3AP6j5+pfMQ1UUzg="; hash = "sha256-yyI+hTk9zFFx6tDdISutxH+WZ7I3AP6j5+pfMQ1UUzg=";
}; };
postPatch = '' propagatedBuildInputs = [
# Upstream spins jellyfish jellyfish
substituteInPlace setup.py \ ];
--replace "jellyfish==" "jellyfish>="
'';
propagatedBuildInputs = [ jellyfish ];
nativeCheckInputs = [ nativeCheckInputs = [
pytestCheckHook pytestCheckHook
@ -35,7 +34,7 @@ buildPythonPackage rec {
pythonImportsCheck = [ "us" ]; pythonImportsCheck = [ "us" ];
meta = with lib; { meta = {
description = "Package for easily working with US and state metadata"; description = "Package for easily working with US and state metadata";
mainProgram = "states"; mainProgram = "states";
longDescription = '' longDescription = ''
@ -45,7 +44,7 @@ buildPythonPackage rec {
census, congressional districts, counties, and census tracts. census, congressional districts, counties, and census tracts.
''; '';
homepage = "https://github.com/unitedstates/python-us/"; homepage = "https://github.com/unitedstates/python-us/";
license = licenses.bsd3; license = lib.licenses.bsd3;
maintainers = [ ]; maintainers = with lib.maintainers; [ bot-wxt1221 ];
}; };
} }

View File

@ -174,7 +174,7 @@ rec {
binaryNativeCode binaryNativeCode
]; ];
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ lorenzleutgeb liff ]; maintainers = with maintainers; [ lorenzleutgeb liff ] ++ lib.teams.java.members;
mainProgram = "gradle"; mainProgram = "gradle";
} // meta; } // meta;
}); });

View File

@ -2,61 +2,61 @@
"5.10": { "5.10": {
"patch": { "patch": {
"extra": "-hardened1", "extra": "-hardened1",
"name": "linux-hardened-v5.10.228-hardened1.patch", "name": "linux-hardened-v5.10.229-hardened1.patch",
"sha256": "1fzpiv9gn2krbx2v61j1dzzsdm0qlgps4rjdkzmi8a8fv9g1iq0p", "sha256": "0bagy0x1kwm05x9mlgisjrlybk9yl91maxw6fai2si5m4xb3xv7n",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.10.228-hardened1/linux-hardened-v5.10.228-hardened1.patch" "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.10.229-hardened1/linux-hardened-v5.10.229-hardened1.patch"
}, },
"sha256": "0wkvn49sdy9ykyz6cqdqd9yplqfhc6b255w6wc17ky182mzqvk3n", "sha256": "1q6di05rk4bsy91r03zw6vz14zzcpvv25dv7gw0yz1gzpgkbb9h8",
"version": "5.10.228" "version": "5.10.229"
}, },
"5.15": { "5.15": {
"patch": { "patch": {
"extra": "-hardened1", "extra": "-hardened1",
"name": "linux-hardened-v5.15.170-hardened1.patch", "name": "linux-hardened-v5.15.171-hardened1.patch",
"sha256": "16b3dzfgx737hsr16n9j3v4lr1qrl5vgsjmmcri0szbcd5sm0620", "sha256": "08fbvra05rj0xcj9a8hd6mhv4lis2mhp57v7x4mw7rxxz2vim4bz",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.15.170-hardened1/linux-hardened-v5.15.170-hardened1.patch" "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.15.171-hardened1/linux-hardened-v5.15.171-hardened1.patch"
}, },
"sha256": "1ag7fvixhdcyxv6rqfsvq2wh02g64r4rx8izvfb33nfnld2nangx", "sha256": "0fra5zwcixgl6fg9hgdzlfcqng6pg09h2j7xqhi4qg0jv1jf0lr9",
"version": "5.15.170" "version": "5.15.171"
}, },
"5.4": { "5.4": {
"patch": { "patch": {
"extra": "-hardened1", "extra": "-hardened1",
"name": "linux-hardened-v5.4.284-hardened1.patch", "name": "linux-hardened-v5.4.285-hardened1.patch",
"sha256": "1skqaq90bigrxg0w075nssqbdq868ii62r8asx0m6wcvd5cl50af", "sha256": "1zm846mzvz1x88iskfw8513jkhlphxkd4v2qs86maxlgiz5zcxqp",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.4.284-hardened1/linux-hardened-v5.4.284-hardened1.patch" "url": "https://github.com/anthraxx/linux-hardened/releases/download/v5.4.285-hardened1/linux-hardened-v5.4.285-hardened1.patch"
}, },
"sha256": "0axkwfhvq3w2072xjqww476qa3rjglxyqmf72mlp9b5ymswil8kp", "sha256": "1722sc365ajxmqyr4r49yp73mzdckay3rx5c2gx29xzny9zc6cmy",
"version": "5.4.284" "version": "5.4.285"
}, },
"6.1": { "6.1": {
"patch": { "patch": {
"extra": "-hardened1", "extra": "-hardened1",
"name": "linux-hardened-v6.1.115-hardened1.patch", "name": "linux-hardened-v6.1.116-hardened1.patch",
"sha256": "1vly83nqpridysywj8aby6pmzjgz7jlk6ni957s9v05gfkvf906l", "sha256": "0q597vszhgj6bgq56j11nq01mjjxl0ws8kqcr839fzkcgn1h6xv9",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.1.115-hardened1/linux-hardened-v6.1.115-hardened1.patch" "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.1.116-hardened1/linux-hardened-v6.1.116-hardened1.patch"
}, },
"sha256": "0vxs6zj4p0ihcp11h3svqy3wa1yph0f1vzc8dlvqh60zgs1bmn0g", "sha256": "109vhc1hcfx6sacw4553xmwbj1gqx3zqjq5zg11z7a72dqrnisqp",
"version": "6.1.115" "version": "6.1.116"
}, },
"6.11": { "6.11": {
"patch": { "patch": {
"extra": "-hardened1", "extra": "-hardened1",
"name": "linux-hardened-v6.11.6-hardened1.patch", "name": "linux-hardened-v6.11.7-hardened1.patch",
"sha256": "0g5drxsknvhcd80s1mwmbbc9d3v3qpj4c7rha95ygzwxidvagr9f", "sha256": "1rfvlhgl78ixsb75aah9173h8jp37c8i0hs7b4484vljmqv0khcy",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.11.6-hardened1/linux-hardened-v6.11.6-hardened1.patch" "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.11.7-hardened1/linux-hardened-v6.11.7-hardened1.patch"
}, },
"sha256": "1kiky6viwrgm47slpv234lfq1wrwj29p5rx168gix3q0jw0zcm69", "sha256": "1cpbycx79nl517rz573mja52bgzm249mhqzp424r5mqp91jfrx8b",
"version": "6.11.6" "version": "6.11.7"
}, },
"6.6": { "6.6": {
"patch": { "patch": {
"extra": "-hardened1", "extra": "-hardened1",
"name": "linux-hardened-v6.6.59-hardened1.patch", "name": "linux-hardened-v6.6.60-hardened1.patch",
"sha256": "1vdyryd0m9rr0z2pznq6jyxbdhy4w4x85c37gfl4sbbcs9549gnw", "sha256": "090bs6nvc9by5higmxfwmzlqjrhbhqs21gsmpxvm18p9l3s08dq3",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.6.59-hardened1/linux-hardened-v6.6.59-hardened1.patch" "url": "https://github.com/anthraxx/linux-hardened/releases/download/v6.6.60-hardened1/linux-hardened-v6.6.60-hardened1.patch"
}, },
"sha256": "0vd76ccd4li4wsg04gc4nai9f4y1nknz967qby0i53y0v046hq93", "sha256": "1vsjb7ifmf6ic6zv16fbrxjvffqc1mkndza76hjr9aw2a0ny7yaj",
"version": "6.6.59" "version": "6.6.60"
} }
} }

View File

@ -1,13 +1,10 @@
{ {
lib, lib,
bc,
buildDotnetModule, buildDotnetModule,
fetchFromGitHub, fetchFromGitHub,
glibc,
zlib,
gtk3,
copyDesktopItems, copyDesktopItems,
icoutils, icoutils,
wrapGAppsHook3,
makeDesktopItem, makeDesktopItem,
}: }:
@ -34,19 +31,12 @@ buildDotnetModule rec {
''; '';
runtimeDeps = [ runtimeDeps = [
glibc bc
zlib
gtk3
];
buildInputs = [
gtk3
]; ];
nativeBuildInputs = [ nativeBuildInputs = [
copyDesktopItems copyDesktopItems
icoutils icoutils
wrapGAppsHook3
]; ];
doCheck = true; doCheck = true;
@ -60,6 +50,8 @@ buildDotnetModule rec {
size=''${sizes[$i]}x''${sizes[$i]} size=''${sizes[$i]}x''${sizes[$i]}
install -D omegamaggotprime_''$((i+1))_''${size}x32.png $out/share/icons/hicolor/$size/apps/scarab.png install -D omegamaggotprime_''$((i+1))_''${size}x32.png $out/share/icons/hicolor/$size/apps/scarab.png
done done
wrapProgram "$out/bin/Scarab" --run '. ${./scaling-settings.bash}'
''; '';
desktopItems = [ desktopItems = [

View File

@ -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

View File

@ -264,6 +264,11 @@ core-big = stdenv.mkDerivation {
utils/{tpic2pdftex,vlna,xindy,xml2pmx,xpdfopen} utils/{tpic2pdftex,vlna,xindy,xml2pmx,xpdfopen}
mkdir WorkDir mkdir WorkDir
cd 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 configureFlags = common.configureFlags

View File

@ -1184,6 +1184,7 @@ mapAliases {
tclx = tclPackages.tclx; # Added 2024-10-02 tclx = tclPackages.tclx; # Added 2024-10-02
tdesktop = telegram-desktop; # Added 2023-04-07 tdesktop = telegram-desktop; # Added 2023-04-07
tdom = tclPackages.tdom; # Added 2024-10-02 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 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_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 teleport_14 = throw "teleport 14 has been removed as it is EOL. Please upgrade to Teleport 15 or later"; # Added 2024-10-18

View File

@ -16090,7 +16090,6 @@ with pkgs;
tamgamp.lv2 = callPackage ../applications/audio/tamgamp.lv2 { }; 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 { }; teamspeak5_client = callPackage ../applications/networking/instant-messengers/teamspeak/client5.nix { };
teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { }; teamspeak_server = callPackage ../applications/networking/instant-messengers/teamspeak/server.nix { };