Compare commits

..

2 Commits

Author SHA1 Message Date
571fb2ff99 chore: blame ignore 2204b12fad 2026-04-13 23:04:46 +02:00
2204b12fad chore: run lint & format 2026-04-13 23:04:16 +02:00
23 changed files with 497 additions and 389 deletions

View File

@@ -1,6 +1,7 @@
# nix fmt & statix
f011c8d71ba09bd94ab04b8d771858b90a03fbf9
3aff25b4486a143cd6282f8845c16216598e1c7e
2204b12fadf27886058e6945806ce93a547f5278
# host rename
cfe4c43887a41e52be4e6472474c0fc3788f86e8

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, inputs, ... }:
{
config,
lib,
inputs,
...
}:
let
cfg = config.features.bootloader;
in
@@ -19,7 +24,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
{
boot.loader.efi.canTouchEfiVariables = true;
}
@@ -35,6 +41,7 @@
pkiBundle = "/var/lib/sbctl";
};
})
]);
]
);
};
}

View File

@@ -6,7 +6,12 @@
};
home =
{ pkgs, lib, osConfig, ... }:
{
pkgs,
lib,
osConfig,
...
}:
let
cfg = osConfig.features.claude;
in

View File

@@ -1,6 +1,12 @@
{
nixos =
{ config, lib, pkgs, inputs, ... }:
{
config,
lib,
pkgs,
inputs,
...
}:
let
cfg = config.features.desktop;
in
@@ -49,7 +55,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
# base desktop
{
security.polkit.enable = true;
@@ -72,7 +79,7 @@
stylix = {
enable = true;
polarity = cfg.theme.polarity;
inherit (cfg.theme) polarity;
image = cfg.theme.wallpaper;
base16Scheme = "${pkgs.base16-schemes}/share/themes/${cfg.theme.scheme}.yaml";
};
@@ -136,11 +143,17 @@
inputs.self.outputs.packages.${pkgs.stdenv.hostPlatform.system}.ca-matheo-si
];
})
]);
]
);
};
home =
{ lib, inputs, osConfig, ... }:
{
lib,
inputs,
osConfig,
...
}:
let
cfg = osConfig.features.desktop;
in

View File

@@ -6,7 +6,13 @@
};
home =
{ pkgs, lib, inputs, osConfig, ... }:
{
pkgs,
lib,
inputs,
osConfig,
...
}:
let
cfg = osConfig.features.dev;
packages = inputs.self.outputs.packages.${pkgs.stdenv.hostPlatform.system};

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, inputs, ... }:
{
config,
lib,
inputs,
...
}:
let
cfg = config.features.direnv;
in

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, user, ... }:
{
config,
lib,
user,
...
}:
let
cfg = config.features.docker;
in

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, userKeys, ... }:
{
config,
lib,
userKeys,
...
}:
let
cfg = config.features.filedrop;
in

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
let
cfg = config.features.gaming;
in

View File

@@ -6,7 +6,13 @@
};
home =
{ pkgs, lib, inputs, osConfig, ... }:
{
pkgs,
lib,
inputs,
osConfig,
...
}:
let
cfg = osConfig.features.git;
packages = inputs.self.outputs.packages.${pkgs.stdenv.hostPlatform.system};

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
let
cfg = config.features.gnupg;
in
@@ -14,7 +19,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
{
programs.gnupg.agent = {
enable = true;
@@ -31,6 +37,7 @@
services.pcscd.enable = true;
})
]);
]
);
};
}

View File

@@ -26,7 +26,8 @@
cfg = osConfig.features.neovim;
in
{
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
(lib.optionalAttrs (options ? stylix) {
# disable stylix neovim target when stylix is present
stylix.targets.neovim.enable = false;
@@ -74,6 +75,7 @@
];
};
}
]);
]
);
};
}

View File

@@ -41,14 +41,12 @@
];
download-buffer-size = 2 * 1024 * 1024 * 1024;
warn-dirty = false;
substituters =
[
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org?priority=45"
]
++ lib.optional cfg.towerCache.enable "http://tower:5000?priority=50";
trusted-public-keys =
[
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
]
@@ -57,13 +55,13 @@
gc = {
automatic = true;
dates = cfg.gc.dates;
inherit (cfg.gc) dates;
options = "--delete-older-than ${cfg.gc.olderThan}";
};
optimise = {
automatic = true;
dates = cfg.optimise.dates;
inherit (cfg.optimise) dates;
};
};
};

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, user, ... }:
{
config,
lib,
user,
...
}:
let
cfg = config.features.onepassword;
in

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, user, ... }:
{
config,
lib,
user,
...
}:
let
cfg = config.features.remote-base;
in

View File

@@ -6,7 +6,12 @@
};
home =
{ pkgs, lib, osConfig, ... }:
{
pkgs,
lib,
osConfig,
...
}:
let
cfg = osConfig.features.shell;
in

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
let
cfg = config.features.sway;
desktopCfg = config.features.desktop;
@@ -15,7 +20,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
{
# soft dependency
features.desktop.enable = lib.mkDefault true;
@@ -86,6 +92,7 @@
};
};
})
]);
]
);
};
}

View File

@@ -1,6 +1,11 @@
{
nixos =
{ config, lib, pkgs, ... }:
{
config,
lib,
pkgs,
...
}:
let
cfg = config.features.udev;
in
@@ -24,7 +29,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
(lib.mkIf cfg.kindle.enable {
# NOTE:(@janezicmatej) uses services.udev.packages instead of extraRules
# because extraRules writes to 99-local.rules which is too late for uaccess
@@ -47,6 +53,7 @@
(lib.mkIf cfg.keyboard-zsa.enable {
hardware.keyboard.zsa.enable = true;
})
]);
]
);
};
}

View File

@@ -9,9 +9,7 @@ in
sshAuthorizedKeys = sshKeys;
};
nixos =
{ ... }:
{
nixos = _: {
users.users.matej = {
uid = 1000;
isNormalUser = true;

View File

@@ -40,7 +40,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
{
services.qemuGuest.enable = true;
services.spice-vdagentd.enable = lib.mkIf (!cfg.headless) true;
@@ -110,6 +111,7 @@
};
};
})
]);
]
);
};
}

View File

@@ -1,6 +1,12 @@
{
nixos =
{ config, lib, pkgs, user, ... }:
{
config,
lib,
pkgs,
user,
...
}:
let
cfg = config.features.zsh;
in
@@ -15,7 +21,8 @@
};
};
config = lib.mkIf cfg.enable (lib.mkMerge [
config = lib.mkIf cfg.enable (
lib.mkMerge [
{
programs.zsh.enable = true;
environment.etc."zshenv".text = ''
@@ -26,11 +33,17 @@
(lib.mkIf cfg.loginShell.enable {
users.users.${user}.shell = pkgs.zsh;
})
]);
]
);
};
home =
{ pkgs, lib, osConfig, ... }:
{
pkgs,
lib,
osConfig,
...
}:
let
cfg = osConfig.features.zsh;
in

View File

@@ -75,9 +75,11 @@
# TODO:(@janezicmatej) replace ssh with virtio-console (hvc0) when qemu 11.0 lands
# https://www.mail-archive.com/qemu-devel@nongnu.org/msg1162844.html
# accept any ssh key (ephemeral localhost-only vm)
services.openssh.settings.AuthorizedKeysCommand = let
services.openssh.settings.AuthorizedKeysCommand =
let
acceptKey = pkgs.writeShellScript "ephvm-accept-key" ''echo "$1 $2"'';
in "${acceptKey} %t %k";
in
"${acceptKey} %t %k";
services.openssh.settings.AuthorizedKeysCommandUser = "nobody";
# writable claude config via 9p

View File

@@ -79,8 +79,7 @@ let
in
nixpkgs.lib.nixosSystem {
inherit system;
modules =
[
modules = [
inputs.sops-nix.nixosModules.sops
inputs.stylix.nixosModules.stylix