devtoolbox: init at 1.2 (and dependencies) (#353033)

This commit is contained in:
Aleksana
2024-11-03 21:07:34 +08:00
committed by GitHub
6 changed files with 310 additions and 0 deletions
+118
View File
@@ -0,0 +1,118 @@
{
lib,
python3Packages,
fetchFromGitHub,
meson,
ninja,
pkg-config,
gobject-introspection,
blueprint-compiler,
wrapGAppsHook4,
desktop-file-utils,
libadwaita,
gtksourceview5,
webkitgtk_6_0,
gcr_4,
gdk-pixbuf,
}:
python3Packages.buildPythonApplication rec {
pname = "devtoolbox";
version = "1.2";
pyproject = false; # uses meson
src = fetchFromGitHub {
owner = "aleiepure";
repo = "devtoolbox";
rev = "v${version}";
hash = "sha256-tSH7H2Y/+8EpuM4+Fa0iL/pSJSVtFDXlO2w/xwpzps0=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
gobject-introspection
blueprint-compiler
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libadwaita
gtksourceview5
webkitgtk_6_0
gcr_4
gdk-pixbuf
];
dependencies = with python3Packages; [
pygobject3
ruamel-yaml
lxml
python-crontab
jwt
jsonschema
pytz
tzlocal
python-lorem
uuid6
textstat
markdown2
daltonlens
asn1crypto
qrcode
sqlparse
jsbeautifier
cssbeautifier
humanize
croniter
python-dateutil
rcssmin
rjsmin
];
dontWrapGApps = true;
# Contains an unusable devtoolbox-run-script
postInstall = ''
rm -r $out/devtoolbox
'';
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
meta = {
description = "Development tools at your fingertips";
longDescription = ''
If you're tired of endlessly looking online for the right
tool, or to find again that website of which you don't
recall the name to do a quick conversion, this is the
right app for you. This is a collection of powerful yet
simple-to-use tools and utilities to solve the most common
daily development problems:
- JSON to YAML converter and vice-versa
- CRON expressions parser
- Formatters for common languages
- Hash generators
- Regex tester
- Markdown Previewer
- Image converters
- Much more...
'';
homepage = "https://github.com/aleiepure/devtoolbox";
license = with lib.licenses; [
gpl3Plus
cc0
lgpl3Only
mit
unlicense
];
mainProgram = "devtoolbox";
maintainers = with lib.maintainers; [
aleksana
aucub
];
platforms = lib.platforms.linux;
};
}
@@ -0,0 +1,53 @@
{
lib,
buildPythonPackage,
fetchPypi,
setuptools,
setuptools-git,
numpy,
pillow,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "daltonlens";
version = "0.1.5";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-T7fXlRdFtcVw5WURPqZhCmulUi1ZnCfCXgcLtTHeNas=";
};
build-system = [
setuptools
setuptools-git
];
dependencies = [
numpy
pillow
];
pythonImportsCheck = [
"daltonlens"
];
nativeCheckInputs = [
pytestCheckHook
];
pytestFlagsArray = [
"tests/"
];
disabledTestPaths = [
"tests/test_generate.py"
];
meta = {
description = "R&D companion package for the desktop application DaltonLens";
homepage = "https://github.com/DaltonLens/DaltonLens-Python";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ aleksana ];
};
}
@@ -0,0 +1,37 @@
{
lib,
buildPythonPackage,
fetchPypi,
setuptools,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "python-lorem";
version = "1.3.0.post3";
pyproject = true;
src = fetchPypi {
inherit version;
pname = "python_lorem";
hash = "sha256-Vw1TKheXg+AkhksnmWUfdIo+Jt7X7m1pS2f0Kfe8pv0=";
};
build-system = [
setuptools
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"lorem"
];
meta = {
description = "Pythonic lorem ipsum generator";
homepage = "https://github.com/JarryShaw/lorem";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ aleksana ];
};
}
@@ -0,0 +1,50 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
pyphen,
pytestCheckHook,
pytest,
}:
buildPythonPackage rec {
version = "0.7.4";
pname = "textstat";
pyproject = true;
src = fetchFromGitHub {
owner = "textstat";
repo = "textstat";
rev = version;
hash = "sha256-UOCWsIdoVGxmkro4kNBYNMYhA3kktngRDxKjo6o+GXY=";
};
build-system = [
setuptools
];
nativeCheckInputs = [
pytestCheckHook
pytest
];
dependencies = [
setuptools
pyphen
];
pythonImportsCheck = [
"textstat"
];
pytestFlagsArray = [
"test.py"
];
meta = {
description = "Python package to calculate readability statistics of a text object";
homepage = "https://textstat.org";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ aleksana ];
};
}
@@ -0,0 +1,44 @@
{
lib,
buildPythonPackage,
fetchPypi,
setuptools,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "uuid6";
version = "2024.7.10";
pyproject = true;
src = fetchPypi {
inherit pname version;
hash = "sha256-LSnX9j9ZPKruoODQ3QrYEpycZjsp4ZvfiC6GS+3xj7A=";
};
build-system = [
setuptools
];
nativeCheckInputs = [
pytestCheckHook
];
pytestFlagsArray = [
"test/"
];
disabledTestPaths = [
"test/test_uuid6.py"
];
pythonImportsCheck = [
"uuid6"
];
meta = {
description = "New time-based UUID formats which are suited for use as a database key";
homepage = "https://github.com/oittaa/uuid6-python";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ aleksana ];
};
}
+8
View File
@@ -2844,6 +2844,8 @@ self: super: with self; {
dalle-mini = callPackage ../development/python-modules/dalle-mini { };
daltonlens = callPackage ../development/python-modules/daltonlens { };
daphne = callPackage ../development/python-modules/daphne { };
daqp = callPackage ../development/python-modules/daqp { };
@@ -9207,6 +9209,8 @@ self: super: with self; {
python-hcl2 = callPackage ../development/python-modules/python-hcl2 { };
python-lorem = callPackage ../development/python-modules/python-lorem { };
python-ndn = callPackage ../development/python-modules/python-ndn { };
python-nvd3 = callPackage ../development/python-modules/python-nvd3 { };
@@ -15634,6 +15638,8 @@ self: super: with self; {
textparser = callPackage ../development/python-modules/textparser { };
textstat = callPackage ../development/python-modules/textstat { };
textual = callPackage ../development/python-modules/textual { };
textual-dev = callPackage ../development/python-modules/textual-dev { };
@@ -17244,6 +17250,8 @@ self: super: with self; {
utils = callPackage ../development/python-modules/utils { };
uuid6 = callPackage ../development/python-modules/uuid6 { };
uv = toPythonModule (pkgs.uv.override {
python3Packages = self;
});