diff options
author | makefu <github@syntax-fehler.de> | 2017-05-24 10:51:12 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2017-05-24 10:51:12 +0200 |
commit | ce43883b50db14453c21da35c8a6bd50422cfe06 (patch) | |
tree | d0a9d46c4da56a57ace803901fca71107e91040b /makefu/2configs/audio/jack-on-pulse.nix | |
parent | c29ba49d3dba4386ee90e784912d38b37e63efa6 (diff) |
m 2 jack-on-pulse: start as systemd user service
Diffstat (limited to 'makefu/2configs/audio/jack-on-pulse.nix')
-rw-r--r-- | makefu/2configs/audio/jack-on-pulse.nix | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/makefu/2configs/audio/jack-on-pulse.nix b/makefu/2configs/audio/jack-on-pulse.nix index 09d03ea9f..49b61d5a2 100644 --- a/makefu/2configs/audio/jack-on-pulse.nix +++ b/makefu/2configs/audio/jack-on-pulse.nix @@ -2,6 +2,7 @@ let pulse = pkgs.pulseaudioFull; user = config.makefu.gui.user; + wait_time = 30; in { sound.enable = true; @@ -13,16 +14,17 @@ in environment.systemPackages = with pkgs; [ jack2Full ]; # from http://anderspapitto.com/posts/2015-11-26-overtone-on-nixos-with-jack-and-pulseaudio.html - systemd.services = { + systemd.user.services = { jackdbus = { description = "Runs jack, and points pulseaudio at it"; serviceConfig = { - User = user; Type = "oneshot"; ExecStart = pkgs.writeScript "start_jack.sh" '' #! ${pkgs.bash}/bin/bash . ${config.system.build.setEnvironment} - sleep 5 # wait for the gui to load + + # TODO: correctly wait for pulseaudio, cannot use pulseaudio.service + sleep ${toString wait_time} # wait for the gui to load ${pkgs.jack2Full}/bin/jack_control start sleep 3 # give some time for sources/sinks to be created @@ -37,9 +39,11 @@ in ${pkgs.jack2Full}/bin/jack_control stop ''; RemainAfterExit = true; + Restart = "always"; + RestartSec = "5"; }; - after = [ "display-manager.service" "sound.target" ]; - wantedBy = [ "multi-user.target" ]; + # after = [ "display-manager.service" "sound.target" ]; + wantedBy = [ "default.target" ]; }; }; } |