Merge pull request #294517 from chewblacka/fix-ytdownloader

ytdownloader: add patch to set correct config dir
This commit is contained in:
Maciej Krüger 2024-03-09 19:00:23 +01:00 committed by GitHub
commit 32146f3161
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 25 additions and 3 deletions

View file

@ -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;

View file

@ -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 = ''