app-id: com.pheem49.mint runtime: org.gnome.Platform runtime-version: '47' sdk: org.gnome.Sdk sdk-extensions: - org.freedesktop.Sdk.Extension.rust-stable command: mint-desktop build-options: append-path: /usr/lib/sdk/rust-stable/bin env: PKG_CONFIG_PATH: /app/lib/pkgconfig:/app/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig LDFLAGS: -L/app/lib -L/app/lib64 LD_LIBRARY_PATH: /app/lib:/app/lib64 TAURI_ENV_DEBUG: "false" finish-args: # Graphic sockets for UI - --socket=x11 - --socket=wayland - --device=dri - --share=ipc # Network permission for AI Agent tasks and APIs - --share=network # Audio notifications/TTS - --socket=pulseaudio # Filesystem permissions matching application config scope - --filesystem=xdg-config/mint:create # D-Bus permissions for Tray Icons (AppIndicator) - --talk-name=org.ayatana - --talk-name=org.kde.StatusNotifierWatcher modules: # Reference Flathub's shared module for libayatana-appindicator (requires cloning shared-modules repository) - ../shared-modules/libayatana-appindicator/libayatana-appindicator-gtk3.json # Note: For strict Flathub compliance, npm and cargo packages should be generated # offline using flatpak-node-generator and flatpak-cargo-generator. # This manifest represents the build structure using the project source directory. - name: mint-desktop buildsystem: simple build-options: build-args: - --share=network build-commands: # Build the Tauri Rust backend binary (Frontend UI must be built on the host first) - cargo build --release --bin mint-desktop # Install executable, desktop shortcut, metainfo, and app icon - install -Dm755 target/release/mint-desktop /app/bin/mint-desktop - install -Dm644 flatpak/com.pheem49.mint.desktop /app/share/applications/com.pheem49.mint.desktop - install -Dm644 flatpak/com.pheem49.mint.metainfo.xml /app/share/metainfo/com.pheem49.mint.metainfo.xml - install -Dm644 assets/icon.png /app/share/icons/hicolor/512x512/apps/com.pheem49.mint.png sources: - type: git url: https://github.com/pheem49/Mint-CLI.git branch: main