ps5-linux-loader
```markdown
What this skill does
```markdown --- name: ps5-linux-loader description: Linux payload for PS5 consoles implementing HV exploit and custom bootloader to run full Linux on PS5 Phat hardware triggers: - "run linux on ps5" - "ps5 linux loader" - "boot linux on playstation 5" - "ps5 jailbreak linux" - "compile ps5 linux payload" - "ps5 hv exploit linux" - "install linux ps5 usb" - "ps5 linux bootloader" --- # PS5 Linux Loader > Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection. ## What It Does `ps5-linux-loader` is a C-based payload that exploits a patched HV (Hypervisor) vulnerability on PS5 Phat consoles running firmware 3.xx or 4.xx to boot a full Linux environment. It implements: - A custom bootloader that takes over from the PS5 OS - HV exploit chain to escape the GameOS VM and run bare-metal - Boot configuration via `cmdline.txt` and `vram.txt` on a FAT32 USB partition - Support for USB boot drives, M.2 SSD installation, GPU/CPU boost, and fan control **Supported hardware:** PS5 Phat only **Supported firmwares:** 3.00, 3.10, 3.20, 3.21, 4.00, 4.02, 4.03, 4.50, 4.51 --- ## Prerequisites ### Build Dependencies ```bash # Install PS5 Payload SDK (required) # See: https://github.com/ps5-payload-dev/sdk # On Debian/Ubuntu (x86-64 host): sudo apt install build-essential git # For ARM64 Linux hosts, install cross-compilation tools: sudo apt install gcc-x86-64-linux-gnu binutils-x86-64-linux-gnu ``` ### Required Hardware - PS5 Phat console on firmware 3.xx or 4.xx - USB drive ≥ 64GB (external SSD recommended) - USB Ethernet or WLAN adapter - USB keyboard and mouse - A PC on the same network as the PS5 ### Optional Hardware - M.2 SSD (PS5-compatible) for dedicated Linux partition - Bluetooth dongle for DualSense controller - Capture card for external display testing --- ## Building the Payload ```bash # Clone the repository git clone https://github.com/ps5-linux/ps5-linux-loader cd ps5-linux-loader # Build (requires ps5-payload-sdk installed) make # Output: ps5-linux-loader.elf ``` Alternatively, download a prebuilt `ps5-linux-loader.elf` from the [releases page](https://github.com/ps5-linux/ps5-linux-loader/releases/). --- ## Building the Linux Image ```bash # Clone the image builder git clone https://github.com/ps5-linux/ps5-linux-image cd ps5-linux-image chmod +x ./build_image.sh # Build Ubuntu 26.04 image (default) ./build_image.sh --distro ubuntu2604 # Output image location: # output/ps5-ubuntu2604.img ``` **Windows (WSL2):** ```bash # Install WSL2 first (PowerShell as admin): wsl --install # In WSL: sudo apt update && sudo apt install docker.io -y sudo service docker start sudo usermod -aG docker $USER # Restart WSL, then: cd ~/ git clone https://github.com/ps5-linux/ps5-linux-image cd ps5-linux-image chmod +x ./build_image.sh ./build_image.sh --distro ubuntu2604 ``` --- ## Flashing the Image to USB **Linux/macOS:** ```bash # Identify your drive lsblk # Linux diskutil list # macOS # Flash (replace sdX with your drive identifier) sudo dd if=output/ps5-ubuntu2604.img of=/dev/sdX bs=4M status=progress conv=fsync ``` **Windows (WSL2 + usbipd):** ```powershell # In PowerShell as admin: winget install usbipd usbipd list usbipd bind --busid 5-3 # replace 5-3 with your busid usbipd attach --busid 5-3 --wsl ``` ```bash # In WSL: lsblk sudo wipefs -a /dev/sdX sudo dd if=output/ps5-ubuntu2604.img of=/dev/sdX bs=4M status=progress ``` --- ## PS5 Configuration (Required) Before running the exploit, configure the PS5: 1. **Enable USB power in Rest Mode:** `Settings → System → Power Saving → Features Available in Rest Mode → Supply Power to USB Ports → Always` 2. **Disable HDMI Device Link:** `Settings → HDMI → Enable HDMI Device Link` (turn off) 3. **Recommended — Disable auto-updates:** `Settings → System Software → System Software Update and Settings` --- ## Running the Exploit ### Step 1: Set up Fake DNS + HTTPS Server ```bash # Clone the exploit host git clone https://github.com/idlesauce/umtx2 cd umtx2 # Edit dns.conf to point manuals.playstation.net to your PC's IP # Then run: python fakedns.py -c dns.conf # Terminal 1 python host.py # Terminal 2 ``` ### Step 2: Point PS5 DNS to your PC On PS5: `Settings → Network → Advanced Settings → Primary DNS` → set to your PC's IP Leave Secondary DNS as `0.0.0.0` ### Step 3: Trigger the exploit On PS5: Go to user manual in Settings, accept the untrusted certificate prompt, and run. ### Step 4: Send the payload ```bash # Find PS5 IP at: Settings → Network → View Connection Status # Replace 192.168.178.127 with your PS5's IP socat -t 99999999 - TCP:192.168.178.127:9021 < ps5-linux-loader.elf ``` ### Step 5: Boot into Linux 1. PS5 will automatically enter rest mode after payload is sent 2. Wait for the **orange LED to stop blinking** and become **static** 3. Press the power button once 4. **White LED = successful Linux boot** --- ## Boot Configuration The FAT32 partition on the boot USB contains two config files: ### `cmdline.txt` — Kernel command line ```bash # Default content example: root=LABEL=ubuntu2604 rw quiet splash # Force 1080p output (useful for display compatibility issues): amdgpu.force_1080p=1 # To boot from M.2 SSD instead of USB: root=LABEL=ubuntu2604-m2 ``` ### `vram.txt` — VRAM allocation ``` # Default: 512MB (enables Dynamic VRAM allocation) 0x20000000 # Increase VRAM to 1GB: 0x40000000 ``` --- ## M.2 SSD Installation ```bash # Step 1: Attach M.2 SSD and format via PS5 OS # Step 2: Boot Linux, then initialize M.2 sudo apt install zlib1g-dev git clone https://github.com/ps5-linux/ps5-linux-tools cd ps5-linux-tools gcc -o m2_init m2_init.c -lz sudo ./m2_init # Step 3: Reboot sudo reboot # Step 4: After relaunching Linux, install image to M.2 chmod +x ./m2_install.sh sudo ./m2_install.sh --install /path/to/ps5-ubuntu2604.img # Step 5: Boot from M.2 chmod +x ./m2_exec.sh sudo ./m2_exec.sh ``` To make M.2 the default boot target, edit `/boot/efi/cmdline.txt`: ``` root=LABEL=ubuntu2604-m2 ``` --- ## Fan & CPU/GPU Boost Control ```bash cd ps5-linux-tools # Compile the control tool gcc -o ps5_control ps5_control.c # Enable fan (always enable before boost) sudo ./ps5_control --fan on # Enable CPU (3500 MHz) and GPU (2230 MHz) boost sudo ./ps5_control --boost on # Disable boost sudo ./ps5_control --boost off # Disable fan sudo ./ps5_control --fan off ``` > ⚠️ Always enable the fan before enabling boost, matching official PS5 OS behavior. --- ## First Boot Setup ```bash # 1. Disable screen saver (currently buggy — do this first) # 2. Re-enable network connection if no internet # Toggle off/on your Wired or WLAN connection in network settings # 3. Install Firefox sudo snap install firefox sudo snap refresh mesa-2404 --channel=latest/edge # 4. Clone ps5-linux-tools for fan/boost control git clone https://github.com/ps5-linux/ps5-linux-tools ``` --- ## Troubleshooting ### White LED but black screen ```bash # Try setting 1080p forced mode in cmdline.txt: amdgpu.force_1080p=1 ``` - Try different monitors or cables - Try a capture card - Test with different resolution monitors - Check Discord for EDID-specific help ### PS5 boots back into PS5 OS instead of Linux - You pressed the power button **before** the orange LED became static - Re-run the exploit and wait longer after rest mode LED becomes static ### Build fails (ARM64 host) ```bash sudo apt install gcc-x86-64-linux-gnu binutils-x86-64-linux-gnu make ``` ### M.2 asks to reformat after m2_init - Report your M.2 model and storage size to the Discord server - Known issue with certain M.2 models ### No internet in Linux - Re-toggle your network adapter (disable, then enable) in network settings - USB Ethernet or WLAN adapter required — built-in PS5 NIC/WLAN not yet supported ### socat command not found ```bash # Install socat on Linux/macOS: sudo apt install socat # Debian/Ubuntu brew instal
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.