initial commit for module-refactor
This commit is contained in:
@@ -1,29 +1,34 @@
|
||||
{...}: {
|
||||
environment.etc."issue".text = ''
|
||||
{lib, config, ...}: {
|
||||
options = {
|
||||
issue.enable = lib.mkEnableOption "enables custom /etc/issue splash screen for the tty";
|
||||
};
|
||||
config = lib.mkIf config.issue.enable {
|
||||
environment.etc."issue".text = ''
|
||||
|
||||
\e[38;5;27m▓▓▓▓ \e[38;5;81m▒▒▒▒ ▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ \e[38;5;81m▒▒▒▒ ▒▒▒▒ \e[38;5;27m ▓▓▓
|
||||
\e[38;5;27m▓▓▓▓ \e[38;5;81m▒▒▒▒▒▒▒▒ \e[38;5;27m ▓▓▓ ▓▓ ▓▓▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓\e[38;5;81m▒▒▒▒▒▒ \e[38;5;27m▓▓ \e[38;5;27m ▓▓▓▓▓ ▓▓▓▓ ▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓\e[38;5;81m▒▒▒▒ \e[38;5;27m▓▓▓ \e[38;5;27m ▓▓▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒ \e[38;5;81m▒▒▒▒ \e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒ ▒▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒ \e[38;5;81m▒▒▒▒\e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒▒▒▒▒▒▒▒ \e[38;5;81m▒▒\e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;81m ▒▒▒▒▒▒▒▒▒\e[38;5;27m \e[38;5;27m▓▓▓▓▓▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒\e[38;5;27m▓▓ \e[38;5;27m▓▓▓▓▓▓▓▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒\e[38;5;27m▓▓▓▓ \e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒ \e[38;5;27m▓▓▓▓ \e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒▒ \e[38;5;27m▓▓▓▓\e[38;5;81m▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓▓▓ \e[38;5;81m ▒▒▒▒ ▒▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒ \e[38;5;27m▓▓▓▓▓▓\e[38;5;81m▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓▓▓▓▓ \e[38;5;81m▒▒▒▒ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ ▓▓▓▓ \e[38;5;81m▒▒▒▒ \e[38;5;27m ▓▓ ▓▓▓ ▓▓▓ ▓▓▓ ▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ ▓▓▓▓ \e[38;5;81m▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ \e[38;5;81m▒▒▒▒ ▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ \e[38;5;81m▒▒▒▒ ▒▒▒▒ \e[38;5;27m ▓▓▓
|
||||
\e[38;5;27m▓▓▓▓ \e[38;5;81m▒▒▒▒▒▒▒▒ \e[38;5;27m ▓▓▓ ▓▓ ▓▓▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓\e[38;5;81m▒▒▒▒▒▒ \e[38;5;27m▓▓ \e[38;5;27m ▓▓▓▓▓ ▓▓▓▓ ▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓\e[38;5;81m▒▒▒▒ \e[38;5;27m▓▓▓ \e[38;5;27m ▓▓▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒ \e[38;5;81m▒▒▒▒ \e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒ ▒▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒ \e[38;5;81m▒▒▒▒\e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒▒▒▒▒▒▒▒ \e[38;5;81m▒▒\e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;81m ▒▒▒▒▒▒▒▒▒\e[38;5;27m \e[38;5;27m▓▓▓▓▓▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒\e[38;5;27m▓▓ \e[38;5;27m▓▓▓▓▓▓▓▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒\e[38;5;27m▓▓▓▓ \e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓ ▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;81m▒▒▒▒ \e[38;5;27m▓▓▓▓ \e[38;5;27m▓▓▓▓ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓ \e[38;5;81m ▒▒▒ ▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒▒ \e[38;5;27m▓▓▓▓\e[38;5;81m▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓▓▓ ▓▓▓ ▓▓▓▓▓▓▓▓ \e[38;5;81m ▒▒▒▒ ▒▒▒▒ ▒▒▒▒
|
||||
\e[38;5;81m▒▒ \e[38;5;27m▓▓▓▓▓▓\e[38;5;81m▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓▓▓▓▓ \e[38;5;81m▒▒▒▒ \e[38;5;27m ▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓▓ ▓▓▓▓ ▓▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ ▓▓▓▓ \e[38;5;81m▒▒▒▒ \e[38;5;27m ▓▓ ▓▓▓ ▓▓▓ ▓▓▓ ▓▓▓ \e[38;5;81m ▒▒▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒▒
|
||||
\e[38;5;27m▓▓▓▓ ▓▓▓▓ \e[38;5;81m▒▒▒▒
|
||||
|
||||
\e[1;32mSystem Maintainer\e[0m: Kyler Clay
|
||||
\e[1;32mContact\e[0m: kylerclay@proton.me
|
||||
470-403-8522
|
||||
\e[1;32mSystem Maintainer\e[0m: Kyler Clay
|
||||
\e[1;32mContact\e[0m: kylerclay@proton.me
|
||||
470-403-8522
|
||||
|
||||
Run '\e[1;35mnixos-help\e[0m' for the NixOS manual.
|
||||
Run '\e[1;35mHyprland\e[0m' to enter the desktop environment.
|
||||
'';
|
||||
Run '\e[1;35mnixos-help\e[0m' for the NixOS manual.
|
||||
Run '\e[1;35mHyprland\e[0m' to enter the desktop environment.
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
21
modules/sys/environment/nix.nix
Normal file
21
modules/sys/environment/nix.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{lib, config, ... }: {
|
||||
options = {
|
||||
nixSettings.enable = lib.mkEnableOption "enables my nixos settings";
|
||||
};
|
||||
config = lib.mkIf config.nixSettings.enable {
|
||||
nix = {
|
||||
settings = {
|
||||
auto-optimise-store = true;
|
||||
experimental-features = ["nix-command" "flakes"];
|
||||
substituters = ["https://nix-gaming.cachix.org"];
|
||||
};
|
||||
gc = {
|
||||
automatic = true;
|
||||
dates = "weekly";
|
||||
options = "--delete-older-than 7d";
|
||||
};
|
||||
};
|
||||
time.timeZone = "America/New_York";
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
};
|
||||
}
|
||||
@@ -1,24 +1,30 @@
|
||||
{
|
||||
pkgs,
|
||||
self,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
environment.systemPackages = [
|
||||
(
|
||||
pkgs.catppuccin-sddm.override {
|
||||
flavor = "mocha";
|
||||
font = "JetBrains Mono Nerd Font";
|
||||
fontSize = "14";
|
||||
loginBackground = true;
|
||||
background = "${self}/assets/wallpapers/dark-waves.jpg";
|
||||
}
|
||||
)
|
||||
];
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
theme = "catppuccin-mocha";
|
||||
package = pkgs.kdePackages.sddm;
|
||||
options = {
|
||||
sddmOpts.enable = lib.mkEnableOption "enables custom sddm configuration";
|
||||
};
|
||||
config = lib.mkIf config.sddmOpts.enable {
|
||||
environment.systemPackages = [
|
||||
(
|
||||
pkgs.catppuccin-sddm.override {
|
||||
flavor = "mocha";
|
||||
font = "JetBrains Mono Nerd Font";
|
||||
fontSize = "14";
|
||||
loginBackground = true;
|
||||
background = "${self}/assets/wallpapers/dark-waves.jpg";
|
||||
}
|
||||
)
|
||||
];
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
theme = "catppuccin-mocha";
|
||||
package = pkgs.kdePackages.sddm;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,44 +2,51 @@
|
||||
pkgs,
|
||||
scheme,
|
||||
wallpaper,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
stylix = {
|
||||
enable = true;
|
||||
base16Scheme = scheme;
|
||||
image = wallpaper;
|
||||
polarity = "dark";
|
||||
autoEnable = true;
|
||||
opacity.terminal = 0.5;
|
||||
targets = {
|
||||
console.enable = true;
|
||||
feh.enable = true;
|
||||
grub.enable = true;
|
||||
gtk.enable = true;
|
||||
nixos-icons.enable = true;
|
||||
};
|
||||
cursor = {
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Ice";
|
||||
};
|
||||
fonts = {
|
||||
monospace = {
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
name = "JetBrains Mono Nerd Font";
|
||||
options = {
|
||||
stylixOpts.enable = lib.mkEnableOption "enables custom stylix options";
|
||||
};
|
||||
config = lib.mkIf config.stylixOpts.enable {
|
||||
stylix = {
|
||||
enable = true;
|
||||
base16Scheme = scheme;
|
||||
image = wallpaper;
|
||||
polarity = "dark";
|
||||
autoEnable = true;
|
||||
opacity.terminal = 0.5;
|
||||
targets = {
|
||||
console.enable = true;
|
||||
feh.enable = true;
|
||||
grub.enable = true;
|
||||
gtk.enable = true;
|
||||
nixos-icons.enable = true;
|
||||
};
|
||||
sansSerif = {
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
name = "JetBrains Mono Nerd Font";
|
||||
cursor = {
|
||||
package = pkgs.bibata-cursors;
|
||||
name = "Bibata-Modern-Ice";
|
||||
};
|
||||
serif = {
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
name = "JetBrains Mono Nerd Font";
|
||||
};
|
||||
sizes = {
|
||||
desktop = 10;
|
||||
applications = 14;
|
||||
terminal = 14;
|
||||
popups = 16;
|
||||
fonts = {
|
||||
monospace = {
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
name = "JetBrains Mono Nerd Font";
|
||||
};
|
||||
sansSerif = {
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
name = "JetBrains Mono Nerd Font";
|
||||
};
|
||||
serif = {
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
name = "JetBrains Mono Nerd Font";
|
||||
};
|
||||
sizes = {
|
||||
desktop = 10;
|
||||
applications = 14;
|
||||
terminal = 14;
|
||||
popups = 16;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,8 +1,14 @@
|
||||
{pkgs, ...}: {
|
||||
boot = {
|
||||
loader.systemd-boot.enable = true;
|
||||
loader.efi.canTouchEfiVariables = true;
|
||||
loader.systemd-boot.configurationLimit = 10;
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
{pkgs, lib, config, ...}: {
|
||||
options = {
|
||||
# make this enabled by default!!!
|
||||
bootLoader.enable = lib.mkEnableOption "enables bootloader config";
|
||||
};
|
||||
config = lib.mkIf config.bootLoader.enable {
|
||||
boot = {
|
||||
loader.systemd-boot.enable = true;
|
||||
loader.efi.canTouchEfiVariables = true;
|
||||
loader.systemd-boot.configurationLimit = 10;
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -10,5 +10,6 @@
|
||||
}: {
|
||||
imports =
|
||||
[(import ./bootloader.nix)]
|
||||
++ [(import ./network.nix)];
|
||||
++ [(import ./network.nix)]
|
||||
++ [(import ./powerprofiles.nix)];
|
||||
}
|
||||
|
||||
@@ -1,20 +1,24 @@
|
||||
{host, ...}: let
|
||||
{host, lib, config, ...}: let
|
||||
desktop = host == "oganesson";
|
||||
in {
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName =
|
||||
if desktop
|
||||
then "oganesson"
|
||||
else "mercury";
|
||||
hosts = {
|
||||
"192.168.1.201" = ["glasshaus"];
|
||||
"192.168.1.111" = ["argon"];
|
||||
"192.168.1.223" = ["mercury"];
|
||||
};
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedTCPPorts = [30000];
|
||||
options = {
|
||||
networkModule.enable = lib.mkEnableOption "enables network configuration";
|
||||
};
|
||||
config = lib.mkIf config.networkModule.enable {
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName =
|
||||
if desktop
|
||||
then "oganesson"
|
||||
else "mercury";
|
||||
hosts = {
|
||||
"192.168.1.201" = ["xenon"];
|
||||
"192.168.1.111" = ["argon"];
|
||||
"192.168.1.223" = ["mercury"];
|
||||
};
|
||||
firewall = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
51
modules/sys/hardware/powerprofiles.nix
Normal file
51
modules/sys/hardware/powerprofiles.nix
Normal file
@@ -0,0 +1,51 @@
|
||||
{lib, config, ... }: {
|
||||
options = {
|
||||
powerProfiles.enable = lib.mkEnableOption "enables power profiles";
|
||||
};
|
||||
config = lib.mkIf config.powerProfiles.enable {
|
||||
services = {
|
||||
keyd = {
|
||||
enable = true;
|
||||
keyboards.default = {
|
||||
ids = ["*"];
|
||||
settings.main = {
|
||||
capslock = "esc";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
power-profiles-daemon.enable = true;
|
||||
|
||||
upower = {
|
||||
enable = true;
|
||||
percentageLow = 20;
|
||||
percentageCritical = 5;
|
||||
percentageAction = 3;
|
||||
criticalPowerAction = "PowerOff";
|
||||
};
|
||||
|
||||
tlp.settings = {
|
||||
CPU_ENERGY_PERF_POLICY_ON_AC = "power";
|
||||
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
|
||||
|
||||
CPU_BOOST_ON_AC = 1;
|
||||
CPU_BOOST_ON_BAT = 1;
|
||||
|
||||
CPU_HWP_DYN_BOOST_ON_AC = 1;
|
||||
CPU_HWP_DYN_BOOST_ON_BAT = 1;
|
||||
|
||||
PLATFORM_PROFILE_ON_AC = "performance";
|
||||
PLATFORM_PROFILE_ON_BAT = "performance";
|
||||
|
||||
INTEL_GPU_MIN_FREQ_ON_AC = 500;
|
||||
INTEL_GPU_MIN_FREQ_ON_BAT = 500;
|
||||
# INTEL_GPU_MAX_FREQ_ON_AC=0;
|
||||
# INTEL_GPU_MAX_FREQ_ON_BAT=0;
|
||||
# INTEL_GPU_BOOST_FREQ_ON_AC=0;
|
||||
# INTEL_GPU_BOOST_FREQ_ON_BAT=0;
|
||||
|
||||
PCIE_ASPM_ON_AC = "default";
|
||||
PCIE_ASPM_ON_BAT = "powersupersave";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -18,5 +18,6 @@ in {
|
||||
++ [(import ./programs.nix)]
|
||||
++ [(import ./services.nix)]
|
||||
++ [(import ./nixvim)]
|
||||
++ [(import ./module-test.nix)]
|
||||
++ desktop_modules;
|
||||
}
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
{pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
snes9x-gtk
|
||||
];
|
||||
{lib, config, pkgs, ...}: {
|
||||
options = {
|
||||
gamingPkgs.enable = lib.mkEnableOption "enables gaming packages";
|
||||
};
|
||||
config = lib.mkIf config.gamingPkgs.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
snes9x-gtk
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
{...}: {
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
{lib, config, ...}: {
|
||||
options = {
|
||||
steamOpts.enable = lib.mkEnableOption "enables steam configuration";
|
||||
};
|
||||
config = lib.mkIf config.steamOpts.enable {
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
11
modules/sys/software/module-test.nix
Normal file
11
modules/sys/software/module-test.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{ pkgs, lib, config, ... }:
|
||||
{
|
||||
options = {
|
||||
testmodule.enable = lib.mkEnableOption "enables test module";
|
||||
};
|
||||
config = lib.mkIf config.testmodule.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
hello
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,79 +1,79 @@
|
||||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
alejandra
|
||||
alsa-lib
|
||||
alsa-utils
|
||||
bc
|
||||
cava
|
||||
cabal-install
|
||||
clang
|
||||
clang-tools
|
||||
cliphist
|
||||
cmake
|
||||
fail2ban
|
||||
feh
|
||||
ffmpeg-full
|
||||
fuse
|
||||
git
|
||||
gnumake
|
||||
gst_all_1.gstreamer
|
||||
htop
|
||||
hyprland
|
||||
hyprland-workspaces
|
||||
hyprpicker
|
||||
imagemagick
|
||||
inetutils
|
||||
kitty
|
||||
libclang
|
||||
libcxx
|
||||
lolcat
|
||||
lsof
|
||||
lua-language-server
|
||||
luarocks
|
||||
mesa
|
||||
mpd
|
||||
mullvad
|
||||
mesa
|
||||
neofetch
|
||||
nh
|
||||
nix-index
|
||||
nix-output-monitor
|
||||
nix-prefetch-scripts
|
||||
nixos-option
|
||||
nix-search-cli
|
||||
nvd
|
||||
openssl
|
||||
p7zip
|
||||
jq
|
||||
pamixer
|
||||
parted
|
||||
pavucontrol
|
||||
pkg-config
|
||||
playerctl
|
||||
protonmail-bridge
|
||||
protontricks
|
||||
pyright
|
||||
socat
|
||||
sox
|
||||
stress
|
||||
tor
|
||||
tree
|
||||
unrar
|
||||
unzip
|
||||
usbutils
|
||||
vim
|
||||
vscode-langservers-extracted
|
||||
vulkan-loader
|
||||
wget
|
||||
wine
|
||||
wl-clipboard
|
||||
xpad
|
||||
libnotify
|
||||
file
|
||||
libvirt-glib
|
||||
];
|
||||
{lib, config, pkgs, inputs, ... }: {
|
||||
options = {
|
||||
sysPkgs.enable = lib.mkEnableOption "enables default system packages";
|
||||
};
|
||||
config = lib.mkIf config.sysPkgs.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
alejandra
|
||||
alsa-lib
|
||||
alsa-utils
|
||||
bc
|
||||
cava
|
||||
cabal-install
|
||||
clang
|
||||
clang-tools
|
||||
cliphist
|
||||
cmake
|
||||
fail2ban
|
||||
feh
|
||||
ffmpeg-full
|
||||
fuse
|
||||
git
|
||||
gnumake
|
||||
gst_all_1.gstreamer
|
||||
htop
|
||||
hyprland-workspaces
|
||||
hyprpicker
|
||||
imagemagick
|
||||
inetutils
|
||||
kitty
|
||||
libclang
|
||||
libcxx
|
||||
lolcat
|
||||
lsof
|
||||
lua-language-server
|
||||
luarocks
|
||||
mesa
|
||||
mpd
|
||||
mullvad
|
||||
mesa
|
||||
neofetch
|
||||
nh
|
||||
nix-index
|
||||
nix-output-monitor
|
||||
nix-prefetch-scripts
|
||||
nixos-option
|
||||
nix-search-cli
|
||||
nvd
|
||||
openssl
|
||||
p7zip
|
||||
jq
|
||||
pamixer
|
||||
parted
|
||||
pavucontrol
|
||||
pkg-config
|
||||
playerctl
|
||||
protonmail-bridge
|
||||
protontricks
|
||||
pyright
|
||||
socat
|
||||
sox
|
||||
stress
|
||||
tor
|
||||
tree
|
||||
unrar
|
||||
unzip
|
||||
usbutils
|
||||
vim
|
||||
vscode-langservers-extracted
|
||||
vulkan-loader
|
||||
wget
|
||||
wine
|
||||
wl-clipboard
|
||||
xpad
|
||||
libnotify
|
||||
file
|
||||
libvirt-glib
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,17 +1,22 @@
|
||||
{pkgs, ...}: {
|
||||
programs = {
|
||||
hyprland.enable = true;
|
||||
zsh.enable = true;
|
||||
nix-ld = {
|
||||
enable = true;
|
||||
libraries = with pkgs; [
|
||||
stdenv.cc.cc
|
||||
ffmpeg-full
|
||||
];
|
||||
};
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
{lib, config, pkgs, ...}: {
|
||||
options = {
|
||||
sysProgs.enable = lib.mkEnableOption "enables default system programs";
|
||||
};
|
||||
config = lib.mkIf config.sysProgs.enable {
|
||||
programs = {
|
||||
hyprland.enable = true;
|
||||
zsh.enable = true;
|
||||
nix-ld = {
|
||||
enable = true;
|
||||
libraries = with pkgs; [
|
||||
stdenv.cc.cc
|
||||
ffmpeg-full
|
||||
];
|
||||
};
|
||||
gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,19 +1,24 @@
|
||||
{...}: {
|
||||
services = {
|
||||
pipewire = {
|
||||
enable = true;
|
||||
pulse.enable = true;
|
||||
wireplumber.enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
};
|
||||
udev.enable = true;
|
||||
dbus.enable = true;
|
||||
mullvad-vpn.enable = true;
|
||||
blueman.enable = true;
|
||||
openssh = {
|
||||
enable = true;
|
||||
allowSFTP = true;
|
||||
{lib, config, ...}: {
|
||||
options = {
|
||||
sysServices.enable = lib.mkEnableOption "enables default system services";
|
||||
};
|
||||
config = lib.mkIf config.sysServices.enable {
|
||||
services = {
|
||||
pipewire = {
|
||||
enable = true;
|
||||
pulse.enable = true;
|
||||
wireplumber.enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
};
|
||||
udev.enable = true;
|
||||
dbus.enable = true;
|
||||
mullvad-vpn.enable = true;
|
||||
blueman.enable = true;
|
||||
openssh = {
|
||||
enable = true;
|
||||
allowSFTP = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
{username, ...}: {
|
||||
virtualisation.libvirtd.enable = true;
|
||||
programs.virt-manager.enable = true;
|
||||
{lib, config, username, ...}: {
|
||||
options = {
|
||||
virtOpts.enable = lib.mkEnableOption "enables virtualization";
|
||||
};
|
||||
config = lib.mkIf config.virtOpts.enable {
|
||||
virtualisation.libvirtd.enable = true;
|
||||
programs.virt-manager.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user