mirror of
https://github.com/MasterAcnolo/Freedom-Loader.git
synced 2026-07-29 18:25:47 +02:00
Compare commits
4 Commits
4f03c5876f
...
553e383c94
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
553e383c94 | ||
|
|
89cc0b85a3 | ||
|
|
abd0bf9006 | ||
|
|
653f73805e |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,6 +4,7 @@
|
|||||||
# Build Output Folder
|
# Build Output Folder
|
||||||
/dist
|
/dist
|
||||||
/out
|
/out
|
||||||
|
/srpm-out
|
||||||
|
|
||||||
# Config JSON File. Create it and fill it if you want to have dev only settings
|
# Config JSON File. Create it and fill it if you want to have dev only settings
|
||||||
config/config.dev.json
|
config/config.dev.json
|
||||||
|
|||||||
14
package.json
14
package.json
@@ -3,7 +3,16 @@
|
|||||||
"productName": "Freedom Loader",
|
"productName": "Freedom Loader",
|
||||||
"version": "1.6.0",
|
"version": "1.6.0",
|
||||||
"author": "MasterAcnolo <MasterAcnolo@users.noreply.github.com>",
|
"author": "MasterAcnolo <MasterAcnolo@users.noreply.github.com>",
|
||||||
"description": "Freedom Loader",
|
"description": "Free and open-source GUI for yt-dlp — download video and audio from hundreds of platforms",
|
||||||
|
"homepage": "https://masteracnolo.github.io/Freedom-Loader-Site/",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/MasterAcnolo/Freedom-Loader.git"
|
||||||
|
},
|
||||||
|
"license": "GPL-3.0-only",
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/MasterAcnolo/Freedom-Loader/issues"
|
||||||
|
},
|
||||||
"main": "main.js",
|
"main": "main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "electron --trace-warnings .",
|
"start": "electron --trace-warnings .",
|
||||||
@@ -11,6 +20,7 @@
|
|||||||
"build": "electron-builder",
|
"build": "electron-builder",
|
||||||
"build:win": "electron-builder --win",
|
"build:win": "electron-builder --win",
|
||||||
"build:linux": "electron-builder --linux",
|
"build:linux": "electron-builder --linux",
|
||||||
|
"build:rpm": "bash scripts/create-copr-package.sh",
|
||||||
"build:all": "electron-builder -wl",
|
"build:all": "electron-builder -wl",
|
||||||
"update": "npm update"
|
"update": "npm update"
|
||||||
},
|
},
|
||||||
@@ -116,11 +126,11 @@
|
|||||||
"target": [
|
"target": [
|
||||||
"AppImage",
|
"AppImage",
|
||||||
"deb",
|
"deb",
|
||||||
"rpm",
|
|
||||||
"snap"
|
"snap"
|
||||||
],
|
],
|
||||||
"category": "Utility",
|
"category": "Utility",
|
||||||
"icon": "build/app-icon.png",
|
"icon": "build/app-icon.png",
|
||||||
|
"executableName": "freedom-loader",
|
||||||
"extraResources": [
|
"extraResources": [
|
||||||
{
|
{
|
||||||
"from": "resources/binaries/linux/yt-dlp",
|
"from": "resources/binaries/linux/yt-dlp",
|
||||||
|
|||||||
9
package/copr-build.sh
Normal file
9
package/copr-build.sh
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/sh -xe
|
||||||
|
git clone --depth 1 https://github.com/MasterAcnolo/Freedom-Loader.git src
|
||||||
|
cd src
|
||||||
|
npm ci
|
||||||
|
npx electron-builder --linux dir
|
||||||
|
|
||||||
|
VERSION=$(node -p "require('./package.json').version")
|
||||||
|
tar czf "$resultdir/freedom-loader-$VERSION.tar.gz" -C dist linux-unpacked
|
||||||
|
sed "s/__VERSION__/$VERSION/" package/freedom-loader.spec > "$resultdir/freedom-loader.spec"
|
||||||
50
scripts/create-copr-package.sh
Executable file
50
scripts/create-copr-package.sh
Executable file
@@ -0,0 +1,50 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -e
|
||||||
|
|
||||||
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||||
|
VERSION=$(node -p "require('$ROOT_DIR/package.json').version")
|
||||||
|
RPM_OUT="$ROOT_DIR/dist/freedom-loader-${VERSION}.x86_64.rpm"
|
||||||
|
|
||||||
|
# Check that linux-unpacked exists
|
||||||
|
if [ ! -d "$ROOT_DIR/dist/linux-unpacked" ]; then
|
||||||
|
echo "Error: dist/linux-unpacked not found. Run 'npm run build:linux' first."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Step 1 — Build .rpm from linux-unpacked via fpm
|
||||||
|
echo "Building RPM..."
|
||||||
|
fpm -s dir -t rpm --force \
|
||||||
|
--name freedom-loader \
|
||||||
|
--version "$VERSION" \
|
||||||
|
--architecture x86_64 \
|
||||||
|
--description "Free and open-source GUI for yt-dlp" \
|
||||||
|
--url "https://masteracnolo.github.io/Freedom-Loader-Site/" \
|
||||||
|
--maintainer "MasterAcnolo <MasterAcnolo@users.noreply.github.com>" \
|
||||||
|
--license "GPL-3.0-only" \
|
||||||
|
--depends gtk3 \
|
||||||
|
--depends nss \
|
||||||
|
--depends libXScrnSaver \
|
||||||
|
--depends at-spi2-core \
|
||||||
|
--package "$RPM_OUT" \
|
||||||
|
"$ROOT_DIR/dist/linux-unpacked/=/opt/freedom-loader" \
|
||||||
|
"$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"
|
||||||
|
|
||||||
|
echo "RPM built: $RPM_OUT"
|
||||||
|
|
||||||
|
# Step 2 — Build SRPM for COPR (wraps the .rpm above)
|
||||||
|
echo "Building SRPM for COPR..."
|
||||||
|
mkdir -p "$ROOT_DIR/srpm-out"
|
||||||
|
|
||||||
|
TMP_DIR="$ROOT_DIR/.copr-build-tmp"
|
||||||
|
mkdir -p "$TMP_DIR"
|
||||||
|
TMP_SPEC="$TMP_DIR/freedom-loader.spec"
|
||||||
|
sed "s/__VERSION__/$VERSION/g" "$ROOT_DIR/package/freedom-loader.spec" > "$TMP_SPEC"
|
||||||
|
|
||||||
|
rpmbuild -bs "$TMP_SPEC" \
|
||||||
|
--define "_sourcedir $ROOT_DIR/dist" \
|
||||||
|
--define "_srcrpmdir $ROOT_DIR/srpm-out"
|
||||||
|
|
||||||
|
rm -rf "$TMP_DIR"
|
||||||
|
echo "SRPM built: $ROOT_DIR/srpm-out/freedom-loader-$VERSION-1*.src.rpm"
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -e
|
|
||||||
|
|
||||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
||||||
ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
||||||
|
|
||||||
VERSION=$(node -p "require('$ROOT_DIR/package.json').version")
|
|
||||||
mkdir -p "$ROOT_DIR/srpm-out"
|
|
||||||
|
|
||||||
TMP_DIR="$ROOT_DIR/.copr-build-tmp"
|
|
||||||
mkdir -p "$TMP_DIR"
|
|
||||||
TMP_SPEC="$TMP_DIR/freedom-loader.spec"
|
|
||||||
sed "s/__VERSION__/$VERSION/g" "$ROOT_DIR/package/freedom-loader.spec" > "$TMP_SPEC"
|
|
||||||
|
|
||||||
rpmbuild -bs "$TMP_SPEC" \
|
|
||||||
--define "_sourcedir $ROOT_DIR/dist" \
|
|
||||||
--define "_srcrpmdir $ROOT_DIR/srpm-out"
|
|
||||||
|
|
||||||
rm -rf "$TMP_DIR"
|
|
||||||
echo "SRPM généré : $ROOT_DIR/srpm-out/freedom-loader-$VERSION-1*.src.rpm"
|
|
||||||
Reference in New Issue
Block a user