Howto: making arbitrary "Legacy" applications available from the application menu.



  • Just to document some findings, in case somebody is looking for the same answer: This is how I am using and "integrating" normal Ubuntu and other 3rd-party applications into the launcher:

    Creating a libertine image, as documented here.
    Example:

    libertine-container-manager create -i legacy -n "Legacy"
    libertine-container-manager install-package -i legacy -p gnome-terminal
    libertine-container-manager install-package -i legacy -p openjdk-8-jre
    

    Now from the OpenStore install package "Desktop Apps". Enable the "Desktop Apps" scope in the launcher. Now swiping left on the Launcher should bring up the "Desktop Apps" scope. After running the commands above it lists just two items: "OpenJDK Java 8 Policy Tool" and "Terminal" . To add other custom launchers (for example to launch some manually installed Java GUI application), you can add more items to the Desktop Apps by creating files inside the libertine container at /usr/share/applications/*.desktop.

    Example:

    libertine-container-manager install-package -i legacy -p joe
    libertine-container-manager install-package -i legacy -p vim
    libertine-launch -i legacy  /bin/bash
    cp /usr/share/applictions/terminal.desktop /usr/share/applictions/myapp.desktop
    joe /usr/share/applications/myapp.desktop
    

    For example to launch a java application installed in /home/phablet/.local/share/libertine-container/user-data/legacy/myapp.jar , edit myapp.desktop and change the line

    Exec=/usr/bin/java -jar /home/phablet/myapp.jar
    

    (Note how the container's directory /home/phablet corresponds to the absolute path /home/phablet/.local/share/libertine-container/user-data/legacy/myapp.jar when accessed outside the container)

    Dave


Log in to reply
 

Looks like your connection to UBports Forum was lost, please wait while we try to reconnect.