@Michal: Thanks for your reply!

Indeed I have found a package in the AUR (libvirt-zfs) and only had to change to the current version and add zfs-utils as dependency in the PKGBUILD. Now I don't get the previous error anymore but I still cannot setup a VM because I constantly get errors due to wrong permissions. 

I have tried to change the permissions in:


# zfs allow <user> create,destroy,mount virt-pool/vmm

didn't help.

What are the correct permissions? Which user and group? 


On Tue, Oct 3, 2017 at 8:44 AM, Michal Privoznik <mprivozn@redhat.com> wrote:
On 10/02/2017 11:42 PM, Nick Gilmour wrote:
> Hi all,
> I'm trying to setup virt-manager with ZFS als storage on my Arch box. I
> have created a pool named virt-pool and tried to use it as storage. First
> with virt-manager and then in the terminal with virsh but I'm always
> getting the following errors:
> *virsh # pool-define-as --name zfsvirtpool --source-name virt-pool --type
> zfserror: Failed to define pool zfsvirtpoolerror: internal error: missing
> backend for pool type 11 (zfs)*

Your libvirt was built without support for ZFS. You need to contact your
distribution manufacturer and ask them to enable it. Or build libvirt on
your own.

However, as I am writing these lines I realized two things:

1) there's no API to query loaded drivers/storage backends.

2) storage backends are static. While we have libvirt drivers in
separate modules (.so files) and load them at start up, it's not the
same story with storage driver backends. These are hardcoded into the
storage driver. Might be worth it to have them dynamically loadable too.