1
0
Fork 0
forked from xinux/iso
Xinux ISO builder
Find a file
2026-05-12 10:00:39 +00:00
.github/workflows chore: added efi and biosboot checks 2026-04-26 16:11:14 +05:00
checks chore: added efi and biosboot checks 2026-04-26 16:11:14 +05:00
modules/nixos/installation feat: enable aarch64-linux build 2026-05-12 18:23:49 +09:00
packages/iso fix: nix buid 2026-04-26 23:34:37 +05:00
shells/iso refactor: runned treefmt 2026-03-18 18:42:33 +05:00
systems feat: enable aarch64-linux build 2026-05-12 18:23:49 +09:00
.envrc chore: added xserver and updated flake.lock 2025-09-22 19:01:54 +05:00
.gitignore chore: added xserver and updated flake.lock 2025-09-22 19:01:54 +05:00
flake.lock chore: add all xinux modules 2026-05-11 15:55:53 +05:00
flake.nix chore: add all xinux modules 2026-05-11 15:55:53 +05:00
LICENSE chore: Update LICENSE to gpl3 2025-10-31 12:15:15 +05:00
NIXPKGSLICENSE chore: remove badges 2025-03-02 13:42:34 +05:00
README.md feat: enable aarch64-linux build 2026-05-12 18:23:49 +09:00

Xinux ISO

Xinux is a NixOS based Linux distribution focused on beginner friendliness and ease of use. This repository contains the configuration used to build the Xinux ISO files.

Documentation

This repo uses nixos-generators project.

How to build iso

  1. Clone this repository and navigate to the project directory
  2. nixos-rebuild build-image --image-variant iso-installer --flake .#xinux --show-trace
  3. The resulting ISO file will be linked in result/iso/xinux-<version>.iso

Other builds (on NixOS hosts)

# aarch64-linux SD card image
nixos-rebuild build-image --image-variant sd-card --flake .#xinux-arm --show-trace

# Virtualbox
nixos-rebuild build-image --image-variant virtualbox --flake .#xinux --show-trace

# Vm
nixos-rebuild build-vm --flake .#xinux --show-trace

# VMWARE
nixos-rebuild build-image --image-variant vmware --flake .#xinux --show-trace

# Offline install coming soon...
# nix build .#install-isoCnfigurations.xinux-offline.config.system.build.images.iso

Building on non-NixOS hosts (Ubuntu, Debian, etc.)

nixos-rebuild ships only with NixOS. On other Linux distributions, install the Nix package manager and use nix build against the same flake attributes.

One-time setup

Pick one of the two Nix installers below.

  1. Determinate Systems installer (flakes enabled by default):

    curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
    
  2. nixos.org installer (flakes must be enabled manually):

    sh <(curl --proto '=https' --tlsv1.2 -L https://nixos.org/nix/install) --daemon
    
    # Enable flakes and the nix command
    sudo mkdir -p /etc/nix
    echo 'experimental-features = nix-command flakes' | sudo tee -a /etc/nix/nix.conf
    sudo systemctl restart nix-daemon
    

Optional: enable aarch64 emulation for cross-arch builds on an x86_64 host

sudo apt install qemu-user-static binfmt-support
echo 'extra-platforms = aarch64-linux' | sudo tee -a /etc/nix/nix.conf
sudo systemctl restart nix-daemon

Build commands

# ISO installer (x86_64)
nix build .#nixosConfigurations.xinux.config.system.build.images.iso-installer --show-trace

# SD card image (aarch64)
nix build .#nixosConfigurations.xinux-arm.config.system.build.images.sd-card --show-trace

# VirtualBox
nix build .#nixosConfigurations.xinux.config.system.build.images.virtualbox --show-trace

# VMware
nix build .#nixosConfigurations.xinux.config.system.build.images.vmware --show-trace

Development

Add a unique iso name on system/ARCHITECTURE/HOSTNAME otherwise the build command gets the first match.