From cf65069496508299edcec3a3620de061d39148b6 Mon Sep 17 00:00:00 2001 From: MasterAcnolo Date: Fri, 2 Oct 2026 14:52:30 +0200 Subject: [PATCH] fix: extract .desktop inside a dedicated file and add npm run test:metainfo and test:desktop to check file. also clean:dist --- package.json | 3 +++ .../com.masteracnolo.freedomloader.desktop | 8 +++++++ scripts/create-copr-package.sh | 21 +++---------------- 3 files changed, 14 insertions(+), 18 deletions(-) create mode 100644 package/com.masteracnolo.freedomloader.desktop diff --git a/package.json b/package.json index 66090a4..b89f3ce 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ }, "main": "main.js", "scripts": { + "clean:dist": "rm -rf dist/", "start": "electron --no-warnings .", "start:warn": "electron --trace-warnings .", "start:debug": "WAYLAND_DEBUG=1 ELECTRON_ENABLE_LOGGING=1 ELECTRON_ENABLE_STACK_DUMPING=1 electron --enable-logging --v=1 .", @@ -32,6 +33,8 @@ "release:dry-run": "bash scripts/release.sh --dry-run", "test": "jest", "test:unit": "jest test/unit", + "test:metainfo": "appstreamcli validate package/com.masteracnolo.freedomloader.metainfo.xml", + "test:desktop": "desktop-file-validate package/com.masteracnolo.freedomloader.desktop", "lint": "eslint . --format pretty", "lint:fix": "eslint . --fix --format pretty", "update": "npm update" diff --git a/package/com.masteracnolo.freedomloader.desktop b/package/com.masteracnolo.freedomloader.desktop new file mode 100644 index 0000000..5b4ea55 --- /dev/null +++ b/package/com.masteracnolo.freedomloader.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=Freedom Loader +Exec=/opt/freedom-loader/freedom-loader %U +Icon=freedom-loader +Type=Application +Categories=AudioVideo; +Comment=Free and open-source GUI for yt-dlp +StartupWMClass=com.masteracnolo.freedomloader \ No newline at end of file diff --git a/scripts/create-copr-package.sh b/scripts/create-copr-package.sh index aca36ba..e1303c9 100755 --- a/scripts/create-copr-package.sh +++ b/scripts/create-copr-package.sh @@ -54,20 +54,6 @@ exec /opt/freedom-loader/freedom-loader "$@" EOF chmod +x "$TMP_WRAPPER/freedom-loader" -# Desktop entry file -TMP_DESKTOP="$ROOT_DIR/.rpm-pkg-tmp-desktop" -mkdir -p "$TMP_DESKTOP" -cat > "$TMP_DESKTOP/com.masteracnolo.freedomloader.desktop" << 'EOF' -[Desktop Entry] -Name=Freedom Loader -Exec=/opt/freedom-loader/freedom-loader %U -Icon=freedom-loader -Type=Application -Categories=AudioVideo;Utility;Network; -Comment=Free and open-source GUI for yt-dlp -StartupWMClass=com.masteracnolo.freedomloader -EOF - # ------------------------------------------------------------ # Step 1 - Build .rpm from linux-unpacked via fpm # ------------------------------------------------------------ @@ -89,11 +75,10 @@ echo "Building RPM..." --package "$RPM_OUT" \ "$ROOT_DIR/dist/linux-unpacked/=/opt/freedom-loader" \ "$TMP_WRAPPER/freedom-loader=/usr/bin/freedom-loader" \ - "$TMP_DESKTOP/com.masteracnolo.freedomloader.desktop=/usr/share/applications/freedom-loader.desktop" \ "$ROOT_DIR/build/app-icon.png=/usr/share/icons/hicolor/512x512/apps/freedom-loader.png" \ - "$ROOT_DIR/package/com.masteracnolo.freedomloader.metainfo.xml=/usr/share/metainfo/com.masteracnolo.freedomloader.metainfo.xml" - -rm -rf "$TMP_WRAPPER" "$TMP_DESKTOP" + "$ROOT_DIR/package/com.masteracnolo.freedomloader.metainfo.xml=/usr/share/metainfo/com.masteracnolo.freedomloader.metainfo.xml" \ + "$ROOT_DIR/package/com.masteracnolo.freedomloader.desktop=/usr/share/applications/com.masteracnolo.freedomloader.desktop" +rm -rf "$TMP_WRAPPER" echo "RPM built: $RPM_OUT" # ------------------------------------------------------------