How to install OpenELEC (Official) in a VM


johnodon

Recommended Posts

I'm not going to get into whether it's a better solution than the headless docker, but just to let you know, I had it set up without a gpu through vnc. Only when I was testing and installing it, though. I then put in a gpu and have been using it that way

 

how did you get it to boot??

 

OE requires a GPU that supports HW acceleration.  If you want to get something like this to work, you may need to install Kodi in a Windows or Linux VM.  I know for a fact that Windows will work but never tried a Linux one.

 

John

Link to comment

I'm not going to get into whether it's a better solution than the headless docker, but just to let you know, I had it set up without a gpu through vnc. Only when I was testing and installing it, though. I then put in a gpu and have been using it that way

 

how did you get it to boot??

 

OE requires a GPU that supports HW acceleration.  If you want to get something like this to work, you may need to install Kodi in a Windows or Linux VM.  I know for a fact that Windows will work but never tried a Linux one.

 

John

IIRC both OE & LE (at least installing via LT's templates) work fine without a GPU passthrough.  Not good enough to watch a movie but they work
Link to comment

OE requires a GPU that supports HW acceleration.  If you want to get something like this to work, you may need to install Kodi in a Windows or Linux VM.  I know for a fact that Windows will work but never tried a Linux one.

 

John

 

im not going to use the vm for viewing or anything

i have a few addons that update/scan/clean folders

just to have my library up to date and stuff

ill point apps to the vm as well for scraping

Link to comment

 

 

I'm not going to get into whether it's a better solution than the headless docker, but just to let you know, I had it set up without a gpu through vnc. Only when I was testing and installing it, though. I then put in a gpu and have been using it that way

 

how did you get it to boot??

 

It was months ago, I honestly don't remember, but it wasn't really a challenge, it worked with the basic settings. I think I used seabios

 

Did you try the built in oe/le that you can build easily with vnc

Link to comment

I have a few quick questions:

 

1. How are you connecting remote controls (and which ones) to screens not in the same room as the PC?

2. Are you guys just using long HDMI cables to connect to TVs in other rooms?

 

Thanks!

1. I use the harmony hub and the ir receiver and the server are in the same room as the hub

 

2. Long hdmi cable through the wall ;)

 

My server and other equipment are in the next room over so I use a 25ft hdmi cable but I also tried a 50ft at first and it worked just fine

Link to comment

I have a few quick questions:

 

1. How are you connecting remote controls (and which ones) to screens not in the same room as the PC?

2. Are you guys just using long HDMI cables to connect to TVs in other rooms?

 

Thanks!

1. I use the harmony hub and the ir receiver and the server are in the same room as the hub

 

2. Long hdmi cable through the wall ;)

 

My server and other equipment are in the next room over so I use a 25ft hdmi cable but I also tried a 50ft at first and it worked just fine

 

Thanks.  I need to give this some thought - I'm wondering if it might be easier to get a Shield TV for 4k Plex, Android TV and some gaming for the kids.

Link to comment

I have a few quick questions:

 

1. How are you connecting remote controls (and which ones) to screens not in the same room as the PC?

2. Are you guys just using long HDMI cables to connect to TVs in other rooms?

 

Thanks!

 

I'm using Flircs via long USB runs.

I'm using  long HDMI runs (50ft) without issue.

 

John

Link to comment
  • 2 weeks later...

Hrm, so I upgraded from 6.19 to 6.2 and found my old VM for openelec not working as expected anymore... so I went through the same steps to "recreate" the VM and now getting that dreaded click click click noise when using HDMI passthrough... argh...  Tried using libreelec as well, and even the built in one..  all doing the same thing.  :(

 

Edit...  so I put into play something I haven't had to use for a while...

 

create file in config folder of libreelec 

/storage/.config/modprobe.d/sound.conf
and put line 

options snd-hda-intel enable_msi=1

 

Which fixed it (it seems) I will play a couple movies to verify of course..

 

Link to comment
  • 5 weeks later...

Hi,

 

I'd like to run OpenElec or LibreElec as a VM in Unraid 6.2.1. I managed to get a Win10 install running after following the helpful YouTube video by Jon Panozzo and thought this would be fairly simple too.

 

I must be as dumb as a rock but this guide doesn't seem too resemble what I am seeing in the VM tab. Do I use one of the templates and if not how do I create a custom VM for this?

 

Sorry to be a PITA, I guess the guide assumes a modicum of intelligence.  :-[

 

Thanks.

 

Adam

Link to comment

The guide was written up when the VM Manager App had a different "custom" page for creating VM's. I'd suggest trying starting with the Linux template.

 

Thank you that helps.

 

I get the feeling I am closer now. My XML looks a lot more like that in the OP. However when I run the VM I get the image load  up and then some error messages appear at the top of the screen. Some of it is cut off but the rest reads:

 

Error in mount_storage: mount_common: could not mount appconfig

Starting debugging shell... type exit to quit

can't access tty: job control turned off

 

Any advice would be very welcome :)

 

Thanks,

 

Adam

server-diagnostics-20161019-2150.zip

Link to comment

Ok.

 

I get the feeling I am maybe missing a step, like creating an image or a share or something?

 

<domain type='kvm'>
  <name>open</name>
  <uuid>6247232f-b4d1-7dc1-890e-44389061f6c6</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="linux.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='10'/>
    <vcpupin vcpu='1' cpuset='11'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='1' threads='2'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/cache/VMs/OpenELEC/vdisk1.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/OpenELEC/OpenELEC-unRAID.x86_64-6.0.3_1.img'/>
      <target dev='hdd' bus='sata'/>
      <boot order='1'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <model name='i82801b11-bridge'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <model name='pci-bridge'/>
      <target chassisNr='2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:e5:a2:ac'/>
      <source bridge='br0'/>
      <model type='e1000'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <source mode='connect'/>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x046d'/>
        <product id='0xc309'/>
      </source>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
</domain>

 

Let me know if you need any other info.

 

Thanks!

 

Adam

openelec_config.jpg.b41f5404350a224b9ad22bcda978bbc5.jpg

Link to comment

Is this what you mean? Still same problem?

 

After it errors on the loading screen, I force quite and go to edit the XML and it shows the <address lines back in again even though I deleted them and updated prior to running the VM. Not sure if this is just happening because if fails or it isn't saving the update...

 

Anyway the error is:

 

Error in mount_storage: mount_common: could not mount appconfig
Starting debugging shell... type exit to quit
Can't access tty: job control turned off

 

Thanks.

 

<domain type='kvm'>
  <name>Linux</name>
  <uuid>4b1f0d50-da3f-35c5-ddd0-95d8cd35e81f</uuid>
  <metadata>
    <vmtemplate xmlns="unraid" name="Linux" icon="linux.png" os="linux"/>
  </metadata>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='10'/>
    <vcpupin vcpu='1' cpuset='11'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-2.5'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough'>
    <topology sockets='1' cores='1' threads='2'/>
  </cpu>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/Linux/vdisk1.img'/>
      <target dev='hdc' bus='sata'/>
      <boot order='2'/>
    </disk>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/user/domains/OpenELEC/OpenELEC-unRAID.x86_64-6.0.3_1.img'/>
      <target dev='hdd' bus='sata'/>
      <boot order='1'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='dmi-to-pci-bridge'>
      <model name='i82801b11-bridge'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/>
    </controller>
    <controller type='pci' index='2' model='pci-bridge'>
      <model name='pci-bridge'/>
      <target chassisNr='2'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x01' function='0x0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:3d:dc:94'/>
      <source bridge='br0'/>
      <model type='e1000'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <source mode='connect'/>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <hostdev mode='subsystem' type='pci' managed='yes' xvga='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x03' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x046d'/>
        <product id='0xc309'/>
      </source>
    </hostdev>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
</domain>

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.