https://youtu.be/1oY9ofjH2_o?si=xMFzPlkSeqHFyZdK
http://me2pc.com/index.php/start-desktop-user-interface
http://bobbycooper.net
Video on youtube: https://youtu.be/0cKoVyqZNIc?si=SaL95AqwEb2G3bzj
The complete StartDesktop process is very easy to implement, customize and to use.
The StartDesktop process consists of 2 separate parts
A. X-Windows x-scheme-handlers registrasion of “linuxapps” <–linuxapps:// (just once) .
A. A single html / css / Client Side JavaScirpt Webpage (with our special malformed hybrid prefix-hyperlink urls) Launch VLC) “vlc” –>
C. Desktop Launcher “linuxApps.deskop”
- Exec=/home/linux/linuxApp.sh %u
- MimeType=x-scheme-handler/linuxapps;) %u=”vlc” –>
B. 100% bash listener socat webserver shell script.
C. Shell Script “linuxApps.sh”
- %u=”vlc” –> linuxApps.sh –> vlc program is launched.
###what can be dropped in to a button and then executed with a single click
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🎯 COMPLEX COMMAND EXAMPLES: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Multiple apt commands with chaining: http://192.168.207.133:9000/launch/sudo_“sudo apt-get update && sudo apt-get upgrade -y”
GUI dialog + system commands: http://192.168.207.133:9000/launch/bash_“yad –question –text=’Proceed?’; sudo apt-get update; xdg-open ‘https://deepseek.com’”
Complex scripting with variables: http://192.168.207.133:9000/launch/bash_“for i in {1..5}; do echo "Count: $i"; sleep 1; done”
Multi-line commands with semicolons: http://192.168.207.133:9000/launch/bash_“cd /tmp; mkdir test; touch test/file.txt; ls -la test/”
Conditional execution: http://192.168.207.133:9000/launch/bash_“which firefox && firefox || echo ‘Firefox not installed’”
Background processes: http://192.168.207.133:9000/launch/bash_“nautilus &; gnome-calculator &”
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 📝 SYNTAX RULES: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• Use double quotes around the entire command: prefix_“your command here” • Multiple commands: separate with ; or && or || • Escape inner double quotes with backslash: " • Query parameters (?_cb=xxx) are automatically stripped
🔧 PREFIXES: bash_ - Opens terminal window, runs commands (no sudo) sudo_ - Prompts for password, runs with elevated privileges (none) - Runs silently in background
✨ Features: yad dialogs, command chaining, variables, conditionals, loops ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Extract system username and insert it in to Desktop Launcher and creates “linuxApp.desktop” file.
Configure x-sheme-handlers associating linuxapps to the linuxApp.desktop Desktop Launcher.
Makes all Desktop Launchers executable.
Updates mime database and registers protocal “linuxapps:// in x-scheme-handles system.
Copies Dispatcher File “linuxApp.sh” to ~/linuxApp.sh”
Tests to see if x-scheme-handlers associaton and update was successful and reports status
1. Register Custom url linuxapps:// in X-Windows x-scheme-handlers and associate it to “linuxapps”
**2. Create the custom Desktop Launcher, copy to system directories and make them all executable.
**3. Copy Dispatcher File “linuxApp.sh” to your home directory “~/linuxApp.sh”
4. Provides base example html webpage “linuxApps.html” with examples of our custom url links:
linuxApps.html will be located in the directory where you extracted the zip file: or in the default directory: ~/linuxApps/linuxApps.html
Use our custom linuxapps hyperlinks like this: - Launch VLC
================================== Example code (but it will vary on your own personal needs):
[Desktop Entry]
Version=1.0
Type=Application
Name=LinuxApps
Comment=Universal local apps launcher (linuxapps:// protocol - supports multiple Linux apps)
Exec=/home/linux/linuxApp.sh %U
Icon=application-x-executable
Terminal=false
Categories=Utility;
MimeType=x-scheme-handler/linuxapps;
NoDisplay=false
==================================
#!/bin/bash # ~/linuxApp.sh - Universal linuxapps:// handler (Debian-friendly)
URL=”$1”
# Log for debugging echo “$(date): Received: $URL” » /tmp/linuxapps.log
# Extract the ‘app’ parameter reliably (handles ? and &) APP=$(echo “$URL” | sed -E ‘s/.[?&]app=([^&?#]).*/\1/’)
if [ -z “$APP” ]; then notify-send “LinuxApps Error” “No app parameter found!\nURL: $URL” echo “ERROR: No app= parameter in $URL” >&2 exit 1 fi
case “$APP” in
vlc) exec vlc ;;
browserIDE)
exec /production/browser-ide/launchBrowserIDE.sh ;;
yadEditor)
exec /production/browser-ide/yadEditorWindow.sh ;;
gimp)
exec gimp ;;
| terminal | konsole | xterm | gnome-terminal | lxterminal) |
exec x-terminal-emulator ;; # works on most Debian setups
*)
notify-send "LinuxApps" "Unknown app: $APP"
echo "Unknown app requested: $APP" >&2
exit 1
;;
esac
==================================
html file: linuxApps.html:
Launch VLC Launch VLC Launch VLC Launch VLC===================================
Video on youtube: https://youtu.be/0cKoVyqZNIc?si=SaL95AqwEb2G3bzj