From 148ac2f91a857d0ab36a469808c7791572e037b6 Mon Sep 17 00:00:00 2001 From: Scarlett Moore Date: Wed, 18 Oct 2023 04:52:44 -0700 Subject: [PATCH] snapcraft: initial import snapcraft files. --- snapcraft.yaml | 216 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 216 insertions(+) create mode 100644 snapcraft.yaml diff --git a/snapcraft.yaml b/snapcraft.yaml new file mode 100644 index 000000000..1c0f42a8f --- /dev/null +++ b/snapcraft.yaml @@ -0,0 +1,216 @@ + +# SPDX-FileCopyrightText: 2023 Scarlett Moore +# +# SPDX-License-Identifier: CC0-1.0 +--- +name: neochat +base: core22 +adopt-info: neochat +grade: stable +confinement: strict +apps: + neochat: + # extensions: + # - kde-neon + command: usr/bin/neochat + common-id: org.kde.neochat + desktop: usr/share/applications/org.kde.neochat.desktop + plugs: + - home + - removable-media + - desktop + - desktop-legacy + - opengl + - wayland + - x11 + - audio-playback + - unity7 + - network + - network-bind + - network-manager-observe + - password-manager-service + - accounts-service + command-chain: + - snap/command-chain/desktop-launch +assumes: +- snapd2.58.3 +compression: lzo +plugs: + desktop: + mount-host-font-cache: false + icon-themes: + interface: content + target: $SNAP/data-dir/icons + default-provider: gtk-common-themes + sound-themes: + interface: content + target: $SNAP/data-dir/sounds + default-provider: gtk-common-themes + kf5-5-110-qt-5-15-11-core22: + content: kf5-5-110-qt-5-15-11-core22-all + interface: content + default-provider: kf5-5-110-qt-5-15-11-core22 + target: $SNAP/kf5 +environment: + SNAP_DESKTOP_RUNTIME: $SNAP/kf5 + QML2_IMPORT_PATH: "$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/qt5/qml:$SNAP/kf5/usr/lib/$CRAFT_ARCH_TRIPLET/qt5/qml:$SNAP/usr/lib/$CRAFT_ARCH_TRIPLET/qml" + QT_QUICK_CONTROLS_STYLE: org.kde.desktop +hooks: + configure: + plugs: + - desktop + command-chain: + - snap/command-chain/hooks-configure-desktop +layout: + /usr/share/X11: + symlink: $SNAP/kf5/usr/share/X11 +slots: + session-dbus-interface: + interface: dbus + name: org.kde.neochat + bus: session +package-repositories: +- type: apt + components: + - main + suites: + - jammy + key-id: 444DABCF3667D0283F894EDDE6D4736255751E5D + url: http://origin.archive.neon.kde.org/user + key-server: keyserver.ubuntu.com +parts: + kde-neon: + source: /snap/snapcraft/current/share/snapcraft/extensions/desktop/kde-neon + source-type: local + plugin: make + make-parameters: + - PLATFORM_PLUG=kf5-5-110-qt-5-15-11-core22 + build-snaps: + - kf5-5-110-qt-5-15-11-core22-sdk + build-environment: + - &id001 + PATH: /snap/kf5-5-110-qt-5-15-11-core22-sdk/current/usr/bin${PATH:+:$PATH} + - &id002 + XDG_DATA_DIRS: $CRAFT_STAGE/usr/share:/snap/kf5-5-110-qt-5-15-11-core22-sdk/current/usr/share:/usr/share${XDG_DATA_DIRS:+:$XDG_DATA_DIRS} + - &id003 + XDG_CONFIG_HOME: $CRAFT_STAGE/etc/xdg:/snap/kf5-5-110-qt-5-15-11-core22-sdk/current/etc/xdg:/etc/xdg${XDG_CONFIG_HOME:+:$XDG_CONFIG_HOME} + - &id004 + CRAFT_CMAKE_ARGS: -DCMAKE_FIND_ROOT_PATH=/snap/kf5-5-110-qt-5-15-11-core22-sdk/current${CRAFT_CMAKE_ARGS:+:$CRAFT_CMAKE_ARGS} + qtkeychain: + after: + - kde-neon + source: https://github.com/frankosterfeld/qtkeychain.git + source-tag: v0.13.2 + source-depth: 0 + plugin: cmake + build-packages: + - libsecret-1-dev + stage-packages: + - libsecret-1-0 + cmake-parameters: + - "-DKDE_INSTALL_USE_QT_SYS_PATHS=FALSE" + - "-DCMAKE_INSTALL_PREFIX=/usr" + - "-DCMAKE_BUILD_TYPE=Release" + - "-DENABLE_TESTING=OFF" + - "-DBUILD_TESTING=OFF" + - "-DKDE_SKIP_TEST_SETTINGS=ON" + - "-DCMAKE_FIND_ROOT_PATH=$SNAPCRAFT_STAGE\\;/snap/kf5-5-110-qt-5-15-11-core22/current" + - "-DBUILD_TRANSLATIONS=NO" + - -DKEYCHAIN_DBUS=0 + libmatrixclient: + after: + - kde-neon + - qtkeychain + source: https://github.com/quotient-im/libQuotient.git + source-tag: 0.7.2 + source-depth: 0 + plugin: cmake + build-packages: + - qtmultimedia5-dev + - libolm-dev + - libssl-dev + cmake-parameters: + - "-DCMAKE_INSTALL_PREFIX=/usr" + - "-DCMAKE_BUILD_TYPE=Release" + - "-DENABLE_TESTING=OFF" + - "-DBUILD_TESTING=OFF" + - "-DKDE_SKIP_TEST_SETTINGS=ON" + - -DQuotient_ENABLE_E2EE=true + - "-DCMAKE_FIND_ROOT_PATH=$SNAPCRAFT_STAGE\\;/snap/kf5-5-110-qt-5-15-11-core22/current" + neochat: + after: + - kde-neon + - qtkeychain + - libmatrixclient + parse-info: + - usr/share/metainfo/org.kde.neochat.appdata.xml + source: http://download.kde.org/stable/release-service/23.08.1/src/neochat-23.08.1.tar.xz + plugin: cmake + build-packages: + - cmark + - gcc-10 + - g++-10 + - kirigami2-dev + - libcmark-dev + - kquickimageeditor-dev + - libkf5qqc2desktopstyle-dev + - qcoro-qt5-dev + - kirigami-addons-dev + - reuse + - libkf5doctools-dev + - qtbase5-private-dev + - qml-module-org-kde-kquickimageeditor + - qml-module-org-kde-qqc2desktopstyle + - kirigami-addons-data + - qml-module-org-kde-kirigamiaddons + - qml-module-org-kde-quickcharts + - libsqlite3-dev + - libolm-dev + stage-packages: + - libcmark0.30.2 + - qml-module-org-kde-kquickimageeditor + - qml-module-org-kde-qqc2desktopstyle + - kirigami-addons-data + - qml-module-org-kde-kirigamiaddons + - qml-module-org-kde-quickcharts + - libkf5kirigami2-5 + - qml-module-org-kde-kirigami2 + - reuse + - libsqlite3-0 + - libolm3 + cmake-parameters: + - "-DKDE_INSTALL_USE_QT_SYS_PATHS=FALSE" + - "-DCMAKE_INSTALL_PREFIX=/usr" + - "-DCMAKE_BUILD_TYPE=Release" + - "-DENABLE_TESTING=OFF" + - "-DBUILD_TESTING=OFF" + - "-DKDE_SKIP_TEST_SETTINGS=ON" + - "-DNEOCHAT_FLATPAK=ON" + - "-DCMAKE_FIND_ROOT_PATH=$CRAFT_STAGE\\;/snap/kf5-5-110-qt-5-15-11-core22-sdk/current" + - "-DKDE_INSTALL_PLUGINDIR=/usr/lib/$CRAFT_ARCH_TRIPLET/qt5/plugins/" + prime: + - "-usr/lib/*/cmake/*" + - "-usr/include/*" + - "-usr/share/ECM/*" + - "-usr/share/doc/*" + - "-usr/share/man/*" + - "-usr/share/icons/breeze-dark*" + - "-usr/bin/X11" + - "-usr/lib/gcc/$CRAFT_ARCH_TRIPLET/6.0.0" + - "-usr/lib/aspell/*" + - "-usr/share/lintian" + build-environment: &id005 + - *id001 + - *id002 + - *id003 + - *id004 + cleanup: + after: + - kde-neon + - neochat + plugin: nil + override-prime: | + set -eux + # find $CRAFT_PRIME/usr/share/doc/ -type f -not -name 'copyright' -delete + # find $CRAFT_PRIME/usr/share -type d -empty -delete | /bin/true + # # Unused libraries found by linter