dotfiles/homes/me/default.nix

136 lines
3.1 KiB
Nix
Raw Normal View History

2024-10-30 19:45:26 +10:00
{
inputs,
outputs,
lib,
config,
pkgs,
...
2024-11-07 17:37:15 +10:00
}: {
# TODO: unset this
2024-10-30 19:45:26 +10:00
nixpkgs = {
2024-10-30 23:25:57 +10:00
config.allowUnfree = true;
2024-10-30 19:45:26 +10:00
};
2024-10-30 23:25:57 +10:00
imports = [
../modules/git.nix
../modules/bat.nix
../modules/fish.nix
../modules/editor/helix.nix
# ../modules/editor/vscodium.nix
2025-02-21 18:48:51 +10:00
../modules/btop.nix
../modules/term/ghostty.nix
../modules/term/rio.nix
../modules/firefox.nix
2025-02-19 12:14:25 +10:00
#../modules/hypr/hypridle.nix
../modules/hypr/hyprlock.nix
../modules/kanshi.nix
2025-02-11 15:47:56 +10:00
../modules/ags
2024-10-30 23:25:57 +10:00
];
2024-10-30 19:45:26 +10:00
home = {
username = "me";
2024-11-07 17:37:15 +10:00
homeDirectory = "/home/me";
shellAliases = {
brip = "batgrep"; # bat + ripgrep
man = "batman"; # bat + man
};
2024-11-07 17:37:15 +10:00
pointerCursor = {
gtk.enable = true;
# x11.enable = true # dont enable since im on hyprland
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Ice";
size = 16;
};
2024-10-30 19:45:26 +10:00
};
2024-11-08 04:08:30 +10:00
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";
};
2024-10-30 19:45:26 +10:00
programs = {
# these are both required for home-manager to work
home-manager.enable = true;
2024-11-07 17:37:15 +10:00
2025-02-21 18:48:51 +10:00
# set ssh profiles
# (all we need is hyrule, everything else is through wishlist)
# NOTE: (IMPORTANT) this DOES NOT start the ssh-agent
2025-02-19 12:14:25 +10:00
# for that you need to use `services.ssh-agent.enable`
2025-02-21 18:48:51 +10:00
ssh = {
enable = true;
forwardAgent = true;
addKeysToAgent = "yes"; # always add keys to ssh-agent
matchBlocks = {
hyrule = {
hostname = "imbored.dev";
user = "ae";
port = 22;
2025-02-19 12:14:25 +10:00
identityFile = "~/.ssh/id_hyrule";
setEnv = {
TERM = "linux";
};
2025-02-19 12:14:25 +10:00
};
subspace = {
hostname = "imbored.dev";
user = "subspace";
port = 22;
identityFile = "~/.ssh/id_subspace";
2025-02-21 18:48:51 +10:00
};
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";
};
};
2025-02-21 18:48:51 +10:00
};
};
2024-11-07 17:37:15 +10:00
};
2024-10-30 19:45:26 +10:00
2025-02-21 18:48:51 +10:00
# 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";
2024-11-04 11:59:14 +10:00
# Nicely reload system units when changing configs
systemd.user.startServices = "sd-switch";
home.stateVersion = "24.05"; # don't change this
2024-10-30 19:45:26 +10:00
}