eradicate with lib;

This commit is contained in:
Sakooooo 2024-08-01 16:24:09 +04:00
parent 1369bd38a1
commit 9b21f7a0d4
Signed by: sako
GPG key ID: 3FD715D87D7725E0
90 changed files with 224 additions and 281 deletions

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.calibre; cfg = config.modules.desktop.apps.calibre;
in in
{ {
options.modules.desktop.apps.calibre = { options.modules.desktop.apps.calibre = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
calibre calibre
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.kindle-comic-converter; cfg = config.modules.desktop.apps.kindle-comic-converter;
in in
{ {
options.modules.desktop.apps.kindle-comic-converter = { options.modules.desktop.apps.kindle-comic-converter = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
kcc kcc
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.kdeconnect; cfg = config.modules.desktop.apps.kdeconnect;
in in
{ {
options.modules.desktop.apps.kdeconnect = { options.modules.desktop.apps.kdeconnect = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
#users.users.sako.packages = with pkgs; [ #users.users.sako.packages = with pkgs; [
# kdeconnect # kdeconnect
#]; #];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.keepassxc; cfg = config.modules.desktop.apps.keepassxc;
in in
{ {
options.modules.desktop.apps.keepassxc = { options.modules.desktop.apps.keepassxc = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
keepassxc keepassxc
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.mangal; cfg = config.modules.desktop.apps.mangal;
in in
{ {
options.modules.desktop.apps.mangal = { options.modules.desktop.apps.mangal = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
mangal mangal
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.nemo; cfg = config.modules.desktop.apps.nemo;
in in
{ {
options.modules.desktop.apps.nemo = { options.modules.desktop.apps.nemo = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
cinnamon.nemo cinnamon.nemo
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.apps.nextcloud; cfg = config.modules.desktop.apps.nextcloud;
in { in {
options.modules.desktop.apps.nextcloud = { options.modules.desktop.apps.nextcloud = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
nextcloud-client nextcloud-client
]; ];

View file

@ -1,18 +1,13 @@
# ITS A FILE SHARING THING
# NOT A GOD DAMN ADDICTION
# IM NOT ADDICTED TO MUSIC
# I SWEAR
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.nicotineplus; cfg = config.modules.desktop.apps.nicotineplus;
in in
{ {
options.modules.desktop.apps.nicotineplus = { options.modules.desktop.apps.nicotineplus = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
nicotine-plus nicotine-plus
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.apps.obs; cfg = config.modules.desktop.apps.obs;
in { in {
options.modules.desktop.apps.obs = { options.modules.desktop.apps.obs = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
obs-studio obs-studio
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.apps.pass; cfg = config.modules.desktop.apps.pass;
in { in {
options.modules.desktop.apps.pass = { options.modules.desktop.apps.pass = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
(pass.withExtensions (pkgs: with pkgs; [pass-otp pass-import pass-genphrase pass-checkup])) (pass.withExtensions (pkgs: with pkgs; [pass-otp pass-import pass-genphrase pass-checkup]))
rofi-pass rofi-pass

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.rssguard; cfg = config.modules.desktop.apps.rssguard;
in in
{ {
options.modules.desktop.apps.rssguard = { options.modules.desktop.apps.rssguard = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
rssguard rssguard
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.transmission; cfg = config.modules.desktop.apps.transmission;
in in
{ {
options.modules.desktop.apps.transmission = { options.modules.desktop.apps.transmission = {
daemon = mkEnableOption false; daemon = lib.mkEnableOption false;
}; };
config = mkIf cfg.daemon { config = lib.mkIf cfg.daemon {
#TODO(sako):: figure out service #TODO(sako):: figure out service
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
transmission transmission

View file

@ -1,5 +1,4 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.transmission; cfg = config.modules.desktop.apps.transmission;
in in
@ -9,10 +8,10 @@ in
./daemon.nix ./daemon.nix
]; ];
options.modules.desktop.apps.transmission = { options.modules.desktop.apps.transmission = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
#TODO(sako):: figure out service #TODO(sako):: figure out service
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
transmission-gtk transmission-gtk

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.apps.transmission.tui; cfg = config.modules.desktop.apps.transmission.tui;
in in
{ {
options.modules.desktop.apps.transmission= { options.modules.desktop.apps.transmission= {
tui = mkEnableOption false; tui = lib.mkEnableOption false;
}; };
config = mkIf cfg { config = lib.mkIf cfg {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
stig stig
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.awesome; cfg = config.modules.desktop.awesome;
in { in {
options.modules.desktop.awesome = { options.modules.desktop.awesome = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# this needs to be enabled for gtk apps # this needs to be enabled for gtk apps
programs.dconf.enable = true; programs.dconf.enable = true;

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.browsers.chromium; cfg = config.modules.desktop.browsers.chromium;
in in
{ {
options.modules.desktop.browsers.chromium = { options.modules.desktop.browsers.chromium = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
chromium chromium
]; ];

View file

@ -5,17 +5,17 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.browsers.firefox; cfg = config.modules.desktop.browsers.firefox;
in { in {
options.modules.desktop.browsers.firefox = { options.modules.desktop.browsers.firefox = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
# TODO add this # TODO add this
# https://github.com/Dook97/firefox-qutebrowser-userchrome # https://github.com/Dook97/firefox-qutebrowser-userchrome
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
programs.firefox = { programs.firefox = {
enable = true; enable = true;
preferences = { preferences = {

View file

@ -1,14 +1,13 @@
{ options, config, lib, pkgs, ...}: { options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.browsers.qutebrowser; cfg = config.modules.desktop.browsers.qutebrowser;
in in
{ {
options.modules.desktop.browsers.qutebrowser = { options.modules.desktop.browsers.qutebrowser = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
qutebrowser-qt6 qutebrowser-qt6
python310Packages.pynacl python310Packages.pynacl

View file

@ -6,7 +6,7 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.bspwm; cfg = config.modules.desktop.bspwm;
in { in {
imports = [ imports = [
@ -14,10 +14,10 @@ in {
./lemonbar ./lemonbar
]; ];
options.modules.desktop.bspwm = { options.modules.desktop.bspwm = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# this is needed for gtk configuration to work # this is needed for gtk configuration to work
programs.dconf.enable = true; programs.dconf.enable = true;

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.bspwm.lemonbar; cfg = config.modules.desktop.bspwm.lemonbar;
in in
{ {
options.modules.desktop.bspwm.lemonbar = { options.modules.desktop.bspwm.lemonbar = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
lemonbar-xft lemonbar-xft
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.bspwm.polybar; cfg = config.modules.desktop.bspwm.polybar;
in in
{ {
options.modules.desktop.bspwm.polybar = { options.modules.desktop.bspwm.polybar = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
polybar polybar
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.chat.discord; cfg = config.modules.desktop.chat.discord;
in { in {
options.modules.desktop.chat.discord = { options.modules.desktop.chat.discord = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = [ users.users.sako.packages = [
(pkgs.discord.override { (pkgs.discord.override {
withOpenASAR = true; withOpenASAR = true;

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.chat.signal; cfg = config.modules.desktop.chat.signal;
in { in {
options.modules.desktop.chat.signal = { options.modules.desktop.chat.signal = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
signal-desktop signal-desktop
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.chat.teams; cfg = config.modules.desktop.chat.teams;
in in
{ {
options.modules.desktop.chat.teams = { options.modules.desktop.chat.teams = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
teams-for-linux teams-for-linux
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.chat.telegram; cfg = config.modules.desktop.chat.telegram;
in { in {
options.modules.desktop.chat.telegram = { options.modules.desktop.chat.telegram = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
telegram-desktop telegram-desktop
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.chat.weechat; cfg = config.modules.desktop.chat.weechat;
in { in {
options.modules.desktop.chat.weechat = { options.modules.desktop.chat.weechat = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
weechat weechat
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.chat.whatsapp; cfg = config.modules.desktop.chat.whatsapp;
in in
{ {
options.modules.desktop.chat.whatsapp = { options.modules.desktop.chat.whatsapp = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
whatsapp-for-linux whatsapp-for-linux
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.chat.zoom; cfg = config.modules.desktop.chat.zoom;
in in
{ {
options.modules.desktop.chat.zoom = { options.modules.desktop.chat.zoom = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
zoom-us zoom-us
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.dunst; cfg = config.modules.desktop.dunst;
in in
{ {
options.modules.desktop.dunst = { options.modules.desktop.dunst = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
dunst dunst
libnotify libnotify

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.dwm; cfg = config.modules.desktop.dwm;
in { in {
options.modules.desktop.dwm = { options.modules.desktop.dwm = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# this needs to be enabled for gtk apps # this needs to be enabled for gtk apps
programs.dconf.enable = true; programs.dconf.enable = true;
# enable dwm # enable dwm

View file

@ -6,17 +6,17 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.exwm; cfg = config.modules.desktop.exwm;
imports = [ imports = [
../../dev/editors/emacs ../../dev/editors/emacs
]; ];
in { in {
options.modules.desktop.exwm = { options.modules.desktop.exwm = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
modules.dev.editors.emacs.daemon = lib.mkForce false; modules.dev.editors.emacs.daemon = lib.mkForce false;
modules.dev.editors.emacs.enable = lib.mkForce true; modules.dev.editors.emacs.enable = lib.mkForce true;
# this needs to be enabled for gtk apps # this needs to be enabled for gtk apps

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.game.grapejuice; cfg = config.modules.desktop.game.grapejuice;
in in
{ {
options.modules.desktop.game.grapejuice = { options.modules.desktop.game.grapejuice = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
grapejuice grapejuice
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.game.lutris; cfg = config.modules.desktop.game.lutris;
in in
{ {
options.modules.desktop.game.lutris = { options.modules.desktop.game.lutris = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
lutris lutris
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.game.steam; cfg = config.modules.desktop.game.steam;
in in
{ {
options.modules.desktop.game.steam = { options.modules.desktop.game.steam = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
steam steam
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.game.tetrio; cfg = config.modules.desktop.game.tetrio;
in { in {
options.modules.desktop.game.tetrio = { options.modules.desktop.game.tetrio = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
(tetrio-desktop.override { (tetrio-desktop.override {
withTetrioPlus = true; withTetrioPlus = true;

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.game.wine; cfg = config.modules.desktop.game.wine;
in in
{ {
options.modules.desktop.game.wine = { options.modules.desktop.game.wine = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
winetricks winetricks
wineWowPackages.staging wineWowPackages.staging

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.gnome; cfg = config.modules.desktop.gnome;
in in
{ {
options.modules.desktop.gnome = { options.modules.desktop.gnome = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.xserver = { services.xserver = {
enable = true; enable = true;
displayManager = { displayManager = {

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.hyprland; cfg = config.modules.desktop.hyprland;
in in
{ {
options.modules.desktop.hyprland = { options.modules.desktop.hyprland = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.xserver = { services.xserver = {
enable = true; enable = true;
displayManager = { displayManager = {

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.i3; cfg = config.modules.desktop.i3;
in { in {
options.modules.desktop.i3 = { options.modules.desktop.i3 = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# this is needed for gtk configuration to work # this is needed for gtk configuration to work
programs.dconf.enable = true; programs.dconf.enable = true;

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.kde; cfg = config.modules.desktop.kde;
in in
{ {
options.modules.desktop.kde = { options.modules.desktop.kde = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.xserver = { services.xserver = {
enable = true; enable = true;
libinput.enable = true; libinput.enable = true;

View file

@ -5,14 +5,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.kitty; cfg = config.modules.desktop.kitty;
in { in {
options.modules.desktop.kitty = { options.modules.desktop.kitty = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
kitty kitty
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.blender; cfg = config.modules.desktop.media.blender;
in in
{ {
options.modules.desktop.media.blender = { options.modules.desktop.media.blender = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
blender blender
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.feishin; cfg = config.modules.desktop.media.feishin;
in in
{ {
options.modules.desktop.media.feishin = { options.modules.desktop.media.feishin = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
feishin feishin
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.gimp; cfg = config.modules.desktop.media.gimp;
in in
{ {
options.modules.desktop.media.gimp = { options.modules.desktop.media.gimp = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
gimp gimp
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.media.jellyfin; cfg = config.modules.desktop.media.jellyfin;
in { in {
options.modules.desktop.media.jellyfin = { options.modules.desktop.media.jellyfin = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
jellyfin-media-player jellyfin-media-player
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.kdenlive; cfg = config.modules.desktop.media.kdenlive;
in in
{ {
options.modules.desktop.media.kdenlive = { options.modules.desktop.media.kdenlive = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
kdenlive kdenlive
mediainfo mediainfo

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.krita; cfg = config.modules.desktop.media.krita;
in in
{ {
options.modules.desktop.media.krita = { options.modules.desktop.media.krita = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
krita krita
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.lmms; cfg = config.modules.desktop.media.lmms;
in in
{ {
options.modules.desktop.media.lmms = { options.modules.desktop.media.lmms = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
lmms lmms
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.desktop.media.mpv; cfg = config.modules.desktop.media.mpv;
in in
{ {
options.modules.desktop.media.mpv = { options.modules.desktop.media.mpv = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
mpv mpv
]; ];

View file

@ -1,15 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
# lmao this is broken
let let
cfg = config.modules.desktop.media.resolve; cfg = config.modules.desktop.media.resolve;
in in
{ {
options.modules.desktop.media.resolve = { options.modules.desktop.media.resolve = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
sako.davinci-resolve sako.davinci-resolve
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.picom; cfg = config.modules.desktop.picom;
in { in {
options.modules.desktop.picom = { options.modules.desktop.picom = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
picom picom
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.plymouth; cfg = config.modules.desktop.plymouth;
in { in {
options.modules.desktop.plymouth = { options.modules.desktop.plymouth = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
boot.plymouth = { boot.plymouth = {
enable = true; enable = true;
}; };

View file

@ -5,14 +5,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.printing; cfg = config.modules.desktop.printing;
in { in {
options.modules.desktop.printing = { options.modules.desktop.printing = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# enable printing itself # enable printing itself
services.printing = { services.printing = {
enable = true; enable = true;

View file

@ -6,16 +6,16 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.qtile; cfg = config.modules.desktop.qtile;
in { in {
options.modules.desktop.qtile = { options.modules.desktop.qtile = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
#TODO Do this #TODO Do this
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.xserver = { services.xserver = {
enable = true; enable = true;
windowManager.qtile = { windowManager.qtile = {

View file

@ -5,14 +5,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.wezterm; cfg = config.modules.desktop.wezterm;
in { in {
options.modules.desktop.wezterm = { options.modules.desktop.wezterm = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
wezterm wezterm
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.wireguard; cfg = config.modules.desktop.wireguard;
in { in {
options.modules.desktop.wireguard = { options.modules.desktop.wireguard = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# todo declaritivly setting it up # todo declaritivly setting it up
networking.wireguard.enable = true; networking.wireguard.enable = true;
}; };

View file

@ -5,14 +5,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.desktop.xmonad; cfg = config.modules.desktop.xmonad;
in { in {
options.modules.desktop.xmonad = { options.modules.desktop.xmonad = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# this needs to be enabled for gtk apps # this needs to be enabled for gtk apps
programs.dconf.enable = true; programs.dconf.enable = true;

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.dev.cc; cfg = config.modules.dev.cc;
in in
{ {
options.modules.dev.cc = { options.modules.dev.cc = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
gcc gcc
gnumake gnumake

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.dev.csharp; cfg = config.modules.dev.csharp;
in in
{ {
options.modules.dev.csharp = { options.modules.dev.csharp = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
omnisharp-roslyn omnisharp-roslyn
]; ];

View file

@ -7,7 +7,7 @@
inputs, inputs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.editors.emacs; cfg = config.modules.dev.editors.emacs;
@ -72,16 +72,16 @@ with lib; let
}; };
in { in {
options.modules.dev.editors.emacs = { options.modules.dev.editors.emacs = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
daemon = mkEnableOption true; daemon = lib.mkEnableOption true;
package = mkOption { package = lib.mkOption {
type = with types; package; type = with lib.types; package;
default = pkgs.emacs-unstable; default = pkgs.emacs-unstable;
description = "pkgs. followed by the name of the emacs overlay package"; description = "pkgs. followed by the name of the emacs overlay package";
}; };
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
nixpkgs.overlays = [ nixpkgs.overlays = [
inputs.emacs-overlay.overlay inputs.emacs-overlay.overlay
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.editors.nvim; cfg = config.modules.dev.editors.nvim;
in { in {
options.modules.dev.editors.nvim = { options.modules.dev.editors.nvim = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# because yes # because yes
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
neovim neovim

View file

@ -6,17 +6,17 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.editors.vscode; cfg = config.modules.dev.editors.vscode;
in { in {
imports = [ imports = [
./fhs.nix ./fhs.nix
]; ];
options.modules.dev.editors.vscode = { options.modules.dev.editors.vscode = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
(vscode-with-extensions.override { (vscode-with-extensions.override {
vscodeExtensions = with vscode-extensions; vscodeExtensions = with vscode-extensions;

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.editors.vscode.fhs; cfg = config.modules.dev.editors.vscode.fhs;
in { in {
options.modules.dev.editors.vscode.fhs = { options.modules.dev.editors.vscode.fhs = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
vscode.fhs vscode.fhs
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.dev.javascript; cfg = config.modules.dev.javascript;
in in
{ {
options.modules.dev.javascript = { options.modules.dev.javascript = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
nodejs nodejs
yarn yarn

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.lua; cfg = config.modules.dev.lua;
in { in {
options.modules.dev.lua = { options.modules.dev.lua = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
lua-language-server lua-language-server
lua lua

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.dev.nil; cfg = config.modules.dev.nil;
in in
{ {
options.modules.dev.nil = { options.modules.dev.nil = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
nil nil
alejandra alejandra

View file

@ -8,16 +8,16 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.nixd; cfg = config.modules.dev.nixd;
in { in {
options.modules.dev.nixd = { options.modules.dev.nixd = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
# TODO(sako):: figure out how .nixd.json works # TODO(sako):: figure out how .nixd.json works
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
unstable.nixd unstable.nixd
alejandra alejandra

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.dev.python; cfg = config.modules.dev.python;
in { in {
options.modules.dev.python = { options.modules.dev.python = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
python3 python3
black black

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.dev.rust; cfg = config.modules.dev.rust;
in in
{ {
options.modules.dev.rust= { options.modules.dev.rust= {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
rustup rustup
cargo cargo

View file

@ -1,14 +1,13 @@
{ options, config, lib, pkgs, ...}: { options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.hardware.bluetooth; cfg = config.modules.hardware.bluetooth;
in in
{ {
options.modules.hardware.bluetooth = { options.modules.hardware.bluetooth = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
hardware.bluetooth = { hardware.bluetooth = {
enable = true; enable = true;
settings = { settings = {

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.hardware.intelgputools; cfg = config.modules.hardware.intelgputools;
in in
{ {
options.modules.hardware.intelgputools = { options.modules.hardware.intelgputools = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
intel-gpu-tools intel-gpu-tools
]; ];

View file

@ -6,17 +6,17 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.hardware.nvidia; cfg = config.modules.hardware.nvidia;
in { in {
imports = [ imports = [
./prime.nix ./prime.nix
]; ];
options.modules.hardware.nvidia = { options.modules.hardware.nvidia = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
hardware.opengl = { hardware.opengl = {
enable = true; enable = true;
driSupport = true; driSupport = true;

View file

@ -6,26 +6,26 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.hardware.nvidia.prime; cfg = config.modules.hardware.nvidia.prime;
busIDType = lib.types.strMatching "([[:print:]]+[\:\@][0-9]{1,3}\:[0-9]{1,2}\:[0-9])?"; busIDType = lib.types.strMatching "([[:print:]]+[\:\@][0-9]{1,3}\:[0-9]{1,2}\:[0-9])?";
in { in {
options.modules.hardware.nvidia.prime = { options.modules.hardware.nvidia.prime = {
enable = mkOption { enable = lib.mkOption {
type = types.bool; type = lib.types.bool;
default = false; default = false;
}; };
intelBusId = mkOption { intelBusId = lib.mkOption {
type = busIDType; type = busIDType;
default = ""; default = "";
}; };
nvidiaBusId = mkOption { nvidiaBusId = lib.mkOption {
type = busIDType; type = busIDType;
default = ""; default = "";
}; };
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
hardware.nvidia = { hardware.nvidia = {
prime = { prime = {
offload = { offload = {

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.hardware.pipewire; cfg = config.modules.hardware.pipewire;
in in
{ {
options.modules.hardware.pipewire = { options.modules.hardware.pipewire = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# resolve racial conflict between # resolve racial conflict between
# pulseaudio and pipewire # pulseaudio and pipewire
sound.enable = lib.mkDefault false; sound.enable = lib.mkDefault false;

View file

@ -5,14 +5,14 @@
lib, lib,
... ...
}: }:
with lib; let let
cfg = config.modules.media.mopidy; cfg = config.modules.media.mopidy;
in { in {
options.modules.media.mopidy = { options.modules.media.mopidy = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.mopidy = { services.mopidy = {
enable = true; enable = true;
extensionPackages = with pkgs; [ extensionPackages = with pkgs; [

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.media.mpd; cfg = config.modules.media.mpd;
in in
{ {
options.modules.media.mpd = { options.modules.media.mpd = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.mpd = { services.mpd = {
enable = true; enable = true;
user = "sako"; user = "sako";

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.media.ncmpcpp; cfg = config.modules.media.ncmpcpp;
in in
{ {
options.modules.media.ncmpcpp = { options.modules.media.ncmpcpp = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
ncmpcpp ncmpcpp
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.security.age; cfg = config.modules.security.age;
in in
{ {
options.modules.security.age = { options.modules.security.age = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
age age
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.security.certs; cfg = config.modules.security.certs;
in { in {
options.modules.security.certs = { options.modules.security.certs = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
security.pki.certificateFiles = [./trust/homelab.pem]; security.pki.certificateFiles = [./trust/homelab.pem];
}; };
} }

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.security.age; cfg = config.modules.security.age;
in { in {
options.modules.security.sops = { options.modules.security.sops = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
sops sops
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.shell.aria; cfg = config.modules.shell.aria;
in in
{ {
options.modules.shell.aria= { options.modules.shell.aria= {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
aria aria
]; ];

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.shell.newsboat; cfg = config.modules.shell.newsboat;
in in
{ {
options.modules.shell.newsboat= { options.modules.shell.newsboat= {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
newsboat newsboat
]; ];

View file

@ -2,15 +2,14 @@
# this automatically optimizes stuff like nix-store # this automatically optimizes stuff like nix-store
# and cleans out garbage weekly # and cleans out garbage weekly
# also limits generations # also limits generations
with lib;
let cfg = config.modules.shell.nix.optimize; let cfg = config.modules.shell.nix.optimize;
in in
{ {
options.modules.shell.nix.optimize = { options.modules.shell.nix.optimize = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
nix = { nix = {
# garbage collection # garbage collection
gc = { gc = {

View file

@ -2,15 +2,14 @@
# this makes # this makes
# nix search nixpkgs <package> # nix search nixpkgs <package>
# ALOT faster # ALOT faster
with lib;
let cfg = config.modules.shell.nix.search; let cfg = config.modules.shell.nix.search;
in in
{ {
options.modules.shell.nix.search = { options.modules.shell.nix.search = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
nix = { nix = {
registry = { registry = {
nixpkgs.flake = inputs.nixpkgs; nixpkgs.flake = inputs.nixpkgs;

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.shell.ranger; cfg = config.modules.shell.ranger;
in { in {
options.modules.shell.ranger = { options.modules.shell.ranger = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
ranger ranger
# pdf viewer # pdf viewer

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.shell.tmux; cfg = config.modules.shell.tmux;
in in
{ {
options.modules.shell.tmux = { options.modules.shell.tmux = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
tmux tmux
]; ];

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.shell.zsh; cfg = config.modules.shell.zsh;
in { in {
options.modules.shell.zsh = { options.modules.shell.zsh = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.shell = pkgs.zsh; users.users.sako.shell = pkgs.zsh;
programs.zsh = { programs.zsh = {

View file

@ -1,14 +1,13 @@
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.virtualization.libvirtd; cfg = config.modules.virtualization.libvirtd;
in in
{ {
options.modules.virtualization.libvirtd = { options.modules.virtualization.libvirtd = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
virtualization.libvirtd.enable = true; virtualization.libvirtd.enable = true;
programs.dconf.enable = true; programs.dconf.enable = true;
environtment.systemPackages = with pkgs; [ environtment.systemPackages = with pkgs; [

View file

@ -6,14 +6,14 @@
pkgs, pkgs,
... ...
}: }:
with lib; let let
cfg = config.modules.work.libreoffice; cfg = config.modules.work.libreoffice;
in { in {
options.modules.work.libreoffice = { options.modules.work.libreoffice = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
libreoffice libreoffice
]; ];

View file

@ -1,16 +1,15 @@
# i wonder what the difference is # i wonder what the difference is
{ outputs, options, config, lib, pkgs, ...}: { outputs, options, config, lib, pkgs, ...}:
with lib;
let let
cfg = config.modules.work.onlyoffice; cfg = config.modules.work.onlyoffice;
in in
{ {
options.modules.work.onlyoffice = { options.modules.work.onlyoffice = {
enable = mkEnableOption false; enable = lib.mkEnableOption false;
}; };
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
users.users.sako.packages = with pkgs; [ users.users.sako.packages = with pkgs; [
onlyoffice-bin onlyoffice-bin
]; ];