Blackhole-vl
July 22, 2026 · View on GitHub
Note
This project is not affiliated with or endorsed by the Void Linux project or its maintainers.
Use at your own discretion.
⚠️ Migration Notice
Warning
The binary repository system has been migrated.
Previous GitHub-based binary repositories (e.g. repository-x86_64, repository-aarch64) are deprecated and no longer updated.
All users must switch to the new VPS-based mirror system.
Remove the old /etc/xbps.d/20-repository-extra.conf configuration and use the new mirror system.
For migration steps, see: Repository migration troubleshooting →
Overview
A collection of template files for building packages on Void Linux with xbps-src.
This repository provides:
- stable templates with prebuilt binaries (main branch)
- fully working templates without binaries (manual branch)
Binary Repository (CURRENT)
Use the VPS-based mirror:
- x86_64 → https://mirror.black-hole.dev/x86_64/
- x86_64-musl → https://mirror.black-hole.dev/x86_64-musl/
- aarch64 → https://mirror.black-hole.dev/aarch64/
- aarch64-musl → https://mirror.black-hole.dev/aarch64-musl/
- ru mirror (recommended for CIS users) → https://ru.mirror.black-hole.dev/
Branches
Important
The manual branch includes a larger set of packages compared to main.
Some packages are only available there due to size or build constraints.
If something is missing in main, you will likely find it in manual.
This repository is split into branches with different guarantees:
main
- Stable and tested templates
- Prebuilt binary packages are provided
- Recommended for end users
manual
- Templates are expected to build successfully
- No prebuilt binaries are provided
- Intended for local/manual builds only
- This branch exists due to GitHub size and storage limitations
package-specific branches
- One branch per package or feature under development
- Used for testing, refactoring, or initial bring-up
- May be incomplete or broken
- Changes are merged into
manualormainonly after validation
Installation
Currently packages are tested on / crosscompiled for the following architectures:
- x86_64
- x86_64-musl
- aarch64
- aarch64-musl
Manually building
Recommended for the
manualbranch
-
Clone both this repository and void-packages:
git clone https://github.com/Event-Horizon-VL/blackhole-vl.git git clone https://github.com/void-linux/void-packages.git -
(Optional) Switch to a specific branch:
cd blackhole-vl git checkout manual -
Copy the template files into
void-packages:cp -r blackhole-vl/srcpkgs/* void-packages/srcpkgs/ -
Edit
shlibsby removing the lines found inshlibs_removeand appending the lines fromshlibs_append:grep -vFxf blackhole-vl/shlibs_remove void-packages/common/shlibs > temp mv temp void-packages/common/shlibs cat blackhole-vl/shlibs_append >> void-packages/common/shlibs -
Bootstrap the build system:
cd void-packages ./xbps-src binary-bootstrap -
Build the desired packages:
./xbps-src pkg <package1> <package2> ... -
Install the built packages:
sudo xbps-install --repository /hostdir/binpkgs/ <package1> <package2> ...
Prebuilt binaries
Available only for the
mainbranch
-
Create a local repository configuration by copying the default Void repository file, then add the Blackhole mirror with higher priority:
sudo cp /usr/share/xbps.d/00-repository-main.conf /etc/xbps.d/ sudo sed -i "1i repository=https://mirror.black-hole.dev/$(xbps-uhelper arch)" /etc/xbps.d/00-repository-main.conf -
Refresh repositories and accept the fingerprint:
sudo xbps-install -S -
Search and install packages as usual:
xbps-query -Rs hypr sudo xbps-install -S hyprland
Troubleshooting
unresolvable shlib libhyprutils.so.10
This usually means that an old Blackhole repository configuration is still present on the system.
- Remove the deprecated repository configuration:
sudo rm -f /etc/xbps.d/20-repository-extra.conf
- Add the current mirror as the highest-priority repository.
sudo cp /usr/share/xbps.d/00-repository-main.conf /etc/xbps.d/
For x86_64:
sudo sed -i '1i repository=https://mirror.black-hole.dev/x86_64/' /etc/xbps.d/00-repository-main.conf
For x86_64-musl:
sudo sed -i '1i repository=https://mirror.black-hole.dev/x86_64-musl/' /etc/xbps.d/00-repository-main.conf
For aarch64:
sudo sed -i '1i repository=https://mirror.black-hole.dev/aarch64/' /etc/xbps.d/00-repository-main.conf
For aarch64-musl:
sudo sed -i '1i repository=https://mirror.black-hole.dev/aarch64-musl/' /etc/xbps.d/00-repository-main.conf
- Refresh repository metadata:
sudo xbps-install -S
- Retry the installation.
ERROR: package: the RSA signature is not valid!
This usually means corrupted or partially updated package metadata or cached binaries.
Fix it by clearing the local xbps cache and retrying:
sudo xbps-remove -O
sudo rm -rf /var/cache/xbps/*
sudo xbps-install -S
If the issue persists, remove the problematic package and reinstall it:
sudo xbps-remove -R <package>
sudo xbps-install -S <package>
Contributing
Contributions are highly appreciated.
Contribution workflow:
- Do not target manual directly unless the resulting .xbps package is smaller than 100 MB and requires less than 8 GB of RAM to build.
- In all other cases, the pull request must target manual.
This repository follows the same general rules and guidelines as void-packages CONTRIBUTING.md.
Credits
- Makrennel: hyprland-void: Hyprland template files
Special thanks
- Encoded14