summary refs log tree commit diff
diff options
context:
space:
mode:
authorJörg Thalheim <joerg@higgsboson.tk>2016-10-07 16:14:35 +0200
committerGitHub <noreply@github.com>2016-10-07 16:14:35 +0200
commitdaf4e57577d0e67c9f4e92d172d3cc83b8c6b82d (patch)
treec47c62bada55f059a057d0a34db670081850fd72
parent7ca139c4b7f6be259962404054e0b3ef40c0494e (diff)
parent543494b815f7370c8ba61b69607514fdf5abca95 (diff)
downloadnixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.tar
nixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.tar.gz
nixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.tar.bz2
nixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.tar.lz
nixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.tar.xz
nixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.tar.zst
nixlib-daf4e57577d0e67c9f4e92d172d3cc83b8c6b82d.zip
Merge pull request #19209 from siddharthist/urxvtd/init
urxvtd service: init
-rw-r--r--nixos/modules/module-list.nix1
-rw-r--r--nixos/modules/services/x11/urxvtd.nix49
2 files changed, 50 insertions, 0 deletions
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index ff66aef783d4..dbbc8c7f6707 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -516,6 +516,7 @@
   ./services/x11/hardware/synaptics.nix
   ./services/x11/hardware/wacom.nix
   ./services/x11/redshift.nix
+  ./services/x11/urxvtd.nix
   ./services/x11/window-managers/awesome.nix
   #./services/x11/window-managers/compiz.nix
   ./services/x11/window-managers/default.nix
diff --git a/nixos/modules/services/x11/urxvtd.nix b/nixos/modules/services/x11/urxvtd.nix
new file mode 100644
index 000000000000..ab47f4547aea
--- /dev/null
+++ b/nixos/modules/services/x11/urxvtd.nix
@@ -0,0 +1,49 @@
+{ config, lib, pkgs, ... }:
+
+# maintainer: siddharthist
+
+with lib;
+
+let
+  cfg = config.services.urxvtd;
+in {
+
+  options.services.urxvtd.enable = mkOption {
+    type = types.bool;
+    default = false;
+    example = true;
+    description = ''
+      Enable urxvtd, the urxvt terminal daemon. To use urxvtd, run
+      "urxvtc".
+    '';
+  };
+
+  config = mkIf cfg.enable {
+    systemd.user = {
+      sockets.urxvtd = {
+        description = "socket for urxvtd, the urxvt terminal daemon";
+        after = [ "graphical.target" ];
+        wants = [ "graphical.target" ];
+        wantedBy = [ "sockets.target" ];
+        socketConfig = {
+          ListenStream = "%t/urxvtd-socket";
+        };
+      };
+
+      services.urxvtd = {
+        description = "urxvt terminal daemon";
+        serviceConfig = {
+          ExecStart = "${pkgs.rxvt_unicode-with-plugins}/bin/urxvtd -o";
+          Environment = "RXVT_SOCKET=%t/urxvtd-socket";
+          Restart = "on-failure";
+          RestartSec = "5s";
+        };
+      };
+
+    };
+
+    environment.systemPackages = [ pkgs.rxvt_unicode-with-plugins ];
+    environment.variables.RXVT_SOCKET = "/run/user/$(id -u)/urxvtd-socket";
+  };
+
+}