-
Notifications
You must be signed in to change notification settings - Fork 2
20141121 Release
The easiest way to build is to use vagrant. This will download a suitable base box and install prerequisites.
git clone [email protected]:mistifyio/mistify-os.git
cd mistify-os
git fetch
git checkout 20141121
vagrant up
Once the box is booted, you can vagrant ssh
into it then run:
cd /vagrant
./buildmistify --builddir /home/vagrant/build \
--buildroot /home/vagrant/buildroot \
--buildroottag 20141121
Make sure the above is ran inside vagrant.
The build will take about 45 minutes depending on your hardware.
The build will produce a kernel and an initrd. This can be used to netboot. There is a helper script included that will produce an iso as well:
cd /vagrant
scripts/make-iso /home/vagrant/build/mistify/images mistify.iso
On the host side of vagrant, you can now burn this iso or boot a vm from it. Note, when using a VM you must use a product that supports nested virtualization. Vmware Fusion/Workstation does, but VirtualBox does not.
When using VMWare Fusion, for example, create a blank VM to boot from the iso with 1+ SCSI disks. When booting, enter y
when asked about creating a Zpool.
The root password is LetMeIn2
The test script included in test/test-api.sh
can be ran with the IP address of the new VM as its only argument. It requires curl and jq.
- By default, the init scripts will setup all non-loopback interfaces for DHCP. For the tests to run, you should create a bridge named
br0
and add interfaces to it. - On shutdown or reboot, you will get a warning that can be ignored for now:
WARNING: could not determine run level
- If an image fails to download, it will be stuck in the
pending
status. You can delete it to try again:curl -X DELETE http://<ip>:8080/images/<image-id>
- Build takes a long time. Currently, we rebuild the build toolchain. In the future, we will cache it and possibly download on first build.
- If not using vagrant to provision a build host, you need to install the packages that the vagrant provision would install.
- The unmounting of filesystems during a reboot or halt is unclean
- For build requirements, if you want to build not using included Vagrant config, see http://buildroot.uclibc.org/downloads/manual/manual.html#requirement