From 69972cd34d8e074d8c0d8d74eceb3d193023fc8c Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 10 Oct 2025 17:06:15 -0700 Subject: [PATCH 1/4] distro-info-data: init at 0.67 Signed-off-by: Anders Kaseorg --- pkgs/by-name/di/distro-info-data/package.nix | 29 ++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 pkgs/by-name/di/distro-info-data/package.nix diff --git a/pkgs/by-name/di/distro-info-data/package.nix b/pkgs/by-name/di/distro-info-data/package.nix new file mode 100644 index 000000000000..bb8f4edc7747 --- /dev/null +++ b/pkgs/by-name/di/distro-info-data/package.nix @@ -0,0 +1,29 @@ +{ + fetchFromGitLab, + lib, + stdenv, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "distro-info-data"; + version = "0.67"; + + src = fetchFromGitLab { + domain = "salsa.debian.org"; + owner = "debian"; + repo = "distro-info-data"; + tag = "debian/${finalAttrs.version}"; + hash = "sha256-xm/ajsPKtnmuyEkVxM1AxV7Tl0njkqjOmhE5rKRQ36Q="; + }; + + makeFlags = [ "PREFIX=$(out)" ]; + + meta = { + description = "Information about Debian and Ubuntu releases"; + homepage = "https://salsa.debian.org/debian/distro-info-data"; + changelog = "https://salsa.debian.org/debian/distro-info-data/-/blob/${finalAttrs.src.tag}/debian/changelog"; + license = lib.licenses.isc; + maintainers = with lib.maintainers; [ andersk ]; + platforms = lib.platforms.all; + }; +}) From 96eca034d0b7b397ad4c89c299f07e2d5f738a91 Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 10 Oct 2025 17:04:39 -0700 Subject: [PATCH 2/4] python3Packages.distro-info: init at 1.14 Signed-off-by: Anders Kaseorg --- .../python-modules/distro-info/default.nix | 45 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 47 insertions(+) create mode 100644 pkgs/development/python-modules/distro-info/default.nix diff --git a/pkgs/development/python-modules/distro-info/default.nix b/pkgs/development/python-modules/distro-info/default.nix new file mode 100644 index 000000000000..debef819aef3 --- /dev/null +++ b/pkgs/development/python-modules/distro-info/default.nix @@ -0,0 +1,45 @@ +{ + buildPythonPackage, + distro-info-data, + fetchurl, + lib, + setuptools, + unittestCheckHook, +}: + +buildPythonPackage rec { + pname = "distro-info"; + version = "1.14"; + pyproject = true; + + # Not using fetchFromGitLab because it incorrectly sets + # SOURCE_DATE_EPOCH=315619200 (1980-01-02) and breaks tests. + src = fetchurl { + url = "https://salsa.debian.org/debian/distro-info/-/archive/debian/${version}/distro-info-debian-${version}.tar.gz"; + hash = "sha256-nRLTlDPnll1jvwfg9FSxs9TmImvQkn9DVqSRSOKTAGI="; + }; + + postPatch = '' + substituteInPlace python/distro_info.py \ + --replace-fail /usr/share/distro-info ${distro-info-data}/share/distro-info + ''; + + build-system = [ setuptools ]; + pypaBuildFlags = "python"; + nativeCheckInputs = [ + unittestCheckHook + ]; + preCheck = '' + cd python + rm distro_info_test/test_flake8.py distro_info_test/test_pylint.py + ''; + + meta = { + description = "Information about Debian and Ubuntu releases"; + homepage = "https://salsa.debian.org/debian/distro-info"; + changelog = "https://salsa.debian.org/debian/distro-info/-/blob/debian/${version}/debian/changelog"; + license = lib.licenses.isc; + maintainers = with lib.maintainers; [ andersk ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4ee283b41fc4..44fa60ab8683 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3645,6 +3645,8 @@ self: super: with self; { distro = callPackage ../development/python-modules/distro { }; + distro-info = callPackage ../development/python-modules/distro-info { }; + distutils = if pythonOlder "3.12" then null else callPackage ../development/python-modules/distutils { }; From a47c384c31e79bc80bc695ba121d407f8b82d3ef Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Mon, 16 Jun 2025 13:01:52 -0700 Subject: [PATCH 3/4] dput-ng: Add missing dependency python3Packages.distro-info Signed-off-by: Anders Kaseorg --- pkgs/by-name/dp/dput-ng/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/dp/dput-ng/package.nix b/pkgs/by-name/dp/dput-ng/package.nix index c73978a3f496..e5f65a71bfa8 100644 --- a/pkgs/by-name/dp/dput-ng/package.nix +++ b/pkgs/by-name/dp/dput-ng/package.nix @@ -31,6 +31,7 @@ python3.pkgs.buildPythonApplication { coverage xdg python-debian + distro-info ]; postInstall = '' From ffdcfb6c5ccfb29f2c279ba998581ce6e3108c6c Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Mon, 16 Jun 2025 13:02:34 -0700 Subject: [PATCH 4/4] dput-ng: Install required configuration files Signed-off-by: Anders Kaseorg --- pkgs/by-name/dp/dput-ng/package.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/by-name/dp/dput-ng/package.nix b/pkgs/by-name/dp/dput-ng/package.nix index e5f65a71bfa8..60ea99b969a3 100644 --- a/pkgs/by-name/dp/dput-ng/package.nix +++ b/pkgs/by-name/dp/dput-ng/package.nix @@ -20,6 +20,10 @@ python3.pkgs.buildPythonApplication { hash = "sha256-zrH4h4C4y3oTiOXsidFv/rIJNzCdV2lqzNEg0SOkX4w="; }; + postPatch = '' + substituteInPlace dput/core.py --replace-fail /usr/share/dput-ng "$out/share/dput-ng" + ''; + build-system = with python3.pkgs; [ setuptools ]; @@ -36,6 +40,8 @@ python3.pkgs.buildPythonApplication { postInstall = '' cp -r bin $out/ + mkdir -p "$out/share/dput-ng" + cp -r skel/* "$out/share/dput-ng/" ''; pythonImportsCheck = [ "dput" ];