nixos-config/profiles/packages/youtube-to-mpv.nix

21 lines
711 B
Nix
Raw Normal View History

2020-08-10 01:17:22 +04:00
2024-07-16 15:18:47 +03:00
{ stdenvNoCC, writeShellScriptBin, libnotify, mpv, wl-clipboard, term }:
2020-08-10 01:17:22 +04:00
let
2024-07-16 15:18:47 +03:00
yt-mpv = writeShellScriptBin "yt-mpv" ''
2022-01-29 00:41:41 +03:00
if [[ "$1" != "--no-video" ]]; then
2024-07-16 15:18:47 +03:00
${libnotify}/bin/notify-send -t 3000 --icon=video-television "Playing Video" "$(${wl-clipboard}/bin/wl-paste)"
${mpv}/bin/mpv --fs "$(${wl-clipboard}/bin/wl-paste)"
2022-01-29 00:41:41 +03:00
else
2024-07-16 15:18:47 +03:00
${libnotify}/bin/notify-send -t 3000 --icon=video-television "Playing Audio" "$(${wl-clipboard}/bin/wl-paste)"
${term} -e ${mpv}/bin/mpv --no-video "$(${wl-clipboard}/bin/wl-paste)"
2022-01-29 00:41:41 +03:00
fi
'';
2020-08-10 01:17:22 +04:00
in
2024-07-16 15:18:47 +03:00
stdenvNoCC.mkDerivation {
2020-08-10 01:17:22 +04:00
name = "youtube-to-mpv";
src = yt-mpv;
installPhase = ''
mkdir -p $out/bin
mv ./bin/yt-mpv $out/bin/yt-mpv
'';
}