inputs: { config, pkgs, lib, ... }: let inherit (inputs.self.lib) theme; dominantEscapeCode = theme.fgEscapeCode config.theme.colors.dominant; bgDominantEscapeCode = theme.bgEscapeCode config.theme.colors.dominant; backgroundEscapeCode = theme.fgEscapeCode config.theme.colors.background; in { imports = [ ./commandline/atuin.nix (import ./commandline/dircolors.nix inputs) (import ./commandline/git.nix inputs) (import ./commandline/htop.nix inputs) (import ./commandline/starship.nix inputs) (import ./commandline/tmux.nix inputs) (import ./commandline/zsh.nix inputs) ]; environment.systemPackages = with pkgs; [ dnsutils dogdns dua elinks fd file gnupg hddtemp jaq jq lm_sensors lsof moreutils ncdu nethogs nix-prefetch-scripts progress psmisc ripgrep shellcheck shfmt smartmontools tmux tree vim wget wipe unstable.alejandra unstable.nixfmt-rfc-style ]; console = { # packages = with pkgs; [terminus_font]; # font = "ter-d22n"; # colors = [ # "282a2e" # "a54242" # "8c9440" # "de935f" # "5f819d" # "85678f" # "5e8d87" # "707880" # "373b41" # "cc6666" # "b5bd68" # "f0c674" # "81a2be" # "b294bb" # "8abeb7" # "c5c8c6" # ]; keyMap = "fr"; }; environment.shellAliases = { e = "\${EDITOR}"; o = "xdg-open"; cpr = "${pkgs.rsync}/bin/rsync -ah --inplace --info=progress2"; }; programs.bash.completion.enable = true; programs.less = { envVariables = { # -W: hilite-unread # -z-4: scrolling set to screen height - 4 # -R: display color and link escape sequences # -J: display status column at left edge of screen # -F: quit if one screen LESS = "-W -z-4 -R -J -F"; # Blink LESS_TERMCAP_mb = dominantEscapeCode; # Bold # tput bold LESS_TERMCAP_md = dominantEscapeCode + ""; # Standout start LESS_TERMCAP_so = bgDominantEscapeCode + backgroundEscapeCode; # Standout end # Turn off all attributes # tput sgr0 LESS_TERMCAP_se = ""; }; }; security.sudo.extraConfig = let lectureFile = builtins.toFile "sudoers.lecture" ''  ${dominantEscapeCode}"Bee" careful __ ${dominantEscapeCode}with sudo! // \ \\_/ // '''-.._.-'''-.._.. -(||)(') '''' ''; in '' Defaults lecture = always Defaults lecture_file = "${lectureFile}" Defaults:root,%wheel env_keep+=SSH_AUTH_SOCK ''; programs.command-not-found.enable = false; programs.nix-index = { enable = true; enableBashIntegration = true; enableZshIntegration = true; }; xdg.terminal-exec = { enable = true; settings.default = [ "Alacritty.desktop" ]; }; home-manager.users.minijackson = { programs.bash.enable = true; programs.bat = { enable = true; config = { theme = "TwoDark"; }; }; programs.pazi.enable = true; programs.eza = { enable = true; enableZshIntegration = true; }; home.sessionVariables = { CLICOLOR = "1"; EXA_COLORS = let spec = set: lib.concatStringsSep ":" (lib.mapAttrsToList (key: value: "${key}=${value}") set); in spec { }; }; }; home-manager.users.root = {...}: { programs.bash.enable = true; programs.pazi = lib.mkDefault config.home-manager.users.minijackson.programs.pazi; programs.bat = lib.mkDefault config.home-manager.users.minijackson.programs.bat; }; }