Jump to content
goinsnoopin

[Request] SageTV

19 posts in this topic Last Reply

Recommended Posts

Docker Request:  SageTV

 

Below are some links including a docker that Coppit from this forum started...however there have not been any updates, so I don't know if it is still an active work in progress.

 

SageTV Open Source Downloads and Instructions:

http://forums.sagetv.com/forums/forumdisplay.php?f=54

 

SageTV Docker Discussion:

http://forums.sagetv.com/forums/showthread.php?t=62326

 

Alpha SageTV Docker link:

https://hub.docker.com/r/coppit/sagetv-server/

 

Vagrant Builds from leading developer:

http://forums.sagetv.com/forums/showthread.php?t=62351

Share this post


Link to post

My first stab at a container, it wasn't as difficult as I thought. I'm still in my trial of unraid but so far I like what I see.

 

Because SageTV stores all it's config and database in the executable directory, the whole directory has to be copied to the persistent storage. I based it from coppit's docker file.

 

The template is here: https://github.com/ycayer/docker-templates

 

 

Share this post


Link to post

My first stab at a container, it wasn't as difficult as I thought. I'm still in my trial of unraid but so far I like what I see.

 

Because SageTV stores all it's config and database in the executable directory, the whole directory has to be copied to the persistent storage. I based it from coppit's docker file.

 

The template is here: https://github.com/ycayer/docker-templates

The template that you made is only v6.2+ compatible.  I'm curious however how you made it.  Did you create it by hand, or did you just enter in the appropriate entries into dockerMan and then edit the resulting my* template (in templates-user), or diid you upload to GitHub the generated xml as is with no modifications

 

Share this post


Link to post

If you followed the schema documented here and manually created the xml http://lime-technology.com/wiki/index.php/DockerTemplateSchema, then that limits you to 6.2+ only

 

Following the schema here: http://lime-technology.com/forum/index.php?topic=40299.0 (or using dockerMan to create an xml for you under either 6.0.x, 6.1.x or 6.2 will guarantee compatibility with all unraid versions 6.0+

Share this post


Link to post

I have to admit I kinda hacked it together. I first generated the docker file and ran it manually on my server, after which I found the template that unraid had created. From that point on I manually edited it along with the dockerfile until I had it working. I had no idea it was 6.2 only, but I am running the 6.2 beta so that would explain it.

 

Never occured to me to search the wiki  :-[

Share this post


Link to post

I have to admit I kinda hacked it together. I first generated the docker file and ran it manually on my server, after which I found the template that unraid had created. From that point on I manually edited it along with the dockerfile until I had it working. I had no idea it was 6.2 only, but I am running the 6.2 beta so that would explain it.

 

Never occured to me to search the wiki  :-[

Had to modify my post as I messed it up and included the same link twice. 

 

Even if you create it using 6.2 (enter in the values in dockerMan) then create / save the template (it'll be in /boot/config/plugins/dockerMan/templates-user), the result will be compatible with all the 6 series (as long as you don't delete the legacy sections)

 

Share this post


Link to post

As the person who originally requested this, I am thrilled.  However, I am running Unraid 6.1.9 so this template does not work for me. 

 

I have never created my own template, so this is new to me.  In generating the template most of the items are self explanatory. 

 

However, I am having trouble with notSteve's line for the installation of Sagetv...not sure what you mean by persistant storage???  Here is the line I am having trouble with....how would this be entered into the template?

 

 <Config Name="SageTv Data" Target="/sagetv" Default="" Mode="rw" Description="Container Path: /opt/sagetv" Type="Path" Display="always" Required="yes" Mask="false"></Config>

 

Thanks!

 

Dan

Share this post


Link to post

As the person who originally requested this, I am thrilled.  However, I am running Unraid 6.1.9 so this template does not work for me. 

 

I have never created my own template, so this is new to me.  In generating the template most of the items are self explanatory. 

 

However, I am having trouble with notSteve's line for the installation of Sagetv...not sure what you mean by persistant storage???  Here is the line I am having trouble with....how would this be entered into the template?

 

 <Config Name="SageTv Data" Target="/sagetv" Default="" Mode="rw" Description="Container Path: /opt/sagetv" Type="Path" Display="always" Required="yes" Mask="false"></Config>

 

Thanks!

 

Dan

That particular line would translate to 6.1.9 of <Host>/sagetv</Host>

 

But, here is the complete xml that's 6.1.9 and 6.2 compliant 

<?xml version="1.0"?>
<Container version="2">
  <Name>SageTv</Name>
  <Repository>notsteve/sagetv-unraid</Repository>
  <Registry/>
  <Network>host</Network>
  <Privileged>false</Privileged>
  <Support/>
  <Overview/>
  <Category/>
  <WebUI/>
  <Icon>http://forums.sagetv.com/forums/images/misc/SagetvLogo170.jpg</Icon>
  <ExtraParams/>
  <Description/>
  <Networking>
    <Mode>host</Mode>
    <Publish/>
  </Networking>
  <Data>
    <Volume>
      <HostDir>/mnt/disks/Media_unprot/</HostDir>
      <ContainerDir>/var/media/videos</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir>/mnt/disks/Media_unprot/</HostDir>
      <ContainerDir>/var/media/music</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir>/mnt/disks/Media_unprot/</HostDir>
      <ContainerDir>/var/media/pictures</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir>/mnt/disks/Media_unprot/SageTv/</HostDir>
      <ContainerDir>/var/recordings</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir/>
      <ContainerDir>/sagetv</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
  </Data>
  <Environment/>
  <Config Name="Videos" Target="/var/media/videos" Default="" Mode="rw" Description="Container Path: /var/media/videos" Type="Path" Display="always" Required="false" Mask="false">/mnt/disks/Media_unprot/</Config>
  <Config Name="Music" Target="/var/media/music" Default="" Mode="rw" Description="Container Path: /var/media/music" Type="Path" Display="always" Required="false" Mask="false">/mnt/disks/Media_unprot/</Config>
  <Config Name="Pictures" Target="/var/media/pictures" Default="" Mode="rw" Description="Container Path: /mnt/var/media/pictures" Type="Path" Display="always" Required="false" Mask="false">/mnt/disks/Media_unprot/</Config>
  <Config Name="Recordings" Target="/var/recordings" Default="" Mode="rw" Description="Container Path: /mnt/var/recordings" Type="Path" Display="always" Required="false" Mask="false">/mnt/disks/Media_unprot/SageTv/</Config>
  <Config Name="SageTv Data" Target="/sagetv" Default="" Mode="rw" Description="Container Path: /opt/sagetv" Type="Path" Display="always" Required="yes" Mask="false"/>
</Container>

 

Share this post


Link to post

Squid,

 

Thanks for the compliant xml.  I edited your sample to match my user share names and then copied the xml file to my flash drive.  I then went to dockerman and created a new container and selected the my-SageTV template and the settings with my correct mappings showed up.  I then hit create and the process complete and the docker is there with the red stop sign and it will not start.  When I edit the container it looks like the <Host>/sagetv</Host> portion is missing.  Also after the creation when I look at the my-SageTV.xml several entries are then missing.  Here is the xml after docker creation:

<?xml version="1.0" encoding="utf-8"?>
<Container>
  <Name>SageTv</Name>
  <Description></Description>
  <Registry></Registry>
  <Repository>notsteve/sagetv-unraid</Repository>
  <BindTime>true</BindTime>
  <Privileged>false</Privileged>
  <Environment/>
  <Networking>
    <Mode>host</Mode>
    <Publish/>
  </Networking>
  <Data>
    <Volume>
      <HostDir>/mnt/user/Offline/</HostDir>
      <ContainerDir>/var/media/videos</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir>/mnt/user/Music/</HostDir>
      <ContainerDir>/var/media/music</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir>/mnt/user/Photos/</HostDir>
      <ContainerDir>/var/media/pictures</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
    <Volume>
      <HostDir>/mnt/user/SageTV/</HostDir>
      <ContainerDir>/var/recordings</ContainerDir>
      <Mode>rw</Mode>
    </Volume>
  </Data>
  <Version></Version>
  <WebUI></WebUI>
  <Banner></Banner>
  <Icon>http://forums.sagetv.com/forums/images/misc/SagetvLogo170.jpg</Icon>
  <ExtraParams></ExtraParams>
</Container>

 

Does this make sense?  Any suggestions would be greatly appreciated!

 

I attached my edited version of your xml (renamed as .txt for attachment purposes), and two screenshots of the docker template settings for reference.

 

Thanks,

 

Dan

my-SageTV.txt

unraid_sagetv_docker.PNG.dd0ea2832a4a4eca2a48f2f1f6a50f26.PNG

unraid_sagetv_docker_2.PNG.8ea8e455e45baee4642530b9bcc8e49b.PNG

Share this post


Link to post

Because you didn't enter in a host path for /sagetv

Share this post


Link to post

On a closer look, I think I see what you're talking about "missing entries"  Those would be the <Config section at the bottom.  That is the 6.2 section (not strictly required even under 6.2) and 6.1 does not generate them.  That will not impact loading this template (assuming that the app even works or that the original 6.2 template is correct - All I did was load buddy's 6.2 template, resave it through 6.2 dockerMan and then post the result - and the result happens to be 6.1 compatible

Share this post


Link to post

I've updated the template on my github repo. I'm hoping that now it's 6.1 compliant.

Basically to create a template full out the info in dockerMan and don't touch the xml at all

Share this post


Link to post

notSteve and Squid,

 

Thanks for your help.  I have this docker running.  I got it to work before notSteve updated his xml, so I have not tested that yet. 

 

notSteve - what are you using as a client, I see stuckless over at the sagetv forums also has an opensource client available.  I wonder if this can also be installed.  Not understanding dockers completely, I know some docker authors have leveraged guacamole to create a remote desktop connection to clients....Squid do you know if my recollection is correct?  Any suggestions of a posting or thread that would detail how to do this?

 

Thanks,

Dan 

Share this post


Link to post

Ask sparklyballs / aptalca about integrating guacamole

Share this post


Link to post

notSteve,

 

Updated xml looks good.  I may have found one issue, lines 21 you have a // between Media and videos, I believe is only supposed to be a single /

Samething in line 47.

 

What do you think about also installing the client?  For me I don't need it for playback of video, but would love to be able to edit preferences, add shows to record, etc.

 

Dan

 

 

Share this post


Link to post

Just wanted to add that SageTV Docker with comskip support can be installed from the Community Applications plugin.

 

It's really great to see you here, stuckless!  You've been one of the most respected developers in the SageTV world.  I'm behind, and rather slow making changes, but I'm hoping to take advantage of the newer SageTV releases and tools.

Share this post


Link to post

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.