From 3be0766a7a1a7afef0d2227fd65b39df35d57ff6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kier=C3=A1n=20Meinhardt?= Date: Fri, 11 Mar 2022 00:04:44 +0100 Subject: [PATCH] feat(mpv): add visualizer --- configs/mpv.nix | 8 ++++++++ packages/mpv-visualizer.nix | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 packages/mpv-visualizer.nix diff --git a/configs/mpv.nix b/configs/mpv.nix index e847ca6..171af6b 100644 --- a/configs/mpv.nix +++ b/configs/mpv.nix @@ -1,12 +1,19 @@ { pkgs, lib, + config, ... }: let swallow = command: "${pkgs.scripts.swallow}/bin/swallow ${command}"; in { environment.shellAliases.smpv = swallow "mpv"; + nixpkgs.overlays = [ + (self: super: { + mpv = config.home-manager.users.me.programs.mpv.finalPackage; + }) + ]; + home-manager.users.me = { programs.mpv = { enable = true; @@ -26,6 +33,7 @@ in { }; scripts = [ pkgs.mpvScripts.youtube-quality + (pkgs.callPackage {}) ]; }; }; diff --git a/packages/mpv-visualizer.nix b/packages/mpv-visualizer.nix new file mode 100644 index 0000000..5019abc --- /dev/null +++ b/packages/mpv-visualizer.nix @@ -0,0 +1,37 @@ +{ + lib, + stdenvNoCC, + fetchFromGitHub, + curl, + xclip, +}: +stdenvNoCC.mkDerivation rec { + pname = "visualizer"; + version = "unstable-2021-07-10"; + + src = fetchFromGitHub { + owner = "mfcc64"; + repo = "mpv-scripts"; + rev = "a0cd87eeb974a4602c5d8086b4051b5ab72f42e1"; + sha256 = "1xgd1nd117lpj3ppynhgaa5sbkfm7l8n6c9a2fy8p07is2dkndrq"; + }; + + dontBuild = true; + + installPhase = '' + runHook preInstall + mkdir -p $out/share/mpv/scripts + cp visualizer.lua $out/share/mpv/scripts + runHook postInstall + ''; + + passthru.scriptName = "visualizer.lua"; + + meta = with lib; { + description = "various audio visualization"; + homepage = "https://github.com/mfcc64/mpv-scripts"; + license = licenses.unfree; + platforms = platforms.all; + maintainers = with maintainers; [kmein]; + }; +}