From f5b6a3bbb995f433d16740cffded5a1af16606be Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:12:17 +0200 Subject: [PATCH 01/14] ci: expand distro testing coverage with AlmaLinux, Arch, and OpenSUSE --- .github/workflows/pipeline.yml | 64 +++++++++++++++++++++++++--------- .gitignore | 1 + 2 files changed, 49 insertions(+), 16 deletions(-) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index 43c50be..b585f9f 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -124,30 +124,52 @@ jobs: # --- Build and Validation Stage --- unit-tests: - name: Run Unit Tests (${{ matrix.os }}) + name: Unit Tests (${{ matrix.target.name }}) if: github.ref != 'refs/heads/gh-pages' runs-on: ubuntu-latest strategy: fail-fast: false matrix: - os: [fedora:latest, debian:latest] + target: + - name: 'Fedora' + image: 'fedora:latest' + pkg_cmd: 'dnf install -y' + deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname util-linux python3-yaml' + - name: 'AlmaLinux' + image: 'almalinux:9' + # Enable CRB for epel, then install epel-release for bats, then install packages + pkg_cmd: 'dnf install -y dnf-plugins-core && dnf config-manager --set-enabled crb && dnf install -y epel-release && dnf install -y' + deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname util-linux python3-yaml' + - name: 'Debian' + image: 'debian:latest' + pkg_cmd: 'apt-get update && apt-get install -y' + deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname bsdutils python3-yaml' + - name: 'Ubuntu' + image: 'ubuntu:latest' + pkg_cmd: 'apt-get update && apt-get install -y' + deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname bsdutils python3-yaml' + - name: 'Arch Linux' + image: 'archlinux:latest' + pkg_cmd: 'pacman -Syu --noconfirm' + deps: 'bash-bats python-pytest python-pytest-cov python-pytest-xdist make inetutils util-linux python-yaml' + - name: 'OpenSUSE' + image: 'opensuse/tumbleweed:latest' + pkg_cmd: 'zypper --non-interactive install' + deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname util-linux python3-PyYAML' container: - image: ${{ matrix.os }} + image: ${{ matrix.target.image }} steps: - name: Checkout Repository uses: actions/checkout@v5 + - name: Install Test Dependencies run: | - if command -v dnf >/dev/null 2>&1; then - dnf install -y bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname util-linux python3-yaml - else - apt-get update && apt-get install -y bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname bsdutils python3-yaml - fi + ${{ matrix.target.pkg_cmd }} ${{ matrix.target.deps }} + - name: Run Tests run: | export PYTHONPATH=src make test - build-rpm: name: Build & Verify RPMs if: github.ref != 'refs/heads/gh-pages' @@ -214,7 +236,6 @@ jobs: name: debs path: debs/ retention-days: 5 - smoke-test: name: Smoke Test (${{ matrix.os }}) if: github.ref != 'refs/heads/gh-pages' @@ -223,42 +244,52 @@ jobs: strategy: fail-fast: false matrix: - os: [fedora:40, fedora:41, ubuntu:latest, debian:latest] + # Added almalinux:9 and opensuse/tumbleweed for comprehensive Linux representation + os: [fedora:40, fedora:41, almalinux:9, ubuntu:latest, debian:latest, opensuse/tumbleweed:latest] container: image: ${{ matrix.os }} options: --privileged steps: - name: Checkout Repository uses: actions/checkout@v5 + - name: Install Runtime Dependencies run: | - if [ -f /etc/debian_version ]; then + if command -v apt-get >/dev/null 2>&1; then apt-get update && apt-get install -y curl unzip systemd + elif command -v zypper >/dev/null 2>&1; then + zypper --non-interactive install curl unzip systemd util-linux shadow else dnf install -y curl unzip systemd shadow-utils util-linux fi + - name: Retrieve RPM Artifacts - if: contains(matrix.os, 'fedora') + if: contains(matrix.os, 'fedora') || contains(matrix.os, 'almalinux') || contains(matrix.os, 'opensuse') uses: actions/download-artifact@v4 with: name: rpms path: rpms + - name: Retrieve DEB Artifacts if: contains(matrix.os, 'ubuntu') || contains(matrix.os, 'debian') uses: actions/download-artifact@v4 with: name: debs path: debs + - name: Execute Package Installation run: | - if [ -f /etc/debian_version ]; then + if command -v apt-get >/dev/null 2>&1; then apt-get install -y ./debs/*.deb + elif command -v zypper >/dev/null 2>&1; then + zypper --non-interactive install rpms/flatpak-automatic-[0-9].*.noarch.rpm else dnf install -y rpms/flatpak-automatic-[0-9].*.noarch.rpm fi + - name: Validate Filesystem Integrity run: | - if [ -f /etc/debian_version ]; then + if command -v apt-get >/dev/null 2>&1; then test -f /etc/default/flatpak-automatic test -f /lib/systemd/system/flatpak-automatic.timer || test -f /usr/lib/systemd/system/flatpak-automatic.timer test -f /lib/systemd/system/flatpak-automatic.service || test -f /usr/lib/systemd/system/flatpak-automatic.service @@ -268,9 +299,10 @@ jobs: test -f /usr/lib/systemd/system/flatpak-automatic.service fi test -f /usr/bin/flatpak-automatic + - name: Verify Systemd Unit Syntax run: | - if [ -f /etc/debian_version ]; then + if command -v apt-get >/dev/null 2>&1; then systemd-analyze verify /lib/systemd/system/flatpak-automatic.timer || systemd-analyze verify /usr/lib/systemd/system/flatpak-automatic.timer systemd-analyze verify /lib/systemd/system/flatpak-automatic.service || systemd-analyze verify /usr/lib/systemd/system/flatpak-automatic.service else diff --git a/.gitignore b/.gitignore index 7b94226..310df80 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ __pycache__/ build_docs/ site/ src/flatpak_automatic.egg-info/ +htmlcov/ From 3193f11b92c301da171219f2e5d01aae918177dc Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:17:21 +0200 Subject: [PATCH 02/14] ci: fix Arch Linux package name for bats and expand distro matrix --- .github/workflows/pipeline.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index b585f9f..c30b135 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -151,7 +151,7 @@ jobs: - name: 'Arch Linux' image: 'archlinux:latest' pkg_cmd: 'pacman -Syu --noconfirm' - deps: 'bash-bats python-pytest python-pytest-cov python-pytest-xdist make inetutils util-linux python-yaml' + deps: 'bats python-pytest python-pytest-cov python-pytest-xdist make inetutils util-linux python-yaml' - name: 'OpenSUSE' image: 'opensuse/tumbleweed:latest' pkg_cmd: 'zypper --non-interactive install' From 408c7658f22546d136bc07dff43684dfffc2f190 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:17:28 +0200 Subject: [PATCH 03/14] chore(release): bump version to 1.5.34 --- CHANGELOG.md | 7 +++++++ Makefile | 2 +- assets/banner.svg | 2 +- config/sysconfig/flatpak-automatic | 2 +- pyproject.toml | 2 +- src/flatpak-automatic.py | 2 +- src/flatpak_automatic/__init__.py | 2 +- src/flatpak_automatic/cli.py | 2 +- tbump.toml | 2 +- 9 files changed, 15 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 85afc0a..f3ad287 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,13 @@ The used format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.5.34] - 2026-05-05 + +### ⚙️ Miscellaneous Tasks + +- Expand distro testing coverage with AlmaLinux, Arch, and OpenSUSE +- Fix Arch Linux package name for bats and expand distro matrix + ## [1.5.33] - 2026-05-05 ### 🐛 Bug Fixes diff --git a/Makefile b/Makefile index 5d9a25d..84dbb39 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ NAME := flatpak-automatic EPOCH := 1 -VERSION := 1.5.33 +VERSION := 1.5.34 REL_NUM := 1 DATE := $(shell LC_ALL=C date +"%a %b %d %Y") AUTHOR := "fedoraBee <9395414+fedoraBee@users.noreply.github.com>" diff --git a/assets/banner.svg b/assets/banner.svg index d6708b4..76737e4 100644 --- a/assets/banner.svg +++ b/assets/banner.svg @@ -17,6 +17,6 @@ | _|| / _` || ._| '_ \/ _` || / / |_| |_\__,_|\__|| .__/\__,_||_\_\ AUTOMATIC |_| - v1.5.33 + v1.5.34 diff --git a/config/sysconfig/flatpak-automatic b/config/sysconfig/flatpak-automatic index 21c66f6..315a95d 100644 --- a/config/sysconfig/flatpak-automatic +++ b/config/sysconfig/flatpak-automatic @@ -6,7 +6,7 @@ # Please migrate your settings to the new YAML format. # ============================================================================== -# Version: 1.5.33 | Built for Fedora & Universal RPM Systems +# Version: 1.5.34 | Built for Fedora & Universal RPM Systems # Built for Fedora & Universal RPM Systems # --- [ Universal Notifications (Apprise) ] --- diff --git a/pyproject.toml b/pyproject.toml index 595fa6d..e5b5e50 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "flatpak-automatic" -version = "1.5.33" +version = "1.5.34" authors = [ { name = "fedoraBee", email = "9395414+fedoraBee@users.noreply.github.com" }, ] diff --git a/src/flatpak-automatic.py b/src/flatpak-automatic.py index 35cbce1..47ba69d 100755 --- a/src/flatpak-automatic.py +++ b/src/flatpak-automatic.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Version: 1.5.33 +# Version: 1.5.34 import sys import os diff --git a/src/flatpak_automatic/__init__.py b/src/flatpak_automatic/__init__.py index 0ba02a0..6988561 100644 --- a/src/flatpak_automatic/__init__.py +++ b/src/flatpak_automatic/__init__.py @@ -1,6 +1,6 @@ from .updater import FlatpakUpdater -__version__ = "1.5.33" +__version__ = "1.5.34" from .snapper import SnapperManager from .config import ConfigManager, StateManager diff --git a/src/flatpak_automatic/cli.py b/src/flatpak_automatic/cli.py index 2a59b00..b455e8b 100644 --- a/src/flatpak_automatic/cli.py +++ b/src/flatpak_automatic/cli.py @@ -10,7 +10,7 @@ def banner() -> str: f"{Colors.OKBLUE} | __| |__ _ | |_ _ __ __ _ | |__ \n" f"{Colors.HEADER} | _|| / _` || ._| '_ \\/ _` || / / \n" f"{Colors.OKPINK} |_| |_\\__,_|\\__|| .__/\\__,_||_\\_\\\n" - f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.33{Colors.ENDC}\n" + f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.34{Colors.ENDC}\n" ) diff --git a/tbump.toml b/tbump.toml index ea102b8..829f13e 100644 --- a/tbump.toml +++ b/tbump.toml @@ -1,5 +1,5 @@ [version] -current = "1.5.33" +current = "1.5.34" # Updated regex to support X.Y.Z and X.Y.Z-rc1 (or -beta, -alpha) regex = ''' (?P\d+) From b0dad424dd07df33b27149bcc24ed9e50e83022d Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:22:48 +0200 Subject: [PATCH 04/14] fix(ci): resolve OpenSUSE and AlmaLinux installation issues and improve spec portability --- .github/workflows/pipeline.yml | 6 +++--- rpm/flatpak-automatic.spec.in | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index c30b135..ead32e0 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -155,7 +155,7 @@ jobs: - name: 'OpenSUSE' image: 'opensuse/tumbleweed:latest' pkg_cmd: 'zypper --non-interactive install' - deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname util-linux python3-PyYAML' + deps: 'bats python3-pytest python3-pytest-cov python3-pytest-xdist make hostname util-linux python3-PyYAML python3-dbus-python' container: image: ${{ matrix.target.image }} steps: @@ -260,7 +260,7 @@ jobs: elif command -v zypper >/dev/null 2>&1; then zypper --non-interactive install curl unzip systemd util-linux shadow else - dnf install -y curl unzip systemd shadow-utils util-linux + dnf install -y --allowerasing curl unzip systemd shadow-utils util-linux fi - name: Retrieve RPM Artifacts @@ -284,7 +284,7 @@ jobs: elif command -v zypper >/dev/null 2>&1; then zypper --non-interactive install rpms/flatpak-automatic-[0-9].*.noarch.rpm else - dnf install -y rpms/flatpak-automatic-[0-9].*.noarch.rpm + dnf install -y --allowerasing rpms/flatpak-automatic-[0-9].*.noarch.rpm fi - name: Validate Filesystem Integrity diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index 72b3eba..3ab5aec 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -14,8 +14,8 @@ BuildRequires: systemd-rpm-macros Requires: flatpak Requires: python3 -Requires: python3-yaml -Requires: python3-dbus +Requires: python3dist(pyyaml) +Requires: python3dist(dbus-python) Requires: snapper Requires: s-nail Requires: systemd From 1aa085eeafef955f341f42deb681499a1559aaaa Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:22:57 +0200 Subject: [PATCH 05/14] chore(release): bump version to 1.5.35 --- CHANGELOG.md | 7 +++++++ Makefile | 2 +- assets/banner.svg | 2 +- config/sysconfig/flatpak-automatic | 2 +- pyproject.toml | 2 +- src/flatpak-automatic.py | 2 +- src/flatpak_automatic/__init__.py | 2 +- src/flatpak_automatic/cli.py | 2 +- tbump.toml | 2 +- 9 files changed, 15 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f3ad287..f8cbb62 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,13 @@ The used format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.5.35] - 2026-05-05 + +### 🐛 Bug Fixes + +- _(ci)_ Resolve OpenSUSE and AlmaLinux installation issues and improve spec + portability + ## [1.5.34] - 2026-05-05 ### ⚙️ Miscellaneous Tasks diff --git a/Makefile b/Makefile index 84dbb39..c2a6a82 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ NAME := flatpak-automatic EPOCH := 1 -VERSION := 1.5.34 +VERSION := 1.5.35 REL_NUM := 1 DATE := $(shell LC_ALL=C date +"%a %b %d %Y") AUTHOR := "fedoraBee <9395414+fedoraBee@users.noreply.github.com>" diff --git a/assets/banner.svg b/assets/banner.svg index 76737e4..eff2a11 100644 --- a/assets/banner.svg +++ b/assets/banner.svg @@ -17,6 +17,6 @@ | _|| / _` || ._| '_ \/ _` || / / |_| |_\__,_|\__|| .__/\__,_||_\_\ AUTOMATIC |_| - v1.5.34 + v1.5.35 diff --git a/config/sysconfig/flatpak-automatic b/config/sysconfig/flatpak-automatic index 315a95d..5817d62 100644 --- a/config/sysconfig/flatpak-automatic +++ b/config/sysconfig/flatpak-automatic @@ -6,7 +6,7 @@ # Please migrate your settings to the new YAML format. # ============================================================================== -# Version: 1.5.34 | Built for Fedora & Universal RPM Systems +# Version: 1.5.35 | Built for Fedora & Universal RPM Systems # Built for Fedora & Universal RPM Systems # --- [ Universal Notifications (Apprise) ] --- diff --git a/pyproject.toml b/pyproject.toml index e5b5e50..4339e8c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "flatpak-automatic" -version = "1.5.34" +version = "1.5.35" authors = [ { name = "fedoraBee", email = "9395414+fedoraBee@users.noreply.github.com" }, ] diff --git a/src/flatpak-automatic.py b/src/flatpak-automatic.py index 47ba69d..2536cd5 100755 --- a/src/flatpak-automatic.py +++ b/src/flatpak-automatic.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Version: 1.5.34 +# Version: 1.5.35 import sys import os diff --git a/src/flatpak_automatic/__init__.py b/src/flatpak_automatic/__init__.py index 6988561..d885a8f 100644 --- a/src/flatpak_automatic/__init__.py +++ b/src/flatpak_automatic/__init__.py @@ -1,6 +1,6 @@ from .updater import FlatpakUpdater -__version__ = "1.5.34" +__version__ = "1.5.35" from .snapper import SnapperManager from .config import ConfigManager, StateManager diff --git a/src/flatpak_automatic/cli.py b/src/flatpak_automatic/cli.py index b455e8b..7f4fdd0 100644 --- a/src/flatpak_automatic/cli.py +++ b/src/flatpak_automatic/cli.py @@ -10,7 +10,7 @@ def banner() -> str: f"{Colors.OKBLUE} | __| |__ _ | |_ _ __ __ _ | |__ \n" f"{Colors.HEADER} | _|| / _` || ._| '_ \\/ _` || / / \n" f"{Colors.OKPINK} |_| |_\\__,_|\\__|| .__/\\__,_||_\\_\\\n" - f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.34{Colors.ENDC}\n" + f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.35{Colors.ENDC}\n" ) diff --git a/tbump.toml b/tbump.toml index 829f13e..a0e907b 100644 --- a/tbump.toml +++ b/tbump.toml @@ -1,5 +1,5 @@ [version] -current = "1.5.34" +current = "1.5.35" # Updated regex to support X.Y.Z and X.Y.Z-rc1 (or -beta, -alpha) regex = ''' (?P\d+) From 9c2c79682730c1fd133e7fba0cbe601657b6f925 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:25:14 +0200 Subject: [PATCH 06/14] fix(rpm): mark example config as configuration file to satisfy rpmlint --- rpm/flatpak-automatic.spec.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index 3ab5aec..4aeddcc 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -78,7 +78,7 @@ fi %dir %{_sysconfdir}/flatpak-automatic %dir %{_sysconfdir}/flatpak-automatic/templates %config(noreplace) %{_sysconfdir}/flatpak-automatic/config.yaml -%{_sysconfdir}/flatpak-automatic/config.example.yaml +%config %{_sysconfdir}/flatpak-automatic/config.example.yaml %config(noreplace) %{_sysconfdir}/flatpak-automatic/config.user.yaml %config(noreplace) %{_sysconfdir}/flatpak-automatic/templates/* From 1f264d0bcbe8c826f90a347195f9ae09b0fd35e7 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:25:18 +0200 Subject: [PATCH 07/14] chore(release): bump version to 1.5.36 --- CHANGELOG.md | 6 ++++++ Makefile | 2 +- assets/banner.svg | 2 +- config/sysconfig/flatpak-automatic | 2 +- pyproject.toml | 2 +- src/flatpak-automatic.py | 2 +- src/flatpak_automatic/__init__.py | 2 +- src/flatpak_automatic/cli.py | 2 +- tbump.toml | 2 +- 9 files changed, 14 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8cbb62..f855179 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,12 @@ The used format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.5.36] - 2026-05-05 + +### 🐛 Bug Fixes + +- _(rpm)_ Mark example config as configuration file to satisfy rpmlint + ## [1.5.35] - 2026-05-05 ### 🐛 Bug Fixes diff --git a/Makefile b/Makefile index c2a6a82..9d3e852 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ NAME := flatpak-automatic EPOCH := 1 -VERSION := 1.5.35 +VERSION := 1.5.36 REL_NUM := 1 DATE := $(shell LC_ALL=C date +"%a %b %d %Y") AUTHOR := "fedoraBee <9395414+fedoraBee@users.noreply.github.com>" diff --git a/assets/banner.svg b/assets/banner.svg index eff2a11..eef498a 100644 --- a/assets/banner.svg +++ b/assets/banner.svg @@ -17,6 +17,6 @@ | _|| / _` || ._| '_ \/ _` || / / |_| |_\__,_|\__|| .__/\__,_||_\_\ AUTOMATIC |_| - v1.5.35 + v1.5.36 diff --git a/config/sysconfig/flatpak-automatic b/config/sysconfig/flatpak-automatic index 5817d62..3564a0d 100644 --- a/config/sysconfig/flatpak-automatic +++ b/config/sysconfig/flatpak-automatic @@ -6,7 +6,7 @@ # Please migrate your settings to the new YAML format. # ============================================================================== -# Version: 1.5.35 | Built for Fedora & Universal RPM Systems +# Version: 1.5.36 | Built for Fedora & Universal RPM Systems # Built for Fedora & Universal RPM Systems # --- [ Universal Notifications (Apprise) ] --- diff --git a/pyproject.toml b/pyproject.toml index 4339e8c..bf34e41 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "flatpak-automatic" -version = "1.5.35" +version = "1.5.36" authors = [ { name = "fedoraBee", email = "9395414+fedoraBee@users.noreply.github.com" }, ] diff --git a/src/flatpak-automatic.py b/src/flatpak-automatic.py index 2536cd5..1b78c8f 100755 --- a/src/flatpak-automatic.py +++ b/src/flatpak-automatic.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Version: 1.5.35 +# Version: 1.5.36 import sys import os diff --git a/src/flatpak_automatic/__init__.py b/src/flatpak_automatic/__init__.py index d885a8f..0e8a121 100644 --- a/src/flatpak_automatic/__init__.py +++ b/src/flatpak_automatic/__init__.py @@ -1,6 +1,6 @@ from .updater import FlatpakUpdater -__version__ = "1.5.35" +__version__ = "1.5.36" from .snapper import SnapperManager from .config import ConfigManager, StateManager diff --git a/src/flatpak_automatic/cli.py b/src/flatpak_automatic/cli.py index 7f4fdd0..d806193 100644 --- a/src/flatpak_automatic/cli.py +++ b/src/flatpak_automatic/cli.py @@ -10,7 +10,7 @@ def banner() -> str: f"{Colors.OKBLUE} | __| |__ _ | |_ _ __ __ _ | |__ \n" f"{Colors.HEADER} | _|| / _` || ._| '_ \\/ _` || / / \n" f"{Colors.OKPINK} |_| |_\\__,_|\\__|| .__/\\__,_||_\\_\\\n" - f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.35{Colors.ENDC}\n" + f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.36{Colors.ENDC}\n" ) diff --git a/tbump.toml b/tbump.toml index a0e907b..860c084 100644 --- a/tbump.toml +++ b/tbump.toml @@ -1,5 +1,5 @@ [version] -current = "1.5.35" +current = "1.5.36" # Updated regex to support X.Y.Z and X.Y.Z-rc1 (or -beta, -alpha) regex = ''' (?P\d+) From edba5f0dbd3a53f3738928c0bfd910fcf81364a4 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:29:37 +0200 Subject: [PATCH 08/14] fix(rpm): mark example config as noreplace to satisfy rpmlint --- CHANGELOG.md | 5 +++++ rpm/flatpak-automatic.spec.in | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f855179..f077355 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,11 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### 🐛 Bug Fixes - _(rpm)_ Mark example config as configuration file to satisfy rpmlint +- _(rpm)_ Mark example config as noreplace to satisfy rpmlint + +### ⚙️ Miscellaneous Tasks + +- _(release)_ Bump version to 1.5.36 ## [1.5.35] - 2026-05-05 diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index 4aeddcc..221127f 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -78,7 +78,7 @@ fi %dir %{_sysconfdir}/flatpak-automatic %dir %{_sysconfdir}/flatpak-automatic/templates %config(noreplace) %{_sysconfdir}/flatpak-automatic/config.yaml -%config %{_sysconfdir}/flatpak-automatic/config.example.yaml +%config(noreplace) %{_sysconfdir}/flatpak-automatic/config.example.yaml %config(noreplace) %{_sysconfdir}/flatpak-automatic/config.user.yaml %config(noreplace) %{_sysconfdir}/flatpak-automatic/templates/* From 4548d8434c45a9fee2f480cfae4f52379debef75 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:35:54 +0200 Subject: [PATCH 09/14] fix(rpm): use compatible package names for OpenSUSE and AlmaLinux --- rpm/flatpak-automatic.spec.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index 221127f..a866e18 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -14,8 +14,8 @@ BuildRequires: systemd-rpm-macros Requires: flatpak Requires: python3 -Requires: python3dist(pyyaml) -Requires: python3dist(dbus-python) +Requires: python3-pyyaml +Requires: python3-dbus Requires: snapper Requires: s-nail Requires: systemd From 94ae8871611b73fa3f89fc24eb5add95645772f5 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:35:57 +0200 Subject: [PATCH 10/14] chore(release): bump version to 1.5.37 --- CHANGELOG.md | 6 ++++++ Makefile | 2 +- assets/banner.svg | 2 +- config/sysconfig/flatpak-automatic | 2 +- pyproject.toml | 2 +- src/flatpak-automatic.py | 2 +- src/flatpak_automatic/__init__.py | 2 +- src/flatpak_automatic/cli.py | 2 +- tbump.toml | 2 +- 9 files changed, 14 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f077355..d32f2fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,12 @@ The used format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.5.37] - 2026-05-05 + +### 🐛 Bug Fixes + +- _(rpm)_ Use compatible package names for OpenSUSE and AlmaLinux + ## [1.5.36] - 2026-05-05 ### 🐛 Bug Fixes diff --git a/Makefile b/Makefile index 9d3e852..ca22363 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ NAME := flatpak-automatic EPOCH := 1 -VERSION := 1.5.36 +VERSION := 1.5.37 REL_NUM := 1 DATE := $(shell LC_ALL=C date +"%a %b %d %Y") AUTHOR := "fedoraBee <9395414+fedoraBee@users.noreply.github.com>" diff --git a/assets/banner.svg b/assets/banner.svg index eef498a..9263b09 100644 --- a/assets/banner.svg +++ b/assets/banner.svg @@ -17,6 +17,6 @@ | _|| / _` || ._| '_ \/ _` || / / |_| |_\__,_|\__|| .__/\__,_||_\_\ AUTOMATIC |_| - v1.5.36 + v1.5.37 diff --git a/config/sysconfig/flatpak-automatic b/config/sysconfig/flatpak-automatic index 3564a0d..faa4113 100644 --- a/config/sysconfig/flatpak-automatic +++ b/config/sysconfig/flatpak-automatic @@ -6,7 +6,7 @@ # Please migrate your settings to the new YAML format. # ============================================================================== -# Version: 1.5.36 | Built for Fedora & Universal RPM Systems +# Version: 1.5.37 | Built for Fedora & Universal RPM Systems # Built for Fedora & Universal RPM Systems # --- [ Universal Notifications (Apprise) ] --- diff --git a/pyproject.toml b/pyproject.toml index bf34e41..c1adec9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "flatpak-automatic" -version = "1.5.36" +version = "1.5.37" authors = [ { name = "fedoraBee", email = "9395414+fedoraBee@users.noreply.github.com" }, ] diff --git a/src/flatpak-automatic.py b/src/flatpak-automatic.py index 1b78c8f..7ff30de 100755 --- a/src/flatpak-automatic.py +++ b/src/flatpak-automatic.py @@ -1,5 +1,5 @@ #!/usr/bin/env python3 -# Version: 1.5.36 +# Version: 1.5.37 import sys import os diff --git a/src/flatpak_automatic/__init__.py b/src/flatpak_automatic/__init__.py index 0e8a121..85f4f3a 100644 --- a/src/flatpak_automatic/__init__.py +++ b/src/flatpak_automatic/__init__.py @@ -1,6 +1,6 @@ from .updater import FlatpakUpdater -__version__ = "1.5.36" +__version__ = "1.5.37" from .snapper import SnapperManager from .config import ConfigManager, StateManager diff --git a/src/flatpak_automatic/cli.py b/src/flatpak_automatic/cli.py index d806193..5d299c4 100644 --- a/src/flatpak_automatic/cli.py +++ b/src/flatpak_automatic/cli.py @@ -10,7 +10,7 @@ def banner() -> str: f"{Colors.OKBLUE} | __| |__ _ | |_ _ __ __ _ | |__ \n" f"{Colors.HEADER} | _|| / _` || ._| '_ \\/ _` || / / \n" f"{Colors.OKPINK} |_| |_\\__,_|\\__|| .__/\\__,_||_\\_\\\n" - f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.36{Colors.ENDC}\n" + f" AUTOMATIC |_| {Colors.ENDC} {Colors.OKCYAN} v1.5.37{Colors.ENDC}\n" ) diff --git a/tbump.toml b/tbump.toml index 860c084..2342dab 100644 --- a/tbump.toml +++ b/tbump.toml @@ -1,5 +1,5 @@ [version] -current = "1.5.36" +current = "1.5.37" # Updated regex to support X.Y.Z and X.Y.Z-rc1 (or -beta, -alpha) regex = ''' (?P\d+) From a9d8f410b11da45d0713f1cde16619fcce80bb37 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:44:23 +0200 Subject: [PATCH 11/14] fix(ci): resolve snapper and python-dbus issues on AlmaLinux and OpenSUSE --- .github/workflows/pipeline.yml | 4 ++++ rpm/flatpak-automatic.spec.in | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index ead32e0..b53e6fe 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -260,6 +260,10 @@ jobs: elif command -v zypper >/dev/null 2>&1; then zypper --non-interactive install curl unzip systemd util-linux shadow else + # For AlmaLinux, enable EPEL for snapper and other dependencies + if grep -q "AlmaLinux" /etc/os-release; then + dnf install -y epel-release + fi dnf install -y --allowerasing curl unzip systemd shadow-utils util-linux fi diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index a866e18..1710545 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -14,8 +14,13 @@ BuildRequires: systemd-rpm-macros Requires: flatpak Requires: python3 +%if 0%{?suse_version} +Requires: python3-PyYAML +Requires: python3-dbus-python +%else Requires: python3-pyyaml Requires: python3-dbus +%endif Requires: snapper Requires: s-nail Requires: systemd From bce9a5a88d8cba0401c7a7714b2edc4a2f0f008c Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:50:36 +0200 Subject: [PATCH 12/14] fix(ci): use rich dependencies for multi-distro compatibility and harden almalinux setup --- .github/workflows/pipeline.yml | 6 ++++-- rpm/flatpak-automatic.spec.in | 9 ++------- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index b53e6fe..cc87e04 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -260,9 +260,11 @@ jobs: elif command -v zypper >/dev/null 2>&1; then zypper --non-interactive install curl unzip systemd util-linux shadow else - # For AlmaLinux, enable EPEL for snapper and other dependencies + # For AlmaLinux, enable EPEL and CRB for snapper and other dependencies if grep -q "AlmaLinux" /etc/os-release; then - dnf install -y epel-release + dnf install -y epel-release dnf-plugins-core + dnf config-manager --set-enabled crb || true + dnf makecache fi dnf install -y --allowerasing curl unzip systemd shadow-utils util-linux fi diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index 1710545..de549b6 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -14,13 +14,8 @@ BuildRequires: systemd-rpm-macros Requires: flatpak Requires: python3 -%if 0%{?suse_version} -Requires: python3-PyYAML -Requires: python3-dbus-python -%else -Requires: python3-pyyaml -Requires: python3-dbus -%endif +Requires: (python3-pyyaml or python3-PyYAML) +Requires: (python3-dbus or python3-dbus-python) Requires: snapper Requires: s-nail Requires: systemd From ca8cfd188e707bc90e4c9065706acf1d7fbd6c9c Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 13:55:53 +0200 Subject: [PATCH 13/14] fix(ci): resolve s-nail and snapper installation issues on OpenSUSE and AlmaLinux --- .github/workflows/pipeline.yml | 2 ++ rpm/flatpak-automatic.spec.in | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index cc87e04..7dfcc3f 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -265,6 +265,8 @@ jobs: dnf install -y epel-release dnf-plugins-core dnf config-manager --set-enabled crb || true dnf makecache + # Pre-install dependencies from EPEL to ensure they are available + dnf install -y snapper s-nail fi dnf install -y --allowerasing curl unzip systemd shadow-utils util-linux fi diff --git a/rpm/flatpak-automatic.spec.in b/rpm/flatpak-automatic.spec.in index de549b6..e48926a 100644 --- a/rpm/flatpak-automatic.spec.in +++ b/rpm/flatpak-automatic.spec.in @@ -17,7 +17,7 @@ Requires: python3 Requires: (python3-pyyaml or python3-PyYAML) Requires: (python3-dbus or python3-dbus-python) Requires: snapper -Requires: s-nail +Requires: (s-nail or mailx) Requires: systemd Recommends: python3-apprise From 3f4abfc307e17f0d782003ea0d37f3ce4b323cd2 Mon Sep 17 00:00:00 2001 From: fedoraBee <9395414+fedoraBee@users.noreply.github.com> Date: Tue, 5 May 2026 14:06:55 +0200 Subject: [PATCH 14/14] fix(ci): improve repo creation style to satisfy shellcheck --- .github/workflows/pipeline.yml | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pipeline.yml b/.github/workflows/pipeline.yml index 7dfcc3f..58978a7 100644 --- a/.github/workflows/pipeline.yml +++ b/.github/workflows/pipeline.yml @@ -258,16 +258,25 @@ jobs: if command -v apt-get >/dev/null 2>&1; then apt-get update && apt-get install -y curl unzip systemd elif command -v zypper >/dev/null 2>&1; then - zypper --non-interactive install curl unzip systemd util-linux shadow + zypper --non-interactive --no-gpg-checks install curl unzip systemd util-linux shadow else - # For AlmaLinux, enable EPEL and CRB for snapper and other dependencies + # For AlmaLinux, enable EPEL, CRB, and Oracle UEK (for snapper) if grep -q "AlmaLinux" /etc/os-release; then dnf install -y epel-release dnf-plugins-core dnf config-manager --set-enabled crb || true + { + echo "[ol9_UEKR7]" + echo "name=Oracle Linux 9 UEK Release 7 (\$basearch)" + echo "baseurl=https://yum.oracle.com/repo/OracleLinux/OL9/UEKR7/\$basearch/" + echo "gpgkey=https://yum.oracle.com/RPM-GPG-KEY-oracle-ol9" + echo "gpgcheck=1" + echo "enabled=1" + } > /etc/yum.repos.d/oracle-linux-9.repo dnf makecache - # Pre-install dependencies from EPEL to ensure they are available - dnf install -y snapper s-nail + # Pre-install dependencies to ensure they are available + dnf install -y --allowerasing snapper s-nail || dnf install -y --allowerasing snapper mailx fi + dnf install -y --allowerasing curl unzip systemd shadow-utils util-linux fi @@ -290,7 +299,7 @@ jobs: if command -v apt-get >/dev/null 2>&1; then apt-get install -y ./debs/*.deb elif command -v zypper >/dev/null 2>&1; then - zypper --non-interactive install rpms/flatpak-automatic-[0-9].*.noarch.rpm + zypper --non-interactive --no-gpg-checks install rpms/flatpak-automatic-[0-9].*.noarch.rpm else dnf install -y --allowerasing rpms/flatpak-automatic-[0-9].*.noarch.rpm fi