From 429a013aa7d9a737b6bb32bf20c34a0ea469869f Mon Sep 17 00:00:00 2001 From: lassulus Date: Sat, 19 Mar 2016 22:01:34 +0100 Subject: l 5: add mpv-poll --- lass/5pkgs/default.nix | 1 + lass/5pkgs/mpv-poll/default.nix | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 lass/5pkgs/mpv-poll/default.nix diff --git a/lass/5pkgs/default.nix b/lass/5pkgs/default.nix index 37b61a4bf..0c9dd94ca 100644 --- a/lass/5pkgs/default.nix +++ b/lass/5pkgs/default.nix @@ -8,6 +8,7 @@ ublock = pkgs.callPackage ./firefoxPlugins/ublock.nix {}; vimperator = pkgs.callPackage ./firefoxPlugins/vimperator.nix {}; }; + mpv-poll = pkgs.callPackage ./mpv-poll/default.nix {}; xmonad-lass = let src = pkgs.writeNixFromCabal "xmonad-lass.nix" ./xmonad-lass; in pkgs.haskellPackages.callPackage src {}; diff --git a/lass/5pkgs/mpv-poll/default.nix b/lass/5pkgs/mpv-poll/default.nix new file mode 100644 index 000000000..ee191843e --- /dev/null +++ b/lass/5pkgs/mpv-poll/default.nix @@ -0,0 +1,40 @@ +{ pkgs, ... }: + +pkgs.writeScriptBin "mpv-poll" '' + #! ${pkgs.bash}/bin/bash + + pl=$1 + hist=''${HISTORY:-"./mpv_history"} + mpv_options=''${MPV_OPTIONS:-""} + + lastYT="" + + play_video () { + toPlay=$1 + echo $toPlay >> $hist + mpv $mpv_options $toPlay + } + + if ! [ -e $hist ]; then + touch $hist + fi + + while : + do + if [ -s $pl ]; then + toPlay=$(head -1 $pl) + sed -i '1d' $pl + if $(echo $toPlay | grep -Eq 'https?://(www.)?youtube.com/watch'); then + lastYT=$toPlay + fi + play_video $toPlay + else + if [ -n "$lastYT" ]; then + next=$(yt-next $lastYT) + lastYT=$next + play_video $next + fi + sleep 1 + fi + done +'' -- cgit v1.2.3