We know that Betula is available in Arch Linux AUR:
For other operating systems, there are no known packages. If you know of them or want to make one, please do get in touch!
Building is the process of turning source code into a working application. The final application is just one executable file called
betula, it is the program you need. You can build Betula on any modern system.
You would have to rebuild Betula in order to update to a newer version.
Betula is mostly written in Go programming language but its database-handling part is written in C programming language. For building Betula, you would need compilers for both language.
Installing C. Every major OS distribution offers a C compiler. Pick any.
gcc would work fine. To install it on Ubuntu, run the following command:
sudo apt install gcc
Refer to your OS documentation to learn how to install C on a different system.
Installing Go. Many OS offer outdated Go. If you know your distribution offers a sufficiently fresh one (1.19 or newer), go with it. Otherwise, get a copy from Go website and install it properly. See Go's installation guide.
For Ubuntu, the following sequence of commands is known to install Go 1.21:. Run these commands in a terminal.
Get a copy of Go:
curl -OL https://go.dev/dl/go1.21.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xvf go1.21.0.linux-amd64.tar.gz
~/.profilewith any text editor (
viare probably available on most machines) and add the following line:
Verify Go is installed:
Semiautomatic installation with
This is the recommended method. Run the following command. Replace
latest with specific version identifiers, if you want to install an older version. Note: you cannot install version 1.0.0 this way due to a mistake made when releasing it.
CGO_ENABLED=1 go install git.sr.ht/~bouncepaw/betula/cmd/betula@latest
It will install a
betula binary in
$GOPATH/bin. If you have your
$PATH configured correctly, you can run Betula as such:
If your system does not see
betula program, you might write out the full path to
Manual installation with
This method is universal: you can build any release, including unstable development versions. Some people find this approach simpler than the previous one. Run:
git clone https://git.sr.ht/~bouncepaw/betula/ cd betula git checkout v1.1.0 # or whatever CGO_ENABLED=1 go build -o betula ./cmd/betula
To start the program, run:
Betula is live on http://localhost:1738. Visit it.
Betula asks you to set up your account. Pick a username and a password. Afterwards, use it to log in to Betula.
Make sure to pay Settings a visit.
Do not forget to backup your
*.betulafile! This is where your data lives.
You have a functioning Betula. You can stop here and use it forever. However, if you want to have your Betula available on the internet with a domain and HTTPS, you will need a reverse proxy.