# Upstream release being packaged: CachyOS/proton-cachyos tag
# cachyos---slr, arm64 asset. The scheduled .gitlab-ci.yml job
# rewrites these two globals and Release when a newer arm64 release
# appears; the push then triggers the COPR webhook.
%global cachyos_base 11.0
%global cachyos_date 20261005
%global cachyos_tag cachyos-%{cachyos_base}-%{cachyos_date}-slr
%global upstream_name proton-%{cachyos_tag}-arm64
%global tooldir %{_datadir}/steam/compatibilitytools.d/%{name}
# Prebuilt Proton tree (aarch64 ELF plus arm64ec/x86 PE files): nothing to
# strip, no debuginfo, and its bundled libraries must not turn into RPM
# dependencies.
%global debug_package %{nil}
%global __os_install_post %{nil}
AutoReqProv: no
Name: proton-cachyos-arm64
Version: %{cachyos_base}^%{cachyos_date}
Release: 20261008000000%{?dist}
Summary: CachyOS Proton (ARM64, arm64ec + FEX) as a Steam Play tool
License: BSD-3-Clause AND LGPL-2.1-or-later AND MIT AND Zlib
URL: https://github.com/CachyOS/proton-cachyos
Source0: %{url}/releases/download/%{cachyos_tag}/%{upstream_name}.tar.xz
Source1: %{url}/releases/download/%{cachyos_tag}/%{upstream_name}.sha512sum
ExclusiveArch: aarch64
# /usr/libexec/pocketds-steam/arm64-proton wraps Steam Linux Runtime 4.0 -
# Arm64 around this Proton.
Requires: pocketds-steam
Requires: python3
%description
proton-cachyos built for ARM64 by CachyOS: Valve's Proton with Windows
games running as arm64ec through a bundled FEX, tracking the FEX of
Proton Experimental (ARM64), which the Pocket DS's Steam client is not
offered. Installed system-wide as the Steam Play tool "Proton CachyOS
(ARM64)" under a stable internal name, so per-game choices survive
updates, and started through pocketds-steam's arm64-proton wrapper
because the arm64 Steam Linux Runtime it requires cannot be installed
as a tool on this client.
%prep
(cd %{_sourcedir} && sha512sum -c %{SOURCE1})
%setup -q -n %{upstream_name}
%build
%install
install -d %{buildroot}%{tooldir}
cp -a . %{buildroot}%{tooldir}/
cat > %{buildroot}%{tooldir}/compatibilitytool.vdf <<'VDF'
"compatibilitytools"
{
"compat_tools"
{
"proton-cachyos-arm64"
{
"install_path" "."
"display_name" "Proton CachyOS (ARM64)"
"from_oslist" "windows"
"to_oslist" "linux"
}
}
}
VDF
cat > %{buildroot}%{tooldir}/toolmanifest.vdf <<'VDF'
"manifest"
{
"version" "2"
"commandline" "/pocketds-run %verb%"
"use_sessions" "1"
"compatmanager_layer_name" "proton"
}
VDF
printf '#!/bin/sh\nexec %{_libexecdir}/pocketds-steam/arm64-proton %{tooldir} "$@"\n' \
> %{buildroot}%{tooldir}/pocketds-run
chmod 0755 %{buildroot}%{tooldir}/pocketds-run
%files
%license LICENSE LICENSE.OFL
%{tooldir}/
%changelog
* Thu Oct 08 2026 Pocket DS Maintainers - 11.0^20261005-20261008000000
- Package proton-cachyos 11.0-20261005 arm64 as a system-wide Steam Play tool