MarsOS is a simple way to replicate my setup on any NixOS system via a Flake.
- Wallpaper: Bloom Dark by dpcdpc11
Based on linuxmobile's Shin and olafkfreund's nixos-template Configuration Structure, with a Full NixOS approach without relying on Home-Manager, preferring to use custom modules for software such as Niri or for simpler hardware configurations without relying on so many inputs in the Flake
Environment Software
| Full Wayland Btw | |
|---|---|
| Window Manager | Niri + Noctalia |
| Session Manager | SDDM + SDDM-Astronaut |
| Terminal Emulator | Wezterm + Zellij |
| Network Management Tool | IWD + NetworkManager |
| System Resource Monitor | Bottom & Mission Center |
| File Manager | Yazi & Nautilus |
| Polkit | Soteria |
| Shell | Fish + Starship |
| Text Editor | Helix |
| Fonts | Nerd fonts |
| Image Viewer | Swayimg |
| Multimedia Player | MPV |
Flake Directory Structure
MarsOS/
├── assets/
│ ├── ascii-art
│ └── wallpapers/
├── hosts/{host}/
│ │ ├── default.nix
│ │ └── disko.nix
│ ├── host.md
│ └── config.md
├── modules/
├── flake.nix
├── flake.lock
└── shell.nix
- A bootable NixOS ISO (Minimal installation recommended)
- Internet connection
- Clone the repository:
nix run nixpkgs#git -- clone https://github.com/RickMars-Tech/MarsOS.git- Navigate to the directory and apply Disko formatting:
cd MarsOS/
sudo nix --experimental-features "nix-command flakes" run github:nix-community/disko/latest -- --mode destroy,format,mount hosts/<host>/disko.nixNote: Replace
<host>with your actual hostname (e.g.,boltz,rift, orcrest)
- Copy the Flake to
/mnt/etc/nixos/and build the system:
sudo mkdir -p /mnt/etc/nixos
sudo cp -r ~/MarsOS /mnt/etc/nixos/
sudo nixos-install --flake /mnt/etc/nixos/MarsOS#<host>Note: Replace
<host>with your chosen hostname
- Reboot and enjoy!
- Creating Custom Hosts - Learn how to create your own host configurations
- Configuration Options - Complete reference of all Mars modules and options
-
Personal Configuration: This Flake is specifically tailored for my systems (boltz, rift, and crest). You're welcome to use it as a base, modify the configuration files, or copy individual components that suit your needs.
-
Boot Loader: This configuration uses systemd-boot and Lanzaboote as the default boot loader. GRUB support is not included, so you'll need to configure it manually if you prefer GRUB.
-
Installation Environment: For best results, install from a minimal NixOS environment without a pre-installed desktop environment.
Special thanks to these excellent configurations that inspired and taught me so much:
- Gvolpe - Zaphkiel configuration.
- Tyler Kelley - ZaneyOS.
- Liassica - NixOS config.
- Ryan Yin - NixOS and Flakes book.
- shin - An elegant NixOS environment designed.
- nixos-template - A template to start you nixos journey.


