🎛️ | Xinux'es final ISO builder using org. provided abstractions [maintainer=@bahrom04] https://xinux.uz/download
Find a file
2026-05-29 10:32:17 +00:00
.forgejo/workflows chore: conventional flake update 2026-05-25 22:15:04 +05:00
checks fix: missing debug 2026-05-25 22:47:05 +05:00
modules/nixos chore: remove password removal from ssh 2026-05-28 07:06:53 +05:00
packages/iso fix: nix buid 2026-04-26 23:34:37 +05:00
shells/iso fix: folder convention 2026-05-25 22:38:20 +05:00
systems feat: split aarch64 build into iso and sd-card 2026-05-22 17:50:13 +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 flake.lock: Update 2026-05-29 10:32:17 +00:00
flake.nix chore: auto-update 2026-05-25 21:47:09 +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 docs: add default password 2026-05-24 15:08:21 +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
nixos-rebuild build-image --image-variant iso-installer --flake .#xinux-arm --show-trace

# aarch64-linux SD card image
# No installer, the default user/password is `xinux` (change after the first boot)
nixos-rebuild build-image --image-variant sd-card --flake .#xinux-pi --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

# aarch64-linux
nix build .#nixosConfigurations.xinux-arm.config.system.build.images.iso-installer --show-trace

# aarch64-linux SD card image
# No installer, the default user/password is `xinux` (change after the first boot)
nix build .#nixosConfigurations.xinux-pi.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

Hardware requirements

Note

Only 64-bit processors are supported.

Xinux ISO (x86_64 and AArch64)

Minimum Recommended
RAM 8 GB 16 GB
Storage 128 GB 256 GB

Xinux Pi

The kernel-reserved CMA pool (256 MiB, placed inside the low 1 GiB DMA zone) and the GNOME desktop rule out sub-2 GB boards. Supported Raspberry Pi models:

Model RAM
Pi 4 2 GB+
Pi 5 4 GB+
CM4 2 GB+

Development

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