108 lines
1.9 KiB
Nix
108 lines
1.9 KiB
Nix
{ config, pkgs, nixpkgs, ... }:
|
|
|
|
{
|
|
home.username = "mwc";
|
|
home.homeDirectory = "/home/mwc";
|
|
home.stateVersion = "25.05";
|
|
|
|
# Core packages
|
|
home.packages = with pkgs; [
|
|
# Development essentials
|
|
nodejs_24
|
|
python3Full
|
|
bun
|
|
deno
|
|
|
|
curl
|
|
gcc
|
|
gnumake
|
|
|
|
# Terminal
|
|
terminator
|
|
|
|
# Editors & IDEs
|
|
neovim
|
|
|
|
# Graphics & design
|
|
gimp3-with-plugins
|
|
inkscape-with-extensions
|
|
|
|
# Communication
|
|
thunderbird
|
|
signal-desktop
|
|
|
|
# Office
|
|
libreoffice
|
|
|
|
# CLI tools
|
|
xclip
|
|
lf
|
|
ripgrep
|
|
fzf
|
|
|
|
# Container tools
|
|
docker
|
|
|
|
# Android dev (from your exports)
|
|
android-tools
|
|
|
|
# Kubernetes
|
|
kubectl
|
|
];
|
|
|
|
# Shell configuration
|
|
programs.zsh = {
|
|
enable = true;
|
|
enableCompletion = true;
|
|
autosuggestion.enable = true;
|
|
syntaxHighlighting.enable = true;
|
|
|
|
oh-my-zsh = {
|
|
enable = true;
|
|
theme = "robbyrussell";
|
|
plugins = [ "git" "docker" "kubectl" ];
|
|
};
|
|
|
|
shellAliases = {
|
|
n = "notes";
|
|
m = "make";
|
|
x = "xclip -sel clip";
|
|
d = "docker";
|
|
k = "kubectl";
|
|
g = "git";
|
|
ls = "ls --color=auto";
|
|
gedit = "gnome-text-editor";
|
|
stop = "kill_by_name() { pids=$(pgrep -f $1); if [ -n \"$pids\" ]; then kill -9 $pids; else echo \"No matching process found.\"; fi; }; kill_by_name";
|
|
};
|
|
|
|
sessionVariables = {
|
|
CYPRESS_CRASH_REPORTS = "0";
|
|
};
|
|
};
|
|
|
|
# Git configuration
|
|
programs.git = {
|
|
enable = true;
|
|
userName = "Michael Czechowski";
|
|
userEmail = "mail@dailysh.it"; # adjust as needed
|
|
};
|
|
|
|
# Development environments
|
|
programs.direnv = {
|
|
enable = true;
|
|
enableZshIntegration = true;
|
|
};
|
|
|
|
# File manager
|
|
programs.lf.enable = true;
|
|
|
|
# Session variables
|
|
home.sessionVariables = {
|
|
EDITOR = "nvim";
|
|
BROWSER = "firefox";
|
|
};
|
|
|
|
# Set zsh as default shell
|
|
programs.zsh.defaultKeymap = "emacs";
|
|
}
|