diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ace325c..286f91d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -194,6 +194,29 @@ build_linux: - build/linux/release/bundle/ only: - main + +snap:edge: + stage: publish + image: "cibuilds/snapcraft:core18" + only: + - main + script: + ## Manually install the flutter-dev snap, so we can use the flutter extension + - 'curl -L $(curl -H "X-Ubuntu-Series: 16" "https://api.snapcraft.io/api/v1/snaps/details/flutter?channel=latest/stable" | jq ".download_url" -r) --output flutter.snap' + - sudo mkdir -p /snap/flutter + - sudo unsquashfs -d /snap/flutter/current flutter.snap + - rm -f flutter.snap + - sudo ln -sf /snap/flutter/current/flutter.sh /snap/bin/flutter + - sudo ln -sf /snap/flutter/current/env.sh /snap/bin/env.sh + - snapcraft + - echo $SNAPCRAFT_LOGIN_FILE | base64 --decode --ignore-garbage > snapcraft.login + - snapcraft login --with snapcraft.login + - snapcraft push --release=edge *.snap + - snapcraft logout + artifacts: + paths: + - './*.snap' + when: on_success snap:publish: stage: publish diff --git a/snap/gui/fluffychat.desktop b/snap/gui/fluffychat.desktop new file mode 100755 index 0000000..8861487 --- /dev/null +++ b/snap/gui/fluffychat.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Name=FluffyChat +GenericName=Matrix Client +Comment=Chat with your friends +Exec=fluffychat +Icon=${SNAP}/meta/gui/fluffychat.png +Terminal=false +Type=Application +Categories=Network;Chat;InstantMessaging; diff --git a/snap/gui/fluffychat.png b/snap/gui/fluffychat.png new file mode 100644 index 0000000..7a46e62 Binary files /dev/null and b/snap/gui/fluffychat.png differ diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 26ac664..3b5bd17 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -1,6 +1,6 @@ name: fluffychat base: core18 -version: script +version: git summary: Open. Nonprofit. Cute ♥ description: | FluffyChat - Chat with your friends @@ -23,28 +23,63 @@ description: | Microblog: https://metalhead.club/@krille grade: devel +confinement: strict icon: assets/logo.png -confinement: devmode parts: - olm: # FIXME + olm: + plugin: cmake source: https://gitlab.matrix.org/matrix-org/olm.git source-type: git source-tag: 3.2.1 - plugin: cmake build-packages: - - build-essential - override-build: | - cd /root/parts/olm/src - cmake . -Bbuild - cmake --build build + - g++ fluffychat: - after: [olm] - plugin: dump - source: ./build/linux/release/bundle + plugin: flutter + source: . + flutter-target: lib/main.dart stage-packages: - libsqlite3-dev - + - libatk-bridge2.0-0 + - libatk1.0-0 + - libatspi2.0-0 + - libcairo-gobject2 + - libcairo2 + - libdatrie1 + - libegl1 + - libepoxy0 + - libfontconfig1 + - libfreetype6 + - libgdk-pixbuf2.0-0 + - libglvnd0 + - libgraphite2-3 + - libgtk-3-0 + - libharfbuzz0b + - libpango-1.0-0 + - libpangocairo-1.0-0 + - libpangoft2-1.0-0 + - libpixman-1-0 + - libpng16-16 + - libthai0 + - libwayland-client0 + - libwayland-cursor0 + - libwayland-egl1 + - libx11-6 + - libxau6 + - libxcb-render0 + - libxcb-shm0 + - libxcb1 + - libxcomposite1 + - libxcursor1 + - libxdamage1 + - libxdmcp6 + - libxext6 + - libxfixes3 + - libxi6 + - libxinerama1 + - libxkbcommon0 + - libxrandr2 + - libxrender1 slots: dbus-svc: interface: dbus @@ -55,7 +90,7 @@ apps: fluffychat: command: fluffychat extensions: - - gnome-3-28 + - flutter-dev plugs: - network - home