Add all of iogamaster modules
This commit is contained in:
65
modules/nixos/suites/common/default.nix
Normal file
65
modules/nixos/suites/common/default.nix
Normal file
@@ -0,0 +1,65 @@
|
||||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.frajul;
|
||||
let
|
||||
cfg = config.suites.common;
|
||||
in
|
||||
{
|
||||
options.suites.common = with types; {
|
||||
enable = mkBoolOpt false "Enable the common suite";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
system.nix.enable = true;
|
||||
system.security.doas.enable = true;
|
||||
|
||||
hardware.audio.enable = true;
|
||||
hardware.networking.enable = true;
|
||||
|
||||
apps.misc.enable = true;
|
||||
|
||||
hardware.bluetooth.enable = true;
|
||||
hardware.bluetooth.settings = {
|
||||
General = {
|
||||
FastConnectable = true;
|
||||
JustWorksRepairing = "always";
|
||||
Privacy = "device";
|
||||
};
|
||||
Policy = {
|
||||
AutoEnable = true;
|
||||
};
|
||||
inputs = {
|
||||
UserSpaceHID = true;
|
||||
};
|
||||
};
|
||||
|
||||
environment.persist.directories = [ "/etc/bluetooth" ];
|
||||
|
||||
apps.pass.enable = true;
|
||||
apps.tools.git.enable = true;
|
||||
apps.tools.nix-ld.enable = true;
|
||||
|
||||
services.ssh.enable = true;
|
||||
|
||||
programs.dconf.enable = true;
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.bluetuith
|
||||
pkgs.nh # pkgs.custom.sys
|
||||
pkgs.deploy-rs
|
||||
];
|
||||
|
||||
system = {
|
||||
fonts.enable = true;
|
||||
locale.enable = true;
|
||||
time.enable = true;
|
||||
xkb.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
43
modules/nixos/suites/desktop/default.nix
Normal file
43
modules/nixos/suites/desktop/default.nix
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.frajul;
|
||||
let
|
||||
cfg = config.suites.desktop;
|
||||
in
|
||||
{
|
||||
options.suites.desktop = with types; {
|
||||
enable = mkBoolOpt false "Enable the desktop suite";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
desktop.hyprland.enable = true;
|
||||
apps.firefox.enable = true;
|
||||
apps.discord.enable = true;
|
||||
|
||||
apps.tools.gnupg.enable = true;
|
||||
apps.pass.enable = true;
|
||||
|
||||
suites.common.enable = true;
|
||||
|
||||
services.flatpak.enable = true;
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
displayManager.gdm.enable = true;
|
||||
};
|
||||
|
||||
environment.persist.directories = [ "/etc/gdm" ];
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
cinnamon.nemo
|
||||
xclip
|
||||
xarchiver
|
||||
];
|
||||
};
|
||||
}
|
41
modules/nixos/suites/development/default.nix
Normal file
41
modules/nixos/suites/development/default.nix
Normal file
@@ -0,0 +1,41 @@
|
||||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.frajul; let
|
||||
cfg = config.suites.development;
|
||||
in {
|
||||
options.suites.development = with types; {
|
||||
enable = mkBoolOpt false "Enable the development suite";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
apps.neovim.enable = true;
|
||||
apps.tools.direnv.enable = true;
|
||||
|
||||
apps.misc.enable = true;
|
||||
|
||||
home.configFile."nix-init/config.toml".text = ''
|
||||
maintainers = ["iogamaster"]
|
||||
commit = true
|
||||
'';
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
licensor
|
||||
|
||||
# Nix Utils
|
||||
nix-index
|
||||
nix-init
|
||||
nix-melt
|
||||
nix-update
|
||||
nixpkgs-fmt
|
||||
nixpkgs-hammering
|
||||
nixpkgs-review
|
||||
nurl
|
||||
];
|
||||
};
|
||||
}
|
36
modules/nixos/suites/editing/default.nix
Normal file
36
modules/nixos/suites/editing/default.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.frajul; let
|
||||
cfg = config.suites.editing;
|
||||
in {
|
||||
options.suites.editing = with types; {
|
||||
enable = mkBoolOpt false "Enable the editing suite";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
obs-studio
|
||||
audacity
|
||||
chromium
|
||||
inkscape
|
||||
mediainfo
|
||||
vhs
|
||||
];
|
||||
|
||||
# OBS
|
||||
boot.extraModulePackages = with config.boot.kernelPackages; [v4l2loopback];
|
||||
boot.kernelModules = [
|
||||
"v4l2loopback"
|
||||
];
|
||||
|
||||
home.persist.directories = [
|
||||
".config/obs-studio"
|
||||
];
|
||||
};
|
||||
}
|
64
modules/nixos/suites/gaming/default.nix
Normal file
64
modules/nixos/suites/gaming/default.nix
Normal file
@@ -0,0 +1,64 @@
|
||||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.frajul;
|
||||
let
|
||||
cfg = config.suites.gaming;
|
||||
in
|
||||
{
|
||||
imports = with inputs; [ dzgui-nix.nixosModules.default ];
|
||||
options.suites.gaming = with types; {
|
||||
enable = mkBoolOpt false "Enable the gaming suite";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
apps.steam.enable = true;
|
||||
|
||||
hardware.opengl = {
|
||||
enable = true;
|
||||
driSupport32Bit = true;
|
||||
extraPackages = with pkgs; [
|
||||
intel-media-driver
|
||||
intel-ocl
|
||||
vaapiIntel
|
||||
];
|
||||
};
|
||||
|
||||
programs.dzgui.enable = true;
|
||||
|
||||
environment.systemPackages = [
|
||||
pkgs.prismlauncher
|
||||
pkgs.lutris
|
||||
pkgs.heroic
|
||||
|
||||
pkgs.gamemode
|
||||
pkgs.mangohud
|
||||
|
||||
pkgs.gamescope
|
||||
|
||||
# pkgs.custom.relive
|
||||
|
||||
pkgs.r2modman
|
||||
|
||||
pkgs.bottles
|
||||
];
|
||||
|
||||
home.persist.directories = [
|
||||
".config/r2modman"
|
||||
".config/r2modmanPlus-local"
|
||||
".config/dztui"
|
||||
".local/share/lutris"
|
||||
".local/share/aspyr-media"
|
||||
".local/share/bottles"
|
||||
".local/share/PrismLauncher"
|
||||
".local/share/dzgui"
|
||||
"Games"
|
||||
];
|
||||
};
|
||||
}
|
21
modules/nixos/suites/server/default.nix
Normal file
21
modules/nixos/suites/server/default.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{
|
||||
options,
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib;
|
||||
with lib.frajul; let
|
||||
cfg = config.suites.server;
|
||||
in {
|
||||
options.suites.server = with types; {
|
||||
enable = mkBoolOpt false "Enable the server suite";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
suites.common.enable = true;
|
||||
suites.development.enable = true;
|
||||
environment.systemPackages = with pkgs; [];
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user