91 lines
1.8 KiB
Nix
91 lines
1.8 KiB
Nix
{ config, pkgs, ... }:
|
|
|
|
let
|
|
nix-locate = config.inputs.nix-locate.defaultPackage.${config.currentSystem};
|
|
in {
|
|
imports = [
|
|
./flakes.nix
|
|
./pia.nix
|
|
./zerotier.nix
|
|
./auto-update.nix
|
|
./hosts.nix
|
|
./boot
|
|
./server
|
|
./pc
|
|
];
|
|
|
|
nix.flakes.enable = true;
|
|
|
|
system.stateVersion = "21.11";
|
|
|
|
networking.useDHCP = false;
|
|
|
|
networking.firewall.enable = true;
|
|
networking.firewall.allowPing = true;
|
|
|
|
time.timeZone = "America/New_York";
|
|
i18n.defaultLocale = "en_US.UTF-8";
|
|
|
|
services.openssh.enable = true;
|
|
programs.mosh.enable = true;
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
wget
|
|
kakoune
|
|
htop
|
|
git git-lfs
|
|
dnsutils
|
|
tmux
|
|
nethogs
|
|
iotop
|
|
pciutils
|
|
usbutils
|
|
killall
|
|
screen
|
|
micro
|
|
helix
|
|
lm_sensors
|
|
nix-locate
|
|
];
|
|
|
|
nixpkgs.config.allowUnfree = true;
|
|
|
|
users.mutableUsers = false;
|
|
users.users.googlebot = {
|
|
isNormalUser = true;
|
|
extraGroups = [
|
|
"wheel"
|
|
"dialout" # serial
|
|
];
|
|
shell = pkgs.fish;
|
|
openssh.authorizedKeys.keys = (import ./ssh.nix).users;
|
|
hashedPassword = "$6$TuDO46rILr$gkPUuLKZe3psexhs8WFZMpzgEBGksE.c3Tjh1f8sD0KMC4oV89K2pqAABfl.Lpxu2jVdr5bgvR5cWnZRnji/r/";
|
|
uid = 1000;
|
|
};
|
|
nix.trustedUsers = [ "root" "googlebot" ];
|
|
|
|
nix.gc.automatic = true;
|
|
|
|
programs.command-not-found.enable = false;
|
|
|
|
programs.fish = {
|
|
enable = true;
|
|
|
|
shellInit = let
|
|
wrapper = pkgs.writeScript "command-not-found" ''
|
|
#!${pkgs.bash}/bin/bash
|
|
source ${nix-locate}/etc/profile.d/command-not-found.sh
|
|
command_not_found_handle "$@"
|
|
'';
|
|
in ''
|
|
# use nix-locate for command-not-found functionality
|
|
function __fish_command_not_found_handler --on-event fish_command_not_found
|
|
${wrapper} $argv
|
|
end
|
|
|
|
# disable annoying fish shell greeting
|
|
set fish_greeting
|
|
'';
|
|
};
|
|
}
|