https://redmine.graphics-muse.org/https://redmine.graphics-muse.org/favicon.ico?16278048512014-09-09T17:05:10ZGraphics Muse Issue TrackerPiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=13512014-09-09T17:05:10ZHammelmjhammel@graphics-muse.org
<ul><li><strong>Category</strong> changed from <i>04 - Root File System</i> to <i>04 - Applications</i></li></ul> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=13682014-09-11T16:01:21ZHammelmjhammel@graphics-muse.org
<ul><li><strong>Priority</strong> changed from <i>High</i> to <i>Immediate</i></li></ul> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=13812014-09-15T03:11:04ZHammelmjhammel@graphics-muse.org
<ul></ul><p>This requires that all apps exit when done and that appmgr recognize when the app exits and start up the default app.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14002014-10-03T02:59:29ZHammelmjhammel@graphics-muse.org
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>In Progress</i></li><li><strong>% Done</strong> changed from <i>0</i> to <i>10</i></li></ul><p>Before doing this I need to define a format for the <strong>Application Description</strong> file. This file holds information provided by the application at installation time. The information could be installed in the control file of the opkg but I decided not to overload that file, especially since opkg doesn't unpack that file from the package. So installation will require the Application Description file.</p>
<p>The format for this file will be XML. This is because it will be fairly easy to ignore unsupported data and the PiBox Dev Platform already has libxml2 installed.</p>
There are some examples of similar files available on the net:
<ul>
<li><a href="http://developer.android.com/reference/android/content/pm/ApplicationInfo.html" class="external">Android's ApplicationInfo</a></li>
<li><a href="http://portableapps.com/manuals/PortableApps.comLauncher/ref/paf/appinfo.html" class="external">Appinfo.ini</a> from PortableApps.com</li>
<li><a href="http://standards.freedesktop.org/desktop-entry-spec/latest/" class="external">Desktop Entry Specification</a> from freedesktop.org</li>
</ul>
What I know I need:
<ol>
<li>Application Name</li>
<li>Author</li>
<li>Contact (who to contact in case of problems)</li>
<li>Command (including command line args)</li>
<li>Icon (for application selection)</li>
<li>Splash image (for application information)</li>
<li>Description</li>
</ol>
<p>Any field that's missing means the application is ignored. The AppManager should run all applications as an unprivileged user except for special cases (there are always special cases, like the network configuration tool). There should be system applications and custom applications, where the system applications can run with special privileges.</p>
<p>I don't want to make this too complex. It should just work and be very restrictive to avoid custom applications that can muck up the system.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14012014-10-12T20:51:19ZHammelmjhammel@graphics-muse.org
<ul></ul><p>I've implemented a basic launcher that shows icons, splash images and descriptive text. See attached image. It still needs to have a key defined for ACCEPT which will pass the configured command to the appmgr. I need to decide if the appmgr will launch apps over the launcher or manage the launcher just like any other app.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14022014-10-12T20:54:47ZHammelmjhammel@graphics-muse.org
<ul></ul><p>Can't seem to load images right now. I'll try again later.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14032014-10-12T20:58:13ZHammelmjhammel@graphics-muse.org
<ul><li><strong>File</strong> <a href="/attachments/66">launcher.png</a> <a class="icon-only icon-download" title="Download" href="/attachments/download/66/launcher.png">launcher.png</a> added</li></ul><p><img src="https://redmine.graphics-muse.org/attachments/download/66/launcher.png" alt="" /></p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14042014-10-14T20:26:33ZHammelmjhammel@graphics-muse.org
<ul><li><strong>% Done</strong> changed from <i>10</i> to <i>70</i></li></ul><p>This is essentially complete. I need to make sure the opkg is built correctly and I need to test it to see what happens if there are no app description files.</p>
<p>Other than that, it seems ready to test on the media server.</p>
<p>Then I need to remove the panel from pmsui and decide on how this app will get started: by xinitrc or by appMgr.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14082014-10-20T04:40:45ZHammelmjhammel@graphics-muse.org
<ul><li><strong>% Done</strong> changed from <i>70</i> to <i>60</i></li></ul><p>Launcher had some problems on the target board that didn't show up on my desktop. Apparently Cairo isn't happy with non-square PNGs on ARM but is okay with them on Intel. But that's fixed now.</p>
<p>So the launcher is running correctly. Time to figure out how to start it via the appMgr.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14092014-10-20T16:34:16ZHammelmjhammel@graphics-muse.org
<ul></ul><p>The easiest way to do this would be to have pmsui/src/config/etc/X11/desktop.sh test for launcher after it starts appmgr. If launcher is found, use appmgr.sh to tell appmgr to start launcher. If launcher is not found then mbdock.session- (which is the existing mbdock.session renamed in pmsui) should be linked to mbdock.session so the panel will be used instead. That gives me a fallback until I'm satisfied with launcher's integration with the entire desktop.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14102014-10-20T23:15:53ZHammelmjhammel@graphics-muse.org
<ul><li><strong>Severity</strong> changed from <i>03 - Medium</i> to <i>01 - Critical</i></li></ul> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14222014-10-31T16:20:20ZHammelmjhammel@graphics-muse.org
<ul></ul><p>Now that I know how to get X started without a required restart to get keyboards working I can drop the X.org restart button.</p>
<p>In fact, I can have just the following app icons:<br />1. Network Config (via launcher)<br />2. System Config (date, time, etc.) (via launcher)<br />3. VideoFE (via VideoFE)<br />4. Terminal (via launcher)<br />5. Reboot (via launcher)</p>
<p>Eventually I'll have other icons: TV, Music, Photos, etc.</p>
<p>The launcher should have have a 2x3 layout for the current 5 apps. And launcher's config file should have a preferred location element added so I can order them better.</p> PiBox - Feature #383: Switch to appmgr run default app and drop matchbox panelhttps://redmine.graphics-muse.org/issues/383?journal_id=14242014-11-02T04:46:25ZHammelmjhammel@graphics-muse.org
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Closed</i></li><li><strong>% Done</strong> changed from <i>60</i> to <i>100</i></li></ul><p>pmsui xinitrc cleaned up to remove matchbox-panel and background image. This goes with cleanup of init scripts to fix the X-restart-to-fix-keyboard input.</p>
<p>appmgr has been updated to run the new launcher app by default. The launcher app is also committed and works well.</p>
<p>This issue is therefore complete. Closing.</p>