From dce843e98018baffd6a7d2d157d3362d1395fb0f Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Tue, 4 Apr 2023 10:23:25 +0200 Subject: ... --- _sources/generated.json | 33 ++++-- _sources/generated.nix | 27 +++-- accounts/gkleen@sif/ssh-hosts.nix | 5 + nvfetcher.toml | 6 +- user-profiles/mpv/default.nix | 211 ++++++++++++++++++++------------------ user-profiles/yt-dlp.nix | 34 +++--- 6 files changed, 188 insertions(+), 128 deletions(-) diff --git a/_sources/generated.json b/_sources/generated.json index 3419a35d..21d06f3d 100644 --- a/_sources/generated.json +++ b/_sources/generated.json @@ -21,7 +21,7 @@ }, "bpf-examples": { "cargoLocks": null, - "date": "2023-02-03", + "date": "2023-03-22", "extract": null, "name": "bpf-examples", "passthru": null, @@ -33,11 +33,11 @@ "name": null, "owner": "xdp-project", "repo": "bpf-examples", - "rev": "f27b9881bf04493a5d0a32d0f56f2b88d72ba63f", - "sha256": "sha256-Ikwgds8Nd+rKMP6ckECChpPgIIBgfhuaUug4uJKDX8U=", + "rev": "91f2e1528a39ba15450cd7b6ef1cf550f3da5af8", + "sha256": "sha256-0AxmHHeRarUQwaTR83sf0Nip/7XVdIeeMWM4DGc/ESo=", "type": "github" }, - "version": "f27b9881bf04493a5d0a32d0f56f2b88d72ba63f" + "version": "91f2e1528a39ba15450cd7b6ef1cf550f3da5af8" }, "emacs-scratch_el": { "cargoLocks": null, @@ -212,6 +212,25 @@ }, "version": "5d2fb7ab73fc0e36d44109e75c9be26bd42084e2" }, + "mpv-youtube-quality": { + "cargoLocks": null, + "date": "2020-02-10", + "extract": null, + "name": "mpv-youtube-quality", + "passthru": null, + "pinned": false, + "src": { + "deepClone": false, + "fetchSubmodules": false, + "leaveDotGit": false, + "name": null, + "rev": "1f8c31457459ffc28cd1c3f3c2235a53efad7148", + "sha256": "sha256-voNP8tCwCv8QnAZOPC9gqHRV/7jgCAE63VKBd/1s5ic=", + "type": "git", + "url": "https://github.com/jgreco/mpv-youtube-quality" + }, + "version": "1f8c31457459ffc28cd1c3f3c2235a53efad7148" + }, "postfix-mta-sts-resolver": { "cargoLocks": null, "date": null, @@ -221,11 +240,11 @@ "pinned": false, "src": { "name": null, - "sha256": "sha256-zO/DTAkJYnSiZFKloxTKmYgNHYGznaHyah71wgi9f44=", + "sha256": "sha256-j6ExzNxtY5wHSDtw+zeuGy3Go3yLvIV+9bYBxlPCIYo=", "type": "url", - "url": "https://github.com/Snawoot/postfix-mta-sts-resolver/archive/refs/tags/v1.2.0.tar.gz" + "url": "https://github.com/Snawoot/postfix-mta-sts-resolver/archive/refs/tags/v1.3.0.tar.gz" }, - "version": "1.2.0" + "version": "1.3.0" }, "postfwd": { "cargoLocks": null, diff --git a/_sources/generated.nix b/_sources/generated.nix index 23906a49..19a65aa6 100644 --- a/_sources/generated.nix +++ b/_sources/generated.nix @@ -17,15 +17,15 @@ }; bpf-examples = { pname = "bpf-examples"; - version = "f27b9881bf04493a5d0a32d0f56f2b88d72ba63f"; + version = "91f2e1528a39ba15450cd7b6ef1cf550f3da5af8"; src = fetchFromGitHub ({ owner = "xdp-project"; repo = "bpf-examples"; - rev = "f27b9881bf04493a5d0a32d0f56f2b88d72ba63f"; + rev = "91f2e1528a39ba15450cd7b6ef1cf550f3da5af8"; fetchSubmodules = true; - sha256 = "sha256-Ikwgds8Nd+rKMP6ckECChpPgIIBgfhuaUug4uJKDX8U="; + sha256 = "sha256-0AxmHHeRarUQwaTR83sf0Nip/7XVdIeeMWM4DGc/ESo="; }); - date = "2023-02-03"; + date = "2023-03-22"; }; emacs-scratch_el = { pname = "emacs-scratch_el"; @@ -132,12 +132,25 @@ }; date = "2023-02-22"; }; + mpv-youtube-quality = { + pname = "mpv-youtube-quality"; + version = "1f8c31457459ffc28cd1c3f3c2235a53efad7148"; + src = fetchgit { + url = "https://github.com/jgreco/mpv-youtube-quality"; + rev = "1f8c31457459ffc28cd1c3f3c2235a53efad7148"; + fetchSubmodules = false; + deepClone = false; + leaveDotGit = false; + sha256 = "sha256-voNP8tCwCv8QnAZOPC9gqHRV/7jgCAE63VKBd/1s5ic="; + }; + date = "2020-02-10"; + }; postfix-mta-sts-resolver = { pname = "postfix-mta-sts-resolver"; - version = "1.2.0"; + version = "1.3.0"; src = fetchurl { - url = "https://github.com/Snawoot/postfix-mta-sts-resolver/archive/refs/tags/v1.2.0.tar.gz"; - sha256 = "sha256-zO/DTAkJYnSiZFKloxTKmYgNHYGznaHyah71wgi9f44="; + url = "https://github.com/Snawoot/postfix-mta-sts-resolver/archive/refs/tags/v1.3.0.tar.gz"; + sha256 = "sha256-j6ExzNxtY5wHSDtw+zeuGy3Go3yLvIV+9bYBxlPCIYo="; }; }; postfwd = { diff --git a/accounts/gkleen@sif/ssh-hosts.nix b/accounts/gkleen@sif/ssh-hosts.nix index 3e3ac025..edfe46a0 100644 --- a/accounts/gkleen@sif/ssh-hosts.nix +++ b/accounts/gkleen@sif/ssh-hosts.nix @@ -499,4 +499,9 @@ } ]; }; + "col-crpd01" = + { hostname = "col-crpd01.mathinst.loc"; + proxyJump = "mgmt01"; + user = "root"; + }; } diff --git a/nvfetcher.toml b/nvfetcher.toml index 54a3292d..c109e06a 100644 --- a/nvfetcher.toml +++ b/nvfetcher.toml @@ -82,4 +82,8 @@ fetch.url = "https://github.com/hansmi/prometheus-lvm-exporter/archive/refs/tags [bpf-examples] src.git = "https://github.com/xdp-project/bpf-examples" fetch.github = "xdp-project/bpf-examples" -git.fetchSubmodules = true \ No newline at end of file +git.fetchSubmodules = true + +[mpv-youtube-quality] +src.git = "https://github.com/jgreco/mpv-youtube-quality" +fetch.git = "https://github.com/jgreco/mpv-youtube-quality" diff --git a/user-profiles/mpv/default.nix b/user-profiles/mpv/default.nix index 9c9d077b..908a4de3 100644 --- a/user-profiles/mpv/default.nix +++ b/user-profiles/mpv/default.nix @@ -1,108 +1,125 @@ { config, lib, userName, pkgs, sources, ... }: { - home-manager.users.${userName}.programs.mpv = { - enable = true; - bindings = { - # "CTRL+n" = "af toggle \"lavfi=[dynaudnorm=f=100:g=31:s=20.0]\""; - }; - config = { - ytdl = true; - subs-with-matching-audio = false; - audio-display = false; - osd-font = "Fira Sans"; - sub-font = "Fira Sans"; - # vo = "gpu"; - hwdec = "auto"; - force-window = "yes"; - # af = "lavfi=[dynaudnorm=f=100:g=31:s=20.0]"; - script-opts = lib.concatStringsSep "," [ - "osc-layout=topbar" - "vidscale=no" - "deadzonesize=0.9" - "ytdl_hook-ytdl_path=${pkgs.yt-dlp}/bin/yt-dlp" - "chapterskip-skip=sponsor;intro;endcard;interact" - "chapterskip-categories=sponsor>%[SponsorBlock%]: .*Sponsor.*;intro>%[SponsorBlock%]: .*Intro Animation.*;endcard>%[SponsorBlock%]: .*Endcards.*;interact>%[SponsorBlock%]: .*Interaction Reminder.*" - "sub_select-config=${pkgs.writeTextDir "sub-select.json" (builtins.toJSON [ - { - alang = "*"; - slang = "forced"; - } - { - alang = ["jpn" "ja"]; - slang = "eng?"; - blacklist = [ "sign" ]; - } - { - alang = ["jpn" "ja"]; - slang = "und"; - blacklist = [ "sign" ]; - } - { - alang = ["eng?" "deu?"]; - slang = "no"; - } - { - alang = "*"; - slang = "eng?"; - } - { - alang = "*"; - slang = "und"; - } - ])}" - ]; - }; - scripts = [ - (pkgs.stdenv.mkDerivation (sources.mpv-reload // rec { - installPhase = '' - install -d $out/share/mpv/scripts - install -m 0644 reload.lua $out/share/mpv/scripts/${passthru.scriptName} - ''; + home-manager.users.${userName} = { + programs.mpv = { + enable = true; + bindings = { + # "CTRL+n" = "af toggle \"lavfi=[dynaudnorm=f=100:g=31:s=20.0]\""; + }; + config = { + ytdl = true; + subs-with-matching-audio = false; + audio-display = false; + osd-font = "Fira Sans"; + sub-font = "Fira Sans"; + # vo = "gpu"; + hwdec = "auto"; + force-window = "yes"; + # af = "lavfi=[dynaudnorm=f=100:g=31:s=20.0]"; + script-opts = lib.concatStringsSep "," [ + "osc-layout=topbar" + "vidscale=no" + "deadzonesize=0.9" + "ytdl_hook-ytdl_path=${pkgs.yt-dlp}/bin/yt-dlp" + "chapterskip-skip=sponsor;intro;endcard;interact" + "chapterskip-categories=sponsor>%[SponsorBlock%]: .*Sponsor.*;intro>%[SponsorBlock%]: .*Intro Animation.*;endcard>%[SponsorBlock%]: .*Endcards.*;interact>%[SponsorBlock%]: .*Interaction Reminder.*" + "sub_select-config=${pkgs.writeTextDir "sub-select.json" (builtins.toJSON [ + { + alang = "*"; + slang = "forced"; + } + { + alang = ["jpn" "ja"]; + slang = "eng?"; + blacklist = [ "sign" ]; + } + { + alang = ["jpn" "ja"]; + slang = "und"; + blacklist = [ "sign" ]; + } + { + alang = ["eng?" "deu?"]; + slang = "no"; + } + { + alang = "*"; + slang = "eng?"; + } + { + alang = "*"; + slang = "und"; + } + ])}" + ]; + }; + scripts = [ + (pkgs.stdenv.mkDerivation (sources.mpv-reload // rec { + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 reload.lua $out/share/mpv/scripts/${passthru.scriptName} + ''; + + passthru.scriptName = "reload.lua"; + })) + (pkgs.stdenv.mkDerivation (sources.mpv-createchapter // rec { + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 createchapter.lua $out/share/mpv/scripts/${passthru.scriptName} + ''; - passthru.scriptName = "reload.lua"; - })) - (pkgs.stdenv.mkDerivation (sources.mpv-createchapter // rec { - installPhase = '' - install -d $out/share/mpv/scripts - install -m 0644 createchapter.lua $out/share/mpv/scripts/${passthru.scriptName} - ''; + passthru.scriptName = "createchapter.lua"; + })) + (pkgs.stdenv.mkDerivation (sources.mpv-autosave // rec { + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 autosave.lua $out/share/mpv/scripts/${passthru.scriptName} + ''; - passthru.scriptName = "createchapter.lua"; - })) - (pkgs.stdenv.mkDerivation (sources.mpv-autosave // rec { - installPhase = '' - install -d $out/share/mpv/scripts - install -m 0644 autosave.lua $out/share/mpv/scripts/${passthru.scriptName} - ''; + passthru.scriptName = "autosave.lua"; + })) + (pkgs.stdenv.mkDerivation (sources.mpv-mpris // rec { + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 mpris.so $out/share/mpv/scripts/${passthru.scriptName} + ''; - passthru.scriptName = "autosave.lua"; - })) - (pkgs.stdenv.mkDerivation (sources.mpv-mpris // rec { - installPhase = '' - install -d $out/share/mpv/scripts - install -m 0644 mpris.so $out/share/mpv/scripts/${passthru.scriptName} - ''; + nativeBuildInputs = with pkgs; [ pkg-config glib mpv ]; - nativeBuildInputs = with pkgs; [ pkg-config glib mpv ]; + passthru.scriptName = "mpris.so"; + })) + (pkgs.stdenv.mkDerivation (sources.mpv-chapterskip // rec { + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 chapterskip.lua $out/share/mpv/scripts/${passthru.scriptName} + ''; - passthru.scriptName = "mpris.so"; - })) - (pkgs.stdenv.mkDerivation (sources.mpv-chapterskip // rec { - installPhase = '' - install -d $out/share/mpv/scripts - install -m 0644 chapterskip.lua $out/share/mpv/scripts/${passthru.scriptName} - ''; + passthru.scriptName = "chapterskip.lua"; + })) + (pkgs.stdenv.mkDerivation (sources.mpv-subselect // rec { + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 sub-select.lua $out/share/mpv/scripts/${passthru.scriptName} + ''; - passthru.scriptName = "chapterskip.lua"; - })) - (pkgs.stdenv.mkDerivation (sources.mpv-subselect // rec { - installPhase = '' - install -d $out/share/mpv/scripts - install -m 0644 sub-select.lua $out/share/mpv/scripts/${passthru.scriptName} - ''; + passthru.scriptName = "sub-select.lua"; + })) + (pkgs.stdenv.mkDerivation (sources.mpv-youtube-quality // rec { + patches = [ + (pkgs.fetchpatch { url = "https://github.com/jgreco/mpv-youtube-quality/pull/31.patch"; hash = "sha256-2aTTkW48uRe8XC1ZQ8J5T9sUmZ5F3YAoYCMxqEs2AY8="; }) + (pkgs.fetchpatch { url = "https://github.com/jgreco/mpv-youtube-quality/pull/20.patch"; hash = "sha256-X5BwDsxziYbeiQvrBt8+IS+6oH1i0LvaaYtugL790gg="; }) + ]; + + installPhase = '' + install -d $out/share/mpv/scripts + install -m 0644 youtube-quality.lua $out/share/mpv/scripts/${passthru.scriptName} + ''; + + passthru.scriptName = "youtube-quality.lua"; + })) + ]; + }; - passthru.scriptName = "sub-select.lua"; - })) - ]; + xdg.configFile."mpv/youtube-dl".source = "${pkgs.yt-dlp}/bin/yt-dlp"; }; } diff --git a/user-profiles/yt-dlp.nix b/user-profiles/yt-dlp.nix index 0af42786..1a30ab5a 100644 --- a/user-profiles/yt-dlp.nix +++ b/user-profiles/yt-dlp.nix @@ -1,21 +1,23 @@ { config, lib, userName, pkgs, ... }: { home-manager.users.${userName} = { - home.packages = with pkgs; [ yt-dlp ]; - xdg.configFile."yt-dlp/config".text = '' - --cookies-from-browser firefox - --mark-watched - --format ${lib.concatStringsSep "/" [ - "bestvideo[width<=3840][height<=2160][fps<=60]+bestaudio" - "best[width<=3840][height<=2160][fps<=60]" - "best" - ]} - --sub-langs all,-live_chat - --prefer-free-formats - --embed-metadata - --downloader ${pkgs.aria2}/bin/aria2c - --sponsorblock-mark all - --restrict-filenames - ''; + programs.yt-dlp = { + enable = true; + settings = { + cookies-from-browser = "firefox"; + mark-watched = true; + format = lib.concatStringsSep "/" [ + "bestvideo[width<=3840][height<=2160][fps<=60]+bestaudio" + "best[width<=3840][height<=2160][fps<=60]" + "best" + ]; + sub-langs = "all,-live_chat,-rechat"; + prefer-free-formats = true; + embed-metadata = true; + downloader = "${pkgs.aria2}/bin/aria2c"; + sponsorblock-mark = "all"; + restrict-filenames = true; + }; + }; }; } -- cgit v1.2.3