diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6ef975bd7..6710fa0b2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -199,6 +199,22 @@ jobs: path: | build/*.msi build/*.appx + snapcraft: + name: Build Snapcraft package + runs-on: ubuntu-22.04 + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + submodules: recursive + - uses: snapcore/action-build@v1 + - name: Cat logs + run: cat /home/runner/.local/state/snapcraft/log/snapcraft*.log + - name: Archive artifacts + uses: actions/upload-artifact@v3 + with: + name: snap + path: ./*.snap coverity: name: Run Coverity tests if: github.repository == 'open-eid/DigiDoc4-Client' && contains(github.ref, 'coverity_scan') diff --git a/client/Application.cpp b/client/Application.cpp index cee87c11a..5e78afcd6 100644 --- a/client/Application.cpp +++ b/client/Application.cpp @@ -80,6 +80,8 @@ class MacMenuBar {}; #include #endif +#include + using namespace std::chrono; const QStringList Application::CONTAINER_EXT { diff --git a/snapcraft.yaml b/snapcraft.yaml new file mode 100644 index 000000000..2cdeeabda --- /dev/null +++ b/snapcraft.yaml @@ -0,0 +1,42 @@ +name: qdigidoc4 +base: core22 +version: 4.5.0 +summary: DigiDoc4 Client +description: DigiDoc4 Client +icon: client/images/Icon.svg +grade: devel +confinement: devmode + +#package-repositories: +# - type: apt +# components: [main] +# suites: [focal, jammy] +# key-id: 16A4D8047F6FD921EE24D3F9E9AB214DC6C83D68 +# key-server: hkp://keyserver.ubuntu.com:80 +# url: https://installer.id.ee/media/ubuntu + +apps: + qdigidoc4: + command: usr/bin/qdigidoc4 + desktop: usr/share/applications/qdigidoc4.desktop + extensions: [kde-neon] + plugs: [home, network] + digidoc-tool: + command: usr/bin/digidoc-tool + +parts: + libdigidocpp: + plugin: cmake + source: https://github.com/open-eid/libdigidocpp.git + stage-packages: [libxalan-c112, libxerces-c3.2, libxml-security-c20] + build-packages: [g++, xxd, libxml-security-c-dev, libssl-dev, zlib1g-dev, xsdcxx] + cmake-parameters: [-DCMAKE_INSTALL_PREFIX=/usr, -DCMAKE_FIND_ROOT_PATH=/usr] + qdigidoc4: + plugin: cmake + source: . + stage-packages: [opensc-pkcs11] + build-packages: [libssl-dev, libpcsclite-dev, libldap2-dev, libflatbuffers-dev] + after: [libdigidocpp] + cmake-parameters: + - -DCMAKE_INSTALL_PREFIX=/usr + - "-DCMAKE_FIND_ROOT_PATH=/usr\\;/root/stage\\;/snap/kf5-5-110-qt-5-15-11-core22-sdk/current"