nixos-configs/common/default.nix

107 lines
1.9 KiB
Nix
Raw Normal View History

{ config
, home-manager
, lib
, nixpkgs
, nixpkgs-wayland
, nh
, nur
, nix-melt
, nurl
, pkgs
, ...
}: {
2023-10-15 14:43:23 -04:00
imports = [
./cachix.nix
2023-10-15 14:43:23 -04:00
home-manager.nixosModules.default
nh.nixosModules.default
2023-10-15 16:05:28 -04:00
./modules/programs.nix
2023-10-15 16:47:26 -04:00
./modules/locale.nix
./overlays
./hostvars.nix
2023-10-15 14:43:23 -04:00
];
nixpkgs.config.allowUnfree = true;
nix = {
# Edit nix.conf
settings = {
experimental-features = [ "nix-command" "flakes" ];
keep-outputs = true;
keep-derivations = true;
auto-optimise-store = true;
warn-dirty = false;
};
# Minimize dowloads of indirect nixpkgs flakes
registry.nixpkgs = {
flake = nixpkgs;
exact = false;
};
};
nixpkgs.overlays = [ nixpkgs-wayland.overlay ];
nh = {
enable = true;
# weekly cleanup
clean = {
enable = true;
extraArgs = "--keep-since 30d";
};
};
environment.variables.FLAKE = "/home/matt/.nix";
services.xserver = {
layout = "ca";
xkbVariant = "multix";
};
2023-10-15 14:30:30 -04:00
home-manager.users = let
default = {
imports = [
2023-10-15 14:43:23 -04:00
nur.hmModules.nur
2023-10-15 14:37:57 -04:00
./modules/bash
2023-10-18 14:54:24 -04:00
./modules/git.nix
2023-10-15 16:41:34 -04:00
./modules/neovim
2023-10-18 14:54:24 -04:00
./modules/tmux.nix
./hostvars.nix
({ osConfig, ... }: {
services.hostvars = osConfig.services.hostvars;
})
2023-10-15 14:30:30 -04:00
];
home.packages = [
nix-melt.packages.x86_64-linux.default
nurl.packages.x86_64-linux.default
] ++
(with config.nur.repos.rycee; [
mozilla-addons-to-nix
]) ++
(with pkgs.nodePackages; [
undollar
]) ++
(with pkgs; [
2023-10-15 16:47:26 -04:00
dracula-theme
neofetch
progress
wget
tree
mosh
rsync
killall
imagemagick
usbutils
]);
2023-10-15 14:30:30 -04:00
home.stateVersion = lib.mkDefault "23.05";
};
in {
root = default;
matt = default;
};
2023-10-15 14:43:23 -04:00
}