151 lines
3.3 KiB
Nix
Executable file
151 lines
3.3 KiB
Nix
Executable file
{
|
|
inputs,
|
|
outputs,
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
pkgs-unstable,
|
|
...
|
|
}: {
|
|
imports = [
|
|
../modules/git.nix
|
|
../modules/bat.nix
|
|
../modules/fish.nix
|
|
../modules/editor/helix.nix
|
|
# ../modules/editor/vscodium.nix
|
|
|
|
../modules/btop.nix
|
|
../modules/term/ghostty.nix
|
|
../modules/term/foot.nix
|
|
# ../modules/term/rio.nix
|
|
../modules/firefox.nix
|
|
|
|
#../modules/wm/hypr/hypridle.nix
|
|
../modules/wm/hypr/hyprlock.nix
|
|
../modules/kanshi.nix
|
|
../modules/ags
|
|
];
|
|
|
|
home = {
|
|
username = "me";
|
|
homeDirectory = "/home/me";
|
|
|
|
shellAliases = {
|
|
brip = "batgrep"; # bat + ripgrep
|
|
man = "batman"; # bat + man
|
|
};
|
|
|
|
sessionVariables = {
|
|
NIX_SHELL_PRESERVE_PROMPT = 1;
|
|
};
|
|
|
|
pointerCursor = {
|
|
gtk.enable = true;
|
|
# x11.enable = true # dont enable since im on hyprland
|
|
package = pkgs.bibata-cursors;
|
|
name = "Bibata-Modern-Ice";
|
|
size = 16;
|
|
};
|
|
};
|
|
|
|
gtk = {
|
|
enable = true;
|
|
font.name = "Victor Mono SemiBold 12";
|
|
theme = {
|
|
name = "Dracula";
|
|
package = pkgs.dracula-theme;
|
|
};
|
|
iconTheme = {
|
|
name = "kora";
|
|
package = pkgs.kora-icon-theme;
|
|
};
|
|
# TODO: use a variable to mirror this cursor size
|
|
# with the `home.pointerCurser.size`
|
|
cursorTheme = {
|
|
package = pkgs.bibata-cursors;
|
|
name = "Bibata-Modern-Ice";
|
|
size = 16;
|
|
};
|
|
};
|
|
|
|
qt = {
|
|
enable = true;
|
|
platformTheme.name = "gtk2";
|
|
style.name = "gtk2";
|
|
};
|
|
|
|
programs = {
|
|
# these are both required for home-manager to work
|
|
home-manager.enable = true;
|
|
|
|
zsh = {
|
|
enable = true;
|
|
enableCompletion = true;
|
|
autosuggestion.enable = true;
|
|
syntaxHighlighting.enable = true;
|
|
|
|
history = {
|
|
size = 10000;
|
|
ignoreAllDups = true;
|
|
path = "$HOME/.zsh_history";
|
|
ignorePatterns = [
|
|
"rm *"
|
|
];
|
|
};
|
|
};
|
|
|
|
# set ssh profiles
|
|
# NOTE: (IMPORTANT) this DOES NOT start the ssh-agent
|
|
# for that you need to use `services.ssh-agent.enable`
|
|
ssh = {
|
|
enable = true;
|
|
forwardAgent = false;
|
|
addKeysToAgent = "no";
|
|
|
|
matchBlocks = {
|
|
hyrule = {
|
|
hostname = "imbored.dev";
|
|
user = "ae";
|
|
port = 22;
|
|
identityFile = "~/.ssh/id_hyrule";
|
|
setEnv = {
|
|
TERM = "linux";
|
|
};
|
|
};
|
|
subspace = {
|
|
hostname = "imbored.dev";
|
|
user = "subspace";
|
|
port = 22;
|
|
identityFile = "~/.ssh/id_subspace";
|
|
};
|
|
dead = {
|
|
hostname = "deadlyserver.com";
|
|
user = "emile";
|
|
port = 29843;
|
|
identityFile = "~/.ssh/id_deadlyserver";
|
|
setEnv = {
|
|
TERM = "xterm-256color";
|
|
};
|
|
};
|
|
youcue = {
|
|
hostname = "moss.labs.eait.uq.edu.au";
|
|
user = "s4740056";
|
|
port = 22;
|
|
identityFile = "~/.ssh/id_youcue";
|
|
setEnv = {
|
|
TERM = "xterm-256color";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
# enable OpenSSH private key agent
|
|
services.ssh-agent.enable = true;
|
|
# the ssh-agent won't set this for itself...
|
|
systemd.user.sessionVariables.SSH_AUTH_SOCK = "$XDG_RUNTIME_DIR/ssh-agent";
|
|
# Nicely reload system units when changing configs
|
|
systemd.user.startServices = "sd-switch";
|
|
|
|
home.stateVersion = "24.05"; # don't change this
|
|
}
|