{ pkgs, ... }: let in { imports = [ ]; home-manager.useGlobalPkgs = true; users.users.mrflos = { isNormalUser = true; description = "mrflos"; createHome = true; extraGroups = [ "users" "docker" "libvirtd" "lxd" "networkmanager" "wheel" ]; uid = 1000; shell = pkgs.zsh; }; nix.settings.trusted-users = [ "mrflos" ]; home-manager.backupFileExtension = "backup"; home-manager.users.mrflos = { home.stateVersion = "23.05"; imports = [ ../modules/home-manager/emails.nix ../modules/home-manager/dotfiles.nix ../modules/home-manager/tmux.nix ]; home.sessionVariables = { EDITOR = "nvim"; #LD_LIBRARY_PATH = "${pkgs.stdenv.cc.cc.lib}/lib"; }; home.sessionPath = [ "$HOME/Code/nixos-config/scripts" "$HOME/.local/bin" "$HOME/go/bin" ]; programs = { direnv = { enable = true; enableZshIntegration = true; nix-direnv.enable = true; }; git = { enable = true; userName = "Florian Schmitt"; userEmail = "mrflos@gmail.com"; aliases = { fa = "fetch --all --tags --prune --recurse-submodules --force"; }; extraConfig = { pull.rebase = true; init.defaultBranch = "main"; core.editor = "nvim"; core.fileMode = false; }; }; mpv = { enable = true; package = ( pkgs.mpv-unwrapped.wrapper { scripts = with pkgs.mpvScripts; [ mpris sponsorblock thumbfast #uosc #modernx mpv-osc-tethys visualizer ]; mpv = pkgs.mpv-unwrapped.override { waylandSupport = true; }; } ); config = { profile = "high-quality"; ytdl-format = "bestvideo+bestaudio"; }; }; neovim = { defaultEditor = true; viAlias = true; vimAlias = true; }; starship = { enable = true; settings = with builtins; fromTOML (readFile ../dotfiles/starship/starship.toml); }; thunderbird = { enable = true; profiles."mrflos" = { isDefault = true; }; }; zsh = { enable = true; autosuggestion.enable = true; enableCompletion = true; shellAliases = { #tmux = "tmux -f ~/.config/tmux/tmux.conf attach || tmux -f ~/.config/tmux/tmux.conf new"; bunx = "bun --bun x"; c = "/home/mrflos/Code/nixos-config/scripts/tmux-sessionizer"; g = "lazygit"; n = "/home/mrflos/Code/nixos-config/scripts/open-notes"; s = "/home/mrflos/Code/nixos-config/scripts/ssh-connect"; t = "/home/mrflos/Code/nixos-config/scripts/tmux-sessionizer"; kdenix = "nix run github:pjones/plasma-manager --extra-experimental-features nix-command --extra-experimental-features flakes > /home/mrflos/Developpements/nixos-config/modules/home-plasma.nix"; icat = "kitty +kitten icat"; nixedit = "vi /etc/nixos"; nixupdate = "sudo nix-channel --update && sudo nixos-rebuild switch"; nixclean = "sudo nix-env --delete-generations old --profile /nix/var/nix/profiles/system && sudo /nix/var/nix/profiles/system/bin/switch-to-configuration switch && sudo nix-store --gc"; socks = "ssh -N -f -C -D 9090 mrflos@yunohost.yeswiki.net -p 6742"; vi = "/run/current-system/sw/bin/nvim"; vim = "/run/current-system/sw/bin/nvim"; yeswiki-updater = "cd /home/mrflos/Code/yeswiki-installer/ && sudo php yeswiki-updater.php"; }; initExtra = '' export BUN_INSTALL="$HOME/.bun" export PHP_CS_FIXER_IGNORE_ENV=1 export PATH="$HOME/.local/bin:$BUN_INSTALL/bin:$PATH" eval "$(atuin init zsh)" eval "$(zoxide init zsh)" ''; oh-my-zsh = { enable = true; extraConfig = '' zstyle :omz:plugins:ssh-agent helper ksshaskpass zstyle :omz:plugins:ssh-agent agent-forwarding yes zstyle :omz:plugins:ssh-agent lazy yes ''; plugins = [ "git" "ssh-agent" ]; # theme = "robbyrussell"; }; }; }; services.ssh-agent.enable = true; }; }