This commit is contained in:
Peritia 2025-09-10 12:17:16 +02:00
parent fc0abdd4bb
commit aca73cdd0f
73 changed files with 3873 additions and 381 deletions

View file

@ -1,3 +1,14 @@
# C Compiler (System Module)
#
# Provides:
# - GCC (C/C++)
# - Clang (alternative C/C++)
# - Mono (C#)
#
# Options:
# - enable → Enable C compiler toolchain
#
{ config, lib, pkgs, ... }:
let
@ -5,16 +16,15 @@ let
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.";
};
enable = lib.mkEnableOption "Enable C compiler (system module)";
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
environment.systemPackages = with pkgs; [
gcc # C & C++
clang # alt C/C++
mono # C#
];
};
}

View file

@ -1,3 +1,12 @@
# Go (System Module)
#
# Provides:
# - Go programming language toolchain
#
# Options:
# - enable → Enable Go system module
#
{ config, lib, pkgs, ... }:
let
@ -5,16 +14,12 @@ let
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.";
};
enable = lib.mkEnableOption "Enable Go (system module)";
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
environment.systemPackages = with pkgs; [
go
];
};
}

View file

@ -1,3 +1,13 @@
# Lua (System Module)
#
# Provides:
# - Lua (standard interpreter)
# - LuaJIT (Just-In-Time compiler)
#
# Options:
# - enable → Enable Lua system module
#
{ config, lib, pkgs, ... }:
let
@ -5,16 +15,13 @@ let
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.";
};
enable = lib.mkEnableOption "Enable Lua (system module)";
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
environment.systemPackages = with pkgs; [
lua
luajit
];
};
}

View file

@ -1,3 +1,13 @@
# Python (System Module)
#
# Provides:
# - Python 3 interpreter
# - Pip (package manager)
#
# Options:
# - enable → Enable Python system module
#
{ config, lib, pkgs, ... }:
let
@ -5,16 +15,13 @@ let
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.";
};
enable = lib.mkEnableOption "Enable Python (system module)";
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
environment.systemPackages = with pkgs; [
python3
python3Packages.pip
];
};
}

View file

@ -1,3 +1,13 @@
# Rust (System Module)
#
# Provides:
# - Rust compiler (rustc)
# - Cargo (Rust package manager & build system)
#
# Options:
# - enable → Enable Rust system module
#
{ config, lib, pkgs, ... }:
let
@ -5,16 +15,13 @@ let
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.";
};
enable = lib.mkEnableOption "Enable Rust (system module)";
};
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
environment.systemPackages = with pkgs; [
rustc
cargo
];
};
}