#!/bin/bash # Exit if any command fails set -e # Echo all commands for debug purposes set -x # No spaces in project name. projectName=freezer projectId=f.f.freezer executableName=freezer # ------------------------------- Build Flatpak ----------------------------- # # Extract portable Flutter build. mkdir -p $projectName tar -xf $projectName-linux.tar.gz -C $projectName # Copy the portable app to the Flatpak-based location. cp -r $projectName /app/ chmod +x /app/$projectName/$executableName mkdir -p /app/bin ln -s /app/$projectName/$executableName /app/bin/$executableName # Install the icon. iconDir=/app/share/icons/hicolor/scalable/apps mkdir -p $iconDir cp -r "$projectName/data/flutter_assets/assets/icon.ico" "$iconDir/freezer.ico" # Install the desktop file. desktopFileDir=/app/share/applications cat < "$desktopFileDir/$projectId.desktop" [Desktop Entry] Type=Application Name=freezer GenericName=No DRM Deezer client Comment=No DRM Deezer client to listen and download your songs Exec=$executableName Icon=freezer Categories=Audio;Music;Player;AudioVideo; Keywords=Music;Player;Streaming;Online; Terminal=false EOF # Install the AppStream metadata file. metadataDir=/app/share/metainfo mkdir -p $metadataDir cp -v $projectId.metainfo.xml $metadataDir/