refactor *started*
This commit is contained in:
parent
d0413cb830
commit
db2103a37d
103 changed files with 1008 additions and 786 deletions
26
modules/apps/audio/default.nix
Normal file
26
modules/apps/audio/default.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.audio = {
|
||||
base.enable = lib.mkEnableOption "enable basic audio";
|
||||
media.enable = lib.mkEnableOption "enable audio media";
|
||||
editing.enable = lib.mkEnableOption "enable audio editing";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(lib.mkIf (apps.audio.base.enable) pavucontrol)
|
||||
(lib.mkIf (apps.audio.base.enable) playerctl)
|
||||
(lib.mkIf (apps.audio.editing.enable) tenacity)
|
||||
(lib.mkIf (apps.audio.editing.enable) flac)
|
||||
];
|
||||
};
|
||||
}
|
||||
16
modules/apps/default.nix
Normal file
16
modules/apps/default.nix
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./audio
|
||||
./gaming
|
||||
./image
|
||||
./video
|
||||
./terminal
|
||||
];
|
||||
}
|
||||
13
modules/apps/gaming/default.nix
Normal file
13
modules/apps/gaming/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./steam.nix
|
||||
./minecraft.nix
|
||||
];
|
||||
}
|
||||
20
modules/apps/gaming/minecraft.nix
Normal file
20
modules/apps/gaming/minecraft.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.gaming = {
|
||||
minecraft.enable = lib.mkEnableOption "enable minecraft";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.apps.gaming.minecraft.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
prismlauncher
|
||||
];
|
||||
};
|
||||
}
|
||||
41
modules/apps/gaming/steam.nix
Normal file
41
modules/apps/gaming/steam.nix
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.gaming = {
|
||||
steam.enable = lib.mkEnableOption "enable steam";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.apps.gaming.steam.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
adwsteamgtk
|
||||
];
|
||||
programs = {
|
||||
steam = {
|
||||
enable = true;
|
||||
remotePlay.openFirewall = true;
|
||||
dedicatedServer.openFirewall = true;
|
||||
localNetworkGameTransfers.openFirewall = true;
|
||||
gamescopeSession.enable = true;
|
||||
protontricks.enable = true;
|
||||
extraCompatPackages = with pkgs; [
|
||||
proton-ge-bin
|
||||
];
|
||||
extraPackages = with pkgs; [
|
||||
gamescope
|
||||
];
|
||||
};
|
||||
gamescope = {
|
||||
enable = true;
|
||||
capSysNice = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
24
modules/apps/image/default.nix
Normal file
24
modules/apps/image/default.nix
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.image = {
|
||||
base.enable = lib.mkEnableOption "enable basic image";
|
||||
editing.enable = lib.mkEnableOption "enable image editing";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(lib.mkIf (apps.image.base.enable) nomacs)
|
||||
(lib.mkIf (apps.image.editing.enable) gimp3-with-plugins)
|
||||
(lib.mkIf (apps.image.editing.enable) krita)
|
||||
];
|
||||
};
|
||||
}
|
||||
12
modules/apps/peripherals/default.nix
Normal file
12
modules/apps/peripherals/default.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./keyboard.nix
|
||||
];
|
||||
}
|
||||
26
modules/apps/peripherals/keyboard.nix
Normal file
26
modules/apps/peripherals/keyboard.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
qmk
|
||||
qmk-udev-rules
|
||||
qmk_hid
|
||||
via
|
||||
vial
|
||||
];
|
||||
|
||||
services.udev = {
|
||||
packages = with pkgs; [
|
||||
qmk
|
||||
qmk-udev-rules
|
||||
qmk_hid
|
||||
via
|
||||
vial
|
||||
];
|
||||
};
|
||||
}
|
||||
31
modules/apps/terminal/base-packages.nix
Normal file
31
modules/apps/terminal/base-packages.nix
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.terminal.toys = lib.mkEnableOption "enable terminal toys";
|
||||
};
|
||||
config = {
|
||||
environment.systemPackages =
|
||||
with pkgs;
|
||||
[
|
||||
unzip
|
||||
btop
|
||||
]
|
||||
++ lib.mkIf config.apps.terminal.toys [
|
||||
|
||||
asciiquarium-transparent
|
||||
cava
|
||||
bunnyfetch
|
||||
nerdfetch
|
||||
fastfetch
|
||||
cmatrix
|
||||
astroterm
|
||||
];
|
||||
};
|
||||
}
|
||||
30
modules/apps/terminal/default.nix
Normal file
30
modules/apps/terminal/default.nix
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.terminal = {
|
||||
package = lib.mkOption {
|
||||
default = "";
|
||||
description = "terminal package";
|
||||
};
|
||||
binary = lib.mkOption {
|
||||
default = "";
|
||||
description = "terminal binary";
|
||||
};
|
||||
default = lib.mkOption {
|
||||
default = "";
|
||||
description = "default terminal";
|
||||
};
|
||||
};
|
||||
};
|
||||
imports = [
|
||||
./base-packages.nix
|
||||
./kitty.nix
|
||||
./tui.nix
|
||||
];
|
||||
}
|
||||
25
modules/apps/terminal/kitty.nix
Normal file
25
modules/apps/terminal/kitty.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.terminal = {
|
||||
kitty.enable = lib.mkEnableOption "enable kitty";
|
||||
};
|
||||
};
|
||||
|
||||
config = lib.mkIf config.apps.terminal.kitty.enable {
|
||||
terminal = lib.mkIf (config.apps.terminal.default == "kitty") {
|
||||
package = pkgs.kitty;
|
||||
binary = "${pkgs.kitty}/bin/kitty";
|
||||
};
|
||||
environment.systemPackages = with pkgs; [
|
||||
kitty
|
||||
];
|
||||
};
|
||||
}
|
||||
25
modules/apps/terminal/tui.nix
Normal file
25
modules/apps/terminal/tui.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
tt = config.apps.terminal.tui;
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.terminal.tui = {
|
||||
ranger.enable = lib.mkEnableOption "enable ranger";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(lib.mkIf (tt.ranger.enable) ranger)
|
||||
];
|
||||
};
|
||||
}
|
||||
26
modules/apps/video/default.nix
Normal file
26
modules/apps/video/default.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
inputs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
apps.video = {
|
||||
base.enable = lib.mkEnableOption "enable basic video";
|
||||
editing.enable = lib.mkEnableOption "enable video editing";
|
||||
media.enable = lib.mkEnableOption "enable video media";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
environment.systemPackages = with pkgs; [
|
||||
(lib.mkIf (apps.video.base.enable) mpv)
|
||||
(lib.mkIf (apps.video.editing.enable) kdePackages.kdenlive)
|
||||
(lib.mkIf (apps.video.media.enable) jellyfin-desktop)
|
||||
(lib.mkIf (apps.video.media.enable) pipeline)
|
||||
];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue