Watch
1
0
Fork
You've already forked chitin
0
This commit is contained in:
asnev 2026-10-25 11:41:10 +07:00
commit a29881aa64
Signed by: asnev
SSH key fingerprint: SHA256:8hagYq9hDUuS5clQ78FKhIoQDvg5crdkYMHX+3g7wB4
39 changed files with 1079 additions and 0 deletions

17
modules/base/boot.nix Normal file
View file

@ -0,0 +1,17 @@
{
flake.modules.nixos.base = {pkgs, ...}: {
boot = {
loader = {
systemd-boot = {
enable = true;
configurationLimit = 10;
};
efi.canTouchEfiVariables = true;
timeout = 2;
};
kernelPackages = pkgs.linuxPackages_latest;
};
};
}

View file

@ -0,0 +1,7 @@
{
flake.modules.nixos.base = {modulesPath, ...}: {
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
};
}

18
modules/base/doas.nix Normal file
View file

@ -0,0 +1,18 @@
{
flake.modules.nixos.base = {
security = {
doas = {
enable = true;
extraRules = [
{
groups = ["wheel"];
keepEnv = true;
persist = true;
}
];
};
sudo.enable = false;
};
};
}

45
modules/base/fonts.nix Normal file
View file

@ -0,0 +1,45 @@
{
flake.modules.nixos.base = {pkgs, ...}: {
fonts = {
packages = with pkgs; [
# GUI
inter
corefonts
roboto
cantarell-fonts
# internationalisation
noto-fonts
noto-fonts-cjk-sans
noto-fonts-cjk-serif
noto-fonts-color-emoji
noto-fonts-monochrome-emoji
unifont
unifont_upper
unifont-csur
# terminal
nerd-fonts.iosevka
];
fontconfig = {
antialias = true;
subpixel.rgba = "rgb";
hinting.enable = true;
defaultFonts = {
serif = ["Noto Serif"];
sansSerif = ["Cantarell"];
monospace = ["Iosevka Nerd Font"];
emoji = ["Noto Color Emoji"];
};
};
};
};
flake.modules.nixos.kdePlasma = {
config,
lib,
...
}: {
services.displayManager.sddm.settings.Theme.Font =
lib.concatStrings config.fonts.fontconfig.defaultFonts.sansSerif;
};
}

7
modules/base/locale.nix Normal file
View file

@ -0,0 +1,7 @@
{
flake.modules.nixos.base = {
time.timeZone = "Asia/Jakarta";
i18n.defaultLocale = "en_GB.UTF-8";
services.xserver.xkb.layout = "us";
};
}

15
modules/base/nix-ld.nix Normal file
View file

@ -0,0 +1,15 @@
{
flake.modules.nixos.base = {pkgs, ...}: {
programs.nix-ld = {
enable = true;
libraries = with pkgs; [
fuse
e2fsprogs
stdenv.cc.cc
zlib
alsa-lib
expat
];
};
};
}

18
modules/base/nix.nix Normal file
View file

@ -0,0 +1,18 @@
{
flake.modules.nixos.base = {
nix = {
settings = {
experimental-features = ["nix-command" "flakes"];
auto-optimise-store = true;
};
gc = {
automatic = true;
dates = "weekly";
options = "--delete-older-than 14d";
};
optimise.automatic = true;
};
};
}

8
modules/base/nixpkgs.nix Normal file
View file

@ -0,0 +1,8 @@
{self, ...}: {
flake.modules.nixos.base = {
nixpkgs = {
config.allowUnfree = true;
overlays = [self.overlays.default];
};
};
}

15
modules/base/overlays.nix Normal file
View file

@ -0,0 +1,15 @@
{inputs, ...}: {
perSystem = {
pkgs,
final,
system,
...
}: {
overlayAttrs = {
unstable = import inputs.nixpkgs-unstable {
inherit system;
config.allowUnfree = true;
};
};
};
}

25
modules/base/programs.nix Normal file
View file

@ -0,0 +1,25 @@
{
flake.modules.nixos.base = {
programs = {
fish.enable = true;
atuin = {
enable = true;
settings = {
sync_address = "https://api.atuin.sh";
enter_accept = true;
};
};
git = {
enable = true;
config = {
init.defaultBranch = "main";
advice.defaultBranchName = false;
gpg.format = "ssh";
commit.gpgSign = true;
};
};
};
};
}

21
modules/base/services.nix Normal file
View file

@ -0,0 +1,21 @@
{
flake.modules.nixos.base = {
services = {
fwupd.enable = true;
locate.enable = true;
openssh.enable = false;
pipewire = {
enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
};
};
security.rtkit.enable = true;
# ssh-agent user service (SSH_AUTH_SOCK=%t/ssh-agent)
programs.ssh.startAgent = true;
};
}

View file

@ -0,0 +1,39 @@
{
flake.modules.nixos.base = {pkgs, ...}: {
environment.systemPackages = with pkgs; [
nh
alejandra
git
python315
# system utils
file
firmware-updater
mtr
gnupg
ddate
testdisk
tree
wget
btop
plocate
traceroute
rlwrap
entr
unzip
ffmpeg
imagemagick
gnome-disk-utility
# oxidised utils
fd
bat
xh
tlrc
dysk
dust
hyperfine
ripgrep
fzf
eza
];
};
}