Compare commits
5 Commits
b1372cacd7
...
v2.0.2
| Author | SHA1 | Date | |
|---|---|---|---|
|
740411f194
|
|||
| 1a2daec165 | |||
| 524b53b7b2 | |||
| b5ea96bb8b | |||
| 470bb1620a |
@@ -1,4 +1,4 @@
|
||||
name: CI/CD
|
||||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -6,28 +6,19 @@ on:
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Package
|
||||
build-arch:
|
||||
name: Build ArchLinux Package
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Extract Version
|
||||
run: |
|
||||
RAW_VERSION="${GITHUB_REF#refs/tags/v}"
|
||||
if [[ "$RAW_VERSION" == *-* ]]; then
|
||||
echo "PKGVER=${RAW_VERSION%-*}" >> $GITHUB_ENV
|
||||
echo "PKGREL=${RAW_VERSION##*-}" >> $GITHUB_ENV
|
||||
else
|
||||
echo "PKGVER=$RAW_VERSION" >> $GITHUB_ENV
|
||||
echo "PKGREL=1" >> $GITHUB_ENV
|
||||
fi
|
||||
echo "FULL_TAG=$RAW_VERSION" >> $GITHUB_ENV
|
||||
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
|
||||
|
||||
- name: Generate PKGBUILD
|
||||
run: |
|
||||
TAR_URL="https://git.uyani.de/Uyanide/WallReel/archive/v${{ env.FULL_TAG }}.tar.gz"
|
||||
TAR_URL="https://git.uyani.de/Uyanide/WallReel/archive/v${{ env.VERSION }}.tar.gz"
|
||||
|
||||
wget -qO source.tar.gz "$TAR_URL"
|
||||
SHA256=$(sha256sum source.tar.gz | awk '{print $1}')
|
||||
@@ -35,20 +26,21 @@ jobs:
|
||||
cat << 'EOF' > PKGBUILD
|
||||
# Maintainer: Uyanide <me@uyani.de>
|
||||
pkgname=wallreel
|
||||
pkgver=${{ env.PKGVER }}
|
||||
pkgrel=${{ env.PKGREL }}
|
||||
pkgver=${{ env.VERSION }}
|
||||
pkgrel=1
|
||||
pkgdesc="Choose and set desktop wallpapers with customizable themes and actions"
|
||||
arch=('x86_64')
|
||||
url="https://git.uyani.de/Uyanide/WallReel"
|
||||
license=('MIT')
|
||||
depends=('qt6-base' 'qt6-declarative' 'gcc-libs' 'glibc')
|
||||
makedepends=('cmake' 'ninja')
|
||||
source=("${pkgname}-${pkgver}.tar.gz::https://git.uyani.de/Uyanide/WallReel/archive/v${{ env.FULL_TAG }}.tar.gz")
|
||||
makedepends=('cmake')
|
||||
options=('!debug')
|
||||
source=("${pkgname}-${pkgver}.tar.gz::https://git.uyani.de/Uyanide/WallReel/archive/v${pkgver}.tar.gz")
|
||||
sha256sums=('INSERT_SHA256_HERE')
|
||||
|
||||
build() {
|
||||
cd "wallreel"
|
||||
cmake -B build -S . -G Ninja \
|
||||
cmake -B build -S . \
|
||||
-DCMAKE_BUILD_TYPE='Release' \
|
||||
-DCMAKE_INSTALL_PREFIX='/usr' \
|
||||
-Wno-dev
|
||||
@@ -73,7 +65,9 @@ jobs:
|
||||
|
||||
pacman-key --init && pacman-key --populate
|
||||
pacman -Sy --noconfirm archlinux-keyring
|
||||
pacman -Su --noconfirm base-devel cmake ninja qt6-base qt6-declarative sudo
|
||||
pacman -Su --noconfirm base-devel cmake qt6-base qt6-declarative sudo
|
||||
|
||||
echo 'MAKEFLAGS="-j$(nproc)"' >> /etc/makepkg.conf
|
||||
|
||||
useradd -m builduser
|
||||
chown -R builduser:builduser /workspace
|
||||
@@ -85,48 +79,53 @@ jobs:
|
||||
tar -cf - *.pkg.tar.zst PKGBUILD SRCINFO.txt >&3
|
||||
" | tar -xf -
|
||||
|
||||
- name: Upload Artifacts
|
||||
- name: Upload Arch Artifacts
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: release-artifacts
|
||||
name: arch-artifacts
|
||||
path: |
|
||||
*.pkg.tar.zst
|
||||
PKGBUILD
|
||||
SRCINFO.txt
|
||||
|
||||
release:
|
||||
name: Publish
|
||||
needs: build
|
||||
publish-gitea:
|
||||
name: Publish to Gitea Release
|
||||
needs: [build-arch]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Extract Version
|
||||
run: |
|
||||
RAW_VERSION="${GITHUB_REF#refs/tags/v}"
|
||||
if [[ "$RAW_VERSION" == *-* ]]; then
|
||||
echo "PKGVER=${RAW_VERSION%-*}" >> $GITHUB_ENV
|
||||
echo "PKGREL=${RAW_VERSION##*-}" >> $GITHUB_ENV
|
||||
else
|
||||
echo "PKGVER=$RAW_VERSION" >> $GITHUB_ENV
|
||||
echo "PKGREL=1" >> $GITHUB_ENV
|
||||
fi
|
||||
echo "FULL_TAG=$RAW_VERSION" >> $GITHUB_ENV
|
||||
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
|
||||
|
||||
- name: Download Artifacts
|
||||
- name: Download Arch Artifacts
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: release-artifacts
|
||||
name: arch-artifacts
|
||||
path: .
|
||||
|
||||
- name: Publish to Gitea Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
name: WallReel ${{ env.FULL_TAG }}
|
||||
name: WallReel ${{ env.VERSION }}
|
||||
draft: false
|
||||
prerelease: false
|
||||
files: "*.pkg.tar.zst"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
publish-aur:
|
||||
name: Publish to AUR
|
||||
needs: [build-arch]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Extract Version
|
||||
run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_ENV
|
||||
|
||||
- name: Download Arch Artifacts
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: arch-artifacts
|
||||
path: .
|
||||
|
||||
- name: Publish to AUR
|
||||
env:
|
||||
AUR_KEY: ${{ secrets.AUR_SSH_PRIVATE_KEY }}
|
||||
@@ -159,5 +158,5 @@ jobs:
|
||||
EOF
|
||||
|
||||
git add PKGBUILD LICENSE .SRCINFO
|
||||
git commit -m "Release v${{ env.FULL_TAG }}"
|
||||
git commit -m "Release v${{ env.VERSION }}"
|
||||
git push origin master
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
project(WallReel VERSION 2.0.0 LANGUAGES CXX)
|
||||
project(WallReel VERSION 2.0.2 LANGUAGES CXX)
|
||||
|
||||
set(EXECUTABLE_NAME "wallreel")
|
||||
set(CORELIB_NAME "wallreel-core")
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
.\" Automatically generated by Pandoc 3.5
|
||||
.\"
|
||||
.TH "WALLREEL" "1" "2026\-03\-24" "WallReel 2.0.0" "User Commands"
|
||||
.TH "WALLREEL" "1" "2026\-03\-24" "WallReel 2.0.2" "User Commands"
|
||||
.SH NAME
|
||||
wallreel \- Choose and set desktop wallpapers with customizable themes
|
||||
and actions
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
.\" Automatically generated by Pandoc 3.5
|
||||
.\"
|
||||
.TH "WALLREEL" "5" "2026\-03\-24" "WallReel 2.0.0" "File Formats Manual"
|
||||
.TH "WALLREEL" "5" "2026\-03\-24" "WallReel 2.0.2" "File Formats Manual"
|
||||
.SH NAME
|
||||
wallreel\-config \- configuration format for wallreel
|
||||
.SH SYNOPSIS
|
||||
|
||||
@@ -26,8 +26,9 @@ Manager::Manager(
|
||||
const QDir& picturesDir,
|
||||
const QStringList& searchDirs,
|
||||
const QString& configPath,
|
||||
bool disableActions,
|
||||
QObject* parent)
|
||||
: QObject(parent), m_configDir(configDir) {
|
||||
: QObject(parent), m_configDir(configDir), m_disableActions(disableActions) {
|
||||
connect(this, &Manager::stateCaptured, this, [this]() {
|
||||
m_stateCaptured = true;
|
||||
WR_INFO("State capture completed");
|
||||
@@ -398,6 +399,13 @@ void Manager::captureState() {
|
||||
if (m_stateCaptured) {
|
||||
WR_DEBUG("State already captured, skipping capture");
|
||||
emit stateCaptured();
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_disableActions) {
|
||||
WR_DEBUG("Actions are disabled, skipping state capture");
|
||||
emit stateCaptured();
|
||||
return;
|
||||
}
|
||||
|
||||
if (m_pendingCaptures > 0) {
|
||||
|
||||
@@ -27,6 +27,7 @@ class Manager : public QObject {
|
||||
* @param searchDirs Additional directories to search for wallpapers (not recursive)
|
||||
* @param configPath Optional path to a specific configuration file (overrides the default config path)
|
||||
* @param picturesDir The pictures directory (default location for user wallpapers)
|
||||
* @param disableActions Whether to disable actions
|
||||
* @param parent QObject parent
|
||||
*
|
||||
* @note The constructor will load the configuration and scan for wallpapers immediately.
|
||||
@@ -36,6 +37,7 @@ class Manager : public QObject {
|
||||
const QDir& picturesDir,
|
||||
const QStringList& searchDirs = {},
|
||||
const QString& configPath = "",
|
||||
bool disableActions = false,
|
||||
QObject* parent = nullptr);
|
||||
|
||||
~Manager();
|
||||
@@ -88,6 +90,8 @@ class Manager : public QObject {
|
||||
|
||||
private:
|
||||
const QDir m_configDir;
|
||||
bool m_disableActions = false;
|
||||
|
||||
WallpaperConfigItems m_wallpaperConfig;
|
||||
ThemeConfigItems m_themeConfig;
|
||||
ActionConfigItems m_actionConfig;
|
||||
|
||||
@@ -18,12 +18,13 @@ class Bootstrap {
|
||||
friend class Carousel;
|
||||
|
||||
public:
|
||||
Bootstrap(const AppOptions& options) {
|
||||
Bootstrap(const AppOptions& options) : options(options) {
|
||||
configMgr = new Config::Manager(
|
||||
Utils::getConfigDir(),
|
||||
Utils::getPicturesDir(),
|
||||
options.appendDirs,
|
||||
options.configPath);
|
||||
options.configPath,
|
||||
options.disableActions);
|
||||
|
||||
cacheMgr = new Cache::Manager(
|
||||
Utils::getCacheDir(),
|
||||
@@ -58,6 +59,11 @@ class Bootstrap {
|
||||
}
|
||||
|
||||
bool apply(const QString& path) {
|
||||
if (options.disableActions) {
|
||||
Logger::warn("Bootstrap", "Actions are disabled, cannot apply wallpaper");
|
||||
return false;
|
||||
}
|
||||
|
||||
QEventLoop loop;
|
||||
bool successFlag = false;
|
||||
|
||||
@@ -122,6 +128,7 @@ class Bootstrap {
|
||||
}
|
||||
|
||||
private:
|
||||
const AppOptions& options;
|
||||
Cache::Manager* cacheMgr{};
|
||||
Config::Manager* configMgr{};
|
||||
Image::Manager* imageMgr{};
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
title: WALLREEL
|
||||
section: 1
|
||||
header: User Commands
|
||||
footer: WallReel 2.0.0
|
||||
footer: WallReel 2.0.2
|
||||
date: 2026-03-24
|
||||
---
|
||||
|
||||
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
title: WALLREEL
|
||||
section: 5
|
||||
header: File Formats Manual
|
||||
footer: WallReel 2.0.0
|
||||
footer: WallReel 2.0.2
|
||||
date: 2026-03-24
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user