Compare commits

...

10 Commits

2 changed files with 104 additions and 31 deletions

View File

@ -49,14 +49,13 @@
};
# Enable the X11 windowing system.
services.xserver.enable = true;
# Enable the GNOME Desktop Environment.
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
# Configure keymap in X11
services.xserver = {
enable = true;
displayManager.gdm = {
enable = true;
wayland = true;
};
desktopManager.gnome.enable = true;
layout = "de";
xkbVariant = "";
};
@ -92,10 +91,7 @@
isNormalUser = true;
description = "Max Känner";
extraGroups = ["networkmanager" "wheel"];
packages = with pkgs; [
firefox
# thunderbird
];
shell = pkgs.zsh;
};
home-manager = {
@ -119,6 +115,7 @@
pciutils
home-manager
git
gcc
clang
clang_multi
libclang
@ -134,6 +131,10 @@
# enable = true;
# enableSSHSupport = true;
# };
programs.nix-ld.enable = true;
programs.nix-ld.libraries = with pkgs; [];
programs.zsh.enable = true;
# List services that you want to enable:
@ -149,6 +150,18 @@
# Or disable the firewall altogether.
# networking.firewall.enable = false;
system.autoUpgrade = {
enable = true;
flake = inputs.self.outPath;
flags = [
"--update-input"
"nixpkgs"
"-L"
];
dates = "09:00";
randomizedDelaySec = "45min";
};
# This value determines the NixOS release from which the default
# settings for stateful data, like file locations and database versions
# on your system were taken. Its perfectly fine and recommended to leave

100
home.nix
View File

@ -19,25 +19,22 @@
# The home.packages option allows you to install Nix packages into your
# environment.
home.packages = [
pkgs.nerdfonts
pkgs.lazygit
# # Adds the 'hello' command to your environment. It prints a friendly
# # "Hello, world!" when run.
# pkgs.hello
# # It is sometimes useful to fine-tune packages, for example, by applying
# # overrides. You can do that directly here, just don't forget the
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of
# # fonts?
# (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
# # You can also create simple shell scripts directly inside your
# # configuration. For example, this adds a command 'my-hello' to your
# # environment:
# (pkgs.writeShellScriptBin "my-hello" ''
# echo "Hello, ${config.home.username}!"
# '')
home.packages = with pkgs; [
zsh
starship
zoxide
nerdfonts
lazygit
btop
bat
eza
unzip
rustup
keepassxc
nextcloud-client
firefox
thunderbird
xournalpp
];
# Home Manager is pretty good at managing dotfiles. The primary way to manage
@ -71,9 +68,72 @@
# /etc/profiles/per-user/max/etc/profile.d/hm-session-vars.sh
#
home.sessionVariables = {
# EDITOR = "emacs";
EDITOR = "nvim";
};
programs.zsh = {
enable = true;
enableAutosuggestions = true;
enableCompletion = true;
defaultKeymap = "emacs";
dotDir = ".config/zsh";
history.expireDuplicatesFirst = true;
history.path = "$ZDOTDIR/.zsh_history";
historySubstringSearch.enable = true;
shellAliases = {
ls = "exa --icons -a --group-directories-first";
diff = "diff --color=auto";
grep = "grep --color=auto";
ip = "ip --color=auto";
mkdir = "mkdir -p";
gst = "git status";
gc = "git commit";
ga = "git add";
gpl = "git pull";
gpu = "git push";
gd = "git diff";
gch = "git checkout";
gs = "git switch";
gre = "git restore";
gr = "git remote";
gcl = "git clone";
glg = "git log --graph --abbrev-commit --decorate --format=format:'%C(bold green)%h%C(reset) - %C(bold cyan)%aD%C(reset) %C(bold yellow)(%ar)%C(reset)%C(auto)%d%C(reset)%n'' %C(white)%s%C(reset) %C(dim white)- %an%C(reset)' --all";
gb = "git branch";
gm = "git merge";
gf = "git fetch";
rebuild = "~/dotfiles/nixos/rebuild.sh";
};
syntaxHighlighting.enable = true;
syntaxHighlighting.highlighters = ["main" "brackets"];
};
programs.starship = {
enable = true;
enableBashIntegration = true;
enableZshIntegration = true;
settings = {
add_newline = false;
command_timeout = 5000;
character = {
success_symbol = "[->](bold green)";
error_symbol = "[ X](bold red)";
};
cmd_duration = {
min_time = 500;
show_milliseconds = true;
};
};
};
programs.zoxide = {
enable = true;
enableBashIntegration = true;
enableZshIntegration = true;
options = ["--cmd cd"];
};
services.nextcloud-client.enable = true;
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
}