From ef8d43ec786834b99d667316e4a1bf65aa85ad42 Mon Sep 17 00:00:00 2001 From: aunetx <aunetx@yandex.com> Date: Tue, 12 Oct 2021 18:59:27 +0200 Subject: [PATCH] Flatpak version works, miss MPRIS --- .gitignore | 4 +++- Makefile | 23 ++++++++++++++++------- dev.aunetx.deezer.appdata.xml | 27 +++++++++++++++++++++++++++ dev.aunetx.deezer.desktop | 15 +++++++++++++++ dev.aunetx.deezer.svg | 16 ++++++++++++++++ 5 files changed, 77 insertions(+), 8 deletions(-) create mode 100644 dev.aunetx.deezer.appdata.xml create mode 100644 dev.aunetx.deezer.desktop create mode 100644 dev.aunetx.deezer.svg diff --git a/.gitignore b/.gitignore index 2c24559..55f9996 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,6 @@ app-32.7z deezer-*.exe package-lock.json package.json -app.7z \ No newline at end of file +app.7z +repo +*.AppImage \ No newline at end of file diff --git a/Makefile b/Makefile index 1c071b8..8ebbcdc 100644 --- a/Makefile +++ b/Makefile @@ -38,7 +38,6 @@ install_build_deps: npm install --engine-strict asar npm install prettier - prepare: install_build_deps mkdir -p source # Download installer @@ -66,27 +65,37 @@ prepare: install_build_deps head -n -2 app/package.json > tmp.txt && mv tmp.txt app/package.json echo $(pkg_json_append) | tee -a app/package.json - -build_flatpak: prepare +prepare_flatpak: prepare # Generate npm sources (without installing them) npm i --prefix=app --package-lock-only # Package the sources to use them in flatpak-builder offline ./flatpak-node-generator.py npm app/package-lock.json -o flatpak/generated-sources.json --electron-node-headers --xdg-layout - # Build the Flatpak app - cd flatpak && flatpak-builder build dev.aunetx.deezer.yml --install --force-clean --user +build_flatpak: prepare_flatpak + # Build the flatpak image + cd flatpak && flatpak-builder --force-clean build dev.aunetx.deezer.yml +export_flatpak: prepare_flatpak + # Build the flatpak package and export it to the repo + cd flatpak && flatpak-builder --gpg-sign=5A7D3B06F15FB60238941027EB3A799E7EE716EB --repo=repo --force-clean build dev.aunetx.deezer.yml + +flatpak_bundle: build_flatpak + # Create a flatpak bundle + flatpak build-bundle --gpg-sign=5A7D3B06F15FB60238941027EB3A799E7EE716EB flatpak/repo deezer.flatpak dev.aunetx.deezer + +install_flatpak: prepare_flatpak + # Build and install locally the flatpak image + cd flatpak && flatpak-builder --force-clean --user --install build dev.aunetx.deezer.yml build_appimage: prepare # Install required dependencies to pack them with AppImage npm i --prefix=app # Build the AppImage package npm run dist --prefix=app - + mv app/dist/*.AppImage . run_flatpak: flatpak run dev.aunetx.deezer - clean: rm -rf app extra flatpak/{.flatpak-builder,build} node_modules source app-32.7z app.7z deezer-*.exe package-lock.json \ No newline at end of file diff --git a/dev.aunetx.deezer.appdata.xml b/dev.aunetx.deezer.appdata.xml new file mode 100644 index 0000000..8b5a6d1 --- /dev/null +++ b/dev.aunetx.deezer.appdata.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="UTF-8"?> +<component type="desktop"> + <id>dev.aunetx.deezer</id> + <provides> + <id>dev.aunetx.deezer.desktop</id> + </provides> + <launchable type="desktop-id">dev.aunetx.deezer.desktop</launchable> + <name>Deezer</name> + <developer_name>aunetx</developer_name> + <summary>Online music streaming service</summary> + <metadata_license>CC0-1.0</metadata_license> + <project_license>LicenseRef-proprietary=https://www.deezer.com/legal/cgu/</project_license> + <url type="homepage">https://www.deezer.com</url> + <url type="help">https://github.com/aunetx/deezer-linux</url> + <description> + <p>An unofficial linux port of the deezer desktop application. + Access all of your favorite music, and save them offline for later!</p> + </description> + <kudos> + <kudo>HiDpiIcon</kudo> + </kudos> + <releases> + <release version="5.30.0.alpha" date="2021-10-10" /> + </releases> + <content_rating type="oars-1.1" /> + <update_contact>me_at_aunetx.dev</update_contact> +</component> \ No newline at end of file diff --git a/dev.aunetx.deezer.desktop b/dev.aunetx.deezer.desktop new file mode 100644 index 0000000..6b0ebb4 --- /dev/null +++ b/dev.aunetx.deezer.desktop @@ -0,0 +1,15 @@ +[Desktop Entry] +Type=Application +Name=Deezer +GenericName=Online music streaming service +Comment=Listen and download all your favorite music +StartupNotify=true +Icon=dev.aunetx.deezer +TryExec=/app/bin/run.sh +Exec=/app/bin/run.sh %U +Terminal=false +MimeType=x-scheme-handler/deezer; +Categories=Audio;Music;Player;AudioVideo; +Keywords=Music;Player;Streaming;Online; +StartupWMClass=Deezer +X-GNOME-UsesNotifications=true \ No newline at end of file diff --git a/dev.aunetx.deezer.svg b/dev.aunetx.deezer.svg new file mode 100644 index 0000000..e244003 --- /dev/null +++ b/dev.aunetx.deezer.svg @@ -0,0 +1,16 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" version="1"> + <rect style="opacity:0.2" width="56" height="59" x="-61" y="-62" rx="2.8" ry="2.95" transform="matrix(0,-1,-1,0,0,0)"/> + <rect style="fill:#3f3f3f" width="56" height="59" x="-60" y="-62" rx="2.8" ry="2.95" transform="matrix(0,-1,-1,0,0,0)"/> + <path style="fill:#16be71" d="M 57,15 H 47 v 6 h 10 z"/> + <path style="fill:#05ac9c" d="M 57,24 H 47 v 6 h 10 z"/> + <path style="fill:#026ed2" d="M 57,33 H 47 v 6 h 10 z"/> + <path style="fill:#f6a500" d="M 18,42 H 8 v 6 h 10 z"/> + <path style="fill:#e74b32" d="M 31,42 H 21 v 6 h 10 z"/> + <path style="fill:#3446d9" d="M 57,42 H 47 v 6 h 10 z"/> + <path style="fill:#9e2bbb" d="M 44,39 H 34 v -6 h 10 z"/> + <path style="fill:#b72b68" d="M 44,48 H 34 v -6 h 10 z"/> + <path style="fill:#f57524" d="M 31,33 H 21 v 6 h 10 z"/> + <path style="fill:#fabc45" d="M 31,24 H 21 v 6 h 10 z"/> + <path style="opacity:0.2" d="M 47 21 L 47 22 L 57 22 L 57 21 L 47 21 z M 21 30 L 21 31 L 31 31 L 31 30 L 21 30 z M 47 30 L 47 31 L 57 31 L 57 30 L 47 30 z M 21 39 L 21 40 L 31 40 L 31 39 L 21 39 z M 34 39 L 34 40 L 44 40 L 44 39 L 34 39 z M 47 39 L 47 40 L 57 40 L 57 39 L 47 39 z M 8 48 L 8 49 L 18 49 L 18 48 L 8 48 z M 21 48 L 21 49 L 31 49 L 31 48 L 21 48 z M 34 48 L 34 49 L 44 49 L 44 48 L 34 48 z M 47 48 L 47 49 L 57 49 L 57 48 L 47 48 z"/> + <path style="fill:#ffffff;opacity:0.1" d="M 5.9492188 4 C 4.3149189 4 3 5.2495813 3 6.8007812 L 3 7.8007812 C 3 6.2495813 4.3149189 5 5.9492188 5 L 59.050781 5 C 60.685081 5 62 6.2495813 62 7.8007812 L 62 6.8007812 C 62 5.2495813 60.685081 4 59.050781 4 L 5.9492188 4 z"/> +</svg>