Quantcast
Channel: Outernet | Discussions - Latest topics
Viewing all articles
Browse latest Browse all 1270

HOWTO: Installing Custom Applications on SkyLark 4.4

$
0
0

@nbkhwjm wrote:

I've wanted to add some custom applications to the DC running SkyLark (currently 4.4).. this is the process to install it so it remains after a reboot.. Although Skylark is based on the OS.js platform (https://www.os-js.org/), its customized quite a bit.

Additionally Skylark is read only, any changes you make will be overwritten on the next reboot. To get around this, we will use the user script service to re-install the customizations after every reboot, then bounce the window manager.

This really starts the ball rolling to the creation of many custom applications that can be developed.. building a "package" to drop on the system would be rather trivial. Lets add that to the TODO list :slight_smile:

Create your custom application
you can use an existing application as a template, but you will need to modify much of it so its unique. Developing the application is beyond the scope of this post, and requires more effort. (mine clearly needs some work, but wanted to document this first)

Existing applications can be found in: /usr/share/www/packages/default
copy one of these to your writable location.. in my case it was /mnt/conf/bin
modify the application as required.

Create Custom Icons
you will need both 16x16 and 32x32 size icons
store these in your writable location for example /mnt/conf/bin

Create a custom packages.json
Copy the packages.json file from /usr/lib/node_modules/ui2 to your writable location.. /mnt/conf/bin

modify the file adding an entry to the "www" group for your new application... Check the syntax of the file with "jq -c < packages.json" when your complete.

for my example i added the following..

"default/RACHEL": {                                                      
            "className": "ApplicationRachel",                
            "name": "RACHEL",                                                    
            "mime": null,                                                   
            "icon": "apps/RACHEL.png",                                          
            "category": "utilities",                                
            "preload": [                                                     
                {                                                            
                    "type": "javascript",                                           
                    "src": "combined.js"                                     
                },                                                                  
                {                                             
                    "src": "scheme.html",                                    
                    "type": "scheme"                                        
                },                                                           
                {                                                               
                    "type": "stylesheet",                                    
                    "src": "combined.css"                                    
                }                                                   
            ],                                                               
            "type": "application",                                           
            "path": "default/RACHEL",                                     
            "build": {},                                                     
            "repo": "default"      
         }

Add a User Service Script
Create a "user.sh" script to place all the files in the proper place then restart the ui service..

#!/bin/sh

cp -f /mnt/conf/bin/packages.json /usr/lib/node_modules/ui2
chmod 644 /usr/lib/node_modules/ui2/packages.json

cp -R /mnt/conf/bin/RACHEL /usr/share/www/packages/default
chmod 755 /mnt/conf/bin/RACHEL
 
cp -f /mnt/conf/bin/RACHEL_16x16.png /usr/share/www/themes/icons/default/16x16/apps/RACHEL.png

cp -f /mnt/conf/bin/RACHEL_32x32.png /usr/share/www/themes/icons/default/32x32/apps/RACHEL.png

/etc/init.d/S70ui2service restart

when you goto the Skylark Web UI, you will see your new application..

Posts: 1

Participants: 1

Read full topic


Viewing all articles
Browse latest Browse all 1270

Trending Articles