formatting

This commit is contained in:
Osman Faruk Bayram 2025-10-19 22:46:17 +03:00
parent 20e99d234d
commit 9ea28ef218
18 changed files with 183 additions and 75 deletions

View file

@ -67,7 +67,6 @@
nix.channel.enable = false;
nix.registry = {
self.flake = inputs.self;
nixpkgs.flake = inputs.nixpkgs;
@ -91,7 +90,10 @@
osbm-nvim.flake = inputs.osbm-nvim;
my-nixpkgs = {
from = { type = "indirect"; id = "my-nixpkgs"; };
from = {
type = "indirect";
id = "my-nixpkgs";
};
to = {
owner = "osbm";
repo = "nixpkgs";
@ -99,7 +101,10 @@
};
};
osbm-dev = {
from = { type = "indirect"; id = "osbm-dev"; };
from = {
type = "indirect";
id = "osbm-dev";
};
to = {
owner = "osbm";
repo = "osbm.dev";
@ -107,7 +112,10 @@
};
};
devshells = {
from = { type = "indirect"; id = "devshells"; };
from = {
type = "indirect";
id = "devshells";
};
to = {
owner = "osbm";
repo = "devshells";

View file

@ -73,17 +73,24 @@
useDHCP = false;
interfaces.ens3 = {
useDHCP = false;
ipv4.addresses = [{
ipv4.addresses = [
{
address = "152.53.152.129";
prefixLength = 22;
}];
ipv6.addresses = [{
}
];
ipv6.addresses = [
{
address = "2a00:11c0:47:3b2a::1";
prefixLength = 64;
}];
}
];
};
defaultGateway = "152.53.152.1";
defaultGateway6 = { address = "fe80::1"; interface = "ens3"; };
defaultGateway6 = {
address = "fe80::1";
interface = "ens3";
};
};
# Override initrd kernel params for static IP

View file

@ -1,4 +1,10 @@
{ config, inputs, lib, pkgs, ... }:
{
config,
inputs,
lib,
pkgs,
...
}:
let
cfg = config.osbmModules.hardware.disko;
inherit (config.networking) hostName;
@ -9,9 +15,11 @@ let
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHYSJ9ywFRJ747tkhvYWFkx/Y9SkLqv3rb7T1UuXVBWo"
];
authorizedKeys = if cfg.initrd-ssh.authorizedKeys != []
then cfg.initrd-ssh.authorizedKeys
else defaultAuthorizedKeys;
authorizedKeys =
if cfg.initrd-ssh.authorizedKeys != [ ] then
cfg.initrd-ssh.authorizedKeys
else
defaultAuthorizedKeys;
in
{
imports = [
@ -54,7 +62,10 @@ in
"nohibernate"
"zfs.zfs_arc_max=17179869184" # 16GB ARC max
];
supportedFilesystems = [ "vfat" "zfs" ];
supportedFilesystems = [
"vfat"
"zfs"
];
zfs = {
devNodes = "/dev/disk/by-id/";
forceImportAll = true;
@ -117,7 +128,10 @@ in
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = [ "defaults" "umask=0077" ];
mountOptions = [
"defaults"
"umask=0077"
];
};
};

View file

@ -3,14 +3,23 @@
options.osbmModules = {
# Desktop Environment
desktopEnvironment = lib.mkOption {
type = lib.types.enum [ "plasma" "none" ];
type = lib.types.enum [
"plasma"
"none"
];
default = "none";
description = "Which desktop environment to use";
};
# Machine Type
machineType = lib.mkOption {
type = lib.types.enum [ "desktop" "laptop" "server" "embedded" "mobile" ];
type = lib.types.enum [
"desktop"
"laptop"
"server"
"embedded"
"mobile"
];
default = "server";
description = "Type of machine for appropriate defaults";
};
@ -18,7 +27,10 @@
# Users
users = lib.mkOption {
type = lib.types.listOf lib.types.str;
default = [ "osbm" "bayram" ];
default = [
"osbm"
"bayram"
];
description = "List of users to create. `osbm` is my main user, and `bayram` is for my family.";
};
@ -188,7 +200,10 @@
};
fileSystem = lib.mkOption {
type = lib.types.enum [ "zfs" "ext4" ];
type = lib.types.enum [
"zfs"
"ext4"
];
default = "ext4";
description = "Root filesystem type";
};

View file

@ -1,4 +1,9 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
{
config = lib.mkIf config.osbmModules.programs.arduino.enable {
environment.systemPackages = with pkgs; [

View file

@ -1,4 +1,9 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
{
config = lib.mkIf config.osbmModules.programs.commandLine.enable {
environment.systemPackages = with pkgs; [

View file

@ -1,4 +1,9 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
{
config = lib.mkIf config.osbmModules.programs.graphical.enable {
environment.systemPackages = with pkgs; [

View file

@ -1,4 +1,10 @@
{ lib, inputs, config, pkgs, ... }:
{
lib,
inputs,
config,
pkgs,
...
}:
{
config = lib.mkIf config.osbmModules.programs.neovim.enable {
environment.systemPackages = [

View file

@ -1,4 +1,10 @@
{ lib, pkgs, inputs, config, ... }:
{
lib,
pkgs,
inputs,
config,
...
}:
{
imports = [
inputs.agenix.nixosModules.default

View file

@ -1,4 +1,9 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
let
cfg = config.osbmModules;
in

View file

@ -1,4 +1,9 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
{
config = lib.mkIf config.osbmModules.fonts.enable {
fonts.packages = with pkgs; [
@ -12,14 +17,23 @@
dina-font
proggyfonts
jetbrains-mono
(nerdfonts.override { fonts = [ "FiraCode" "JetBrainsMono" "Iosevka" ]; })
(nerdfonts.override {
fonts = [
"FiraCode"
"JetBrainsMono"
"Iosevka"
];
})
];
fonts.fontconfig = {
defaultFonts = {
serif = [ "Noto Serif" ];
sansSerif = [ "Noto Sans" ];
monospace = [ "JetBrainsMono Nerd Font" "Fira Code" ];
monospace = [
"JetBrainsMono Nerd Font"
"Fira Code"
];
emoji = [ "Noto Color Emoji" ];
};
};

View file

@ -1,4 +1,9 @@
{ lib, config, inputs, ... }:
{
lib,
config,
inputs,
...
}:
{
imports = lib.optionals (inputs ? home-manager) [

View file

@ -1,4 +1,9 @@
{ lib, config, inputs, ... }:
{
lib,
config,
inputs,
...
}:
{
imports = [
inputs.nix-index-database.nixosModules.nix-index

View file

@ -1,8 +1,14 @@
{ inputs, lib, config, ... }:
{
inputs,
lib,
config,
...
}:
{
config = lib.mkIf config.osbmModules.nixSettings.enable {
# Allow unfree packages
nixpkgs.config.allowUnfreePredicate = pkg:
nixpkgs.config.allowUnfreePredicate =
pkg:
builtins.elem (lib.getName pkg) [
"vscode"
"discord"

View file

@ -5,13 +5,15 @@ let
regularUsers = builtins.filter (u: u != "root") cfg.users;
in
{
config = lib.mkIf (cfg.users != []) {
config = lib.mkIf (cfg.users != [ ]) {
users.users = lib.mkMerge [
# Create users based on the list (excluding root)
(lib.genAttrs regularUsers (username: {
isNormalUser = true;
description = username;
extraGroups = [ "networkmanager" ]
extraGroups = [
"networkmanager"
]
++ lib.optional (username == cfg.defaultUser) "wheel"
++ lib.optional config.osbmModules.virtualization.docker.enable "docker"
++ lib.optional config.osbmModules.programs.adbFastboot.enable "adbusers";