summaryrefslogtreecommitdiff
path: root/modules/software
diff options
context:
space:
mode:
Diffstat (limited to 'modules/software')
-rw-r--r--modules/software/default.nix23
-rw-r--r--modules/software/desktop-extra.nix17
-rw-r--r--modules/software/desktop.nix22
-rw-r--r--modules/software/dev-extra.nix16
-rw-r--r--modules/software/dev.nix23
-rw-r--r--modules/software/utils.nix30
6 files changed, 131 insertions, 0 deletions
diff --git a/modules/software/default.nix b/modules/software/default.nix
new file mode 100644
index 0000000..0ceef7f
--- /dev/null
+++ b/modules/software/default.nix
@@ -0,0 +1,23 @@
+{ lib, ... }: {
+ imports = [
+ ./desktop.nix
+ ./desktop-extra.nix
+ ./dev.nix
+ ./dev-extra.nix
+ ./utils.nix
+ ];
+
+ software = {
+ desktop = {
+ enable = lib.mkDefault true;
+ extra.enable = lib.mkDefault false;
+ };
+ dev = {
+ enable = lib.mkDefault true;
+ extra.enable = lib.mkDefault false;
+ };
+ utils = {
+ enable = lib.mkDefault true;
+ };
+ };
+}
diff --git a/modules/software/desktop-extra.nix b/modules/software/desktop-extra.nix
new file mode 100644
index 0000000..5347696
--- /dev/null
+++ b/modules/software/desktop-extra.nix
@@ -0,0 +1,17 @@
+{ pkgs, lib, config, ... }: {
+ options = {
+ software.desktop.extra.enable = lib.mkEnableOption "enables extra desktop apps";
+ };
+
+ config = lib.mkIf config.software.desktop.extra.enable {
+ environment.systemPackages = with pkgs; [
+ geeqie
+ gimp
+ inkscape
+ qbittorrent
+ qdirstat
+ ungoogled-chromium
+ virt-manager
+ ];
+ };
+}
diff --git a/modules/software/desktop.nix b/modules/software/desktop.nix
new file mode 100644
index 0000000..195d742
--- /dev/null
+++ b/modules/software/desktop.nix
@@ -0,0 +1,22 @@
+{ pkgs, lib, config, ... }: {
+ options = {
+ software.desktop.enable = lib.mkEnableOption "enables desktop apps";
+ };
+
+ config = lib.mkIf config.software.desktop.enable {
+ programs.dconf.enable = true; # For home-manager to configure gtk
+
+ environment.systemPackages = with pkgs; [
+ alacritty
+ arandr
+ dmenu
+ firefox
+ mpv
+ pavucontrol
+ pcmanfm
+ redshift
+ sxiv
+ zathura
+ ];
+ };
+}
diff --git a/modules/software/dev-extra.nix b/modules/software/dev-extra.nix
new file mode 100644
index 0000000..259ae98
--- /dev/null
+++ b/modules/software/dev-extra.nix
@@ -0,0 +1,16 @@
+{ pkgs, lib, config, ... }: {
+ options = {
+ software.dev.enable = lib.mkEnableOption "enables dev apps";
+ };
+
+ config = lib.mkIf config.software.dev.extra.enable {
+ environment.systemPackages = with pkgs; [
+ android-tools
+ cargo
+ hugo
+ #python-pip
+ uhubctl
+ wireguard-tools
+ ];
+ };
+}
diff --git a/modules/software/dev.nix b/modules/software/dev.nix
new file mode 100644
index 0000000..b0dabcc
--- /dev/null
+++ b/modules/software/dev.nix
@@ -0,0 +1,23 @@
+{ pkgs, lib, config, ... }: {
+ options = {
+ software.dev.enable = lib.mkEnableOption "enables dev apps";
+ };
+
+ config = lib.mkIf config.software.dev.enable {
+ environment.systemPackages = with pkgs; [
+ dash # TODO should be default /bin/sh
+ entr
+ gcc
+ git
+ gnumake
+ jq
+ lm_sensors
+ nmap
+ openssl
+ python3
+ sassc
+ sslscan
+ wget
+ ];
+ };
+}
diff --git a/modules/software/utils.nix b/modules/software/utils.nix
new file mode 100644
index 0000000..1efdb18
--- /dev/null
+++ b/modules/software/utils.nix
@@ -0,0 +1,30 @@
+{ pkgs, lib, config, ... }: {
+ options = {
+ software.utils.enable = lib.mkEnableOption "enables dev apps";
+ };
+
+ config = lib.mkIf config.software.utils.enable {
+ programs.zsh.enable = true;
+ users.defaultUserShell = pkgs.zsh;
+ services.openssh.enable = true;
+
+ environment.systemPackages = with pkgs; [
+ ddcutil # TODO
+ fastfetch
+ htop
+ light
+ neovim
+ p7zip
+ powertop
+ pv
+ rsync
+ screen
+ scrot
+ smartmontools
+ stress
+ testdisk
+ tmux
+ xxHash
+ ];
+ };
+}