fix: extract .desktop inside a dedicated file and add npm run test:metainfo and test:desktop to check file.

also clean:dist
This commit is contained in:
MasterAcnolo
2026-10-02 14:52:30 +02:00
parent a308352ea0
commit cf65069496
3 changed files with 14 additions and 18 deletions

View File

@@ -16,6 +16,7 @@
}, },
"main": "main.js", "main": "main.js",
"scripts": { "scripts": {
"clean:dist": "rm -rf dist/",
"start": "electron --no-warnings .", "start": "electron --no-warnings .",
"start:warn": "electron --trace-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 .", "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", "release:dry-run": "bash scripts/release.sh --dry-run",
"test": "jest", "test": "jest",
"test:unit": "jest test/unit", "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": "eslint . --format pretty",
"lint:fix": "eslint . --fix --format pretty", "lint:fix": "eslint . --fix --format pretty",
"update": "npm update" "update": "npm update"

View File

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

View File

@@ -54,20 +54,6 @@ exec /opt/freedom-loader/freedom-loader "$@"
EOF EOF
chmod +x "$TMP_WRAPPER/freedom-loader" 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 # Step 1 - Build .rpm from linux-unpacked via fpm
# ------------------------------------------------------------ # ------------------------------------------------------------
@@ -89,11 +75,10 @@ echo "Building RPM..."
--package "$RPM_OUT" \ --package "$RPM_OUT" \
"$ROOT_DIR/dist/linux-unpacked/=/opt/freedom-loader" \ "$ROOT_DIR/dist/linux-unpacked/=/opt/freedom-loader" \
"$TMP_WRAPPER/freedom-loader=/usr/bin/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/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" "$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" "$TMP_DESKTOP" rm -rf "$TMP_WRAPPER"
echo "RPM built: $RPM_OUT" echo "RPM built: $RPM_OUT"
# ------------------------------------------------------------ # ------------------------------------------------------------