app-id: com.circlewithadot.Relibre runtime: org.gnome.Platform runtime-version: "47" sdk: org.gnome.Sdk sdk-extensions: - org.freedesktop.Sdk.Extension.golang command: relibre modules: - name: relibre buildsystem: simple build-commands: # 1) Work from a writable copy (sources are ro via rofiles) - install -d /run/build/relibre/src - cp -a . /run/build/relibre/src # 2) Enable CGO for webkitgtk - cd /run/build/relibre/src && go env -w CGO_ENABLED=1 # 3) Patch vendored pkg-config name if needed (4.0 -> 4.1 on GNOME 47) - | cd /run/build/relibre/src files=$(grep -R -l 'webkit2gtk-4\.0' vendor || true) if [ -n "$files" ]; then sed -i 's/webkit2gtk-4\.0/webkit2gtk-4\.1/g' $files fi # 4) Build from the writable copy using the vendored modules - cd /run/build/relibre/src && go build -mod=vendor -trimpath -ldflags "-s -w" -o /app/bin/relibre # 5) Desktop + icon (if present) - if [ -f /run/build/relibre/src/dist/com.circlewithadot.Relibre.desktop ]; then install -Dm644 /run/build/relibre/src/dist/com.circlewithadot.Relibre.desktop /app/share/applications/com.circlewithadot.Relibre.desktop; fi - if [ -f /run/build/relibre/src/dist/com.circlewithadot.Relibre.png ]; then install -Dm644 /run/build/relibre/src/dist/com.circlewithadot.Relibre.png /app/share/icons/hicolor/512x512/apps/com.circlewithadot.Relibre.png; fi sources: - type: dir path: .