Skip to content

Testing Checklist

Ghostly edited this page Jun 7, 2026 · 2 revisions

Testing Checklist

This checklist is useful when validating a new release or checking a Linux desktop environment.

Basic App Detection

Start a simple HTML server:

mkdir -p ~/ghostly-test
cd ~/ghostly-test
cat > index.html <<'EOF'
<!doctype html>
<html>
<head>
  <title>GhostlyShare Ubuntu Test</title>
</head>
<body>
  <h1>Hello from Ubuntu</h1>
  <p>GhostlyShare test app</p>
</body>
</html>
EOF
python3 -m http.server 3000

Expected:

  • GhostlyShare detects the app.
  • The card shows port 3000.
  • Go Public creates a public URL.
  • The public URL opens the HTML page.

Versioned Python on Linux

If available, test:

python3.10 -m http.server 3000
python3.11 -m http.server 3000
python3.12 -m http.server 3000

Expected:

  • Versioned Python process names are treated as developer processes on Linux.
  • Simple local HTML apps are detectable.

Normal Shutdown Cleanup

  1. Start a local app.
  2. Select Go Public.
  3. Close GhostlyShare normally.
  4. Run:
pgrep -a cloudflared

Expected:

  • No output, unless you have unrelated Cloudflare tunnels running.

Single Instance

  1. Start GhostlyShare.
  2. Start it again:
ghostlyshare

Expected:

  • A second long-running instance is not created.
  • The existing GhostlyShare window opens or activates.

On Wayland, focus behavior can be limited by the desktop environment. The important part is that there is still only one running GhostlyShare instance.

Linux Desktop Information

Record:

echo $XDG_CURRENT_DESKTOP
echo $XDG_SESSION_TYPE
echo $DESKTOP_SESSION

Useful combinations to test:

  • Arch Linux KDE Plasma Wayland.
  • Kali Linux XFCE X11.
  • Ubuntu GNOME Wayland.
  • Other Linux desktops and sessions that users report.

Custom Domain Storage

Check:

command -v secret-tool

Expected:

  • The command exists on Ubuntu/Debian installations from the .deb and Arch Linux installations from the .pkg.tar.zst.
  • Custom-domain token saving works in a normal logged-in desktop session.

DNS and Link Readiness

For random URLs:

  • Public link should usually answer after a short delay.

For custom domains:

  • Expect possible DNS and Cloudflare routing delay.
  • Refresh after a short wait.
  • Avoid judging custom-domain setup by the first request only.

Force Kill Scenario

This tests an abnormal shutdown:

pkill -9 GhostlyShare.App
pgrep -a cloudflared

Expected:

  • A leftover cloudflared process can remain after a force kill.
  • This is different from normal close behavior.

Clean up manually if needed:

pkill cloudflared

Clone this wiki locally