Flatpak linux build
This commit is contained in:
@@ -1,38 +1,55 @@
|
||||
app-id: za.co.mzansiinnovationhub.mih
|
||||
runtime: org.gnome.Platform
|
||||
runtime-version: '48'
|
||||
sdk: org.gnome.Sdk
|
||||
id: za.co.mzansiinnovationhub.mih
|
||||
runtime: org.freedesktop.Platform
|
||||
runtime-version: '24.08'
|
||||
sdk: org.freedesktop.Sdk
|
||||
command: mzansi_innovation_hub
|
||||
|
||||
finish-args:
|
||||
- --share=ipc
|
||||
- --share=network # Added for Internet access
|
||||
- --socket=fallback-x11
|
||||
- --socket=wayland
|
||||
- --device=dri
|
||||
- --socket=pulseaudio
|
||||
- --share=network
|
||||
- --talk-name=org.freedesktop.Notifications
|
||||
- --filesystem=xdg-documents:create
|
||||
# Removed --filesystem=home for better security; add back only if strictly needed.
|
||||
|
||||
modules:
|
||||
- name: mih-app
|
||||
- name: mzansi-innovation-hub
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- mkdir -p /app/bin /app/share/mih-app /app/share/applications /app/share/metainfo /app/share/icons/hicolor/256x256/apps
|
||||
- cp -r data lib mzansi_innovation_hub /app/share/mih-app/
|
||||
- chmod +x /app/share/mih-app/mzansi_innovation_hub
|
||||
- ln -sf /app/share/mih-app/mzansi_innovation_hub /app/bin/mzansi_innovation_hub
|
||||
- install -Dm644 za.co.mzansiinnovationhub.mih.desktop /app/share/applications/za.co.mzansiinnovationhub.mih.desktop
|
||||
- install -Dm644 za.co.mzansiinnovationhub.mih.metainfo.xml /app/share/metainfo/za.co.mzansiinnovationhub.mih.metainfo.xml
|
||||
- install -Dm644 za.co.mzansiinnovationhub.mih.png /app/share/icons/hicolor/256x256/apps/za.co.mzansiinnovationhub.mih.png
|
||||
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://git.mzansi-innovation-hub.co.za/yaso_meth/mih-project/releases/download/linux/mzansi_innovation_hub.tar.gz
|
||||
sha256: cd610351f334fccce2d279f3112a5ac21bfa18b39d3c59e2cb0334fe2e8019b3
|
||||
sha256: b8c383f4d43e2de36b4e6520c9745e3f8e8618bdb9ef6024ad0bf260061137a9
|
||||
# If the tarball contains a top-level folder (like 'bundle'),
|
||||
# flatpak-builder enters it automatically.
|
||||
# If it doesn't, we use the commands below to find them.
|
||||
|
||||
- type: file
|
||||
path: za.co.mzansiinnovationhub.mih.desktop
|
||||
- type: file
|
||||
path: za.co.mzansiinnovationhub.mih.metainfo.xml
|
||||
- type: file
|
||||
path: za.co.mzansiinnovationhub.mih.png
|
||||
path: za.co.mzansiinnovationhub.mih.png
|
||||
|
||||
build-commands:
|
||||
# 1. Create the necessary directories
|
||||
- mkdir -p /app/bin /app/share/applications /app/share/icons/hicolor/256x256/apps /app/share/metainfo
|
||||
|
||||
# 2. Move EVERYTHING from your archive into /app/bin/
|
||||
# We use 'find' to move only the app-related files and avoid the metadata files
|
||||
- |
|
||||
find . -mindepth 1 -maxdepth 2 \
|
||||
! -name "*.desktop" \
|
||||
! -name "*.xml" \
|
||||
! -name "*.png" \
|
||||
! -name "*.yml" \
|
||||
-exec cp -R -t /app/bin/ {} +
|
||||
|
||||
# 3. Ensure the binary is in the right place and executable
|
||||
# If the binary ended up in a subfolder, this moves it to the top of /app/bin
|
||||
- find /app/bin -name "mzansi_innovation_hub" -type f -exec mv {} /app/bin/ \;
|
||||
- chmod +x /app/bin/mzansi_innovation_hub
|
||||
|
||||
# 4. Install Metadata (using the exact local files)
|
||||
- install -Dm644 za.co.mzansiinnovationhub.mih.desktop /app/share/applications/za.co.mzansiinnovationhub.mih.desktop
|
||||
- install -Dm644 za.co.mzansiinnovationhub.mih.png /app/share/icons/hicolor/256x256/apps/za.co.mzansiinnovationhub.mih.png
|
||||
- install -Dm644 za.co.mzansiinnovationhub.mih.metainfo.xml /app/share/metainfo/za.co.mzansiinnovationhub.mih.metainfo.xml
|
||||
Reference in New Issue
Block a user