An Arch-based Linux distribution featuring the Dank Linux UI — DankMaterialShell (Material 3 desktop shell built on Quickshell) running on the niri scrollable-tiling Wayland compositor.
New in Beta 1.0: 4 curated wallpaper themes with instant matugen retuning,
Plymouth animated boot splash, full GRUB theme for installed systems,
nebula wallpaper and nebula bugreport CLI subcommands, wallpaper picker
in Nebula Welcome, and weekly auto-built ISOs via GitHub Actions.
⚠️ UEFI required. Legacy BIOS boot is not supported in Beta 1.0 —grub-install's device-path canonicalization has a confirmed bug in this GRUB build when/bootis on its own partition (required for reliable btrfs booting; see Desktop stack below). UEFI installs use a different GRUB target (x86_64-efi) that doesn't hit this bug. The installer detects legacy BIOS mode and warns you before proceeding. Enable UEFI in your firmware/VM settings first.
███╗ ██╗███████╗██████╗ ██╗ ██╗██╗ █████╗
████╗ ██║██╔════╝██╔══██╗██║ ██║██║ ██╔══██╗
██╔██╗ ██║█████╗ ██████╔╝██║ ██║██║ ███████║
██║╚██╗██║██╔══╝ ██╔══██╗██║ ██║██║ ██╔══██║
██║ ╚████║███████╗██████╔╝╚██████╔╝███████╗██║ ██║
╚═╝ ╚═══╝╚══════╝╚═════╝ ╚═════╝ ╚══════╝╚═╝ ╚═╝
L I N U X
⬇ Download the ISO from SourceForge (~2.2 GB)
SHA256: d06345f24d7a6f84f1546e7fe035daad98421d75f5004e3e725fed851090f588
Flash it with Rufus or BalenaEtcher, or boot it in a VM (4+ GB RAM). Or build it yourself.
![]() |
![]() |
| The live desktop — DMS bar on niri | Nebula Welcome onboarding |
![]() |
![]() |
| Branded Calamares installer | DankMaterialShell settings |
![]() |
![]() |
| Apps on the scrollable-tiling desktop | Boot menu with nebula background |
- Live ISO that boots straight into a full Dank Material Shell desktop
(niri + DMS) as user
nebula— no login required. - Nebula branding everywhere: os-release, hostname, boot menus + BIOS boot
splash, MOTD, TTY login prompt, logo (hicolor icons + pixmaps, shown in DMS
Settings → About), default wallpaper (also the lock screen background, and
matugen derives the whole Material color scheme from it), lock-screen user
avatar, fastfetch ASCII logo, installer banner. The installer also rebrands
the target's bootloader (systemd-boot entries /
GRUB_DISTRIBUTOR). - Installer: launch "Install Nebula Linux" from the app launcher
(Super+Space) — a fully Nebula-branded Calamares GUI that installs by
copying the live system, then strips the live-only pieces and sets up GRUB
with the nebula background. (Calamares is built from the AUR during the ISO
build and cached in
out\pkgcache\.) A CLI fallback,nebula-install(archinstall wrapper), is also on the ISO.
| Component | Package(s) |
|---|---|
| Shell / UI | dms-shell-niri (DankMaterialShell from Arch extra) |
| Compositor | niri + xwayland-satellite |
| Login | greetd (autologin in live session) |
| Audio | PipeWire + WirePlumber |
| Network | NetworkManager, bluez |
| Terminal | foot (CPU-rendered — works in VMs) |
| Apps | Firefox, Nautilus, LibreOffice, Celluloid (video), Loupe, Evince, File Roller, Calculator, Text Editor |
| Theming | matugen (wallpaper-based Material colors) + adw-gtk3-dark, Papirus icons, qt6ct |
| Installer | Calamares (Nebula-branded, AUR-built at ISO build time) |
| Snapshots | btrfs by default + snapper + snap-pac + grub-btrfs (boot old snapshots from GRUB) |
| Login | DMS graphical greeter on installed systems (nebula greeter <dms|text> to switch) |
| Onboarding | Nebula Welcome app (install, niri tour, app bundles, Flathub) |
| Control | nebula CLI: update / snapshots / rollback / drivers / doctor / windows / wallpaper / bugreport |
| Themes | 4 bundled wallpaper themes (nebula wallpaper list) — matugen retunes the whole desktop on switch |
| Boot splash | Plymouth "nebula" theme with orbiting singularity animation (installed systems, silent boot) |
| GRUB theme | Branded GRUB menu for installed systems (background, logo, wordmark, selection pixmaps) |
| Window modes | scrollable tiling by default; nebula windows floating for classic windows (also a switch in Nebula Welcome) |
| VM support | guest tools auto-start under QEMU/KVM, VirtualBox, VMware |
| Performance | zram swap (zstd), fstrim timer |
mkarchiso only runs on Arch Linux, so the build happens inside a Docker
container. You need Docker Desktop (WSL2 backend) with ~15 GB free space.
.\build.ps1The first build downloads several GB of packages (a named Docker volume
nebula-pacman-cache caches them for subsequent builds). The finished ISO
lands in out\nebula-linux-YYYY.MM.DD-x86_64.iso.
Test it in a VM (Hyper-V, VirtualBox, VMware, or QEMU). Give it 4+ GB RAM and enable EFI if available. Boot, and the DMS desktop appears automatically.
| Key | Action |
|---|---|
Super+Space |
App launcher (Spotlight) |
Super+Return |
Terminal (foot) |
Super+O |
Overview |
Super+Q |
Close window |
Super+, |
DMS settings |
Super+Escape |
Lock screen |
Super+Shift+/ |
Show all keybindings |
build.ps1starts anarchlinux:latestprivileged container with this repo mounted read-only at/srcandout\at/out.build.sh(inside the container) installsarchiso, copies the official releng profile, then:- overlays everything under profile/airootfs/ onto it,
- appends profile/packages-extra.x86_64 to the package list,
- rebrands
profiledef.sh, GRUB/syslinux boot menus (Arch Linux→Nebula Linux), - a pacman hook
overwrites
/usr/lib/os-releasewith Nebula branding during pacstrap (and again on every futurefilesystempackage upgrade), - swaps releng's iwd/systemd-networkd for NetworkManager, removes the
root tty autologin, enables
greetd+ graphical target, - renders the wallpaper SVG to PNG,
- runs
mkarchiso.
- The live ISO creates the
nebulauser at boot (nebula-live-setup) and greetd autologs it intoniri-session; niri spawnsdms run.
build.ps1 Windows entry point (Docker)
build.sh Container-side build script
profile/
packages-extra.x86_64 Desktop packages appended to releng list
airootfs/ Files overlaid into the live filesystem
etc/greetd/config.toml Autologin session config
etc/skel/.config/niri/ niri config (spawns DMS, keybinds)
etc/systemd/system/ nebula-live-setup.service
usr/lib/os-release Nebula branding
usr/local/bin/nebula-install Installer wrapper (archinstall + nebulaize)
usr/local/bin/nebula-live-setup Live user creation
usr/share/backgrounds/nebula/ Wallpaper (SVG, rendered at build time)
- Calamares graphical installer (AUR build + local pacman repo on the ISO)
- DankGreeter graphical login for installed systems (shipped inside
dms-shell) - Snapshot rollback stack (btrfs + snapper + snap-pac + grub-btrfs)
- Nebula Welcome onboarding app + niri tour
-
nebulacontrol-center CLI -
nebula-release/nebula-brandingpacman packages + own package repo - Plymouth boot splash, GRUB theme for installed systems
- Custom Material icon theme & default DMS settings preset
- Hyprland edition (
dms-shell-hyprland) - Weekly auto-built ISOs (GitHub Actions) + signed checksums






