[PhAzE] Plugins for Unraid 5/6


Recommended Posts

Great installation scripts! I just used you Plex plugin. For some reason it created a new directory Plex Media Server directory under /apps/Plex/Library/Plex Media Server instead of using my old library located at /apps/Plex/Library/Application Support/Plex Media Server. All fixed though. :)

 

Go back and read the instructions.

Link to comment

Transmission working as well as influencer's plugin, which is always a good start :)

 

The only issue i have that seems to have been carried over from plugins is that, when it is stopped and restarted it has to verify certain torrents and attempts to download a very old torrent that fails as it's not registered any more.

 

It's as though there isn't enough time for it to update it's resume files and the config file.

 

It's also the same if i attempt to update say the upload limit via the gui. When it's restarted it will always take the settings from the settings file that is hardcoded with the initial speed. How do i Transmission to update it's own files?

 

BTW, if people are getting

403: Forbidden

 

Unauthorized IP Address.

 

Either disable the IP address whitelist or add your address to it.

 

If you're editing settings.json, see the 'rpc-whitelist' and 'rpc-whitelist-enabled' entries.

 

If you're still using ACLs, use a whitelist instead. See the transmission-daemon manpage for details.

 

you will need to untick "use authorisation" or add your ip address to the settings config

Link to comment

Transmission working as well as influencer's plugin, which is always a good start :)

 

The only issue i have that seems to have been carried over from plugins is that, when it is stopped and restarted it has to verify certain torrents and attempts to download a very old torrent that fails as it's not registered any more.

 

It's as though there isn't enough time for it to update it's resume files and the config file.

 

It's also the same if i attempt to update say the upload limit via the gui. When it's restarted it will always take the settings from the settings file that is hardcoded with the initial speed. How do i Transmission to update it's own files?

 

BTW, if people are getting

403: Forbidden

 

Unauthorized IP Address.

 

Either disable the IP address whitelist or add your address to it.

 

If you're editing settings.json, see the 'rpc-whitelist' and 'rpc-whitelist-enabled' entries.

 

If you're still using ACLs, use a whitelist instead. See the transmission-daemon manpage for details.

 

you will need to untick "use authorisation" or add your ip address to the settings config

I haven't found a 'clean shutdown' option for transmission-daemon when it shuts down. Currently it's sent the kill command, which initiates its shutdown, but it has a 10 second timer to shutdown. I suppose I could increase that timer to see if that helps (its under "start()" in the plugin code).  Unless anyone else has any idea how to properly shutdown transmission. 

 

From what I found when playing around with it, it saves the config on shutdown, so i assume its saved very last before it terminates. Perhaps my kill command is ending it too quickly, especially since it also has to pause torrent downloads prior to shutdown.

Link to comment

All the plugins on the first page use python 2.7.3 in their 32bit versions and 2.7.5 in their 64bit versions. Interestingly there isn't a pre 2.7.5 in the 64bit environment: http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/d/, hence i guess the differences.

 

It looks like NZBMegaSearch needs itself upgrading before it can be used in 64bit if it cannot use 2.7.5.

 

2.7.3 can be found here:

 

<URL>http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz</URL>'>http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz</URL>

<MD5>14740c268031f7fe09f2f8d533c6da8f</MD5>

 

Purely out of interest (and for my learning) PhAzE, why are you using https://dl.dumptruck.goldenfrog.com/p/Vq3zpArAKB/python-2.7.3-i686-5PTr.txz and not http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz ? I would have thought using official channels would help keep things standardised and saves us having several different names of python in the packages folder?

 

Phaze, I would like to bring my plugins that use Python (airvideo, beets, denyhosts, dropbox, pyload) into line with the version of Python that you are using.  However, I would echo Ockingshay's earlier comment about using an official python package from an official channel.

 

Would you please reconsider using a version of 2.7.3 from an official source over the one you currently use?

 

 

Thanks,

overbyrn

Link to comment

All the plugins on the first page use python 2.7.3 in their 32bit versions and 2.7.5 in their 64bit versions. Interestingly there isn't a pre 2.7.5 in the 64bit environment: http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/d/, hence i guess the differences.

 

It looks like NZBMegaSearch needs itself upgrading before it can be used in 64bit if it cannot use 2.7.5.

 

2.7.3 can be found here:

 

<URL>http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz</URL>'>http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz</URL>

<MD5>14740c268031f7fe09f2f8d533c6da8f</MD5>

 

Purely out of interest (and for my learning) PhAzE, why are you using https://dl.dumptruck.goldenfrog.com/p/Vq3zpArAKB/python-2.7.3-i686-5PTr.txz and not http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz ? I would have thought using official channels would help keep things standardised and saves us having several different names of python in the packages folder?

 

Phaze, I would like to bring my plugins that use Python (airvideo, beets, denyhosts, dropbox, pyload) into line with the version of Python that you are using.  However, I would echo Ockingshay's earlier comment about using an official python package from an official channel.

 

Would you please reconsider using a version of 2.7.3 from an official source over the one you currently use?

 

 

Thanks,

overbyrn

I can, almost all plugins work with that version however just a note that nzbmegasearch will stop working once I've made that change. Users if that app may want to stay on the custom python package.

Link to comment

I can, almost all plugins work with that version however just a note that nzbmegasearch will stop working once I've made that change. Users if that app may want to stay on the custom python package.

Hi Phaze, yes I read the thread and see that for some reason nzbmegasearch doesn't like the vanilla python package.  It would be interesting to get to the bottom of why and understand the difference between the package built by Piotras and the standard one. 

 

Either way it'd be good if it was possible to use a standard version but I appreciate breaking plugins is not a good idea also.

 

 

Link to comment

HTPC Manager unRAID Plugin

 

The old HTPC Manager Project died but Styxit and others have picked it back. They have made 770 commits already and are still working on it daily.

 

New HTPC Manager Website

 

Main Screen from one of my unRAID Boxes

 

zHixQav.png

 

CouchPotato

 

xExTOHP.png

 

SABnzdb

 

SykQe3s.png

 

sabNZDB

 

bTQrosc.png

 

Stats

 

UXLQGt4.png

 

NOTES:

 

If you want to make HTPC Manager (or Maraschino) your default program when going to your unRAID server address.

 

Edit the go file on the unRAID USB Stick

 

nano /boot/config/go

 

Change the unRAID emhttp line from this...

 

/usr/local/sbin/emhttp &

 

To this (-p defines what port emhttp will listen too)

 

/usr/local/sbin/emhttp -p 5000 &

 

Restart unRAID for it to take effect.

 

After you restart and access unRAID with the new HTTP port

 

Go to the Settings Tab and change either HTPC Manager or Maraschino to port 80.

 

You MUST run them as user root or else it will not work. Make your life easy and add unRAID to the Applications Module in either HTPC Manager or Maraschino.

 

Missing Package for Stats to work (PhAzE will eventually add it to his GitHub or elsewhere)

 

I had to compile a missing package for the stats page to work. I do not have a place to store it where the plugin will automatically download it during install. HTPC Manager will work fine without it but the stats tab will not. Until PhAzE has a chance to convert this plugin, if you want to use the stats page:

 

Download Link ---> psutil-2.1.1-i486-1.tgz to /boot/packages on your unRAID USB Flash Drive and install it.

 

installpkg /boot/packages/psutil-2.1.1-i486-1.tgz

 

You will need to stop / restart the HTPC Manager after you install the package. Once PhAzE adds it to his Github and updates the plugin, everything will be automated.

 

Stats Configuration Page

 

Ignore the directions on the HTPC Manager Configuration Page and do not put a comma between different entries (filesystems, mount points, etc).

 

My Ignore Mountpoint (notice I put spaces and not commas like it tells you too

 

/mnt/disk1 /mnt/disk2 /mnt/disk3 /mnt/user /var/log /proc/fs/nfs

 

HTPC Manager Plugin

 

htpcmanager.plg <---- Download link

Link to comment

I'll spend some time tomorrow trying to troubleshoot nzbmegasearch with python 2.7.3 official and see if I can resolve it. Then I can update all plugins.

Phaze,

 

I have been successful in getting nzbmegasearch to run for the unraid5 version plugin with the standard python distribution.  You need to ensure you also download openssl package as there is a dependency in python for the md5 module which requires openssl. 

 

If you run nzbmegasearch from command line as;

python /usr/local/nzbmegasearch/mega2.py

(I simply installed the plugin using default install location and with python 2.7.3 from a standard source)

Then you will see a number of python traceback errors relating to md5.  I had the same problem when converting my beets plugin to use python 2.7 instead of 2.6, so I already knew the source of the issue.

 

I then installed openssl and re-ran my test from command line and this time it worked without error.  I then tested the same by starting the application as normal from the nzbmegasearch webgui page - which showed it started okay and I was able to access the url from "Running".

 

For info; this is what I used in my plugin to get the packages I needed;

<FILE Name="/boot/packages/python-2.7.3-i486-2.txz" Run="upgradepkg --install-new">

<URL>http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz</URL>

</FILE>

 

<FILE Name="/boot/packages/openssl-1.0.1g-i486-1_slack14.1.txz" Run="upgradepkg --install-new">

<URL>http://slackware.cs.utah.edu/pub/slackware/slackware-14.1/patches/packages/openssl-1.0.1g-i486-1_slack14.1.txz</URL>

</FILE>

 

I have not yet done any further tests, but perhaps this will help with towards being able to use the regular python package from a standard distribution channel?

 

 

Regards,

overbyrn

Link to comment

Hey Phaze/overbyrn,

 

Don't know if you want to or are able to, but in my sig are links to shell install scripts I made for a few PlexWatchWeb and UpStatsBoard.  I have moved to all VM and sadly don't have the time/knowledge to keep them updated/convert to a plg format.  If you or overbyrn want to take them over, feel free.

Link to comment

Hey Phaze/overbyrn,

 

Don't know if you want to or are able to, but in my sig are links to shell install scripts I made for a few PlexWatchWeb and UpStatsBoard.  I have moved to all VM and sadly don't have the time/knowledge to keep them updated/convert to a plg format.  If you or overbyrn want to take them over, feel free.

I can take a look at plexwatch, i'm not sure what its used for but since i already have the plex plugin, i gues they would go hand in hand.

Link to comment

I'll spend some time tomorrow trying to troubleshoot nzbmegasearch with python 2.7.3 official and see if I can resolve it. Then I can update all plugins.

Phaze,

 

I have been successful in getting nzbmegasearch to run for the unraid5 version plugin with the standard python distribution.  You need to ensure you also download openssl package as there is a dependency in python for the md5 module which requires openssl. 

 

If you run nzbmegasearch from command line as;

python /usr/local/nzbmegasearch/mega2.py

(I simply installed the plugin using default install location and with python 2.7.3 from a standard source)

Then you will see a number of python traceback errors relating to md5.  I had the same problem when converting my beets plugin to use python 2.7 instead of 2.6, so I already knew the source of the issue.

 

I then installed openssl and re-ran my test from command line and this time it worked without error.  I then tested the same by starting the application as normal from the nzbmegasearch webgui page - which showed it started okay and I was able to access the url from "Running".

 

For info; this is what I used in my plugin to get the packages I needed;

<FILE Name="/boot/packages/python-2.7.3-i486-2.txz" Run="upgradepkg --install-new">

<URL>http://slackware.cs.utah.edu/pub/slackware/slackware-14.0/slackware/d/python-2.7.3-i486-2.txz</URL>

</FILE>

 

<FILE Name="/boot/packages/openssl-1.0.1g-i486-1_slack14.1.txz" Run="upgradepkg --install-new">

<URL>http://slackware.cs.utah.edu/pub/slackware/slackware-14.1/patches/packages/openssl-1.0.1g-i486-1_slack14.1.txz</URL>

</FILE>

 

I have not yet done any further tests, but perhaps this will help with towards being able to use the regular python package from a standard distribution channel?

 

 

Regards,

overbyrn

Ya, I was getting md5 errors, but when i had installed openssl it didn't seem to resolve the problem on my end, but i'll try again this afternoon. If i get it working, today i'll update all the plugins to the latest python so we can be on the same page. :)  (oddly the unraid 6 nzbmegasearch is on python 2.7.5 without any problems)

 

I hesitate to add openssl to any of my plugins because its usually installed with things like unmenu, and updates to the latest version via unmenu.  Those updates would be reverted if my plugin kept using a static version on boot.  I'm testing now however, will let you know.

Link to comment

Hey Phaze/overbyrn,

 

Don't know if you want to or are able to, but in my sig are links to shell install scripts I made for a few PlexWatchWeb and UpStatsBoard.  I have moved to all VM and sadly don't have the time/knowledge to keep them updated/convert to a plg format.  If you or overbyrn want to take them over, feel free.

I can take a look at plexwatch, i'm not sure what its used for but since i already have the plex plugin, i gues they would go hand in hand.

 

PlexWatch is a database that keeps track of whats being watched so you can view a history and get notifications. - https://forums.plex.tv/index.php/topic/72552-plexwatch-plex-notify-script-send-push-alerts-on-new-sessions-and-stopped/

PlexWatchWeb is a Web GUI

Link to comment

Overbyrn - A few things I found:

 

- Official Python 2.7.3 does not support openssl 0.9.8 (which is installed by default with unraid), and needs openssl 1.0+

- Unofficial Python 2.7.3 (the version im using now) can work with either version of openssl

- Python-Cheetah and Python-Yenc do not work with Python 2.7.x branch, so sickbeard and sabnzbd will break

- Unofficial Python 2.7.3 has custom edited cheetah and yenc included so all apps work with it

 

So it seems that if I switch all my plugins to the official python 2.7.3 as requested then I will need to force openssl 1.0 as a dependency, or symlink the missing libraries to the older version 0.9.8 that is preinstalled with unraid.  Also, I'll need customer cheetah and yenc packages.  It's starting to seem like perhaps a better idea to stick with the customer python package which maintains backwards compatibility and also runs a newer python together. 

 

Have you by chance had time to test your plugins with this unofficial 2.7.3 python package to see if your plugins work with it?

 

Link to comment

Overbyrn - A few things I found:

 

- Official Python 2.7.3 does not support openssl 0.9.8 (which is installed by default with unraid), and needs openssl 1.0+

 

FWIW, Unraid6 does indeed have openSSL 1.0.1g.  I'm guessing 5.0.5 does not?

That's correct. The issue is mainly Unraid 5 and also cheetah and yenc which sickbeard and sabnzbd require. They don't seem to be compatible with the vanilla python package but again only on Unraid 5.

Link to comment

This sounds fantastic, thanks for all the hard work.

 

Can I just clarify a few things though? At the moment I am running UnRAID 5 and have Plex installed on a non-array drive.

 

If I upgrade to UnRAID 6 and install this new plugin it will allow me to:

 

- retain all my Plex database and settings on my non-array drive

- install the 64 bit build of PMS

- keep PMS up to date from within the plugin including PlexPass versions

 

Have I understood that correctly?

Link to comment

hi there, first of all thanks PhAzE for your hard work.

 

I migrated my system to unraid v6 so I decided to switch to your plugins version.

But in sabnzbd your using a single treaded par2 program so i made a package with the 64bits version of the multithreaded par2 from http://www.chuchusoft.com/par2_tbb/

 

Here is the link: http://dl.dropboxusercontent.com/s/r38ml6by7w0d08m/par2cmdline_tbb-0.4-lin64.tgz

 

fell free to use or not as you like

Link to comment

This sounds fantastic, thanks for all the hard work.

 

Can I just clarify a few things though? At the moment I am running UnRAID 5 and have Plex installed on a non-array drive.

 

If I upgrade to UnRAID 6 and install this new plugin it will allow me to:

 

- retain all my Plex database and settings on my non-array drive

- install the 64 bit build of PMS

- keep PMS up to date from within the plugin including PlexPass versions

 

Have I understood that correctly?

Yes, yes, and yes. That's assuming you are using my plugin on Unraid 5 currently. If you are using another plugin you should check our the upgrade process linked in the first post. My plugin will let you know when an update its available for either version when it's released and you can update from in the plugin GUI.

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.