bpkg
bpkg
bpkg is a universal package manager for BlendOS.
Installation
bpkg
is not preinstalled, you must get it yourself.
Download the latest binary and setup script at the link below:
Then, unzip it with your archive manager or run this in the directory you downloaded the file to:
After that, run install.sh
from your host terminal (chmod u+x install.sh && ./install.sh
).
Configuration
The first time you use bpkg
, it will generate a config file at ~/.config/bpkg.yaml
.
It will look something like this:
Structure
The config file is structured like this:
Every indentation is 2 spaces, do not use tabs.
To get the container list for the config file, bpkg
runs the following commands:
Editing
To change the priority, change the order of the entries. In this setup, the Arch container will be checked first, followed by Ubuntu 22.04, Fedora 38, etc.
If we change the config file so it starts like this:
then the Ubuntu 22.04 container will be checked first.
To exclude a container from bpkg
, remove it from the config.
If we remove Arch so the config file looks like this:
then the arch container will not be used by bpkg
.
Usage
bpkg
will search through your containers for their relevant package managers.
Install a package
This will search for the package in your installed distros and install it from the first package manager it finds by your order of preference, though you can specify a specific container.
Remove a package
This will remove a package that you installed from a container of your choice or from the first container in your list the package is found in.
Update packages
This will update all the packages in all your containers, or you can specify a specific one. If update_flatpak
is set to true
in the config, this will also update your flatpaks.
Package Search
You can search for a package in all of your containers, or specify a specific one.
Container list
Lists all containers on your system (even if they aren’t in the config).
Config Regeneration
This will pull all your containers and generate a new config file, overwriting your current one. It is recommended to run this after creating or deleting containers.