38 lines
811 B
Nix
38 lines
811 B
Nix
{ lib, pkgs, config, ... }:
|
|
|
|
let
|
|
username = config.users.users.defaultUser or "henrov";
|
|
homeDir = "/home/${username}";
|
|
programName = "zsh";
|
|
programAssets = ../../../assets/system/conf/${programName};
|
|
zshInitFile = "${programAssets}/zsh.conf";
|
|
in
|
|
{
|
|
# Ensure zsh is installed system-wide
|
|
environment.systemPackages = [ pkgs.zsh ];
|
|
|
|
# Home Manager configuration for the default user
|
|
home.username = username;
|
|
home.homeDirectory = homeDir;
|
|
|
|
programs.zsh = {
|
|
enable = true;
|
|
|
|
ohMyZsh = {
|
|
enable = true;
|
|
theme = "catppuccin-mocha";
|
|
|
|
# Only built-in plugins
|
|
plugins = [
|
|
"git"
|
|
"docker"
|
|
"direnv"
|
|
"zsh-completions"
|
|
];
|
|
|
|
# Inject custom Zsh configuration
|
|
shellInit = builtins.readFile zshInitFile;
|
|
};
|
|
};
|
|
}
|