redo after git fuckup

This commit is contained in:
Squidly271 2017-07-31 13:20:58 -04:00
parent c6cebec86b
commit 6a223b56db
150 changed files with 7396 additions and 0 deletions

47
.gitignore vendored Normal file
View File

@ -0,0 +1,47 @@
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msm
*.msp
# Windows shortcuts
*.lnk
# =========================
# Operating System Files
# =========================
# OSX
# =========================
.DS_Store
.AppleDouble
.LSOverride
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

7
copy_to_git.sh Normal file
View File

@ -0,0 +1,7 @@
#!/bin/bash
mkdir -p "/tmp/GitHub/community.applications/source/community.applications/usr/local/emhttp/plugins/community.applications/"
cp /usr/local/emhttp/plugins/community.applications/* /tmp/GitHub/community.applications/source/community.applications/usr/local/emhttp/plugins/community.applications -R -v -p

4
pkg_build.sh Normal file
View File

@ -0,0 +1,4 @@
#!/bin/bash
cd source/community.applications
pkg_build.sh

View File

@ -0,0 +1,819 @@
<?xml version='1.0' standalone='yes'?>
<!DOCTYPE PLUGIN [
<!ENTITY name "community.applications">
<!ENTITY author "Andrew Zawadzki">
<!ENTITY version "2017.07.31">
<!ENTITY md5 "b50dc911eaf6996b1df162789cf04701">
<!ENTITY launch "Settings/PluginSettings">
<!ENTITY plugdir "/usr/local/emhttp/plugins/&name;">
<!ENTITY github "Squidly271/community.applications">
<!ENTITY pluginURL "https://raw.githubusercontent.com/&github;/master/plugins/&name;.plg">
]>
<PLUGIN name="&name;" author="&author;" version="&version;" launch="&launch;" pluginURL="&pluginURL;">
<CHANGES>
###2017.07.31
- Update URL for application feed
###2017.07.24
- Better enforcement of fatal errors in application templates
- Code cleanup
- Fixed: Edge case of being able to search dockerhub if docker is not enabled
- Fixed: Edge case of app of the day no longer valid app after an update
###2017.07.20
- Multiple Installation of Previous Apps
- Fixed: Clicking outside of the install button would attempt to install
- Fixed: Selected Apps would not stay selected following a view or page change
- Added: Ability to select apps from different pages and have them all install
###2017.07.16
- Enhanced: Search box has focus when page loaded (Just start typing instead of clicking within)
- Enhanced: After installing / editing a docker application, pressing DONE will return to the Apps page (previously blank template would appear)
- Added: Ability to install multiple applications (docker / plugin) simultaneously from the Previous Apps section without confirming the already filled out template.
- Changed: Default for Displayed results per page from 10 to 25
- Removed: Option to open install / edit pages in a new tab
###2017.07.08
- Minor changes to appfeed statistics displays
###2017.07.02
- Don't revert to legacy mode automatically if appfeed fails (probably due to DNS failure. Previously could take an hour to time out in this circumstance. New method will time out in 2-3 minutes)
- Fixed: Under certain circumstances with docker service disabled, app pop ups could display errors
###2017.07.01a
- Fix regression error when updating CA from within CA would not reload the page after installation finished
###2017.07.01
- Added in sort by date when in New Apps section
- Fixed Categories not resetting after a search performed
###2017.06.25
- Remove sort by date and do not display except on plugins (rarely do docker maintainers update it which makes for a lot of confusion)
- Fixed: Under certain circumstances, app info popups in previous apps would display the incorrect information
- Add a comment if an app is deprecated
- Fixed: Prevent apps not in appfeed from displaying a pop up
- Remove some excess code and files
- Fix CSS on statistics displays
###2017.06.18
- Expanded details on statistics
- Removed resource monitor (see thread for details)
###2017.06.10
- Adjustable Disappear time on app popups
###2017.06.05
- Fixed: Regression error in Resource Monitor if no applications running
###2017.05.30
- Fixed: Display Aberration in Table Mode under certain conditions
- Enhanced: View Mode and Results per Page saved between instances
- Enhanced: Increased compatibility with older browsers
- Added: Statistics Display for appfeed
- Code cleanup
###2017.05.21
- Enhanced: Update plugins now refreshes page instead of reloading
- Enhanced: Install plugins now refreshes page instead of reloading
- Enhanced: Increase search speed on installed apps
- Added: Paging when utilizing favourite repositories
- Code cleanup
###2017.05.19
- Fixed: Display anomalies introduced by unRaid 6.3.4
- Fixed: Minor issues with category / subcategory buttons
###2017.05.16
- Fixed: Under certain circumstances the popup would disappear immediately when moving the mouse
- Added: More fixes for common template author's mistakes
- Minor skin changes in Icon Details mode
###2017.05.08
- Enhanced: Speed up generation of displays
- Enhanced: Properly handle edge cases of multiple browser tabs open and stale CA sessions displaying popups
- Added / Restored: Ability to install / edit from Icon mode without hitting popup.
###2017.05.07
- Fixed: Regression error on apppop up for previous apps
###2017.05.04
- Add Install / Edit / WebUI icons to icon details mode
###2017.04.30
- Added: Ability to jump directly to an author / maintainer's profile (to help with selecting whether to install or not)
###2017.04.29a
- Added: Adjustable setting for "hover time" before a popup appears
###2017.04.29
- Fix Compatibility with Internet Explorer and Opera
- Fix Button incorrectly displaying on an installed application utilizing Branches
- Fix Changelog not displaying for CA when update is available
###2017.04.24a
- Don't display webUI link if docker app is not running
###2017.04.24
- Remove legacy UI
- Revamp GUI
- All installs / edits / etc handled via hovering over (or clicking on the icon for the app)
- Fixed: Minor issues with paging
###2017.04.09###
- Introduce new UI to remove less commonly used buttons from screen.
###2017.04.04###
- Fix 6.2.x compatibility
###2017.04.02###
- Implement new features made available by 6.3.3+ (Still fully compatible with older versions of unRaid)
- Hovering over app's icon opens up the full description
- Hovering over changes icon opens up the change log
- Use tooltipster exclusively (tooltips will open after 1.5 seconds, and automaticaly close after 15 seconds)
###2017.03.22###
- Misc Display Fixes
###2017.03.21###
- Maintenance update: Prevent Deprecated apps from appearing on available apps lists
###2017.03.19a###
- Ability to switch max per page on the fly
- Unify docker search navigation with appstore navigation
###2017.03.19###
- Misc improvements to paging
###2017.03.18###
- Added limit results to "x" per page
###2017.02.25###
- Update links within plugin screens
###2017.02.12###
- Maintenance update. Add more fixes for template errors from authors
###2017.01.29###
- Added: Automatic Blacklisting if a template poses a security risk
###2017.01.24###
- Security fix on full description popups
- Fixed: Show stats on full description popups if app name has been changed
###2016.12.31###
- Fix permission issues resulting from a migration of development machines
###2016.12.30###
- Suppress invalid cron job email
###2016.12.05###
- Fixed: Stopping array would hang until any calculations of appdata size was completed if CA Backup was not installed
###2016.12.03###
- Fix pop up descriptions in Previous Apps
- Don't process blacklisted apps
###2016.11.13###
- Fixed: CA Modules displaying incompatible add-ons
###2016.11.11###
- Allow separate installs / removal of included modules
###2016.11.05###
- Infrastructure changes to ultimately allow separate module installation / deinstallation
###2016.10.30###
- Fixed: Dynamix Bleeding Edge 2016.10.29c compatibility
###2016.10.26###
- Allow appdata backup source to be any folder on system
- Updated routines to handle potential incompatibility with PHP and unRaid's generated comments
###2016.10.12###
- Handle edge case template creation by dockerMan
###2016.09.28###
- Force redirection of additional backup scripts output console
###2016.09.25a###
- Speed up appfeed download
###2016.09.25###
- Added: Selectable delay in days before autoupdating a plugin
- Added: Backup of old .plg files prior to backup to support edge-case rollbacks if needed
- Updated: Manual
###2016.09.23###
- NOTE: All auto update settings will be reset back to defaults with this update. IE: Only CA and FCP will autoupdate
- Fixed: CA under certain circumstances would show as not autoupdating in settings when in fact it would
- Fixed: Under very specific circumstances, some plugins set to not autoupdate could in fact auto update
- Fixed: PhAzE plugins would not show up as installed if they were
###2016.09.21###
- Extra security tests on auto updates
- Implement autoupdate kill switch
###2016.09.17###
- Compatibility fix for dynamix.bleeding.edge.plg
###2016.09.15###
- Fixed minor compatibilty issues with 6.2 Final
- Changed: Only log maximum 10 rsync errors in backup module
- Fixed: disallow faster rsync option if days to keep backup sets is disabled (or set to 0)
- Fixed: backup to flashdrive setting (entry could have been possibly corrupted under 2016.09.03)
- Added: Script to delete old dated backups in addition to ALL backups and error backups only
- Changed: Update Apps now called Legacy Mode. Selecting again goes back to appFeed mode
- Removed: Private Repositories via a GitHub repo.
- Added: Selectable notifications on autoupdates of plugins
- Added: XML Branch support while in Legacy Mode
- Fixed: Display aberrations while in legacy mode if some repositories didn't download
- Added: Legacy mode will now display any XML's which failed to parse
###2016.09.07###
- Fixed VM XML's not backing up under certain circumstances
- Do not delete XML backups if source is no longer available
- Added Dynamic adjustment of templates based upon user input
###2016.09.06###
- Fixed Backup/Restore settings module not working
- Added Selectable display for Random App Of Day
###2016.09.04###
- Under certain cirumstances, app of the day could crash CA
- Download compressed version of appfeed
###2016.09.03###
- Added in VM XML backups
- Major rewrite of display engine (faster, far smaller)
- Fix app of day to not possibly display moderated apps if app feed happened to change during the day
- Fix various buttons not properly getting disabled when forcing update under certain circumstances
- Fixed search on author where apps would always display as being installed
- Far too many coding changes to list
###2016.08.13###
- Maintenance Update
- Added Apps of the day
- Fixed display abnormalities in Table Mode under certain conditions / templates
- Fixed displayed borders on popups
- Updated manual
- Removed extraneous code
- Fixed base image display when in legacy mode
###2016.08.07###
- Added in ability to flag / pin apps for later viewing
###2016.08.03###
- Fixed: Restore appdata when using user shares as a destination
###2016.07.31###
- Support user shares as source and destination for appdata backup on 6.2-rc3+
###2016.07.23###
- Major revamp to backup/restore appdata module (see thread for details)
###2016.07.16###
- Better logging for CA Backup
###2016.07.08###
- Bug fix on dockerHub searches vs recommended applications
###2016.07.04###
- Fixed cleanup appdata if an installed app doesn't have any volume mappings
###2016.07.01###
- Support Separate Destinations for Flash Drive Backup
###2016.06.29###
- Backup Disk Assignments and super.dat (renamed) as part of USB backup
###2016.06.26###
- Backup options not displaying the set value for save log to flash
- Fix improper displaying of source and destination on popup (restore)
- Suppress errors displayed when selecting a UD mount for backup purposes
- Added in backup of flash drive (sans super.dat) to docker appdata prior to backing up to array
###2016.06.25k###
- Add directions for backups for UD mounted shares
###2016.06.13###
- Fix typos
- Prevent appdata cleanup from deleting parent folders (due to severely misconfigured previous template)
- Add support and project links back to table mode (not sure how / when they got removed)
###2016.06.12###
- Miscellaneous enhancements and fixes
###2016.06.11###
- Added: New module to delete orphaned appdata folders
- Better appdata determination if running unRaid 6.2+
###2016.06.05###
- Fixed: Prevent invalid Support and Project URLs from displaying
###2016.06.02###
- Add in option to speed up backups when using dated backups with automatic deletions
###2016.05.30###
- Add in automatic deletion of old dated backup sets
###2016.05.12###
- Add in dated backup of appdata
###2016.05.08###
- Fixed some bugs with AutoUpdate displays
###2016.05.05###
- Enhanced: Backup - better logging into syslog
- Added: Configurable logging options
- Fixed: Suppress errors if plugins don't have a readme
###2016.05.01###
- Added Configurable notifications on apppdata backup
- Added Exluded folders to appdata backup
- Updated: CA manual
- Added rsync errors now logged
- Lowered memory footprint of program
###2016.04.30###
- Better warnings on overwrites
- Added ability to set backup destinations to a subfolder
- Enhanced script selection / share selection
- Added ability to skip docker.img file on backups
- Fix autoupdate of applications would not always only display installed plugins
###2016.04.28###
- Added: Support for manual / scheduled backups of appData
###2016.04.17###
- Added: Ability to Auto Update Selected Plugins
###2016.04.16###
- Fix: PHP exception when only a single Config entry is present
- Fix: Date application updated when in Legacy mode
###2016.04.10###
- Enhanced: Further security improvements
- Enhanced: cAdvisor template is now 6.2 compliant
- Fix: Suppress error if no docker applications running when in resource monitor
- Added: Ability to install updates for docker applications
- Enhanced: Better determination of appFeed failure
- Added: Confirmation on Update Applications button
- Updated: Manual, Credits
###2016.04.01###
- Fix: Under certain circumstances, data structures could get corrupted
- Enhanced: Further security enhancements
###2016.03.31###
- Security Fix: Prevent arbitrary execution of code from malicious templates
- Fix: Sanitize all Overview out of specification
- Fix: Resource monitor not recognizing cAdvisor installed if name changed
- Fix: Renamed apps will not display usage stats in popup
- Added: option to show change log for CA when updating itself
- Changed: default Host port for cAdvisor to 9243 (something oddball that probably won't conflict with anything else)
- Added: if cAdvisor installed, but not running, abilty to start it within CA
- Updated: Manual
###2016.03.28###
- Coding optimizations
- Fixed: Don't display a support link if no support link available
- Fixed: Add web-page link if repository authors have a web page
- Added: Ability to install updates for plugins
- Fixed: Resource Monitor not displaying icons for customized appFeed apps
- Fixed: Determination of appdata is now case-insensitive when looking for /config
- Fixed: dockerHub conversions now follow settings for new tab or same tab
- Changed: Default value for new tab or same tab is now same tab
###2016.03.26###
- Fixed: Customized apps (based upon a default one in appfeed) were being tagged as incompatible
- Enhanced: Friendly reminder if CA is out of date
###2016.03.24###
- Fixed: Installing previous apps on unRaid 6.2
- Enhanced: Now fully generates v6.2 compliant xml files for dockerMan
###2016.03.20###
- Fixed: readmore on searches (regression error)
- Fixed: private repositories (dockerHub searches) were being saved into wrong folder (regression error)
- Enhanced: Update Applications (or reversion to legacy mode) will not fail if a single repository fails to download
- Enhanced: Now include cAdvisor XML template so as to not rely upon smdion's repository
- Enhanced: Popup descriptions now include links to go to cAdvisor's page for running docker applications
- Enhanced: Templates passed through to dockerMan are now Moderated to allow CA to fix any errors, typos, etc in the author's template
- Enhanced: Major overhaul of the XML template generation
- Enhanced: Continuing code cleanup
###2016.03.13###
- Properly regress to legacy mode in case of improperly formed appFeed
- Overhaul of the javascript
###2016.03.12###
- Remove option to relocate Users menu (and relocate Apps Tab) Use webUI's display settings instead
- Remove option to set appdata share. CA now always prompts to delete appdata if it sees a /config container path
- Resource Monitor supports appdata's stored anywhere on your system (and within multiple folders)
- Fixed: Minor display aberration introduced by unRaid 6.2 beta 18
- Fixed: If a calculation of appdata size was in progress you could not stop the array
###2016.03.10###
- Further enhanced Resource Monitor
###2016.03.06###
- Fixed: Private Repositories now updated every session
- Added: Resource Monitor for Docker Applications
###2016.03.04###
- Added: Running docker applications will now dynamically display CPU and memory utilization statistics
- Various other fixes / enhancements
###2016.02.20###
- Fixed: Under certain circumstances, the domain URL listed in a plugin might not be what the author actually specified (eg: raw.github.com vs raw.githubusercontent.com) causing some plugins to not display in the previously installed section
###2016.02.19###
- Hot fix for special characters contained within templates
###2016.02.18###
- Added: Support Licence (and its mispelling of License) in templates
- Fixed: Under certain circumstances, Reinstall button could show up instead of Install
###2016.02.14###
- Code Cleanup
- Don't display dockerHub stars if not starred
- Hide search dockerHub if in previous / installed apps
- Fix error in settings if temp directory didn't exist
###2016.02.10###
- Suppress stars.sh error message
###2016.02.08###
- Fixed: Issue with going from dockerHub searches to installed / previously installed
- Fixed: Disallow dockerHub searches if docker not enabled
- Fixed: Disallow adding a previously installed docker app if docker not enabled
- Removed: Legacy Code
- Removed: dockerHub guess at Icons (api broken)
- Fixed: Suppress an error message due to a bad template
- Fixed: Remove some extra temp files once not needed anymore
###2016.02.06###
- Fixed: display abnormality with Firefox
- Enhanced: More intelligent determination of d/l counts
- Enhanced: Rearrange display icons
- Enhanced: Table Mode
- Added: Ability to display installed apps within available lists
###2016.02.04###
- Fix issue with duplicate plugin names
###2016.02.03###
- Suppress docker error messages if docker not running
- Full information on an app now displays total downloads
- Add sort by downloads
###2016.02.01###
- Going forward, unRaid version 6.1+ compatible only
- Fixed: Applications with 2 identical names could disappear from the lists
- Added: Uninstall any application within CA
- Added: Optional deleting of an application's appdata - see manual for details
- Added: Favourite Repositories
- Fixed: Moderator Comments Now only download once per session
- Removed: Local server caching of icons (made no sense to me)
###2016.01.30###
- Added: Separate Installed Apps from categories
- Added: Separate Installed Apps from previously installed
- Added: Incorporate Plugins to installed / previously installed
- Updated: Manual
###2016.01.28###
- Added: Ability to manage previously installed docker apps (my* templates)
###2016.01.24###
- Fix: Under certain circumstances, blank templates would appear
###2016.01.16###
- Fix: Under certain circumstances, updated moderator comments were not being downloaded
- Fix: Under certain circumstances, errors would appear on the popup descriptions
###2016.01.13###
- Fix: Suppress extraneous message on local console during installation
###2016.01.10b###
- Change: Appfeed now only downloaded if it has changed
###2016.01.10###
- Add: Option to not redownload appfeed if reloading apps within a certain time period
- Fix: Alternate icon wasn't displaying properly if template's icon was unavailable
- Updated: Help / Manual
###2016.01.02###
- Fix: Prevent malformed templates from displaying
- Fix: All private containers were being tagged as being incompatible
- Change AppStore to Apps
###2015.12.18###
- Add support for enforcement of application OS requirements (see help thread)
###2015.12.12a###
- Selectable add/edit/settings windows in new tab or not
###2015.12.12###
- Fix: Minor Icon Issues
- Fix: Plugin changelogs now same format as within a .plg file
- Fix: Not all plugins would properly go to the settings page
- Fix: Plugins not sorting by Author name
- Update: Help / Manual
###2015.12.08###
- Minor Bug Fixes
- Settings Button for already install plugins will take you to the plugin settings
###2015.12.06a###
- Disable Update Applications button if an update is in progress NOTE: There is normally zero reason to hit this button anyways
- Fix: Allow user selectable positioning of the AppStore. (Either on the main menu, within settings, or on main menu and move Users to settings)
###2015.12.06###
THIS IS A REQUIRED UPDATE
- Relocate plugin from docker tab to its own tab (AppStore)
- Now able to display and install available plugins
- Docker no longer required to be enabled to browse applications
###2015.12.05###
- Fixed: System wouldn't let you add any application if a private repository was present
###2015.10.10###
- Suppress commands executed with /bin/sh appearing on local monitor
###2015.09.29###
- Fixed memory leak with application feed
###2015.09.20###
- Add in super categories for beta and private (selectable from settings)
- More tweaks to docker conversion engine
- Sanitize the input on searches
relocate temporary files to ram
- various other fixes and tweaks
###2015.09.15###
- Remove code for unimplemented features
- Disallow installing dockerHub result if a recommended application uses the same repository
- Fix: *.xml not found was appearing on local terminal if no private repositories were found
###2015.09.12###
- Complete rewrite of dockerHub conversion code, adding more exceptions
- Fix: Clearing search terms no longer displays all containers
- Added in support for moderator comments on a container
- Added in ability to blacklist specific containers
###2015.09.01###
- Implement change required due to dockerHub changing website again (used in dockerHub search mode)
- Add suggested searches for dockerHub
- Numerous under the hood improvements
###2015.08.24###
- Handle new restrictions introduced in RC6
###2015.08.23###
- Suppress some spurious status messages on unRaid's attached monitor
- Expanded manual
- Display dockerHub star ratings for ALL templates
###2015.08.20###
- Better search results for icons on dockerHub
- Search for other containers from author (template mode)
- Resolved issue with spaces in search parameters
- Internal reorganization
###2015.08.15###
- Added in BaseOS display when not in appFeed mode
- Added in Full GUI for searching and converting non-unRaid containers. (See support thread for details)
- Miscellaneous fixes
###2015.08.12###
- Hot Fix for 6.1RC-3
###2015.08.09###
- Hot fix for templates with duplicate tags
- Pop up free in appfeed mode
###2015.08.02###
- Handle blank descriptions, categories, overviews in appFeed mode
- Fix not able to show changelog on application names containing spaces
- Integrate searching (and converting) from dockerHub
###2015.07.26a###
- Hot fix for 6.1 RC-2
###2015.07.25c###
- Fixed Internet Explorer crashing
- Added Icon Details view mode
###2015.07.23###
- Unified UI between icon and table mode
- Switch between icon and table mode on the fly
- Faster sorting in icon mode
- Add sort by date updated
###Note: you must allow your browser to display popups from your server when in appFeed mode###
###2015.07.20###
- Code unified between tables and icons
- Added pop up descriptions to table mode, hover descriptions to icon mode
- Fix intermittent bug where a blank template could appear
###2015.07.19###
- 6.1rc-1 Broke Community Applications - Fixed
###2015.07.18###
- Coding Improvements
- Revamp Icon Mode Descriptions
- Add support for Project Home Page links
###2015.07.16###
- Significantly reduce memory footprint
- Allow private repositories to be used in conjunction with application feed
- Force Update in application feed mode will temporarily revert to template mode
- Failure to download application feed will revert system to template mode
###2015.07.15###
- Added option to automatically update the application list when entering Docker tab
- Added in support for Kode's real-time application feed update
- Remove background table lines in icon mode
- Removed option to automatically fill out template paths
###2015.07.08###
- Clicking the repository will now open the announcement thread in a new tab
###2015.07.04###
- Added in option to display small icons in icon mode
- Optionally overwrite ALL host paths when in experimental overwrite host path mode
###2015.07.02###
- Fixed display abberation in table mode when searching for application with change log
###2015.07.01###
- Added an experimental option to automatically fill in host paths. See support thread for details.
###2015.06.21###
- Table Mode: Repository was not displaying (introduced in 2015.06.14) (my bad - never noticed)
###2015.06.18###
- Changed to a more intuitive Apply / Done buttons in settings
###2016.06.17###
- Fixed table header sometimes displaying in Icon Mode
- Made settings default values consistent between modules
- Added help text for Icon Mode
- Icon mode now default
###2015.06.15###
- Expanded descriptions in Icon mode
- Fixed applications in beta repositories not being flagged correctly
###2015.06.14a###
- Fixed cursor over information icon and application icon (Icon mode)
- Fixed applications not displaying description if a space was in the name (Icon mode)
###2015.06.14###
- Added Icon view mode (more mobile friendly!)
###2015.06.11###
- Coding optimizations
- Add help text
###2015.06.08###
- Added support for new / updated containers
- Expanded settings section
###2015.06.06###
- Added a settings section
###2015.06.03a###
- Optional local caching of application icons
###2015.06.03###
- Initial display is now blank (faster)
- Going from subcategory to all categories no longer displays all categories
###2015.06.02###
- Added support for Changes tag
- Added non-intrusive reminder to update applications after 14 days
###2015.05.31###
- Renamed DNS Servers to be DNS Client / Servers
###2015.05.30###
- Miscellaneous download fixes
###2015.05.28###
- Initial Release
</CHANGES>
<!-- The 'pre-install' script. -->
<FILE Run="/usr/bin/php">
<INLINE>
<![CDATA[
<?
$version = parse_ini_file("/etc/unraid-version");
if ( version_compare($version['version'],"6.1.0", "<") )
{
echo "********************************************************************\n";
echo "\n";
echo "Community Applications Requires unRaid version 6.1 or greater to run\n";
echo "\n";
echo "********************************************************************\n";
exit(1);
}
echo "Cleaning Up Old Versions\n";
if ( is_file("/usr/local/emhttp/plugins/community.applications/scripts/removeCron.php") ) {
exec("/usr/local/emhttp/plugins/community.applications/scripts/removeCron.php");
}
exec("rm -rf /usr/local/emhttp/plugins/community.applications");
@unlink("/etc/cron.daily/updateApplications.sh");
?>
]]>
</INLINE>
</FILE>
<FILE Run="/bin/bash">
<INLINE>
# Remove old 'source' files
rm -f $(ls /boot/config/plugins/&name;/&name;*.txz 2>/dev/null|grep -v '&version;')
if [[ -d /boot/config/plugins/repo.update ]]; then rm -rf /boot/config/plugins/repo.update; fi
if [[ -d /usr/local/emhttp/plugins/repo.update ]]; then rm -rf /usr/local/emhttp/plugins/repo.update; fi
if [[ -n $(ls /boot/config/plugins/repo.update*.plg 2>/dev/null) ]]; then rm /boot/config/plugins/repo.update*.plg; fi
if [[ -e /tmp/community.applications/tempFiles/templates.json ]]; then rm /tmp/community.applications/tempFiles/templates.json; fi
</INLINE>
</FILE>
<!--
The 'source' file.
-->
<FILE Name="/boot/config/plugins/&name;/&name;-&version;.txz" Run="upgradepkg --install-new">
<URL>https://raw.github.com/&github;/master/archive/&name;-&version;.txz</URL>
<MD5>&md5;</MD5>
</FILE>
<!--
The 'post-install' script
-->
<FILE Run="/bin/bash">
<INLINE>
echo "Creating Directories"
mkdir -p /var/lib/docker/unraid/templates-community-apps
mkdir -p /var/lib/docker/unraid/community.applications.datastore
mkdir -p /tmp/community.applications/tempFiles
mkdir -p /boot/config/plugins/community.applications
echo ""
echo "----------------------------------------------------"
echo " &name; has been installed."
echo " Copyright 2015-2017, Andrew Zawadzki"
echo " Version: &version;"
echo "----------------------------------------------------"
echo ""
</INLINE>
</FILE>
<FILE Run="/usr/bin/php">
<INLINE>
<![CDATA[
<?
if ( ! is_file("/boot/config/plugins/community.applications/installed") ) {
echo "Initial installation. Installing Appdata Cleanup Plugin\n";
exec("/usr/local/sbin/installplg https://raw.githubusercontent.com/Squidly271/ca.cleanup.appdata/master/plugins/ca.cleanup.appdata.plg",$output);
foreach ($output as $line) {
echo "$line\n";
}
unset($output);
echo "Installing Plugin Auto Update\n";
exec("/usr/local/sbin/installplg https://raw.githubusercontent.com/Squidly271/ca.update.applications/master/plugins/ca.update.applications.plg",$output);
foreach ($output as $line) {
echo "$line\n";
}
unset($output);
echo "Installing Appdata Backup / Restore\n";
exec("/usr/local/sbin/installplg https://raw.githubusercontent.com/Squidly271/ca.backup/master/plugins/ca.backup.plg",$output);
foreach ($output as $line) {
echo "$line\n";
}
exec("mkdir -p /boot/config/plugins/community.applications");
file_put_contents("/boot/config/plugins/community.applications/installed","Flag file to indicate whether or not to install previously included modules");
}
?>
]]>
</INLINE>
</FILE>
<!--
The 'remove' script.
-->
<FILE Run="/bin/bash" Method="remove">
<INLINE>
removepkg &name;-&version;
rm -rf &plugdir;
rm -rf /boot/config/plugins/&name;
rm -rf /var/lib/docker/unraid/templates-community
</INLINE>
</FILE>
</PLUGIN>

View File

@ -0,0 +1,645 @@
<?xml version='1.0' standalone='yes'?>
<!DOCTYPE PLUGIN [
<!ENTITY name "community.applications">
<!ENTITY author "Andrew Zawadzki">
<!ENTITY version "2016.11.09">
<!ENTITY md5 "fa6527ae784eaa50a6b06d012d41a4c8">
<!ENTITY launch "Settings/PluginSettings">
<!ENTITY plugdir "/usr/local/emhttp/plugins/&name;">
<!ENTITY github "Squidly271/community.applications">
<!ENTITY pluginURL "https://raw.githubusercontent.com/&github;/master/plugins/&name;.plg">
]>
<PLUGIN name="&name;" author="&author;" version="&version;" launch="&launch;" pluginURL="&pluginURL;">
<CHANGES>
###2016.11.05###
- Infrastructure changes to ultimately allow separate module installation / deinstallation
###2016.10.30###
- Fixed: Dynamix Bleeding Edge 2016.10.29c compatibility
###2016.10.26###
- Allow appdata backup source to be any folder on system
- Updated routines to handle potential incompatibility with PHP and unRaid's generated comments
###2016.10.12###
- Handle edge case template creation by dockerMan
###2016.09.28###
- Force redirection of additional backup scripts output console
###2016.09.25a###
- Speed up appfeed download
###2016.09.25###
- Added: Selectable delay in days before autoupdating a plugin
- Added: Backup of old .plg files prior to backup to support edge-case rollbacks if needed
- Updated: Manual
###2016.09.23###
- NOTE: All auto update settings will be reset back to defaults with this update. IE: Only CA and FCP will autoupdate
- Fixed: CA under certain circumstances would show as not autoupdating in settings when in fact it would
- Fixed: Under very specific circumstances, some plugins set to not autoupdate could in fact auto update
- Fixed: PhAzE plugins would not show up as installed if they were
###2016.09.21###
- Extra security tests on auto updates
- Implement autoupdate kill switch
###2016.09.17###
- Compatibility fix for dynamix.bleeding.edge.plg
###2016.09.15###
- Fixed minor compatibilty issues with 6.2 Final
- Changed: Only log maximum 10 rsync errors in backup module
- Fixed: disallow faster rsync option if days to keep backup sets is disabled (or set to 0)
- Fixed: backup to flashdrive setting (entry could have been possibly corrupted under 2016.09.03)
- Added: Script to delete old dated backups in addition to ALL backups and error backups only
- Changed: Update Apps now called Legacy Mode. Selecting again goes back to appFeed mode
- Removed: Private Repositories via a GitHub repo.
- Added: Selectable notifications on autoupdates of plugins
- Added: XML Branch support while in Legacy Mode
- Fixed: Display aberrations while in legacy mode if some repositories didn't download
- Added: Legacy mode will now display any XML's which failed to parse
###2016.09.07###
- Fixed VM XML's not backing up under certain circumstances
- Do not delete XML backups if source is no longer available
- Added Dynamic adjustment of templates based upon user input
###2016.09.06###
- Fixed Backup/Restore settings module not working
- Added Selectable display for Random App Of Day
###2016.09.04###
- Under certain cirumstances, app of the day could crash CA
- Download compressed version of appfeed
###2016.09.03###
- Added in VM XML backups
- Major rewrite of display engine (faster, far smaller)
- Fix app of day to not possibly display moderated apps if app feed happened to change during the day
- Fix various buttons not properly getting disabled when forcing update under certain circumstances
- Fixed search on author where apps would always display as being installed
- Far too many coding changes to list
###2016.08.13###
- Maintenance Update
- Added Apps of the day
- Fixed display abnormalities in Table Mode under certain conditions / templates
- Fixed displayed borders on popups
- Updated manual
- Removed extraneous code
- Fixed base image display when in legacy mode
###2016.08.07###
- Added in ability to flag / pin apps for later viewing
###2016.08.03###
- Fixed: Restore appdata when using user shares as a destination
###2016.07.31###
- Support user shares as source and destination for appdata backup on 6.2-rc3+
###2016.07.23###
- Major revamp to backup/restore appdata module (see thread for details)
###2016.07.16###
- Better logging for CA Backup
###2016.07.08###
- Bug fix on dockerHub searches vs recommended applications
###2016.07.04###
- Fixed cleanup appdata if an installed app doesn't have any volume mappings
###2016.07.01###
- Support Separate Destinations for Flash Drive Backup
###2016.06.29###
- Backup Disk Assignments and super.dat (renamed) as part of USB backup
###2016.06.26###
- Backup options not displaying the set value for save log to flash
- Fix improper displaying of source and destination on popup (restore)
- Suppress errors displayed when selecting a UD mount for backup purposes
- Added in backup of flash drive (sans super.dat) to docker appdata prior to backing up to array
###2016.06.25k###
- Add directions for backups for UD mounted shares
###2016.06.13###
- Fix typos
- Prevent appdata cleanup from deleting parent folders (due to severely misconfigured previous template)
- Add support and project links back to table mode (not sure how / when they got removed)
###2016.06.12###
- Miscellaneous enhancements and fixes
###2016.06.11###
- Added: New module to delete orphaned appdata folders
- Better appdata determination if running unRaid 6.2+
###2016.06.05###
- Fixed: Prevent invalid Support and Project URLs from displaying
###2016.06.02###
- Add in option to speed up backups when using dated backups with automatic deletions
###2016.05.30###
- Add in automatic deletion of old dated backup sets
###2016.05.12###
- Add in dated backup of appdata
###2016.05.08###
- Fixed some bugs with AutoUpdate displays
###2016.05.05###
- Enhanced: Backup - better logging into syslog
- Added: Configurable logging options
- Fixed: Suppress errors if plugins don't have a readme
###2016.05.01###
- Added Configurable notifications on apppdata backup
- Added Exluded folders to appdata backup
- Updated: CA manual
- Added rsync errors now logged
- Lowered memory footprint of program
###2016.04.30###
- Better warnings on overwrites
- Added ability to set backup destinations to a subfolder
- Enhanced script selection / share selection
- Added ability to skip docker.img file on backups
- Fix autoupdate of applications would not always only display installed plugins
###2016.04.28###
- Added: Support for manual / scheduled backups of appData
###2016.04.17###
- Added: Ability to Auto Update Selected Plugins
###2016.04.16###
- Fix: PHP exception when only a single Config entry is present
- Fix: Date application updated when in Legacy mode
###2016.04.10###
- Enhanced: Further security improvements
- Enhanced: cAdvisor template is now 6.2 compliant
- Fix: Suppress error if no docker applications running when in resource monitor
- Added: Ability to install updates for docker applications
- Enhanced: Better determination of appFeed failure
- Added: Confirmation on Update Applications button
- Updated: Manual, Credits
###2016.04.01###
- Fix: Under certain circumstances, data structures could get corrupted
- Enhanced: Further security enhancements
###2016.03.31###
- Security Fix: Prevent arbitrary execution of code from malicious templates
- Fix: Sanitize all Overview out of specification
- Fix: Resource monitor not recognizing cAdvisor installed if name changed
- Fix: Renamed apps will not display usage stats in popup
- Added: option to show change log for CA when updating itself
- Changed: default Host port for cAdvisor to 9243 (something oddball that probably won't conflict with anything else)
- Added: if cAdvisor installed, but not running, abilty to start it within CA
- Updated: Manual
###2016.03.28###
- Coding optimizations
- Fixed: Don't display a support link if no support link available
- Fixed: Add web-page link if repository authors have a web page
- Added: Ability to install updates for plugins
- Fixed: Resource Monitor not displaying icons for customized appFeed apps
- Fixed: Determination of appdata is now case-insensitive when looking for /config
- Fixed: dockerHub conversions now follow settings for new tab or same tab
- Changed: Default value for new tab or same tab is now same tab
###2016.03.26###
- Fixed: Customized apps (based upon a default one in appfeed) were being tagged as incompatible
- Enhanced: Friendly reminder if CA is out of date
###2016.03.24###
- Fixed: Installing previous apps on unRaid 6.2
- Enhanced: Now fully generates v6.2 compliant xml files for dockerMan
###2016.03.20###
- Fixed: readmore on searches (regression error)
- Fixed: private repositories (dockerHub searches) were being saved into wrong folder (regression error)
- Enhanced: Update Applications (or reversion to legacy mode) will not fail if a single repository fails to download
- Enhanced: Now include cAdvisor XML template so as to not rely upon smdion's repository
- Enhanced: Popup descriptions now include links to go to cAdvisor's page for running docker applications
- Enhanced: Templates passed through to dockerMan are now Moderated to allow CA to fix any errors, typos, etc in the author's template
- Enhanced: Major overhaul of the XML template generation
- Enhanced: Continuing code cleanup
###2016.03.13###
- Properly regress to legacy mode in case of improperly formed appFeed
- Overhaul of the javascript
###2016.03.12###
- Remove option to relocate Users menu (and relocate Apps Tab) Use webUI's display settings instead
- Remove option to set appdata share. CA now always prompts to delete appdata if it sees a /config container path
- Resource Monitor supports appdata's stored anywhere on your system (and within multiple folders)
- Fixed: Minor display aberration introduced by unRaid 6.2 beta 18
- Fixed: If a calculation of appdata size was in progress you could not stop the array
###2016.03.10###
- Further enhanced Resource Monitor
###2016.03.06###
- Fixed: Private Repositories now updated every session
- Added: Resource Monitor for Docker Applications
###2016.03.04###
- Added: Running docker applications will now dynamically display CPU and memory utilization statistics
- Various other fixes / enhancements
###2016.02.20###
- Fixed: Under certain circumstances, the domain URL listed in a plugin might not be what the author actually specified (eg: raw.github.com vs raw.githubusercontent.com) causing some plugins to not display in the previously installed section
###2016.02.19###
- Hot fix for special characters contained within templates
###2016.02.18###
- Added: Support Licence (and its mispelling of License) in templates
- Fixed: Under certain circumstances, Reinstall button could show up instead of Install
###2016.02.14###
- Code Cleanup
- Don't display dockerHub stars if not starred
- Hide search dockerHub if in previous / installed apps
- Fix error in settings if temp directory didn't exist
###2016.02.10###
- Suppress stars.sh error message
###2016.02.08###
- Fixed: Issue with going from dockerHub searches to installed / previously installed
- Fixed: Disallow dockerHub searches if docker not enabled
- Fixed: Disallow adding a previously installed docker app if docker not enabled
- Removed: Legacy Code
- Removed: dockerHub guess at Icons (api broken)
- Fixed: Suppress an error message due to a bad template
- Fixed: Remove some extra temp files once not needed anymore
###2016.02.06###
- Fixed: display abnormality with Firefox
- Enhanced: More intelligent determination of d/l counts
- Enhanced: Rearrange display icons
- Enhanced: Table Mode
- Added: Ability to display installed apps within available lists
###2016.02.04###
- Fix issue with duplicate plugin names
###2016.02.03###
- Suppress docker error messages if docker not running
- Full information on an app now displays total downloads
- Add sort by downloads
###2016.02.01###
- Going forward, unRaid version 6.1+ compatible only
- Fixed: Applications with 2 identical names could disappear from the lists
- Added: Uninstall any application within CA
- Added: Optional deleting of an application's appdata - see manual for details
- Added: Favourite Repositories
- Fixed: Moderator Comments Now only download once per session
- Removed: Local server caching of icons (made no sense to me)
###2016.01.30###
- Added: Separate Installed Apps from categories
- Added: Separate Installed Apps from previously installed
- Added: Incorporate Plugins to installed / previously installed
- Updated: Manual
###2016.01.28###
- Added: Ability to manage previously installed docker apps (my* templates)
###2016.01.24###
- Fix: Under certain circumstances, blank templates would appear
###2016.01.16###
- Fix: Under certain circumstances, updated moderator comments were not being downloaded
- Fix: Under certain circumstances, errors would appear on the popup descriptions
###2016.01.13###
- Fix: Suppress extraneous message on local console during installation
###2016.01.10b###
- Change: Appfeed now only downloaded if it has changed
###2016.01.10###
- Add: Option to not redownload appfeed if reloading apps within a certain time period
- Fix: Alternate icon wasn't displaying properly if template's icon was unavailable
- Updated: Help / Manual
###2016.01.02###
- Fix: Prevent malformed templates from displaying
- Fix: All private containers were being tagged as being incompatible
- Change AppStore to Apps
###2015.12.18###
- Add support for enforcement of application OS requirements (see help thread)
###2015.12.12a###
- Selectable add/edit/settings windows in new tab or not
###2015.12.12###
- Fix: Minor Icon Issues
- Fix: Plugin changelogs now same format as within a .plg file
- Fix: Not all plugins would properly go to the settings page
- Fix: Plugins not sorting by Author name
- Update: Help / Manual
###2015.12.08###
- Minor Bug Fixes
- Settings Button for already install plugins will take you to the plugin settings
###2015.12.06a###
- Disable Update Applications button if an update is in progress NOTE: There is normally zero reason to hit this button anyways
- Fix: Allow user selectable positioning of the AppStore. (Either on the main menu, within settings, or on main menu and move Users to settings)
###2015.12.06###
THIS IS A REQUIRED UPDATE
- Relocate plugin from docker tab to its own tab (AppStore)
- Now able to display and install available plugins
- Docker no longer required to be enabled to browse applications
###2015.12.05###
- Fixed: System wouldn't let you add any application if a private repository was present
###2015.10.10###
- Suppress commands executed with /bin/sh appearing on local monitor
###2015.09.29###
- Fixed memory leak with application feed
###2015.09.20###
- Add in super categories for beta and private (selectable from settings)
- More tweaks to docker conversion engine
- Sanitize the input on searches
relocate temporary files to ram
- various other fixes and tweaks
###2015.09.15###
- Remove code for unimplemented features
- Disallow installing dockerHub result if a recommended application uses the same repository
- Fix: *.xml not found was appearing on local terminal if no private repositories were found
###2015.09.12###
- Complete rewrite of dockerHub conversion code, adding more exceptions
- Fix: Clearing search terms no longer displays all containers
- Added in support for moderator comments on a container
- Added in ability to blacklist specific containers
###2015.09.01###
- Implement change required due to dockerHub changing website again (used in dockerHub search mode)
- Add suggested searches for dockerHub
- Numerous under the hood improvements
###2015.08.24###
- Handle new restrictions introduced in RC6
###2015.08.23###
- Suppress some spurious status messages on unRaid's attached monitor
- Expanded manual
- Display dockerHub star ratings for ALL templates
###2015.08.20###
- Better search results for icons on dockerHub
- Search for other containers from author (template mode)
- Resolved issue with spaces in search parameters
- Internal reorganization
###2015.08.15###
- Added in BaseOS display when not in appFeed mode
- Added in Full GUI for searching and converting non-unRaid containers. (See support thread for details)
- Miscellaneous fixes
###2015.08.12###
- Hot Fix for 6.1RC-3
###2015.08.09###
- Hot fix for templates with duplicate tags
- Pop up free in appfeed mode
###2015.08.02###
- Handle blank descriptions, categories, overviews in appFeed mode
- Fix not able to show changelog on application names containing spaces
- Integrate searching (and converting) from dockerHub
###2015.07.26a###
- Hot fix for 6.1 RC-2
###2015.07.25c###
- Fixed Internet Explorer crashing
- Added Icon Details view mode
###2015.07.23###
- Unified UI between icon and table mode
- Switch between icon and table mode on the fly
- Faster sorting in icon mode
- Add sort by date updated
###Note: you must allow your browser to display popups from your server when in appFeed mode###
###2015.07.20###
- Code unified between tables and icons
- Added pop up descriptions to table mode, hover descriptions to icon mode
- Fix intermittent bug where a blank template could appear
###2015.07.19###
- 6.1rc-1 Broke Community Applications - Fixed
###2015.07.18###
- Coding Improvements
- Revamp Icon Mode Descriptions
- Add support for Project Home Page links
###2015.07.16###
- Significantly reduce memory footprint
- Allow private repositories to be used in conjunction with application feed
- Force Update in application feed mode will temporarily revert to template mode
- Failure to download application feed will revert system to template mode
###2015.07.15###
- Added option to automatically update the application list when entering Docker tab
- Added in support for Kode's real-time application feed update
- Remove background table lines in icon mode
- Removed option to automatically fill out template paths
###2015.07.08###
- Clicking the repository will now open the announcement thread in a new tab
###2015.07.04###
- Added in option to display small icons in icon mode
- Optionally overwrite ALL host paths when in experimental overwrite host path mode
###2015.07.02###
- Fixed display abberation in table mode when searching for application with change log
###2015.07.01###
- Added an experimental option to automatically fill in host paths. See support thread for details.
###2015.06.21###
- Table Mode: Repository was not displaying (introduced in 2015.06.14) (my bad - never noticed)
###2015.06.18###
- Changed to a more intuitive Apply / Done buttons in settings
###2016.06.17###
- Fixed table header sometimes displaying in Icon Mode
- Made settings default values consistent between modules
- Added help text for Icon Mode
- Icon mode now default
###2015.06.15###
- Expanded descriptions in Icon mode
- Fixed applications in beta repositories not being flagged correctly
###2015.06.14a###
- Fixed cursor over information icon and application icon (Icon mode)
- Fixed applications not displaying description if a space was in the name (Icon mode)
###2015.06.14###
- Added Icon view mode (more mobile friendly!)
###2015.06.11###
- Coding optimizations
- Add help text
###2015.06.08###
- Added support for new / updated containers
- Expanded settings section
###2015.06.06###
- Added a settings section
###2015.06.03a###
- Optional local caching of application icons
###2015.06.03###
- Initial display is now blank (faster)
- Going from subcategory to all categories no longer displays all categories
###2015.06.02###
- Added support for Changes tag
- Added non-intrusive reminder to update applications after 14 days
###2015.05.31###
- Renamed DNS Servers to be DNS Client / Servers
###2015.05.30###
- Miscellaneous download fixes
###2015.05.28###
- Initial Release
</CHANGES>
<!-- The 'pre-install' script. -->
<FILE Run="/usr/bin/php">
<INLINE>
<![CDATA[
<?
$version = parse_ini_file("/etc/unraid-version");
if ( version_compare($version['version'],"6.1.0", "<") )
{
echo "********************************************************************\n";
echo "\n";
echo "Community Applications Requires unRaid version 6.1 or greater to run\n";
echo "\n";
echo "********************************************************************\n";
exit(1);
}
if ( ! is_file("/boot/config/plugins/community.applications/installed") ) {
echo "Removing all traces of old installations\n";
exec("rm -rf /usr/local/emhttp/plugins/community.applications");
echo "**********************************************************\n";
echo "Initial installation. Installing Appdata Cleanup Plugin\n";
exec("/usr/local/sbin/installplg https://raw.githubusercontent.com/Squidly271/ca.cleanup.appdata/master/plugins/ca.cleanup.appdata.plg",$output);
foreach ($output as $line) {
echo "$line\n";
}
unset($output);
echo "**********************************************************\n";
echo "Initial installation. Installing Plugin Auto Update\n";
exec("/usr/local/sbin/installplg https://raw.githubusercontent.com/Squidly271/ca.update.applications/master/plugins/ca.update.applications.plg",$output);
foreach ($output as $line) {
echo "$line\n";
}
unset($output);
echo "**********************************************************\n";
echo "Initial installation. Installing Appdata Backup / Restore\n";
exec("/usr/local/sbin/installplg https://raw.githubusercontent.com/Squidly271/ca.backup/master/plugins/ca.backup.plg",$output);
foreach ($output as $line) {
echo "$line\n";
}
exec("mkdir -p /boot/config/plugins/community.applications");
file_put_contents("/boot/config/plugins/community.applications/installed","Flag file to indicate whether or not to install previously included modules");
}
?>
]]>
</INLINE>
</FILE>
<FILE Run="/bin/bash">
<INLINE>
# Remove old 'source' files
rm -f $(ls /boot/config/plugins/&name;/&name;*.txz 2>/dev/null|grep -v '&version;')
if [[ -d /boot/config/plugins/repo.update ]]; then rm -rf /boot/config/plugins/repo.update; fi
if [[ -d /usr/local/emhttp/plugins/repo.update ]]; then rm -rf /usr/local/emhttp/plugins/repo.update; fi
if [[ -n $(ls /boot/config/plugins/repo.update*.plg 2>/dev/null) ]]; then rm /boot/config/plugins/repo.update*.plg; fi
if [[ -e /tmp/community.applications/tempFiles/templates.json ]]; then rm /tmp/community.applications/tempFiles/templates.json; fi
</INLINE>
</FILE>
<!--
The 'source' file.
-->
<FILE Name="/boot/config/plugins/&name;/&name;-&version;.txz" Run="upgradepkg --install-new">
<URL>https://raw.github.com/&github;/master/archive/&name;-&version;.txz</URL>
<MD5>&md5;</MD5>
</FILE>
<!--
The 'post-install' script
-->
<FILE Run="/bin/bash">
<INLINE>
echo "Creating Directories"
mkdir -p /var/lib/docker/unraid/templates-community-apps
mkdir -p /var/lib/docker/unraid/community.applications.datastore
mkdir -p /tmp/community.applications/tempFiles
mkdir -p /boot/config/plugins/community.applications
echo ""
echo "----------------------------------------------------"
echo " &name; has been installed."
echo " Copyright 2015-2016, Andrew Zawadzki"
echo " Version: &version;"
echo "----------------------------------------------------"
echo ""
</INLINE>
</FILE>
<!--
The 'remove' script.
-->
<FILE Run="/bin/bash" Method="remove">
<INLINE>
/usr/local/emhttp/plugins/community.applications/scripts/removeCron.php
removepkg &name;-&version;
rm -rf &plugdir;
rm -rf /boot/config/plugins/&name;
rm -rf /var/lib/docker/unraid/templates-community
</INLINE>
</FILE>
</PLUGIN>

View File

@ -0,0 +1,16 @@
#!/bin/bash
DIR="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")"
tmpdir=/tmp/tmp.$(( $RANDOM * 19318203981230 + 40 ))
plugin=$(basename ${DIR})
archive="$(dirname $(dirname ${DIR}))/archive"
version=$(date +"%Y.%m.%d")$1
mkdir -p $tmpdir
cp --parents -f $(find . -type f ! \( -iname "pkg_build.sh" -o -iname "sftp-config.json" \) ) $tmpdir/
cd $tmpdir
makepkg -l y -c y ${archive}/${plugin}-${version}.txz
rm -rf $tmpdir
echo "MD5:"
md5sum ${archive}/${plugin}-${version}.txz

View File

@ -0,0 +1,4 @@
Menu="Tasks:80"
Name="Apps"
Type="xmenu"
Tabs="true"

View File

@ -0,0 +1,4 @@
Menu="Settings"
Title="Community Applications"
Icon="CA.png"
Type="menu"

View File

@ -0,0 +1,130 @@
Menu="CA"
Title="General Settings"
Icon="settings.png"
---
<?
function download_url($url, $path = "", $bg = false)
{
exec("curl --compressed --max-time 60 --silent --insecure --location --fail ".($path ? " -o '$path' " : "")." $url ".($bg ? ">/dev/null 2>&1 &" : "2>/dev/null"), $out, $exit_code );
return ($exit_code === 0 ) ? implode("\n", $out) : false;
}
$vars = parse_ini_file("/var/local/emhttp/var.ini");
$toolTipsterAllowed = version_compare($vars['version'],"6.3.3",">=") ? "true" : "false";
$plugin = "community.applications";
$cfg = parse_plugin_cfg($plugin);
# Get the available repositories and setup the display for favourites
if ( ! is_dir("/tmp/community.applications/tempFiles") ) {
exec('mkdir -p "/tmp/community.applications/tempFiles"');
}
$Repositories = "/tmp/community.applications/tempFiles/Repositories.json";
download_url("https://raw.githubusercontent.com/Squidly271/Community-Applications-Moderators/master/Repositories.json",$Repositories);
$Repos = json_decode(@file_get_contents($Repositories),true);
if ( ! $Repos ) {
$Repos = array();
}
$repoName = array();
foreach ($Repos as $Repo) {
$repoName[] = $Repo['name'];
}
natcasesort($repoName);
$displayOptions = mk_option($cfg['favourite'], "None", "None (default)");
foreach ($repoName as $display) {
$optionName = str_replace("'","*",$display);
$displayOptions .= mk_option($cfg['favourite'], $optionName, $display);
}
$unRaid64 = (version_compare($vars['version'],"6.4.0-rc0",">=")) || (is_file("/usr/local/emhttp/plugins/dynamix/styles/dynamix-gray.css")) ? "true" : "false";
?>
<form markdown="1" method="POST" action="/update.php" target="progressFrame">
<input type="hidden" name="#file" value="<?=$plugin?>/<?=$plugin?>.cfg">
> For help with this plugin, click here (a new tab will open with the help file) <strong><font size="2"><a href="Settings/caHelp" target="_blank">HELP</a></font></strong>
Time to display applications as new / updated:
: <select name="timeNew" size="1">
<?=mk_option($cfg['timeNew'], "-7 Days", "1 Week")?>
<?=mk_option($cfg['timeNew'], "-14 Days", "2 Weeks")?>
<?=mk_option($cfg['timeNew'], "-1 Month", "1 Month")?>
<?=mk_option($cfg['timeNew'], "-2 Months", "2 Months")?>
<?=mk_option($cfg['timeNew'], "-3 Months", "3 Months (Default)")?>
</select>
> This setting determines how long an application will be displayed as "new"
Hover Time delay (miliseconds):
: <input type="number" name="hoverTime" class="narrow" maxlength="5" value="<?=$cfg['hoverTime']?>" placeholder="1000">
> This setting determines how long you have to hover over any element prior to the pop up appearing
Favourite Repository:
: <select name="favourite" size="1">
<?=$displayOptions?>
</select>
> Set this option to your favourite repository, so that it's applications will display first
Show already installed apps within available apps:
: <select name='separateInstalled' size='1'>
<?=mk_option($cfg['separateInstalled'], "true", "No (default)")?>
<?=mk_option($cfg['separateInstalled'], "false", "Yes")?>
</select>
> This setting determines if already installed applications will also appear when displaying available apps
Hide Deprecated Applications:
: <select name='hideDeprecated' size='1'>
<?=mk_option($cfg['hideDeprecated'], "true", "Yes (default)")?>
<?=mk_option($cfg['hideDeprecated'], "false", "No")?>
</select>
> This setting hides deprecated applications from the list of available apps. Deprecated apps will still however display within the <em>installed</em> and <em>previous</em> apps sections.
Hide Incompatible Applications:
: <select name='hideIncompatible' size='1'>
<?=mk_option($cfg['hideIncompatible'], "true", "Yes (default)")?>
<?=mk_option($cfg['hideIncompatible'], "false", "No")?>
</select>
> This setting will hide applications that are listed as being incompatible with your version of unRaid
Display Random App Of The Day:
: <select name="appOfTheDay" size="1">
<?=mk_option($cfg['appOfTheDay'],"no", "No")?>
<?=mk_option($cfg['appOfTheDay'],"yes", "Yes (Default)")?>
</select>
> This setting chooses whether to display or not a random "app of the day"
<strong>Docker Hub Searching</strong>
Enable additional search results from dockerHub?
: <select name="dockerSearch" size="1">
<?=mk_option($cfg['dockerSearch'], "no", "No (Default)")?>
<?=mk_option($cfg['dockerSearch'], "yes", "Yes")?>
</select>
> This setting enables CA to retrieve additional search results from dockerHub. Note that docker must be enabled for this to be operational
&nbsp;
: <input type="submit" name="#apply" value="Apply" id='Apply'><input type="button" id="DONE" value="Done" onclick="done()">
<center>For support for this plugin, visit here: <a href="https://forums.lime-technology.com/topic/38582-plug-in-community-applications/" target="_blank">HERE</a></center>
</form>
<center><a href='https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=7M7CBCVU732XG' target='_blank'><img src="https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif"></a></center>

View File

@ -0,0 +1,3 @@
####Community Applications####
A Plugin to keep your docker application lists up to date and easily sort them by category and add them to your running containers. unRaid v6.1+ only.

View File

@ -0,0 +1,22 @@
Menu="CA"
Title="Manual"
Icon="help.png"
---
<script>
var URL = "/plugins/community.applications/include/manualExec.php";
$(function(){
swal({
title: "Downloading Manual",
showConfirmButton: false,
showCancelButton: false
});
$.post(URL,{action:'getManual'},function(data) {
if (data) {
$("#manual").html(data);
swal.close();
}
});
});
</script>
<span id='manual'></span>

View File

@ -0,0 +1,16 @@
timeNew="-3 Months"
viewMode="detail"
favourite="None"
iconSize="96"
maxColumn="5"
superCategory="true"
separateInstalled="true"
newWindow="_self"
hideIncompatible="true"
dockerSearch="no"
appOfTheDay="yes"
maxPerPage="25"
hideDeprecated="true"
tooltipster="true"
hoverTime="1000"

View File

@ -0,0 +1,9 @@
#!/bin/bash
if [[ -e /tmp/community.applications/tempFiles/appdata/inprogress ]]
then
logger "Community Applications Calculations of Appdata in progress"
PID=`cat /tmp/community.applications/tempFiles/appdata/inprogress`
logger "Terminating $PID"
kill $PID
fi

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Some files were not shown because too many files have changed in this diff Show More