-
Notifications
You must be signed in to change notification settings - Fork 0
Building from Source
The build system of MistifyOS is based on a combination of the Buildroot Linux system creation software and a compilation environment provided by Crosstool-NG.
Using the Buildroot frameworks, we assemble a complete MistifyOS OS image from the source code of all its components, and provide the result in various formats - Initrd, ISO image, EXT2 image and so-on.
To compile MistifyOS from source, the Buildroot-based environment requires the following to be installed. We recommend that a Ubuntu 14.04 environment be used.
The following Ubuntu 14.04 packages are required to operate the MistifyOS Buildroot environment:
openssh-servergitmakegccunzipbcmercurialgawkg++texinfopvautoconfgperfflexlibtoolncurses-devsubversionbisongcc-multilib
apt install openssh-server git make gcc unzip bc mercurial gawk g++ texinfo pv autoconf gperf flex libtool ncurses-dev subversion bison gcc-multilib
-
Use
gitto clone themistify-osrepository:git clone https://github.com/mistifyio/mistify-os.git -
cdto themistify-oscheckout and run:./buildmistify
At this point, the buildmistify script will begin cloning the various supporting sub-components (Crosstool-NG, the MistifyOS Buildroot fork, Go-lang), setting up the Buildroot environment, and begin the long compilation processes involved in generating an operating environment from scratch.
If the Crosstool-NG environment has not yet been compiled, buildmistify will do that. Any subsequent runs of buildmistify will reuse the Crosstool-NG environment - it is meant to be "compile once, use many".
By default, the result of a successful Buildroot run will produce two files:
- A netbootable kernel
- A compressed MistifyOS Initrd (the OS image itself)
The path to these files will be given at the completion of a Buildroot run.
Buildroot can be configured to also produce ISO-9660, EXT2, and other image formats.