PeterB Posted January 5, 2015 Share Posted January 5, 2015 I don't think the suggestion was to remove the original page (normally under settings), but to provide a 'direct' jump to it from the plugins page. Should it be any more complicated than detecting whether the plugin creates a .page file and, if so, run it? Quote Link to comment
jonp Posted January 6, 2015 Share Posted January 6, 2015 I don't think the suggestion was to remove the original page (normally under settings), but to provide a 'direct' jump to it from the plugins page. Should it be any more complicated than detecting whether the plugin creates a .page file and, if so, run it? What if a plugin generates more than one page file? Quote Link to comment
PhAzE Posted January 6, 2015 Share Posted January 6, 2015 I assume they couldn't all be named Appname.page, which would be the only file the link looks for. In fact its already doing that. If a plugin doesn't have the .page file currently in beta 12, the link is disabled already. For example, dynamix plugin has no link. Ideally the plugins tab will be the first tab a new user checks for when looking for the plugins settings and plugins that are installed. Having redundancy would be up to the plugin Dev, but not required. Quote Link to comment
bonienl Posted January 6, 2015 Share Posted January 6, 2015 I have made the suggestion to introduce a new optional setting in the PLG file, this is basically a reference to another page when clicking on the icon in the plugins page. Most of the time the reference would point to the settings page of the plugin, but it may point to something else as well. This is similar to what has been done in Dynamix v5. After installation of a new plugin, one can click on the icon to go immediately to the settings of this new plugin. Quote Link to comment
SSD Posted April 5, 2015 Share Posted April 5, 2015 Is it possible to create a plugin that would add a tab to the WebGUI to provide unRAID specific utility features? Quote Link to comment
CHBMB Posted April 6, 2015 Share Posted April 6, 2015 I have made the suggestion to introduce a new optional setting in the PLG file, this is basically a reference to another page when clicking on the icon in the plugins page. Most of the time the reference would point to the settings page of the plugin, but it may point to something else as well. This is similar to what has been done in Dynamix v5. After installation of a new plugin, one can click on the icon to go immediately to the settings of this new plugin. Just came across this post, think it's a fantastic idea, especially as everytime I want to access a plugin I automatically click the plugins tab rather than the settings tab. Quote Link to comment
theone Posted April 20, 2015 Share Posted April 20, 2015 I have started converting my VirtualBox and Swapfile plugins to be compatible with the new Plugin System. I have a few questions: * How does the plugin system check for updates when pressing the "Check for Updates" button? * Does there need to be a special update function/method to update the plugins? * Are there any other method that need to be supported aside from "remove"? Quote Link to comment
theone Posted April 21, 2015 Share Posted April 21, 2015 I updated one of my plugins to support both v5 and v6 plugin architectures. I found that for unRAID v5 "installplg" the "remove" method needs to be at the end of the "plg" files because installplg has a problem (generates an error) for creating it. returns an error that it cannot create the file. <FILE Run="/bin/bash" Method="remove"> <INLINE> . . . </INLINE> </FILE> can anyone else confirm this or is it something else? If I put the "remove" method at the end then the error is still generated but at least the plugin is installed. Quote Link to comment
SlrG Posted April 22, 2015 Share Posted April 22, 2015 Yes thats correct. The problem is that v5 does not know the Method tag but expects a Run tag. To solve it, I did it this way: <FILE Name="/tmp/&name;-script" Run="/bin/bash" Method="remove"> <INLINE> ARCHTYPE=$( /usr/bin/uname -m ) if [ "x86_64" == "$ARCHTYPE" ]; then # ============================================== # The 'remove' script # ============================================== ... ... Put your remove script here ... fi rm -f "/tmp/&name;-script" </INLINE> </FILE> That way it is extracted on v5 and executed, but as it checks the platform it is running on first, it will not do anything other than removing itself. The error will be gone. On v6 it will execute only when the remove method is called. The Run tag will be ignored if a Method tag is found. At least it worked that way the last time I tested. Quote Link to comment
PhAzE Posted April 22, 2015 Share Posted April 22, 2015 That's a good way to some the error. I have mine running anonymously but that gives the error on v5 still. I'll likely update to this. Quick question, I saw plugins can now have an info cjangelog. How do I add that? Quote Link to comment
theone Posted April 22, 2015 Share Posted April 22, 2015 That's a good way to some the error. I have mine running anonymously but that gives the error on v5 still. I'll likely update to this. Quick question, I saw plugins can now have an info cjangelog. How do I add that? Use the <CHANGES> section. It uses markdown (same as README.md). See my plugin: https://github.com/theone11/virtualbox_plugin/blob/master/virtualbox.plg It is also mentioned in the OP. Quote Link to comment
theone Posted May 16, 2015 Share Posted May 16, 2015 How do I set an icon for each tab in the plugin? Quote Link to comment
dmacias Posted May 16, 2015 Share Posted May 16, 2015 How do I set an icon for each tab in the plugin? Put a lowercase 16x16 png with the same name as the tab's page "Title" in an icons directory in the plugin's emhttp directory. Also if its title has two words remove the spaces in the png name. Quote Link to comment
dmacias Posted May 17, 2015 Share Posted May 17, 2015 For plugins we should use the started, stopping_svcs instead of disks_mounted, unmounting_disks or are the disks events still valid for rc1/rc2? Quote Link to comment
gfjardim Posted May 17, 2015 Share Posted May 17, 2015 For plugins we should use the started, stopping_svcs instead of disks_mounted, unmounting_disks or are the disks events still valid for rc1/rc2? It depends of what services/steps you need your plugin to precede/supervene. LT just postponed VMs and Docker init from disks_mounted to started. Quote Link to comment
dmacias Posted May 17, 2015 Share Posted May 17, 2015 For plugins we should use the started, stopping_svcs instead of disks_mounted, unmounting_disks or are the disks events still valid for rc1/rc2? It depends of what services/steps you need your plugin to precede/supervene. LT just postponed VMs and Docker init from disks_mounted to started. Ok I see. Thanks Quote Link to comment
theone Posted May 17, 2015 Share Posted May 17, 2015 For plugins we should use the started, stopping_svcs instead of disks_mounted, unmounting_disks or are the disks events still valid for rc1/rc2? It depends of what services/steps you need your plugin to precede/supervene. LT just postponed VMs and Docker init from disks_mounted to started. I think I will do it for my VirtualBox plugin as well. What is the equivalent unmounting state? When does LT stop the VM and Docker? Quote Link to comment
gfjardim Posted May 17, 2015 Share Posted May 17, 2015 For plugins we should use the started, stopping_svcs instead of disks_mounted, unmounting_disks or are the disks events still valid for rc1/rc2? It depends of what services/steps you need your plugin to precede/supervene. LT just postponed VMs and Docker init from disks_mounted to started. I think I will do it for my VirtualBox plugin as well. What is the equivalent unmounting state? When does LT stop the VM and Docker? stopping_svcs event. Quote Link to comment
theone Posted June 5, 2015 Share Posted June 5, 2015 For plugins we should use the started, stopping_svcs instead of disks_mounted, unmounting_disks or are the disks events still valid for rc1/rc2? It depends of what services/steps you need your plugin to precede/supervene. LT just postponed VMs and Docker init from disks_mounted to started. I think I will do it for my VirtualBox plugin as well. What is the equivalent unmounting state? When does LT stop the VM and Docker? stopping_svcs event. How do I implement this? Do I just rename the files to "started" and "stopping_svcs" instead of "disks_mounted" and "unmounting_disks" and place them in the same events folder? Quote Link to comment
theone Posted June 5, 2015 Share Posted June 5, 2015 Pretty much. Do the "started" and "stopping_svcs" events also exist in unRAID v5? so I can make my plugins compatible Edit: According to "/usr/local/bin/emhttp_event" they do exist Quote Link to comment
bonienl Posted June 6, 2015 Share Posted June 6, 2015 Pretty much. Do the "started" and "stopping_svcs" events also exist in unRAID v5? so I can make my plugins compatible Edit: According to "/usr/local/bin/emhttp_event" they do exist Yes this is the same in v5. Quote Link to comment
coppit Posted June 25, 2015 Share Posted June 25, 2015 How are shared dependencies handled? e.g. SNMP requires perl. If I install perl, then later uninstall it when the plugin gets uninstalled, will that potentially break some other plugin that also installed perl (as a no-op)? Or should we have a standard perl plugin, and have SNMP fail with a helpful error message if perl can't be found? Quote Link to comment
ironicbadger Posted July 8, 2015 Share Posted July 8, 2015 kode, our newest contributor at linuxserver.io just wrote a pertinent article you might find interesting if you're a plugin dev. http://www.linuxserver.io/index.php/2015/07/08/unraid-plugin-authors-automate-the-plg-process-after-committing-to-github/ Quote Link to comment
PhAzE Posted July 10, 2015 Share Posted July 10, 2015 I noticed with recent builds of unraid 6 (especially the final) when a plugin echo's text, it is handled differently now than older versions. In unraid 5 - the echo'd lines would show stacked In unraid 6 - the echo'd lines now show one after another in a single line, bu tin the betas they would clear the previous entry before displaying the new echo. Is there a better way to convey messages about what the plugin is doing that doesn't mash them all into a single line across the bottom of the page? Edit: Ideally, the stacked layout of unraid 5 looks best and shows text long enough for users to see what's happening. Quote Link to comment
Recommended Posts
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.