From 60e8be0f59a60c9a311e3929988ae4247174db10 Mon Sep 17 00:00:00 2001 From: lucasew Date: Mon, 15 Jul 2024 14:09:16 -0300 Subject: [PATCH 1/5] i3pystatus: move to by-name Signed-off-by: lucasew --- .../i3/pystatus.nix => by-name/i3/i3pystatus/package.nix} | 5 ++++- pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 4 insertions(+), 3 deletions(-) rename pkgs/{applications/window-managers/i3/pystatus.nix => by-name/i3/i3pystatus/package.nix} (92%) diff --git a/pkgs/applications/window-managers/i3/pystatus.nix b/pkgs/by-name/i3/i3pystatus/package.nix similarity index 92% rename from pkgs/applications/window-managers/i3/pystatus.nix rename to pkgs/by-name/i3/i3pystatus/package.nix index 66450eec6c32..b19ab6abb70a 100644 --- a/pkgs/applications/window-managers/i3/pystatus.nix +++ b/pkgs/by-name/i3/i3pystatus/package.nix @@ -4,6 +4,7 @@ , libnotify , gobject-introspection , python3Packages +, unstableGitUpdater , extraLibs ? [] }: python3Packages.buildPythonApplication rec { @@ -48,6 +49,8 @@ python3Packages.buildPythonApplication rec { # no tests in tarball doCheck = false; + passthru.updateScript = unstableGitUpdater {}; + meta = with lib; { homepage = "https://github.com/enkore/i3pystatus"; description = "Complete replacement for i3status"; @@ -57,6 +60,6 @@ python3Packages.buildPythonApplication rec { ''; license = licenses.mit; platforms = platforms.linux; - maintainers = [ maintainers.igsha ]; + maintainers = [ maintainers.igsha maintainers.lucasew ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8e1c0e799088..c0977a27adea 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -31429,8 +31429,6 @@ with pkgs; i3nator = callPackage ../tools/misc/i3nator { }; - i3pystatus = callPackage ../applications/window-managers/i3/pystatus.nix { }; - i3status = callPackage ../applications/window-managers/i3/status.nix { }; i3status-rust = callPackage ../applications/window-managers/i3/status-rust.nix { }; From c8c9033b06e46cd57910cf03eddefb5d0ac15936 Mon Sep 17 00:00:00 2001 From: lucasew Date: Mon, 15 Jul 2024 14:14:39 -0300 Subject: [PATCH 2/5] i3pystatus: unstable-2020-06-12 -> 3.35-unstable-2024-06-13 Signed-off-by: lucasew --- pkgs/by-name/i3/i3pystatus/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/i3/i3pystatus/package.nix b/pkgs/by-name/i3/i3pystatus/package.nix index b19ab6abb70a..e22911769d7d 100644 --- a/pkgs/by-name/i3/i3pystatus/package.nix +++ b/pkgs/by-name/i3/i3pystatus/package.nix @@ -10,14 +10,14 @@ python3Packages.buildPythonApplication rec { # i3pystatus moved to rolling release: # https://github.com/enkore/i3pystatus/issues/584 - version = "unstable-2020-06-12"; + version = "3.35-unstable-2024-06-13"; pname = "i3pystatus"; src = fetchFromGitHub { owner = "enkore"; repo = "i3pystatus"; - rev = "dad5eb0c5c8a2ecd20c37ade4732586c6e53f44b"; - sha256 = "18ygvkl92yr69kxsym57k1mc90asdxpz4b943i61qr0s4fc5n4mq"; + rev = "f3c539ad78ad1c54fc36e8439bf3905a784ccb34"; + sha256 = "3AGREY+elHQk8kaoFp8AHEzk2jNC/ICGYPh2hXo2G/w="; }; nativeBuildInputs = [ From 4613bc2e2af2aef58ea82f40950527367f036d82 Mon Sep 17 00:00:00 2001 From: lucasew Date: Mon, 15 Jul 2024 14:29:37 -0300 Subject: [PATCH 3/5] i3pystatus: fix tests Signed-off-by: lucasew --- pkgs/by-name/i3/i3pystatus/package.nix | 27 ++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/i3/i3pystatus/package.nix b/pkgs/by-name/i3/i3pystatus/package.nix index e22911769d7d..b3a9e75b6fcb 100644 --- a/pkgs/by-name/i3/i3pystatus/package.nix +++ b/pkgs/by-name/i3/i3pystatus/package.nix @@ -5,6 +5,7 @@ , gobject-introspection , python3Packages , unstableGitUpdater +, fetchpatch , extraLibs ? [] }: python3Packages.buildPythonApplication rec { @@ -20,11 +21,27 @@ python3Packages.buildPythonApplication rec { sha256 = "3AGREY+elHQk8kaoFp8AHEzk2jNC/ICGYPh2hXo2G/w="; }; - nativeBuildInputs = [ - gobject-introspection + patches = [ + # absolutifies the path to the test data in buds test so it can be run from anywhere + (fetchpatch { + url = "https://patch-diff.githubusercontent.com/raw/enkore/i3pystatus/pull/869.patch"; + hash = "sha256-irrD+yQui9GV+tnsDD3Gr9zJNJxWtvMIw+Hm0cUt7og="; + }) ]; - buildInputs = [ libpulseaudio libnotify ]; + nativeBuildInputs = [ + gobject-introspection + python3Packages.pytestCheckHook + ]; + + buildInputs = [ + libpulseaudio + libnotify + ]; + + checkInputs = [ + python3Packages.requests + ]; propagatedBuildInputs = with python3Packages; [ keyring colour netifaces psutil basiciw pygobject3 @@ -46,12 +63,10 @@ python3Packages.buildPythonApplication rec { ''${makeWrapperArgs[@]} ''; - # no tests in tarball - doCheck = false; - passthru.updateScript = unstableGitUpdater {}; meta = with lib; { + mainProgram = "i3pystatus"; homepage = "https://github.com/enkore/i3pystatus"; description = "Complete replacement for i3status"; longDescription = '' From fce975cf98ab0e4199f0d7afd704889a3b7d21d8 Mon Sep 17 00:00:00 2001 From: lucasew Date: Mon, 15 Jul 2024 14:52:27 -0300 Subject: [PATCH 4/5] i3pystatus: nixfmt-rfc-style Signed-off-by: lucasew --- pkgs/by-name/i3/i3pystatus/package.nix | 54 +++++++++++++++++--------- 1 file changed, 35 insertions(+), 19 deletions(-) diff --git a/pkgs/by-name/i3/i3pystatus/package.nix b/pkgs/by-name/i3/i3pystatus/package.nix index b3a9e75b6fcb..b2655e34beea 100644 --- a/pkgs/by-name/i3/i3pystatus/package.nix +++ b/pkgs/by-name/i3/i3pystatus/package.nix @@ -1,12 +1,14 @@ -{ lib -, fetchFromGitHub -, libpulseaudio -, libnotify -, gobject-introspection -, python3Packages -, unstableGitUpdater -, fetchpatch -, extraLibs ? [] }: +{ + lib, + fetchFromGitHub, + libpulseaudio, + libnotify, + gobject-introspection, + python3Packages, + unstableGitUpdater, + fetchpatch, + extraLibs ? [ ], +}: python3Packages.buildPythonApplication rec { # i3pystatus moved to rolling release: @@ -39,18 +41,29 @@ python3Packages.buildPythonApplication rec { libnotify ]; - checkInputs = [ - python3Packages.requests - ]; + checkInputs = [ python3Packages.requests ]; - propagatedBuildInputs = with python3Packages; [ - keyring colour netifaces psutil basiciw pygobject3 - ] ++ extraLibs; + propagatedBuildInputs = + with python3Packages; + [ + keyring + colour + netifaces + psutil + basiciw + pygobject3 + ] + ++ extraLibs; makeWrapperArgs = [ # LC_TIME != C results in locale.Error: unsupported locale setting - "--set" "LC_TIME" "C" - "--suffix" "LD_LIBRARY_PATH" ":" "${lib.makeLibraryPath [ libpulseaudio ]}" + "--set" + "LC_TIME" + "C" + "--suffix" + "LD_LIBRARY_PATH" + ":" + "${lib.makeLibraryPath [ libpulseaudio ]}" ]; postPatch = '' @@ -63,7 +76,7 @@ python3Packages.buildPythonApplication rec { ''${makeWrapperArgs[@]} ''; - passthru.updateScript = unstableGitUpdater {}; + passthru.updateScript = unstableGitUpdater { }; meta = with lib; { mainProgram = "i3pystatus"; @@ -75,6 +88,9 @@ python3Packages.buildPythonApplication rec { ''; license = licenses.mit; platforms = platforms.linux; - maintainers = [ maintainers.igsha maintainers.lucasew ]; + maintainers = [ + maintainers.igsha + maintainers.lucasew + ]; }; } From ef1a647f32a3ecc2470d1a4118db40f3efeab2c2 Mon Sep 17 00:00:00 2001 From: lucasew Date: Tue, 16 Jul 2024 11:37:49 -0300 Subject: [PATCH 5/5] i3pystatus: applying fixes from reviews Signed-off-by: lucasew --- pkgs/by-name/i3/i3pystatus/package.nix | 30 ++++++++++++++------------ 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/pkgs/by-name/i3/i3pystatus/package.nix b/pkgs/by-name/i3/i3pystatus/package.nix index b2655e34beea..b06de1abe984 100644 --- a/pkgs/by-name/i3/i3pystatus/package.nix +++ b/pkgs/by-name/i3/i3pystatus/package.nix @@ -6,7 +6,7 @@ gobject-introspection, python3Packages, unstableGitUpdater, - fetchpatch, + fetchpatch2, extraLibs ? [ ], }: @@ -15,6 +15,8 @@ python3Packages.buildPythonApplication rec { # https://github.com/enkore/i3pystatus/issues/584 version = "3.35-unstable-2024-06-13"; pname = "i3pystatus"; + pyproject = true; + build-system = [ python3Packages.setuptools ]; src = fetchFromGitHub { owner = "enkore"; @@ -25,22 +27,22 @@ python3Packages.buildPythonApplication rec { patches = [ # absolutifies the path to the test data in buds test so it can be run from anywhere - (fetchpatch { - url = "https://patch-diff.githubusercontent.com/raw/enkore/i3pystatus/pull/869.patch"; - hash = "sha256-irrD+yQui9GV+tnsDD3Gr9zJNJxWtvMIw+Hm0cUt7og="; + (fetchpatch2 { + # https://github.com/enkore/i3pystatus/pull/869 + url = "https://github.com/enkore/i3pystatus/commit/7a39c3527566411eb1b3e4f79191839ac4b0424e.patch"; + hash = "sha256-kSf2Nrypw8CCHC7acDkQXI27178HA3NJlyRWkHyYOGs="; }) ]; - nativeBuildInputs = [ - gobject-introspection - python3Packages.pytestCheckHook - ]; + nativeBuildInputs = [ gobject-introspection ]; buildInputs = [ libpulseaudio libnotify ]; + nativeCheckInputs = [ python3Packages.pytestCheckHook ]; + checkInputs = [ python3Packages.requests ]; propagatedBuildInputs = @@ -78,7 +80,7 @@ python3Packages.buildPythonApplication rec { passthru.updateScript = unstableGitUpdater { }; - meta = with lib; { + meta = { mainProgram = "i3pystatus"; homepage = "https://github.com/enkore/i3pystatus"; description = "Complete replacement for i3status"; @@ -86,11 +88,11 @@ python3Packages.buildPythonApplication rec { i3pystatus is a growing collection of python scripts for status output compatible to i3status / i3bar of the i3 window manager. ''; - license = licenses.mit; - platforms = platforms.linux; - maintainers = [ - maintainers.igsha - maintainers.lucasew + license = lib.licenses.mit; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ + igsha + lucasew ]; }; }