Merge staging-next into staging

This commit is contained in:
nixpkgs-ci[bot]
2026-02-17 06:22:43 +00:00
committed by GitHub
28 changed files with 810 additions and 506 deletions
+6
View File
@@ -8885,6 +8885,12 @@
githubId = 74379;
name = "Florian Pester";
};
flyingpeakock = {
email = "nix@phlipphlop.me";
github = "flyingpeakock";
githubId = 21244519;
name = "Philip Johansson";
};
fmhoeger = {
email = "fmhoeger@mirsem.org";
name = "fmhoeger";
@@ -144,6 +144,8 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.
- `services.angrr` now uses TOML for configuration. Define policies with `services.angrr.settings` (generate TOML file) or point to a file using `services.angrr.configFile`. The legacy options `services.angrr.period`, `services.angrr.ownedOnly`, and `services.angrr.removeRoot` have been removed. See `man 5 angrr` and the description of `services.angrr.settings` options for examples and details.
- `services.homepage-dashboard.environmentFile` has been renamed to `services.homepage-dashboard.environmentFiles`, and now expects a list of strings.
- `services.pingvin-share` has been removed as the `pingvin-share.backend` package was broken and the project was archived upstream.
- `geph` package's built-in GUI `geph5-client-gui` has been [removed](https://github.com/geph-official/geph5/commit/f2221fb8386312daf2cef05483ebb353ff48bdb4) by the upstream. All users who wish to continue using the GUI should install the `gephgui-wry`, which is consistent with the official release version.
@@ -10,6 +10,14 @@ let
settingsFormat = pkgs.formats.yaml { };
in
{
imports = [
(lib.mkChangedOptionModule
[ "services" "homepage-dashboard" "environmentFile" ]
[ "services" "homepage-dashboard" "environmentFiles" ]
(config: [ config.services.homepage-dashboard.environmentFile ])
)
];
options = {
services.homepage-dashboard = {
enable = lib.mkEnableOption "Homepage Dashboard, a highly customizable application dashboard";
@@ -41,10 +49,10 @@ in
'';
};
environmentFile = lib.mkOption {
type = lib.types.str;
environmentFiles = lib.mkOption {
type = lib.types.listOf lib.types.path;
description = ''
The path to an environment file that contains environment variables to pass
A list of paths to environment files that contain environment variables to pass
to the homepage-dashboard service, for the purpose of passing secrets to
the service.
@@ -52,7 +60,7 @@ in
<https://gethomepage.dev/installation/docker/#using-environment-secrets>
'';
default = "";
default = [ ];
};
customCSS = lib.mkOption {
@@ -243,7 +251,7 @@ in
serviceConfig = {
Type = "simple";
EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile;
EnvironmentFile = cfg.environmentFiles;
StateDirectory = "homepage-dashboard";
CacheDirectory = "homepage-dashboard";
ExecStart = lib.getExe cfg.package;
@@ -130,8 +130,12 @@ let
inherit (finalPackage) GI_TYPELIB_PATH;
};
# Packages needed at runtime
weblatePath = with pkgs; [
gitSVN
subversion
gettext
fontconfig
borgbackup
#optional
@@ -141,6 +145,7 @@ let
mercurial
openssh
];
in
{
+526 -390
View File
File diff suppressed because it is too large Load Diff
+4 -5
View File
@@ -5,23 +5,22 @@
}:
php.buildComposerProject2 (finalAttrs: {
pname = "baikal";
version = "0.10.1";
version = "0.11.1";
src = fetchFromGitHub {
owner = "sabre-io";
repo = "Baikal";
tag = finalAttrs.version;
hash = "sha256-YQQwTdwfHQZdUhO5HbScj/Bl8ype7TtPI3lHjvz2k04=";
hash = "sha256-+rOaPgVD5q2LoTXG3PM2x9EyOExt7CRPU+HQouwgaqI=";
};
# It doesn't provide a composer.lock file, we have to generate manually.
composerLock = ./composer.lock;
vendorHash = "sha256-TM0dyr90bUDxUwywwkeHh0pAWkTB8FV3ricWCHGxA7k=";
vendorHash = "sha256-QE8i59MP24BdZjzzgQVfTuhL4v9l60KxpKj4+lkdomE=";
meta = {
description = "Lightweight CalDAV+CardDAV server that offers an extensive web interface with easy management of users, address books and calendars";
homepage = "https://sabre.io/baikal/";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ wrvsrx ];
maintainers = with lib.maintainers; [ flyingpeakock ];
};
})
+2 -2
View File
@@ -9,13 +9,13 @@
buildGoModule (finalAttrs: {
pname = "bosh-cli";
version = "7.9.16";
version = "7.9.18";
src = fetchFromGitHub {
owner = "cloudfoundry";
repo = "bosh-cli";
rev = "v${finalAttrs.version}";
sha256 = "sha256-yzoqtubX2IeRP4Ee/YjzRmeAo2aqvfCiqsVkfKtzGFU=";
sha256 = "sha256-8bB1wOs4Ef6nR0d5Z6cmby6AiYSO90uBF6Hw6Q1UiWY=";
};
vendorHash = null;
+18 -11
View File
@@ -1,23 +1,24 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
lib,
nix-update-script,
openssl,
pkg-config,
rustPlatform,
}:
rustPlatform.buildRustPackage {
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cargo-guppy";
version = "unstable-2023-10-04";
version = "0.17.25";
src = fetchFromGitHub {
owner = "guppy-rs";
repo = "guppy";
rev = "837d0ae762b9ae79cc8ca5d629842e5ca34293b4";
sha256 = "sha256-LWU1yAD/f9w5m522vcKP9D2JusGkwzvfGSGstvFGUpk=";
tag = "guppy-${finalAttrs.version}";
hash = "sha256-wH14RCNjqbuJsyJdV3Vthulyd5GbLdfpoojK3F2muwM=";
};
cargoHash = "sha256-nNbCQ/++gm2S+xFbE5t9U9gQR8E2fVWE4kh73wgbAwQ=";
cargoHash = "sha256-fNbuVXFCqrQPT0q00VkOVXm1H7/7HjuK9JYZ0TRxMJk=";
nativeBuildInputs = [ pkg-config ];
@@ -27,19 +28,25 @@ rustPlatform.buildRustPackage {
"-p"
"cargo-guppy"
];
cargoTestFlags = [
"-p"
"cargo-guppy"
];
passthru.updateScript = nix-update-script {
extraArgs = [ "--version-regex=guppy-(.*)" ];
};
meta = {
changelog = "https://github.com/guppy-rs/guppy/releases/tag/${finalAttrs.src.tag}";
description = "Command-line frontend for guppy";
mainProgram = "cargo-guppy";
homepage = "https://github.com/guppy-rs/guppy/tree/main/cargo-guppy";
license = with lib.licenses; [
mit # or
asl20
];
maintainers = [ ];
mainProgram = "cargo-guppy";
maintainers = with lib.maintainers; [ hythera ];
};
}
})
+3 -3
View File
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "hexyl";
version = "0.16.0";
version = "0.17.0";
src = fetchFromGitHub {
owner = "sharkdp";
repo = "hexyl";
tag = "v${finalAttrs.version}";
hash = "sha256-TmFvv+jzOSM8kKCxBbUoDsUjKRPTplhWheVfIjS5nsY=";
hash = "sha256-1FlFvVgv4SslHtwXvHIE5aUXlDsUK4YFBtIKgsv/eB0=";
};
cargoHash = "sha256-QjQoGtLF5BAxWFiLZZYCpwrYCdiVfvG/lAukCNZGsec=";
cargoHash = "sha256-/+0oRyA9gfucfBTdkN9Q5eUZOWNDIAOj634yAc7Hzn0=";
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
+5 -5
View File
@@ -1,11 +1,11 @@
{
"packageVersion": "147.0.3-2",
"packageVersion": "147.0.4-1",
"source": {
"rev": "147.0.3-2",
"hash": "sha256-Gnsk+dY0B0j/0npy//y/UItKvPrI9HELrH86x0QklBk="
"rev": "147.0.4-1",
"hash": "sha256-xdeYyD1zwhQ5BzHzbQNCb3oHr4DAfwHGzbtGr2E3MR0="
},
"firefox": {
"version": "147.0.3",
"hash": "sha512-N+OcR9aU7M3Ku32KCkz+GwKGCpf2BGU/Nkxg9OmHlv/H8carUSJrLlA0pLSAXMxuw5g/DYMMnzZpLfLsJhJz2Q=="
"version": "147.0.4",
"hash": "sha512-mBNokWWC4VZllKuOLAPKtHGq8EYT0sd6DU4GerFZu4G1kpqAG7rCDvBQbvBIzekbLi+JWY+o1OjWaoyAFrubMw=="
}
}
+2 -2
View File
@@ -23,13 +23,13 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "mangowc";
version = "0.10.8";
version = "0.12.1";
src = fetchFromGitHub {
owner = "DreamMaoMao";
repo = "mangowc";
tag = finalAttrs.version;
hash = "sha256-Vszn4Zp0pojvvKkyP7M7V5iqNRB0kUvwd9iez+KzOyM=";
hash = "sha256-Py8gfpkp+oYAnaCiFGytyLkxTd1DqFr/NH3DUma8meI=";
};
nativeBuildInputs = [
+2 -2
View File
@@ -97,7 +97,7 @@ let
++ lib.optionals mediaSupport [ ffmpeg_7 ]
);
version = "15.0.4";
version = "15.0.6";
sources = {
x86_64-linux = fetchurl {
@@ -109,7 +109,7 @@ let
"https://tor.eff.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
"https://tor.calyxinstitute.org/dist/mullvadbrowser/${version}/mullvad-browser-linux-x86_64-${version}.tar.xz"
];
hash = "sha256-l41Sn69hvQXwb13T1o6ukIWOxpXuARA+J8+QjNh+bdo=";
hash = "sha256-7FqNvt6Uyl00sxiScDA4EhBT2a8BYStIxfzCOanWx7M=";
};
};
+3 -3
View File
@@ -11,16 +11,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "rumdl";
version = "0.1.18";
version = "0.1.22";
src = fetchFromGitHub {
owner = "rvben";
repo = "rumdl";
tag = "v${finalAttrs.version}";
hash = "sha256-0SwXf7V1RSMgwgjaXnbE0KG5TVA7wjBi4j9tjaKYBEM=";
hash = "sha256-pOSsd/U/KdvhK/NTprFRzv0jROEeAjbboXr5ik1KFJA=";
};
cargoHash = "sha256-VWgJbZbGBxAfkRiX/k13l2TttxtBx9OOJ1CypgXJgCE=";
cargoHash = "sha256-t/71aCc1lXIdYjP0g0nvjkMfHtoygAlpBEqfebLes7c=";
cargoBuildFlags = [
"--bin=rumdl"
+2 -2
View File
@@ -9,13 +9,13 @@
buildGoModule (finalAttrs: {
pname = "spacectl";
version = "1.18.2";
version = "1.18.3";
src = fetchFromGitHub {
owner = "spacelift-io";
repo = "spacectl";
rev = "v${finalAttrs.version}";
hash = "sha256-lOlG8WpM7U+U6ATgg9npT86HWnuON67517xA7U2rfYE=";
hash = "sha256-1ucdKSIbShaH4o7kixY2x4t+raW24HBuJij2hdVmfAM=";
};
vendorHash = "sha256-f/09XZiaYNUZzKM0jITFdUmKt8UQy90K4PGhC6ZupCk=";
+111 -8
View File
@@ -9,15 +9,29 @@
gdk-pixbuf,
glib,
gobject-introspection,
askalono,
borgbackup,
writeText,
postgresqlTestHook,
postgresql,
redisTestHook,
fontconfig,
nixosTests,
# runtime inputs
gitSVN,
subversion,
#optional runtime inputs
git-review,
tesseract,
licensee,
mercurial,
openssh,
}:
let
python = python3.override {
packageOverrides = final: prev: {
packageOverrides = _final: prev: {
django = prev.django_5;
};
};
@@ -40,6 +54,10 @@ python.pkgs.buildPythonApplication rec {
hash = "sha256-qNv3aaPyQ/bOrPbK7u9vtq8R1MFqXLJzvLUZfVgjMK0=";
};
postPatch = ''
sed -i 's|/bin/true|true|g' weblate/addons/example_pre.py
'';
build-system = with python.pkgs; [ setuptools ];
nativeBuildInputs = [ gettext ];
@@ -54,14 +72,14 @@ python.pkgs.buildPythonApplication rec {
# So we don't need postgres dependencies
DATABASES = {}
'';
manage = "DJANGO_SETTINGS_MODULE='weblate.settings_static' ${python.pythonOnBuildForHost.interpreter} manage.py";
in
''
mkdir $static
cat weblate/settings_example.py ${staticSettings} > weblate/settings_static.py
export DJANGO_SETTINGS_MODULE="weblate.settings_static"
${python.pythonOnBuildForHost.interpreter} manage.py compilemessages
${python.pythonOnBuildForHost.interpreter} manage.py collectstatic --no-input
${python.pythonOnBuildForHost.interpreter} manage.py compress
${manage} compilemessages
${manage} collectstatic --no-input
${manage} compress
'';
pythonRelaxDeps = [
@@ -152,8 +170,30 @@ python.pkgs.buildPythonApplication rec {
++ urllib3.optional-dependencies.brotli
++ urllib3.optional-dependencies.zstd;
optional-dependencies = {
postgres = with python.pkgs; [ psycopg ];
# Commented entries are not packaged yet
optional-dependencies = with python.pkgs; {
alibaba = [
aliyun-python-sdk-alimt
aliyun-python-sdk-core
];
amazon = [ boto3 ];
# antispam = [ python-akismet ];
# gelf = [ logging-gelf ];
# gerrit = [ git-review ];
google = [
google-cloud-storage
google-cloud-translate
];
ldap = [ django-auth-ldap ];
# mercurial = [ mercurial ];
mysql = [ mysqlclient ];
openai = [ openai ];
postgres = [ psycopg ];
saml = [ python3-saml ];
# saml2idp = [ djangosaml2idp ];
# wlhosted = [ wlhosted ];
wsgi = [ granian ];
# zxcvbn = [ django-zxcvbn-password-validator ];
};
# We don't just use wrapGAppsNoGuiHook because we need to expose GI_TYPELIB_PATH
@@ -167,6 +207,69 @@ python.pkgs.buildPythonApplication rec {
];
makeWrapperArgs = [ "--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\"" ];
nativeCheckInputs =
with python.pkgs;
[
pytestCheckHook
postgresqlTestHook
postgresql
redisTestHook
pytest-cov-stub
pytest-django
pytest-xdist
responses
respx
selenium
standardwebhooks
gitSVN
subversion
gettext
fontconfig
borgbackup
#optional
git-review
tesseract
licensee
mercurial
openssh
]
++ social-auth-core.optional-dependencies.saml
++ (lib.concatLists (builtins.attrValues optional-dependencies));
env = {
CI_DATABASE = "postgresql";
DJANGO_SETTINGS_MODULE = "weblate.settings_test";
# Only needed to make weblate/settings_test.py happy
CI_DB_PORT = "";
CI_DB_PASSWORD = "";
CI_REDIS_HOST = "";
CI_REDIS_PORT = "";
};
# pytest-xdist wants to create an additional database per test group
postgresqlTestUserOptions = "LOGIN SUPERUSER";
postgresqlTestSetupPost = ''
export CI_DB_HOST="$PGHOST"
export CI_DB_USER="$PGUSER"
export CI_DB_NAME="$PGDATABASE"
echo "CACHES[\"avatar\"][\"LOCATION\"] = \"unix://$NIX_BUILD_TOP/run/redis.sock\"" \
>> weblate/settings_test.py
${python.pythonOnBuildForHost.interpreter} manage.py migrate --noinput
${python.pythonOnBuildForHost.interpreter} manage.py check
'';
disabledTests = [
# Tries to download things from GitHub
"test_ocr"
"test_ocr_backend"
];
passthru = {
inherit python;
# We need to expose this so weblate can work outside of calling its bin output
+2 -2
View File
@@ -8,13 +8,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "xmake";
version = "3.0.6";
version = "3.0.7";
src = fetchFromGitHub {
owner = "xmake-io";
repo = "xmake";
tag = "v${finalAttrs.version}";
hash = "sha256-uQeq9VMwvU4PnY+w+6Z/qivTIKPgSxuQu6bZgKn/AQM=";
hash = "sha256-SmvkdAo0XZF8RMP039kkmJxx3pwSPxKj3k8ScfTfYb8=";
fetchSubmodules = true;
};
+5 -5
View File
@@ -12,7 +12,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "dart";
version = "3.10.9";
version = "3.11.0";
src =
let
@@ -26,10 +26,10 @@ stdenv.mkDerivation (finalAttrs: {
aarch64-darwin = "macos-arm64";
};
hash = selectSystem {
x86_64-linux = "sha256-1DudOiG4LvKjfTGUW5nmuI9fjcROwZG0c/1inXjQuZQ=";
aarch64-linux = "sha256-Z8mPnmppTtPLNiY0Ny1pRzBAs3EoNtQsr82zxWwKBOs=";
x86_64-darwin = "sha256-pd37vWDOIKGdek/CuUSH7sVyiKqlLOW6GLT4IkzkwYA=";
aarch64-darwin = "sha256-99gMhvkzSJmYEsGuD3kBN1e3l685Xyy6cNICegC+Vk4=";
x86_64-linux = "sha256-8xcptWe+MYx8wjva/muamX+n3b+CnfUBbwZiJ7aqDJk=";
aarch64-linux = "sha256-dr/vXICcCCF332xRu/SADY1NdV8ulvt1Fiv40rAy74M=";
x86_64-darwin = "sha256-Wlwpx6g4EmkzKAEyaxHMrc8M/nMB7QGj8G6BdmvLjXQ=";
aarch64-darwin = "sha256-IjJFpC6rG4EeUC4VYluGcHX/4BLenrU3Skzd4u4IdTQ=";
};
in
fetchurl {
@@ -1,5 +1,5 @@
{
"version": "3.41.0",
"version": "3.41.1",
"engineVersion": "3452d735bd38224ef2db85ca763d862d6326b17f",
"engineSwiftShaderHash": "sha256-qbtCl2nTpmtp9dnaoXc7rF3RqLnAZEmzw1BzPoCRWrc=",
"engineSwiftShaderRev": "794b0cfce1d828d187637e6d932bae484fbe0976",
@@ -21,7 +21,7 @@
"x86_64-darwin": "sha256-Wlwpx6g4EmkzKAEyaxHMrc8M/nMB7QGj8G6BdmvLjXQ=",
"aarch64-darwin": "sha256-IjJFpC6rG4EeUC4VYluGcHX/4BLenrU3Skzd4u4IdTQ="
},
"flutterHash": "sha256-/rgmV0BMOF3Mlw/9DVEQkptDUXzJCNEYmQX+BIXlyxY=",
"flutterHash": "sha256-qn0r6/JHPN+bFrsxkZ6NvVo3yLFgYnt70LwzsKXNRSk=",
"artifactHashes": {
"android": {
"aarch64-darwin": "sha256-9bjCiMYvcwMMWU8lJdJB+f2P0WxZzzjfs/pUD4qr74g=",
@@ -896,31 +896,31 @@
"dependency": "direct dev",
"description": {
"name": "test",
"sha256": "77cc98ea27006c84e71a7356cf3daf9ddbde2d91d84f77dbfe64cf0e4d9611ae",
"sha256": "54c516bbb7cee2754d327ad4fca637f78abfc3cbcc5ace83b3eda117e42cd71a",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "1.28.0"
"version": "1.29.0"
},
"test_api": {
"dependency": "direct main",
"description": {
"name": "test_api",
"sha256": "19a78f63e83d3a61f00826d09bc2f60e191bf3504183c001262be6ac75589fb8",
"sha256": "93167629bfc610f71560ab9312acdda4959de4df6fac7492c89ff0d3886f6636",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.7.8"
"version": "0.7.9"
},
"test_core": {
"dependency": "direct main",
"description": {
"name": "test_core",
"sha256": "f1072617a6657e5fc09662e721307f7fb009b4ed89b19f47175d11d5254a62d4",
"sha256": "394f07d21f0f2255ec9e3989f21e54d3c7dc0e6e9dbce160e5a9c1a6be0e2943",
"url": "https://pub.dev"
},
"source": "hosted",
"version": "0.6.14"
"version": "0.6.15"
},
"typed_data": {
"dependency": "direct main",
@@ -0,0 +1,37 @@
{
lib,
aliyun-python-sdk-core,
buildPythonPackage,
fetchPypi,
setuptools,
}:
buildPythonPackage rec {
pname = "aliyun-python-sdk-alimt";
version = "3.2.0";
format = "pyproject";
# Upstream doesn't tag releases on Github
# https://github.com/aliyun/aliyun-openapi-python-sdk/issues/551
src = fetchPypi {
inherit pname version;
hash = "sha256-oz8PNY/j6xE7pY91F8O5ed2j02q8tFl1A/u9Q5fYbuA=";
};
build-system = [ setuptools ];
dependencies = [ aliyun-python-sdk-core ];
# All components are stored in a mono repo
doCheck = false;
pythonImportsCheck = [ "aliyunsdkalimt" ];
meta = {
description = "ALIMT module of Aliyun Python SDK";
homepage = "https://github.com/aliyun/aliyun-openapi-python-sdk";
changelog = "https://github.com/aliyun/aliyun-openapi-python-sdk/blob/master/aliyun-python-sdk-sts/ChangeLog.txt";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ erictapen ];
};
}
@@ -38,14 +38,14 @@
buildPythonPackage (finalAttrs: {
pname = "anthropic";
version = "0.78.0";
version = "0.79.0";
pyproject = true;
src = fetchFromGitHub {
owner = "anthropics";
repo = "anthropic-sdk-python";
tag = "v${finalAttrs.version}";
hash = "sha256-IN+vlP10KxkuzTgGRKr2k7hBnGTGFWdsW9ams6W+7Ak=";
hash = "sha256-//VKkn9M2uOj8PBoWTY872ZOyTc+OjBgEUGtKsYDWpk=";
};
postPatch = ''
@@ -2,6 +2,7 @@
lib,
fetchPypi,
buildPythonPackage,
pythonAtLeast,
pytestCheckHook,
dotnetCorePackages,
setuptools,
@@ -19,11 +20,19 @@ let
inherit version;
hash = "sha256-gfEUr7xQBbr8Xv5a8TQdQA4iE34nWwQqiXnz/rn8lEY=";
};
patches = [ ./dotnet-8-upgrade.patch ];
# This stops msbuild from picking up $version from the environment
postPatch = ''
echo '<Project><PropertyGroup><Version/></PropertyGroup></Project>' > \
Directory.Build.props
substituteInPlace example/example.csproj \
--replace-fail 'net8.0;netstandard2.0' 'net10.0;netstandard2.0'
substituteInPlace tests/test_common.py \
--replace-fail 'return build_example(tmp_path_factory, "net8.0")' \
'return build_example(tmp_path_factory, "net10.0")' \
--replace-fail 'def test_coreclr_properties(example_netcore: Path):' \
'def test_coreclr_properties(example_netcore: Path, example_netstandard: Path):'
'';
# This buildDotnetModule is used only to get nuget sources, the actual
@@ -33,7 +42,6 @@ let
pname
version
src
patches
postPatch
;
projectFile = [
@@ -41,7 +49,7 @@ let
"example/example.csproj"
];
nugetDeps = ./deps.json;
dotnet-sdk = dotnetCorePackages.sdk_8_0;
dotnet-sdk = dotnetCorePackages.sdk_10_0;
};
in
buildPythonPackage {
@@ -49,19 +57,20 @@ buildPythonPackage {
pname
version
src
patches
postPatch
;
disabled = pythonAtLeast "3.14";
pyproject = true;
buildInputs = dotnetCorePackages.sdk_8_0.packages ++ dotnet-build.nugetDeps;
buildInputs = dotnetCorePackages.sdk_10_0.packages ++ dotnet-build.nugetDeps;
nativeBuildInputs = [
setuptools
setuptools-scm
wheel
dotnetCorePackages.sdk_8_0
dotnetCorePackages.sdk_10_0
];
propagatedBuildInputs = [ cffi ];
@@ -94,6 +103,5 @@ buildPythonPackage {
homepage = "https://pythonnet.github.io/clr-loader/";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ mdarocha ];
broken = true;
};
}
+10 -5
View File
@@ -9,15 +9,20 @@
"version": "1.0.0",
"hash": "sha256-6faPQ4jaFY3OGGVk3lZKW+DEZaIOBZ/wHqbiDTsRR1k="
},
{
"pname": "Microsoft.NETFramework.ReferenceAssemblies",
"version": "1.0.3",
"hash": "sha256-FBoJP5DHZF0QHM0xLm9yd4HJZVQOuSpSKA+VQRpphEE="
},
{
"pname": "Microsoft.NETFramework.ReferenceAssemblies.net461",
"version": "1.0.0",
"hash": "sha256-oS7sUMzKBkLmhggqbI6eBqb1OPAipH0TDTaDaBixcwM="
},
{
"pname": "Microsoft.NETFramework.ReferenceAssemblies.net47",
"version": "1.0.0",
"hash": "sha256-Jh40dua+AQpSUGTOCQG493sJzbfqH+yIgyoA6+A1ZQM="
"pname": "Microsoft.NETFramework.ReferenceAssemblies.net472",
"version": "1.0.3",
"hash": "sha256-/6ClVwo5+RE5kWTQWB/93vmbXj37ql8iDlziKWm89Xw="
},
{
"pname": "NETStandard.Library",
@@ -26,7 +31,7 @@
},
{
"pname": "NXPorts",
"version": "1.0.0",
"hash": "sha256-kpqQDljgsCBRDqbuJkgwClG3dkgjrBAhtXoPZlJR+ws="
"version": "1.1.0",
"hash": "sha256-etygV3Z2OnkrErt/1WVMHCGuvO00YtxxfFmp0W7x6is="
}
]
@@ -1,31 +0,0 @@
diff --git a/example/example.csproj b/example/example.csproj
index fd6d566..ed76d15 100644
--- a/example/example.csproj
+++ b/example/example.csproj
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
- <TargetFrameworks>net60;netstandard20</TargetFrameworks>
+ <TargetFrameworks>net8.0;netstandard2.0</TargetFrameworks>
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
</PropertyGroup>
<ItemGroup>
diff --git a/tests/test_common.py b/tests/test_common.py
index 8a9e36d..8370024 100644
--- a/tests/test_common.py
+++ b/tests/test_common.py
@@ -8,12 +8,12 @@ from pathlib import Path
@pytest.fixture(scope="session")
def example_netstandard(tmpdir_factory):
- return build_example(tmpdir_factory, "netstandard20")
+ return build_example(tmpdir_factory, "netstandard2.0")
@pytest.fixture(scope="session")
def example_netcore(tmpdir_factory):
- return build_example(tmpdir_factory, "net60")
+ return build_example(tmpdir_factory, "net8.0")
def build_example(tmpdir_factory, framework):
@@ -15,14 +15,14 @@
buildPythonPackage rec {
pname = "pysmlight";
version = "0.2.13";
version = "0.2.14";
pyproject = true;
src = fetchFromGitHub {
owner = "smlight-tech";
repo = "pysmlight";
tag = "v${version}";
hash = "sha256-59LrSNI9/F7mtlBNILOJIBzqPcX2ivWQR2Cf/otMlzM=";
hash = "sha256-SFWeWIzMTKCXQ1GPBLJrP1xJaKaZr7UKRkfmIcePYPY=";
};
build-system = [
@@ -2,10 +2,11 @@
lib,
fetchFromGitHub,
buildPythonPackage,
pythonAtLeast,
pytestCheckHook,
pycparser,
psutil,
dotnet-sdk_6,
dotnet-sdk_10,
buildDotnetModule,
clr-loader,
setuptools,
@@ -28,24 +29,39 @@ let
projectFile = "src/runtime/Python.Runtime.csproj";
testProjectFile = "src/testing/Python.Test.csproj";
nugetDeps = ./deps.json;
dotnet-sdk = dotnet-sdk_6;
dotnet-sdk = dotnet-sdk_10;
};
in
buildPythonPackage {
inherit pname version src;
disabled = pythonAtLeast "3.14";
pyproject = true;
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'dynamic = ["version"]' 'version = "${version}"'
--replace-fail 'dynamic = ["version"]' 'version = "${version}"'
# .NET SDK 10 uses a newer toolchain that triggers NonCopyableAnalyzer failures
# in this release; disable analyzers for the Nix build to keep the package building.
substituteInPlace Directory.Build.props \
--replace-fail '</PropertyGroup>' $' <RunAnalyzers>false</RunAnalyzers>\n </PropertyGroup>'
# Tests (run with --runtime=coreclr) need a CoreCLR target; net6.0 requires a
# runtime that isn't shipped with the .NET 10 SDK, so target net10.0 instead.
substituteInPlace src/testing/Python.Test.csproj \
--replace-fail 'netstandard2.0;net6.0' 'netstandard2.0;net10.0'
substituteInPlace tests/conftest.py \
--replace-fail ' # fw = "net6.0"' ' fw = "net10.0"'
'';
buildInputs = dotnet-build.nugetDeps;
nativeBuildInputs = [
setuptools
dotnet-sdk_6
dotnet-sdk_10
];
propagatedBuildInputs = [
+1
View File
@@ -2,4 +2,5 @@ import ./generic.nix {
version = "1.8.6";
hash = "sha256-+NZs8HHHmWGmlNNymIlbV7E28RiaGLmvtZkCWZJQvMk=";
cargoHash = "sha256-NKCQRIxvWAT5saMO85noYZtm7h0OPFhWFqudvkQPYTE=";
eolDate = "2026-03-16";
}
+2 -2
View File
@@ -1,5 +1,5 @@
import ./generic.nix {
version = "1.9.0-pre";
hash = "sha256-p+dZWG9czUtK7IaifM/1CbXfpLhKPBflL/uDqHtHwHA=";
version = "1.9.0";
hash = "sha256-PAYD+CSvDVtx5SFRtTogbu7Az+9WFVeFL/76Dr/pOog=";
cargoHash = "sha256-razlbe5VEiWz427dShvWT/rVuvBh5Re/z1vXsVQGOgM=";
}
+2
View File
@@ -642,6 +642,8 @@ self: super: with self; {
alive-progress = callPackage ../development/python-modules/alive-progress { };
aliyun-python-sdk-alimt = callPackage ../development/python-modules/aliyun-python-sdk-alimt { };
aliyun-python-sdk-cdn = callPackage ../development/python-modules/aliyun-python-sdk-cdn { };
aliyun-python-sdk-config = callPackage ../development/python-modules/aliyun-python-sdk-config { };