mirror of
https://github.com/aaif-goose/goose.git
synced 2026-07-03 14:10:03 +02:00
80 lines
4.3 KiB
YAML
80 lines
4.3 KiB
YAML
app-id: io.github.block.Goose
|
|
runtime: org.freedesktop.Platform
|
|
runtime-version: '25.08'
|
|
sdk: org.freedesktop.Sdk
|
|
base: org.electronjs.Electron2.BaseApp
|
|
base-version: '25.08'
|
|
sdk-extensions:
|
|
- org.freedesktop.Sdk.Extension.node24
|
|
- org.freedesktop.Sdk.Extension.rust-stable
|
|
- org.freedesktop.Sdk.Extension.llvm22
|
|
command: goose-desktop
|
|
separate-locales: false
|
|
finish-args:
|
|
- --device=dri
|
|
- --share=ipc
|
|
- --socket=wayland
|
|
- --socket=fallback-x11
|
|
- --socket=pulseaudio
|
|
- --share=network
|
|
- --filesystem=home
|
|
- --talk-name=org.freedesktop.Flatpak
|
|
- --env=ELECTRON_TRASH=gio
|
|
- --env=XCURSOR_PATH=/run/host/user-share/icons:/run/host/share/icons
|
|
modules:
|
|
- name: goose-desktop
|
|
buildsystem: simple
|
|
build-options:
|
|
append-path: /usr/lib/sdk/node24/bin:/usr/lib/sdk/rust-stable/bin
|
|
env:
|
|
XDG_CACHE_HOME: /run/build/goose-desktop/flatpak-node/cache
|
|
npm_config_nodedir: /usr/lib/sdk/node24
|
|
CARGO_HOME: /run/build/goose-desktop/cargo
|
|
CARGO_NET_OFFLINE: 'true'
|
|
ELECTRON_SKIP_BINARY_DOWNLOAD: '1'
|
|
BINDGEN_EXTRA_CLANG_ARGS: --sysroot=/ -isystem /usr/lib/sdk/llvm22/lib/clang/22/include -isystem /usr/include
|
|
LIBCLANG_PATH: /usr/lib/sdk/llvm22/lib
|
|
RUSTY_V8_ARCHIVE: /run/build/goose-desktop/librusty_v8_release_x86_64-unknown-linux-gnu.a.gz
|
|
build-commands:
|
|
- install -Dm0644 cargo/config .cargo/config.toml
|
|
- cargo --offline build --release -p goose-server
|
|
- install -Dm0755 target/release/goosed ui/desktop/src/bin/goosed
|
|
- mkdir -p /run/build/goose-desktop/pnpm-cli /run/build/goose-desktop/pnpm-bin && tar -xzf pnpm-10.30.3.tgz -C /run/build/goose-desktop/pnpm-cli && ln -sf /run/build/goose-desktop/pnpm-cli/package/bin/pnpm.cjs /run/build/goose-desktop/pnpm-bin/pnpm && ln -sf /run/build/goose-desktop/pnpm-cli/package/bin/pnpx.cjs /run/build/goose-desktop/pnpm-bin/pnpx
|
|
- export PATH="/run/build/goose-desktop/pnpm-bin:$PATH" && cd ui && pnpm config set store-dir /run/build/goose-desktop/flatpak-node/pnpm-store && pnpm install --offline --frozen-lockfile
|
|
- |
|
|
export PATH="/run/build/goose-desktop/pnpm-bin:$PATH" && \
|
|
cd ui/desktop && \
|
|
perl -0pi -e "s/const \{ resolve \} = require\('path'\);\n/const { resolve } = require('path');\nconst postPackage = require('..\/..\/forge-post-package');\n/" forge.config.ts && \
|
|
perl -0pi -e "s/ icon: 'src\/images\/icon',\n/ icon: 'src\/images\/icon',\n electronZipDir: process.env.ELECTRON_ZIP_DIR,\n/" forge.config.ts && \
|
|
perl -0pi -e "s/module\.exports = \{\n/module.exports = {\n hooks: { postPackage },\n/" forge.config.ts && \
|
|
pnpm run i18n:compile && \
|
|
ELECTRON_SKIP_BINARY_DOWNLOAD=1 \
|
|
ELECTRON_ZIP_DIR=/run/build/goose-desktop/flatpak-node/cache/electron \
|
|
pnpm exec electron-forge package --platform=linux
|
|
- install -Dm0755 goose-desktop.sh /app/bin/goose-desktop
|
|
- install -Dm0644 io.github.block.Goose.desktop /app/share/applications/io.github.block.Goose.desktop
|
|
- install -Dm0644 io.github.block.Goose.metainfo.xml /app/share/metainfo/io.github.block.Goose.metainfo.xml
|
|
- install -Dm0644 ui/desktop/src/images/icon.svg /app/share/icons/hicolor/scalable/apps/io.github.block.Goose.svg
|
|
- install -Dm0644 ui/desktop/src/images/icon-512.png /app/share/icons/hicolor/512x512/apps/io.github.block.Goose.png
|
|
sources:
|
|
- type: archive
|
|
url: https://github.com/aaif-goose/goose/archive/refs/tags/v1.34.1.tar.gz
|
|
sha256: f8bb579750bb7dba3fd8685a27b4986f7caa2d629f6d80cd7879308dcf540c36
|
|
strip-components: 1
|
|
- type: file
|
|
url: https://github.com/denoland/rusty_v8/releases/download/v145.0.0/librusty_v8_release_x86_64-unknown-linux-gnu.a.gz
|
|
sha256: 7215753c0c78d141f752d7b993794bae07e18a1dfd466dcaa84fa64e76bacac1
|
|
- type: file
|
|
url: https://registry.npmjs.org/pnpm/-/pnpm-10.30.3.tgz
|
|
sha512: c961d1e0a2d8e354ecaa5166b822516668b7f44cb5bd95122d590dd81922f606f5473b6d23ec4a5be05e7fcd18e8488d47d978bbe981872f1145d06e9a740017
|
|
- type: file
|
|
path: flatpak/forge-post-package.js
|
|
- type: file
|
|
path: flatpak/goose-desktop.sh
|
|
- type: file
|
|
path: flatpak/io.github.block.Goose.desktop
|
|
- type: file
|
|
path: flatpak/io.github.block.Goose.metainfo.xml
|
|
- flatpak/cargo-sources.json
|
|
- flatpak/generated-sources.json
|