NOflake/users/vy/HOME.nix

117 lines
2.9 KiB
Nix
Raw Normal View History

2025-03-08 22:35:46 -08:00
{
config,
pkgs,
inputs,
lib,
...
}: let
programs = {
bat = {
enable = true;
config = {
theme = "gruvbox-dark";
};
};
bottom = {
enable = true;
settings = {
color = "gruvbox";
flags = {
battery =
# if lib.strings.hasPrefix "NOlaptop" (builtins.readFile /etc/hostname)
# then true
# else false;
true;
hide_time = true;
enable_gpu = true;
};
};
};
nushell = {
enable = true;
configFile.source = ./nushell/config.nu;
envFile.source = ./nushell/env.nu;
# extraConfig = builtins.readFile ./nushell/stuff.nu;
extraConfig = lib.concatStrings (map builtins.readFile (map (x: ./nushell/extras/. + x) (map (x: "/" + x) (builtins.attrNames (builtins.readDir ./nushell/extras)))));
};
starship = {
enable = true;
enableNushellIntegration = true;
settings = builtins.fromTOML (builtins.readFile ./starship.toml);
};
wezterm = {
enable = true;
extraConfig = builtins.readFile ./wezterm.lua;
};
zellij = {
enable = true;
settings = {};
};
zoxide = {
enable = true;
enableNushellIntegration = true;
};
};
# services.syncthing = {
# enable = true;
# # user = "tao";
# # dataDir = "/home/tao/sync";
# # configDir = "/home/tao/.config/syncthing";
# overrideDevices = true;
# overrideFolders = true;
# # openDefaultPorts = true;
# settings = {
# devices = {
# # we do a lil anti-patterns https://github.com/ryantm/agenix?tab=readme-ov-file#builtinsreadfile-anti-pattern
# # bootstrap by commenting out devices first and rebuild switch impurely
# "nocomputer".id = builtins.readFile config.age.secrets.syncthing-NOcomputer.path;
# "nolaptop".id = builtins.readFile config.age.secrets.syncthing-NOlaptop.path;
# "uwuraid".id = builtins.readFile config.age.secrets.syncthing-uwuraid.path;
# };
# folders = let
# devs = [
# "nocomputer"
# "nolaptop"
# "uwuraid"
# ];
# in {
# # "documents" = {
# # path = "/home/tao/documents";
# # devices = devs;
# # };
# "pictures" = {
# path = "/home/tao/pictures";
# devices = devs;
# };
# "projects" = {
# path = "/home/tao/projects";
# devices = devs;
# };
# "school" = {
# path = "/home/tao/school";
# devices = devs;
# };
# "sync" = {
# path = "/home/tao/sync";
# devices = devs;
# };
# # "work" = {
# # path = "/home/tao/work";
# # devices = devs;
# # };
# };
# };
# };
home.username = "vy";
home.homeDirectory = "/home/vy";
home.stateVersion = "23.11";
}