this PKGBUILD intended for CI and GitHub release artifacts. targets tagged releases only and uses a fixed pkgver that matches the corresponding git tag. all of the VCS logic has been removed to PKGBUILD-git to ensure reproducible builds and stable versioning suitable for binary distribution.
the build process relies on electron-builder directory output (--dir) and packages only the unpacked application into a standard Arch Linux package (.pkg.tar.zst). other distro format are excluded from this path and handled separately.
this change establishes a clear separation between:
- rolling AUR development builds (-git)
- CI-generated, versioned Arch Linux release packages
the result is predictable artifact naming, correct version alignment, and Arch-compliant packaging for downstream users.
created clean VCS-based PKGBUILD following arch packaging conventions.
this explicitly marked as a rolling (-git) build and derives its version dynamically from git tags and commit history via pkgver(). previous hybrid approach has been changed.
key changes:
- use -git suffix to clearly indicate rolling source builds
- set pkgver=0 and compute the actual version via pkgver()
- build only a directory layout using electron-builder (--dir)
- avoid generating AppImage, deb, rpm, or pacman installers
- align build and package steps with Arch packaging guidelines
note: this PKGBUILD is intended for development and AUR use only and is not suitable for binary redistribution or release artifacts.
* build-arch job now only build arch .pkg.tar.zst package instead of the whole generic linux.
* build-linux job now exclude .pacman package since its deprecated and should not be used.
* fix: resolve cross-platform EPERM permissions errors
modManager.js:
- Switch from hardcoded 'junction' to dynamic symlink type based on OS (fixing Linux EPERM).
- Add retry logic for directory removal to handle file locking race conditions.
- Improve broken symlink detection during profile sync.
gameManager.js:
- Implement retry loop (3 attempts) for game directory removal in updateGameFiles to prevent EBUSY/EPERM errors on Windows.
paths.js:
- Prevent fs.mkdirSync failure in getModsPath by pre-checking for broken symbolic links.
* fix: missing pacman builds
* prepare release for 2.1.1
minor fix for EPERM error permission
* Update README.md Windows Prequisites for ARM64 builds
* fix: remove broken symlink after detected
* fix: add pathexists for paths.js to check symlink
* fix: isbrokenlink should be true to remove the symlink
modManager.js:
- Switch from hardcoded 'junction' to dynamic symlink type based on OS (fixing Linux EPERM).
- Add retry logic for directory removal to handle file locking race conditions.
- Improve broken symlink detection during profile sync.
gameManager.js:
- Implement retry loop (3 attempts) for game directory removal in updateGameFiles to prevent EBUSY/EPERM errors on Windows.
paths.js:
- Prevent fs.mkdirSync failure in getModsPath by pre-checking for broken symbolic links.
* Add correct auto-detect version and commit
If a person uses PKGBUILD, it will automatically determine the latest version and commit.
* Remove maintainer and change to npm ci
---------
Co-authored-by: Terromur <79866197+Terromur@users.noreply.github.com>