1
Fork 0
satellite/home/global/default.nix

79 lines
2 KiB
Nix
Raw Normal View History

2023-03-12 05:24:25 +01:00
{ inputs, lib, pkgs, config, outputs, ... }:
2023-01-10 02:38:06 +01:00
let
2023-05-28 02:00:10 +02:00
# {{{ Imports
2023-01-10 02:38:06 +01:00
imports = [
2023-03-12 05:24:25 +01:00
inputs.stylix.homeManagerModules.stylix
inputs.homeage.homeManagerModules.homeage
inputs.nur.nixosModules.nur
2023-04-27 01:08:20 +02:00
inputs.impermanence.nixosModules.home-manager.impermanence
2023-05-24 03:17:09 +02:00
inputs.hyprland.homeManagerModules.default
2023-01-10 02:38:06 +01:00
../features/cli
../features/neovim
2023-06-09 13:17:34 +02:00
../features/persistence.nix
2023-05-28 05:24:36 +02:00
../../common
2023-01-10 02:38:06 +01:00
];
2023-05-28 02:00:10 +02:00
# }}}
# {{{ Overlays
overlays = [
2023-03-30 02:54:57 +02:00
# inputs.neovim-nightly-overlay.overlay
inputs.agenix.overlay
];
2023-05-28 02:00:10 +02:00
# }}}
2023-01-10 02:38:06 +01:00
in
{
# Import all modules defined in modules/home-manager
imports = builtins.attrValues outputs.homeManagerModules ++ imports;
2023-01-10 02:38:06 +01:00
2023-05-28 02:00:10 +02:00
# {{{ Nixpkgs
2023-01-10 02:38:06 +01:00
nixpkgs = {
# Add all overlays defined in the overlays directory
overlays = builtins.attrValues outputs.overlays ++ overlays;
2023-01-10 02:38:06 +01:00
# Allow unfree packages
config = {
allowUnfree = true;
allowUnfreePredicate = (_: true);
};
};
2023-05-28 02:00:10 +02:00
# }}}
2023-01-10 02:38:06 +01:00
# Nicely reload system units when changing configs
systemd.user.startServices = "sd-switch";
# Enable the home-manager and git clis
programs = {
home-manager.enable = true;
git.enable = true;
};
# Set reasonable defaults for some settings
home = {
username = lib.mkDefault "adrielus";
homeDirectory = lib.mkDefault "/home/${config.home.username}";
stateVersion = lib.mkDefault "22.11";
};
# Where homeage should look for our ssh key
homeage.identityPaths = [ "~/.ssh/id_ed25519" ];
2023-04-27 01:08:20 +02:00
# Allow root to read persistent files from this user.
home.persistence."/persist/home/adrielus".allowOther = true;
# Set the xdg env vars
xdg.enable = true;
2023-05-24 03:17:09 +02:00
2023-06-09 13:17:34 +02:00
# {{{ Xdg user directories
2023-05-24 03:17:09 +02:00
xdg.userDirs = {
enable = lib.mkDefault true;
2023-06-09 13:17:34 +02:00
createDirectories = lib.mkDefault false;
2023-05-24 03:17:09 +02:00
extraConfig.XDG_SCREENSHOTS_DIR = "${config.xdg.userDirs.pictures}/Screenshots";
};
2023-05-28 02:00:10 +02:00
# }}}
# {{{ Ad-hoc stylix targets
stylix.targets.gtk.enable = true;
# TODO: is this useful outside xorg?
stylix.targets.xresources.enable = true;
# }}}
2023-01-10 02:38:06 +01:00
}