Major Overhaul: Session Management, Termux:Widget Support, and Firefox ESR#2
Open
arinadi wants to merge 47 commits into
Open
Major Overhaul: Session Management, Termux:Widget Support, and Firefox ESR#2arinadi wants to merge 47 commits into
arinadi wants to merge 47 commits into
Conversation
…ariable handling and improved user instructions
- Fix variable expansion: single-quoted $USER/$PASS never expanded, broke chpasswd/sudoers - Add dialog package before xfce4 to prevent tzdata/keyboard-configuration freeze - Replace apt with apt-get for non-interactive scripting - Add --no-install-recommends to avoid pulling unnecessary proot packages - Fix launcher heredoc escaping (start-xfce.sh $BINDS was literal) - Add set -euo pipefail + error trap on proot login block - Standardize PulseAudio socket path via $TERMUX_TMP
- Generate scripts in ~/.shortcuts/ for Termux:Widget support - Add kill-proot.sh and kill-x11.sh to cleanly manage processes - Fix XFCE session corruption on restart by clearing ~/.cache/sessions/ - Fix missing window manager and desktop dependencies (libgl1, xfdesktop4) - Add firefox-esr for stable browsing - Auto-launch Termux:X11 app via am start intent - Complete README overhaul with emojis, alerts, and "Why Proot?" section
- Document 'Nuclear Option' to clear Termux data completely - Explain how to safely update scripts via curl without deleting personal files
- Generate update-droiddesk.sh in ~/.shortcuts for easy 1-tap updates - Update README to reflect 5th launcher script
fa9657d to
9e85400
Compare
- kill-x11: fix hardcoded /tmp path to use $TERMUX_TMP - kill-x11: graceful pkill before SIGKILL, per-process feedback - kill-proot: add xfdesktop4 to process list - kill-proot: specific proot pattern (distro-scoped, not 'proot --') - kill-proot: specific dbus pattern (session only, not system) - kill-proot: graceful kill → sleep → force-kill fallback - kill-proot: clean XDG_RUNTIME_DIR temp - add kill-all.sh unified convenience script - update MOTD and help text
- patch-ubuntudx.sh: non-interactive DX installer (geany, git, gh, Node.js 24, python3-pip/venv, jq, htop, tree, ripgrep, nala, curl, wget, zip/unzip) - patch-tui.sh: interactive dialog TUI with checkbox package picker (23 packages across dev tools, editors, browsers, utilities) - proot-xfce-setup.sh: remove firefox-esr from base install (now optional via patch-tui.sh to reduce setup time)
- Delete patch-ubuntudx.sh (consolidated into TUI) - Add category separators in dialog checklist - Add packages: nano, papirus-icon-theme, arc-theme - Improved install summary with box-drawing UI - Filter separator items from selection parsing - Better trap cleanup for temp files
Added: - sqlitebrowser (Database) - meld (Visual Diff) - lxtask (Task Manager) - viewnior (Image Viewer) - xarchiver (Archive Manager) - galculator (Calculator) - netsurf-gtk (Ultra-light Browser)
Added: - Gemini CLI (gemini-chat via npm) - Qwen CLI (qwen-chat via npm) - Context-Mode (via npm) - AIChat (Multi-provider binary) - Shell GPT (sgpt via pip) - Ollama (Local LLM runner)
- Use --shared-tmp and dbus-launch for better session management - Add aggressive cleanup of .ICEauthority and session cache in kill-proot script
…ocumentation refs
- Fixed PATH pollution from Termux into PRoot environment. - Added NVM initialization to generated .bashrc. - Fixed premature shell expansion of XDG_RUNTIME_DIR in start-xfce.sh. - Improved reliability of XFCE session startup.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces several major improvements to make DroidDesk a true 1-click 'daily-driver' setup:
Features & Fixes
start-x11.sh,start-xfce.sh,kill-x11.sh, andkill-proot.sh. Destructive process killing is no longer done on startup, preventing X server conflicts.kill-proot.shscript securely cleans~/.cache/sessions/inside the rootfs. This permanently fixes the 'missing cursor' and 'Window Manager failed to start' bugs on subsequent launches.~/.shortcuts/(and symlinked to~/), allowing 1-tap start/stop from the Android homescreen.update-droiddesk.sh) to safely pull future updates without wiping user data.am startintent to automatically switch the user's screen to the Termux:X11 app once the server is ready.libgl1,mesa-utils,xfdesktop4) to ensure the desktop environment does not crash on ARM displays.firefox-esrnatively inside the proot environment.Documentation
README.mdwith GitHub-flavored markdown (emojis, alerts, center alignment).glibcbinaries and default app handling compared to Debian or Fedora.