diff options
author | Дамјан Георгиевски | 2018-04-25 16:27:18 +0200 |
---|---|---|
committer | Дамјан Георгиевски | 2018-04-25 16:27:51 +0200 |
commit | b61d3dafcce6d66ec317cc04691e2b2a3cb621e1 (patch) | |
tree | 92a139c001fc606ccb4e6046cc1c8186006d5e0d | |
parent | 2538183f238981bd3b330ef36721ab4bc4085cf5 (diff) | |
download | aur-b61d3dafcce6d66ec317cc04691e2b2a3cb621e1.tar.gz |
add polkit rules to allow the virtlyst to access libvirt
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 7 | ||||
-rw-r--r-- | virtlyst.rules | 9 | ||||
-rw-r--r-- | virtlyst.service | 5 |
4 files changed, 20 insertions, 5 deletions
@@ -11,9 +11,11 @@ pkgbase = virtlyst source = https://github.com/cutelyst/Virtlyst/archive/v1.0.0.tar.gz source = virtlyst.ini source = virtlyst.service + source = virtlyst.rules sha256sums = 5f1b121a90bfe8fcb608913306478dc8d68c4132aea11ffbd57a76d12bb32ce8 sha256sums = 372cf5d94a8117b0ad167d9edd7487f81f9440376d6b485e6fbe51b417324a39 - sha256sums = b7f96b90e7e7aeae0fb0cbe4c62e63c1418439d83d587e2afb40ab28f12b704f + sha256sums = e2c573630bc79d92d77202c54fbcb73720f97fce5606ca7d83640f455bb7f80b + sha256sums = fb13f116e9b8268b642082ab8aac40fe2104dbb33e98ab925ab3633986c5fdca pkgname = virtlyst @@ -12,7 +12,8 @@ depends=('cutelyst' 'libvirt') makedepends=() source=("https://github.com/cutelyst/${_projectname}/archive/v${pkgver}.tar.gz" "virtlyst.ini" - "virtlyst.service") + "virtlyst.service" + "virtlyst.rules") backup=("etc/uwsgi/virtlyst.ini") @@ -31,6 +32,7 @@ package() { install -D -m755 "${srcdir}/build/src/libVirtlyst.so" -t "${pkgdir}/usr/lib/uwsgi/" install -D -m644 "${srcdir}/virtlyst.ini" -t "${pkgdir}/etc/uwsgi/" install -D -m644 "${srcdir}/virtlyst.service" -t "${pkgdir}/usr/lib/systemd/system/" + install -D -m644 "${srcdir}/virtlyst.rules" -t "${pkgdir}/usr/share/polkit-1/rules.d/51-virtlyst.rules" install -d "${pkgdir}/usr/share/${pkgname}/" cp -r "${srcdir}/${_projectname}-${pkgver}/root/static/" "${pkgdir}/usr/share/${pkgname}/static" cp -r "${srcdir}/${_projectname}-${pkgver}/root/src/" "${pkgdir}/usr/share/${pkgname}/templates" @@ -38,4 +40,5 @@ package() { sha256sums=('5f1b121a90bfe8fcb608913306478dc8d68c4132aea11ffbd57a76d12bb32ce8' '372cf5d94a8117b0ad167d9edd7487f81f9440376d6b485e6fbe51b417324a39' - 'b7f96b90e7e7aeae0fb0cbe4c62e63c1418439d83d587e2afb40ab28f12b704f') + 'e2c573630bc79d92d77202c54fbcb73720f97fce5606ca7d83640f455bb7f80b' + 'fb13f116e9b8268b642082ab8aac40fe2104dbb33e98ab925ab3633986c5fdca') diff --git a/virtlyst.rules b/virtlyst.rules new file mode 100644 index 000000000000..74b681ec9cfc --- /dev/null +++ b/virtlyst.rules @@ -0,0 +1,9 @@ +// Allow 'virtlyst' user to connect to system libvirtd +// without entering a password. + +polkit.addRule(function(action, subject) { + if (action.id == "org.libvirt.unix.manage" && + subject.user == "virtlyst") { + return polkit.Result.YES; + } +}); diff --git a/virtlyst.service b/virtlyst.service index a224291f76bc..29fb53985e1c 100644 --- a/virtlyst.service +++ b/virtlyst.service @@ -3,9 +3,10 @@ After=network.target libvirtd.service Description=Web interface to manage virtual machines with libvirt [Service] -Type=simple +Type=notify +NotifyAccess=all DynamicUser=yes -SupplementaryGroups=libvirt +User=virtlyst Restart=always ExecStart=/usr/bin/cutelyst-wsgi2 --ini /etc/uwsgi/virtlyst.ini StateDirectory=virtlyst |