Merge pull request #235212 from figsoda/browsr

browsr: init at 1.10.7
This commit is contained in:
Matthieu Coudron 2023-06-02 21:06:41 +02:00 committed by GitHub
commit ef00f9e18b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 219 additions and 0 deletions

View File

@ -0,0 +1,85 @@
{ lib
, python3
, fetchFromGitHub
, extras ? [ "all" ]
}:
python3.pkgs.buildPythonApplication rec {
pname = "browsr";
version = "1.10.7";
format = "pyproject";
src = fetchFromGitHub {
owner = "juftin";
repo = "browsr";
rev = "v${version}";
hash = "sha256-AT5cFQ4CldlHv3MQYAGXdZVB3bNAAvbJeosdxZjcPBM=";
};
nativeBuildInputs = with python3.pkgs; [
hatchling
pythonRelaxDepsHook
pytestCheckHook
];
propagatedBuildInputs = with python3.pkgs; [
art
click
fsspec
pandas
pillow
pymupdf
rich
rich-click
rich-pixels
textual
universal-pathlib
] ++ lib.attrVals extras passthru.optional-dependencies;
passthru.optional-dependencies = with python3.pkgs; {
all = [
adlfs
aiohttp
gcsfs
paramiko
pyarrow
requests
s3fs
];
parquet = [
pyarrow
];
remote = [
adlfs
aiohttp
gcsfs
paramiko
requests
s3fs
];
};
pythonRelaxDeps = [
"fsspec"
"pymupdf"
"rich-click"
"textual"
];
pythonImportsCheck = [ "browsr" ];
# requires internet access
disabledTests = [
"test_github_screenshot"
"test_github_screenshot_license"
"test_textual_app_context_path_github"
];
meta = with lib; {
description = "A file explorer in your terminal";
homepage = "https://github.com/juftin/browsr";
changelog = "https://github.com/fsspec/universal_pathlib/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = with maintainers; [ figsoda ];
};
}

View File

@ -0,0 +1,38 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
}:
buildPythonPackage rec {
pname = "art";
version = "5.9";
format = "setuptools";
src = fetchFromGitHub {
owner = "sepandhaghighi";
repo = "art";
rev = "v${version}";
hash = "sha256-3fX0kYYyeJ9tHX8/+hlv5aRE6LujXW915N5Ov6Q+EW8=";
};
pythonImportsCheck = [ "art" ];
# TypeError: art() missing 1 required positional argument: 'artname'
checkPhase = ''
runHook preCheck
$out/bin/art
$out/bin/art test
$out/bin/art test2
runHook postCheck
'';
meta = with lib; {
description = "ASCII art library for Python";
homepage = "https://github.com/sepandhaghighi/art";
changelog = "https://github.com/sepandhaghighi/art/blob/${src.rev}/CHANGELOG.md";
license = licenses.mit;
maintainers = with maintainers; [ figsoda ];
};
}

View File

@ -0,0 +1,51 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, poetry-core
, pytestCheckHook
, syrupy
, pillow
, rich
}:
buildPythonPackage rec {
pname = "rich-pixels";
version = "2.1.1";
format = "pyproject";
src = fetchFromGitHub {
owner = "darrenburns";
repo = "rich-pixels";
rev = version;
hash = "sha256-zI6jtEdmBAEGxyASo/6fiHdzwzoSwXN7A5x1CmYS5qc=";
};
nativeBuildInputs = [
poetry-core
];
nativeCheckInputs = [
pytestCheckHook
];
checkInputs = [
syrupy
];
propagatedBuildInputs = [
pillow
rich
];
pythonImportsCheck = [ "rich_pixels" ];
meta = with lib; {
description = "A Rich-compatible library for writing pixel images and ASCII art to the terminal";
homepage = "https://github.com/darrenburns/rich-pixels";
changelog = "https://github.com/darrenburns/rich-pixels/releases/tag/${src.rev}";
# upstream has no license specified
# https://github.com/darrenburns/rich-pixels/issues/11
license = licenses.unfree;
maintainers = with maintainers; [ figsoda ];
};
}

View File

@ -0,0 +1,37 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, flit-core
, fsspec
}:
buildPythonPackage rec {
pname = "universal-pathlib";
version = "0.0.23";
format = "pyproject";
src = fetchFromGitHub {
owner = "fsspec";
repo = "universal_pathlib";
rev = "v${version}";
hash = "sha256-UT4S7sqRn0/YFzFL1KzByK44u8G7pwWHERzJEm7xmiw=";
};
nativeBuildInputs = [
flit-core
];
propagatedBuildInputs = [
fsspec
];
pythonImportsCheck = [ "upath" ];
meta = with lib; {
description = "Pathlib api extended to use fsspec backends";
homepage = "https://github.com/fsspec/universal_pathlib";
changelog = "https://github.com/fsspec/universal_pathlib/releases/tag/${src.rev}";
license = licenses.mit;
maintainers = with maintainers; [ figsoda ];
};
}

View File

@ -2563,6 +2563,8 @@ with pkgs;
### APPLICATIONS/FILE-MANAGERS
browsr = callPackage ../applications/file-managers/browsr { };
cfm = callPackage ../applications/file-managers/cfm { };
clex = callPackage ../applications/file-managers/clex { };

View File

@ -628,6 +628,8 @@ self: super: with self; {
arsenic = callPackage ../development/python-modules/arsenic { };
art = callPackage ../development/python-modules/art { };
arviz = callPackage ../development/python-modules/arviz { };
arxiv2bib = callPackage ../development/python-modules/arxiv2bib { };
@ -10581,6 +10583,8 @@ self: super: with self; {
rich-click = callPackage ../development/python-modules/rich-click { };
rich-pixels = callPackage ../development/python-modules/rich-pixels { };
rich-rst = callPackage ../development/python-modules/rich-rst { };
ring-doorbell = callPackage ../development/python-modules/ring-doorbell { };
@ -12612,6 +12616,8 @@ self: super: with self; {
univers = callPackage ../development/python-modules/univers { };
universal-pathlib = callPackage ../development/python-modules/universal-pathlib { };
unpaddedbase64 = callPackage ../development/python-modules/unpaddedbase64 { };
unrardll = callPackage ../development/python-modules/unrardll { };