Files
my-default-nix-home/flake.nix
T
2026-08-19 18:07:44 -04:00

57 lines
1.5 KiB
Nix

{
description = "Home Manager configuration with tmux, helix, zsh, starship, alacritty, git, ssh for WSL, Linux, and Mac M1 with Docker and conditional language support";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager/release-23.11";
};
flake-utils.url = "github:numtide/flake-utils";
tmux = {
url = "github:jakehamilton/tmux";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, home-manager, flake-utils, tmux }:
flake-utils.lib.eachSystem [ "x86_64-linux" "aarch64-darwin" "x86_64-windows" ] (system: let
pkgs = import nixpkgs {
inherit system;
config = {
allowUnfree = true;
};
};
in {
# Development shell with all our tools
devShells.default = pkgs.mkShell {
buildInputs = with pkgs; [
tmux
helix
zsh
git
openssh
alacritty
starship
htop
docker-client
docker-compose
odin
ols
harper
gcc
gnumake
];
};
# Home Manager configuration
homeConfigurations."tylerbohrer" = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
(import ./home-manager/home.nix {
inherit pkgs;
tmuxPackage = tmux.packages.${system}.tmux;
})
];
};
});
}