summaryrefslogtreecommitdiff
path: root/nixos/modules/features
diff options
context:
space:
mode:
Diffstat (limited to 'nixos/modules/features')
-rw-r--r--nixos/modules/features/browsers/default.nix9
-rw-r--r--nixos/modules/features/cli-tools/default.nix3
-rw-r--r--nixos/modules/features/desktop-apps/default.nix21
-rw-r--r--nixos/modules/features/gaming/default.nix15
-rw-r--r--nixos/modules/features/language-tools/default.nix7
-rw-r--r--nixos/modules/features/media-tools/default.nix7
-rw-r--r--nixos/modules/features/messaging/default.nix9
-rw-r--r--nixos/modules/features/mouse/default.nix2
-rw-r--r--nixos/modules/features/noctalia-shell/default.nix2
-rw-r--r--nixos/modules/features/p2p/default.nix7
-rw-r--r--nixos/modules/features/productivity/default.nix11
-rw-r--r--nixos/modules/features/security/default.nix8
-rw-r--r--nixos/modules/features/swingmusic/default.nix34
13 files changed, 95 insertions, 40 deletions
diff --git a/nixos/modules/features/browsers/default.nix b/nixos/modules/features/browsers/default.nix
new file mode 100644
index 0000000..2551221
--- /dev/null
+++ b/nixos/modules/features/browsers/default.nix
@@ -0,0 +1,9 @@
+{ pkgs, inputs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ inputs.helium-browser.packages.${pkgs.stdenv.hostPlatform.system}.helium
+ librewolf
+ chromium
+ ];
+}
diff --git a/nixos/modules/features/cli-tools/default.nix b/nixos/modules/features/cli-tools/default.nix
index ef13ddd..c2ee448 100644
--- a/nixos/modules/features/cli-tools/default.nix
+++ b/nixos/modules/features/cli-tools/default.nix
@@ -18,6 +18,9 @@
smartmontools
amneziawg-tools
amneziawg-go
+ secretspec
+ claude-code
+ opencode
];
# Cross-shell prompt; its config lives in the dotfiles repo, not NixOS.
diff --git a/nixos/modules/features/desktop-apps/default.nix b/nixos/modules/features/desktop-apps/default.nix
index e4fcd05..b74384f 100644
--- a/nixos/modules/features/desktop-apps/default.nix
+++ b/nixos/modules/features/desktop-apps/default.nix
@@ -1,27 +1,6 @@
{ pkgs, inputs, ... }:
{
- # Desktop GUI applications
environment.systemPackages = with pkgs; [
- # Packaged from a flake input (see flake.nix)
- inputs.helium-browser.packages.${pkgs.stdenv.hostPlatform.system}.helium
- secretspec
- claude-code
- cryptomator
- keepassxc
- libreoffice
- hunspellDicts.ru_RU
- opencode
- pkgs.ayugram-desktop
- pkgs.legcord
- pkgs.vesktop
- obsidian
- obs-studio
- pkgs.qbittorrent
- evince
- pkgs.masterpdfeditor
- librewolf
- chromium
- anytype
];
}
diff --git a/nixos/modules/features/gaming/default.nix b/nixos/modules/features/gaming/default.nix
new file mode 100644
index 0000000..fe3938a
--- /dev/null
+++ b/nixos/modules/features/gaming/default.nix
@@ -0,0 +1,15 @@
+{ pkgs, ... }:
+
+{
+ programs.steam = {
+ enable = true;
+ remotePlay.openFirewall = true;
+ dedicatedServer.openFirewall = true;
+ };
+
+ environment.systemPackages = with pkgs; [
+ pkgs.lutris
+ pkgs.prismlauncher
+ pkgs.bottles
+ ];
+}
diff --git a/nixos/modules/features/language-tools/default.nix b/nixos/modules/features/language-tools/default.nix
new file mode 100644
index 0000000..338d26b
--- /dev/null
+++ b/nixos/modules/features/language-tools/default.nix
@@ -0,0 +1,7 @@
+{ pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ hunspellDicts.ru_RU
+ ];
+}
diff --git a/nixos/modules/features/media-tools/default.nix b/nixos/modules/features/media-tools/default.nix
new file mode 100644
index 0000000..00a16da
--- /dev/null
+++ b/nixos/modules/features/media-tools/default.nix
@@ -0,0 +1,7 @@
+{ pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ obs-studio
+ ];
+}
diff --git a/nixos/modules/features/messaging/default.nix b/nixos/modules/features/messaging/default.nix
new file mode 100644
index 0000000..55354c2
--- /dev/null
+++ b/nixos/modules/features/messaging/default.nix
@@ -0,0 +1,9 @@
+{ pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ pkgs.ayugram-desktop
+ pkgs.legcord
+ pkgs.vesktop
+ ];
+}
diff --git a/nixos/modules/features/mouse/default.nix b/nixos/modules/features/mouse/default.nix
index e0f44a8..c984fbb 100644
--- a/nixos/modules/features/mouse/default.nix
+++ b/nixos/modules/features/mouse/default.nix
@@ -7,4 +7,4 @@
piper
input-remapper
];
-} \ No newline at end of file
+}
diff --git a/nixos/modules/features/noctalia-shell/default.nix b/nixos/modules/features/noctalia-shell/default.nix
index 251ccff..c9bc20c 100644
--- a/nixos/modules/features/noctalia-shell/default.nix
+++ b/nixos/modules/features/noctalia-shell/default.nix
@@ -9,4 +9,4 @@
inputs.noctalia.packages.${stdenv.hostPlatform.system}.default
noctalia-shell
];
-} \ No newline at end of file
+}
diff --git a/nixos/modules/features/p2p/default.nix b/nixos/modules/features/p2p/default.nix
new file mode 100644
index 0000000..af05afe
--- /dev/null
+++ b/nixos/modules/features/p2p/default.nix
@@ -0,0 +1,7 @@
+{ pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ pkgs.qbittorrent
+ ];
+}
diff --git a/nixos/modules/features/productivity/default.nix b/nixos/modules/features/productivity/default.nix
new file mode 100644
index 0000000..2b14ff6
--- /dev/null
+++ b/nixos/modules/features/productivity/default.nix
@@ -0,0 +1,11 @@
+{ pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ libreoffice
+ obsidian
+ anytype
+ evince
+ pkgs.masterpdfeditor
+ ];
+}
diff --git a/nixos/modules/features/security/default.nix b/nixos/modules/features/security/default.nix
new file mode 100644
index 0000000..935ef22
--- /dev/null
+++ b/nixos/modules/features/security/default.nix
@@ -0,0 +1,8 @@
+{ pkgs, ... }:
+
+{
+ environment.systemPackages = with pkgs; [
+ keepassxc
+ cryptomator
+ ];
+}
diff --git a/nixos/modules/features/swingmusic/default.nix b/nixos/modules/features/swingmusic/default.nix
index e666b72..389e3c8 100644
--- a/nixos/modules/features/swingmusic/default.nix
+++ b/nixos/modules/features/swingmusic/default.nix
@@ -1,21 +1,21 @@
-{ ... }:
+#{ ... }:
{
# Swing Music: self-hosted local music server. Built separately and placed
# in the user's home; this unit just turns it into a managed session service.
- systemd.user.services.swingmusic = {
- description = "Swing Music Local Server";
- wantedBy = [ "graphical-session.target" ];
- after = [ "graphical-session.target" ];
- serviceConfig = {
- ExecStart = "/home/seraphim/.swingmusic/swingmusic";
- Restart = "on-failure";
- WorkingDirectory = "/home/seraphim";
- NoNewPrivileges = true;
- PrivateTmp = true;
- ProtectSystem = "strict";
- ProtectHome = "false";
- RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
- };
- };
-} \ No newline at end of file
+# systemd.user.services.swingmusic = {
+# description = "Swing Music Local Server";
+# wantedBy = [ "graphical-session.target" ];
+# after = [ "graphical-session.target" ];
+# serviceConfig = {
+# ExecStart = "/home/seraphim/.swingmusic/swingmusic";
+# Restart = "on-failure";
+# WorkingDirectory = "/home/seraphim";
+# NoNewPrivileges = true;
+# PrivateTmp = true;
+# ProtectSystem = "strict";
+# ProtectHome = "false";
+# RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
+# };
+# };
+#}