Merge pull request #251042 from thiagokokada/retool-init

retool: init at unstable-2023-08-24
This commit is contained in:
Thiago Kenji Okada 2023-08-24 13:27:20 +00:00 committed by GitHub
commit e733421240
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 161 additions and 0 deletions

@ -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 ];
};
}

@ -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"

@ -0,0 +1,31 @@
{ lib
, fetchPypi
, buildPythonPackage
}:
buildPythonPackage rec {
pname = "about-time";
version = "4.2.1";
# PyPi release does not contain test files, but the repo has no release tags,
# so while having no tests is not ideal, follow the PyPi releases for now
# TODO: switch to fetchFromGitHub once this issue is fixed:
# https://github.com/rsalmei/about-time/issues/15
src = fetchPypi {
inherit pname version;
hash = "sha256-alOIYtM85n2ZdCnRSZgxDh2/2my32bv795nEcJhH/s4=";
};
doCheck = false;
pythonImportsCheck = [
"about_time"
];
meta = with lib; {
description = "A cool helper for tracking time and throughput of code blocks, with beautiful human friendly renditions";
homepage = "https://github.com/rsalmei/about-time";
license = licenses.mit;
maintainers = with maintainers; [ thiagokokada ];
};
}

@ -0,0 +1,41 @@
{ lib
, about-time
, buildPythonPackage
, click
, fetchFromGitHub
, grapheme
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "alive-progress";
version = "3.1.4";
src = fetchFromGitHub {
owner = "rsalmei";
repo = pname;
rev = "v${version}";
hash = "sha256-27PgxQ9nw8p5hfaSf/jPYG7419o3i8B8R09o93szSOk=";
};
propagatedBuildInputs = [
about-time
grapheme
];
nativeCheckInputs = [
click
pytestCheckHook
];
pythonImportsCheck = [
"alive_progress"
];
meta = with lib; {
description = "A new kind of Progress Bar, with real-time throughput, ETA, and very cool animations";
homepage = "https://github.com/rsalmei/alive-progress";
license = licenses.mit;
maintainers = with maintainers; [ thiagokokada ];
};
}

@ -6212,6 +6212,8 @@ with pkgs;
reg = callPackage ../tools/virtualization/reg { };
retool = callPackage ../applications/misc/retool { };
rex = callPackage ../tools/system/rex { };
river = callPackage ../applications/window-managers/river { };

@ -20,6 +20,8 @@ self: super: with self; {
aardwolf = callPackage ../development/python-modules/aardwolf { };
about-time = callPackage ../development/python-modules/about-time { };
absl-py = callPackage ../development/python-modules/absl-py { };
accessible-pygments = callPackage ../development/python-modules/accessible-pygments { };
@ -426,6 +428,8 @@ self: super: with self; {
algebraic-data-types = callPackage ../development/python-modules/algebraic-data-types { };
alive-progress = callPackage ../development/python-modules/alive-progress { };
aliyun-python-sdk-cdn = callPackage ../development/python-modules/aliyun-python-sdk-cdn { };
aliyun-python-sdk-config = callPackage ../development/python-modules/aliyun-python-sdk-config { };