formula libvirt
diff --git a/server.sls b/server.sls
new file mode 100644
index 0000000..dc6e047
--- /dev/null
+++ b/server.sls
@@ -0,0 +1,32 @@
+{% from "libvirt/map.jinja" import server with context %}
+
+{%- if server.enabled %}
+
+libvirt_packages:
+  pkg.installed:
+  - names: {{ server.pkgs }}
+
+libvirtd_config:
+  file.managed:
+  - name: {{ server.config }}
+  - source: salt://libvirt/files/libvirtd.conf.{{ grains.os_family }}
+  - template: jinja
+  - require:
+    - pkg: libvirt_packages
+
+libvirt_sysconfig:
+  file.append:
+  - name: {{ server.config_sys }}
+  - text: 'LIBVIRTD_ARGS="--listen"'
+  - require:
+    - pkg: libvirt_packages
+
+libvirt_service:
+  service.running:
+  - name: {{ server.service }}
+  - enable: true
+  - reload: true
+  - watch:
+    - file: libvirt_config
+
+{%- endif %}
\ No newline at end of file