NixOS/modules/shell/multimedia.nix

43 lines
1.1 KiB
Nix

{
config,
lib,
pkgs,
...
}:
{
options.my.shell.multimedia.enable = lib.mkEnableOption "enable";
config = lib.mkIf config.my.shell.multimedia.enable {
users.users.jawz.packages =
let
packages = builtins.attrValues {
inherit (pkgs)
gallery-dl # similar to yt-dlp but for most image gallery websites
yt-dlp # downloads videos from most video websites
ffmpeg # not ffmpreg, the coolest video conversion tool!
imagemagick # photoshop what??
;
};
ffpb = pkgs.python3Packages.buildPythonApplication (
let
pname = "ffpb";
version = "0.4.1";
in
{
inherit pname version;
src = pkgs.python3Packages.fetchPypi {
inherit pname version;
sha256 = "sha256-7eVqbLpMHS1sBw2vYS4cTtyVdnnknGtEI8190VlXflk=";
};
doCheck = false;
buildInputs = [ pkgs.python3Packages.setuptools ];
propagatedBuildInputs = [ pkgs.python3Packages.tqdm ];
}
);
in
packages
++ [
ffpb
];
};
}