Compare commits

...
3 Commits
Author SHA1 Message Date
hektor 3e34db6bdc feat(memory): declare 'memory' module
check / lint (push) Successful in 16s
2026-10-24 13:09:22 +02:00
hektor f3876cdf87 feat(tmp): declare 'tmp' module 2026-10-24 13:09:19 +02:00
hektor fc373a60ef feat(zfs): declare ZFS module 2026-10-24 13:09:14 +02:00
12 changed files with 87 additions and 39 deletions

No files matched your search

+2 -2
View File
@@ -44,6 +44,7 @@ in
};
keyboard.enable = true;
localization.enable = true;
memory.zram.enable = true;
my = {
fonts.enable = true;
stylix.enable = true;
@@ -91,6 +92,7 @@ in
enable = true;
interfaces.eno1 = { inherit (wolInterfaces.eno1) macAddress; };
};
zfs.enable = true;
disko.devices = {
disk.data = {
@@ -120,6 +122,4 @@ in
enable = true;
package = pkgs.plocate;
};
zramSwap.enable = true;
}
+5 -3
View File
@@ -42,6 +42,10 @@ in
};
keyboard.enable = true;
localization.enable = true;
memory = {
oom.enable = true;
zram.enable = true;
};
my = {
fonts.enable = true;
stylix.enable = true;
@@ -67,6 +71,7 @@ in
};
};
taskwarrior.enable = true;
zfs.enable = true;
secrets.nixSigningKey.enable = true;
restic-backup.enable = true;
@@ -125,7 +130,4 @@ in
};
};
};
zramSwap.enable = true;
systemd.oomd.enableUserSlices = true;
}
-11
View File
@@ -1,11 +0,0 @@
{ config, ... }:
{
boot = {
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
tmp.useTmpfs = config.host.highRam;
};
}
-18
View File
@@ -1,18 +0,0 @@
{ lib, config, ... }:
let
cfg = config.bootloader;
in
{
options.bootloader.enable = lib.mkEnableOption "system bootloader";
config = lib.mkIf cfg.enable {
boot = {
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
tmp.useTmpfs = config.host.highRam;
};
};
}
+17
View File
@@ -0,0 +1,17 @@
{ lib, config, ... }:
{
options.bootloader.enable = lib.mkOption {
default = false;
type = lib.types.bool;
};
config = lib.mkIf config.bootloader.enable {
boot = {
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
};
};
};
}
-1
View File
@@ -12,7 +12,6 @@
config = {
system.stateVersion = lib.mkDefault "25.05";
boot.zfs.forceImportRoot = lib.mkDefault false;
environment.defaultPackages = lib.mkForce [ ];
environment.pathsToLink = [
+2 -4
View File
@@ -5,10 +5,8 @@
system.autoUpgrade.enable = false;
nix.settings.max-jobs = 0;
zramSwap = {
enable = true;
memoryPercent = 100;
};
memory.zram.enable = true;
zramSwap.memoryPercent = 100;
services.journald.settings.Journal.SystemMaxUse = "100M";
};
+13
View File
@@ -0,0 +1,13 @@
{ lib, ... }:
{
imports = [
./oom.nix
./zram.nix
];
options.memory = {
oom.enable = lib.mkOption { default = false; };
zram.enable = lib.mkOption { default = false; };
};
}
+7
View File
@@ -0,0 +1,7 @@
{ config, lib, ... }:
{
config = lib.mkIf config.memory.oom.enable {
systemd.oomd.enableUserSlices = lib.mkDefault true;
};
}
+11
View File
@@ -0,0 +1,11 @@
{ config, lib, ... }:
{
config = lib.mkIf config.memory.zram.enable {
zramSwap.enable = true;
boot.kernel.sysctl = {
"vm.swappiness" = lib.mkDefault 180;
"vm.page-cluster" = lib.mkDefault 0;
};
};
}
+15
View File
@@ -0,0 +1,15 @@
{ lib, config, ... }:
{
options.tmp.enable = lib.mkOption {
default = config.host.highRam;
type = lib.types.bool;
};
config = lib.mkIf config.tmp.enable {
boot.tmp = {
useTmpfs = true;
tmpfsSize = "25%";
};
};
}
+15
View File
@@ -0,0 +1,15 @@
{ lib, config, ... }:
{
options.zfs.enable = lib.mkOption {
default = false;
type = lib.types.bool;
};
config = lib.mkIf config.zfs.enable {
boot = {
kernelParams = [ "zfs.zfs_arc_max=12884901888" ];
zfs.forceImportRoot = lib.mkDefault false;
};
};
}