Getting Started


Currently there are stages available for the following platforms:


These are stages targeting fairly new targets, or ones that do not have a lot of users.

Users should be cautious of using these targets for daily systems and expect issues using them for critical things.

Stage Requirements

Easiest solution: SystemRescueCD

Install Guide

Installing Exherbo

Managing packages

Source code

It is possible to get all of our shiny stuff via anonymous git.

You can browse our repositories via cgit.

Contributing your first patch

Step 1

If you don’t already have Git set up:

git config --global "<your real name>"
git config --global "<your email>"

Step 2

Register an account on our Gitlab instance, see the docs for a how-to.

Step 3

Fork the repository you want to change things in and clone it from Gitlab. See ‘Cloning repositories’.

Step 4

Set up cave to sync from this local clone.

Edit /etc/paludis/repositories/<repo>.conf and change the line:

sync = git+<repo>.git


sync = git+<repo>.git local: git+file:///home/<user>/<path to local repo>

In case you like to work with branches you may want to add the following as well:

sync_options = local: --branch=<branch>

Then, you can sync from the local clone with cave sync -s local <repo>. For more info on this see our workflow docs.

In case you like to use multiple branches at once or have your branches named differently depending on what topic they deal with and don’t want to modify the repository config file everytime you can use cave sync -s local <repo> -r <commit-id>. Note that you don’t have to supply the full commit-id, you only need to provide at least the first 4 characters. Also keep in mind that when you amend a commit its commit-id changes, if you keep using the old commit-id you’ll sync the old version of that commit.

Step 5

Make your changes in the local clone and commit the changes to the repository. Remember to actually commit the changes; otherwise, cave will not see them since it is using git pull to pull from the local clone. For more info on using Git see the Git book.

Step 6

Test your changes:

cave sync -s local <repo> -r <commit-id>
cave resolve -x1 <package modified>

If they are not to your liking, go back to step 5, using git commit --amend and git rebase -i as much as you want.

Step 7

Submit your changes to Gitlab.

git push