Skip to content

Gh actions#1554

Open
mbkma wants to merge 1 commit into
masterfrom
gh-actions
Open

Gh actions#1554
mbkma wants to merge 1 commit into
masterfrom
gh-actions

Conversation

@mbkma

@mbkma mbkma commented Apr 5, 2026

Copy link
Copy Markdown
Member

No description provided.

@mbkma mbkma force-pushed the gh-actions branch 3 times, most recently from ce7fd84 to 4521e77 Compare April 5, 2026 08:13
if [ -f autogen.sh ]; then
infobegin "Configure (autotools)"
NOCONFIGURE=1 ./autogen.sh
./configure --prefix=/usr --enable-compile-warnings=maximum || {

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should also test with --with-in-process-applets=all (I think in addition to --with-in-process-applets=none), since this is important for Wayland builds. Maybe we do this only for a single distro (e.g. ${OS} == "debian", since that's what @lukefromdc uses for Wayland development I think?)


infobegin "Check (autotools)"
make -j ${CPUS} check || {
true

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this swallow errors - I think we do this in all our repos anyway, but wondering if we're missing stuff because of the || true...


NAME="mate-desktop"
TEMP_DIR=$(mktemp -d)
OS=$(cat /etc/os-release | grep ^ID | head -n 1 | awk -F= '{ print $2}')

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the /etc/os-release file sets the variables directly, you should be able to change this to OS=$(source /etc/os-release && echo $ID), which may be a bit more robust

@lukefromdc

lukefromdc commented Apr 8, 2026 via email

Copy link
Copy Markdown
Member

matrix:
container:
[
"debian:testing",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we change this to "debian:unstable" since that's what @lukefromdc is using? This would likely (hopefully) solve the bad cert issue in GH Actions

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fine by me, though we must remember that Debian Unstable can always get a bad or out of synch update. Matching what I use will hopefully reduce problems though

Comment on lines +23 to +94
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
with:
submodules: "true"
- 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: mate-panel depends mate-desktop 1.28.2+, 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-panel depends mate-desktop 1.28.2+, install finished.

- name: Build the source code
run: .github/workflows/builds.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants