618 Commits

Author SHA1 Message Date
CollectingW 221abf8829 Update build-android.yml 2025-10-25 23:51:01 -04:00
github-actions[bot] 7f4415d08e Update LATEST_VERSION to e77ac6f9e [skip ci] 2025-10-25 12:26:13 +00:00
github-actions[bot] 955fa19fe1 Update LATEST_VERSION to 20250c3e3 [skip ci] 2025-10-24 12:26:34 +00:00
github-actions[bot] 45fffc3820 Update LATEST_VERSION to 7a9a8851c [skip ci] 2025-10-23 12:25:55 +00:00
github-actions[bot] 2e24535bb9 Update LATEST_VERSION to d5081c391 [skip ci] 2025-10-22 12:26:44 +00:00
github-actions[bot] 19c9705765 Update LATEST_VERSION to c6bdc01e9 [skip ci] 2025-10-21 13:22:22 +00:00
github-actions[bot] ed28abe45e Update LATEST_VERSION to a184f951e [skip ci] 2025-10-21 12:26:35 +00:00
github-actions[bot] 6cb1ab2bae Update LATEST_VERSION to b85fd5f [skip ci] 2025-10-18 12:42:18 +00:00
github-actions[bot] fc3f37c817 Update LATEST_VERSION to b85fd5fc7 [skip ci] 2025-10-18 03:30:14 +00:00
Zephyron-Dev ff7e0eac85 Add release existence check to build decision logic
Enhanced the version check to also verify if releases exist.
Now builds will proceed if:
1. Upstream SHA has changed (new version), OR
2. Release/tag doesn't exist (first run or manual deletion)

This fixes the issue where builds would be skipped even when
releases were missing. The workflow will now automatically
rebuild if a release is deleted or doesn't exist yet.

Changes applied to all three platforms (Android, Linux, Windows).

Use cases this handles:
- First run when no releases exist
- Manual release deletion requiring rebuild
- Per-platform release management (if one platform's release is deleted)
2025-10-18 13:05:01 +10:00
Zephyron-Dev 61c1e85bc3 Remove PGO builds from Linux workflow to reduce build time
Removed Profile-Guided Optimization (PGO) build variants from the
Linux build matrix to significantly reduce CI build time.

Removed builds:
- Normal PGO x86_64
- Optimized PGO x86_64_v3

Kept builds:
- Normal x86_64 (generic compatibility)
- Optimized x86_64_v3 (modern CPUs)

This change reduces the Linux build matrix from 4 variants to 2,
cutting build time roughly in half while still providing both
generic and optimized builds for different CPU generations.

Updated release descriptions and Discord notifications to reflect
the removed PGO variants.
2025-10-17 19:44:23 +10:00
Zephyron 83aeb28486 Fix concurrent LATEST_VERSION push conflicts
Resolves race condition when multiple workflows try to push to
LATEST_VERSION simultaneously. The issue occurred when Android,
Linux, and Windows builds all completed at the same time and tried
to update the same file.

Solution:
- Added git pull --rebase before push to sync with remote changes
- Implemented retry loop (up to 5 attempts with 2s delay)
- Added error handling to gracefully handle no-change commits

This allows all three workflows to successfully update LATEST_VERSION
without conflicts, with the last one to complete having the final value.
2025-10-17 19:42:13 +10:00
github-actions[bot] d1dbe56126 Update LATEST_VERSION to b85fd5f [skip ci] 2025-10-17 09:26:17 +00:00
github-actions[bot] 038c220f39 Update LATEST_VERSION to dd49615 [skip ci] 2025-10-17 06:42:48 +00:00
Zephyron-Dev a5d9c2e346 Remove .pdb files from Windows build package
Exclude debug symbol files (.pdb) from the Windows release package
to reduce file size and remove unnecessary debug information from
production releases. The packaging step now filters out .pdb files
before creating the final zip archive.
2025-10-17 15:06:49 +10:00
Zephyron-Dev 72bfe5f0e1 Add Citron upstream commit info to release descriptions
Enhanced release descriptions to include:
- Direct link to the Citron upstream commit that the build is based on
- Build details including platform, type, and date
- Better context for users about what version they're downloading

Each release now shows:
- **Citron Upstream Commit:** [SHA] with clickable link to git.citron-emu.org
- Platform-specific build details (Android arm64, Linux variants, Windows x64)
- Build configuration (LTO, Qt6, optimizations)
- Release date

This makes it easier for users to:
- Track which Citron version they're using
- Compare with upstream changes
- Understand build configuration
2025-10-17 15:05:08 +10:00
Zephyron-Dev d9b191a120 Add version checking to prevent unnecessary builds
Implements intelligent build skipping by checking if the upstream Citron
repository has new commits before building. This optimization prevents
wasting CI resources on rebuilding the same version.

How it works:
- Each workflow now starts with a check-version job that fetches the
  upstream commit SHA from git.citron-emu.org
- Compares it with LATEST_VERSION file in this repository
- Only proceeds with build if the SHA has changed
- Updates LATEST_VERSION file after successful release with [skip ci]

Benefits:
- Saves GitHub Actions minutes by skipping redundant builds
- Reduces unnecessary Discord notifications
- Still runs on manual workflow_dispatch for testing
- Maintains daily schedule check for new upstream commits

Applied to all three platforms: Android, Linux, and Windows workflows.
2025-10-17 15:02:58 +10:00
Zephyron-Dev b147f71e50 Initial CI setup with Discord notifications and updated repository links
This repository builds upon the excellent work of previous contributors:
- pkgforge-dev for the original Citron AppImage build scripts and infrastructure
- CollectingW for the Citron-Nightly build workflows and automation

Changes made in this commit:
- Updated all repository links from pkgforge-dev/Citron-AppImage and
  CollectingW/Citron-Nightly to Zephyron-Dev/Citron-CI
- Added Discord webhook notifications for successful builds (Android, Linux, Windows)
- Integrated automated notifications with build metadata (version, date, download links)

Build workflows included:
- Android: Daily APK builds for arm64-v8a
- Linux: Multiple variants (x86_64, x86_64_v3, PGO optimized) as AppImages
- Windows: x64 builds with Qt6 support

All builds run daily at 12 AM UTC and can be triggered manually via workflow_dispatch.
2025-10-16 18:55:27 +10:00