From b708b0608b704c4206d70ab1bc7162901ba71bf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kjetil=20=C3=98rbekk?= Date: Thu, 25 Jul 2019 14:57:39 -0400 Subject: Home m --- home.nix | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 home.nix diff --git a/home.nix b/home.nix new file mode 100644 index 0000000..ee8f508 --- /dev/null +++ b/home.nix @@ -0,0 +1,40 @@ +{ config, pkgs, ... }: + +{ + programs.home-manager.enable = true; + + systemd.user.startServices = true; + + systemd.user.services = { + weechat = { + Unit = { + Description = "Weechat"; + After = [ "networking.target" ]; + }; + + Service = { + Environment = ["TERM=${pkgs.rxvt_unicode.terminfo}" "TMUX_TMPDIR=/run/user/1000"]; + Type = "oneshot"; + RemainAfterExit = "yes"; + ExecStart = "" + pkgs.writeScript "weechat-start" '' + #!${pkgs.stdenv.shell} + ${pkgs.tmux}/bin/tmux -2 new-session -d -s irc "${pkgs.weechat}/bin/weechat" + ''; + ExecStop = "" + pkgs.writeScript "weechat-stop" '' + #!${pkgs.stdenv.shell} + pkill -SIGTERM -xf "${pkgs.weechat}/bin/weechat" + for i in {1..10}; do + echo "Waiting for weechat to stop... $i" + pgrep -xlf "${pkgs.weechat}/bin/weechat" || break + sleep 1 + done + tmux kill-session -t irc || true + ''; + }; + + Install = { + WantedBy = [ "default.target" ]; + }; + }; + }; +} -- cgit v1.2.3