This guide provides instructions on how to install Fuchsia on an Intel NUC{:.external} (Next Unit of Computing) device.
The steps are:
Before you start installing Fuchsia on a NUC device, make sure that you've completed the following tasks:
To set up the Fuchsia development environment on your workstation, complete the Get started with Fuchsia guide.
Note: Fuchsia only supports the specific system configurations listed in Supported system configurations.
The following parts are required for this guide:
Note: The 2. Build Fuchsia and 3. Prepare a USB drive sections do not require a NUC device, so you can complete these sections prior to obtaining a NUC device. However, you will need a USB flash drive for the 3. Prepare a USB drive section.
Installing Fuchsia on a NUC device requires that you build a Workstation image (workstation_eng.x64
) and generate build artifacts (which include the Fuchsia installer) on your workstation.
To build Fuchsia for NUC installation, do the following:
Set your build configuration to workstation_eng.x64
and include the recovery package (recovery-installer
):
fx set workstation_eng.x64 --with //build/images/recovery:recovery-installer
Build Fuchsia:
fx build
Building Fuchsia can take up to 90 minutes.
You need to prepare a bootable USB drive that runs the Fuchsia installer. Later in the Install Fuchsia on the NUC section, you will use this USB drive to boot your NUC into the Fuchsia installer.
Note: The instructions below require that you've completed the build in the previous Build Fuchsia section.
To prepare a bootable USB drive, do the following:
Plug the USB drive into your workstation.
Identify the path to the USB drive:
fx list-usb-disks
This command prints output similar to the following:
$ fx list-usb-disks /dev/sda - My Example USB Disk
Create a bootable USB drive:
fx mkinstaller -v --new-installer {{ "<var>" }}PATH_TO_USB_DRIVE{{ "</var>" }}
Replace PATH_TO_USB_DRIVE
with the path to the USB drive from the step above.
The example command below selects the /dev/sda
path:
$ fx mkinstaller -v --new-installer /dev/sda
When finished, the command prints output similar to the following in the end:
$ fx mkinstaller -v --new-installer /dev/sda mkinstaller: WARNING: Changing ownership of /dev/sda to alice [sudo] password for alice: ... mkinstaller: INFO: Writing image fvm.sparse.blk to partition storage-sparse... mkinstaller: INFO: Wrote 835.6M in 35.55s, 23.5M/s mkinstaller: INFO: Done. mkinstaller: INFO: Ejected USB disk
Unplug the USB drive from the workstation.
Update your NUC's BIOS setup so that it can boot from a USB drive.
To enable EFI (Extensible Firmware Interface) booting on your NUC, do the following:
Reboot your NUC.
To enter the BIOS setup, press F2
while booting.
In the Boot Order window on the left, click the Legacy tab.
Uncheck Legacy Boot.
Click the Advanced button.
Confirm the following boot configuration:
To save and exit BIOS, press F10
and click Yes.
Use the bootable USB drive to boot your NUC into the Fuchsia installer. It then flashes the Workstation prebuilt image from your workstation to the NUC to install Fuchsia for the first time.
To install Fuchsia on your NUC, do the following:
Plug the bootable USB drive into the NUC.
Reboot your NUC.
The NUC boots into the Fuchsia Workstation Installer (with a pink background).
Press Enter to select the Install from USB
option.
Press Enter on other prompts to continue.
When the installation is finished, the screen displays Success! Please restart your computer
.
Unplug the USB drive from the NUC device.
Reboot the NUC device.
The NUC is now booted into Fuchsia’s Workstation.
Set your login password to start the Fuchsia Workstation.
Later, if you need to install a new version of Fuchsia (for instance, after re-building a new Workstation image using fx build
), see the Flash a new Fuchsia image to the NUC section in Appendices.
Important: If you plan on using this NUC device for Fuchsia development, you must complete the steps in the Flash a new Fuchsia image to the NUC section at least once after installing Fuchsia from a bootable USB drive. Running fx flash
will upload Fuchsia-specific SSH keys to the NUC device, which then enables other useful ffx
workflows.
For GPU support, get a NUC7 (Kaby Lake) or NUC8 (Coffee Lake), or a higher generation.
The list below shows some example models:
Once a NUC is running Fuchsia, you can use Fuchsia's flashing mechanism to provision a new Fuchsia image to the NUC.
To flash a Fuchsia image to your NUC, do the following:
Connect the NUC directly to the workstation using an Ethernet cable (or connect the NUC to a router or WiFi modem in the same Local Area Network as the workstation).
Note: Network booting only works with the NUC's built-in Ethernet port – netbooting with an USB port (via an Ethernet-to-USB adapter) is not supported.
Reboot your NUC.
To boot the NUC into Fastboot mode, press the f
key at the Fuchsia boot screen.
Once the NUC is in Fastboot mode, you can see entering fastboot mode
printed on the screen.
On your workstation, detect the NUC in Fastboot mode:
ffx target list
This command prints output similar to the following:
$ ffx target list NAME SERIAL TYPE STATE ADDRS/IP RCS fuchsia-54b2-0389-644b <unknown> Unknown Fastboot [fe81::55b1:2ff:fe34:567b%en10] N
Verify that the device's state is in Fastboot
.
Flash a new Fuchsia image to the NUC:
Note: To build a new Fuchsia image, see the Build Fuchsia section above.
fx flash
When finished, the NUC reboots and starts running the new Fuchsia image.
Important: When using this NUC device for Fuchsia development, currently for other ffx
workflows, you can only use USB ports to connect the NUC to your host machine. In other words, undo the cable setup in Step 1 above, and use 2 Ethernet-to-USB adapters and an Ethernet cable to establish a connection between the NUC and your host machine using only USB ports.