diff --git a/app/Application.php b/app/Application.php
index 4a8ae835..e60e8bfe 100644
--- a/app/Application.php
+++ b/app/Application.php
@@ -9,11 +9,7 @@ class Application extends Model
//
public function icon()
{
- $path = public_path('storage/apps/'.$this->icon);
- if(!file_exists($path)) {
- Storage::putFileAs('apps', new File(app_path('Apps/'.$this->name.'/'.$this->icon)), $this->icon);
- }
- return asset('storage/apps/'.$this->icon);
+ return asset($this->icon);
}
public function defaultColour()
@@ -25,7 +21,7 @@ class Application extends Model
public function class()
{
- $class = '\App\SupportedApps\\'.$this->name;
+ $class = '\App\SupportedApps\\'.$this->name.'\\'.$this->name;
return $class;
}
}
diff --git a/app/EnhancedApps.php b/app/EnhancedApps.php
index 1e69ea87..4cc7b89a 100644
--- a/app/EnhancedApps.php
+++ b/app/EnhancedApps.php
@@ -3,9 +3,8 @@
use GuzzleHttp\Exception\GuzzleException;
use GuzzleHttp\Client;
-interface EnhancedApps {
+interface EnhancedApps
{
- public $config;
}
\ No newline at end of file
diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php
index f71dc863..14e99368 100644
--- a/app/Http/Controllers/ItemController.php
+++ b/app/Http/Controllers/ItemController.php
@@ -9,6 +9,7 @@ use App\User;
use GrahamCampbell\GitHub\Facades\GitHub;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Storage;
+use App\SupportedApps;
class ItemController extends Controller
{
@@ -282,17 +283,19 @@ class ItemController extends Controller
{
$output = [];
$appname = $request->input('app');
+ //die($appname);
$app_details = Application::where('name', $appname)->firstOrFail();
- $app = new $appname->class();
+ $appclass = $app_details->class();
+ $app = new $appclass;
// basic details
$output['icon'] = $app_details->icon();
$output['colour'] = $app_details->defaultColour();
// live details
- if($app_details instanceof \App\SupportedApps\EnhancedApps) {
- $output['config'] = $app->configDetails();
+ if($app instanceof \App\EnhancedApps) {
+ $output['config'] = $app_details->name.'.config';
} else {
$output['config'] = null;
}
@@ -332,18 +335,22 @@ class ItemController extends Controller
public function checkAppList()
{
- $localapps = Application::all()->pluck('name');
- $allapps = GitHub::connection('none')->repo()->contents()->show('linuxserver', 'Heimdall-Apps');
- $applist = collect($allapps)->pluck('name');
- $diff = $applist->diff($localapps);
-
- print_r($diff->all());
- foreach($allapps as $app) {
-
+ $localapps = Application::all();
+ $list = json_decode(SupportedApps::getList()->getBody());
+ foreach($list->apps as $app) {
+ if(!file_exists(app_path('SupportedApps/'.$app->name))) {
+ SupportedApps::getFiles($app);
+ $application = new Application;
+ SupportedApps::saveApp($app, $application);
+ } else {
+ // check if there has been an update for this app
+ $localapp = $localapps->where('name', $app->name)->first();
+ if($localapp->sha !== $app->sha) {
+ SupportedApps::getFiles($app);
+ SupportedApps::saveApp($app, $localapp);
+ }
+ }
}
- $files = GitHub::connection('none')->gitData()->trees()->show('linuxserver', 'Heimdall-Apps', 'eaf3659bbbc25e41501f3c540fcc7fe5da3e45c2');
- print_r($localapps);
- //print_r($appcheck);
}
diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php
index ab01f8ee..c7ae1637 100644
--- a/app/Providers/AppServiceProvider.php
+++ b/app/Providers/AppServiceProvider.php
@@ -91,6 +91,8 @@ class AppServiceProvider extends ServiceProvider
});
+ $this->app['view']->addNamespace('SupportedApps', app_path('SupportedApps'));
+
if (env('FORCE_HTTPS') === true) {
\URL::forceScheme('https');
diff --git a/app/SupportedApps.php b/app/SupportedApps.php
index d81bc07f..335c10c8 100644
--- a/app/SupportedApps.php
+++ b/app/SupportedApps.php
@@ -27,4 +27,46 @@ abstract class SupportedApps
}
+ public static function getList()
+ {
+ $list_url = 'https://apps.heimdall.site/list';
+ $client = new Client(['http_errors' => false, 'timeout' => 15, 'connect_timeout' => 15]);
+ return $client->request('GET', $list_url);
+ }
+
+ public static function getFiles($app)
+ {
+ $zipurl = $app->files;
+ $client = new Client(['http_errors' => false, 'timeout' => 60, 'connect_timeout' => 15]);
+ $res = $client->request('GET', $zipurl);
+
+ $src = app_path('SupportedApps/'.$app->name.'.zip');
+ file_put_contents($src, $res->getBody());
+
+ $zip = new \ZipArchive();
+ $x = $zip->open($src); // open the zip file to extract
+ if ($x === true) {
+ $zip->extractTo(app_path('SupportedApps')); // place in the directory with same name
+ $zip->close();
+ unlink($src); //Deleting the Zipped file
+ }
+ }
+
+ public static function saveApp($details, $app)
+ {
+ $img_src = app_path('SupportedApps/'.$details->name.'/'.$details->icon);
+ $img_dest = public_path('storage/supportedapps/'.$details->icon);
+ copy($img_src, $img_dest);
+
+ $app->name = $details->name;
+ $app->sha = $details->sha;
+ $app->icon = 'storage/supportedapps/'.$details->icon;
+ $app->website = $details->website;
+ $app->license = $details->license;
+ $app->description = $details->description;
+ $app->enhanced = $details->enhanced;
+ $app->tile_background = $details->tile_background;
+ $app->save();
+ }
+
}
\ No newline at end of file
diff --git a/resources/views/items/scripts.blade.php b/resources/views/items/scripts.blade.php
index 5493be37..751f98a8 100644
--- a/resources/views/items/scripts.blade.php
+++ b/resources/views/items/scripts.blade.php
@@ -13,7 +13,7 @@
source: availableTags,
select: function( event, ui ) {
$.post('/appload', { app: ui.item.value }, function(data) {
- $('#appimage').html("");
+ $('#appimage').html("");
$('input[name=colour]').val(data.colour);
hueb.setColor( data.colour );
$('input[name=pinned]').prop('checked', true);
diff --git a/resources/views/supportedapps/couchpotato.blade.php b/resources/views/supportedapps/couchpotato.blade.php
deleted file mode 100644
index 402deda1..00000000
--- a/resources/views/supportedapps/couchpotato.blade.php
+++ /dev/null
@@ -1,17 +0,0 @@
-
{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
- {!! Form::text('config[apikey]', null, array('placeholder' => __('app.apps.apikey'), 'data-config' => 'apikey', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
diff --git a/resources/views/supportedapps/deluge.blade.php b/resources/views/supportedapps/deluge.blade.php
deleted file mode 100644
index fabd5791..00000000
--- a/resources/views/supportedapps/deluge.blade.php
+++ /dev/null
@@ -1,20 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
- {!! Form::text('config[username]', null, array('placeholder' => __('app.apps.username'), 'data-config' => 'username', 'class' => 'form-control config-item')) !!}
-
-
-
- {!! Form::text('config[password]', null, array('placeholder' => __('app.apps.password'), 'data-config' => 'password', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
diff --git a/resources/views/supportedapps/nzbget.blade.php b/resources/views/supportedapps/nzbget.blade.php
deleted file mode 100644
index a52fe293..00000000
--- a/resources/views/supportedapps/nzbget.blade.php
+++ /dev/null
@@ -1,20 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
-
- {!! Form::text('config[username]', null, array('placeholder' => __('app.apps.username'), 'data-config' => 'username', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/resources/views/supportedapps/pihole.blade.php b/resources/views/supportedapps/pihole.blade.php
deleted file mode 100644
index 9fb61b5c..00000000
--- a/resources/views/supportedapps/pihole.blade.php
+++ /dev/null
@@ -1,26 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
-
- {!! Form::hidden('config[enabled]', '0') !!}
-
-
-
-
-
-
\ No newline at end of file
diff --git a/resources/views/supportedapps/plexpy.blade.php b/resources/views/supportedapps/plexpy.blade.php
deleted file mode 100644
index 2a4a44ba..00000000
--- a/resources/views/supportedapps/plexpy.blade.php
+++ /dev/null
@@ -1,15 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
- {!! Form::text('config[apikey]', null, array('placeholder' => __('app.apps.apikey'), 'data-config' => 'apikey', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
diff --git a/resources/views/supportedapps/proxmox.blade.php b/resources/views/supportedapps/proxmox.blade.php
deleted file mode 100644
index 10c1ab34..00000000
--- a/resources/views/supportedapps/proxmox.blade.php
+++ /dev/null
@@ -1,20 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
-
- {!! Form::text('config[username]', null, array('placeholder' => __('app.apps.username'), 'data-config' => 'username', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/resources/views/supportedapps/runeaudio.blade.php b/resources/views/supportedapps/runeaudio.blade.php
deleted file mode 100644
index c5167163..00000000
--- a/resources/views/supportedapps/runeaudio.blade.php
+++ /dev/null
@@ -1,26 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
-
- {!! Form::hidden('config[enabled]', '0') !!}
-
-
-
-
-
-
diff --git a/resources/views/supportedapps/sabnzbd.blade.php b/resources/views/supportedapps/sabnzbd.blade.php
deleted file mode 100644
index e59fc4d8..00000000
--- a/resources/views/supportedapps/sabnzbd.blade.php
+++ /dev/null
@@ -1,17 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
-
- {!! Form::text('config[apikey]', null, array('placeholder' => __('app.apps.apikey'), 'data-config' => 'apikey', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
\ No newline at end of file
diff --git a/resources/views/supportedapps/tautulli.blade.php b/resources/views/supportedapps/tautulli.blade.php
deleted file mode 100644
index e2b02c2b..00000000
--- a/resources/views/supportedapps/tautulli.blade.php
+++ /dev/null
@@ -1,15 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
- {!! Form::text('config[apikey]', null, array('placeholder' => __('app.apps.apikey'), 'data-config' => 'apikey', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
diff --git a/resources/views/supportedapps/traefik.blade.php b/resources/views/supportedapps/traefik.blade.php
deleted file mode 100644
index 17a229dd..00000000
--- a/resources/views/supportedapps/traefik.blade.php
+++ /dev/null
@@ -1,11 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
-
-
diff --git a/resources/views/supportedapps/transmission.blade.php b/resources/views/supportedapps/transmission.blade.php
deleted file mode 100644
index bfb3612f..00000000
--- a/resources/views/supportedapps/transmission.blade.php
+++ /dev/null
@@ -1,20 +0,0 @@
-{{ __('app.apps.config') }} ({{ __('app.optional') }})
-
-
-
-
-
- {!! Form::text('config[override_url]', null, array('placeholder' => __('app.apps.override'), 'id' => 'override_url', 'class' => 'form-control')) !!}
-
-
-
- {!! Form::text('config[username]', null, array('placeholder' => __('app.apps.username'), 'data-config' => 'username', 'class' => 'form-control config-item')) !!}
-
-
-
- {!! Form::text('config[password]', null, array('placeholder' => __('app.apps.password'), 'data-config' => 'password', 'class' => 'form-control config-item')) !!}
-
-
-
-
-
diff --git a/routes/web.php b/routes/web.php
index 8c6f387a..d3eb8550 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -40,7 +40,7 @@ Route::post('test_config', 'ItemController@testConfig')->name('test_config');
Route::get('/get_stats/{id}', 'ItemController@getStats')->name('get_stats');
Route::get('view/{name_view}', function ($name_view) {
- return view('supportedapps.'.$name_view);
+ return view('SupportedApps::'.$name_view);
});
Route::resource('users', 'UserController');
diff --git a/storage/app/public/.gitignore b/storage/app/public/.gitignore
index 7463801d..0b26e3f4 100644
--- a/storage/app/public/.gitignore
+++ b/storage/app/public/.gitignore
@@ -1,2 +1,3 @@
backgrounds/
icons/
+supportedapps/
\ No newline at end of file
diff --git a/storage/app/public/supportedapps/Flood.png b/storage/app/public/supportedapps/Flood.png
deleted file mode 100644
index f340805a..00000000
Binary files a/storage/app/public/supportedapps/Flood.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/airsonic.png b/storage/app/public/supportedapps/airsonic.png
deleted file mode 100644
index da81e273..00000000
Binary files a/storage/app/public/supportedapps/airsonic.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/bazarr.png b/storage/app/public/supportedapps/bazarr.png
deleted file mode 100644
index 5c292617..00000000
Binary files a/storage/app/public/supportedapps/bazarr.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/bitwarden.png b/storage/app/public/supportedapps/bitwarden.png
deleted file mode 100644
index 21a23c7c..00000000
Binary files a/storage/app/public/supportedapps/bitwarden.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/booksonic.png b/storage/app/public/supportedapps/booksonic.png
deleted file mode 100644
index 4232ac91..00000000
Binary files a/storage/app/public/supportedapps/booksonic.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/bookstack.png b/storage/app/public/supportedapps/bookstack.png
deleted file mode 100644
index 949b0555..00000000
Binary files a/storage/app/public/supportedapps/bookstack.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/cardigann.png b/storage/app/public/supportedapps/cardigann.png
deleted file mode 100644
index da85e494..00000000
Binary files a/storage/app/public/supportedapps/cardigann.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/couchpotato.png b/storage/app/public/supportedapps/couchpotato.png
deleted file mode 100644
index 10f94270..00000000
Binary files a/storage/app/public/supportedapps/couchpotato.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/dokuwiki.png b/storage/app/public/supportedapps/dokuwiki.png
deleted file mode 100644
index c95ec9f2..00000000
Binary files a/storage/app/public/supportedapps/dokuwiki.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/duplicati.png b/storage/app/public/supportedapps/duplicati.png
deleted file mode 100644
index caa094de..00000000
Binary files a/storage/app/public/supportedapps/duplicati.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/emby.png b/storage/app/public/supportedapps/emby.png
deleted file mode 100644
index aae90979..00000000
Binary files a/storage/app/public/supportedapps/emby.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/freshrss.png b/storage/app/public/supportedapps/freshrss.png
deleted file mode 100644
index 7ced43f2..00000000
Binary files a/storage/app/public/supportedapps/freshrss.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/gitea.png b/storage/app/public/supportedapps/gitea.png
deleted file mode 100644
index 236e33c4..00000000
Binary files a/storage/app/public/supportedapps/gitea.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/glances.png b/storage/app/public/supportedapps/glances.png
deleted file mode 100644
index 6eb45d47..00000000
Binary files a/storage/app/public/supportedapps/glances.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/grafana.png b/storage/app/public/supportedapps/grafana.png
deleted file mode 100644
index 4feb348d..00000000
Binary files a/storage/app/public/supportedapps/grafana.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/graylog.png b/storage/app/public/supportedapps/graylog.png
deleted file mode 100644
index 4a8031c3..00000000
Binary files a/storage/app/public/supportedapps/graylog.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/headphones.png b/storage/app/public/supportedapps/headphones.png
deleted file mode 100644
index 5dd53c2c..00000000
Binary files a/storage/app/public/supportedapps/headphones.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/homeassistant.png b/storage/app/public/supportedapps/homeassistant.png
deleted file mode 100644
index 6916dfaf..00000000
Binary files a/storage/app/public/supportedapps/homeassistant.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/jackett.png b/storage/app/public/supportedapps/jackett.png
deleted file mode 100644
index 05f3531b..00000000
Binary files a/storage/app/public/supportedapps/jackett.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/jdownloader.png b/storage/app/public/supportedapps/jdownloader.png
deleted file mode 100644
index 4022c977..00000000
Binary files a/storage/app/public/supportedapps/jdownloader.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/krusader.png b/storage/app/public/supportedapps/krusader.png
deleted file mode 100644
index 66e13c72..00000000
Binary files a/storage/app/public/supportedapps/krusader.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/lidarr.png b/storage/app/public/supportedapps/lidarr.png
deleted file mode 100644
index f3260f08..00000000
Binary files a/storage/app/public/supportedapps/lidarr.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/mailcow.svg b/storage/app/public/supportedapps/mailcow.svg
deleted file mode 100644
index 6ba98e46..00000000
--- a/storage/app/public/supportedapps/mailcow.svg
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/storage/app/public/supportedapps/mcmyadmin.png b/storage/app/public/supportedapps/mcmyadmin.png
deleted file mode 100644
index 6693339f..00000000
Binary files a/storage/app/public/supportedapps/mcmyadmin.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/medusa.png b/storage/app/public/supportedapps/medusa.png
deleted file mode 100644
index 0dfde2ce..00000000
Binary files a/storage/app/public/supportedapps/medusa.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/monica.png b/storage/app/public/supportedapps/monica.png
deleted file mode 100644
index 5d3d551b..00000000
Binary files a/storage/app/public/supportedapps/monica.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/musicbrainz.png b/storage/app/public/supportedapps/musicbrainz.png
deleted file mode 100644
index 12f97b79..00000000
Binary files a/storage/app/public/supportedapps/musicbrainz.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/mylar.png b/storage/app/public/supportedapps/mylar.png
deleted file mode 100644
index 7c6d0b86..00000000
Binary files a/storage/app/public/supportedapps/mylar.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/netdata.png b/storage/app/public/supportedapps/netdata.png
deleted file mode 100644
index 1de841fe..00000000
Binary files a/storage/app/public/supportedapps/netdata.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/nextcloud.png b/storage/app/public/supportedapps/nextcloud.png
deleted file mode 100644
index 83a333ce..00000000
Binary files a/storage/app/public/supportedapps/nextcloud.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/nowshowing.png b/storage/app/public/supportedapps/nowshowing.png
deleted file mode 100644
index 06d5c749..00000000
Binary files a/storage/app/public/supportedapps/nowshowing.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/nzbget.png b/storage/app/public/supportedapps/nzbget.png
deleted file mode 100644
index a44c5757..00000000
Binary files a/storage/app/public/supportedapps/nzbget.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/nzbhydra.png b/storage/app/public/supportedapps/nzbhydra.png
deleted file mode 100644
index 1a3cd8ec..00000000
Binary files a/storage/app/public/supportedapps/nzbhydra.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/ombi.png b/storage/app/public/supportedapps/ombi.png
deleted file mode 100644
index 68b8f63b..00000000
Binary files a/storage/app/public/supportedapps/ombi.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/openhab.png b/storage/app/public/supportedapps/openhab.png
deleted file mode 100644
index 96800d5c..00000000
Binary files a/storage/app/public/supportedapps/openhab.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/openmediavault.png b/storage/app/public/supportedapps/openmediavault.png
deleted file mode 100644
index 90424f7d..00000000
Binary files a/storage/app/public/supportedapps/openmediavault.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/opnsense.png b/storage/app/public/supportedapps/opnsense.png
deleted file mode 100644
index 887280e5..00000000
Binary files a/storage/app/public/supportedapps/opnsense.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/pfsense.png b/storage/app/public/supportedapps/pfsense.png
deleted file mode 100644
index c1684770..00000000
Binary files a/storage/app/public/supportedapps/pfsense.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/pihole.png b/storage/app/public/supportedapps/pihole.png
deleted file mode 100644
index 93b6b3c6..00000000
Binary files a/storage/app/public/supportedapps/pihole.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/plex.png b/storage/app/public/supportedapps/plex.png
deleted file mode 100644
index 3277ab1e..00000000
Binary files a/storage/app/public/supportedapps/plex.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/plexpy.png b/storage/app/public/supportedapps/plexpy.png
deleted file mode 100644
index c671d971..00000000
Binary files a/storage/app/public/supportedapps/plexpy.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/plexrequests.png b/storage/app/public/supportedapps/plexrequests.png
deleted file mode 100644
index fd431e75..00000000
Binary files a/storage/app/public/supportedapps/plexrequests.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/portainer.png b/storage/app/public/supportedapps/portainer.png
deleted file mode 100644
index 77eca355..00000000
Binary files a/storage/app/public/supportedapps/portainer.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/proxmox.png b/storage/app/public/supportedapps/proxmox.png
deleted file mode 100644
index 3310ce0d..00000000
Binary files a/storage/app/public/supportedapps/proxmox.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/pyload.png b/storage/app/public/supportedapps/pyload.png
deleted file mode 100644
index 8c857e93..00000000
Binary files a/storage/app/public/supportedapps/pyload.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/radarr.png b/storage/app/public/supportedapps/radarr.png
deleted file mode 100644
index fef8a15d..00000000
Binary files a/storage/app/public/supportedapps/radarr.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/rancher.png b/storage/app/public/supportedapps/rancher.png
deleted file mode 100644
index 1455e835..00000000
Binary files a/storage/app/public/supportedapps/rancher.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/runeaudio.png b/storage/app/public/supportedapps/runeaudio.png
deleted file mode 100644
index af58703d..00000000
Binary files a/storage/app/public/supportedapps/runeaudio.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/rutorrent.png b/storage/app/public/supportedapps/rutorrent.png
deleted file mode 100644
index 0b522306..00000000
Binary files a/storage/app/public/supportedapps/rutorrent.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/sabnzbd.png b/storage/app/public/supportedapps/sabnzbd.png
deleted file mode 100644
index acf3d274..00000000
Binary files a/storage/app/public/supportedapps/sabnzbd.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/sickrage.png b/storage/app/public/supportedapps/sickrage.png
deleted file mode 100644
index 1896ee02..00000000
Binary files a/storage/app/public/supportedapps/sickrage.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/sonarr.png b/storage/app/public/supportedapps/sonarr.png
deleted file mode 100644
index 4aafefb6..00000000
Binary files a/storage/app/public/supportedapps/sonarr.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/syncthing.png b/storage/app/public/supportedapps/syncthing.png
deleted file mode 100644
index 55c02ee0..00000000
Binary files a/storage/app/public/supportedapps/syncthing.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/tautulli.png b/storage/app/public/supportedapps/tautulli.png
deleted file mode 100644
index dbde75cf..00000000
Binary files a/storage/app/public/supportedapps/tautulli.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/traefik.png b/storage/app/public/supportedapps/traefik.png
deleted file mode 100644
index 0c0b7b21..00000000
Binary files a/storage/app/public/supportedapps/traefik.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/transmission.png b/storage/app/public/supportedapps/transmission.png
deleted file mode 100644
index 784440f5..00000000
Binary files a/storage/app/public/supportedapps/transmission.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/tt-rss.png b/storage/app/public/supportedapps/tt-rss.png
deleted file mode 100644
index aa616581..00000000
Binary files a/storage/app/public/supportedapps/tt-rss.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/tvheadend.png b/storage/app/public/supportedapps/tvheadend.png
deleted file mode 100644
index e118ff2c..00000000
Binary files a/storage/app/public/supportedapps/tvheadend.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/unifi.png b/storage/app/public/supportedapps/unifi.png
deleted file mode 100644
index 7eaa608b..00000000
Binary files a/storage/app/public/supportedapps/unifi.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/unraid.png b/storage/app/public/supportedapps/unraid.png
deleted file mode 100644
index e98d0f7a..00000000
Binary files a/storage/app/public/supportedapps/unraid.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/unraid3.png b/storage/app/public/supportedapps/unraid3.png
deleted file mode 100644
index fbf431ec..00000000
Binary files a/storage/app/public/supportedapps/unraid3.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/virtualmin.svg b/storage/app/public/supportedapps/virtualmin.svg
deleted file mode 100644
index 0dd9c9e2..00000000
--- a/storage/app/public/supportedapps/virtualmin.svg
+++ /dev/null
@@ -1,152 +0,0 @@
-
-
-
-
diff --git a/storage/app/public/supportedapps/watcher3.png b/storage/app/public/supportedapps/watcher3.png
deleted file mode 100644
index 048e0ef5..00000000
Binary files a/storage/app/public/supportedapps/watcher3.png and /dev/null differ
diff --git a/storage/app/public/supportedapps/webmin.svg b/storage/app/public/supportedapps/webmin.svg
deleted file mode 100644
index 382932f5..00000000
--- a/storage/app/public/supportedapps/webmin.svg
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
diff --git a/storage/app/public/supportedapps/webtools.png b/storage/app/public/supportedapps/webtools.png
deleted file mode 100644
index 7f619e4a..00000000
Binary files a/storage/app/public/supportedapps/webtools.png and /dev/null differ