About BloodHorn

BloodHorn is a modern, high-performance bootloader built on the EDK2 framework with Coreboot integration. Designed for speed, security, and reliability, it provides a robust foundation for system initialization across multiple architectures.

Important Safety Notice BloodHorn is a low-level system component that interacts directly with hardware. Incorrect use may result in system damage, data loss, or security vulnerabilities. The BloodHorn team is not responsible for any hardware damage or data loss resulting from the use of this software.

Intended Audience

  • System firmware developers
  • Security researchers
  • Embedded systems engineers
  • Advanced users with recovery capabilities

System Impact

  • Multi-architecture support (x86_64, ARM, RISC-V, LoongArch)
  • EDK2 Framework Integration
  • Coreboot Payload Support
  • Security features including TPM and secure boot

Project History

Origins (2016): The project began as an ambitious bootloader prototype. The initial version demonstrated the core concepts that would evolve into the modern BloodHorn bootloader.

CI/CD Pipeline

BloodHorn uses Woodpecker CI for continuous integration and deployment. The pipeline ensures code quality, build verification, and automated testing across multiple platforms.

Pipeline status and logs are available at ci.codeberg.org/PacHashs/BloodHorn.

Building & Installation

Prerequisites

Git, Python 3.7+, C/C++ toolchain (GCC/Clang/MSVC), EDK2 BaseTools, NASM, iASL.

Linux / macOS Build

# Clone Repository git clone --recursive https://codeberg.org/PacHashs/BloodHorn.git cd BloodHorn # Build BaseTools make -C Edk2BHModules/BaseTools source edksetup.sh # Build BloodHorn (Release) build -p BloodHorn.dsc -b RELEASE -t GCC5 -a X64 -n $(nproc)

Windows Build

:: Clone Repository git clone --recursive https://codeberg.org/PacHashs/BloodHorn.git cd BloodHorn :: Build BaseTools cd Edk2BHModules\BaseTools & nmake & cd ..\.. :: Run from Visual Studio x64 Native Tools Command Prompt build -p BloodHorn.dsc -b RELEASE -t VS2019 -a X64

Installation

Note: Always back up your existing bootloader before installation.

Linux:

cp Build/BloodHorn/RELEASE_GCC5/X64/BloodHorn.efi /mnt/efi/EFI/BOOT/BOOTX64.EFI

Windows (Admin):

copy Build\BloodHorn\RELEASE_VS2019\X64\BloodHorn.efi C:\EFI\Microsoft\Boot\bootmgfw.efi

Coreboot Integration

BloodHorn features comprehensive Coreboot firmware integration through the CorebootPayloadPkg. When built with Coreboot support, it automatically detects it is running as a payload and leverages Coreboot's hardware initialization while maintaining UEFI compatibility.

# Build with Coreboot enabled build -p BloodHorn.dsc -b RELEASE -t GCC5 -a X64 -D COREBOOT_ENABLED=1

Configuration

Create a minimal bloodhorn.ini at your EFI partition root:

[boot] default = linux menu_timeout = 5 language = en [linux] kernel = /boot/vmlinuz initrd = /boot/initrd.img cmdline = root=/dev/sda1 ro quiet

FAQ

Contributors & Support

BloodHorn was inspired by modern bootloaders, but all code is original and written from scratch for educational purposes and for use in future operating systems.

If you like this project and want to support us:

Donate to Listedroot