diff options
author | Brian Picciano <me@mediocregopher.com> | 2024-12-29 19:58:06 +0100 |
---|---|---|
committer | Brian Picciano <me@mediocregopher.com> | 2024-12-29 19:58:06 +0100 |
commit | 655ebd530215bec1b09cc653c020e601ead1d424 (patch) | |
tree | 20dfcf5cb6b5aab0c0b6fea0c875724983191088 /nix | |
parent | f6a4a0103897fcaedc2158290e63a167351c3189 (diff) |
Diffstat (limited to 'nix')
-rw-r--r-- | nix/bandcamp-dl.nix | 10 | ||||
-rw-r--r-- | nix/beautifulsoup4.nix | 75 |
2 files changed, 82 insertions, 3 deletions
diff --git a/nix/bandcamp-dl.nix b/nix/bandcamp-dl.nix index b55b539..74380e0 100644 --- a/nix/bandcamp-dl.nix +++ b/nix/bandcamp-dl.nix @@ -1,18 +1,21 @@ { python3Packages, + fetchPypi, makeWrapper, + beautifulsoup4, }: let - version = "v0.0.13"; + version = "v0.0.16"; src = builtins.fetchGit { url = "https://github.com/iheanyi/bandcamp-dl.git"; - rev = "fe2eafae4bfc901d2760aef9d4cc6db60528b4b4"; + rev = "cdf24c019d9014a6e203458b9a0cd3a03081e05a"; }; in python3Packages.buildPythonApplication { inherit version src; + format = "pyproject"; pname = "bandcamp-dl"; propagatedBuildInputs = [ - python3Packages.beautifulsoup4 + beautifulsoup4 python3Packages.demjson3 python3Packages.mutagen python3Packages.requests @@ -20,6 +23,7 @@ in python3Packages.docopt python3Packages.lxml python3Packages.mock + python3Packages.setuptools ]; nativeBuildInputs = [ makeWrapper ]; postInstall = '' diff --git a/nix/beautifulsoup4.nix b/nix/beautifulsoup4.nix new file mode 100644 index 0000000..b5c5a6e --- /dev/null +++ b/nix/beautifulsoup4.nix @@ -0,0 +1,75 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + fetchpatch, + chardet, + hatchling, + html5lib, + lxml, + pytestCheckHook, + pythonOlder, + soupsieve, + typing-extensions, + + # for passthru.tests + html-sanitizer, + markdownify, + mechanicalsoup, + nbconvert, + subliminal, + wagtail, +}: + +buildPythonPackage rec { + pname = "beautifulsoup4"; + version = "4.13.0b2"; + pyproject = true; + + disabled = pythonOlder "3.6"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-xoTd7AcaoSCBmImqnolA+Fw/PNqgjiO5+iZRA4eJe9U="; + }; + + doCheck = false; + + nativeBuildInputs = [ + hatchling + ]; + + propagatedBuildInputs = [ + chardet + soupsieve + typing-extensions + ]; + + optional-dependencies = { + html5lib = [ html5lib ]; + lxml = [ lxml ]; + }; + + nativeCheckInputs = [ + pytestCheckHook + ] ++ lib.flatten (builtins.attrValues optional-dependencies); + + passthru.tests = { + inherit + html-sanitizer + markdownify + mechanicalsoup + nbconvert + subliminal + wagtail + ; + }; + + meta = with lib; { + changelog = "https://git.launchpad.net/beautifulsoup/tree/CHANGELOG?h=${version}"; + description = "HTML and XML parser"; + homepage = "http://crummy.com/software/BeautifulSoup/bs4/"; + license = licenses.mit; + maintainers = with maintainers; [ domenkozar ]; + }; +} |