Arch Linux setup script for the ASRock BC-250 mini PC to optimize it for gaming and desktop use.
This repository contains an automated setup script that configures Arch Linux for optimal performance on the ASRock BC-250, which features AMD Van Gogh APU hardware. The script handles GPU configuration, thermal monitoring, and CPU governor setup.
- Operating System: Arch Linux
- Kernel Version: 6.x or higher
- Mesa Version: 25.1.x or higher
- Privileges: sudo access
The setup script automatically:
- GPU Configuration: Disables compute shaders via
RADV_DEBUG=nocomputeto work around Van Gogh APU limitations - AMDGPU Options: Configures
sg_display=0option for better display compatibility - Thermal Monitoring: Enables the NCT6683 sensor module for hardware monitoring
- CPU Governor: Installs and enables
cyan-skillfish-governor-smefor optimized CPU frequency scaling - Memory Management: Removes zram and configures zswap with 8GB compressed memory limit using LZ4 compression
- Initramfs Update: Rebuilds initramfs to apply early-boot configurations
-
Clone this repository:
git clone https://github.com/dannybastos/bc-250-archlinux.git cd bc-250-archlinux -
Run the setup script:
chmod +x bc-250-archlinux-setup.sh ./bc-250-archlinux-setup.sh
-
Restart your system after the script completes:
sudo reboot
/etc/environment.d/99-radv-bc250.conf: SetsRADV_DEBUG=nocompute
/etc/modprobe.d/amdgpu-bc250.conf: AMDGPU display configuration/etc/modprobe.d/nct6683-bc250.conf: NCT6683 sensor force-load option/etc/modules-load.d/nct6683-bc250.conf: Auto-load NCT6683 at boot
- zswap configuration: Adds
zswap.enabled=1 zswap.compressor=lz4 zswap.max_pool_percent=50 zswap.zpool=z3fold - Supports both GRUB (
/etc/default/grub) and systemd-boot (/boot/loader/entries/*.conf) - Original configurations backed up automatically
cyan-skillfish-governor-sme.service: CPU frequency governor service
- zram: Removed if present (zram-generator uninstalled)
- zswap: Configured with ~8GB compressed memory pool (50% of RAM with LZ4 compression)
If the script fails:
- Ensure you're running Arch Linux with kernel 6.x+
- Verify Mesa drivers are version 25.1.x or higher
- Check that you have sudo privileges
- Review error messages for specific component failures
Check if zswap is active:
cat /sys/module/zswap/parameters/enabled
# Should output: Y
grep -r . /sys/module/zswap/parameters/
# Shows all zswap configurationCheck zswap statistics:
grep -r . /sys/kernel/debug/zswap/
# Shows pool size, compression ratio, etc.MIT
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.