-
-
Notifications
You must be signed in to change notification settings - Fork 31
HowTo: Create your own version of Regolith from source
A primary goal of Regolith is to enable more people to create their own unique desktop experience. What is installed to get the Regolith environment is simply a series of Debian packages for Ubuntu provided in a set of Private Package Repositories (PPA). In regolith-desktop
there is a shell script build.sh
that will produce packages and publish them to a PPA. The script simply automates the task of checking out, building, and publishing packages as described here. Anyone can fork any of the Regolith repos, make changes, and use the script to produce their own variant of Regolith. The following steps assume you're building Regolith in a Ubuntu 18.04+ system.
- Create an Ubuntu PPA.
- Install and configure your system to build Debian packages.
sudo apt install build-essential debhelper dh-make devscripts git gnupg quilt
- Check out the
regolith-desktop
package.git clone https://github.com/regolith-linux/regolith-desktop.git && cd regolith-desktop
- Take a look at
package-model.json
, it defines where the packages should be built from. To customize Regolith, you'll need to update one or more of these repos to point to your own fork (depending on what you want to change). For this exercise we will use the package model as-is. - Run the build script.
./build.sh package-model.json ppa:<your Launchpad.net username>/<your PPA name> /tmp/regolith-build
- After some time, the script will complete. Refresh the PPA web page and you'll see many packages have been uploaded into your PPA. Check the package details via the PPA Web UI and you may see that some packages are still in the process of building. You'll need to wait until this process completes before being able to test them.
- You'll notice most or all of the packages are built for a specific version of Ubuntu, such as
disco
. Depending on which Ubuntu version you wish to target, you may want to copy packages using the PPA web UI. Your PPA must provide all packages for the version of Ubuntu you wish to support. - Once you have the packages for the version of Ubuntu you wish to target, add your PPA to a test system to verify it works.
sudo add-apt-repository ppa:<your Launchpad.net username>/<your PPA name>
- Now install Regolith desktop from your PPA.
sudo apt install regolith-desktop
- You may notice that some packages are missing and the installation cannot proceed. This is because some packages that Regolith depends on are provided by others. There are two ways of resolving this: Either copy the missing packages into your PPA (via the PPA Web UI), or add the other PPAs into your system. At the time of writing this, the only required PPA is
snwh/ppa
which hosts icons. To add this PPA run:sudo add-apt-repository -u ppa:snwh/ppa
. - Now try and install
regolith-desktop
again. This time it should complete successfully. Reboot and login with the Regolith session to complete the test.
Now that you've built your own Regolith, fork the repositories that you want to change, update the package-model.json
to refer to your forks, and run the build script when you're ready to test your changes.
Since most of this wiki content was created, a new site for Regolith was created. This wiki content was written for Regolith 1.2 but most of it still applies to 1.3. However, it is suggested to first check if the information you are looking for is here.