Skip to content
cloudlenaPublic

About

❄️ My personal NixOS configuration

Resources

Stars

4 stars

Watchers

1 watching

Forks

Latest commit

 

History

92 Commits

Folders and files

Repository files navigation

Nixfiles

❄️ My personal NixOS configuration. It uses Flakes under the hood.

Features

This configuration includes:

  • Window Manager: mangowm (Wayland) with Waybar, Swaylock, and Tokyo Night theme
  • Terminal: Kitty with Zsh, Starship prompt
  • Editor: Helix with comprehensive language server support
  • Development: Go, Python, Rust, Node.js, OpenTofu, Kubectl, and more
  • Tools: Claude Code, GitUI, Yazi file manager, Taskwarrior, Bottom monitor
  • Security: Secure boot (Lanzaboote), full disk encryption (LUKS)
  • Containers: Podman with Compose support

See the terminal commands section below for quick access to key tools.

Prerequisites

  • Git installed
  • NixOS installed (only for the system level part)

Hardware

This configuration is tailored for a TUXEDO InfinityBook Pro 14 Gen 7 using nixos-hardware. If you're using different hardware, update the nixos-hardware module in flake.nix.

Directory Structure

  • flake.nix - Flake configuration with system inputs and outputs
  • flake.lock - Locked dependency versions
  • system/ - System-level NixOS configuration
  • home/ - Home Manager configuration (user-level)
  • home/theme.nix - Tokyo Night color scheme definitions
  • Makefile - Convenience commands for common operations

Installation

  1. Clone this repo
  2. (Fresh install only) Partition and format the disk with nix run github:nix-community/disko -- --mode disko ./system/disks.nix
  3. Install the system level components with sudo nixos-rebuild switch --flake .#nixos (this also installs nh)
  4. Install the user level components with nix run github:nix-community/home-manager -- switch --flake .#lena

Update

  1. Run make update to update the Flake lockfile
  2. Run make system to update the system level components
  3. Run make home to update the user level components

Maintenance

  1. Run make clean to remove old system generations and user profiles (keeps last 5 and all from last 14 days)

Colors

The whole setup follows the Tokyo Night color scheme as defined in home/theme.nix.

Purpose Color
Foreground #c0caf5
Background #1a1b26
Primary #bb9af7
Success #9ece6a
Warning #e0af68
Danger #f7768e

Key Bindings

Function Keys
Open App Launcher Super + Space
Open Terminal Super + Enter
Open Web Browser Super + W
Open Clipboard History Super + C
Open Emoji Picker Super + E
Lock Screen Super + Ctrl + Q
Focus Previous Window Super + Tab
Toggle Window Overview Super + A or Three-Finger Swipe Up/Down
Kill Active Window Super + Q
Toggle Fullscreen Window Super + F
Toggle Floating Window Super + V
Pin Window to All Tags Super + Y
Switch to Window Super + [hjkl] or Move Mouse
Move Window Super + Shift + [hjkl] or Super + Left Mouse Button
Resize Window Super + Right Mouse Button
Switch to Tag Super + [1-9]
Move Window to Empty Tag Super + Shift + N
Move Window to Tag Super + Shift + [1-9]
Open Empty Tag Super + N
Switch to Next Tag Super + Scroll Up or Three-Finger Swipe Left
Switch to Previous Tag Super + Scroll Down or Three-Finger Swipe Right
Switch to Scratchpad Super + S
Move Window to Scratchpad Super + Shift + S
Focus Previous Monitor Super + [
Focus Next Monitor Super + ]
Move Window to Previous Monitor Super + Shift + [
Move Window to Next Monitor Super + Shift + ]
Mirror Built-in Display Super + M
Take Screenshot Print
Take and Annotate Screenshot Shift + Print

Terminal Commands

Function Command
Open Agentic Coding Tool a
Open Text Editor e
Open File Manager f
Open Git Browser g
List Directory Contents l
Open System Monitor m
Open File o
Open Task Manager t
Enable Do-Not-Disturb Mode do-not-disturb
Disable Do-Not-Disturb Mode do-disturb
Update Project Dependencies depu
Switch Git Branch (Fuzzy) fco
Create and Enter Directory mkcd
Update System and Firmware pacu

About

❄️ My personal NixOS configuration

Resources

Stars

4 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages