203 lines
7.6 KiB
Nix
203 lines
7.6 KiB
Nix
{ config
|
|
, lib
|
|
, pkgs
|
|
, meta
|
|
, ...
|
|
}:
|
|
let
|
|
sshKeys = [
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCZ87vi3BF+Mtb8Pv1Gqc9wyeXQCncJrg3lq4dwl15bkHUw4BlR2h1z8payBpGiKMnZy/NtWCclt3Jh562YhjLYHy9VtlTUlADGTvIPtczizZYPCzceC3fP1zCh2N8pUluR8J9Y+EvYWvSQkvSpwD8hhpLXeuOtFjjg0stLliI2YuVk4TJrXNmF8UNweeiBvaJW4Nye5no9h+IKTU8FPehB5BrWhTi9aTiTSxzgX3anOaTzRL1x+Lbeoo27AfZXwQJDlYHdg93csXyAP4l2g4lvtU98W3AlG7ZsipUgRWClfe4OBz1l2rT5F+l28daOFae+THOf2iG6kymesCeJiLBILWk45hmiA8Vv3XAdWxtqPJhQKrqtfm5GMm3cNZPc6N3CJe6gVw75eBCG1TjFhSVXmrHQgbmN0nFs6HU3+ghSnPmDI8A7DvWdRAKceWP39pb3g5kp/pTg+Lj+yFV2ll4/MvbN1wcSdW5azDAYLVnMCS6b8ikO16tpnLT1bbUN4M0= ceph-f4745d24-7f5e-11ef-b66f-14ac604688a3"
|
|
"sk-ssh-ed25519@openssh.com AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tAAAAIMggnmTj7KL409V2mtbPgKERbmyJAeCGBcyzxWW+arRZAAAABHNzaDo= yubikey-black"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAltYcKHavkQBJFlogNuT3JhX6ob30V3EYje4pOQBLgq gpg\\mira.kristipati@gmail.com"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEKT/rbUu87QyRD7L/QSr+lQMJz2m/mdqlqyCQEMwUJj gpgssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEw3/9inZC/MRPkuOF6T5LiFoOlgo5HZVIM36IC+hlzJ gpg\\mira-yubikey-black"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFdRtpQWCPyQQuzcwlbFukGZSlRTcfNzG840kMvbuPwr gpg\\kristipati.ajay@gmail.com"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIA0ikP2zdDBaJZ+aoE6jFz3UpCyHjz1r1QtuZTAvTpx zagreus25519"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJx1GWB1xkE+ECavUypp99FqmB4emiw+j2PpsxN8OXpa gpg\\mira@xn--2dkua.xn--tckwe"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINa3w6lweeP4XBokNCEJb86th9S81WQQ+LVVwCRpADap kristipati.ajay@gmail.com"
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOY3LSWsg9XK1rI7r2E+1tmX3Vi7W5opwkvqO6AsduZR gpg\\ArgentumCation"
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDA+Hrb45HQrcBe+gXQz4goWw0PBWdmAWMQ0RWrHXwvkWXM4KsXXrUP7qijEPPtDvJG3JL4Ifsbj+VIN7RprjE5wfvkIxlmnluUK6m2u8r8BlNDhFW5wjoA6PBuHhqYEKGbdqm5s+3WaZt8l2EERyIV87YJPbxNpwc175J3mWYWesvxSp/uNxcXEbOClr+jHXVxztno3XVoVXfpiFfjSsUgprQonbPYiKdfiLwFeXHI03vZlWfmEjERzBE+Ro5ireJ8JVNjKOgiw7aU6tQAyDKe2NkcyTV/tO/OdUSGlnO3Nc3qHHE9B0OTdoKPpiv5A1GdmJWub7UNJKzKB1y7eSGHU3X/FVMSCf9eZUmLIMxWcu1y6GrH1CHIpdqPk+rw6lfjkFg1dDL2f3CXoAwLIEFVaUzI+Gg7BC9Z2jUWTkaj7KoI4sN65PzqrNiJ5QfUjlGh1T0hgMB/QwGarPUilBljGUo7IQfcleDQF3Y5F05Amjr6isZ9ONpeOlCegUB6BIU= mira@epinephrine"
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDDD48bhv1AEPhbrGIKxf+XTSWMyxu2qBeaN4nZNZ0YMyinltHd6/VaDEZIzCvadBi3Rc9oTdJIEiXzcMTKj26DacuAuh+YPMvoA0I+lfT36q2SZmWIaVSREtfYYdluJtAyiLvFTkv6G0p5c/x1v9ovEXY3OYo1lnio7j0SmBpj4R9UQJYJhohJLtJCTdfutSuQVclhx/kiytdmFqsCDlCI0EaNxTFS861iTmm2ZjKm7o8ohevxPmnXAHizIBOAZDzbhJ61sPLKIOLWWgJNiK04YUDsBToZBOpeLEnNGkkKY++V4u+5tGI5L1RlVwoGSSB40aY5WLouFmeVE/f42nVuTIF2r/UDjsxeiUdivai+L5xNiqHa5JRWg4+at1lYWGdpineXOPYF6MmzkV+HQMvxC8YhG7ig7W+V7KCfKzMy8EEej+gIMxGFqr6CJQCDXZxqt5o0+Ksh7IMw8AEcrBszuMdJEE/7E/XUnYQHfGUNgFvFwKVzPjOSzbwHMfWPI1k= root@epinephrine"
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDm1kPy3bxyLX2nUwvETrsBbjmPDHEvKxmzn9dCoaa/C1tWttrvaXUhYZ6svftR7ofqjCailq1WHU4qkIlfz6Hxwq/mxZdOGRg3A2lzDgbJ5C9RSA8LIfYht2UhbqW40wHCEa1B6+bcwLHFWbDyoeT+NQO007lK4Tu1OY3nTNz3QFJgxAPtFuqQSTFpkxL8JZetQtc/KwJ5ofZBZ+nFc4PUstPE47uf4OEOaKY+fbDZ2bf8tmybGhVq6Oc+BQKij5usnQLTeN8XyVxPxGvXahXHx7ESnp//wCs6DrzoMHBbAVFVXS+w6ZzX2el9gCAcUeyZt8iu0zl9GxnVkpyQzHuuBgYON3orYaCdM5vRCnECFoK8XNwP45jNPzFxrIpSYeJ4tR4uhLxCfD3OHB/BQtOQsEdMJvnLnynzyWePeweTe2S1+ohg9zskyxt9c2rSxw8OlWdHds32JuWka6mTJCdfZgHaNY+Ppz1NEo5XYIfz9Jt0vevmaCVbBHo73Tyh6+k= norepinephrine"
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDmOATOG9brF/pBmMufk0LQkPQuLwgZAOZMeHCSdOpr+4Tap/mmqCHGtDL/JW6KsDfFpOFmdnSoeihVPGT3r/Mixt3cGOJlzoWXDt2bHyaEOsLz5B3MuYqBIXG3d2wvxharbmlVg3xyArSaCtuBZcopC5rXajnrPW4HxW+pxPC1NsL3RRGSF0edWdJVdX8oJJBsMMUzfeWh1bxEz2iLKMSYb6KPbQITwFTr+RuiEIppOW3n0zJko1wNG8oWTOgHdkmY4C4rUOk6KgW4qs19t7Mjlc7CnZa3XV7/0DcxERGsphpKvS7dpnEtOt7RaHUr/t0V3yLgl58MPbJKG6WSNIRaXZ0EPSlzz8k+4JjuEFdCDg7WjEDSZsBS9U4AyYQjlEwrkinT7g+LUVKYEDqb0hE539SwARvHZsOXrRgtA+Jh2CJIb/rRWfQRkgxpT9hKiBfYbSj8qbphUrbJ/g72UOQyhIbEW8fF9vmWY75NV/X2+EFZyF56ZhvLFk08sjGIF+s= u0_a441@localhost"
|
|
];
|
|
in
|
|
{
|
|
nix = {
|
|
# package = pkgs.nixFlakes;
|
|
optimise.automatic = true;
|
|
# gc.automatic = true;
|
|
extraOptions = ''
|
|
experimental-features = nix-command flakes
|
|
'';
|
|
};
|
|
nixpkgs = {
|
|
config = {
|
|
allowUnfree = true;
|
|
};
|
|
};
|
|
|
|
networking = {
|
|
hostName = meta.hostname;
|
|
};
|
|
# Set your time zone.
|
|
time.timeZone = "America/New_York";
|
|
|
|
i18n = {
|
|
defaultLocale = "en_US.UTF-8";
|
|
extraLocaleSettings = {
|
|
LC_ADDRESS = "en_US.UTF-8";
|
|
LC_IDENTIFICATION = "en_US.UTF-8";
|
|
LC_MEASUREMENT = "en_US.UTF-8";
|
|
LC_MONETARY = "en_US.UTF-8";
|
|
LC_NAME = "en_US.UTF-8";
|
|
LC_NUMERIC = "en_US.UTF-8";
|
|
LC_PAPER = "en_US.UTF-8";
|
|
LC_TELEPHONE = "en_US.UTF-8";
|
|
LC_TIME = "en_US.UTF-8";
|
|
};
|
|
};
|
|
fonts = {
|
|
fontDir.enable = true;
|
|
packages = with pkgs; [
|
|
atkinson-hyperlegible
|
|
nerd-fonts.monaspace
|
|
];
|
|
};
|
|
services =
|
|
{
|
|
openssh = {
|
|
# extraConfig = ''
|
|
# Match Address 192.168.1.1
|
|
# PasswordAuthentication no
|
|
# Match Address 192.168.1.0/24
|
|
# PasswordAuthentication yes
|
|
# Match All
|
|
# PasswordAuthentication no
|
|
# '';
|
|
enable = true;
|
|
openFirewall = true;
|
|
authorizedKeysInHomedir = true;
|
|
settings = {
|
|
PermitRootLogin = lib.mkForce "prohibit-password";
|
|
PasswordAuthentication = false;
|
|
};
|
|
allowSFTP = true;
|
|
};
|
|
tuptime.enable = true;
|
|
tuptime.timer.enable = true;
|
|
}
|
|
// lib.optionalAttrs
|
|
((builtins.match ".*-linux" pkgs.stdenv.hostPlatform.system)
|
|
!= null)
|
|
{
|
|
avahi = {
|
|
enable = true;
|
|
ipv4 = true;
|
|
ipv6 = true;
|
|
nssmdns6 = true;
|
|
nssmdns4 = true;
|
|
openFirewall = true;
|
|
};
|
|
# smartd
|
|
smartd.enable = lib.mkDefault true;
|
|
}
|
|
# Mac Services
|
|
// lib.optionalAttrs
|
|
((builtins.match ".*-darwin" pkgs.stdenv.hostPlatform.system)
|
|
!= null)
|
|
{
|
|
nix-daemon.enable = true;
|
|
};
|
|
users = {
|
|
groups.dockremap = { };
|
|
groups."mira".gid = 1000;
|
|
users = {
|
|
root.openssh.authorizedKeys.keys = sshKeys;
|
|
mira = {
|
|
isNormalUser = true;
|
|
group = "mira";
|
|
uid = 1000;
|
|
extraGroups = [ "wheel" "docker" "dockremap" "audio" ];
|
|
packages = with pkgs; [
|
|
firefox
|
|
tree
|
|
];
|
|
shell = pkgs.zsh;
|
|
openssh.authorizedKeys.keys = sshKeys;
|
|
};
|
|
anish = {
|
|
isNormalUser = true;
|
|
extraGroups = [ "wheel" "docker" "dockremap" ];
|
|
shell = pkgs.zsh;
|
|
openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF6+YE7GteMK6Lmo0oW266LmaD6jwQMnCxwv0/V9zqKR akristipati6@gatech.edu" ];
|
|
};
|
|
};
|
|
};
|
|
environment.systemPackages = with pkgs; lib.lists.unique [
|
|
|
|
# zellij
|
|
bat
|
|
brightnessctl
|
|
btdu
|
|
btop
|
|
btrbk
|
|
cargo
|
|
chezmoi
|
|
cifs-utils
|
|
delta
|
|
difftastic
|
|
duf
|
|
fastfetch
|
|
fd
|
|
file
|
|
fzf
|
|
gdu
|
|
ghostty
|
|
glibcLocales
|
|
hyfetch
|
|
killall
|
|
lsd
|
|
lsof
|
|
mcfly
|
|
neovim
|
|
nushell
|
|
powertop
|
|
python3
|
|
ripgrep
|
|
sheldon
|
|
starship
|
|
statix
|
|
tealdeer
|
|
unzip
|
|
viddy
|
|
vivid
|
|
wget
|
|
xonsh
|
|
zoxide
|
|
zsh
|
|
] ++ [
|
|
alejandra
|
|
lua-language-server
|
|
stylua
|
|
];
|
|
programs = {
|
|
tmux = {
|
|
enable = true;
|
|
shortcut = "a";
|
|
keyMode = "vi";
|
|
aggressiveResize = true;
|
|
};
|
|
git = {
|
|
enable = true;
|
|
lfs.enable = true;
|
|
};
|
|
lazygit.enable = true;
|
|
yazi.enable = true;
|
|
zsh.enable = true;
|
|
thefuck.enable = true;
|
|
# direnv.enable = true;
|
|
neovim.enable = true;
|
|
starship.enable = true;
|
|
fzf.fuzzyCompletion = true;
|
|
};
|
|
}
|