Note: this is the work-in-progress installer and has not been released yet. For the current installer, see Ubiquity.
An installer for open-source operating systems. See the wiki for goals, design spec, user flow, and details about each step.
Run this to build & test the installer
# build
nix-build -A nixinstall
# test
nix run meros.conf-tool
sudo result/bin/io.elementary.installer --test
Note: It is running in test mode, meaning you can't break stuff, but root is needed to list the drives
If you're cautious enough, you can remove the --test flag and install to an USB drive to test a full installation
Debug logs get printed to stdout
You'll need the following dependencies:
- meson
- desktop-file-utils
- gettext
- gparted
- libgnomekbd-dev
- libgranite-dev >= 0.5
- libgtk-3-dev
- libgee-0.8-dev
- libjson-glib-dev
- libpwquality-dev
- libxml2-dev
- libxml2-utils
- distinst
- valac
Run meson build to configure the build environment. Change to the build directory and run ninja test to build and run automated tests.
meson build --prefix=/usr
cd build
ninja test
To install, use ninja install, then execute with io.elementary.installer. Note that listing drives and actually installing requires root.
sudo ninja install
io.elementary.installer
You can also use --test mode for development to disable destructive behaviors like installing, restarting, and shutting down:
io.elementary.installer --test
For debug messages, set the G_MESSAGES_DEBUG environment variable, e.g. to all:
G_MESSAGES_DEBUG=all io.elementary.installer