Home manager
Taking the ideas of the Nix package manager and applying them to a users home folder (Home manager, Home manager options).
{ config, lib, pkgs, ... }:
{
home.username = "tom";
home.homeDirectory = "/home/tom";
home.stateVersion = "23.05";
home.packages = with pkgs; [
atool
cinnamon.nemo
clinfo
dstat
gimp
gnome.file-roller
gnome.gedit
gnome.gnome-system-monitor
gnome.simple-scan
lm_sensors
firefox
gthumb
htop
libarchive
libreoffice
mpv
nixpkgs-fmt
nix-index
nix-prefetch-github
radeontop
rescale
unzip
vlc
wget
xpano
];
home.file = {
".config/dunst".source = ./dunst;
".config/hypr/hyprland.conf".source =
pkgs.substituteAll { src = ./hyprland/template.conf; launch_waybar = ./hyprland/waybar.sh; };
".config/hypr/hyprpaper.conf".source =
pkgs.substituteAll { src = ./hyprpaper/template.conf; wallpaper = ./hyprpaper/nixos.png; };
".config/kitty".source = ./kitty;
".config/rofi".source = ./rofi;
".config/swayidle".source = ./swayidle;
".config/swaylock".source = ./swaylock;
".config/waybar".source = ./waybar;
".config/wireplumber".source = ./wireplumber;
".local/share/gedit".source = ./gedit;
};
programs.home-manager.enable = true;
programs.vscode = {
enable = true;
package = pkgs.vscodium;
extensions = with pkgs; [
vscode-extensions.dracula-theme.theme-dracula
vscode-extensions.jnoortheen.nix-ide
vscode-extensions.llvm-vs-code-extensions.vscode-clangd
vscode-extensions.ms-vscode.cmake-tools
vscode-extensions.twxs.cmake
vscode-extensions.xaver.clang-format
vscode-extensions.vadimcn.vscode-lldb
];
};
programs.git = {
enable = true;
userName = "Tomas Krupka";
userEmail = "6817216+krupkat@users.noreply.github.com";
};
programs.bash.enable = true;
programs.vim = {
enable = true;
extraConfig = ''
set nu
syntax enable
let g:dracula_colorterm = 0
colorscheme dracula
'';
plugins = [ pkgs.vimPlugins.dracula-vim ];
};
gtk = {
enable = true;
theme = {
name = "Dracula";
package = pkgs.dracula-theme;
};
iconTheme = {
name = "Dracula";
package = dracula-icon-theme-custom;
};
};
}