From d70098f142085cad4a9ce89e940abf42357aa3eb Mon Sep 17 00:00:00 2001 From: mbkma Date: Tue, 27 Jan 2026 23:12:47 +0100 Subject: [PATCH 1/3] ci: migrate from Travis CI to GitHub Actions Replace Travis CI configuration with GitHub Actions workflows. Add CI build workflow for Debian, Fedora, Ubuntu, and Archlinux. Add release workflow for automated GitHub releases on tags. Add dependabot configuration for GHA pin updates. Remove obsolete .travis.yml. remove .build.yml fix invest applet makefile --- .build.yml | 219 ------------------------------ .github/dependabot.yml | 8 ++ .github/workflows/archlinux.sh | 50 +++++++ .github/workflows/builds.sh | 38 ++++++ .github/workflows/builds.yml | 92 +++++++++++++ .github/workflows/debian.sh | 58 ++++++++ .github/workflows/fedora.sh | 56 ++++++++ .github/workflows/mate-desktop.sh | 148 ++++++++++++++++++++ .github/workflows/release.yml | 37 +++++ .github/workflows/ubuntu.sh | 58 ++++++++ .travis.yml | 89 ------------ invest-applet/data/Makefile.am | 2 + invest-applet/invest/Makefile.am | 2 + 13 files changed, 549 insertions(+), 308 deletions(-) delete mode 100644 .build.yml create mode 100644 .github/dependabot.yml create mode 100755 .github/workflows/archlinux.sh create mode 100755 .github/workflows/builds.sh create mode 100644 .github/workflows/builds.yml create mode 100755 .github/workflows/debian.sh create mode 100755 .github/workflows/fedora.sh create mode 100755 .github/workflows/mate-desktop.sh create mode 100644 .github/workflows/release.yml create mode 100755 .github/workflows/ubuntu.sh delete mode 100644 .travis.yml diff --git a/.build.yml b/.build.yml deleted file mode 100644 index f2abb29b1..000000000 --- a/.build.yml +++ /dev/null @@ -1,219 +0,0 @@ -########################################################## -# THE FOLLOWING LINES IS USED BY docker-build -########################################################## -requires: - archlinux: - # Useful URL: https://git.archlinux.org/svntogit/community.git/tree/mate-applets - - autoconf-archive - - clang - - cpupower - - gcc - - git - - gucharmap - - gtksourceview4 - - itstool - - libgtop - - libnotify - - make - - mate-common - - mate-desktop - - mate-menus - - mate-panel - - polkit - - upower - - which - - wireless_tools - - yelp-tools - # mate-desktop dependencies - - iso-codes - - gobject-introspection - - debian: - # Useful URL: https://github.com/mate-desktop/debian-packages - # Useful URL: https://salsa.debian.org/debian-mate-team/mate-applets - - autopoint - - clang - - clang-tools - - cppcheck - - gcc - - git - - libcpupower-dev - - libdbus-1-dev - - libdbus-glib-1-dev - - libglib2.0-dev - - libgtk-3-dev - - libgtksourceview-4-dev - - libgtop2-dev - - libgucharmap-2-90-dev - - libiw-dev - - libmate-desktop-dev - - libmate-menu-dev - - libmate-panel-applet-dev - - libmateweather-dev - - libnl-genl-3-dev - - libnotify-dev - - libpolkit-gobject-1-dev - - libupower-glib-dev - - libwnck-3-dev - - libx11-dev - - libxml2-dev - - make - - mate-common - - x11proto-kb-dev - - yelp-tools - # mate-desktop dependencies - - iso-codes - - gobject-introspection - - libgirepository1.0-dev - - fedora: - # Useful URL: https://src.fedoraproject.org/cgit/rpms/mate-applets.git - - autoconf-archive - - clang - - clang-analyzer - - cppcheck-htmlreport - - gcc - - git - - gtksourceview4-devel - - gucharmap-devel - - kernel-tools-libs-devel - - libgtop2-devel - - libnl3-devel - - libnotify-devel - - libmateweather-devel - - libwnck3-devel - - libxml2-devel - - libICE-devel - - libSM-devel - - make - - mate-common - - mate-desktop-devel - - mate-menus-devel - - mate-settings-daemon-devel - - mate-notification-daemon - - mate-panel-devel - - polkit-devel - - redhat-rpm-config - - startup-notification-devel - - upower-devel - # mate-desktop dependencies - - iso-codes-devel - - gobject-introspection-devel - - ubuntu: - - autopoint - - clang - - clang-tools - - gcc - - git - - libcpufreq-dev - - libdbus-1-dev - - libdbus-glib-1-dev - - libglib2.0-dev - - libgtk-3-dev - - libgtksourceview-4-dev - - libgtop2-dev - - libgucharmap-2-90-dev - - libiw-dev - - libmate-desktop-dev - - libmate-menu-dev - - libmate-panel-applet-dev - - libmateweather-dev - - libnl-genl-3-dev - - libnotify-dev - - libpolkit-gobject-1-dev - - libupower-glib-dev - - libwnck-3-dev - - libx11-dev - - libxml2-dev - - make - - mate-common - - x11proto-kb-dev - - yelp-tools - # mate-desktop dependencies - - iso-codes - - gobject-introspection - - libgirepository1.0-dev - -variables: - - 'CHECKERS=" - -enable-checker deadcode.DeadStores - -enable-checker alpha.deadcode.UnreachableCode - -enable-checker alpha.core.CastSize - -enable-checker alpha.core.CastToStruct - -enable-checker alpha.core.IdenticalExpr - -enable-checker alpha.core.SizeofPtr - -enable-checker alpha.security.ArrayBoundV2 - -enable-checker alpha.security.MallocOverflow - -enable-checker alpha.security.ReturnPtrRange - -enable-checker alpha.unix.SimpleStream - -enable-checker alpha.unix.cstring.BufferOverlap - -enable-checker alpha.unix.cstring.NotNullTerminated - -enable-checker alpha.unix.cstring.OutOfBounds - -enable-checker alpha.core.FixedAddr - -enable-checker security.insecureAPI.strcpy"' - - MATE_DESKTOP_VERSION=1.27.1 - -before_scripts: - -build_scripts: - - cd ${START_DIR} - - if [ ! -f mate-desktop-${MATE_DESKTOP_VERSION}.tar.xz ];then - - curl -Ls -o mate-desktop-${MATE_DESKTOP_VERSION}.tar.xz https://github.com/mate-desktop/mate-desktop/releases/download/v${MATE_DESKTOP_VERSION}/mate-desktop-${MATE_DESKTOP_VERSION}.tar.xz - - fi - - tar xf mate-desktop-${MATE_DESKTOP_VERSION}.tar.xz - - cd mate-desktop-${MATE_DESKTOP_VERSION} - - if [ ${DISTRO_NAME} == "debian" -o ${DISTRO_NAME} == "ubuntu" ];then - - ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --libexecdir=/usr/lib/x86_64-linux-gnu - - else - - ./autogen.sh --prefix=/usr - - fi - - if [ ${TRAVIS} == "false" ]; then - - make clean - - fi - - make - - make install - - - cd ${START_DIR} - - if [ ${DISTRO_NAME} == "debian" ];then - - export CFLAGS+=" -Wsign-compare" - - cppcheck --enable=warning,style,performance,portability,information,missingInclude . - - fi - - - NOCONFIGURE=1 ./autogen.sh - - scan-build $CHECKERS ./configure --enable-compile-warnings=maximum - - if [ $CPU_COUNT -gt 1 ]; then - - if [ ${DISTRO_NAME} == "debian" ];then - - scan-build $CHECKERS --keep-cc --use-cc=clang --use-c++=clang++ -o html-report make -j $CPU_COUNT - - make clean - - fi - - scan-build $CHECKERS --keep-cc -o html-report make -j $CPU_COUNT - - else - - if [ ${DISTRO_NAME} == "debian" ];then - - scan-build $CHECKERS --keep-cc --use-cc=clang --use-c++=clang++ -o html-report make - - make clean - - fi - - scan-build $CHECKERS --keep-cc -o html-report make - - fi - -after_scripts: - - if [ ${DISTRO_NAME} == "fedora" ];then - - cppcheck --xml --output-file=cppcheck.xml --enable=warning,style,performance,portability,information,missingInclude . - - cppcheck-htmlreport --title=${REPO_NAME} --file=cppcheck.xml --report-dir=cppcheck-htmlreport - - ./gen-index -l 20 -i https://github.com/${OWNER_NAME}/mate-applets/raw/master/cpufreq/pixmaps/cpufreq-100.png - - fi - - make distcheck - -releases: - draft: false - prerelease: false - checksum: true - file_glob: true - files: mate-applets-*.tar.xz - github_release: - tags: true - overwrite: true - base_version: 1.20.0 - notify_servers: - - https://release.mate-desktop.org/release - diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 000000000..80851cd3f --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,8 @@ +# Enable dependabot to keep our GHA pins automatically +# updated, so we don't fall too far behind in the future +version: 2 +updates: + - package-ecosystem: github-actions + directory: "/" + schedule: + interval: weekly diff --git a/.github/workflows/archlinux.sh b/.github/workflows/archlinux.sh new file mode 100755 index 000000000..9d86a3e93 --- /dev/null +++ b/.github/workflows/archlinux.sh @@ -0,0 +1,50 @@ +#!/usr/bin/bash + +# Use grouped output messages +infobegin() { + echo "::group::${1}" +} +infoend() { + echo "::endgroup::" +} + +# Required packages on Archlinux +requires=( + ccache # Use ccache to speed up build + clang # Build with clang on Archlinux +) + +# https://gitlab.archlinux.org/archlinux/packaging/packages/mate-applets +requires+=( + autoconf-archive + cpupower + dbus-glib + gcc + git + glib2-devel + gtksourceview4 + gucharmap + intltool + itstool + json-glib + libgtop + libnl + libnotify + libsoup3 + make + mate-common + mate-panel + polkit + upower + which + wireless_tools + yelp-tools +) + +infobegin "Update system" +pacman --noconfirm -Syu +infoend + +infobegin "Install dependency packages" +pacman --noconfirm -S ${requires[@]} +infoend diff --git a/.github/workflows/builds.sh b/.github/workflows/builds.sh new file mode 100755 index 000000000..b192d9713 --- /dev/null +++ b/.github/workflows/builds.sh @@ -0,0 +1,38 @@ +#!/usr/bin/bash + +set -e +set -o pipefail + +CPUS=$(grep processor /proc/cpuinfo | wc -l) + +# Use grouped output messages +infobegin() { + echo "::group::${1}" +} +infoend() { + echo "::endgroup::" +} + +if [ -f autogen.sh ]; then + infobegin "Configure (autotools)" + NOCONFIGURE=1 ./autogen.sh + ./configure --prefix=/usr --enable-compile-warnings=maximum || { + cat config.log + exit 1 + } + infoend + + infobegin "Build (autotools)" + make -j ${CPUS} + infoend + + infobegin "Check (autotools)" + make -j ${CPUS} check || { + true + } + infoend + + infobegin "Distcheck (autotools)" + make -j ${CPUS} distcheck + infoend +fi diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml new file mode 100644 index 000000000..150ab244f --- /dev/null +++ b/.github/workflows/builds.yml @@ -0,0 +1,92 @@ +name: CI Build + +on: + push: + branches: + - master + pull_request: + branches: + - master + workflow_dispatch: + +# cancel already running builds of the same branch or pull request +concurrency: + group: ci-${{ github.workflow }}-${{ github.event.pull_request.number || github.head_ref || github.sha }} + cancel-in-progress: true + +env: + MATE_DESKTOP_VERSION: 1.28.2 + CACHE_PATH: /tmp/.cache + +jobs: + build: + name: Build on ${{matrix.container}} (using ${{matrix.cc}}) + runs-on: ubuntu-latest + container: + image: ${{matrix.container}} + volumes: + - /tmp/.cache + - /var/cache/apt + + strategy: + fail-fast: false # don't cancel other jobs in the matrix if one fails + matrix: + container: + [ + "debian:testing", + "fedora:latest", + "ubuntu:rolling", + "archlinux:latest", + ] + cc: ["gcc"] + cxx: ["g++"] + include: + - container: "archlinux:latest" + cc: "clang" + cxx: "clang++" + + env: + # Speed up build with ccache + CC: ccache ${{ matrix.cc }} + CXX: ccache ${{ matrix.cxx }} + CONTAINER: ${{ matrix.container }} + + steps: + - name: Setup environment variables + id: distro-name + shell: bash + run: | + split=(${CONTAINER//:/ }) + distro=${split[0]} + short_sha=${SHA:0:8} + echo "DISTRO=$distro" | tee -a $GITHUB_ENV + - name: Install git command + shell: bash + run: | + echo "::group::Install git ..." + apt-get update -qq && apt-get install --assume-yes git || true + dnf update -y && dnf install -y git || true + pacman --noconfirm -Sy git || true + echo "::endgroup::" + - name: Repository checkout + uses: actions/checkout@v5 + - name: Install dependency packages + run: .github/workflows/${{ env.DISTRO }}.sh + - name: Enable ccache to speed up builds + uses: hendrikmuhs/ccache-action@v1.2 + with: + key: ${{ env.DISTRO }}-${{ matrix.cc }} + + # INFO: Depends on mate-desktop 1.27.1+, so we should install it from source. + - name: Cache mate-desktop binary packages + uses: actions/cache@v5 + id: cache-mate-desktop + with: + path: ${{ env.CACHE_PATH }} + key: ${{ env.DISTRO }}-build-mate-desktop-${{env.MATE_DESKTOP_VERSION}} + - name: Built and install mate-desktop from source + run: .github/workflows/mate-desktop.sh ${{env.MATE_DESKTOP_VERSION}} ${{ env.CACHE_PATH }} + # INFO: mate-desktop dependency install finished. + + - name: Build the source code + run: .github/workflows/builds.sh diff --git a/.github/workflows/debian.sh b/.github/workflows/debian.sh new file mode 100755 index 000000000..bceedce6f --- /dev/null +++ b/.github/workflows/debian.sh @@ -0,0 +1,58 @@ +#!/usr/bin/bash + +# Use grouped output messages +infobegin() { + echo "::group::${1}" +} +infoend() { + echo "::endgroup::" +} + +# Required packages on Debian +requires=( + ccache # Use ccache to speed up build +) + +# https://salsa.debian.org/debian-mate-team/mate-applets +requires+=( + autopoint + gcc + git + libcpupower-dev + libdbus-1-dev + libdbus-glib-1-dev + libglib2.0-dev + libgtk-3-dev + libgtksourceview-4-dev + libgtop2-dev + libgucharmap-2-90-dev + libiw-dev + libmate-desktop-dev + libmate-menu-dev + libmate-panel-applet-dev + libmateweather-dev + libnl-genl-3-dev + libnotify-dev + libpolkit-gobject-1-dev + libupower-glib-dev + libwnck-3-dev + libx11-dev + libxml2-dev + make + mate-common + x11proto-kb-dev + yelp-tools + iso-codes + gobject-introspection + libgirepository1.0-dev +) + +infobegin "Update system" +apt-get update -qq +infoend + +infobegin "Install dependency packages" +env DEBIAN_FRONTEND=noninteractive \ + apt-get install --assume-yes \ + ${requires[@]} +infoend diff --git a/.github/workflows/fedora.sh b/.github/workflows/fedora.sh new file mode 100755 index 000000000..1daef779a --- /dev/null +++ b/.github/workflows/fedora.sh @@ -0,0 +1,56 @@ +#!/usr/bin/bash + +# Use grouped output messages +infobegin() { + echo "::group::${1}" +} +infoend() { + echo "::endgroup::" +} + +# Required packages on Fedora +requires=( + ccache # Use ccache to speed up build +) + +# https://src.fedoraproject.org/cgit/rpms/mate-applets.git +requires+=( + autoconf-archive + dbus-glib-devel + gcc + git + gtksourceview4-devel + gucharmap-devel + json-glib-devel + kernel-tools-libs-devel + libgtop2-devel + libnl3-devel + libnotify-devel + libmateweather-devel + libsoup3-devel + libwnck3-devel + libxml2-devel + libICE-devel + libSM-devel + make + mate-common + mate-desktop-devel + mate-menus-devel + mate-settings-daemon-devel + mate-notification-daemon + mate-panel-devel + polkit-devel + redhat-rpm-config + startup-notification-devel + upower-devel + iso-codes-devel + gobject-introspection-devel +) + +infobegin "Update system" +dnf update -y +infoend + +infobegin "Install dependency packages" +dnf install -y ${requires[@]} +infoend diff --git a/.github/workflows/mate-desktop.sh b/.github/workflows/mate-desktop.sh new file mode 100755 index 000000000..b55046d51 --- /dev/null +++ b/.github/workflows/mate-desktop.sh @@ -0,0 +1,148 @@ +#!/usr/bin/bash + +set -e +set -o pipefail + +NAME="mate-desktop" +TEMP_DIR=$(mktemp -d) +OS=$(cat /etc/os-release | grep ^ID | head -n 1 | awk -F= '{ print $2}') +TAG=$1 +CACHE_DIR=$2 + +# Use grouped output messages +infobegin() { + echo "::group::${1}" +} +infoend() { + echo "::endgroup::" +} + +# Required packages to build mate-desktop +# https://gitlab.archlinux.org/archlinux/packaging/packages/mate-desktop +arch_requires=( + autoconf-archive + gobject-introspection + mate-common + intltool +) + +# https://salsa.debian.org/debian-mate-team/mate-desktop/-/blob/master/debian/control +debian_requires=( + autoconf-archive + autopoint + gobject-introspection + gtk-doc-tools + intltool + iso-codes + libdconf-dev + libgdk-pixbuf-2.0-dev + libgirepository1.0-dev + libglib2.0-dev + libglib2.0-doc + libgtk-3-dev + libgtk-3-doc + librsvg2-bin + libstartup-notification0-dev + libx11-dev + libxml2-dev + libxrandr-dev + mate-common +) + +# https://src.fedoraproject.org/rpms/mate-desktop/blob/rawhide/f/mate-desktop.spec +fedora_requires=( + dconf-devel + desktop-file-utils + gobject-introspection-devel + make + mate-common + startup-notification-devel + gtk3-devel + iso-codes-devel + gobject-introspection-devel + cairo-gobject-devel +) + +# https://git.launchpad.net/ubuntu/+source/mate-desktop/tree/debian/control +ubuntu_requires=( + autoconf-archive + autopoint + gobject-introspection + gtk-doc-tools + intltool + iso-codes + libdconf-dev + libgdk-pixbuf-2.0-dev + libgirepository1.0-dev + libglib2.0-dev + libglib2.0-doc + libgtk-3-dev + libgtk-3-doc + librsvg2-bin + libstartup-notification0-dev + libx11-dev + libxml2-dev + libxrandr-dev + mate-common +) + +requires=$(eval echo '${'"${OS}_requires[@]}") + +infobegin "Install Depends for mate-desktop" +case ${OS} in +arch) + pacman --noconfirm -Syu + pacman --noconfirm -S ${requires[@]} + ;; +debian | ubuntu) + apt-get update -qq + env DEBIAN_FRONTEND=noninteractive \ + apt-get install --assume-yes --no-install-recommends ${requires[@]} + ;; +fedora) + dnf update -y + dnf install -y ${requires[@]} + ;; +esac +infoend + +# Use cached packages first +if [ -f $CACHE_DIR/${NAME}-${TAG}.tar.xz ]; then + echo "Found cache package, reuse it" + tar -C / -Jxf $CACHE_DIR/${NAME}-${TAG}.tar.xz +else + git clone --recurse-submodules https://github.com/mate-desktop/${NAME} + + # Foldable output information + infobegin "Configure" + cd ${NAME} + git checkout v${TAG} + if [[ ${OS} == "debian" || ${OS} == "ubuntu" ]]; then + ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu --libexecdir=/usr/lib/x86_64-linux-gnu || { + cat config.log + exit 1 + } + else + ./autogen.sh --prefix=/usr || { + cat config.log + exit 1 + } + fi + infoend + + infobegin "Build" + make -j ${JOBS} + infoend + + infobegin "Install" + make install + infoend + + # Cache this package version + infobegin "Cache" + [ -d ${CACHE_DIR} ] || mkdir -p ${CACHE_DIR} + make install DESTDIR=${TEMP_DIR} + cd $TEMP_DIR + tar -J -cf $CACHE_DIR/${NAME}-${TAG}.tar.xz * + infoend +fi diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..b39bb6ca1 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,37 @@ +name: Release Version +on: + push: + tags: + - "v*.*.*" + +env: + MATE_DESKTOP_VERSION: 1.28.2 + CACHE_PATH: /tmp/.cache + +jobs: + release: + name: Release New Version + runs-on: ubuntu-latest + steps: + - name: Repository checkout + uses: actions/checkout@v5 + + - name: Install dependency packages + run: sudo .github/workflows/ubuntu.sh + + - name: Install higher version Mate component packages + run: sudo .github/workflows/mate-desktop.sh ${{env.MATE_DESKTOP_VERSION}} ${{ env.CACHE_PATH }} + + - name: Build the source code + run: .github/workflows/builds.sh autotools + + - name: Install GH CLI + uses: dev-hanz-ops/install-gh-cli-action@v0.2.1 + with: + gh-cli-version: 2.72.0 + + - name: Create github release + run: | + gh release create ${{ github.ref_name }} --title ${{ github.ref_name }} --generate-notes mate-applets-*.tar.xz + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/ubuntu.sh b/.github/workflows/ubuntu.sh new file mode 100755 index 000000000..bbcda490e --- /dev/null +++ b/.github/workflows/ubuntu.sh @@ -0,0 +1,58 @@ +#!/usr/bin/bash + +# Use grouped output messages +infobegin() { + echo "::group::${1}" +} +infoend() { + echo "::endgroup::" +} + +# Required packages on Ubuntu +requires=( + ccache # Use ccache to speed up build +) + +# https://git.launchpad.net/ubuntu/+source/mate-applets/tree/debian/control +requires+=( + autopoint + gcc + git + libcpufreq-dev + libdbus-1-dev + libdbus-glib-1-dev + libglib2.0-dev + libgtk-3-dev + libgtksourceview-4-dev + libgtop2-dev + libgucharmap-2-90-dev + libiw-dev + libmate-desktop-dev + libmate-menu-dev + libmate-panel-applet-dev + libmateweather-dev + libnl-genl-3-dev + libnotify-dev + libpolkit-gobject-1-dev + libupower-glib-dev + libwnck-3-dev + libx11-dev + libxml2-dev + make + mate-common + x11proto-kb-dev + yelp-tools + iso-codes + gobject-introspection + libgirepository1.0-dev +) + +infobegin "Update system" +apt-get update -y +infoend + +infobegin "Install dependency packages" +env DEBIAN_FRONTEND=noninteractive \ + apt-get install --assume-yes \ + ${requires[@]} +infoend diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 607574b42..000000000 --- a/.travis.yml +++ /dev/null @@ -1,89 +0,0 @@ -# vim: set ts=2 sts=2 sw=2 expandtab : -dist: jammy -language: shell -os: linux -services: - - docker -addons: - apt: - packages: - - python3-pip - - python3-setuptools - -branches: - except: - - gh-pages - -before_install: - - curl -Ls -o docker-build https://github.com/mate-desktop/mate-dev-scripts/raw/master/travis/docker-build - - curl -Ls -o gen-index https://github.com/mate-desktop/mate-dev-scripts/raw/master/travis/gen-index.sh - - chmod +x docker-build gen-index - -install: - - sudo apt-get install -y python3-pip python3-setuptools - - sudo pip3 install --upgrade pip - - sudo pip3 install PyGithub - - ./docker-build --name ${DISTRO} --config .build.yml --install - -script: - - ./docker-build --name ${DISTRO} --verbose --config .build.yml --build scripts - -script: - - ./docker-build --name ${DISTRO} --verbose --config .build.yml --build scripts - -notifications: - irc: - if: (tag OR branch = master) AND - repo = "mate-desktop/mate-applets" - channels: - - "irc.libera.chat#mate-dev" - template: - - "[%{repository_name}] %{author}: %{commit_subject}" - - "[%{branch}] %{commit} %{message} %{build_url}" - on_success: never - on_failure: always - -before_deploy: - - yes | gem update --system --force - - gem install bundler - - gem install faraday-net_http -v '3.3.0' # Avoid faraday version problem - - gem install uri - - gem install logger - -deploy: - - provider: pages - edge: - branch: v2.0.5 - token: $GITHUB_TOKEN - keep_history: false - committer_from_gh: true - target_branch: gh-pages - local_dir: html-report - strategy: git - on: - all_branches: true - condition: ${DISTRO} =~ ^fedora.*$ - - provider: script - edge: - branch: v2.0.5 - script: ./docker-build --verbose --config .build.yml --release github - on: - tags: true - condition: "${TRAVIS_TAG} =~ ^v.*$ && ${DISTRO} =~ ^fedora.*$" - -after_success: - - 'if [[ "$TRAVIS_SECURE_ENV_VARS" == "true" && "$TRAVIS_PULL_REQUEST" != "false" && ${DISTRO} =~ ^fedora.*$ ]]; then - REPO_SLUG_ARRAY=(${TRAVIS_REPO_SLUG//\// }); - REPO_NAME=${REPO_SLUG_ARRAY[1]}; - URL="https://${REPO_NAME}.mate-desktop.dev"; - COMMENT="Code analysis completed"; - curl -H "Authorization: token $GITHUB_TOKEN" -X POST - -d "{\"state\": \"success\", \"description\": \"$COMMENT\", \"context\":\"scan-build\", \"target_url\": \"$URL\"}" - https://api.github.com/repos/${TRAVIS_REPO_SLUG}/statuses/${TRAVIS_PULL_REQUEST_SHA}; - fi' - -env: -# - DISTRO="archlinux:latest" - - DISTRO="debian:testing" - - DISTRO="fedora:latest" -# - DISTRO="ubuntu:rolling" diff --git a/invest-applet/data/Makefile.am b/invest-applet/data/Makefile.am index 615f23e54..856cef2c1 100644 --- a/invest-applet/data/Makefile.am +++ b/invest-applet/data/Makefile.am @@ -18,6 +18,8 @@ gsettings_SCHEMAS = $(gschema_in_files:.xml.in=.xml) investbindir = $(libdir)/invest-applet +service_in_files = org.mate.panel.applet.InvestAppletFactory.service.in + # ****************************************************************************** # Build rules # ****************************************************************************** diff --git a/invest-applet/invest/Makefile.am b/invest-applet/invest/Makefile.am index 2ee22ab1e..9fdf50872 100644 --- a/invest-applet/invest/Makefile.am +++ b/invest-applet/invest/Makefile.am @@ -11,7 +11,9 @@ AM_CPPFLAGS = \ APPLET_SOURCES = \ invest-applet.c \ + invest-applet.h \ invest-applet-chart.c \ + invest-applet-chart.h \ $(NULL) APPLET_LIBS = \ From 665c3969ec3f2437dcf63cd327f8122fdd6cc98b Mon Sep 17 00:00:00 2001 From: mbkma Date: Thu, 29 Jan 2026 23:17:53 +0100 Subject: [PATCH 2/3] ci: remove redundant GH CLI installation step --- .github/workflows/release.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b39bb6ca1..18c0f3eda 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -24,12 +24,6 @@ jobs: - name: Build the source code run: .github/workflows/builds.sh autotools - - - name: Install GH CLI - uses: dev-hanz-ops/install-gh-cli-action@v0.2.1 - with: - gh-cli-version: 2.72.0 - - name: Create github release run: | gh release create ${{ github.ref_name }} --title ${{ github.ref_name }} --generate-notes mate-applets-*.tar.xz From 872342869512ab355166893ac2c19ae9da2e5ad3 Mon Sep 17 00:00:00 2001 From: mbkma Date: Fri, 30 Jan 2026 00:26:19 +0100 Subject: [PATCH 3/3] ci: add set -eo pipefail to workflow scripts --- .github/workflows/archlinux.sh | 2 ++ .github/workflows/debian.sh | 2 ++ .github/workflows/fedora.sh | 2 ++ .github/workflows/ubuntu.sh | 2 ++ 4 files changed, 8 insertions(+) diff --git a/.github/workflows/archlinux.sh b/.github/workflows/archlinux.sh index 9d86a3e93..f9e3cfabf 100755 --- a/.github/workflows/archlinux.sh +++ b/.github/workflows/archlinux.sh @@ -1,5 +1,7 @@ #!/usr/bin/bash +set -eo pipefail + # Use grouped output messages infobegin() { echo "::group::${1}" diff --git a/.github/workflows/debian.sh b/.github/workflows/debian.sh index bceedce6f..fe0f711ed 100755 --- a/.github/workflows/debian.sh +++ b/.github/workflows/debian.sh @@ -1,5 +1,7 @@ #!/usr/bin/bash +set -eo pipefail + # Use grouped output messages infobegin() { echo "::group::${1}" diff --git a/.github/workflows/fedora.sh b/.github/workflows/fedora.sh index 1daef779a..bc77b0834 100755 --- a/.github/workflows/fedora.sh +++ b/.github/workflows/fedora.sh @@ -1,5 +1,7 @@ #!/usr/bin/bash +set -eo pipefail + # Use grouped output messages infobegin() { echo "::group::${1}" diff --git a/.github/workflows/ubuntu.sh b/.github/workflows/ubuntu.sh index bbcda490e..291ab39bc 100755 --- a/.github/workflows/ubuntu.sh +++ b/.github/workflows/ubuntu.sh @@ -1,5 +1,7 @@ #!/usr/bin/bash +set -eo pipefail + # Use grouped output messages infobegin() { echo "::group::${1}"