mirror of
https://codeberg.org/leana8959/.files.git
synced 2025-12-06 14:49:14 +00:00
163 lines
4 KiB
Nix
163 lines
4 KiB
Nix
# Entry point to cherry pick modules
|
|
let
|
|
sources = import ../../npins;
|
|
|
|
hostname = "iron";
|
|
username = "leana";
|
|
in
|
|
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
inherit (lib.modules) mkAliasOptionModule;
|
|
in {
|
|
imports = [
|
|
#
|
|
# Shorthands
|
|
#
|
|
(mkAliasOptionModule ["me"] ["users" "users" username])
|
|
(mkAliasOptionModule ["hm"] ["home-manager" "users" username])
|
|
|
|
#
|
|
# hostname
|
|
#
|
|
{_module.args = {inherit hostname;};}
|
|
|
|
#
|
|
# nixpkgs
|
|
#
|
|
{
|
|
# affect the generated nix.conf, doesn't need to be turned off during nixos-install
|
|
nix = {
|
|
distributedBuilds = true;
|
|
settings.builders-use-substitutes = true;
|
|
};
|
|
|
|
nixpkgs = {
|
|
overlays =
|
|
map import
|
|
[
|
|
../overlays/agenix.nix
|
|
../overlays/disko.nix
|
|
../overlays/nur.nix
|
|
../overlays/nix-tree.nix
|
|
../overlays/nil.nix
|
|
../overlays/dix.nix
|
|
|
|
../packages/overlay.nix
|
|
]
|
|
# use lix everywhere and wrap it with nom
|
|
++ [
|
|
(import (sources.lix-module + "/overlay.nix") {inherit (sources) lix;})
|
|
(import ../overlays/nix-monitored.nix)
|
|
];
|
|
|
|
# Set NIX_PATH and flake registry at the same time
|
|
# https://github.com/NixOS/nixpkgs/pull/254405
|
|
flake.source = sources.nixpkgs;
|
|
};
|
|
|
|
nix.package = pkgs.nix-monitored;
|
|
|
|
system.nixos.version = lib.substring 0 8 sources.nixpkgs.revision;
|
|
}
|
|
|
|
#
|
|
# NixOS modules
|
|
#
|
|
./iron/nixos/hardware-configuration.nix # generated
|
|
./iron/nixos/fs.nix
|
|
|
|
./iron/nixos/battery.nix
|
|
|
|
./iron/nixos/connectivity.nix
|
|
./iron/nixos/secure_dns.nix
|
|
./iron/nixos/input.nix
|
|
|
|
./iron/nixos/misc.nix
|
|
|
|
./iron/nixos/display.nix
|
|
|
|
./iron/nixos/locale.nix
|
|
./iron/nixos/programs.nix
|
|
|
|
../nixosModules/common/disable-command-not-found.nix
|
|
../nixosModules/common/network.nix
|
|
../nixosModules/common/sudo-conf.nix
|
|
../nixosModules/common/system-nixconf.nix
|
|
|
|
../nixosModules/extra/leana.nix
|
|
|
|
#
|
|
# Extern modules
|
|
#
|
|
(sources.disko + "/module.nix")
|
|
../disko/iron/btrfs.nix
|
|
|
|
(sources.agenix + "/modules/age.nix")
|
|
|
|
../nixosModules/extra/macbook-pro-radeon.nix
|
|
../nixosModules/extra/macbook-swap-cmd-opt.nix
|
|
../nixosModules/extra/macbook-swap-fn-ctrl.nix
|
|
../nixosModules/extra/macbook-broacom-b43.nix
|
|
|
|
#
|
|
# home-manager
|
|
#
|
|
(sources.home-manager + "/nixos")
|
|
{
|
|
home-manager = {
|
|
useGlobalPkgs = true;
|
|
useUserPackages = true;
|
|
sharedModules = [{home.stateVersion = lib.mkDefault config.system.stateVersion;}];
|
|
};
|
|
|
|
hm.imports = [
|
|
#
|
|
# hostname
|
|
#
|
|
{_module.args = {inherit hostname;};}
|
|
|
|
#
|
|
# home modules
|
|
#
|
|
./iron/home/programs.nix
|
|
|
|
../homeModules/common/btop
|
|
../homeModules/common/fish
|
|
../homeModules/common/starship
|
|
../homeModules/common/tmux
|
|
../homeModules/common/vim
|
|
../homeModules/common/direnv.nix
|
|
../homeModules/common/fzf.nix
|
|
../homeModules/common/git.nix
|
|
../homeModules/common/gpg.nix
|
|
../homeModules/common/leana.nix
|
|
../homeModules/common/locale.nix
|
|
../homeModules/common/lazygit.nix
|
|
../homeModules/common/packages.nix
|
|
../homeModules/common/password-store.nix
|
|
../homeModules/common/tealdeer.nix
|
|
../homeModules/common/user-nixconf.nix
|
|
|
|
../homeModules/extra/tmux-fish-integration.nix
|
|
|
|
#
|
|
# Extern modules
|
|
#
|
|
(sources.agenix + "/modules/age-home.nix")
|
|
];
|
|
}
|
|
|
|
#
|
|
# Secrets
|
|
#
|
|
{
|
|
age.secrets = {
|
|
wpa_password.file = "${../secrets/wpa_password.age}";
|
|
};
|
|
}
|
|
];
|
|
}
|