Heimdall Application Dashboard

The main focus of this release was to completely change the way Supported Apps are handled. Before this change adding new apps was a pain and required pushing out new versions of Heimdall just to include new supported apps. With the release of 2.1.0 this is a thing of the past.

To facilitate this major change there is now an online repository at https://apps.heimdall.site where requests can be added. The main purpose of the database is to ensure consistency. By requesting an app on here first an appid is generated which is used to track any changes to the app and ensures completed apps are removed from the request list.

The other major reason for the request list is to make it much easier for people to request apps in a consistent manner, and once requested make it as easy as possible to fulfill those requests. If someone wants an app added, it makes sense that then undertake the burden of the grunt work (finding a short description, a suitable icon, tracking down the license data, etc) rather than passing it on to someone with less of a vested interest, hopefully it will ensure requests are added and fulfilled much quicker.

The Bad News

In order to make upgrading to the new apps database as simple as possible it doesn’t automatically update current apps.  This is so if there is a problem it’s easy to revert back to an earlier version.  That means you will need to go to each item and select the application type from the dropdown (or remove a letter from the name so the application list pops up and you can reselect it).

Live Preview

When creating or editing new items, you now get a live preview of what it’s going to look like.

Queues

By default the .env specifies QUEUE_DRIVER=sync this will mean if you are not using our docker then the first time you hit the application after upgrading it will hang for a few seconds while the app list is downloaded. When you go to items there is also an Update apps list button, again, if you aren’t using our docker this will cause a delay while it updates, though not such a big one as the first as only apps that are added or updated will be downloaded.

If you are running our docker this won’t be such a painful process as by default it uses QUEUE_DRIVER=database, the short of this is the task is handled in the background and the user can get on with their day.  If you want to do something similar without using our docker, as well as setting the queue driver you need to be running php artisan queue:work in order for the job to run. You should use something like Supervisor to ensure the queue task is always running, there is an example config for Supervisor at https://laravel.com/docs/5.7/queues#supervisor-configuration and you can find for information about queues at that link.

Foundation Apps

  1. Make an App request on https://apps.heimdall.site (do a search first to make sure it doesn’t already exist)
  2. Fork https://github.com/linuxserver/Heimdall-Apps
  3. Download the Foundation Zip
  4. Extract all the files to your copy of Heimdall-Apps
  5. Push you changes back up
  6. Create a Pull Request

Enhanced Apps

  1. Make an App request on https://apps.heimdall.site (do a search first to make sure it doesn’t already exist)
  2. Fork https://github.com/linuxserver/Heimdall-Apps
  3. Download the Enhanced Zip
  4. Extract all the files to your copy of Heimdall-Apps
  5. Edit Appname.php, livestats.blade.php, config.blade.php with the necessary changes. More details are available at https://github.com/linuxserver/Heimdall-Apps/wiki/Creating-Enhanced-Apps
  6. Push you changes back up
  7. Create a Pull Request

Consistency

In order to keep the requests and apps consistant, please follow the guidelines below.

  • Start typing the license name to get a list of possibilities, select one of the possibilities
  • Images should be SVG or PNG, if PNG they should be square, preferably 250 x 250px or thereabout.  If SVG you may need to add the xml declaration to the top if it’s been stripped off in order for it to be correctly identified as an image
  • Make sure you fill in each required field with good quality, consistant information, sloppy requests / PR’s will be removed.
  • Your Foldername, The name in app.json, and The Appname.php must all match exactly the same or things will not work.

A web developer with over 11 years professional experience

View Comments

There are currently no comments.
Next Post