Kodi Community Forum

Full Version: AppLauncher Addon release 0.8.0 - The start menu for Kodi
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4
Hi


I made an AppLauncher plugin.


Releases are at the moment from my GitHub

Please download from my repo:
https://github.com/Takezo36/repo/blob/ma...p?raw=true

Special Thanks to @melons2  and @fregrinz for being my beta testers/remote debuggers.

What does it do:

Lists and launches apps / programs provided by the OS. Which means for Windows the start menu and from 10 the store is scanned and for Linux the .desktop files. For Windows the folder structure of the start menu is displayed and for Linux the categories (1st entry) or all apps at once.
Image

Image

Image
You can create custom entries on the first page. And add custom variants of existing entries on the first page (context menu).

You can minimize Kodi while executing an app and maximized it after the app has closed or kill Kodi and restart it after quitting the launched app.


Requirements:

- Windows: Powershell 2.0
- Linux: (optional) rsvg (or similiar) to convert svg icons to png.

Status:

- Linux: Tested on Ubuntu with Gnome

- Windows: Tested on Windows 10 and Windows 7

- OSX: No support ... have no mac and no idea about it.

Note on a little difference between linux and windows:

Linux/the .desktop files have the concept of alternative calls for an app (mostly it's additional parameters). In ubuntu those are represented in the right click menu of a shortcut. I've placed them in the context menu of the specific app to mimic this.
Windows doesn't have this.

Known bugs:

- Linux: Not all icons can be loaded because Kodi can't do svgs. I'll have to convert them to png somehow.I've added a way to convert the svgs relying on an external program called rsvg-convert. It's in the ubuntu apt repo. So no problem to get. You can also use something else and configure that in the settings of the plugin. I had to go this route because all the python libs for svg handling which i found use some binary part which is a no go for the kodi repo. So i added this option. You'll get a one time notification if rsvg-convert is not found. You get all the infos and if like you can just ignore it from there one.

- Windows: Folder links can be problematic. have to check that. Maybe not all icons are found.
  Store Icons in particular are not found at the moment.
  the close kodi and restart option will not work in Windows at the moment.

Fixed
 
- All: After create custom entry/folder the window doesn't refresh automatically at the moment. So the new entry doesn't get displayed right away.
Fixed
Planned Feature:

- Performance improvement ... the whole thing is quite slow at the moment because on every page the whole scanning runs. Common plugin cache should fix that
  done
- Add force refresh
 done. Is in the context menu.
- Custom art styles for users. Backdrops, icons etc.
done
- Custom folder and custom entries in folders
done
- Localization ... at the moment only static strings in English
done in kodi. english and german language at the moment spanish and french about to come.
link names in linux get the localized version based on the kodi language
windows gets the localized names of the OS language
- Add an option to flatten folders. so display all apps at once
done
- Figure out how to maximize Kodi
   - Once done remove options clutter and make two options "close and restart" and "minimize and maximize"

done minimize works on windows and on all linuxes which use x11
update: there seems to be problem with kde ... need to investigate
Hope it's fun to use
Hi,
I am running windows 10 and Leia, I also tried this in Krypton.
It wouldn't run in either.
Here is a snippet of the log:

09:18:10.102 T:24240   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.SyntaxError'>
                                            Error Contents: invalid syntax (AppListerWindows.py, line 32)
                                            Traceback (most recent call last):
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\plugin.py", line 13, in <module>
                                                import resources.lib.AppLister as AppLister
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\resources\lib\AppLister.py", line 13, in <module>
                                                import AppListerWindows as MyAppLister
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\resources\lib\AppListerWindows.py", line 32
                                                except ValueError:
                                                     ^
                                            SyntaxError: invalid syntax
                                            -->End of Python script error report<--

Hope this helps and that I haven't accidentally broken any rules by posting this here.
Hi,

thanks for the feedback. I'll look into it as soon as possible and will provide a new version once i got it fixed.
So i've fixed that bug. But for the live of me i cant get kodi to run on win in a vm on my current linux machine. So proper testing for win from my side only on the weekend.
I also use the plugin cache now its much faster now... however not refreshing now so i'll add a force refresh option.
Sorry to bring you more bad news.
This is from version v0.2
Here is the error log:

53.602 T:15572   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.WindowsError'>
                                            Error Contents: [Error 2] The system cannot find the file specified
                                            Traceback (most recent call last):
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\plugin.py", line 319, in <module>
                                                createEntries()
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\plugin.py", line 89, in createEntries
                                                addStartEntries(folderToShow, isRoot)
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\plugin.py", line 121, in addStartEntries
                                                entries = cache.cacheFunction(AppLister.getAppsWithIcons)
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\script.common.plugin.cache\lib\StorageServer.py", line 570, in cacheFunction
                                                ret_val = funct(*args)
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\resources\lib\AppLister.py", line 20, in getAppsWithIcons
                                                return MyAppLister.getAppsWithIcons()
                                              File "C:\Users\Paul\AppData\Roaming\Kodi\addons\plugin.program.applauncher\resources\lib\AppListerWindows.py", line 35, in getAppsWithIcons
                                                output = subprocess.check_output([APPREADER_SCRIPT, ADDON_USER_DATA_FOLDER])
                                              File "C:\KODIKRYPT\Kodi\system\python\Lib\subprocess.py", line 212, in check_output
                                                process = Popen(stdout=PIPE, *popenargs, **kwargs)
                                              File "C:\KODIKRYPT\Kodi\system\python\Lib\subprocess.py", line 390, in __init__
                                                errread, errwrite)
                                              File "C:\KODIKRYPT\Kodi\system\python\Lib\subprocess.py", line 640, in _execute_child
                                                startupinfo)
                                            WindowsError: [Error 2] The system cannot find the file specified
                                            -->End of Python script error report<--
Hi
Thanks for the info. Just to give a little update I've been working on the Windows part and I'm almost there but couldn't finish it yet. I hope I get something usable within this week.
hope you can get this to work just crashed at the moment
Hi all,

sorry for the delay ... business travel. So i've done quite some bugfixing and the basic windows stuff is working but with two (major) remarks.
The close kodi and restart it after the app is closed function does not work on windows at the moment. I need to do a new daemon for windows.
Windows icons only work partially. The store apps mostly don't show up at all.

For linux i've added a way to transform svg icons to png but require an external program.

I'll add a proper change log later on.

so please download v0.4.

Regards
hello

Am trying out the windows version of this addon, could we please get an option for custom icons ? or can you make them look better ?

Thanks
Hi thanks for the feedback.
Custom icons is a good idea I'll look into that next after I've finished the windows daemon part. However this might take some time since I've to reconsider a bit the way I'm searching for the icons.
Regarding the making the default ones looking better. I'm limited by what windows provides me here and this was the best I could get till now. I'm still trying to get it better but don't get your hopes up too much on this.
On a related topic I also want to see if I can get some backdrops per app.
Alright quick change on priorities.. so custom icons and background are in. and the force refresh works porperly.
To set icons open the context menu and select set custom icon
i'm not quite sure how to mass replace the icons for now. it's only individual replacement for now.
Fantastic work, I check it out later.
hi how can I run firefox in full screen ,thanks.
(2018-06-09, 20:21)l3g0re Wrote: [ -> ]hi how can I run firefox in full screen ,thanks.
Hi

So generally speaking you can create a custom variant of a link by going to the context menu of this entry (press c on the entry) and select add custom variant. This will allow you to add parameters to the call.
Specifically for Firefox you can have a look here https://askubuntu.com/questions/36287/ho...creen-mode
Or here https://developer.mozilla.org/en-US/docs...ne_Options

Since I'm on my phone at the moment I can't test anything. However out of personal work experience I can tell you that kiosk mode in browsers is funky as in they changed the parameters and behavior a few times so it's not as straight forward as one would hope.

Generally I'm wondering if it makes sense to have a "side call" database with common variants for common apps so that e.g. all browser would get a start in full screen entry. I'll put that thought on my backlog.
Version 0.45 release.
I've added support for custom folders and localization.
For the custom folders. You'll get a text input popup. You can create/move to folder structurs by using and folder seperation string. It's for now "$%$". It'll be configurable in the next release. It is such a funky charset since windows can have "/" in some links so it had to be something funky.
If you enter a path with a leading "$%$" the plugin will go from root. if you don't start with "$%$" the plugin will go from the folder where you are.
So e.g. you are in the folder
  /a/b
 and click on create folder and enter "c"
you will get
  /a/b/c
 if you and click on create folder and enter $%$"c"
you will get
/c

Unfortunately i didn't get to the windows problems yet but it's up next.
Pages: 1 2 3 4