From 510b8e62277dbd58c4cc1046d674871b620e19df Mon Sep 17 00:00:00 2001 From: Thiago Kenji Okada Date: Wed, 23 Aug 2023 21:48:57 +0100 Subject: [PATCH] retool: init at unstable-2023-08-24 --- pkgs/applications/misc/retool/default.nix | 58 +++++++++++++++++++ .../applications/misc/retool/relax_deps.patch | 25 ++++++++ pkgs/top-level/all-packages.nix | 2 + 3 files changed, 85 insertions(+) create mode 100644 pkgs/applications/misc/retool/default.nix create mode 100644 pkgs/applications/misc/retool/relax_deps.patch diff --git a/pkgs/applications/misc/retool/default.nix b/pkgs/applications/misc/retool/default.nix new file mode 100644 index 000000000000..a88e719c6ddd --- /dev/null +++ b/pkgs/applications/misc/retool/default.nix @@ -0,0 +1,58 @@ +{ lib +, stdenv +, python3 +, fetchFromGitHub +, qt6 +}: + +python3.pkgs.buildPythonApplication { + pname = "retool"; + version = "unstable-2023-08-24"; + + format = "pyproject"; + disabled = python3.pkgs.pythonOlder "3.10"; + + src = fetchFromGitHub { + owner = "unexpectedpanda"; + repo = "retool"; + rev = "d8acdb960d35b5a6b01d7dc66b7e40b3ec451301"; + hash = "sha256-6y/7RR7O2xYKXdxaFtkRfnSlwygp/LRDUozUJo6ue7s="; + }; + + patches = [ + # pythonRelaxDepsHook will not work in this package until + # https://github.com/NixOS/nixpkgs/pull/248516 hits master + ./relax_deps.patch + ]; + + nativeBuildInputs = with python3.pkgs; [ + poetry-core + qt6.wrapQtAppsHook + ]; + + buildInputs = [ + qt6.qtbase + ] ++ + lib.optionals (stdenv.isLinux) [ + qt6.qtwayland + ]; + + propagatedBuildInputs = with python3.pkgs; [ + alive-progress + lxml + psutil + validators + pyside6 + strictyaml + ]; + + # Upstream has no tests + doCheck = false; + + meta = with lib; { + description = "A better filter tool for Redump and No-Intro dats"; + homepage = "https://github.com/unexpectedpanda/retool"; + license = licenses.bsd3; + maintainers = with maintainers; [ thiagokokada ]; + }; +} diff --git a/pkgs/applications/misc/retool/relax_deps.patch b/pkgs/applications/misc/retool/relax_deps.patch new file mode 100644 index 000000000000..528d2b47d970 --- /dev/null +++ b/pkgs/applications/misc/retool/relax_deps.patch @@ -0,0 +1,25 @@ +diff --git a/pyproject.toml b/pyproject.toml +index 6e62347..34600a0 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -13,12 +13,14 @@ packages = [ + + [tool.poetry.dependencies] + python = ">=3.10,<3.12" +-strictyaml = "^1.6.2" +-lxml = "^4.9.2" +-PySide6 = "^6.4.2" +-validators = "^0.20.0" +-alive-progress = "^3.0.1" +-psutil = "^5.9.4" ++strictyaml = "*" ++lxml = "*" ++# ERROR: Could not find a version that satisfies the requirement PySide6 (from retool) (from versions: none) ++# ERROR: No matching distribution found for PySide6 ++# PySide6 = "*" ++validators = "*" ++alive-progress = "*" ++psutil = "*" + + [tool.poetry.scripts] + retool = "retool:main" diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f52106e87296..f7b3da204846 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6210,6 +6210,8 @@ with pkgs; reg = callPackage ../tools/virtualization/reg { }; + retool = callPackage ../applications/misc/retool { }; + rex = callPackage ../tools/system/rex { }; river = callPackage ../applications/window-managers/river { };