From 19abbaa2d6d1fa6d8605d2c7f6c869ccefa6a873 Mon Sep 17 00:00:00 2001 From: nicoo Date: Fri, 3 Mar 2023 11:49:58 +0000 Subject: [PATCH 1/5] mpvScripts.seekTo: init at unstable-2022-10-02 --- .../video/mpv/scripts/seek-to.nix | 35 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 36 insertions(+) create mode 100644 pkgs/applications/video/mpv/scripts/seek-to.nix diff --git a/pkgs/applications/video/mpv/scripts/seek-to.nix b/pkgs/applications/video/mpv/scripts/seek-to.nix new file mode 100644 index 000000000000..ebed3498c060 --- /dev/null +++ b/pkgs/applications/video/mpv/scripts/seek-to.nix @@ -0,0 +1,35 @@ +{ lib +, stdenvNoCC +, fetchFromGitHub +}: + +let + src = fetchFromGitHub { + owner = "occivink"; + repo = "mpv-scripts"; + rev = "af360f332897dda907644480f785336bc93facf1"; + hash = "sha256-KdCrUkJpbxxqmyUHksVVc8KdMn8ivJeUA2eerFZfEE8="; + }; + version = "unstable-2022-10-02"; +in + +# Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }` +stdenvNoCC.mkDerivation { + pname = "mpv_seek-to"; + passthru.scriptName = "seek-to.lua"; + inherit version src; + + dontBuild = true; + installPhase = '' + mkdir -p $out/share/mpv/scripts + cp -r scripts/seek-to.lua $out/share/mpv/scripts/ + ''; + + meta = with lib; { + description = "Mpv script for seeking to a specific position"; + homepage = "https://github.com/occivink/mpv-scripts"; + license = licenses.unlicense; + platforms = platforms.all; + maintainers = with maintainers; [ nicoo ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 261872100c73..3b0945e2511a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -32221,6 +32221,7 @@ with pkgs; mpris = callPackage ../applications/video/mpv/scripts/mpris.nix { }; mpv-playlistmanager = callPackage ../applications/video/mpv/scripts/mpv-playlistmanager.nix { }; mpvacious = callPackage ../applications/video/mpv/scripts/mpvacious.nix { }; + seekTo = callPackage ../applications/video/mpv/scripts/seek-to.nix {}; simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix { }; sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix { }; thumbnail = callPackage ../applications/video/mpv/scripts/thumbnail.nix { }; From 589d611a40b9648cc9fd057d95131519fca8dd73 Mon Sep 17 00:00:00 2001 From: nicoo Date: Sun, 9 Apr 2023 18:30:56 +0000 Subject: [PATCH 2/5] mpvScripts.occivink: Add generic helper for all scripts in repo --- .../video/mpv/scripts/occivink.nix | 40 +++++++++++++++++++ .../video/mpv/scripts/seek-to.nix | 35 ---------------- pkgs/top-level/all-packages.nix | 5 +-- 3 files changed, 42 insertions(+), 38 deletions(-) create mode 100644 pkgs/applications/video/mpv/scripts/occivink.nix delete mode 100644 pkgs/applications/video/mpv/scripts/seek-to.nix diff --git a/pkgs/applications/video/mpv/scripts/occivink.nix b/pkgs/applications/video/mpv/scripts/occivink.nix new file mode 100644 index 000000000000..1cf541ebf5fd --- /dev/null +++ b/pkgs/applications/video/mpv/scripts/occivink.nix @@ -0,0 +1,40 @@ +{ lib +, stdenvNoCC +, fetchFromGitHub +}: + +let + script = { name, ... }@p: + stdenvNoCC.mkDerivation (lib.attrsets.recursiveUpdate p { + pname = "mpv_${name}"; + passthru.scriptName = "${name}.lua"; + + src = fetchFromGitHub { + owner = "occivink"; + repo = "mpv-scripts"; + rev = "af360f332897dda907644480f785336bc93facf1"; + hash = "sha256-KdCrUkJpbxxqmyUHksVVc8KdMn8ivJeUA2eerFZfEE8="; + }; + version = "unstable-2022-10-02"; + + dontBuild = true; + installPhase = '' + mkdir -p $out/share/mpv/scripts + cp -r scripts/${name}.lua $out/share/mpv/scripts/ + ''; + + meta = with lib; { + homepage = "https://github.com/occivink/mpv-scripts"; + license = licenses.unlicense; + platforms = platforms.all; + maintainers = with maintainers; [ nicoo ]; + }; + }); + +in +{ + + # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }` + seekTo = script { name = "seek-to"; meta.description = "Mpv script for seeking to a specific position"; }; + +} diff --git a/pkgs/applications/video/mpv/scripts/seek-to.nix b/pkgs/applications/video/mpv/scripts/seek-to.nix deleted file mode 100644 index ebed3498c060..000000000000 --- a/pkgs/applications/video/mpv/scripts/seek-to.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ lib -, stdenvNoCC -, fetchFromGitHub -}: - -let - src = fetchFromGitHub { - owner = "occivink"; - repo = "mpv-scripts"; - rev = "af360f332897dda907644480f785336bc93facf1"; - hash = "sha256-KdCrUkJpbxxqmyUHksVVc8KdMn8ivJeUA2eerFZfEE8="; - }; - version = "unstable-2022-10-02"; -in - -# Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }` -stdenvNoCC.mkDerivation { - pname = "mpv_seek-to"; - passthru.scriptName = "seek-to.lua"; - inherit version src; - - dontBuild = true; - installPhase = '' - mkdir -p $out/share/mpv/scripts - cp -r scripts/seek-to.lua $out/share/mpv/scripts/ - ''; - - meta = with lib; { - description = "Mpv script for seeking to a specific position"; - homepage = "https://github.com/occivink/mpv-scripts"; - license = licenses.unlicense; - platforms = platforms.all; - maintainers = with maintainers; [ nicoo ]; - }; -} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3b0945e2511a..9f1ca8be6730 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -32213,7 +32213,7 @@ with pkgs; mpvpaper = callPackage ../tools/wayland/mpvpaper { }; - mpvScripts = recurseIntoAttrs { + mpvScripts = recurseIntoAttrs ({ acompressor = callPackage ../applications/video/mpv/scripts/acompressor.nix {}; autoload = callPackage ../applications/video/mpv/scripts/autoload.nix { }; convert = callPackage ../applications/video/mpv/scripts/convert.nix { }; @@ -32221,7 +32221,6 @@ with pkgs; mpris = callPackage ../applications/video/mpv/scripts/mpris.nix { }; mpv-playlistmanager = callPackage ../applications/video/mpv/scripts/mpv-playlistmanager.nix { }; mpvacious = callPackage ../applications/video/mpv/scripts/mpvacious.nix { }; - seekTo = callPackage ../applications/video/mpv/scripts/seek-to.nix {}; simple-mpv-webui = callPackage ../applications/video/mpv/scripts/simple-mpv-webui.nix { }; sponsorblock = callPackage ../applications/video/mpv/scripts/sponsorblock.nix { }; thumbnail = callPackage ../applications/video/mpv/scripts/thumbnail.nix { }; @@ -32230,7 +32229,7 @@ with pkgs; webtorrent-mpv-hook = callPackage ../applications/video/mpv/scripts/webtorrent-mpv-hook.nix { }; youtube-quality = callPackage ../applications/video/mpv/scripts/youtube-quality.nix { }; cutter = callPackage ../applications/video/mpv/scripts/cutter.nix { }; - }; + } // (callPackage ../applications/video/mpv/scripts/occivink.nix {})); mrpeach = callPackage ../applications/audio/pd-plugins/mrpeach { }; From a3266137669cc737199fc2f03b26efc0b76f2e74 Mon Sep 17 00:00:00 2001 From: nicoo Date: Sun, 9 Apr 2023 18:50:02 +0000 Subject: [PATCH 3/5] mpvScripts.blacklistExtensions: init at unstable-2022-10-02 --- pkgs/applications/video/mpv/scripts/occivink.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/applications/video/mpv/scripts/occivink.nix b/pkgs/applications/video/mpv/scripts/occivink.nix index 1cf541ebf5fd..fc37dd1fe1f2 100644 --- a/pkgs/applications/video/mpv/scripts/occivink.nix +++ b/pkgs/applications/video/mpv/scripts/occivink.nix @@ -37,4 +37,9 @@ in # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }` seekTo = script { name = "seek-to"; meta.description = "Mpv script for seeking to a specific position"; }; + blacklistExtensions = script { + name = "blacklist-extensions"; + meta.description = "Automatically remove playlist entries based on their extension."; + }; + } From 290dcc75e9a9a081041abd4ef40f41a6d10cb9f2 Mon Sep 17 00:00:00 2001 From: nicoo Date: Sun, 16 Apr 2023 13:44:24 +0000 Subject: [PATCH 4/5] mpvScripts.occivink: Minor fixes to the generic helper - Renamed 'name' parameter to avoid collisions with mkDerivation's one. - Ensured the passed parameters can always override generic defaults. --- pkgs/applications/video/mpv/scripts/occivink.nix | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/video/mpv/scripts/occivink.nix b/pkgs/applications/video/mpv/scripts/occivink.nix index fc37dd1fe1f2..79c61ad978ec 100644 --- a/pkgs/applications/video/mpv/scripts/occivink.nix +++ b/pkgs/applications/video/mpv/scripts/occivink.nix @@ -4,10 +4,10 @@ }: let - script = { name, ... }@p: - stdenvNoCC.mkDerivation (lib.attrsets.recursiveUpdate p { - pname = "mpv_${name}"; - passthru.scriptName = "${name}.lua"; + script = { n, ... }@p: + stdenvNoCC.mkDerivation (lib.attrsets.recursiveUpdate { + pname = "mpv_${n}"; + passthru.scriptName = "${n}.lua"; src = fetchFromGitHub { owner = "occivink"; @@ -20,7 +20,7 @@ let dontBuild = true; installPhase = '' mkdir -p $out/share/mpv/scripts - cp -r scripts/${name}.lua $out/share/mpv/scripts/ + cp -r scripts/${n}.lua $out/share/mpv/scripts/ ''; meta = with lib; { @@ -29,16 +29,16 @@ let platforms = platforms.all; maintainers = with maintainers; [ nicoo ]; }; - }); + } p); in { # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }` - seekTo = script { name = "seek-to"; meta.description = "Mpv script for seeking to a specific position"; }; + seekTo = script { n = "seek-to"; meta.description = "Mpv script for seeking to a specific position"; }; blacklistExtensions = script { - name = "blacklist-extensions"; + n = "blacklist-extensions"; meta.description = "Automatically remove playlist entries based on their extension."; }; From 947f8256a41453771c9875640461a108f62f0098 Mon Sep 17 00:00:00 2001 From: nicoo Date: Sun, 16 Apr 2023 13:49:47 +0000 Subject: [PATCH 5/5] mpvScripts.occivink: make FDOs (Fixed-Output Derivations) --- pkgs/applications/video/mpv/scripts/occivink.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/video/mpv/scripts/occivink.nix b/pkgs/applications/video/mpv/scripts/occivink.nix index 79c61ad978ec..da723fd9102e 100644 --- a/pkgs/applications/video/mpv/scripts/occivink.nix +++ b/pkgs/applications/video/mpv/scripts/occivink.nix @@ -29,17 +29,25 @@ let platforms = platforms.all; maintainers = with maintainers; [ nicoo ]; }; + + outputHashAlgo = "sha256"; + outputHashMode = "recursive"; } p); in { # Usage: `pkgs.mpv.override { scripts = [ pkgs.mpvScripts.seekTo ]; }` - seekTo = script { n = "seek-to"; meta.description = "Mpv script for seeking to a specific position"; }; + seekTo = script { + n = "seek-to"; + meta.description = "Mpv script for seeking to a specific position"; + outputHash = "sha256-3RlbtUivmeoR9TZ6rABiZSd5jd2lFv/8p/4irHMLshs="; + }; blacklistExtensions = script { n = "blacklist-extensions"; meta.description = "Automatically remove playlist entries based on their extension."; + outputHash = "sha256-qw9lz8ofmvvh23F9aWLxiU4YofY+YflRETu+nxMhvVE="; }; }