nixos_config/home/alisceon.nix

172 lines
4.6 KiB
Nix
Raw Normal View History

2025-07-23 19:46:26 +02:00
{ pkgs, config, hostName, lib, ... }: {
2025-07-21 23:55:59 +02:00
home.username = "alisceon";
home.homeDirectory = "/home/alisceon";
home.stateVersion = "24.05";
2025-07-23 13:12:09 +02:00
manual.manpages.enable = true;
2025-07-20 17:46:39 +02:00
2025-07-23 13:12:09 +02:00
programs = {
fish = {
enable = true;
# Disable greeting
interactiveShellInit = ''
set fish_greeting
'';
preferAbbrs = true;
shellAbbrs = {
ls = "exa";
ll = "exa -lah";
grep = "rg";
cat = "bat";
tsla-fan = "ipmitool -H 10.30.0.3 -U ADMIN -P ADMIN raw 0x30 0x70 0x66 0x01 0x0";
2025-07-24 10:48:56 +02:00
# NixOS commands
nixoss = "sudo nixos-rebuild switch --flake .#${hostName}";
nixos-main = "git checkout main && git pull && sudo nixos-rebuild switch --flake .#${hostName}";
nixossr = "sudo nixos-rebuild switch --flake .#${hostName} && reboot";
nixost = "sudo nixos-rebuild build-vm --flake .#${hostName}";
# Development commands
devt = "devenv test";
devs = "devenv shell";
devu = "devenv up";
devi = "nix flake init -t path:/home/alisceon/Templates/devenv#python";
2025-07-23 13:12:09 +02:00
pypod = "podman run --rm -it --network host -v '.:/run' -w '/run' python /run/";
2025-07-24 10:48:56 +02:00
# Tower commands
2025-07-23 19:46:26 +02:00
weboot = "nix shell nixpkgs#efibootmgr -c sudo efibootmgr -n 0000 && reboot";
2025-07-23 13:12:09 +02:00
};
2025-07-23 19:46:19 +02:00
}; # end fish
2025-07-23 13:12:09 +02:00
git = {
enable = true;
userName = "alisceon";
userEmail = "alisceon@protonmail.com";
extraConfig = {
push = { autoSetupRemote = true; };
2025-07-24 10:48:56 +02:00
init.defaultBranch = "main";
2025-07-23 13:12:09 +02:00
};
2025-07-23 19:46:19 +02:00
}; # end git
2025-07-23 13:12:09 +02:00
vscode.enable = true;
firefox = {
enable = true;
nativeMessagingHosts = [
pkgs.gnome-browser-connector
];
2025-07-23 19:46:19 +02:00
}; # end firefox
2025-07-23 13:12:09 +02:00
bat.enable = true;
ssh = {
enable = true;
matchBlocks = {
"alisceon.com" = {
hostname = "alisceon.com";
user = "opc";
};
"miscbox" = {
hostname = "10.1.0.11";
proxyJump = "alisceon.com";
user = "opc";
};
"blogbox" = {
hostname = "10.1.0.10";
proxyJump = "alisceon.com";
user = "ubuntu";
};
"filurbox" = {
hostname = "oci.malice.zone";
user = "opc";
};
"dnspi" = {
hostname = "10.40.0.2";
user = "pi";
};
"tsla-exporter-bridge" = {
hostname = "alma02.lab.the.malice.zone";
user = "root";
};
"tsla-runner-boi" = {
hostname = "alma03.lab.the.malice.zone";
user = "root";
};
};
2025-07-23 19:46:19 +02:00
}; # end ssh
2025-07-24 10:48:56 +02:00
direnv = {
enable = true;
silent = true;
}; # end direnv
2025-07-23 19:46:19 +02:00
}; # end programs
2025-07-21 23:55:59 +02:00
2025-07-23 19:46:26 +02:00
# obsidian special case
programs.obsidian.enable = true;
# overide broken config
xdg.configFile."obsidian/obsidian.json".source = lib.mkForce ./conf/obsidian.json;
2025-07-21 23:55:59 +02:00
home.packages = with pkgs; [
signal-desktop
discord
eza
fd
ripgrep
];
2025-07-23 13:12:09 +02:00
xdg = {
enable = true;
userDirs.enable = true;
mime.enable = true;
};
2025-07-21 23:55:59 +02:00
services.syncthing = {
enable = true;
};
2025-07-23 19:46:19 +02:00
dconf.enable = true;
dconf.settings = {
"org/gnome/desktop/background" = {
color-shading-type = "solid";
picture-options = "zoom";
primary-color = "#000000000000";
secondary-color = "#000000000000";
2025-07-23 19:46:26 +02:00
picture-uri = "file:///home/alisceon/Pictures/system/bg.png";
picture-uri-dark = "file:///home/alisceon/Pictures/system/bg.png";
};
"org/gnome/mutter" = {
auto-maximize = true;
2025-07-23 19:46:19 +02:00
};
"org/gnome/desktop/interface" = {
accent-color = "red";
color-scheme = "prefer-dark";
};
"org/gnome/shell" = {
disable-user-extensions = false;
enabled-extensions = [ pkgs.gnomeExtensions.ddterm.extensionUuid ];
favorite-apps = [
"org.gnome.Nautilus.desktop"
"firefox.desktop"
2025-07-23 19:46:26 +02:00
"code.desktop"
2025-07-23 19:46:19 +02:00
"obsidian.desktop"
"discord.desktop"
2025-07-23 19:46:26 +02:00
"signal.desktop"
];
};
"org/gnome/shell/keybindings" = {
show-screenshot-ui = [ "<Shift><Super>s" ];
};
"org/gnome/settings-daemon/plugins/media-keys" = {
custom-keybindings = [
"/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/"
2025-07-23 19:46:19 +02:00
];
};
2025-07-23 19:46:26 +02:00
"org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
name = "GNOME Console";
command = "kgx";
binding = "<Shift><Super>Return";
};
2025-07-23 19:46:19 +02:00
"com/github/amezin/ddterm" = {
ddterm-toggle-hotkey = [ "<Super>Return" ];
2025-07-23 19:46:26 +02:00
window-monitor = "focus";
hide-when-focus-lost = true;
hide-window-on-esc = true;
tab-policy = "never";
panel-icon-type = "none";
2025-07-23 19:46:19 +02:00
};
}; # end dconf.settings
} # end file