diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 3856fbdf..a68f4194 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -59,17 +59,43 @@ parts: build-packages: - g++ + flutter-git: + source: https://github.com/flutter/flutter.git + source-tag: 3.10.0 + plugin: nil + override-build: | + set -eux + mkdir -p $CRAFT_PART_INSTALL/usr/bin + mkdir -p $CRAFT_PART_INSTALL/usr/libexec + cp -r $CRAFT_PART_SRC $CRAFT_PART_INSTALL/usr/libexec/flutter + ln -sf $CRAFT_PART_INSTALL/usr/libexec/flutter/bin/flutter $CRAFT_PART_INSTALL/usr/bin/flutter + export PATH="$CRAFT_PART_INSTALL/usr/bin:$PATH" + flutter doctor + build-packages: + - clang + - cmake + - curl + - ninja-build + - unzip + override-prime: '' + fluffychat: - plugin: flutter + after: [ flutter-git ] + plugin: nil source: . override-build: | - # Workaround for Flutter build error: - rm -rf build - craftctl default + set -eux + flutter pub get || true + flutter build linux --release -v + craftctl set version="$(jq -r '.version' build/flutter_assets/version.json)" + mkdir -p $CRAFT_PART_INSTALL/bin + cp -r build/linux/*/release/bundle/* $CRAFT_PART_INSTALL/bin/ + sed -i -e 's|\(Icon=\).*|\1/bin/data/flutter_assets/assets/software.png|' \ + $CRAFT_PART_INSTALL/bin/data/flutter_assets/assets/software.desktop build-packages: - libjsoncpp-dev - execstack - - curl + - jq stage-packages: - libsecret-1-dev - libjsoncpp-dev @@ -84,7 +110,7 @@ slots: apps: fluffychat: - command: fluffychat + command: bin/software extensions: [gnome] plugs: - audio-playback