[TASK] Improve user config

This commit is contained in:
Sebastian Fischer 2026-02-07 13:23:02 +01:00
parent 476c4f0997
commit 6e2effbad5
6 changed files with 110 additions and 45 deletions

View File

@ -48,8 +48,6 @@
wget
curl
htop
stow
cifs-utils
];
@ -61,19 +59,7 @@
services.flatpak.enable = true;
# Sound
sound.enable = true;
hardware.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
# Sound
sound.enable = true;
hardware.pulseaudio.enable = false;
services.pulseaudio.enable = false;
security.rtkit.enable = true;
services.pipewire = {
enable = true;
@ -84,12 +70,12 @@
# 32-bit Support für Steam
hardware.graphics.enable32Bit = true;
hardware.pulseaudio.support32Bit = true;
services.pulseaudio.support32Bit = true;
# Desktop Environment / Window Manager
services.xserver.enable = true;
services.xserver.displayManager.gdm.enable = true;
services.xserver.desktopManager.gnome.enable = true;
services.displayManager.gdm.enable = true;
services.desktopManager.gnome.enable = true;
# Enable CUPS to print documents.
services.printing.enable = true;

View File

@ -5,7 +5,7 @@
./hardware-configuration.nix
./common.nix
./services.nix
./users.nix
./users/sebastian.nix
# ./vm-guest.nix
<home-manager/nixos>
];
@ -13,7 +13,7 @@
# Home Manager Konfiguration
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
home-manager.users.sebastian = import ./home.nix;
home-manager.backupFileExtension = "backup";
# NixOS Version (nicht ändern nach Erstinstallation)
system.stateVersion = "25.11";

View File

@ -81,6 +81,8 @@ in
jetbrains-toolbox
mkcert
gitflow
stow
];

View File

@ -1,24 +0,0 @@
# /etc/nixos/users.nix
# Benutzer-Konfiguration
{ config, pkgs, ... }:
{
# Benutzer sebastian
users.users.sebastian = {
isNormalUser = true;
description = "Sebastian Fischer";
extraGroups = [
"networkmanager"
"wheel"
"docker"
"libvirtd"
];
shell = pkgs.zsh;
hashedPassword = "$6$CAuppl9g4RL/0BpQ$njjjKs2MFlHRCxlBk.34f2z.wJ3nEOI4xOdOBEds59Adcr3ngJ1lVFpOS0v0pg4/k5pTg0Lgj.88w/RgR2/MS.";
};
# SSH für ssh-askpass (verwendet von Git, etc.)
programs.ssh.askPassword = "${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass";
}

101
config/users/sebastian.nix Normal file
View File

@ -0,0 +1,101 @@
# /etc/nixos/sebastian.nix
# Benutzer-Konfiguration
{ config, pkgs, lib, ... }:
{
# Benutzer sebastian
users.users.sebastian = {
isNormalUser = true;
description = "Sebastian Fischer";
extraGroups = [
"networkmanager"
"wheel"
"docker"
"libvirtd"
];
shell = pkgs.zsh;
hashedPassword = "$6$CAuppl9g4RL/0BpQ$njjjKs2MFlHRCxlBk.34f2z.wJ3nEOI4xOdOBEds59Adcr3ngJ1lVFpOS0v0pg4/k5pTg0Lgj.88w/RgR2/MS.";
};
# SSH für ssh-askpass (verwendet von Git, etc.)
programs.ssh.askPassword = "${pkgs.x11_ssh_askpass}/libexec/x11-ssh-askpass";
home-manager.users.sebastian = lib.mkMerge [
(import ../home.nix)
{
programs.git = {
enable = true;
settings = {
user.name = "Sebastian Fischer"; # ANPASSEN
user.email = "typo3@evoweb.de"; # ANPASSEN
init.defaultBranch = "main";
core.editor = "vim";
pull.rebase = false;
};
};
# Zsh mit Oh-My-Zsh und Powerlevel10k
programs.zsh = {
enable = true;
enableCompletion = true;
autosuggestion.enable = true;
syntaxHighlighting.enable = true;
oh-my-zsh = {
enable = true;
theme = "powerlevel10k/powerlevel10k";
plugins = [
"git"
"git-flow"
"docker"
"docker-compose"
"systemd"
"sudo"
];
custom = "$HOME/.oh-my-zsh/custom";
};
shellAliases = {
ll = "ls -lah";
la = "ls -A";
l = "ls -CF";
".." = "cd ..";
"..." = "cd ../..";
rebuild = "sudo nixos-rebuild switch";
update = "sudo nixos-rebuild switch --upgrade";
};
initContent = ''
# Powerlevel10k Konfiguration laden (falls vorhanden)
[[ -f ~/.p10k.zsh ]] && source ~/.p10k.zsh
'';
};
# Vim Konfiguration
programs.vim = {
enable = true;
defaultEditor = true;
settings = {
number = true;
relativenumber = true;
tabstop = 2;
shiftwidth = 2;
expandtab = true;
};
extraConfig = ''
syntax on
set encoding=utf-8
set autoindent
set smartindent
'';
};
}
];
}

View File

@ -1,4 +1,4 @@
# /etc/nixos/vm-guest.nix
# /etc/nixos/vm-host.nix
# Erweiterte Virtualisierungs-Konfiguration
# Diese Datei ist optional und kann in configuration.nix importiert werden