2024-05-18 16:54:57 -07:00

124 lines
3.0 KiB
Nix

{ inputs, config, pkgs, ... }: {
home = {
username = "random";
homeDirectory = "/home/random";
};
gtk = {
enable = true;
theme = {
name = "Materia-dark";
package = pkgs.materia-theme;
};
};
nixpkgs.config.allowUnfree = true;
fonts.fontconfig.enable = true;
home.packages = with pkgs; [
feh
clang
cargo
neofetch
microsoft-edge
nextcloud-client
bitwarden-cli
bitwarden
discord
# Emacs
cmake
isync
ispell
mu
# fonts
fira-code
fira-code-symbols
meslo-lgs-nf
];
programs = {
home-manager.enable = true;
command-not-found.enable = true;
zoxide.enable = true;
eza.enable = true;
fzf.enable = true;
emacs = {
enable = true;
extraPackages = epkgs: with epkgs; [
mu4e
vterm
all-the-icons
nerd-icons
];
};
git = {
enable = true;
userName = "Random936";
userEmail = "randomdude936@gmail.com";
};
zsh = {
enable = true;
enableCompletion = true;
enableAutosuggestions = true;
syntaxHighlighting.enable = true;
history.size = 100000000;
shellAliases = {
update-system = "sudo nixos-rebuild switch --flake ~/dotfiles";
update-user = "home-manager switch --flake ~/dotfiles";
update-all = "update-system && update-user";
};
plugins = [
{
name = "custom-functions";
src = ../dotfiles;
file = ".functions.zsh";
}
{
name = "powerlevel10k-config";
src = ../dotfiles;
file = ".p10k.zsh";
}
];
zplug = {
enable = true;
plugins = [
{ name = "romkatv/powerlevel10k"; tags = [ as:theme depth:1 ]; }
];
};
};
};
home.file = {
".mbsyncrc".source = ../dotfiles/.mbsyncrc;
".Xresources".source = ../dotfiles/.Xresources;
".functions.zsh".source = ../dotfiles/.functions.zsh;
".scripts/brightness.sh".source = ../dotfiles/.scripts/brightness.sh;
".scripts/autostart_desktop.sh".source = ../dotfiles/.scripts/autostart_desktop.sh;
".screenlayout/launch.sh".source = ../dotfiles/.screenlayout/launch.sh;
".screenlayout/wallpapers.sh".source = ../dotfiles/.screenlayout/wallpapers.sh;
".config/i3/config".source = ../dotfiles/.config/i3/config;
".config/rofi/config.rasi".source = ../dotfiles/.config/rofi/config.rasi;
".config/polybar/config.ini".source = ../dotfiles/.config/polybar/config.ini;
# Emacs files
".emacs".source = ../dotfiles/.emacs;
".emacs.d/config.org".source = ../dotfiles/.emacs.d/config.org;
".emacs.d/terminal.org".source = ../dotfiles/.emacs.d/terminal.org;
".emacs.d/functions.org".source = ../dotfiles/.emacs.d/functions.org;
".emacs.d/email.org".source = ../dotfiles/.emacs.d/email.org;
".emacs.d/org.org".source = ../dotfiles/.emacs.d/org.org;
".emacs.d/lsp.org".source = ../dotfiles/.emacs.d/lsp.org;
};
home.stateVersion = "23.05";
}