summary refs log tree commit diff stats
path: root/modules/programs
diff options
context:
space:
mode:
Diffstat (limited to 'modules/programs')
-rw-r--r--modules/programs/accounting.nix10
-rw-r--r--modules/programs/dotfiles.nix13
-rw-r--r--modules/programs/gnome.nix24
-rw-r--r--modules/programs/i3.nix16
-rw-r--r--modules/programs/infrastructure.nix9
-rw-r--r--modules/programs/passwords.nix8
-rw-r--r--modules/programs/shell.nix29
-rw-r--r--modules/programs/window-manager.nix18
8 files changed, 127 insertions, 0 deletions
diff --git a/modules/programs/accounting.nix b/modules/programs/accounting.nix
new file mode 100644
index 0000000..5882436
--- /dev/null
+++ b/modules/programs/accounting.nix
@@ -0,0 +1,10 @@
+{ config, pkgs, ... }:
+
+{ environment.systemPackages = with pkgs; [
+    aqbanking
+    ledger
+    bean-add
+    beancount
+    fava
+  ];
+}
diff --git a/modules/programs/dotfiles.nix b/modules/programs/dotfiles.nix
new file mode 100644
index 0000000..eed2223
--- /dev/null
+++ b/modules/programs/dotfiles.nix
@@ -0,0 +1,13 @@
+{ config, pkgs, ... }:
+
+let
+  pkgsUnstable = import <nixos-unstable> {};
+  # pkgsUnstable = pkgs;
+in
+{ environment.systemPackages = with pkgs; [
+    git
+    stow
+    fzf
+    pkgsUnstable.ghq
+  ];
+}
diff --git a/modules/programs/gnome.nix b/modules/programs/gnome.nix
new file mode 100644
index 0000000..bd78545
--- /dev/null
+++ b/modules/programs/gnome.nix
@@ -0,0 +1,24 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+{ services = {
+    gnome3 = {
+      gnome-documents.enable = false;
+      gnome-user-share.enable = false;
+      gnome-online-accounts.enable = false;
+      seahorse.enable = false;
+      tracker.enable = false;
+    };
+    telepathy.enable = false;
+
+    xserver = {
+      desktopManager.gnome3 = {
+        enable = true;
+        extraGSettingsOverrides = ''
+          [org.gnome.desktop.input-sources]
+          sources=[('xkb','${config.services.xserver.layout + (optionalString (config.services.xserver.xkbVariant != "") ("+" + config.services.xserver.xkbVariant))}')]
+        '';
+      };
+    };
+  };
+}
diff --git a/modules/programs/i3.nix b/modules/programs/i3.nix
new file mode 100644
index 0000000..3bba3bb
--- /dev/null
+++ b/modules/programs/i3.nix
@@ -0,0 +1,16 @@
+{ config, pkgs, ... }:
+
+{ services.xserver.windowManager.i3 = {
+    enable = true;
+    package = pkgs.i3-gaps;
+  };
+
+  environment.systemPackages = with pkgs; [
+    i3status
+    i3lock-color
+  ];
+
+  imports = [
+    ./window-manager.nix
+  ];
+}
diff --git a/modules/programs/infrastructure.nix b/modules/programs/infrastructure.nix
new file mode 100644
index 0000000..b41816e
--- /dev/null
+++ b/modules/programs/infrastructure.nix
@@ -0,0 +1,9 @@
+{ config, pkgs, ... }:
+
+{ environment.systemPackages = with pkgs; [
+    ansible
+    hugo
+
+    nixops
+  ];
+}
diff --git a/modules/programs/passwords.nix b/modules/programs/passwords.nix
new file mode 100644
index 0000000..8c9d7cf
--- /dev/null
+++ b/modules/programs/passwords.nix
@@ -0,0 +1,8 @@
+{ config, pkgs, ... }:
+
+{ environment.systemPackages = with pkgs; [
+    keepassx-community
+    pass
+    pwgen
+  ];
+}
diff --git a/modules/programs/shell.nix b/modules/programs/shell.nix
new file mode 100644
index 0000000..3ea43ad
--- /dev/null
+++ b/modules/programs/shell.nix
@@ -0,0 +1,29 @@
+{ config, pkgs, ... }:
+
+{ programs.zsh = {
+    enable = true;
+    promptInit = "";
+  };
+  programs.bash.enableCompletion = true;
+  programs.xonsh = {
+    enable = true;
+  };
+
+  environment.systemPackages = with pkgs; [
+    vim
+    pv
+    file
+    htop
+    lsof
+    iftop
+    iotop
+    nmap
+    netperf
+    moreutils
+    psmisc
+    tree
+    zip
+    unzip
+    telnet
+  ];
+}
diff --git a/modules/programs/window-manager.nix b/modules/programs/window-manager.nix
new file mode 100644
index 0000000..c159374
--- /dev/null
+++ b/modules/programs/window-manager.nix
@@ -0,0 +1,18 @@
+{ config, pkgs, ... }:
+
+{ services.xserver.displayManager = {
+    lightdm = {
+      enable = true;
+    };
+  };
+
+  environment.systemPackages = with pkgs; [
+    dmenu
+    dunst
+    libnotify # for notify-send
+    sxhkd
+    scrot
+
+    perlPackages.FileMimeInfo # xdg-utils uses this when no DE
+  ];
+}