grafana-alloy: don't build the frontend twice
[NixPkgs.git] / nixos / modules / services / x11 / urxvtd.nix
blob618db85d477bde90936e83332795b705c7289e88
1 { config, lib, pkgs, ... }:
3 # maintainer: siddharthist
5 with lib;
7 let
8   cfg = config.services.urxvtd;
9 in {
10   options.services.urxvtd = {
11     enable = mkOption {
12       type = types.bool;
13       default = false;
14       description = ''
15         Enable urxvtd, the urxvt terminal daemon. To use urxvtd, run
16         "urxvtc".
17       '';
18     };
20     package = mkPackageOption pkgs "rxvt-unicode" { };
21   };
23   config = mkIf cfg.enable {
24     systemd.user.services.urxvtd = {
25       description = "urxvt terminal daemon";
26       wantedBy = [ "graphical-session.target" ];
27       partOf = [ "graphical-session.target" ];
28       path = [ pkgs.xsel ];
29       serviceConfig = {
30         ExecStart = "${cfg.package}/bin/urxvtd -o";
31         Environment = "RXVT_SOCKET=%t/urxvtd-socket";
32         Restart = "on-failure";
33         RestartSec = "5s";
34       };
35     };
37     environment.systemPackages = [ cfg.package ];
38     environment.variables.RXVT_SOCKET = "/run/user/$(id -u)/urxvtd-socket";
39   };
41   meta.maintainers = with lib.maintainers; [ rnhmjoj ];