Skip to main content

In today’s tutorial, we’ll check how easy it is to install the distribution.

Difficulty: ★☆☆☆☆

📜 Table of Contents

  1. System Requirements
    1. NVIDIA Proprietary Driver Information
  2. Virtualizing Nitrux
    1. Using VirtualBox
    2. Using VMware Workstation and VMware Player
    3. Using GNOME Boxes (Flatpak)
  3. Downloading the ISO
  4. Verify the ISO Integrity and Authenticity
  5. Flashing the ISO to the USB
    1. Rufus (Windows)
    2. Ventoy (Windows/Linux)
    3. ROSA Image Writer (Windows/Linux)
    4. dd (*nix)
  6. Installing Nitrux

System Requirements

To install Nitrux on your computer, check the hardware requirements below.

  • 🔰 Information: As of April 2023, we only offer Nitrux as an installable x64 (or x86-64, or amd64) ISO file.
  • ⚠️ Important: By default, Nitrux uses the Liquorix kernel; this kernel is not signed and will not be bootable on devices with Secure Boot enabled.

Disclaimer: We do not develop, maintain, or package the Liquorix kernel. Please file bug reports at their bug tracker or ask for assistance on their forums.

  • ⚠️ Important: Nitrux includes support for Secure Boot as the bootloader residing in the EFI System Partition post-installation will be signed; however, the Liquorix kernel is not. Users can boot another kernel post-installation using Kernel Boot, including the Debian-signed kernel; see How to use Kernel Boot.

The Minimum requirements indicate what we consider the necessary hardware setup to run Nitrux and still be able to use it without hurting the user experience.

  • 🔰 Information: While it is possible to run the distribution on very low-end hardware, i.e., think an Asus Eee PC 1015BX, the user experience would not be what we consider usable; thus, we recommend better (if still older ca. 2011-2005) hardware.
HW Configuration Minimum Requirements
System Motherboard, CPU, RAM 4GB RAM
2.5 GHz Dual-Core 64-bit
EFI, UEFI Support, or Legacy BIOS
Motherboard with support for USB boot
Screen Graphics Controller 32MB VRAM
3D Acceleration Any GPU supported by the MESA drivers (radeon, amdgpu, i945, iris, etc.) is supported, except GPUs requiring nouveau; see NVIDIA Proprietary Driver Information.
Any GPU supported by the NVIDIA proprietary driver (see the latest changelog for the latest included version) is supported.
Storage At least 14.17 GB must be available for Calamares to create the root partition (do not use a single partition layout when using Manual partitioning or the Replace partition options)
Network Internet connection ✔ (Necessary)
Audio Any audio device supported by the Linux kernel

The Recommended requirements are so that the user experience of Nitrux is optimal.

  • 🔰 Information: As before, our recommendation is based on a “good enough” configuration to enjoy the distribution adequately. For example, the CPU recommendation is based on testing an Intel Q6600, a 16-year-old processor.
HW Configuration Recommended Requirements
System Motherboard, CPU, RAM 8GB RAM or better
2.40 GHz Quad-Core 64-bit or better
EFI, UEFI Support
Motherboard with support for USB boot
Screen Graphics Controller 256BM VRAM or better
3D Acceleration Any GPU supported by the MESA drivers (radeon, amdgpu, i945, iris, etc.) is supported, except GPUs requiring nouveau; see NVIDIA Proprietary Driver Information.
Any GPU supported by the NVIDIA proprietary driver (see the latest changelog for the latest included version) is supported.
Storage At least 14.17 GB must be available for Calamares to create the root partition (do not use a single partition layout when using Manual partitioning or the Replace partition options)
Network Internet connection ✔ (Necessary)
Audio Any audio device supported by the Linux kernel

NVIDIA Proprietary Driver Information

Since Nitrux 2.5.0, the distribution includes the latest version of the current NVIDIA proprietary driver when we build and publish our ISO files. As mentioned above and explained below, this distribution does not use the Nouveau MESA driver.

  • ⚠️ Important: The current versions of the NVIDIA proprietary driver support most hardware. However, users with unsupported hardware cannot boot into a graphical session, whether X11 or Wayland. Only TTY functionality will be available. The lack of support for older NVIDIA graphics processors in the latest NVIDIA proprietary driver versions is not a bug in Nitrux or caused by Nitrux.
  • 🔰 Information: Run the following command to view the version of the installed NVIDIA proprietary driver; check the list of supported GPUs for the driver version included in the release.
nvidia-smi -q | grep Driver\ Version
  • ⚠️ Important: We cannot include any NVIDIA Legacy drivers (version 470, 390, etc.) alongside the current version, as NVIDIA does not support installing two drivers simultaneously (see links 1 and 2). Additionally, NVIDIA drivers before version 470 (e.g., nvidia-390) do not support hardware-accelerated XWayland, causing non-Wayland-native applications to perform poorly in Wayland sessions.
  • ⚠️ Important: There are many bugs still in Plasma Wayland, especially if using an NVIDIA GPU, including but not limited to applications that don’t work and missing features; we’ve listed some bugs we’ve found on the bug tracker; see Known Issues.
  • ⚠️ Important: The NVIDIA proprietary driver cannot coexist with the Nouveau open-source driver user-space components; therefore, unsupported NVIDIA GPUs cannot use this driver.
  • ⚠️ Important: Since NVIDIA introduced GBM support (version 495), many compositors (including Mutter and KWin) started using it by default. GBM is generally considered better with broader support. EGLStreams only had support because NVIDIA provided no alternative way to use their GPUs under Wayland with their proprietary drivers. Furthermore, KWin dropped support for EGLStreams after GBM was introduced into NVIDIA, meaning the default Plasma Wayland session and Maui Shell wouldn’t have worked if we included the Legacy Driver.
  • 🔰 Information: NVIDIA has released an open-source driver, too (kind of); however, it only supports a handful of Professional graphics cards and almost none of their Consumer graphics cards (namely NVIDIA Ampere and Turing architecture GPUs). If NVIDIA decides to support more graphics cards with this driver at some point in the future, we will include it instead.

Disclaimer: We do not develop the NVIDIA proprietary driver. For issues with the NVIDIA driver, including bugs and adding support for graphics cards, please visit NVIDIA Support.

Virtualizing Nitrux

Please follow the recommendations below for an optimum experience when using Nitrux in a virtual machine.

Disclaimer: We do not develop VirtualBox, VMWare Workstation/Player, GNOME Boxes, or QEMU. Please inform their developers at their respective bug trackers if you have issues with these hypervisors, such as graphical problems.

Using VirtualBox

We strongly recommend enabling the following options in the virtual machine settings.

  • ⚠️ ImportantPlease DO NOT use the default settings when creating a new VM in VirtualBox.
  • 🔰 Information: When using the default VM settings in VirtualBox, VMs boot using emulated Legacy BIOS, meaning CDROM and Floppy devices load before the virtual Hard Drives. After a successful installation, VirtualBox does not eject the ISO; if the user does not remove the ISO from the virtual CDROM device, upon reboot, VirtualBox will boot the ISO and not the virtual Hard Drive with the installed system; this is not a bug in Nitrux or caused by Nitrux.
  • 🔰 Information: OpenGL acceleration is the default if you use Nitrux in a VM. For better performance, deactivate some of the graphical effects. To utilize 3D Acceleration in VirtualBox, please use the guest additions ISO from Oracle; see How to install VirtualBox Guest Additions in Nitrux. After installing the VirtualBox guest additions using the ISO, do not remove the ISO and reboot; remove the ISO from the VM after successfully booting to the session.
  • 🔰 Information: When creating a new virtual machine in VirtualBox, the graphics controller selected is VMSVGA; starting with VirtualBox 6.1.34, users can change the screen resolution in System Settings.

Virtual Machine settings for VirtualBox:

  • Type: Linux.
  • Version: Debian 11 (64-bit).
  • Base Memory: 4000 MB.
  • Boot Order: Uncheck Floppy.
  • Chipset: ICH9.
  • Extended Features:
    • Enable I/O APIC.
    • Enable EFI (special OSes only).
    • Hardware clock in UTC.
  • Processors: 4.
  • Extended Features:
    • Enabled Nested VT-x/AMD-V.
  • Acceleration: KVM
    • Hardware Virtualization: Enable Nested Paging.
  • Video Memory: 128 MB.
  • Acceleration: Enable 3D Acceleration (uncheck if using VirtualBox 7.0).
    • ⚠️ Important: If using VirtualBox 7.0, do not enable 3D Acceleration in the VM settings, as doing so prevents the graphical session from loading. VirtualBox 6.1.40 has no problem; this is not a bug in Nitrux or caused by Nitrux.
  • Storage Devices: >64GB SATA or NVME.
    • Attributes: Use host I/O Cache.
  • Audio Controller: Intel HD Audio.
  • Enable USB Controller: USB 3.0 (xHCI) Controller.

Using VMware Workstation and VMware Player

We strongly recommend enabling the following options in the virtual machine settings.

  • ⚠️ Important: Do not install VMWare Tools from the menu Manage>Install VMWare Tools.
  • ⚠️ ImportantPlease DO NOT use the default settings when creating a new VM in VMware Workstation or Player.

Virtual Machine settings for VMware Workstation and VMware Player:

  • OS: Debian 10. x 64-bit.
  • Memory: 4096 MB.
  • Processors: 4.
  • Storage: >64GB.
  • Virtualization engine:
    • Virtualize Intel VT-x/EPT or AMD-V/RVI.
    • Virtualize CPU performance counters.
      • ⚠️ Important: Do not enable this if your computer does not support this feature.
    • Virtualize IOMMU (IO memory management unit).
  • USB Controller:
    • USB compatibility: USB 3.1
  • Display:
    1. 3D graphics:
      • Accelerate 3D graphics.
    2. Graphics memory:
      • The recommended value by VMWare depends on the amount of RAM allocated to the virtual machine. However, it must be 128 MB or more.
  • To enable EFI in a VMWare virtual machine, do the following.
    • Open your virtual machines’ “. VMX” file in Notepad (or similar) and add the following line anywhere in the file.
firmware = "efi"
  • Save the “. VMX” file.

Using GNOME Boxes (Flatpak)

We strongly recommend enabling the following options in the virtual machine settings.

  • ⚠️ ImportantPlease DO NOT use the default settings when creating a new VM in GNOME Boxes.

Virtual Machine settings for GNOME Boxes:

  • Open Boxes>Install from a file>Select the ISO file from the dialog window.
  • Select Debian testing as the operating system.
    • Select a Firmware option:
      • BIOS.
      • UEFI (Recommended).
  • Memory: 8.0GiB.
  • Storage limit: 64.0 GiB.

For additional configuration, right-click the VM and select Preferences. In the Resources section, adjust the following settings to these recommended values.

  • CPU: 4
  • 3D Acceleration: Disabled.
  • Allow foreground execution: Disabled.

Downloading the ISO

Of course, we need to obtain the correct ISO file to install the distribution.

We offer users various ways to download our ISO files.

Once we’ve downloaded the ISO file to our computer, we should check the file’s integrity. We do this by checking the checksum we provide.

Verify the ISO Integrity and Authenticity

We include the checksum of the ISO files in the release announcement for each new release and upload the checksum file to Sourceforge.

To verify the ISO file integrity, run the following command.

  • Using MD5 (Nitrux 3.2.0 and older).
md5sum -c path_to_checksum_file.md5
  • Using SHA512 (Nitrux 3.2.1 and newer).
sha512sum -c path_to_checksum_file.sha512

If you’re on Windows, you can use a program like QuickHash-GUI.

Since Nitrux 3.2.1, our ISO files are signed with a GPG key to ensure their authenticity. To verify the authenticity of the ISO using GPG, do the following.

  • Download the ISO and the signature file (.sig).
  • Import our public key using the command below.
gpg --keyserver keyserver.ubuntu.com --recv-keys 0E7587E8CC7E59632AB89AFAFD202DEE2F359100
  • Verify the signature using the command below.
gpg --verify path_to_sig_file.sig path_to_iso_file.iso

Once the integrity and authenticity of the ISO file have been verified, flash it to a USB.

Flashing the ISO to a USB

These instructions will walk you through creating a bootable Nitrux USB stick on Windows or Linux. You can use a USB stick to boot and test out or install Nitrux on any computer that supports booting from USB. The list of software to flash the ISO below is not in any particular order of preference.

We do not recommend you use the following programs.

  • balenaEtcher.
  • Unetbootin.
    • Unetbootin does not write the image; it merely copies it to the USB. However, unlike Ventoy, the ISO file does not boot with Unetbootin.
  • KDE ISOImageWriter
    • Fails to write the ISO image at 99%; this is a known issue of the application.

On the other hand, we recommend using the following programs.

Rufus (Windows)

If you are using Windows and Rufus, follow these steps:

  1. Download a Nitrux ISO file, and download and install Rufus.
  2. Insert the USB flash drive into the USB port and launch Rufus.
  3. Rufus will update to set the device within the ‘Device’ field. If the ‘Device’ selected is incorrect (perhaps you have multiple USB storage devices), select the correct one from the device field’s dropdown menu.
  4. Now, choose the Boot selection. Choices will include Non-bootable, FreeDOS, or Disk or ISO image (Please Select); since you create a bootable Nitrux device, select Disk or ISO image (Please Select).
    • ⚠️ Important: Rufus 4.2.4070 Beta introduced a feature to the software to display a warning about revoked UEFI bootloaders, “Add detection and warning for UEFI revoked bootloaders (including ones revoked through SkuSiPolicy.p7b).” This will cause Rufus to display a warning message. Users can ignore this warning as the bootloader post-installation is signed; however, the bootloader in the ISO isn’t signed, nor the Liquorix kernel is signed, and the distribution will not boot with Secure Boot enabled; see System Requirements.
  5. To select the Nitrux ISO file you downloaded previously, click SELECT to the right of “Boot selection.” If this is the only ISO file in the Downloads folder, you will see only one file listed. Select the appropriate ISO file and click on Open.
  6. The default selections for the Partition scheme (GPT) and Target system (UEFI (no CSM)) are appropriate (and are the only options available).
  7. Rufus will update the Volume label to reflect the ISO selected. Leave all other parameters with their default values and click START to initiate the writing process.
  8. When prompted to select which mode to write this image, choose to Write in DD Image mode.
  9. Rufus will now write the ISO to your USB stick, and the progress bar will indicate where you are. With a reasonably modern machine, this should take around 10 minutes. The total elapsed time is shown in the lower right corner of the Rufus window.
  10. When Rufus has finished writing the USB device, the Status bar will be green-filled, and the word READY will appear in the center. Select CLOSE to complete the writing process.

Ventoy (Windows/Linux)

If you are using Windows or Linux and Ventoy, follow these steps:

  1. Download a Nitrux ISO file, and install Ventoy and its GUI in the host operating system.
  2. Using the Ventoy GUI, install Ventoy to the USB; this will delete all the data on the selected USB drive.
  3. Copy and paste, or cut and move, the Nitrux ISO file from the download location to the Ventoy directory on the USB drive. The directory will appear in the file manager’s sidebar. Do not confuse this directory with VENTOYEFI.
    • 🔰 Information: When using Ventoy on Linux, run the command sync to flush the USB device write cache. In devices with little or no cache (like most USB thumb drives), the user must flush the cache before data is properly stored, and the kernel writes the data to the NAND flash.
    • ⚠️ Important: Ventoy does not implement any file verification method before or after the user copies or moves the ISO to the USB device. Always verify that the ISO file checksum is correct after copying or moving the ISO file to the Ventoy directory.
    • ⚠️ Important: Ensure to always use the latest version available of Ventoy.

ROSA Image Writer (Windows/Linux)

If you are using Windows or Linux and ROSA Image Writer, follow these steps:

  1. Download a Nitrux ISO file, and install ROSA Image Writer.
  2. Insert the USB flash drive into the USB port and launch ROSA Image Writer.
  3. Click the folder icon to browse the Nitrux ISO file and select it.
  4. Select the USB device from the dropdown menu.
  5. Click Write to initiate the writing process.

dd (*nix)

If you are using Linux and the command ‘dd,’ follow these steps:

  1. Download a Nitrux ISO file.
  2. Insert the USB flash drive into the USB port and open a Terminal window.
  3. Enter the following command in the Terminal window and hit Enter.
    • You must replace/dev/sdX with the correct device, such as /dev/sda or /dev/sdb or others.
sudo dd if=nitrux.iso of=/dev/sdX oflag=sync bs=4M status=progress

Installing Nitrux

To begin the installation, click the “Install Nitrux” icon on the desktop and complete the information the installer requires.

  • ⚠️ Important: The installation process requires mandatory active internet connectivity via wired or wireless connections. Please connect to a functional network before starting the installer.
    • If you are already connected to the internet, your computer should be capable of reaching GitHub and the domain raw.githubusercontent.com.
    • If your computer can reach GitHub and the domain raw.githubusercontent.com, for example, using Firefox, adjust your computer’s time and date while using the Live session to avoid connectivity problems during installation.
    • If your computer can’t reach either domain, you cannot proceed with the installation. We recommend using a VPN or a proxy or contacting your ISP if they block access to these domains. This is not a bug or issue with Nitrux or caused by Nitrux.
  • ⚠️ Important: Calamares will enforce a stricter user password quality check by using libpwquality to increase user account security by default. When creating the main user account, i.e., the “system administrator,” users must use a password over eight characters long, including uppercase, lowercase, numbers, and symbols, with sufficient randomness when creating their user accounts during installation. Otherwise, the password quality check will be too low, and the installation will not continue.
    • 🔰 Information: We recommend using a password generator application (mobile or desktop) or a website. Please avoid using simple passwords, i.e., 1234567890aB! Will not pass the password quality checks (the password fails the dictionary check). Alternatively, run the following command to generate a usable password directly from the terminal.
< /dev/urandom tr -dc 'A-Za-z0-9!@#$%^&*()_+{}|:<>?=' | head -c 12 ; echo
      • ⚠️ Important: We want to emphasize that users can still use insecure user passwords by turning off the password quality check using the checkbox “Enable password strength validation” or changing the password of the primary user account post-installation; however, we strongly recommend leaving the checkbox enabled for security reasons. Please be aware that turning off the password strength validation in Calamares will not affect other user accounts created post-installation; it will only affect the account created by Calamares.
  • 🔰 Information: The default user and password for the Live session is nitrux.
  • 🔰 Information: To view Calamares’s verbose output during installation, click the icon next to the progress bar or start Calamares from the terminal. Additionally, Swap partitions are automatically mounted when installing the distribution in a virtual machine. Calamares does not unmount swap partitions, so these partitions need to be unmounted manually. This behavior does not occur when installing the distribution on a physical computer. Run the following command to start Calmares from the terminal.
start-calamares
  • 🔰 Information: For problems with Calamares during installation, include ~/.cache/calamares/session.log in a bug report. Please note this file is only available in the Live session.

Users can select the automated partition options “Erase disk” and “Replace partition.” When using these options, Calamares will use our custom partition layout and create three partitions in addition to the ESP and the Swap. These percentages scale according to the size of the storage device.

  • The root partition (NX_ROOT) will occupy 22%.
    • ⚠️ Important: When installing the distribution, the installation will fail if the root partition does not have enough storage space. This is neither a bug caused by Nitrux nor a bug in Calamares. It is possible that in Legacy BIOS devices, Calamares does not display an error when that scenario occurs; in that case, it is a bug in Calamares (not to display the error), as it does display an error message when the device uses EFI.
  • The home (NX_HOME) will occupy 68%.
  • And /var/lib (NX_VAR_LIB) will occupy 10%.
  • The ESP (EFI System Partition) is a fixed size (300MB).
  • The Swap partition uses whatever space is left on the storage device that other partitions already do not use.
  • The root partition will use the XFS filesystem. Also, this XFS formatted partition will use the following additional filesystem features (enabled by Nitrux™).
    • Allow inodes to be placed at any location on the filesystem. Storing an inode in the exact location as the file’s data improves performance.
  • The home and /var/lib partitions will use F2FS instead of XFS. These F2FS formatted partitions will also use the following additional filesystem features (enabled by Nitrux™).
    • Compression using zstd with compression at level 6. The primary goal is reducing writes to extend the flash lifetime and, potentially, a slight increase in performance, see Native File Compression in F2FS.
    • Verification of compressed blocks using a checksum to avoid corruption.
    • Enable a better garbage collector and asynchronous garbage collection.
    • Avoid synchronously updating access or modification times, which improves I/O performance and flash durability.
    • Native F2FS file encryption. Encryption is applied at the directory level, and different directories can use different encryption keys. To use F2FS’s native encryption support, see Native File Encryption in F2FS.
      • This is different from dm-crypt, which is the block-device-level encryption used by Calamares during installation.

Users can also select the option “Manual partitioning,” too. However, we strongly recommend using a partition layout similar to ours.

  • ⚠️ Important:  Please be aware that the root directory is immutable, and any directory within the root will be read-only. Do not use a single partition layout.
  • Select the mount point of all partitions and options (where applicable).
    • Optionally, add labels to the partitions. Our recommended partition layout is below.
    • Optionally, choose to encrypt the whole system (or each partition individually).
      • ⚠️ Important:  Please be aware that the root directory is immutable, and any directory within the root will be read-only. Do not use a single partition layout.
      • ⚠️ Important: When creating the EFI System Partition for Legacy BIOS devices, the partition size must be 8MiB.
      • 🔰 Information: The tables below assume the target device is an x64 (x86-64, or amd64) computer using Legacy BIOS, EFI, or UEFI firmware and a GPT partition table.
      • 🔰 Information: While the (new) layout below is our recommendation, users can add almost any directory they want as a separate partition. However, the root and home must be separate due to the root directory’s immutability.
        • ⚠️ Important: Do not add the directory /etc as a separate partition; otherwise, the system will be unbootable
      • 🔰 Information: Please be aware that neither XFS nor F2FS partitions can’t be shrunk, only grown.
  • The table below defines our partition layout for EFI or UEFI firmware-type computers that use storage devices using GPT (GUID Partition Table).
Partition Label Mountpoint Filesystem Type Flags
EFI System Partition ESP /boot/efi fat32 boot
root NX_ROOT / xfs none
home NX_HOME /home f2fs none
/var/lib NX_VAR /var/lib f2fs none
swap SWAP none (automatically setup) linuxswap none (automatically setup)
  • The table below defines our partition layout for Legacy BIOS firmware-type computers that use storage devices using GPT (GUID Partition Table).
    • ⚠️ Important: We do not recommend using MBR when installing Nitrux in Legacy BIOS firmware-type computers. If your computer’s target storage device is MBR, we strongly suggest using a different one to install Nitrux.
Partition Label Mountpoint Filesystem Type Flags
EFI System Partition fat32 bios-grub
root NX_ROOT / xfs none
home NX_HOME /home f2fs none
/var/lib NX_VAR /var/lib f2fs none
swap SWAP none (automatically setup) linuxswap none (automatically setup)

We have added the ability for users to perform full-disk encryption using dm-crypt during installation when using the automated partition options in Calamares (Replace partition and Erase disk) and the Manual partitioning option.

  • During early boot, the system will ask the user for their passphrase, unlocking all encrypted partitions.
  • Block-device encryption during installation is in addition to any userland tool (like fscrypt or Plasma Vaults); see File Encryption in Nitrux.

Disclaimer: We do not develop the Calamares installer. Please create issues at its bug tracker here to request features or report problems.

Below is a video of the installation process (by Riba Linux).

Once the distribution is installed in the internal storage, you can reboot and log in to the installed system.


That’s it; this concludes today’s tutorial.