Jump to content
ironicbadger

The (un)official unRAID 6.x plugin discussion thread


153 posts in this topic Last Reply

Recommended Posts

With v6 upon us there needs to be a place where can discuss plugin implementation specifics, so this may as well be it.

 

Some topics that may do well here:

 

  • A specific .plg extension for 64bit vs 32bit for simplicity and KISS
  • A specific folder structure for 'extra' folders (extrai386 / extrax64)
  • Anything you wish to add!

 

The general consensus, and I include myself in this, is to keep v6 as clean as possible with regard to multilib and look forwards. It may be a little more difficult at first, but no pain - no gain.  8)

 

Have at it.

 

 

edit: A plugin is adding additional functionality to the core unRAID product by the means of installing software. Think of it like an app on your phone for example, just by a different name. Some key plugins may include Plex, acupsd, Crashplan, TVHeadend, Transmission, etc ...

Share this post


Link to post

I've not voted ... yet.

 

Option one would serve the objective perfectly well.  Option two would be fine only if pre-existing 32-bit plugins (ie, those which don't check the host OS architecture) can be prevented from running in a 64-bit system.  Perhaps we need both - a new extension (or directory structrure) for addons which are 32/64 bit aware and all those plugins to perform the automatic detection.

Share this post


Link to post

i thought the goal here was to not run plugins in unraid anymore?

to have something like docker or run a VM with the plugins

i see libvirt and qemu are installed

so normally all what we would need is some gui to start installing something like ubuntu or windows in a vm and run all plugins from there ?

 

that would be my vote ?

this dockers is intreaging me as it is cool but without lxc this will not run :(

 

Share this post


Link to post

i thought the goal here was to not run plugins in unraid anymore?

to have something like docker or run a VM with the plugins

i see libvirt and qemu are installed

so normally all what we would need is some gui to start installing something like ubuntu or windows in a vm and run all plugins from there ?

 

that would be my vote ?

this dockers is intreaging me as it is cool but without lxc this will not run :(

 

 

I must admit i agree with you here 100% when the VM Gui is sorted i plan to move the plugins i use to a ubuntu server vm and that's it, keep everything off unRAID.

 

I want to keep unRAID as clean as possible and personally believe that's the way it should be, the only plugin i can see a need to install is a64bit apcupsd and i also believe this should really be included in unraid by default.

Share this post


Link to post

The plugin system need to be a lot better than Unraid 5.x

 

Since Unraid 6 is on Slackware, so it is making more difficult to install softwares in reliable way.

 

How does Freenas and Synology deal with the Plugins?

 

Imagine Unraid 6 on CentOS? You could easily do yum install software_name

 

I use Ubuntu Server VM as well ;)

Share this post


Link to post

yep i too will be running pretty much all of my plugins as applications in a vm, but i think it would still be prudent to discuss folder and filename structure for the users who still just want to run plugins, also even using vm's we still need to potentially run 1 plugin for management of vm's  ;D

 

i like your ideas so far ironicbadger:-

 

A specific .plg extension for 64bit vs 32bit for simplicity and KISS

A specific folder structure for 'extra' folders (extrai386 / extrax64)

Anything you wish to add!

 

how about having a specific folder structure for 'packages' so keep them seperate from 32bit versions, same idea so packagesi386 / packagesx64

Share this post


Link to post

So, let's not forget the majority of people don't know / care what a VM is. We can perhaps make a few more 100 care by telling them to keep their 'host' clean, which is what I will be doing for sure.

 

However, that leaves the majority and the majority if they want one thing above everything is 'just work'. Apple's software and services, despite being limited in my view in some ways which prevent some of the products (iOS) from appealing to me (a nerd), have gained a huge following because they just work. unRAID is pretty close to this already in my view all things considered...

 

So, the majority will want to install plugins willy nilly on the unRAID host as that's how they 'think'. Apps go on my phone, not in a special thing within my phone within my phone... Yes, I know that actually all apps run within a virtualisation wrapper on Android etc but that's not the point. It is prudent to remember here that plugins are a key feature for the majority and providing a 'standardised framework' is key to ensuring that the ecosystem becomes rich and can include everything we want.

 

Only just got home and stuff, will load up v6 now and have a play!  8)

Share this post


Link to post

So, let's not forget the majority of people don't know / care what a VM is. We can perhaps make a few more 100 care by telling them to keep their 'host' clean, which is what I will be doing for sure.

 

However, that leaves the majority and the majority if they want one thing above everything is 'just work'. Apple's software and services, despite being limited in my view in some ways which prevent some of the products (iOS) from appealing to me (a nerd), have gained a huge following because they just work. unRAID is pretty close to this already in my view all things considered...

 

So, the majority will want to install plugins willy nilly on the unRAID host as that's how they 'think'. Apps go on my phone, not in a special thing within my phone within my phone... Yes, I know that actually all apps run within a virtualisation wrapper on Android etc but that's not the point. It is prudent to remember here that plugins are a key feature for the majority and providing a 'standardised framework' is key to ensuring that the ecosystem becomes rich and can include everything we want.

 

Only just got home and stuff, will load up v6 now and have a play!  8)

 

All correct but as secretagent has already alluded to this gives the plugin makers the opportunity make people care about vm's. Transparently if necessary.

 

For example the current sabnzbd and sickbeard plugins *could* be replaced with a plugin that is actually just a preconfigured vm image to have them run.

 

As far as non-vm-aware users are concerned it's just another plugin to them. It installs and tells them to point their browser somewhere to access the applications. But on the backend it leverages virtualisation and so keeping the unraid base clean by default and allows the flexibility of whatever you run in the vm.

 

Also as secretagent has hinted at, lxc and toolchain making it's way into unraid might make this an even more interesting option than kvm images, but that's a further down the path discussion!

Share this post


Link to post

boof, surely this is going to mean multiple vm's running though for the end user, one for each plugin that they used to run, maybe some consolidation such as CP, SB, SAB on one vm sure yeah but the others are going to have to run separately, unless the user is man enough to dive into the vm and add in the application himself to the vm.

 

utopian idea would be 1 vm that has all the main applications installed, the user then gets presented with a plugin that he can selectively tick or untick to enable/disable applications in the vm, this then passes the options to systemctl and either enables/disables each application, would be awesome for the end user but could be a massive task for the person maintaining the "1 vm to rule them all", too much?  :o

Share this post


Link to post

Entirely possible if we setup our own repo for an OS. I do this with Arch for example to save compiling stuff every time (even tho its not hard just saves installing build libraries in the VM).

 

So all I need to do is..

 

Pacman -S sabnzbd sickbeard couchpotato plex xen etc etc

 

I would happily set something like this up using the donations I received and maintain it for an OS (could easily get out of hand if we open it up to multiple OSs). My preference is Arch, but could be persuaded elsewhere with a good enough case.

 

IMO the learning curve with arch is steep but installing via command line etc is fully supported using it. Not mention there's absolutely no bloat and it will run on 1g or less of ram quite happily.

 

Another reason is AUR (Arch user repo). Go take a look at what packages are available and if its there I can easily compile for you and add to the repo. Updates are easily handled with pacman -Syu etc

 

Sent from my Nexus 5 using Tapatalk

 

Share this post


Link to post

boof, surely this is going to mean multiple vm's running though for the end user, one for each plugin that they used to run, maybe some consolidation such as CP, SB, SAB on one vm sure yeah but the others are going to have to run separately, unless the user is man enough to dive into the vm and add in the application himself to the vm.

 

utopian idea would be 1 vm that has all the main applications installed, the user then gets presented with a plugin that he can selectively tick or untick to enable/disable applications in the vm, this then passes the options to systemctl and either enables/disables each application, would be awesome for the end user but could be a massive task for the person maintaining the "1 vm to rule them all", too much?  :o

 

it could mean multiple vm's. It could not. Each vm doesn't have to be very big either so there needn't be much over head.

 

Multiple vm's on one host is the point of virtualisation after all, so it's not an issue.

 

Containerisation with something like lxc (and docker as keeps coming up :) ) would be the lightweight solution but that's not currently on the table. I suspect if a virtualisation approach sticks it may be something added to unraid sooner rather than later. In fact, without checking, the lxc kernel bits might already be in the kernel? At which point it's just the userland tools to worry about which might only be a slackware package install away.

 

Think 'cloud' but on your unraid server I guess. Small, constrained, virtual instances to do specific tasks.

 

You don't have to have a vm per plugin either. It depends on the plugin. it would arguably only make sense where the plugin is so complicated that it means significant changes to the base unraid install would be required otherwise.

 

Sickbeard / Sab would be a good example of a candidate.

 

Something like unmenu (which forgive my lack of knowledge if incorrect) is a bit of awk which can run trivially with little impact on the unraid base OS might not really necessitate any virtualisation.

 

Point being - virtualisation in the core brings these options to the table to use as appropriate.

Share this post


Link to post

Entirely possible if we setup our own repo for an OS. I do this with Arch for example to save compiling stuff every time (even tho its not hard just saves installing build libraries in the VM).

 

I entirely agree. I'm not sure slackware is the best distro for this though sadly.

 

There is official (I think) talk of formally making another unraid product that isn't it's own OS, but just a package for other supported distributions which would be exactly what you might be after. And, personally, I think a far better solution for unraid in general.

Share this post


Link to post

Entirely possible if we setup our own repo for an OS. I do this with Arch for example to save compiling stuff every time (even tho its not hard just saves installing build libraries in the VM).

 

I entirely agree. I'm not sure slackware is the best distro for this though sadly.

 

There is official (I think) talk of formally making another unraid product that isn't it's own OS, but just a package for other supported distributions which would be exactly what you might be after. And, personally, I think a far better solution for unraid in general.

 

Yes that was what grumpy and I floated which started this whole discussion in November!

 

Sent from my Nexus 5 using Tapatalk

 

 

Share this post


Link to post

I've been banging on about it for years - but no one listens to me because I'm a whiny idiot :)

 

Well done on getting traction. If it happens - I can't wait.

Share this post


Link to post

I'll be the first to chime in as a little guy so to speak. I started using Unraid early in the 4.? I am not a programmer and I am not at all familiar with Linux. I rely solely on the grace of advanced users to help me by posting a step by step guide or answering questions. Unmenu was good for guys like me to install scripts or packages, now I have a cluttered up thumb drive with stray packages here and there. This caused me great pains when I tried to install PLex I had to delete gcc++ from unmenu. Now I have to research what Unraid 64 will do for me and VM. Right now I can't chime in on what will be best in the future for plugins or apps I'm just asking to not for get the little guy or make is as easy or simple to make the changes. A great how to does wonders for those of us. I would like to see and drive just for plug ins or apps even if its out side of the array. Thanks for my 2 cents, now I off to read up on VM and 64bit.

Share this post


Link to post

yep ive also been playing with arch and REALLY love the no bloat model, been playing with tarballs from AUR and building apps such as CP just to see how easy it is, turns out its pretty darn easy :-), i was going to create a vm image with the popular apps such as CP, SAB, SB, and Plex and upload it for users to grab and run, but you know what your doing ironicbadger and im just a linux newbie so woud love to see what you can come up with  ;D

Share this post


Link to post

utopian idea would be 1 vm that has all the main applications installed, the user then gets presented with a plugin that he can selectively tick or untick to enable/disable applications in the vm, this then passes the options to systemctl and either enables/disables each application, would be awesome for the end user but could be a massive task for the person maintaining the "1 vm to rule them all", too much?  :o

 

I skipped this sorry.

 

Yes that would work - and be great. Technically easily achievable as well. Just have a message queue end point running on the virtualised instance and then pass a simple message from the unraid host to generate actions.

 

I guess the usual problems of the comnmunity coming up with a standard for this one vm image and sticking to it would apply. I suspect that's much harder to achieve (and hasn't been so far for existing plugins - which I don't mean as a dig at anyone particularly. Lack of guidance or framework on the unraid side has made this an inevitable outcome.)

Share this post


Link to post

This is exactly what I plan to do.  Run a single VM to offload all my plugins (SAB/SB/CP/Plex).  The no-bloat approach would be perfect, so maybe I'll try Arch.  I was originally thinking Ubuntu server or Windows (so PMS could do flash/silverlight channels).

 

I'd prefer to try and set it all up myself, but would also consider using a pre-built VM image.  Just waiting patiently for guides on how to do so!

Share this post


Link to post

This is exactly what I plan to do.  Run a single VM to offload all my plugins (SAB/SB/CP/Plex).  The no-bloat approach would be perfect, so maybe I'll try Arch.  I was originally thinking Ubuntu server or Windows (so PMS could do flash/silverlight channels).

 

I'd prefer to try and set it all up myself, but would also consider using a pre-built VM image.  Just waiting patiently for guides on how to do so!

 

Arch install guides I've done...

 

No GUI - http://blog.ktz.me/?p=371

with GUI (though it makes a few things easier, it can actually make your life harder.) - http://blog.ktz.me/?p=131

 

yep ive also been playing with arch and REALLY love the no bloat model, been playing with tarballs from AUR and building apps such as CP just to see how easy it is, turns out its pretty darn easy :-), i was going to create a vm image with the popular apps such as CP, SAB, SB, and Plex and upload it for users to grab and run, but you know what your doing ironicbadger and im just a linux newbie so woud love to see what you can come up with  ;D

 

No worries, I think it's worth discussing the setups we'd want in this VM image (I wouldn't install any software just incase of licensing issues) but would host a repo specifically for Arch VM users to install the apps they want. Just ping me a request and I'd look at adding it.

 

I guess the *only* vaguely complex thing left to configure, and this will vary dramatically per user, are file paths / share paths. For this reason the guides will have to be very clear, maybe even a youtube video to help 'the little guy' that commented earlier (don't worry I won't forget you guys!). Arch is wonderfully simple as you have discovered, until something goes wrong but that goes for any Linux. I know Arch pretty darn well (more than any other distro) and would feel comfortable attempting to support it for an 'unofficial' VM plugin image.

 

So for file paths in the VM presumably we'd just have an fstab entry ready to go in a how to guide that the end user would adjust and the enter themselves, ups the complexity for newbie's but I can't think of any other way of doing with the plethora of configurations we're likely to encounter.

 

 

Share this post


Link to post

I think maybe dirtysanchez was taking about a guide on how to actually create a VM using KVM on unraid 6, I too an looking for a concise guide on how to do this once all the bugs are ironed out of 6.x

Share this post


Link to post
...

edit: A plugin is adding additional functionality to the core unRAID product by the means of installing software. Think of it like an app on your phone for example, just by a different name. Some key plugins may include Plex, acupsd, Crashplan, TVHeadend, Transmission, etc ...

 

Thanks... but that does not explain the difference between plugin and application.  :P

Share this post


Link to post

I think maybe dirtysanchez was taking about a guide on how to actually create a VM using KVM on unraid 6, I too an looking for a concise guide on how to do this once all the bugs are ironed out of 6.x

 

Until tom has the libvirt stuff ironed out as you say, its not happening. I've added the missing stuff here and have a VM running but it was a pain in the arse.

 

 

There's no difference between app / plugin except semantics I guess.

 

Sent from my Nexus 5 using Tapatalk

 

 

Share this post


Link to post

Until tom has the libvirt stuff ironed out as you say, its not happening. I've added the missing stuff here and have a VM running but it was a pain in the arse.

There's no difference between app / plugin except semantics I guess.

 

What kind of performance hit are you seeing running things through a VM. I cannot see nzbget, sickbeard, couchpotato being affected that much but I can see Plex being degraded.

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.