diff --git a/.github/workflows/cmake-linux-fedora.yml b/.github/workflows/cmake-linux-fedora.yml index 6dcfad26..854883f3 100644 --- a/.github/workflows/cmake-linux-fedora.yml +++ b/.github/workflows/cmake-linux-fedora.yml @@ -11,15 +11,10 @@ env: jobs: build: runs-on: ubuntu-latest - container: ${{ matrix.container }} + container: fedora:${{ matrix.container }} strategy: matrix: - container: ['fedora:38', 'fedora:39'] - include: - - container: 'fedora:38' - name: fedora38 - - container: 'fedora:39' - name: fedora39 + container: [38, 39, 40] steps: - name: Install Deps @@ -30,12 +25,12 @@ jobs: submodules: recursive - name: Configure CMake - run: cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_INSTALL_PREFIX=/usr -B build -S . + run: cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_SYSCONFDIR=/etc -B build -S . - name: Build run: cmake --build build --config $BUILD_TYPE --target package - uses: actions/upload-artifact@v4 with: - name: web-eid-app-fedora-build-${{matrix.name}}-${{github.run_number}} + name: web-eid-app-fedora-build-fedora${{matrix.container}}-${{github.run_number}} path: build/*rpm diff --git a/.github/workflows/cmake-linux-ubuntu.yml b/.github/workflows/cmake-linux-ubuntu.yml index 294cb043..09980147 100644 --- a/.github/workflows/cmake-linux-ubuntu.yml +++ b/.github/workflows/cmake-linux-ubuntu.yml @@ -8,30 +8,25 @@ env: QT_QPA_PLATFORM: offscreen DEBIAN_FRONTEND: noninteractive DEBFULLNAME: GitHub build - DEBEMAIL: github-action@github + DEBEMAIL: github-action@github.com CMAKE_BUILD_PARALLEL_LEVEL: 3 jobs: build: runs-on: ubuntu-latest - container: ${{matrix.container}} + container: ubuntu:${{matrix.container}} strategy: matrix: - container: ['ubuntu:20.04', 'ubuntu:22.04'] - include: - - container: 'ubuntu:20.04' - name: ubuntu2004 - - container: 'ubuntu:22.04' - name: ubuntu2204 + container: ['20.04', '22.04', '24.04'] steps: - name: Install dependencies - if: matrix.container == 'ubuntu:20.04' - run: apt update -qq && apt install --no-install-recommends -y git lsb-release fakeroot build-essential devscripts debhelper pkg-config cmake libpcsclite-dev libssl-dev libgtest-dev libqt5svg5-dev qttools5-dev-tools qttools5-dev + if: matrix.container == '20.04' + run: apt update -qq && apt install --no-install-recommends -y git lsb-release fakeroot build-essential devscripts debhelper lintian pkg-config cmake libpcsclite-dev libssl-dev libgtest-dev libqt5svg5-dev qttools5-dev-tools qttools5-dev - name: Install dependencies - if: matrix.container != 'ubuntu:20.04' - run: apt update -qq && apt install --no-install-recommends -y git lsb-release fakeroot build-essential devscripts debhelper pkg-config cmake libpcsclite-dev libssl-dev libgtest-dev libgl-dev libqt6svg6-dev qt6-tools-dev qt6-tools-dev-tools qt6-l10n-tools libqt6core5compat6-dev + if: matrix.container != '20.04' + run: apt update -qq && apt install --no-install-recommends -y git lsb-release fakeroot build-essential devscripts debhelper lintian pkg-config cmake libpcsclite-dev libssl-dev libgtest-dev libgl-dev libqt6svg6-dev qt6-tools-dev qt6-tools-dev-tools qt6-l10n-tools libqt6core5compat6-dev - uses: actions/checkout@v4 with: @@ -44,9 +39,12 @@ jobs: run: | cmake --build build --config $BUILD_TYPE --target installer # Debian creates artifacts outside of project dir, copy them back to make them available in the build artifacts - cp -r ../web-eid*.* build/src/app + mv ../web-eid*.* build + + - name: Test package + run: lintian build/*.deb - uses: actions/upload-artifact@v4 with: - name: web-eid-app-ubuntu-build-${{matrix.name}}-${{github.run_number}} - path: build/src/app/*.*deb + name: web-eid-app-ubuntu-build-ubuntu${{matrix.container}}-${{github.run_number}} + path: build/*.*deb diff --git a/debian/web-eid-chrome.install b/debian/web-eid-chrome.install index 178f3789..038bf2e1 100644 --- a/debian/web-eid-chrome.install +++ b/debian/web-eid-chrome.install @@ -1,2 +1,4 @@ usr/share/web-eid/eu.webeid.json -usr/share/google-chrome/extensions/ncibgoaomkmdpilpocfeponihegamlic.json \ No newline at end of file +usr/share/google-chrome/extensions/ncibgoaomkmdpilpocfeponihegamlic.json +usr/share/chromium/extensions/ncibgoaomkmdpilpocfeponihegamlic.json +etc/chromium/native-messaging-hosts/eu.webeid.json diff --git a/src/app/CMakeLists.txt b/src/app/CMakeLists.txt index 7f3faf9f..773d7840 100644 --- a/src/app/CMakeLists.txt +++ b/src/app/CMakeLists.txt @@ -158,7 +158,7 @@ else() endif() set(WEBEID_PATH ${CMAKE_INSTALL_FULL_BINDIR}/web-eid) install(TARGETS web-eid DESTINATION ${CMAKE_INSTALL_BINDIR}) - if(EXISTS "/etc/debian_version") + if(EXISTS /etc/debian_version) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eu.webeid.firefox.json DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/mozilla/native-messaging-hosts RENAME eu.webeid.json) else() @@ -167,8 +167,14 @@ else() endif() install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eu.webeid.json DESTINATION ${CMAKE_INSTALL_DATADIR}/web-eid) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eu.webeid.json + DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/chromium/native-messaging-hosts) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/eu.webeid.json + DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/opt/chrome/native-messaging-hosts) install(FILES ${CMAKE_SOURCE_DIR}/install/ncibgoaomkmdpilpocfeponihegamlic.json DESTINATION ${CMAKE_INSTALL_DATADIR}/google-chrome/extensions) + install(FILES ${CMAKE_SOURCE_DIR}/install/ncibgoaomkmdpilpocfeponihegamlic.json + DESTINATION ${CMAKE_INSTALL_DATADIR}/chromium/extensions) install(FILES ${CMAKE_SOURCE_DIR}/install/web-eid.desktop DESTINATION ${CMAKE_INSTALL_DATADIR}/applications) if (BUNDLE_XPI)