diff --git a/flake.nix b/flake.nix index 3723e09..ef24694 100644 --- a/flake.nix +++ b/flake.nix @@ -33,6 +33,7 @@ in { inherit (moppkgs) + bandcampsync dnsfmt edalize leaf-markdown diff --git a/overlays.nix b/overlays.nix index 0113a24..97710ef 100644 --- a/overlays.nix +++ b/overlays.nix @@ -1,6 +1,7 @@ let overlays = (builtins.mapAttrs (name: value: (final: prev: { "${name}" = value final prev; })) { + bandcampsync = final: _: final.callPackage ./pkgs/bandcampsync.nix { }; comic-code = final: _: final.callPackage ./pkgs/comic-code.nix { }; dnsfmt = final: _: final.callPackage ./pkgs/dnsfmt.nix { }; edalize = final: _: final.callPackage ./pkgs/edalize.nix { }; diff --git a/pkgs/bandcampsync.nix b/pkgs/bandcampsync.nix new file mode 100644 index 0000000..40f4e56 --- /dev/null +++ b/pkgs/bandcampsync.nix @@ -0,0 +1,26 @@ +{ + lib, + fetchFromGitHub, + python3Packages, +}: +python3Packages.buildPythonPackage (finalAttrs: { + pname = "bandcampsync"; + version = "0.8.0"; + src = fetchFromGitHub { + owner = "meeb"; + repo = finalAttrs.pname; + tag = "v${finalAttrs.version}"; + hash = "sha256-j370Kn95CQuGjwOoFMXNNQZ5odlR/0uiw02hN/UVAb8="; + }; + dependencies = with python3Packages; [ + beautifulsoup4 + curl-cffi + ]; + pyproject = true; + build-system = [ python3Packages.setuptools ]; + meta = { + description = "Downloads your Bandcamp purchases automatically"; + homepage = "https://github.com/meeb/bandcampsync"; + license = lib.licenses.bsd3; + }; +})