diff options
author | John Garcia <jgarcia3788@yahoo.co.uk> | 2024-03-09 15:06:15 +0000 |
---|---|---|
committer | John Garcia <jgarcia3788@yahoo.co.uk> | 2024-03-09 15:06:15 +0000 |
commit | f48a35b0702366ef9c0ac3a95906e68f3d1eb7ca (patch) | |
tree | 3345b630153e8507ef088050be88b3399425fb59 /pkgs/by-name/yt | |
parent | 9289a0678efadcd95fae82ea8c82318d3a86694a (diff) |
ytdownloader: add patch to set correct config dir
Diffstat (limited to 'pkgs/by-name/yt')
-rw-r--r-- | pkgs/by-name/yt/ytdownloader/config-dir.patch | 18 | ||||
-rw-r--r-- | pkgs/by-name/yt/ytdownloader/package.nix | 10 |
2 files changed, 25 insertions, 3 deletions
diff --git a/pkgs/by-name/yt/ytdownloader/config-dir.patch b/pkgs/by-name/yt/ytdownloader/config-dir.patch new file mode 100644 index 0000000000000..eb3684a248870 --- /dev/null +++ b/pkgs/by-name/yt/ytdownloader/config-dir.patch @@ -0,0 +1,18 @@ +--- a/main.js ++++ b/main.js +@@ -13,6 +13,15 @@ + const fs = require("fs"); + const path = require("path"); + autoUpdater.autoDownload = false; ++ ++// Set the config directory to XDG_CONFIG_HOME/ytdownloader ++const xdgConfigHome = process.env.XDG_CONFIG_HOME; ++let configDir = app.getPath('home') + "/.config/ytdownloader"; ++if (xdgConfigHome) { ++ configDir = xdgConfigHome + "/ytdownloader"; ++} ++app.setPath ('userData', configDir); ++ + /**@type {BrowserWindow} */ + let win = null; + let secondaryWindow = null; diff --git a/pkgs/by-name/yt/ytdownloader/package.nix b/pkgs/by-name/yt/ytdownloader/package.nix index e5e3c202e81d4..9a607c16e4aac 100644 --- a/pkgs/by-name/yt/ytdownloader/package.nix +++ b/pkgs/by-name/yt/ytdownloader/package.nix @@ -25,19 +25,23 @@ buildNpmPackage rec { buildInputs = [ ffmpeg yt-dlp ]; desktopItem = makeDesktopItem { - name = "YTDownloader"; + name = "ytDownloader"; exec = "ytdownloader %U"; icon = "ytdownloader"; - desktopName = "YT Downloader"; + desktopName = "ytDownloader"; comment = "A modern GUI video and audio downloader"; categories = [ "Utility" ]; - startupWMClass = "YTDownloader"; + startupWMClass = "ytDownloader"; }; ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; dontNpmBuild = true; + # Patch config dir to ~/.config/ytdownloader + # Otherwise it stores config in ~/.config/Electron + patches = [ ./config-dir.patch ]; + # Replace hardcoded ffmpeg and ytdlp paths # Also stop it from downloading ytdlp postPatch = '' |