summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorRickard Nilsson <rickynils@gmail.com>2016-06-27 13:02:15 +0200
committerRickard Nilsson <rickynils@gmail.com>2016-06-27 13:04:52 +0200
commit1b54e48561c09219bfec7e73636bd999014148b8 (patch)
tree947b899b464c375e237a0b0f99e68b177ed5542d /nixos
parent37f4889851165410d923bf82afeca4672a3e8ffb (diff)
downloadnixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.tar
nixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.tar.gz
nixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.tar.bz2
nixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.tar.lz
nixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.tar.xz
nixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.tar.zst
nixpkgs-1b54e48561c09219bfec7e73636bd999014148b8.zip
nixos/libvirt: Adapt libvirtd.service to upstream sources
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/virtualisation/libvirtd.nix19
1 files changed, 6 insertions, 13 deletions
diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix
index 98828c280bf..a2bfc447e9d 100644
--- a/nixos/modules/virtualisation/libvirtd.nix
+++ b/nixos/modules/virtualisation/libvirtd.nix
@@ -147,19 +147,12 @@ in
             done
           ''; # */
 
-        serviceConfig.ExecStart = ''@${pkgs.libvirt}/sbin/libvirtd libvirtd --config "${configFile}" --daemon ${concatStringsSep " " cfg.extraOptions}'';
-        serviceConfig.Type = "forking";
-        serviceConfig.KillMode = "process"; # when stopping, leave the VMs alone
-
-        # Wait until libvirtd is ready to accept requests.
-        postStart =
-          ''
-            for ((i = 0; i < 60; i++)); do
-                if ${pkgs.libvirt}/bin/virsh list > /dev/null; then exit 0; fi
-                sleep 1
-            done
-            exit 1 # !!! seems to be ignored
-          '';
+        serviceConfig = {
+          ExecStart = ''@${pkgs.libvirt}/sbin/libvirtd libvirtd --config "${configFile}" --daemon ${concatStringsSep " " cfg.extraOptions}'';
+          Type = "notify";
+          KillMode = "process"; # when stopping, leave the VMs alone
+          Restart = "on-failure";
+        };
       };
 
     users.extraGroups.libvirtd.gid = config.ids.gids.libvirtd;