1
0
Fork 0
nix-system-configurations/README.md
2025-08-09 20:22:04 -05:00

2 KiB

🔧 Nix system configurations

Devshell

This repository has the Nix home-manager configurations for my laptop and other systems, simplifying configuration management and enabling reproducibility on other machines. It operates on a foreign Linux distribution (Fedora Asahi Remix) with plans to switch to NixOS when time allows. direnv automatically loads the environment for running commands for this Flake.

Features

  • 🏠 Home Manager: Defines the user environment.
  • 🧩 flake-parts: Makes the Flake modular and reusable, enabling clean separation of components.
  • 🔐 SOPS: Encrypts secrets.
  • treefmt (with Helix integration): Automatically formats the code in this repository when modifying it, with features to check the Flake for formatting consistency.
  • 📑 Jujutsu: Modern version control system with an improved UX for commits and merges.
  • ⌨️ Devshell: Clean shell management, printing project-specific commands on launch with icons using Nerd Fonts.
  • 📈 Nushell: Shell that uses structured data, with quality-of-life integrations enabled.
  • 💬 Language Server Protocol (LSP): Has language servers for file formats used in this repository; integrates with Helix text editor and fully managed by Nix with each language's configuration in its own file.
  • 🤖 AI: Uses Nix home-manager integrations for Codex and aichat for querying Large Language Models (LLMs) in the CLI and in Git repositories.
  • 🎨 Theming: Uses Catppuccin and Stylix for consistent theming across applications.
  • 📝 Language tools: Checks for grammatical and styling issues using Vale, Harper, LTeX (LanguageTool), and Typos, centralizing the custom dictionary for these tools in the Nix configuration.
  • ⚙️ Git pre-commit hooks: Lints the files before making a commit, both with programming and natural languages.