Skip to content

silent-brad/anti_bloat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anti_Bloat Dotfiles

Overview

Fully reproducible NixOS configuration using Flakes and Home Manager.

Features

  • Modular architecture - Hardware profiles, services, and user configs are separated
  • Nushell + Starship - Modern shell with informative prompt
  • Pinnacle - Wayland compositor configured in Lua
  • Neovim + Lazy.nvim - Extensible editor setup
  • Reproducible - Single command deploys entire system

Quick Start

# Clone (if not already in place)
git clone https://github.com/silent-brad/anti_bloat ~/anti_bloat
cd ~/anti_bloat

# Build and switch
sudo nixos-rebuild switch --flake .#thinkpad-x220

Directory Structure

PathPurpose
flake.nixEntry point, inputs
hosts/Machine-specific configs
hardware/Hardware modules (profiles, peripherals, monitors)
modules/Reusable NixOS modules
home/Home Manager user configs
packages/Custom package definitions
wallpapers/Wallpaper collection
secrets/User secrets (gitignored, see .example files)
docs/Documentation

Hosts

thinkpad-x220

ThinkPad X220 Tablet with Intel i5-2520M, Intel HD Graphics.

Hardware modules included:

  • ThinkPad X220 profile (ACPI, touchpad)
  • Intel GPU
  • Canon G6000 printer
  • Ultrabase dock

Common Commands

CommandPurpose
sudo nixos-rebuild switch --flake .#thinkpad-x220Apply system changes
sudo nixos-rebuild test --flake .#thinkpad-x220Test without making permanent
sudo nixos-rebuild build --flake .#thinkpad-x220Build only
nix flake updateUpdate all flake inputs
nix flake update hyprluaUpdate specific input

Secrets

All user-specific values live in secrets/secrets.nix. This file is gitignored and imported by Nix at build time. A secrets.lua is generated from it for Neovim.

cp secrets/secrets.nix.example secrets/secrets.nix
# Then edit with your real values

These are consumed by:

  • home/editors/neovim — generates secrets.lua into nvim config for the OpenRouter provider
  • home/desktop/eww — reads the generated secrets.lua for the OpenRouter credits widget
  • home/default.nix — reads git_username / git_email for Git config
  • hosts/*/default.nix — reads hostname

See Also

About

My reproducible dot files (NixOS + Pinnacle + Eww + NeoVim + Nu)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors