app-id: com.linoise.Linoise runtime: org.gnome.Platform runtime-version: '47' sdk: org.gnome.Sdk sdk-extensions: - org.freedesktop.Sdk.Extension.rust-stable - org.freedesktop.Sdk.Extension.node20 command: linoise finish-args: - --share=ipc - --share=network - --socket=fallback-x11 - --socket=wayland - --socket=pulseaudio - --device=dri - --filesystem=xdg-music - --talk-name=org.mpris.MediaPlayer2.Linoise modules: - name: linoise buildsystem: simple build-options: build-args: - --share=network env: CARGO_NET_GIT_FETCH_WITH_CLI: "true" build-commands: # 1. Frontend Build - | . /usr/lib/sdk/node20/enable.sh npm install --production=false npm run build # 2. Copy frontend assets to Rust backend resources - mkdir -p src-tauri/resources - cp -r dist/* src-tauri/resources/ || true # 3. Build Rust backend binary directly - | . /usr/lib/sdk/rust-stable/enable.sh cd src-tauri && cargo build --release # 4. Install the binary - install -D -m 755 src-tauri/target/release/linoise-backend -t /app/bin/ - ln -sf /app/bin/linoise-backend /app/bin/linoise # 5. Install frontend assets - mkdir -p /app/share/linoise - cp -r dist/* /app/share/linoise/ || true # 6. Install icon - install -D -m 644 com.linoise.Linoise.png -t /app/share/icons/hicolor/128x128/apps/ # 7. Integrate manifest files - install -D -m 644 com.linoise.Linoise.desktop -t /app/share/applications/ - install -D -m 644 com.linoise.Linoise.metainfo.xml -t /app/share/metainfo/ sources: - type: dir path: .