Add adl module and packages
This commit is contained in:
parent
f4a0da4d87
commit
ddf772a4d8
|
@ -47,6 +47,7 @@
|
||||||
vim.enable = true;
|
vim.enable = true;
|
||||||
};
|
};
|
||||||
shell = {
|
shell = {
|
||||||
|
adl.enable = true;
|
||||||
bitwarden.enable = true;
|
bitwarden.enable = true;
|
||||||
direnv.enable = true;
|
direnv.enable = true;
|
||||||
git.enable = true;
|
git.enable = true;
|
||||||
|
|
|
@ -41,6 +41,7 @@
|
||||||
};
|
};
|
||||||
dev = {};
|
dev = {};
|
||||||
shell = {
|
shell = {
|
||||||
|
adl.enable = true;
|
||||||
bitwarden.enable = true;
|
bitwarden.enable = true;
|
||||||
direnv.enable = true;
|
direnv.enable = true;
|
||||||
git.enable = true;
|
git.enable = true;
|
||||||
|
|
27
modules/shell/adl.nix
Normal file
27
modules/shell/adl.nix
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
# modules/shell/adl.nix
|
||||||
|
#
|
||||||
|
# To maintain my filty weeb habits, I need tools. Tools that make it easy to
|
||||||
|
# watch animu and track 'em on anilist. Laziness > my weebery.
|
||||||
|
|
||||||
|
{ options, config, lib, pkgs, ... }:
|
||||||
|
|
||||||
|
with lib;
|
||||||
|
with lib.my;
|
||||||
|
let cfg = config.modules.shell.adl;
|
||||||
|
in {
|
||||||
|
options.modules.shell.adl = {
|
||||||
|
enable = mkBoolOpt false;
|
||||||
|
};
|
||||||
|
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
user.packages = with pkgs; [
|
||||||
|
# Dependencies
|
||||||
|
my.trackma
|
||||||
|
my.anime-downloader
|
||||||
|
mpv
|
||||||
|
|
||||||
|
# The star of the show
|
||||||
|
my.adl
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
31
packages/adl.nix
Normal file
31
packages/adl.nix
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{ lib, stdenv, fetchzip, my, ... }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "adl";
|
||||||
|
|
||||||
|
src = fetchzip {
|
||||||
|
url = "https://github.com/RaitaroH/adl/archive/master.zip";
|
||||||
|
sha256 = "HtKSPD3g0y68A37N4HhOIorW4sPyOr4ei9wABFh4GYc=";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = with my; [
|
||||||
|
trackma
|
||||||
|
anime-downloader
|
||||||
|
];
|
||||||
|
|
||||||
|
phases = "installPhase";
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cp $src/adl $out/bin/adl
|
||||||
|
cp ${my.trackma}/bin/trackma $out/bin/trackma
|
||||||
|
cp ${my.anime-downloader}/bin/anime $out/bin/anime
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/RaitaroH/adl";
|
||||||
|
description = "popcorn anime-downloader + trackma wrapper";
|
||||||
|
license = lib.licenses.gpl3;
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
maintainers = [];
|
||||||
|
};
|
||||||
|
}
|
58
packages/anime-downloader.nix
Normal file
58
packages/anime-downloader.nix
Normal file
|
@ -0,0 +1,58 @@
|
||||||
|
{ lib, python3, nodejs, aria2, coloredlogs }:
|
||||||
|
|
||||||
|
with python3.pkgs;
|
||||||
|
let
|
||||||
|
pySmartDL = buildPythonPackage rec {
|
||||||
|
pname = "pySmartDL";
|
||||||
|
version = "1.3.4";
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "NSddFpTzR00zvcqTsn02CCZf/UL1rrKOVvOLkGwMNfQ=";
|
||||||
|
};
|
||||||
|
doCheck = false;
|
||||||
|
};
|
||||||
|
cfscrape = buildPythonPackage rec {
|
||||||
|
pname = "cfscrape";
|
||||||
|
version = "2.0.5";
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "2VwWsGdxJ9+uPqUp82AdFHTK5+MlJ44dnYmipz7yH6k=";
|
||||||
|
};
|
||||||
|
buildInputs = [ requests ];
|
||||||
|
doCheck = false;
|
||||||
|
};
|
||||||
|
in buildPythonApplication rec {
|
||||||
|
pname = "anime-downloader";
|
||||||
|
version = "5.0.7";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "BP4Wf2efU1RUk6I+82rFcvEdxDSKonTOIZjm3B0x7Eg=";
|
||||||
|
};
|
||||||
|
|
||||||
|
propagatedBuildInputs = [
|
||||||
|
aria2
|
||||||
|
nodejs
|
||||||
|
beautifulsoup4
|
||||||
|
cfscrape
|
||||||
|
click
|
||||||
|
coloredlogs
|
||||||
|
fuzzywuzzy
|
||||||
|
pySmartDL
|
||||||
|
pycryptodome
|
||||||
|
requests
|
||||||
|
requests-cache
|
||||||
|
setuptools
|
||||||
|
tabulate
|
||||||
|
];
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = "https://github.com/anime-dl/anime-downloader";
|
||||||
|
description = "A simple but powerful anime downloader and streamer.";
|
||||||
|
license = lib.licenses.unlicense;
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
maintainers = [];
|
||||||
|
};
|
||||||
|
}
|
24
packages/trackma.nix
Normal file
24
packages/trackma.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{ lib, python3 }:
|
||||||
|
|
||||||
|
with python3.pkgs;
|
||||||
|
buildPythonApplication rec {
|
||||||
|
pname = "Trackma";
|
||||||
|
version = "0.8.4";
|
||||||
|
|
||||||
|
src = fetchPypi {
|
||||||
|
inherit pname version;
|
||||||
|
sha256 = "9UHhxpbDcjW42JlefDHkTor1TdKmCQ1a1u0JS0Rt79k=";
|
||||||
|
};
|
||||||
|
|
||||||
|
# No tests included
|
||||||
|
doCheck = false;
|
||||||
|
pythonImportsCheck = [ "trackma" ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
homepage = "https://github.com/z411/trackma";
|
||||||
|
description = "Open multi-site list manager for Unix-like systems. (ex-wMAL)";
|
||||||
|
license = licenses.gpl3;
|
||||||
|
platforms = [ "x86_64-linux" ];
|
||||||
|
maintainers = [];
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in a new issue