iron: format configuration

This commit is contained in:
Primrose 2025-12-08 23:54:56 +08:00
parent eb750b585d
commit 6783ce6f72
Signed by: primrose
GPG key ID: 4E887A4CA9714ADA
8 changed files with 180 additions and 160 deletions

View file

@ -5,25 +5,27 @@ let
hostname = "iron";
username = "leana";
in
{
{
config,
lib,
pkgs,
...
}: let
}:
let
inherit (lib.modules) mkAliasOptionModule;
in {
in
{
imports = [
#
# Shorthands
#
(mkAliasOptionModule ["me"] ["users" "users" username])
(mkAliasOptionModule ["hm"] ["home-manager" "users" username])
(mkAliasOptionModule [ "me" ] [ "users" "users" username ])
(mkAliasOptionModule [ "hm" ] [ "home-manager" "users" username ])
#
# hostname
#
{_module.args = {inherit hostname;};}
{ _module.args = { inherit hostname; }; }
#
# nixpkgs
@ -37,8 +39,7 @@ in
nixpkgs = {
overlays =
map import
[
map import [
../overlays/agenix.nix
../overlays/disko.nix
../overlays/nur.nix
@ -50,7 +51,7 @@ in
]
# use lix everywhere and wrap it with nom
++ [
(import (sources.lix-module + "/overlay.nix") {inherit (sources) lix;})
(import (sources.lix-module + "/overlay.nix") { inherit (sources) lix; })
(import ../overlays/nix-monitored.nix)
];
@ -110,14 +111,14 @@ in
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
sharedModules = [{home.stateVersion = lib.mkDefault config.system.stateVersion;}];
sharedModules = [ { home.stateVersion = lib.mkDefault config.system.stateVersion; } ];
};
hm.imports = [
#
# hostname
#
{_module.args = {inherit hostname;};}
{ _module.args = { inherit hostname; }; }
#
# home modules
@ -159,4 +160,4 @@ in
};
}
];
}
}

View file

@ -3,14 +3,17 @@
lib,
config,
...
}: {
}:
{
home.sessionPath = [
"${config.home.homeDirectory}/.local/bin"
];
home.sessionVariables = let
home.sessionVariables =
let
fishCfg = config.programs.fish;
in {
in
{
"SHELL" = lib.mkIf fishCfg.enable (lib.getExe fishCfg.package);
};

View file

@ -2,8 +2,10 @@
config,
lib,
...
}: {
users.users.root.openssh.authorizedKeys.keys = let
}:
{
users.users.root.openssh.authorizedKeys.keys =
let
# TODO: put iron keys in identities
ids = import ../../../identities.nix;
in

View file

@ -1,4 +1,4 @@
{
me.extraGroups = ["video"];
me.extraGroups = [ "video" ];
programs.light.enable = true;
}

View file

@ -1,4 +1,5 @@
{pkgs, ...}: {
{ pkgs, ... }:
{
services.btrfs.autoScrub = {
enable = true;
fileSystems = [

View file

@ -7,15 +7,26 @@
pkgs,
modulesPath,
...
}: {
}:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = ["uhci_hcd" "ehci_pci" "ahci" "firewire_ohci" "usbhid" "uas" "sd_mod" "sr_mod" "sdhci_pci"];
boot.initrd.kernelModules = ["dm-snapshot"];
boot.kernelModules = ["kvm-intel"];
boot.extraModulePackages = [];
boot.initrd.availableKernelModules = [
"uhci_hcd"
"ehci_pci"
"ahci"
"firewire_ohci"
"usbhid"
"uas"
"sd_mod"
"sr_mod"
"sdhci_pci"
];
boot.initrd.kernelModules = [ "dm-snapshot" ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's

View file

@ -1,4 +1,5 @@
{lib, ...}: {
{ lib, ... }:
{
# https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
# `timedatectl list-timezones`
time.timeZone = "Asia/Taipei";

View file

@ -1,4 +1,5 @@
{pkgs, ...}: {
{ pkgs, ... }:
{
environment.systemPackages = [
pkgs.man-pages
pkgs.man-pages-posix