Tyler Mac 10fcd44cd5 comment
2026-08-19 18:58:24 -04:00
2026-08-19 18:58:24 -04:00

Home Manager Nix Configuration

This repository contains a Nix flake configuration for setting up a development environment with:

Supported Platforms

  • Windows via WSL
  • Linux (non-NixOS)
  • macOS with M1 chips

Installed Tools

  • tmux - Terminal multiplexer (using jakehamilton/tmux package)
  • helix - Modern editor with language server support
  • zsh - Enhanced shell
  • starship - Minimal, fast prompt
  • alacritty - Fast terminal emulator
  • git - Version control system
  • ssh - Secure shell client
  • htop - Interactive process viewer

Programming Languages & Language Servers

  • Odin - With OLS (Odin Language Server) - always included
  • Harper - With Harper Language Server - always included
  • Rust - With rust-analyzer - optional
  • Python - With Pyright - optional
  • JavaScript/TypeScript - With TypeScript Language Server - optional
  • Go - With gopls - optional
  • Java - With JDT Language Server - optional

Docker Support

  • Docker Client - For container management
  • Docker Compose - For multi-container applications

Git Configuration

  • User Name: Configurable during setup
  • User Email: Configurable during setup

Usage

To use this configuration with Home Manager:

  1. Make sure you have Nix installed
  2. Run home-manager switch to apply the configuration

The configuration will set up:

  • Default shell to zsh
  • Editor to helix
  • Prompt to use starship
  • Terminal to use alacritty
  • All language servers properly configured
  • Docker support for containerized development
  • Git user configuration (name and email)

Customization

To enable additional programming languages:

  1. Edit home-manager/home.nix
  2. Change enable = false; to enable = true; for desired languages
  3. Run home-manager switch to apply changes

Example:

rust = {
  enable = true;
  package = pkgs.rustc;
  languageServer = pkgs.rust-analyzer;
  lspName = "rust-analyzer";
};

Available Optional Languages

  • Rust: For systems programming
  • Python: For data science and scripting
  • JavaScript/TypeScript: For web development
  • Go: For backend services
  • Java: For enterprise applications

Development Features

Docker Integration

Docker client and compose support are included for containerized development workflows.

Language Server Protocol

All supported languages include their respective language servers for enhanced IDE-like experience in Helix.

System Monitoring

htop is included for process monitoring and system resource tracking.

tmux Integration

Uses the tmux package from jakehamilton/tmux repository for enhanced tmux functionality.

S
Description
No description provided
Readme 54 KiB
Languages
Nix 86.6%
Shell 13.4%