refactor: rfc formatting

This commit is contained in:
2024-04-03 23:12:53 +02:00
parent f06b3b1436
commit 16d3816918
34 changed files with 477 additions and 251 deletions

View File

@@ -2,10 +2,13 @@
with lib;
let cfg = config.boot.quiet;
in {
options.boot.quiet = { enable = mkEnableOption (mdDoc "Clean, quiet boot"); };
let
cfg = config.boot.quiet;
in
{
options.boot.quiet = {
enable = mkEnableOption (mdDoc "Clean, quiet boot");
};
config = mkIf cfg.enable {
boot = {

View File

@@ -1,4 +1,5 @@
{ ... }: {
{ ... }:
{
imports = [
./boot/quiet.nix

View File

@@ -1,10 +1,17 @@
{ config, lib, pkgs, username, ... }:
{
config,
lib,
pkgs,
username,
...
}:
with lib;
let cfg = config.desktops.hyprland;
in {
let
cfg = config.desktops.hyprland;
in
{
options.desktops.hyprland = {
enable = mkEnableOption (mdDoc "Enable a DE based on Hyprland");
};
@@ -12,8 +19,10 @@ in {
config = mkIf cfg.enable {
xdg.portal = {
enable = true;
extraPortals =
[ pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-kde ];
extraPortals = [
pkgs.xdg-desktop-portal-gtk
pkgs.xdg-desktop-portal-kde
];
};
services = {

View File

@@ -1,17 +1,31 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.fonts.fira-code;
in {
let
cfg = config.fonts.fira-code;
in
{
options.fonts.fira-code = {
enable = mkEnableOption "Enable the preset for Fira Code";
stylisticSets = mkOption {
type = types.listOf types.str;
description = mdDoc
"[Stylistic sets](https://github.com/tonsky/FiraCode/wiki/How-to-enable-stylistic-sets) for Fira Code";
default =
[ "zero" "onum" "ss04" "cv19" "cv23" "ss09" "ss06" "ss07" "ss10" ];
description = mdDoc "[Stylistic sets](https://github.com/tonsky/FiraCode/wiki/How-to-enable-stylistic-sets) for Fira Code";
default = [
"zero"
"onum"
"ss04"
"cv19"
"cv23"
"ss09"
"ss06"
"ss07"
"ss10"
];
};
default = mkOption {
type = types.bool;
@@ -26,10 +40,7 @@ in {
nerdfonts.additionalFonts = [ "FiraCode" ];
fontconfig = {
defaultFonts.monospace = mkIf cfg.default [
(if (config.fonts.nerdfonts.enable) then
"Fira Code Nerd Font"
else
"FiraCode")
(if (config.fonts.nerdfonts.enable) then "Fira Code Nerd Font" else "FiraCode")
];
localConf = ''
<match target="font">
@@ -37,10 +48,7 @@ in {
<string>Fira</string>
</test>
<edit name="fontfeatures" mode="append">
${
lib.concatStringsSep " "
(map (set: "<string>${set}</string>") cfg.stylisticSets)
}
${lib.concatStringsSep " " (map (set: "<string>${set}</string>") cfg.stylisticSets)}
</edit>
</match>
'';

View File

@@ -1,9 +1,15 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.fonts.nerdfonts;
in {
let
cfg = config.fonts.nerdfonts;
in
{
options.fonts.nerdfonts = {
enable = mkEnableOption "Enable nerdfonts";
additionalFonts = mkOption {
@@ -15,12 +21,9 @@ in {
config = mkIf cfg.enable {
fonts = {
packages = with pkgs;
[
(nerdfonts.override {
fonts = [ "NerdFontsSymbolsOnly" ] ++ cfg.additionalFonts;
})
];
packages = with pkgs; [
(nerdfonts.override { fonts = [ "NerdFontsSymbolsOnly" ] ++ cfg.additionalFonts; })
];
};
};
}

View File

@@ -1,9 +1,15 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.fonts.noto-sans;
in {
let
cfg = config.fonts.noto-sans;
in
{
options.fonts.noto-sans = {
enable = mkEnableOption "Enable the Noto Sans font";
default = mkOption {
@@ -15,14 +21,15 @@ in {
config = mkIf cfg.enable {
fonts = {
packages = with pkgs; [ noto-fonts noto-fonts-cjk noto-fonts-emoji ];
packages = with pkgs; [
noto-fonts
noto-fonts-cjk
noto-fonts-emoji
];
nerdfonts.additionalFonts = [ "Noto" ];
fontconfig = {
defaultFonts.sansSerif = mkIf cfg.default [
(if (config.fonts.nerdfonts.enable) then
"Noto Sans Nerd Font"
else
"Noto Sans")
(if (config.fonts.nerdfonts.enable) then "Noto Sans Nerd Font" else "Noto Sans")
];
};
};

View File

@@ -1,12 +1,17 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.hardware.amdgpu.preset.default;
in {
let
cfg = config.hardware.amdgpu.preset.default;
in
{
options.hardware.amdgpu.preset.default = {
enable =
mkEnableOption "Enable ADM GPU driver support with some sane defaults";
enable = mkEnableOption "Enable ADM GPU driver support with some sane defaults";
};
config = mkIf cfg.enable {
@@ -19,7 +24,10 @@ in {
boot = {
# https://docs.kernel.org/gpu/amdgpu/module-parameters.html
kernelParams = [ "amdgpu.seamless=1" "amdgpu.freesync_video=1" ];
kernelParams = [
"amdgpu.seamless=1"
"amdgpu.freesync_video=1"
];
initrd.kernelModules = [ "amdgpu" ];
};

View File

@@ -1,9 +1,15 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.hardware.audio.preset.pipewire;
in {
let
cfg = config.hardware.audio.preset.pipewire;
in
{
options.hardware.audio.preset.pipewire = {
enable = mkEnableOption "Enable pipewire with sane defaults";
};

View File

@@ -1,9 +1,16 @@
{ pkgs, lib, config, username, ... }:
{
pkgs,
lib,
config,
username,
...
}:
with lib;
let cfg = config.hardware.cc1;
in {
let
cfg = config.hardware.cc1;
in
{
options.hardware.cc1 = {
enable = mkEnableOption "Enable CC1 optimizations";
layout = mkOption {
@@ -19,7 +26,10 @@ in {
layout = cfg.layout;
extraLayouts.cc1-thea = {
description = "A CC1 optimized layout";
languages = [ "eng" "ger" ];
languages = [
"eng"
"ger"
];
symbolsFile = ./${cfg.layout};
};
};

View File

@@ -1,12 +1,18 @@
{ pkgs, lib, config, username, ... }:
{
pkgs,
lib,
config,
username,
...
}:
with lib;
let cfg = config.hardware.fv43u;
in {
let
cfg = config.hardware.fv43u;
in
{
options.hardware.fv43u = {
enable =
mkEnableOption "Enable optimisations for the Gigabyte FV43U monitor";
enable = mkEnableOption "Enable optimisations for the Gigabyte FV43U monitor";
};
config = mkIf cfg.enable {

View File

@@ -1,9 +1,15 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.hardware.gbmonctl;
in {
let
cfg = config.hardware.gbmonctl;
in
{
options.hardware.gbmonctl = {
enable = mkOption {
type = types.bool;

View File

@@ -1,12 +1,17 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.hardware.nvidia.preset.nouveau;
in {
let
cfg = config.hardware.nvidia.preset.nouveau;
in
{
options.hardware.nvidia.preset.nouveau = {
enable = mkEnableOption
"Enable the free Nouveau NVIDIA driver with some sane defaults";
enable = mkEnableOption "Enable the free Nouveau NVIDIA driver with some sane defaults";
};
config = mkIf cfg.enable {

View File

@@ -1,12 +1,17 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.hardware.nvidia.preset.proprietary;
in {
let
cfg = config.hardware.nvidia.preset.proprietary;
in
{
options.hardware.nvidia.preset.proprietary = {
enable = mkEnableOption
"Enable proprietary NVIDIA driver support with some sane defaults";
enable = mkEnableOption "Enable proprietary NVIDIA driver support with some sane defaults";
};
config = mkIf cfg.enable {
@@ -14,16 +19,30 @@ in {
enable = true;
driSupport = true;
driSupport32Bit = true;
extraPackages = with pkgs; [ libvdpau-va-gl nvidia-vaapi-driver ];
extraPackages = with pkgs; [
libvdpau-va-gl
nvidia-vaapi-driver
];
};
services.xserver.videoDrivers = [ "nvidia" ];
boot.kernelParams = [ "fbdev=1" "nvidia_drm.fbdev=1" ];
boot.kernelModules =
[ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ];
boot.initrd.kernelModules =
[ "nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm" ];
boot.kernelParams = [
"fbdev=1"
"nvidia_drm.fbdev=1"
];
boot.kernelModules = [
"nvidia"
"nvidia_modeset"
"nvidia_uvm"
"nvidia_drm"
];
boot.initrd.kernelModules = [
"nvidia"
"nvidia_modeset"
"nvidia_uvm"
"nvidia_drm"
];
hardware.nvidia = {
modesetting.enable = true;

View File

@@ -1,9 +1,15 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.hardware.virtual-camera;
in {
let
cfg = config.hardware.virtual-camera;
in
{
options.hardware.virtual-camera = {
enable = mkEnableOption "Enable the virtual camera";
};
@@ -11,9 +17,12 @@ in {
config = mkIf cfg.enable {
boot = {
# Virtual Camera/Mic
kernelModules = [ "v4l2loopback" "snd-aloop" "sg" ];
extraModulePackages = with config.boot.kernelPackages;
[ v4l2loopback.out ];
kernelModules = [
"v4l2loopback"
"snd-aloop"
"sg"
];
extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback.out ];
extraModprobeConfig = ''
options v4l2loopback exclusive_caps=1 card_label="Virtual Camera"
'';

View File

@@ -1,9 +1,15 @@
{ pkgs, lib, config, ... }:
{
pkgs,
lib,
config,
...
}:
with lib;
let cfg = config.locale.preset.theaninova;
in {
let
cfg = config.locale.preset.theaninova;
in
{
options.locale.preset.theaninova = {
enable = mkEnableOption "Enable the locale preset for Theaninova";
};

View File

@@ -1,9 +1,16 @@
{ pkgs, lib, config, username, ... }:
{
pkgs,
lib,
config,
username,
...
}:
with lib;
let cfg = config.services.airprint;
in {
let
cfg = config.services.airprint;
in
{
options.services.airprint = {
enable = mkEnableOption "Enable printing over the air using sane and avahi";
};
@@ -19,6 +26,9 @@ in {
nssmdns4 = true;
openFirewall = true;
};
users.users.${username}.extraGroups = [ "lp" "scanner" ];
users.users.${username}.extraGroups = [
"lp"
"scanner"
];
};
}