Arch Linux and Manjaro Setup Guide¶
Both Arch Linux and Manjaro work excellently on the BC-250. Arch provides maximum control and latest packages, while Manjaro offers easier installation with good hardware detection.
Status: Both fully working Difficulty: Arch (Advanced), Manjaro (Intermediate) Mesa: 25.1+ in official repos with upstream BC-250 support. Mesa 26 (development/git) available and confirmed working on Debian sid and Ubuntu 26.04 daily as of Jan 2026. Kernel: Kernel 6.18.18 LTS (current LTS, recommended) and 6.19.x stable both work well. 6.17.11+ also confirmed stable. Avoid 6.17.8–6.17.10 and 6.15.0–6.15.6 (known broken).
Why Choose Arch/Manjaro?¶
Advantages¶
- Rolling release - Latest Mesa and kernel versions
- Native BC-250 support - Mesa 25.1+ in official repos (no COPR/PPAs)
- Low RAM usage - 1.3GB typical for Arch
- Full control - Configure everything
- Community scripts - Automated setup available
Arch vs Manjaro¶
Arch Linux: - Manual installation following the Arch Wiki - Latest packages immediately - Maximum control, minimal bloat - Requires advanced Linux knowledge
Manjaro: - GUI installer (Calamares) - Boots out-of-box on BC-250 (no nomodeset) - Delayed package updates (tested before release) - Easier for beginners
Performance: Nearly identical. Both use ~1.3-1.5GB RAM.
BIOS Requirements¶
REQUIRED before installing: 1. Flash modified BIOS (P3.00 recommended) 2. Set VRAM allocation (512MB dynamic recommended) 3. Configure fan speeds 4. Disable IOMMU (IOMMU is broken - MUST disable)
See BIOS Flashing Guide.
Arch Linux Installation¶
Prerequisites¶
- USB drive (4GB+)
- Ethernet connection (for initial setup)
- Passive DP-to-HDMI adapter (recommended)
- Arch Linux ISO from archlinux.org
- Familiarity with Linux command line
Installation Steps¶
Follow the Arch Wiki
Arch Linux installation should be done following the official Arch Installation Guide. This ensures you understand the system you're building and can troubleshoot issues.
Key BC-250 Specific Requirements:
- Kernel Selection
- Recommended: Kernel 6.18.18 LTS (current LTS) or
linux-ltspackage - Also works: 6.17.11+ confirmed stable
- AVOID: Kernel 6.15.0-6.15.6, 6.17.8–6.17.10 (GPU initialization failures)
-
LTS kernels (6.12-6.14) remain supported for stability
-
Boot Parameters
- If black screen during installation, add
nomodesetto kernel parameters -
IMPORTANT: Remove
nomodesetafter drivers are installed -
Required Packages During Installation
# Base system pacstrap -K /mnt base linux-lts linux-firmware # Desktop environment (example with KDE) pacstrap -K /mnt plasma-meta kde-applications-meta # Graphics drivers (DO NOT install during archinstall, install after reboot) # mesa vulkan-radeon xf86-video-amdgpu # Network and basic utilities pacstrap -K /mnt networkmanager git base-devel -
Swap Configuration
- Traditional swap partition recommended
-
Note: ZRAM compatibility depends on swap configuration; users running ZRAM successfully with proper swap settings (2026). Only relevant for 512MB dynamic VRAM users experiencing issues.
-
Bootloader
- GRUB recommended for BC-250
-
Configure with ability to edit boot parameters
-
Enable Multilib (for 32-bit support and Steam)
- Edit
/etc/pacman.confbeforepacstrap - Uncomment
[multilib]section
After Installation - First Boot:
- If black screen, use
nomodeset: - At GRUB, press
e - Add
nomodesetto kernel line -
Press Ctrl+X to boot
-
Install Mesa and drivers (see Post-Installation section below)
-
Backplate Cooling: Active cooling on backplate is strongly recommended. No VRAM temperature sensor exists — passive cooling alone insufficient for sustained loads. Multiple 2026 reports confirm thermal throttling without active cooling solution.
Manjaro Installation¶
Installation Steps¶
- Download Manjaro ISO
- Get KDE or GNOME edition from manjaro.org
-
Flash to USB with balenaEtcher
-
Boot and Install
- Boot from USB (should work without nomodeset)
- Run Calamares installer
- Follow on-screen instructions
-
Complete installation and reboot
-
First Boot
- Update system:
Community note: "Out of the box after the BIOS flash, Manjaro KDE just booted fine"
Post-Installation Optimization¶
After installation, run the automated setup script to configure BC-250 specifics.
Automated Setup Script (Recommended)¶
For Arch:
git clone https://github.com/eabarriosTGC/BC250--ARCH.git
cd BC250--ARCH
sudo chmod +x ./Arch-setup.sh
sudo ./Arch-setup.sh
For Manjaro:
git clone https://github.com/eabarriosTGC/BC250--ARCH.git
cd BC250--ARCH
sudo chmod +x ./bc520-manjaro.sh
sudo ./bc520-manjaro.sh
What the Script Does¶
- Package Installation
- Installs base-devel, git, cmake, lm_sensors
-
Installs build tools for GPU governor
-
RADV Environment Configuration
- Creates
/etc/environment.d/99-radv-bc250.conf: -
Fixes Z-buffer glitches. Note:
nocomputeis no longer needed on Mesa 25.1+ (compute queue disabled automatically) -
AMD GPU Kernel Module
- May create
/etc/modprobe.d/amdgpu-bc250.conf: -
Only required for kernels < 6.10, harmless to keep on modern kernels
-
Temperature Sensors
- Loads nct6683 module
- Creates
/etc/modules-load.d/nct6683-bc250.conf -
Enables temperature monitoring
-
GPU Governor
- Installs cyan-skillfish-governor-smu from AUR
- Enables dynamic frequency scaling (1000MHz-2300MHz+)
-
Without this, GPU is locked at 1500MHz
-
Initramfs Regeneration
- Rebuilds initial RAM filesystem with new modules
Kernel Parameters¶
After running the script, update GRUB with additional parameters.
Find GRUB_CMDLINE_LINUX_DEFAULT and update:
Basic:
With performance boost:
Remove nomodeset (if added during install):
amdgpu.sg_display=0
This parameter is only needed for kernels older than 6.10. On modern kernels (6.16+) it can be omitted.
Update GRUB:
Verification¶
Check Mesa Version¶
Check Vulkan Driver¶
Check GPU¶
lspci | grep VGA
# Expected: AMD/ATI Device
vulkaninfo | grep deviceName
# Expected: AMD Radeon Graphics (RADV GFX1013)
Install Utilities¶
sudo pacman -S mesa-utils vulkan-tools fastfetch nvtop htop
# Test
fastfetch # Shows system info with GPU
nvtop # Real-time GPU monitoring
If you see llvmpipe:
- Mesa drivers not working
- Check Mesa version (must be 25.1+)
- Check kernel parameters applied
- Check dmesg: dmesg | grep amdgpu
GPU Governor¶
Verify Governor Running¶
# Use whichever governor you installed:
systemctl status cyan-skillfish-governor-smu # SMU variant (recommended)
systemctl status cyan-skillfish-governor-tt # TT variant (alternative)
systemctl status oberon-governor # legacy (migrate to SMU)
Check Frequency Scaling¶
cat /sys/class/drm/card1/device/pp_dpm_sclk
# Example output:
# 0: 1000MHz
# 1: 1500MHz *
# 2: 2000MHz
The * moves between frequencies based on load.
Known Issue: Governor Not Working on Boot¶
Symptom: GPU stuck at 1500MHz until you run a game once
Affected: Arch, Manjaro, CachyOS (NOT Fedora/Bazzite)
Workaround: Launch any game/benchmark once after boot to activate
Manual start:
Additional Configuration¶
Temperature Sensors¶
sensors
# Expected output:
# nct6686-isa-0a20
# With nct6687: CPU: +XX°C, System: +XX°C, Pump Fan: XXXX RPM
# With nct6683: VIN0-16, fan1-fan5, AMD TSI, Thermistors
If not showing:
lsmod | grep -E 'nct6683|nct6687'
# Load the appropriate module (see sensors guide for nct6687 PWM option)
dmesg | grep nct6683
Fan Control (Optional)¶
Load the nct6683 sensor module for temperature and fan monitoring:
echo 'nct6683' | sudo tee /etc/modules-load.d/nct6683.conf
echo 'options nct6683 force=true' | sudo tee /etc/modprobe.d/sensors.conf
sudo mkinitcpio -P
sudo reboot
# Install CoolerControl for GUI
yay -S coolercontrol
Gaming Tools¶
# Steam and Proton
sudo pacman -S steam
# Performance overlays and optimization
sudo pacman -S mangohud goverlay gamemode gamescope
# Proton GE manager
sudo pacman -S protonup-qt
Troubleshooting¶
Black Screen on Boot¶
Solution 1: Use nomodeset
- At GRUB, press e
- Add nomodeset to kernel line
- Boot and reinstall Mesa
- Remove nomodeset and add proper parameters
Solution 2: Check kernel
GPU Not Detected / llvmpipe¶
# Check Mesa
pacman -Q mesa # Should be 25.1.X+
# Update if needed
sudo pacman -Syu
# Check amdgpu module
lsmod | grep amdgpu
# Check for errors
dmesg | grep amdgpu
Audio Problems (Pitched Down / Slowed)¶
Symptom: Audio sounds like robot, video playback slowed
Cause: BC-250 DisplayPort audio implementation issue
Solution: Use passive DP-to-HDMI adapter
Alternative: USB audio adapter
Screen Freezing (Broken Kernel Versions)¶
Symptom: Random freezes, kernel panics on kernels 6.15.0-6.15.6 or 6.17.8–6.17.10
Solution:
# Option 1: Install confirmed stable kernel (6.18.18 LTS or 6.17.11+)
sudo pacman -S linux # Check version is 6.17.11+ or 6.18.x
# Or
# Option 2: Install LTS for guaranteed stability
sudo pacman -S linux-lts linux-lts-headers
sudo pacman -R linux
# Update GRUB
sudo grub-mkconfig -o /boot/grub/grub.cfg
sudo reboot
# Hold kernel updates if needed
# Add to /etc/pacman.conf:
IgnorePkg = linux
KDE/SDDM Crashes with nomodeset¶
Symptom: KDE crashes when nomodeset is enabled
Solution: - Don't use nomodeset if Mesa 25.1+ is installed - If needed for install, remove before installing KDE
Community Scripts¶
Primary repository: - eabarriosTGC/BC250--ARCH - eabarriosTGC/Instalacion-de-Arch
Alternative script: - pnbarbeito/bc250-arch
Governor projects: - Cyan Skillfish Governor SMU (AUR, recommended) - Cyan Skillfish Governor TT (AUR, alternative)
Quick Reference¶
# System info
fastfetch
# GPU monitoring
nvtop
# Check GPU frequency
cat /sys/class/drm/card1/device/pp_dpm_sclk
# Check governor (use whichever you installed)
systemctl status cyan-skillfish-governor-smu
# Check temps
sensors
# Update system
sudo pacman -Syu
# Check Mesa
glxinfo | grep "OpenGL version"
# Check Vulkan
vulkaninfo | grep deviceName
Related Guides: - Fedora Setup - Bazzite Setup - CachyOS Setup - GPU Governor