Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot] 2025-07-13 12:06:24 +00:00 committed by GitHub
commit a82a7e5045
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
59 changed files with 535 additions and 232 deletions

View File

@ -209,11 +209,14 @@
*/ */
legacyPackages = forAllSystems ( legacyPackages = forAllSystems (
system: system:
(import ./. { inherit system; }).extend ( (import ./. {
final: prev: { inherit system;
lib = prev.lib.extend libVersionInfoOverlay; overlays = import ./pkgs/top-level/impure-overlays.nix ++ [
} (final: prev: {
) lib = prev.lib.extend libVersionInfoOverlay;
})
];
})
); );
/** /**

View File

@ -894,7 +894,7 @@ in
${lib.concatStringsSep "\n" ( ${lib.concatStringsSep "\n" (
lib.mapAttrsToList (to: from: '' lib.mapAttrsToList (to: from: ''
ln -sf ${from} /var/lib/postfix/conf/${to} ln -sf ${from} /var/lib/postfix/conf/${to}
${pkgs.postfix}/bin/postmap /var/lib/postfix/conf/${to} ${pkgs.postfix}/bin/postmap -o -p /var/lib/postfix/conf/${to}
'') cfg.mapFiles '') cfg.mapFiles
)} )}

View File

@ -37,6 +37,7 @@ in
libX11, libX11,
vmopts ? null, vmopts ? null,
forceWayland ? false,
}: }:
let let
@ -83,9 +84,13 @@ let
inherit inherit
pname pname
jdk jdk
extraWrapperArgs
extraBuildInputs extraBuildInputs
; ;
extraWrapperArgs =
extraWrapperArgs
++ lib.optionals (stdenv.hostPlatform.isLinux && forceWayland) [
''--add-flags "\''${WAYLAND_DISPLAY:+-Dawt.toolkit.name=WLToolkit}"''
];
extraLdPath = extraLdPath ++ lib.optionals (stdenv.hostPlatform.isLinux) [ libGL ]; extraLdPath = extraLdPath ++ lib.optionals (stdenv.hostPlatform.isLinux) [ libGL ];
src = src =
if fromSource then if fromSource then

View File

@ -5,13 +5,13 @@
}: }:
mkLibretroCore { mkLibretroCore {
core = "dosbox-pure"; core = "dosbox-pure";
version = "0-unstable-2025-06-16"; version = "0-unstable-2025-07-10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "schellingb"; owner = "schellingb";
repo = "dosbox-pure"; repo = "dosbox-pure";
rev = "8c48d34327f5ffc44892899cf2567feaa9bbf72a"; rev = "92894e7bdb6304d23278dc77f8a9fa7212450f6e";
hash = "sha256-u5kxj4Sl7LpivEuNhTec8Z2u3Dw/X8xFDBQ++hQAtFc="; hash = "sha256-uA/pm3DyT0VCyq85DzZGXjSGrKQ9uoEIfrs839ta97s=";
}; };
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];

View File

@ -14,13 +14,13 @@
}: }:
mkLibretroCore { mkLibretroCore {
core = "play"; core = "play";
version = "0-unstable-2025-07-01"; version = "0-unstable-2025-07-09";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jpd002"; owner = "jpd002";
repo = "Play-"; repo = "Play-";
rev = "5fa3b71304aec0d2a70569bd38c87433f719e6ce"; rev = "ae9afb4e45e8de35382fb98c55d13dec9fcf8ed8";
hash = "sha256-t61xAqghmOmZJzAxU2Ez1ALQ8jjuHZKwmrNoRA9L+4k="; hash = "sha256-HWKhgGChPGhRmrXXbjEvBt0coGpQ1JAPUTd8Ze4yKww=";
fetchSubmodules = true; fetchSubmodules = true;
}; };

View File

@ -6,14 +6,14 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "gersemi"; pname = "gersemi";
version = "0.19.3"; version = "0.20.1";
format = "pyproject"; format = "pyproject";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "BlankSpruce"; owner = "BlankSpruce";
repo = "gersemi"; repo = "gersemi";
tag = version; tag = version;
hash = "sha256-CVb6ibO5+Tp0o+nB+bo9G9OKyB4L05wN1QiB9J4bOqY="; hash = "sha256-6lBUP+xi0owlD33TLTOlaIFBcfWTnsniK/9cQdo/ND4=";
}; };
build-system = with python3Packages; [ build-system = with python3Packages; [

View File

@ -11,13 +11,13 @@
buildNpmPackage rec { buildNpmPackage rec {
pname = "ghostfolio"; pname = "ghostfolio";
version = "2.176.0"; version = "2.181.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ghostfolio"; owner = "ghostfolio";
repo = "ghostfolio"; repo = "ghostfolio";
tag = version; tag = version;
hash = "sha256-T14omi5NkMCrqiXF+gSi6ELEdfH4QMp7luJtuCWhGM4="; hash = "sha256-+oDR+VSR0bGbTJIqNCe1WN1QWm+sEtMIuy/mNhumeyk=";
# populate values that require us to use git. By doing this in postFetch we # populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src. # can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true; leaveDotGit = true;
@ -27,7 +27,7 @@ buildNpmPackage rec {
''; '';
}; };
npmDepsHash = "sha256-0vFH4gdrtaBca1lWxm2uZ1VerP4hJEJgBQzygDbja3I="; npmDepsHash = "sha256-vcn9vhpQlacfIxHFt8G67aB91nTr9IClvA9pb+4XFFI=";
nativeBuildInputs = [ nativeBuildInputs = [
prisma prisma

View File

@ -42,11 +42,11 @@ let
in in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "haproxy"; pname = "haproxy";
version = "3.2.1"; version = "3.2.3";
src = fetchurl { src = fetchurl {
url = "https://www.haproxy.org/download/${lib.versions.majorMinor finalAttrs.version}/src/haproxy-${finalAttrs.version}.tar.gz"; url = "https://www.haproxy.org/download/${lib.versions.majorMinor finalAttrs.version}/src/haproxy-${finalAttrs.version}.tar.gz";
hash = "sha256-uz+Wenl8iFHQhoPsQ9+v5K179a2G+msHIcrQM+qeWuU="; hash = "sha256-r472Qoa93ckyMsXb5OpDaozLXchBfPoeiFvsUohPk0c=";
}; };
buildInputs = buildInputs =

View File

@ -41,13 +41,13 @@ let
in in
effectiveStdenv.mkDerivation (finalAttrs: { effectiveStdenv.mkDerivation (finalAttrs: {
pname = "koboldcpp"; pname = "koboldcpp";
version = "1.94"; version = "1.95.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "LostRuins"; owner = "LostRuins";
repo = "koboldcpp"; repo = "koboldcpp";
tag = "v${finalAttrs.version}"; tag = "v${finalAttrs.version}";
hash = "sha256-qWH8yGjDTkMPLHjfMopfQKyBA5T1HHgllEH9Joceq3s="; hash = "sha256-aoVOEPK3hPuzkrHIFvDrnAw2D/OxXlRLXXP0CZJghx4=";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "luau"; pname = "luau";
version = "0.681"; version = "0.682";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "luau-lang"; owner = "luau-lang";
repo = "luau"; repo = "luau";
tag = finalAttrs.version; tag = finalAttrs.version;
hash = "sha256-pqKvh08AybuVATNQOzV14wI0GsOVzxskgeol1JA9dg8="; hash = "sha256-yHmcUDBgNKcOg6ZW/fP7ZatdkCgG1y1ECRUbnZ7wHZY=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication { python3Packages.buildPythonApplication {
pname = "macpm"; pname = "macpm";
version = "0.24-unstable-2024-11-19"; version = "0.24-unstable-2024-11-19";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "visualcjy"; owner = "visualcjy";
@ -17,6 +17,16 @@ python3Packages.buildPythonApplication {
hash = "sha256-jqaPPvYbuL8q6grmBLyZLf8aDmjugYxMOWAh1Ix82jc="; hash = "sha256-jqaPPvYbuL8q6grmBLyZLf8aDmjugYxMOWAh1Ix82jc=";
}; };
build-system = with python3Packages; [
setuptools
];
dependencies = with python3Packages; [
dashing
humanize
psutil
];
# has no tests # has no tests
doCheck = false; doCheck = false;
@ -25,11 +35,7 @@ python3Packages.buildPythonApplication {
ln -rs $out/bin/macpm $out/bin/asitop ln -rs $out/bin/macpm $out/bin/asitop
''; '';
dependencies = with python3Packages; [ pythonImportsCheck = [ "macpm" ];
dashing
humanize
psutil
];
meta = { meta = {
description = "Perf monitoring CLI tool for Apple Silicon; previously named 'asitop'"; description = "Perf monitoring CLI tool for Apple Silicon; previously named 'asitop'";

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "mapproxy"; pname = "mapproxy";
version = "5.0.0"; version = "5.0.0";
format = "setuptools"; pyproject = true;
disabled = python3Packages.pythonOlder "3.8"; disabled = python3Packages.pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
@ -22,6 +22,10 @@ python3Packages.buildPythonApplication rec {
substituteInPlace mapproxy/util/ext/serving.py --replace-warn "args = [sys.executable] + sys.argv" "args = sys.argv" substituteInPlace mapproxy/util/ext/serving.py --replace-warn "args = [sys.executable] + sys.argv" "args = sys.argv"
''; '';
build-system = with python3Packages; [ setuptools ];
pythonRemoveDeps = [ "future" ];
dependencies = with python3Packages; [ dependencies = with python3Packages; [
boto3 # needed for caches service boto3 # needed for caches service
jsonschema jsonschema
@ -31,7 +35,6 @@ python3Packages.buildPythonApplication rec {
shapely shapely
gdal gdal
lxml lxml
setuptools
werkzeug werkzeug
]; ];
@ -40,6 +43,8 @@ python3Packages.buildPythonApplication rec {
# https://github.com/mapproxy/mapproxy/blob/master/requirements-tests.txt # https://github.com/mapproxy/mapproxy/blob/master/requirements-tests.txt
doCheck = false; doCheck = false;
pythonImportsCheck = [ "mapproxy" ];
meta = { meta = {
description = "Open source proxy for geospatial data"; description = "Open source proxy for geospatial data";
homepage = "https://mapproxy.org/"; homepage = "https://mapproxy.org/";

View File

@ -7,7 +7,7 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "mastodon-archive"; pname = "mastodon-archive";
version = "1.4.2"; version = "1.4.2";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kensanata"; owner = "kensanata";
@ -16,7 +16,11 @@ python3.pkgs.buildPythonApplication rec {
hash = "sha256-b4bYQshz7mwxEfpRYV7ze4C8hz58R9cVp58wHvGFb0A="; hash = "sha256-b4bYQshz7mwxEfpRYV7ze4C8hz58R9cVp58wHvGFb0A=";
}; };
propagatedBuildInputs = with python3.pkgs; [ build-system = with python3.pkgs; [
setuptools
];
dependencies = with python3.pkgs; [
html2text html2text
mastodon-py mastodon-py
progress progress
@ -25,6 +29,8 @@ python3.pkgs.buildPythonApplication rec {
# There is no test # There is no test
doCheck = false; doCheck = false;
pythonImportsCheck = [ "mastodon_archive" ];
meta = with lib; { meta = with lib; {
description = "Utility for backing up your Mastodon content"; description = "Utility for backing up your Mastodon content";
mainProgram = "mastodon-archive"; mainProgram = "mastodon-archive";

View File

@ -7,7 +7,7 @@
python3.pkgs.buildPythonPackage rec { python3.pkgs.buildPythonPackage rec {
pname = "md-tangle"; pname = "md-tangle";
version = "1.4.4"; version = "1.4.4";
format = "setuptools"; pyproject = true;
# By some strange reason, fetchPypi fails miserably # By some strange reason, fetchPypi fails miserably
src = fetchFromGitHub { src = fetchFromGitHub {
@ -17,10 +17,14 @@ python3.pkgs.buildPythonPackage rec {
hash = "sha256-PkOKSsyY8uwS4mhl0lB+KGeUvXfEc7PUDHZapHMYv4c="; hash = "sha256-PkOKSsyY8uwS4mhl0lB+KGeUvXfEc7PUDHZapHMYv4c=";
}; };
build-system = with python3.pkgs; [ setuptools ];
# Pure Python application, uses only standard modules and comes without # Pure Python application, uses only standard modules and comes without
# testing suite # testing suite
doCheck = false; doCheck = false;
pythonImportsCheck = [ "md_tangle" ];
meta = with lib; { meta = with lib; {
homepage = "https://github.com/joakimmj/md-tangle/"; homepage = "https://github.com/joakimmj/md-tangle/";
description = "Generates (\"tangles\") source code from Markdown documents"; description = "Generates (\"tangles\") source code from Markdown documents";

View File

@ -7,7 +7,7 @@
python3Packages.buildPythonApplication { python3Packages.buildPythonApplication {
pname = "mdslides"; pname = "mdslides";
version = "unstable-2022-12-15"; version = "unstable-2022-12-15";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dadoomer"; owner = "dadoomer";
@ -16,8 +16,12 @@ python3Packages.buildPythonApplication {
sha256 = "sha256-31ALsy1P/vfI+H6Onmg4TXLeKbVAQ1FlnFs4k6ZOgHQ="; sha256 = "sha256-31ALsy1P/vfI+H6Onmg4TXLeKbVAQ1FlnFs4k6ZOgHQ=";
}; };
build-system = with python3Packages; [ setuptools ];
doCheck = false; doCheck = false;
pythonImportsCheck = [ "mdslides" ];
meta = with lib; { meta = with lib; {
longDescription = "Using markdown, write simple but beautiful presentations with math, animations and media, which can be visualized in a web browser or exported to PDF."; longDescription = "Using markdown, write simple but beautiful presentations with math, animations and media, which can be visualized in a web browser or exported to PDF.";
homepage = "https://github.com/dadoomer/markdown-slides"; homepage = "https://github.com/dadoomer/markdown-slides";

View File

@ -7,7 +7,7 @@
python3.pkgs.buildPythonPackage rec { python3.pkgs.buildPythonPackage rec {
pname = "me_cleaner"; pname = "me_cleaner";
version = "1.2"; version = "1.2";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "corna"; owner = "corna";
@ -16,6 +16,8 @@ python3.pkgs.buildPythonPackage rec {
sha256 = "1bdj2clm13ir441vn7sv860xsc5gh71ja5lc2wn0gggnff0adxj4"; sha256 = "1bdj2clm13ir441vn7sv860xsc5gh71ja5lc2wn0gggnff0adxj4";
}; };
build-system = with python3.pkgs; [ setuptools ];
meta = with lib; { meta = with lib; {
inherit (src.meta) homepage; inherit (src.meta) homepage;
description = "Tool for partial deblobbing of Intel ME/TXE firmware images"; description = "Tool for partial deblobbing of Intel ME/TXE firmware images";

View File

@ -12,30 +12,25 @@ in
python3Packages.buildPythonApplication { python3Packages.buildPythonApplication {
pname = "mimeo"; pname = "mimeo";
inherit version; inherit version;
format = "setuptools"; pyproject = true;
src = fetchurl { src = fetchurl {
url = "https://xyne.dev/projects/mimeo/src/mimeo-${version}.tar.xz"; url = "https://xyne.dev/projects/mimeo/src/mimeo-${version}.tar.xz";
hash = "sha256-CahvSypwR1aHVDHTdtty1ZfaKBWPolxc73uZ5OyeqZA="; hash = "sha256-CahvSypwR1aHVDHTdtty1ZfaKBWPolxc73uZ5OyeqZA=";
}; };
buildInputs = [ build-system = [ python3Packages.setuptools ];
file
desktop-file-utils
];
propagatedBuildInputs = [ python3Packages.pyxdg ]; dependencies = [ python3Packages.pyxdg ];
preConfigure = '' postPatch = ''
substituteInPlace Mimeo.py \ substituteInPlace Mimeo.py \
--replace "EXE_UPDATE_DESKTOP_DATABASE = 'update-desktop-database'" \ --replace-fail "EXE_UPDATE_DESKTOP_DATABASE = 'update-desktop-database'" \
"EXE_UPDATE_DESKTOP_DATABASE = '${desktop-file-utils}/bin/update-desktop-database'" \ "EXE_UPDATE_DESKTOP_DATABASE = '${desktop-file-utils}/bin/update-desktop-database'" \
--replace "EXE_FILE = 'file'" \ --replace-fail "EXE_FILE = 'file'" \
"EXE_FILE = '${file}/bin/file'" "EXE_FILE = '${file}/bin/file'"
''; '';
installPhase = "install -Dm755 Mimeo.py $out/bin/mimeo";
doInstallCheck = true; doInstallCheck = true;
installCheckPhase = '' installCheckPhase = ''
$out/bin/mimeo --help > /dev/null $out/bin/mimeo --help > /dev/null

View File

@ -7,16 +7,19 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "mlarchive2maildir"; pname = "mlarchive2maildir";
version = "0.0.9"; version = "0.0.9";
format = "setuptools"; pyproject = true;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "02zjwa7zbcbqj76l0qmg7bbf3fqli60pl2apby3j4zwzcrrryczs"; sha256 = "02zjwa7zbcbqj76l0qmg7bbf3fqli60pl2apby3j4zwzcrrryczs";
}; };
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ]; build-system = with python3.pkgs; [
setuptools
setuptools-scm
];
propagatedBuildInputs = with python3.pkgs; [ dependencies = with python3.pkgs; [
beautifulsoup4 beautifulsoup4
click click
click-log click-log
@ -24,6 +27,8 @@ python3.pkgs.buildPythonApplication rec {
six six
]; ];
pythonImportsCheck = [ "mlarchive2maildir" ];
meta = with lib; { meta = with lib; {
homepage = "https://github.com/flokli/mlarchive2maildir"; homepage = "https://github.com/flokli/mlarchive2maildir";
description = "Imports mail from (pipermail) archives into a maildir"; description = "Imports mail from (pipermail) archives into a maildir";

View File

@ -7,19 +7,18 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "mloader"; pname = "mloader";
version = "1.1.12"; version = "1.1.12";
format = "setuptools"; pyproject = true;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-0o4FvhuFudNSEL6fwBVqxldaNePbbidY9utDqXiLRNc="; hash = "sha256-0o4FvhuFudNSEL6fwBVqxldaNePbbidY9utDqXiLRNc=";
}; };
postPatch = '' build-system = with python3Packages; [ setuptools ];
substituteInPlace setup.py \
--replace "protobuf~=3.6" "protobuf"
'';
propagatedBuildInputs = with python3Packages; [ pythonRelaxDeps = [ "protobuf" ];
dependencies = with python3Packages; [
click click
protobuf protobuf
requests requests

View File

@ -26,13 +26,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "mold"; pname = "mold";
version = "2.40.1"; version = "2.40.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rui314"; owner = "rui314";
repo = "mold"; repo = "mold";
tag = "v${finalAttrs.version}"; tag = "v${finalAttrs.version}";
hash = "sha256-161ATZkgoipFMRcI4x4TNqxbyWxM75Cmo/rL4Hn1JFQ="; hash = "sha256-Db2IxHCQWb6JdJROi+nOi0pV4zb+8/TcFrJWUCdH6N8=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -7,7 +7,7 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "mongoaudit"; pname = "mongoaudit";
version = "0.1.1"; version = "0.1.1";
format = "setuptools"; pyproject = true;
disabled = python3.pythonOlder "3.8"; disabled = python3.pythonOlder "3.8";
@ -18,7 +18,11 @@ python3.pkgs.buildPythonApplication rec {
sha256 = "17k4vw5d3kr961axl49ywid4cf3n7zxvm885c4lv15w7s2al1425"; sha256 = "17k4vw5d3kr961axl49ywid4cf3n7zxvm885c4lv15w7s2al1425";
}; };
propagatedBuildInputs = with python3.pkgs; [ build-system = with python3.pkgs; [
setuptools
];
dependencies = with python3.pkgs; [
pymongo pymongo
setuptools setuptools
urwid urwid

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "moodle-dl"; pname = "moodle-dl";
version = "2.3.13"; version = "2.3.13";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "C0D3D3V"; owner = "C0D3D3V";
@ -17,7 +17,9 @@ python3Packages.buildPythonApplication rec {
hash = "sha256-6arwc72gu7XyT6HokSEs2TkvE2FG7mIvy4F+/i/0eJg="; hash = "sha256-6arwc72gu7XyT6HokSEs2TkvE2FG7mIvy4F+/i/0eJg=";
}; };
propagatedBuildInputs = with python3Packages; [ build-system = with python3Packages; [ setuptools ];
dependencies = with python3Packages; [
aiodns aiodns
aiofiles aiofiles
aiohttp aiohttp
@ -35,6 +37,8 @@ python3Packages.buildPythonApplication rec {
# upstream has no tests # upstream has no tests
doCheck = false; doCheck = false;
pythonImportsCheck = [ "moodle_dl" ];
passthru.updateScript = gitUpdater { }; passthru.updateScript = gitUpdater { };
meta = with lib; { meta = with lib; {

View File

@ -7,7 +7,7 @@
python3Packages.buildPythonPackage { python3Packages.buildPythonPackage {
pname = "mpfshell-unstable"; pname = "mpfshell-unstable";
version = "2020-04-11"; version = "2020-04-11";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "wendlers"; owner = "wendlers";
@ -16,10 +16,13 @@ python3Packages.buildPythonPackage {
sha256 = "0md6ih9vp65dacqy8gki3b2p4v76xb9ijqmxymk4b4f9z684x2m7"; sha256 = "0md6ih9vp65dacqy8gki3b2p4v76xb9ijqmxymk4b4f9z684x2m7";
}; };
propagatedBuildInputs = with python3Packages; [ build-system = with python3Packages; [ setuptools ];
dependencies = with python3Packages; [
pyserial pyserial
colorama colorama
websocket-client websocket-client
standard-telnetlib # Python no longer provides telnetlib since python313
]; ];
doCheck = false; doCheck = false;

View File

@ -7,7 +7,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "mutmut"; pname = "mutmut";
version = "3.2.0"; version = "3.2.0";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
repo = "mutmut"; repo = "mutmut";
@ -24,7 +24,9 @@ python3Packages.buildPythonApplication rec {
doCheck = false; doCheck = false;
propagatedBuildInputs = with python3Packages; [ build-system = with python3Packages; [ setuptools ];
dependencies = with python3Packages; [
click click
parso parso
junit-xml junit-xml
@ -32,6 +34,8 @@ python3Packages.buildPythonApplication rec {
textual textual
]; ];
pythonImportsCheck = [ "mutmut" ];
meta = { meta = {
description = "mutation testing system for Python, with a strong focus on ease of use"; description = "mutation testing system for Python, with a strong focus on ease of use";
mainProgram = "mutmut"; mainProgram = "mutmut";

View File

@ -4,11 +4,10 @@
fetchPypi, fetchPypi,
}: }:
with python3.pkgs; python3.pkgs.buildPythonApplication rec {
buildPythonApplication rec {
pname = "mutt-ics"; pname = "mutt-ics";
version = "0.9.2"; version = "0.9.2";
format = "setuptools"; pyproject = true;
src = fetchPypi { src = fetchPypi {
inherit version; inherit version;
@ -16,7 +15,11 @@ buildPythonApplication rec {
sha256 = "d44d4bec4e71c7f14df01b90fdb9563cdc784ece4250abfea5b0b675cfe85a50"; sha256 = "d44d4bec4e71c7f14df01b90fdb9563cdc784ece4250abfea5b0b675cfe85a50";
}; };
propagatedBuildInputs = [ icalendar ]; build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [ icalendar ];
pythonImportsCheck = [ "mutt_ics" ];
meta = with lib; { meta = with lib; {
homepage = "https://github.com/dmedvinsky/mutt-ics"; homepage = "https://github.com/dmedvinsky/mutt-ics";

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "mymcplus"; pname = "mymcplus";
version = "3.0.5"; version = "3.0.5";
format = "setuptools"; pyproject = true;
src = fetchFromSourcehut { src = fetchFromSourcehut {
owner = "~thestr4ng3r"; owner = "~thestr4ng3r";
@ -21,11 +21,15 @@ python3Packages.buildPythonApplication rec {
wrapGAppsHook3 wrapGAppsHook3
]; ];
propagatedBuildInputs = with python3Packages; [ build-system = with python3Packages; [ setuptools ];
dependencies = with python3Packages; [
pyopengl pyopengl
wxpython wxpython
]; ];
pythonImportsCheck = [ "mymcplus" ];
meta = with lib; { meta = with lib; {
homepage = "https://git.sr.ht/~thestr4ng3r/mymcplus"; homepage = "https://git.sr.ht/~thestr4ng3r/mymcplus";
description = "PlayStation 2 memory card manager"; description = "PlayStation 2 memory card manager";

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "nagstamon"; pname = "nagstamon";
version = "3.16.2"; version = "3.16.2";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "HenriWahl"; owner = "HenriWahl";

View File

@ -10,7 +10,7 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
version = "0.8.1"; version = "0.8.1";
format = "setuptools"; pyproject = true;
pname = "nbstripout"; pname = "nbstripout";
src = fetchPypi { src = fetchPypi {
@ -25,7 +25,11 @@ python3.pkgs.buildPythonApplication rec {
hash = "sha256-OSJLrWkYQIhcdyofS3Bo39ppsU6K3A4546UKB8Q1GGg="; hash = "sha256-OSJLrWkYQIhcdyofS3Bo39ppsU6K3A4546UKB8Q1GGg=";
}; };
propagatedBuildInputs = with python3.pkgs; [ build-system = with python3.pkgs; [
setuptools
];
dependencies = with python3.pkgs; [
nbformat nbformat
]; ];
@ -53,6 +57,8 @@ python3.pkgs.buildPythonApplication rec {
substituteInPlace tests/test_end_to_end.py --replace "tests/e2e_notebooks" "$TMPDIR/e2e_notebooks" substituteInPlace tests/test_end_to_end.py --replace "tests/e2e_notebooks" "$TMPDIR/e2e_notebooks"
''; '';
pythonImportsCheck = [ "nbstripout" ];
meta = { meta = {
description = "Strip output from Jupyter and IPython notebooks"; description = "Strip output from Jupyter and IPython notebooks";
homepage = "https://github.com/kynan/nbstripout"; homepage = "https://github.com/kynan/nbstripout";

View File

@ -7,7 +7,7 @@
python3.pkgs.buildPythonApplication { python3.pkgs.buildPythonApplication {
pname = "nbutools"; pname = "nbutools";
version = "unstable-2023-06-06"; version = "unstable-2023-06-06";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "airbus-seclab"; owner = "airbus-seclab";
@ -16,7 +16,9 @@ python3.pkgs.buildPythonApplication {
hash = "sha256-YOiFlTIDpeTFOHPU37v0pYf8s3HdaE/4pnd9qrsFtSI="; hash = "sha256-YOiFlTIDpeTFOHPU37v0pYf8s3HdaE/4pnd9qrsFtSI=";
}; };
propagatedBuildInputs = with python3.pkgs; [ build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [
aiodns aiodns
aiohttp aiohttp
beautifulsoup4 beautifulsoup4

View File

@ -8,6 +8,7 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "nemo-emblems"; pname = "nemo-emblems";
version = "6.4.0"; version = "6.4.0";
pyproject = true;
# nixpkgs-update: no auto update # nixpkgs-update: no auto update
src = fetchFromGitHub { src = fetchFromGitHub {
@ -17,18 +18,18 @@ python3.pkgs.buildPythonApplication rec {
hash = "sha256-39hWA4SNuEeaPA6D5mWMHjJDs4hYK7/ZdPkTyskvm5Y="; hash = "sha256-39hWA4SNuEeaPA6D5mWMHjJDs4hYK7/ZdPkTyskvm5Y=";
}; };
format = "setuptools";
sourceRoot = "${src.name}/nemo-emblems"; sourceRoot = "${src.name}/nemo-emblems";
postPatch = '' postPatch = ''
substituteInPlace setup.py \ substituteInPlace setup.py \
--replace "/usr/share" "share" --replace-fail "/usr/share" "share"
substituteInPlace nemo-extension/nemo-emblems.py \ substituteInPlace nemo-extension/nemo-emblems.py \
--replace "/usr/share/locale" "${cinnamon-translations}/share/locale" --replace-fail "/usr/share/locale" "${cinnamon-translations}/share/locale"
''; '';
build-system = with python3.pkgs; [ setuptools ];
meta = with lib; { meta = with lib; {
homepage = "https://github.com/linuxmint/nemo-extensions/tree/master/nemo-emblems"; homepage = "https://github.com/linuxmint/nemo-extensions/tree/master/nemo-emblems";
description = "Change a folder or file emblem in Nemo"; description = "Change a folder or file emblem in Nemo";

View File

@ -1,16 +1,16 @@
{ {
lib, lib,
stdenv,
fetchFromGitHub, fetchFromGitHub,
python3, python3,
neovim, neovim,
fetchpatch, fetchpatch,
}: }:
with python3.pkgs; python3.pkgs.buildPythonApplication rec {
buildPythonApplication rec {
pname = "neovim-remote"; pname = "neovim-remote";
version = "2.5.1"; version = "2.5.1";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mhinz"; owner = "mhinz";
@ -27,15 +27,16 @@ buildPythonApplication rec {
}) })
]; ];
propagatedBuildInputs = [ build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [
pynvim pynvim
psutil psutil
setuptools
]; ];
nativeCheckInputs = [ nativeCheckInputs = [
neovim neovim
pytestCheckHook python3.pkgs.pytestCheckHook
]; ];
doCheck = !stdenv.hostPlatform.isDarwin; doCheck = !stdenv.hostPlatform.isDarwin;
@ -44,6 +45,8 @@ buildPythonApplication rec {
export HOME="$(mktemp -d)" export HOME="$(mktemp -d)"
''; '';
pythonImportsCheck = [ "nvr" ];
meta = with lib; { meta = with lib; {
description = "Tool that helps controlling nvim processes from a terminal"; description = "Tool that helps controlling nvim processes from a terminal";
homepage = "https://github.com/mhinz/neovim-remote/"; homepage = "https://github.com/mhinz/neovim-remote/";

View File

@ -10,7 +10,7 @@ let
in in
python3.pkgs.buildPythonApplication { python3.pkgs.buildPythonApplication {
inherit pname version; inherit pname version;
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "timokau"; owner = "timokau";
@ -19,7 +19,9 @@ python3.pkgs.buildPythonApplication {
hash = "sha256-zyeE1jYo/9NEG8fB4gQBAR01siP4tyLvjjHN1yUS4Ug="; hash = "sha256-zyeE1jYo/9NEG8fB4gQBAR01siP4tyLvjjHN1yUS4Ug=";
}; };
propagatedBuildInputs = with python3.pkgs; [ build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [
appdirs appdirs
numpy numpy
pexpect pexpect
@ -27,6 +29,8 @@ python3.pkgs.buildPythonApplication {
doCheck = false; doCheck = false;
pythonImportsCheck = [ "nix_bisect" ];
meta = with lib; { meta = with lib; {
description = "Bisect nix builds"; description = "Bisect nix builds";
homepage = "https://github.com/timokau/nix-bisect"; homepage = "https://github.com/timokau/nix-bisect";

View File

@ -7,7 +7,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "norminette"; pname = "norminette";
version = "3.3.58"; version = "3.3.58";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "42School"; owner = "42School";
@ -16,13 +16,20 @@ python3Packages.buildPythonApplication rec {
hash = "sha256-6hBBbfW2PQFb8rcDihvtWK0df7WcvOk0il1E82GOxaU="; hash = "sha256-6hBBbfW2PQFb8rcDihvtWK0df7WcvOk0il1E82GOxaU=";
}; };
build-system = with python3Packages; [
poetry-core
];
pythonRemoveDeps = [
# Can be removed once https://github.com/42school/norminette/issues/565 is addressed
"argparse"
];
nativeCheckInputs = with python3Packages; [ nativeCheckInputs = with python3Packages; [
pytestCheckHook pytestCheckHook
]; ];
preCheck = '' pythonImportsCheck = [ "norminette" ];
export PYTHONPATH=norminette:$PYTHONPATH
'';
meta = with lib; { meta = with lib; {
description = "Open source norminette to apply 42's norme to C files"; description = "Open source norminette to apply 42's norme to C files";

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "nototools"; pname = "nototools";
version = "0.2.20"; version = "0.2.20";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "googlefonts"; owner = "googlefonts";
@ -17,11 +17,10 @@ python3Packages.buildPythonApplication rec {
sha256 = "sha256-id4UhyWOFHrtmBZHhnaY2jHDIK0s7rcGBpg4QsBTLKs="; sha256 = "sha256-id4UhyWOFHrtmBZHhnaY2jHDIK0s7rcGBpg4QsBTLKs=";
}; };
postPatch = '' build-system = with python3Packages; [
sed -i 's/use_scm_version=.*,/version="${version}",/' setup.py setuptools
''; setuptools-scm
];
build-system = with python3Packages; [ setuptools-scm ];
pythonRemoveDeps = [ pythonRemoveDeps = [
# https://github.com/notofonts/nototools/pull/901 # https://github.com/notofonts/nototools/pull/901
@ -72,6 +71,8 @@ python3Packages.buildPythonApplication rec {
cp -r third_party $out cp -r third_party $out
''; '';
pythonImportsCheck = [ "nototools" ];
meta = with lib; { meta = with lib; {
description = "Noto fonts support tools and scripts plus web site generation"; description = "Noto fonts support tools and scripts plus web site generation";
homepage = "https://github.com/googlefonts/nototools"; homepage = "https://github.com/googlefonts/nototools";

View File

@ -2,14 +2,12 @@
lib, lib,
python3Packages, python3Packages,
fetchurl, fetchurl,
git,
}: }:
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "nox"; pname = "nox";
version = "0.0.6"; version = "0.0.6";
format = "setuptools"; pyproject = true;
namePrefix = "";
src = fetchurl { src = fetchurl {
url = "mirror://pypi/n/nix-nox/nix-nox-${version}.tar.gz"; url = "mirror://pypi/n/nix-nox/nix-nox-${version}.tar.gz";
@ -18,19 +16,21 @@ python3Packages.buildPythonApplication rec {
patches = [ ./nox-review-wip.patch ]; patches = [ ./nox-review-wip.patch ];
buildInputs = [ build-system = with python3Packages; [
python3Packages.pbr setuptools
git pbr
]; ];
propagatedBuildInputs = with python3Packages; [ dependencies = with python3Packages; [
dogpile-cache dogpile-cache
click click
requests requests
characteristic characteristic
setuptools setuptools # pkg_resources is imported during runtime
]; ];
pythonImportsCheck = [ "nox" ];
meta = { meta = {
homepage = "https://github.com/madjar/nox"; homepage = "https://github.com/madjar/nox";
description = "Tools to make nix nicer to use"; description = "Tools to make nix nicer to use";

View File

@ -8,7 +8,7 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "npm-lockfile-fix"; pname = "npm-lockfile-fix";
version = "0.1.1"; version = "0.1.1";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jeslie0"; owner = "jeslie0";
@ -17,8 +17,12 @@ python3.pkgs.buildPythonApplication rec {
hash = "sha256-P93OowrVkkOfX5XKsRsg0c4dZLVn2ZOonJazPmHdD7g="; hash = "sha256-P93OowrVkkOfX5XKsRsg0c4dZLVn2ZOonJazPmHdD7g=";
}; };
propagatedBuildInputs = [ build-system = with python3.pkgs; [
python3.pkgs.requests setuptools
];
dependencies = with python3.pkgs; [
requests
]; ];
doCheck = false; # no tests doCheck = false; # no tests

View File

@ -27,7 +27,7 @@ python.pkgs.buildPythonApplication rec {
pname = "ntfy"; pname = "ntfy";
version = "2.7.0"; version = "2.7.0";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dschep"; owner = "dschep";
@ -73,9 +73,11 @@ python.pkgs.buildPythonApplication rec {
postPatch = '' postPatch = ''
# We disable the Darwin specific things because it relies on pyobjc, which we don't have. # We disable the Darwin specific things because it relies on pyobjc, which we don't have.
substituteInPlace setup.py \ substituteInPlace setup.py \
--replace "':sys_platform == \"darwin\"'" "'darwin'" --replace-fail "':sys_platform == \"darwin\"'" "'darwin'"
''; '';
build-system = with python.pkgs; [ setuptools ];
dependencies = dependencies =
with python.pkgs; with python.pkgs;
( (
@ -123,6 +125,8 @@ python.pkgs.buildPythonApplication rec {
export HOME=$(mktemp -d) export HOME=$(mktemp -d)
''; '';
pythonImportsCheck = [ "ntfy" ];
meta = with lib; { meta = with lib; {
description = "Utility for sending notifications, on demand and when commands finish"; description = "Utility for sending notifications, on demand and when commands finish";
homepage = "https://ntfy.readthedocs.io/en/latest/"; homepage = "https://ntfy.readthedocs.io/en/latest/";

View File

@ -2,6 +2,7 @@
lib, lib,
buildPythonPackage, buildPythonPackage,
fetchFromGitHub, fetchFromGitHub,
setuptools,
pywebpush, pywebpush,
py-vapid, py-vapid,
}: }:
@ -9,7 +10,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "ntfy-webpush"; pname = "ntfy-webpush";
version = "0.1.3"; version = "0.1.3";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dschep"; owner = "dschep";
@ -21,10 +22,12 @@ buildPythonPackage rec {
postPatch = '' postPatch = ''
# break dependency loop # break dependency loop
substituteInPlace setup.py \ substituteInPlace setup.py \
--replace "'ntfy', " "" --replace-fail "'ntfy', " ""
''; '';
propagatedBuildInputs = [ build-system = [ setuptools ];
dependencies = [
pywebpush pywebpush
py-vapid py-vapid
]; ];

View File

@ -7,7 +7,7 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "ntlmrecon"; pname = "ntlmrecon";
version = "0.4"; version = "0.4";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pwnfoo"; owner = "pwnfoo";
@ -16,7 +16,9 @@ python3.pkgs.buildPythonApplication rec {
sha256 = "0rrx49li2l9xlcax84qxjf60nbzp3fgq77c36yqmsp0pc9i89ah6"; sha256 = "0rrx49li2l9xlcax84qxjf60nbzp3fgq77c36yqmsp0pc9i89ah6";
}; };
propagatedBuildInputs = with python3.pkgs; [ build-system = with python3.pkgs; [ setuptools ];
dependencies = with python3.pkgs; [
colorama colorama
iptools iptools
requests requests

View File

@ -8,7 +8,7 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
pname = "nvitop"; pname = "nvitop";
version = "1.5.1"; version = "1.5.1";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "XuehaiPan"; owner = "XuehaiPan";
@ -17,6 +17,8 @@ python3Packages.buildPythonApplication rec {
hash = "sha256-FQbY9j6eJtupBiYTSCEJHAAlpDltb6U5hgWet42AKho="; hash = "sha256-FQbY9j6eJtupBiYTSCEJHAAlpDltb6U5hgWet42AKho=";
}; };
build-system = with python3Packages; [ setuptools ];
pythonRelaxDeps = [ "nvidia-ml-py" ]; pythonRelaxDeps = [ "nvidia-ml-py" ];
dependencies = with python3Packages; [ dependencies = with python3Packages; [
@ -30,6 +32,8 @@ python3Packages.buildPythonApplication rec {
]; ];
versionCheckProgramArg = "--version"; versionCheckProgramArg = "--version";
pythonImportsCheck = [ "nvitop" ];
meta = { meta = {
description = "Interactive NVIDIA-GPU process viewer, the one-stop solution for GPU process management"; description = "Interactive NVIDIA-GPU process viewer, the one-stop solution for GPU process management";
homepage = "https://github.com/XuehaiPan/nvitop"; homepage = "https://github.com/XuehaiPan/nvitop";

View File

@ -8,9 +8,9 @@ let
pythonPackages = python3Packages; pythonPackages = python3Packages;
in in
pythonPackages.buildPythonApplication rec { pythonPackages.buildPythonApplication rec {
version = "2.3.1";
format = "setuptools";
pname = "nvpy"; pname = "nvpy";
version = "2.3.1";
pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cpbotha"; owner = "cpbotha";
@ -19,7 +19,9 @@ pythonPackages.buildPythonApplication rec {
sha256 = "sha256-guNdLu/bCk89o5M3gQU7J0W4h7eZdLHM0FG5IAPLE7c="; sha256 = "sha256-guNdLu/bCk89o5M3gQU7J0W4h7eZdLHM0FG5IAPLE7c=";
}; };
propagatedBuildInputs = with pythonPackages; [ build-system = with pythonPackages; [ setuptools ];
dependencies = with pythonPackages; [
markdown markdown
docutils docutils
simplenote simplenote
@ -37,6 +39,8 @@ pythonPackages.buildPythonApplication rec {
install -m644 README.rst "$out/share/doc/nvpy/README" install -m644 README.rst "$out/share/doc/nvpy/README"
''; '';
pythonImportsCheck = [ "nvpy" ];
meta = with pkgs.lib; { meta = with pkgs.lib; {
description = "Simplenote-syncing note-taking tool inspired by Notational Velocity"; description = "Simplenote-syncing note-taking tool inspired by Notational Velocity";
homepage = "https://github.com/cpbotha/nvpy"; homepage = "https://github.com/cpbotha/nvpy";

View File

@ -14,7 +14,7 @@
python3Packages.buildPythonPackage rec { python3Packages.buildPythonPackage rec {
pname = "nwg-clipman"; pname = "nwg-clipman";
version = "0.2.6"; version = "0.2.6";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nwg-piotr"; owner = "nwg-piotr";
@ -55,6 +55,8 @@ python3Packages.buildPythonPackage rec {
strictDeps = true; strictDeps = true;
pythonImportsCheck = [ "nwg_clipman" ];
passthru.updateScript = nix-update-script { }; passthru.updateScript = nix-update-script { };
meta = { meta = {

View File

@ -12,7 +12,7 @@
python3Packages.buildPythonPackage rec { python3Packages.buildPythonPackage rec {
pname = "nwg-wrapper"; pname = "nwg-wrapper";
version = "0.1.3"; version = "0.1.3";
format = "setuptools"; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nwg-piotr"; owner = "nwg-piotr";
@ -31,7 +31,9 @@ python3Packages.buildPythonPackage rec {
gtk-layer-shell gtk-layer-shell
]; ];
propagatedBuildInputs = with python3Packages; [ build-system = with python3Packages; [ setuptools ];
dependencies = with python3Packages; [
i3ipc i3ipc
pygobject3 pygobject3
]; ];

View File

@ -4,23 +4,25 @@
fetchPypi, fetchPypi,
}: }:
with python3Packages; python3Packages.buildPythonApplication rec {
buildPythonApplication rec {
pname = "nyx"; pname = "nyx";
version = "2.1.0"; version = "2.1.0";
format = "setuptools"; pyproject = true;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "02rrlllz2ci6i6cs3iddyfns7ang9a54jrlygd2jw1f9s6418ll8"; sha256 = "02rrlllz2ci6i6cs3iddyfns7ang9a54jrlygd2jw1f9s6418ll8";
}; };
propagatedBuildInputs = [ stem ]; build-system = with python3Packages; [ setuptools ];
dependencies = with python3Packages; [ stem ];
# ./run_tests.py returns `TypeError: testFailure() takes exactly 1 argument` # ./run_tests.py returns `TypeError: testFailure() takes exactly 1 argument`
doCheck = false; doCheck = false;
pythonImportsCheck = [ "nyx" ];
meta = with lib; { meta = with lib; {
description = "Command-line monitor for Tor"; description = "Command-line monitor for Tor";
mainProgram = "nyx"; mainProgram = "nyx";

View File

@ -4,19 +4,19 @@
fetchPypi, fetchPypi,
}: }:
let python3.pkgs.buildPythonApplication rec {
pname = "pybibget"; pname = "pybibget";
version = "0.1.0"; version = "0.1.0";
pyproject = true;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-M6CIctTOVn7kIPmsoHQmYl2wQaUzfel7ryw/3ebQitg="; hash = "sha256-M6CIctTOVn7kIPmsoHQmYl2wQaUzfel7ryw/3ebQitg=";
}; };
in build-system = [
python3.pkgs.buildPythonApplication { python3.pkgs.setuptools
inherit pname version src; ];
pyproject = true;
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [
lxml lxml

View File

@ -7,12 +7,12 @@
stdenv, stdenv,
}: }:
let let
version = "25.1.6"; version = "25.1.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "redpanda-data"; owner = "redpanda-data";
repo = "redpanda"; repo = "redpanda";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-Cl2coxcK2f53uJnC5CBkqJ/oAQ+jpvjo2vknKqx7FXQ="; sha256 = "sha256-GRWLEzf0YfSk96oDCuthMNmu0C1KJCk10Uz7eApS4mk=";
}; };
in in
buildGoModule rec { buildGoModule rec {

View File

@ -7,13 +7,13 @@
stdenvNoCC.mkDerivation { stdenvNoCC.mkDerivation {
pname = "roddhjav-apparmor-rules"; pname = "roddhjav-apparmor-rules";
version = "0-unstable-2025-06-21"; version = "0-unstable-2025-07-12";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "roddhjav"; owner = "roddhjav";
repo = "apparmor.d"; repo = "apparmor.d";
rev = "1aee62f52cb02cbdb054c233a350f4f07d828e48"; rev = "8fc70859aaef7cc20181ac6d115a6ff8ca5a9162";
hash = "sha256-5gK2JTct89HrjJHAVAPxEUyKf6ukHExFgNb3Os4kv9M="; hash = "sha256-MbbjiLa24PxaD7ZizR2CbTPy6yDFZTAV3QurFyYb3r8=";
}; };
dontConfigure = true; dontConfigure = true;

View File

@ -7,6 +7,7 @@
gdk-pixbuf, gdk-pixbuf,
glib, glib,
libinput, libinput,
librsvg,
libxml2, libxml2,
pango, pango,
udev, udev,
@ -15,17 +16,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "tiny-dfr"; pname = "tiny-dfr";
version = "0.3.2"; version = "0.3.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "WhatAmISupposedToPutHere"; owner = "AsahiLinux";
repo = "tiny-dfr"; repo = "tiny-dfr";
rev = "v${version}"; tag = "v${version}";
hash = "sha256-5u5jyoDEt7aMs8/8QrhrUrUzFJJCNayqbN2WrMhUCV4="; hash = "sha256-G4OeYZH3VF6fKWxHYLTmwzQmQ4JupgYNH/6aJSgINvg=";
}; };
useFetchCargoVendor = true; cargoHash = "sha256-/PtoAc2ZNJfW5gegcFQAAlEmjSMysZ+QebVfHtW35Nk=";
cargoHash = "sha256-9UlH2W8wNzdZJxIgOafGylliS2RjaBlpirxSWHJ/SIQ=";
nativeBuildInputs = [ nativeBuildInputs = [
pkg-config pkg-config
@ -36,6 +36,7 @@ rustPlatform.buildRustPackage rec {
gdk-pixbuf gdk-pixbuf
glib glib
libinput libinput
librsvg
libxml2 libxml2
pango pango
udev udev
@ -55,7 +56,7 @@ rustPlatform.buildRustPackage rec {
doInstallCheck = true; doInstallCheck = true;
meta = with lib; { meta = with lib; {
homepage = "https://github.com/WhatAmISupposedToPutHere/tiny-dfr"; homepage = "https://github.com/AsahiLinux/tiny-dfr";
description = "Most basic dynamic function row daemon possible"; description = "Most basic dynamic function row daemon possible";
license = [ license = [
licenses.asl20 licenses.asl20

View File

@ -7,30 +7,63 @@
DBI, DBI,
IOSocketSSL, IOSocketSSL,
TermReadKey, TermReadKey,
go,
buildGoModule,
git,
}: }:
buildPerlPackage rec { let
pname = "Percona-Toolkit"; version = "3.7.0";
version = "3.2.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "percona"; owner = "percona";
repo = "percona-toolkit"; repo = "percona-toolkit";
rev = "v${version}"; rev = "v${version}";
sha256 = "084ldpskvlfm32lfss5qqzm5y9b8hf029aa4i5pcnzgb53xaxkqx"; sha256 = "sha256-fJGeL9XZHTFmpns5CE7It35HRnF3JiC6muOpOS1zboI=";
# needed for build script
leaveDotGit = true;
}; };
goDeps =
(buildGoModule {
pname = "Percona-Toolkit go-bindings";
inherit src version;
vendorHash = "sha256-HAaoVYK6av085zSG0ZRpbmUgEA2UEt7CGWF/834e+z4=";
}).goModules;
in
buildPerlPackage {
pname = "Percona-Toolkit";
inherit src version;
outputs = [ "out" ]; outputs = [ "out" ];
nativeBuildInputs = [ shortenPerlShebang ]; nativeBuildInputs = [
git
shortenPerlShebang
];
buildInputs = [ buildInputs = [
DBDmysql DBDmysql
go
DBI DBI
IOSocketSSL IOSocketSSL
TermReadKey TermReadKey
]; ];
postPatch = ''
cp -r --reflink=auto ${goDeps} vendor
chmod -R u+rw vendor
substituteInPlace src/go/Makefile \
--replace-fail "go get ./..." "echo 'Skipping go get due to offline build'"
'';
preBuild = ''
export HOME=$TMPDIR
'';
postInstall = '' postInstall = ''
shortenPerlShebang $(grep -l "/bin/env perl" $out/bin/*) shortenPerlShebang $(grep -l "/bin/env perl" $out/bin/*)
''; '';

View File

@ -2,33 +2,47 @@
lib, lib,
buildPythonPackage, buildPythonPackage,
fetchPypi, fetchPypi,
# build-system
setuptools,
# dependencies
latexcodec, latexcodec,
pyyaml, pyyaml,
setuptools,
# tests
pytestCheckHook,
}: }:
buildPythonPackage rec { buildPythonPackage rec {
version = "0.24.0";
format = "setuptools";
pname = "pybtex"; pname = "pybtex";
version = "0.25.1";
doCheck = false; pyproject = true;
pythonImportsCheck = [ "pybtex" ];
propagatedBuildInputs = [
latexcodec
pyyaml
setuptools
];
src = fetchPypi { src = fetchPypi {
inherit version pname; inherit version pname;
sha256 = "818eae35b61733e5c007c3fcd2cfb75ed1bc8b4173c1f70b56cc4c0802d34755"; sha256 = "sha256-nq+QJnx+g+Ilr4n+plw3Cvv2X0WCINOUap4wSeHspJE=";
}; };
meta = with lib; { build-system = [
setuptools
];
dependencies = [
latexcodec
pyyaml
];
pythonImportsCheck = [ "pybtex" ];
nativeCheckInputs = [
pytestCheckHook
];
meta = {
homepage = "https://pybtex.org/"; homepage = "https://pybtex.org/";
changelog = "https://bitbucket.org/pybtex-devs/pybtex/src/master/CHANGES";
description = "BibTeX-compatible bibliography processor written in Python"; description = "BibTeX-compatible bibliography processor written in Python";
license = licenses.mit; license = lib.licenses.mit;
}; };
} }

View File

@ -171,6 +171,7 @@ buildPythonPackage rec {
# attempt to insert nil object from objects[1] # attempt to insert nil object from objects[1]
"test_timer_10_2_7" "test_timer_10_2_7"
"test_timer"
]; ];
disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [ disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [

View File

@ -16,7 +16,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "sphinxcontrib-bibtex"; pname = "sphinxcontrib-bibtex";
version = "2.6.3"; version = "2.6.5";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "mcmtroffaes"; owner = "mcmtroffaes";
repo = "sphinxcontrib-bibtex"; repo = "sphinxcontrib-bibtex";
tag = version; tag = version;
hash = "sha256-cqz5Jamtlflo5rFhWPCPlYoymApUtXPG4oTRjfDI+WY="; hash = "sha256-sT23DkIfJcb3cFBFdL31RRzlDoJRcCUYIdpUVuYjGuo=";
}; };
build-system = [ setuptools ]; build-system = [ setuptools ];

View File

@ -0,0 +1,84 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
stdenv,
# build-system
setuptools,
# dependencies
astropy,
click,
frictionless,
matplotlib,
mergedeep,
pandas,
pillow,
pybtex,
pymupdf,
pyyaml,
scipy,
svg-path,
svgpathtools,
svgwrite,
# tests
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "svgdigitizer";
version = "0.12.6";
pyproject = true;
src = fetchFromGitHub {
owner = "echemdb";
repo = "svgdigitizer";
tag = version;
hash = "sha256-aodPjms92+/6bbheIs/8w+M4T+mfw5PWf1dsxFuojwA=";
};
build-system = [
setuptools
];
dependencies = [
astropy
click
frictionless
matplotlib
mergedeep
pandas
pillow
pybtex
pymupdf
pyyaml
scipy
svg-path
svgpathtools
svgwrite
];
nativeCheckInputs = [
pytestCheckHook
];
pytestFlags = [
"--doctest-modules"
"svgdigitizer"
];
pythonImportsCheck = [
"svgdigitizer"
];
meta = {
description = "(x,y) Data Points from SVG files";
homepage = "https://github.com/echemdb/svgdigitizer";
changelog = "https://github.com/echemdb/svgdigitizer/blob/${src.rev}/ChangeLog";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ doronbehar ];
# https://github.com/echemdb/svgdigitizer/issues/252
broken = stdenv.hostPlatform.isDarwin;
};
}

View File

@ -0,0 +1,54 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
# build-system
setuptools,
# dependencies
numpy,
scipy,
svgwrite,
# tests
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "svgpathtools";
version = "1.7.1";
pyproject = true;
src = fetchFromGitHub {
owner = "mathandy";
repo = "svgpathtools";
tag = "v${version}";
hash = "sha256-SzYssDJ+uGb5zXZ16XaMCvIPF8BKJ4VVI/gUghz1IyA=";
};
build-system = [
setuptools
];
dependencies = [
numpy
scipy
svgwrite
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"svgpathtools"
];
meta = {
description = "A collection of tools for manipulating and analyzing SVG Path objects and Bezier curves";
homepage = "https://github.com/mathandy/svgpathtools";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ doronbehar ];
};
}

View File

@ -40,7 +40,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "uiprotect"; pname = "uiprotect";
version = "7.14.1"; version = "7.14.2";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.10"; disabled = pythonOlder "3.10";
@ -49,7 +49,7 @@ buildPythonPackage rec {
owner = "uilibs"; owner = "uilibs";
repo = "uiprotect"; repo = "uiprotect";
tag = "v${version}"; tag = "v${version}";
hash = "sha256-e5VfG20hl+SGssNsLMoQ2ULJAcVS6gahNkC6XqRuXb0="; hash = "sha256-amCE5y/4tAdrvlk6ZSa6QaG9XuLnFfz1ml1r/H80fdE=";
}; };
build-system = [ poetry-core ]; build-system = [ poetry-core ];

View File

@ -32,7 +32,7 @@
buildPythonApplication rec { buildPythonApplication rec {
pname = "devpi-server"; pname = "devpi-server";
version = "6.14.0"; version = "6.15.0";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -41,7 +41,7 @@ buildPythonApplication rec {
owner = "devpi"; owner = "devpi";
repo = "devpi"; repo = "devpi";
rev = "server-${version}"; rev = "server-${version}";
hash = "sha256-j8iILbptUw8DUE9lFpjDp/VYzdJzmOYqM/RCnkpWdcA="; hash = "sha256-tKR1xZju5bDbFu8t3SunTM8FlaXodSm/OjJ3Jfl7Dzk=";
}; };
sourceRoot = "${src.name}/server"; sourceRoot = "${src.name}/server";

View File

@ -0,0 +1,61 @@
/**
This file has as its value the list of overlays, as determined from the environment.
If Nix evaluation is [pure](https://nix.dev/manual/nix/latest/command-ref/conf-file.html?highlight=pure-eval#conf-pure-eval), then the list is empty.
*/
let
# Return x if it evaluates, or def if it throws an exception.
try =
x: def:
let
res = builtins.tryEval x;
in
if res.success then res.value else def;
homeDir = builtins.getEnv "HOME";
isDir = path: builtins.pathExists (path + "/.");
pathOverlays = try (toString <nixpkgs-overlays>) "";
homeOverlaysFile = homeDir + "/.config/nixpkgs/overlays.nix";
homeOverlaysDir = homeDir + "/.config/nixpkgs/overlays";
overlays =
path:
# check if the path is a directory or a file
if isDir path then
# it's a directory, so the set of overlays from the directory, ordered lexicographically
let
content = builtins.readDir path;
in
map (n: import (path + ("/" + n))) (
builtins.filter (
n:
(
builtins.match ".*\\.nix" n != null
&&
# ignore Emacs lock files (.#foo.nix)
builtins.match "\\.#.*" n == null
)
|| builtins.pathExists (path + ("/" + n + "/default.nix"))
) (builtins.attrNames content)
)
else
# it's a file, so the result is the contents of the file itself
import path;
in
if pathOverlays != "" && builtins.pathExists pathOverlays then
overlays pathOverlays
else if builtins.pathExists homeOverlaysFile && builtins.pathExists homeOverlaysDir then
throw ''
Nixpkgs overlays can be specified with ${homeOverlaysFile} or ${homeOverlaysDir}, but not both.
Please remove one of them and try again.
''
else if builtins.pathExists homeOverlaysFile then
if isDir homeOverlaysFile then
throw (homeOverlaysFile + " should be a file")
else
overlays homeOverlaysFile
else if builtins.pathExists homeOverlaysDir then
if !(isDir homeOverlaysDir) then
throw (homeOverlaysDir + " should be a directory")
else
overlays homeOverlaysDir
else
[ ]

View File

@ -7,14 +7,6 @@ let
homeDir = builtins.getEnv "HOME"; homeDir = builtins.getEnv "HOME";
# Return x if it evaluates, or def if it throws an exception.
try =
x: def:
let
res = builtins.tryEval x;
in
if res.success then res.value else def;
in in
{ {
@ -50,55 +42,7 @@ in
# Overlays are used to extend Nixpkgs collection with additional # Overlays are used to extend Nixpkgs collection with additional
# collections of packages. These collection of packages are part of the # collections of packages. These collection of packages are part of the
# fix-point made by Nixpkgs. # fix-point made by Nixpkgs.
overlays ? overlays ? import ./impure-overlays.nix,
let
isDir = path: builtins.pathExists (path + "/.");
pathOverlays = try (toString <nixpkgs-overlays>) "";
homeOverlaysFile = homeDir + "/.config/nixpkgs/overlays.nix";
homeOverlaysDir = homeDir + "/.config/nixpkgs/overlays";
overlays =
path:
# check if the path is a directory or a file
if isDir path then
# it's a directory, so the set of overlays from the directory, ordered lexicographically
let
content = builtins.readDir path;
in
map (n: import (path + ("/" + n))) (
builtins.filter (
n:
(
builtins.match ".*\\.nix" n != null
&&
# ignore Emacs lock files (.#foo.nix)
builtins.match "\\.#.*" n == null
)
|| builtins.pathExists (path + ("/" + n + "/default.nix"))
) (builtins.attrNames content)
)
else
# it's a file, so the result is the contents of the file itself
import path;
in
if pathOverlays != "" && builtins.pathExists pathOverlays then
overlays pathOverlays
else if builtins.pathExists homeOverlaysFile && builtins.pathExists homeOverlaysDir then
throw ''
Nixpkgs overlays can be specified with ${homeOverlaysFile} or ${homeOverlaysDir}, but not both.
Please remove one of them and try again.
''
else if builtins.pathExists homeOverlaysFile then
if isDir homeOverlaysFile then
throw (homeOverlaysFile + " should be a file")
else
overlays homeOverlaysFile
else if builtins.pathExists homeOverlaysDir then
if !(isDir homeOverlaysDir) then
throw (homeOverlaysDir + " should be a directory")
else
overlays homeOverlaysDir
else
[ ],
crossOverlays ? [ ], crossOverlays ? [ ],

View File

@ -17370,10 +17370,14 @@ self: super: with self; {
svg2tikz = callPackage ../development/python-modules/svg2tikz { }; svg2tikz = callPackage ../development/python-modules/svg2tikz { };
svgdigitizer = callPackage ../development/python-modules/svgdigitizer { };
svgelements = callPackage ../development/python-modules/svgelements { }; svgelements = callPackage ../development/python-modules/svgelements { };
svglib = callPackage ../development/python-modules/svglib { }; svglib = callPackage ../development/python-modules/svglib { };
svgpathtools = callPackage ../development/python-modules/svgpathtools { };
svgutils = callPackage ../development/python-modules/svgutils { }; svgutils = callPackage ../development/python-modules/svgutils { };
svgwrite = callPackage ../development/python-modules/svgwrite { }; svgwrite = callPackage ../development/python-modules/svgwrite { };