This commit is contained in:
Peritia 2025-08-29 12:29:00 +02:00
commit 2278bffff9
77 changed files with 1174 additions and 0 deletions

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.bluetooth;
in
{
options.nyx-module.system.bluetooth = {
enable = lib.mkEnableOption "Enable bluetooth (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.bluetooth;
description = "Package to install for bluetooth.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./bluetooth.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.Custom-Kernel;
in
{
options.nyx-module.system.Custom-Kernel = {
enable = lib.mkEnableOption "Enable Custom-Kernel (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.Custom-Kernel;
description = "Package to install for Custom-Kernel.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Custom-Kernel.nix
];
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Bluetooth
./Surface
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.brave;
in
{
options.nyx-module.home.brave = {
enable = lib.mkEnableOption "Enable brave (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.brave;
description = "Package to install for brave.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./brave.nix
];
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./signal-desktop.nix
./vesktop.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.signal-desktop;
in
{
options.nyx-module.home.signal-desktop = {
enable = lib.mkEnableOption "Enable signal-desktop (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.signal-desktop;
description = "Package to install for signal-desktop.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.vesktop;
in
{
options.nyx-module.home.vesktop = {
enable = lib.mkEnableOption "Enable vesktop (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.vesktop;
description = "Package to install for vesktop.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./rustdesk.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.rustdesk;
in
{
options.nyx-module.home.rustdesk = {
enable = lib.mkEnableOption "Enable rustdesk (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.rustdesk;
description = "Package to install for rustdesk.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Messaging
./Remote
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./vscodium.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.vscodium;
in
{
options.nyx-module.home.vscodium = {
enable = lib.mkEnableOption "Enable vscodium (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.vscodium;
description = "Package to install for vscodium.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.classic-game-collection;
in
{
options.nyx-module.home.classic-game-collection = {
enable = lib.mkEnableOption "Enable classic-game-collection (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.classic-game-collection;
description = "Package to install for classic-game-collection.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./classic-game-collection.nix
./prismlauncher.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.prismlauncher;
in
{
options.nyx-module.home.prismlauncher = {
enable = lib.mkEnableOption "Enable prismlauncher (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.prismlauncher;
description = "Package to install for prismlauncher.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./spotify.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.spotify;
in
{
options.nyx-module.home.spotify = {
enable = lib.mkEnableOption "Enable spotify (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.spotify;
description = "Package to install for spotify.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.camera;
in
{
options.nyx-module.home.camera = {
enable = lib.mkEnableOption "Enable camera (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.camera;
description = "Package to install for camera.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./camera.nix
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./krita.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.krita;
in
{
options.nyx-module.home.krita = {
enable = lib.mkEnableOption "Enable krita (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.krita;
description = "Package to install for krita.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./kdenlive.nix
./zoom.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.kdenlive;
in
{
options.nyx-module.home.kdenlive = {
enable = lib.mkEnableOption "Enable kdenlive (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.kdenlive;
description = "Package to install for kdenlive.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.zoom;
in
{
options.nyx-module.home.zoom = {
enable = lib.mkEnableOption "Enable zoom (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.zoom;
description = "Package to install for zoom.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,10 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Audio
./Capture
./Graphics
./Video
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./obsidian.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.obsidian;
in
{
options.nyx-module.home.obsidian = {
enable = lib.mkEnableOption "Enable obsidian (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.obsidian;
description = "Package to install for obsidian.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./office-apps.nix
./printer-scan.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.office-apps;
in
{
options.nyx-module.home.office-apps = {
enable = lib.mkEnableOption "Enable office-apps (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.office-apps;
description = "Package to install for office-apps.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.printer-scan;
in
{
options.nyx-module.home.printer-scan = {
enable = lib.mkEnableOption "Enable printer-scan (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.printer-scan;
description = "Package to install for printer-scan.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Knowledge
./Productivity
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./standard-apps.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.standard-apps;
in
{
options.nyx-module.home.standard-apps = {
enable = lib.mkEnableOption "Enable standard-apps (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.standard-apps;
description = "Package to install for standard-apps.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./protonvpn.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.protonvpn;
in
{
options.nyx-module.home.protonvpn = {
enable = lib.mkEnableOption "Enable protonvpn (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.protonvpn;
description = "Package to install for protonvpn.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,14 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Browsers
./Communication
./Development
./Gaming
./Multimedia
./Office
./System-Tools
./VPN
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./tools.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.tools;
in
{
options.nyx-module.home.tools = {
enable = lib.mkEnableOption "Enable tools (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.tools;
description = "Package to install for tools.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./cli-tools
./zsh
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./zsh.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.zsh;
in
{
options.nyx-module.home.zsh = {
enable = lib.mkEnableOption "Enable zsh (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.zsh;
description = "Package to install for zsh.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./private-webapps.nix
./work-webapps.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.private-webapps;
in
{
options.nyx-module.home.private-webapps = {
enable = lib.mkEnableOption "Enable private-webapps (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.private-webapps;
description = "Package to install for private-webapps.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.home.work-webapps;
in
{
options.nyx-module.home.work-webapps = {
enable = lib.mkEnableOption "Enable work-webapps (home) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.work-webapps;
description = "Package to install for work-webapps.";
};
};
config = lib.mkIf cfg.enable {
home.packages = [ cfg.package ];
};
}

9
Modules/Home/default.nix Normal file
View file

@ -0,0 +1,9 @@
{ config, lib, pkgs, ... }:
{
imports = [
./GUI-Apps
./Shell
./Webapps
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./steam.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.steam;
in
{
options.nyx-module.system.steam = {
enable = lib.mkEnableOption "Enable steam (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.steam;
description = "Package to install for steam.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Steam
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.all-grub;
in
{
options.nyx-module.system.all-grub = {
enable = lib.mkEnableOption "Enable all-grub (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.all-grub;
description = "Package to install for all-grub.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./all-grub.nix
./minegrub.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.minegrub;
in
{
options.nyx-module.system.minegrub = {
enable = lib.mkEnableOption "Enable minegrub (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.minegrub;
description = "Package to install for minegrub.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,8 @@
{ config, lib, pkgs, ... }:
{
imports = [
./flatpak.nix
./wireshark.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.flatpak;
in
{
options.nyx-module.system.flatpak = {
enable = lib.mkEnableOption "Enable flatpak (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.flatpak;
description = "Package to install for flatpak.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.wireshark;
in
{
options.nyx-module.system.wireshark = {
enable = lib.mkEnableOption "Enable wireshark (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.wireshark;
description = "Package to install for wireshark.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,10 @@
{ config, lib, pkgs, ... }:
{
imports = [
./docker.nix
./openssh.nix
./vm.nix
./zsh.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.docker;
in
{
options.nyx-module.system.docker = {
enable = lib.mkEnableOption "Enable docker (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.docker;
description = "Package to install for docker.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.openssh;
in
{
options.nyx-module.system.openssh = {
enable = lib.mkEnableOption "Enable openssh (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.openssh;
description = "Package to install for openssh.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.vm;
in
{
options.nyx-module.system.vm = {
enable = lib.mkEnableOption "Enable vm (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.vm;
description = "Package to install for vm.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.zsh;
in
{
options.nyx-module.system.zsh = {
enable = lib.mkEnableOption "Enable zsh (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.zsh;
description = "Package to install for zsh.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,10 @@
{ config, lib, pkgs, ... }:
{
imports = [
./cli
./Gaming
./Grub
./Special-Applications
];
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./kde.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.kde;
in
{
options.nyx-module.system.kde = {
enable = lib.mkEnableOption "Enable kde (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.kde;
description = "Package to install for kde.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,7 @@
{ config, lib, pkgs, ... }:
{
imports = [
./KDE
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.c-compiler;
in
{
options.nyx-module.system.c-compiler = {
enable = lib.mkEnableOption "Enable c-compiler (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.c-compiler;
description = "Package to install for c-compiler.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,11 @@
{ config, lib, pkgs, ... }:
{
imports = [
./c-compiler.nix
./go.nix
./lua.nix
./python.nix
./rust.nix
];
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.go;
in
{
options.nyx-module.system.go = {
enable = lib.mkEnableOption "Enable go (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.go;
description = "Package to install for go.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.lua;
in
{
options.nyx-module.system.lua = {
enable = lib.mkEnableOption "Enable lua (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.lua;
description = "Package to install for lua.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.python;
in
{
options.nyx-module.system.python = {
enable = lib.mkEnableOption "Enable python (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.python;
description = "Package to install for python.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,20 @@
{ config, lib, pkgs, ... }:
let
cfg = config.nyx-module.system.rust;
in
{
options.nyx-module.system.rust = {
enable = lib.mkEnableOption "Enable rust (system) module";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.rust;
description = "Package to install for rust.";
};
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
};
}

View file

@ -0,0 +1,9 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Application
./Desktops
./Programming-Tools
];
}

9
Modules/default.nix Normal file
View file

@ -0,0 +1,9 @@
{ config, lib, pkgs, ... }:
{
imports = [
./Hardware
./Home
./System
];
}