From ebe0bb1d7112e16d17fdadf33d855c43095cf4d8 Mon Sep 17 00:00:00 2001 From: Asaki Yuki Date: Tue, 14 Apr 2026 13:02:59 +0700 Subject: [PATCH] add yt-dlp.nix --- host/desktop/device.nix | 11 ----------- modules/features/home/dolphin.nix | 33 +++++++++++++++++++++++-------- modules/features/home/yt-dlp.nix | 6 ++++++ options/home/programs/dolphin.nix | 18 +++++++++++++---- users/asakiyuki/programs.nix | 1 + 5 files changed, 46 insertions(+), 23 deletions(-) create mode 100644 modules/features/home/yt-dlp.nix diff --git a/host/desktop/device.nix b/host/desktop/device.nix index 3f7cb6f..13d184b 100644 --- a/host/desktop/device.nix +++ b/host/desktop/device.nix @@ -60,17 +60,6 @@ in { source = { ".config/qt5ct/colors/Catppuccin-Mocha.conf" = "${pkgs.catppuccin-qt5ct}/share/qt5ct/colors/catppuccin-mocha-sapphire.conf"; ".config/qt6ct/colors/Catppuccin-Mocha.conf" = "${pkgs.catppuccin-qt5ct}/share/qt6ct/colors/catppuccin-mocha-sapphire.conf"; - - ".local/share/kio/servicemenus/copy-server-public-url.desktop" = - libs.root "/configs/services-menu/copy-server-public-url.desktop"; - ".local/share/kio/servicemenus/open-with-code.desktop" = - libs.root "/configs/services-menu/open-with-code.desktop"; - ".local/share/kio/servicemenus/open-with-nvim.desktop" = - libs.root "/configs/services-menu/open-with-nvim.desktop"; - ".local/share/kio/servicemenus/open-with-antigravity.desktop" = - libs.root "/configs/services-menu/open-with-antigravity.desktop"; - ".local/share/kio/servicemenus/open-ghostty-here.desktop" = - libs.root "/configs/services-menu/open-ghostty-here.desktop"; }; symlink = { diff --git a/modules/features/home/dolphin.nix b/modules/features/home/dolphin.nix index f9796d1..045591b 100644 --- a/modules/features/home/dolphin.nix +++ b/modules/features/home/dolphin.nix @@ -1,12 +1,29 @@ -{...}: { - programs.dolphin.configs = { - General = { - RememberOpenedTabs = false; - ModifiedStartupSettings = true; - FilterBar = true; +{libs, ...}: { + programs.dolphin = { + services-menu = { + copy-server-public-url = { + "Desktop Entry" = { + Type = "Service"; + ServiceTypes = "KonqPopupMenu/Plugin"; + MimeType = "all/allfiles"; + Actions = "CopyPublicURL"; + }; + "Desktop Action CopyPublicURL" = { + Name = "Copy location as URL"; + Icon = "org.kde.plasma.clipboard"; + Exec = "${libs.root "/scripts/copy-public-url.sh"} \"%F\""; + }; + }; }; - ContextMenu = { - ShowOpenTerminal = false; + configs = { + General = { + RememberOpenedTabs = false; + ModifiedStartupSettings = true; + FilterBar = true; + }; + ContextMenu = { + ShowOpenTerminal = false; + }; }; }; } diff --git a/modules/features/home/yt-dlp.nix b/modules/features/home/yt-dlp.nix new file mode 100644 index 0000000..e77c986 --- /dev/null +++ b/modules/features/home/yt-dlp.nix @@ -0,0 +1,6 @@ +{...}: { + programs.yt-dlp = { + enable = true; + settings = {}; + }; +} diff --git a/options/home/programs/dolphin.nix b/options/home/programs/dolphin.nix index be188fd..18126f0 100644 --- a/options/home/programs/dolphin.nix +++ b/options/home/programs/dolphin.nix @@ -16,10 +16,15 @@ in { config.programs.dolphin.package ]; - home.file.".config/dolphinrc" = { - text = lib.generators.toINI {} (sanitize config.programs.dolphin.configs); - force = true; - }; + home.file = lib.mergeAttrsList [ + { + ".config/dolphinrc" = { + text = lib.generators.toINI {} (sanitize config.programs.dolphin.configs); + force = true; + }; + } + # (lib.attrsToList config.programs.dolphin.services-menu)z + ]; }; options.programs.dolphin = { @@ -408,5 +413,10 @@ in { }; }; }; + + services-menu = lib.mkOption { + type = lib.types.attrsOf (lib.types.attrsOf lib.types.str); + default = {}; + }; }; } diff --git a/users/asakiyuki/programs.nix b/users/asakiyuki/programs.nix index eee0c5e..7aa1439 100644 --- a/users/asakiyuki/programs.nix +++ b/users/asakiyuki/programs.nix @@ -13,6 +13,7 @@ ../../modules/features/home/xdg.nix ../../modules/features/home/packages.nix ../../modules/features/home/git.nix + ../../modules/features/home/yt-dlp.nix ../../modules/features/home/dolphin.nix ../../modules/programs/nixvim/_nixvim.nix