Skip to content

Instantly share code, notes, and snippets.

@gofullthrottle
Created April 26, 2025 07:51
Show Gist options
  • Save gofullthrottle/64b08240e4c480ff6dd7de53191b8eb3 to your computer and use it in GitHub Desktop.
Save gofullthrottle/64b08240e4c480ff6dd7de53191b8eb3 to your computer and use it in GitHub Desktop.
Rapid deploy script for building a lightweight mobile offensive platform using Cloud Mobile C8 + Kali NetHunter Rootless. Automates F-Droid setup, Termux prep, SD card provisioning (exFAT), app data rerouting to external storage, and optional XFCE GUI with VNC access. Designed for minimal footprint, maximum flexibility, and fast field deployment.
#!/data/data/com.termux/files/usr/bin/bash
# Cloud Mobile C8 Full Setup Script
# Variables
FDROID_URL="https://f-droid.org/F-Droid.apk"
UUID="$(ls /storage/ | grep -v 'emulated\|self')" # Attempt to auto-detect SD UUID
# Helper Functions
function pause() {
read -p "Press [Enter] key to continue after completing manual steps..."
}
# Step 1: Download and Install F-Droid
echo "[*] Downloading F-Droid APK..."
wget -O ~/F-Droid.apk "$FDROID_URL"
echo "[!] Please manually install F-Droid.apk now (via File Manager > Downloads > tap APK)"
pause
# Step 2: Install Termux via F-Droid
echo "[*] Install Termux from inside F-Droid app (search Termux, install latest version)"
pause
# Step 3: Prepare Termux Environment
echo "[*] Updating Termux..."
pkg update && pkg upgrade -y
pkg install wget curl tsu git -y
# Step 4: Format SD Card (exFAT)
echo "[*] Attempting to format the SD card ($UUID) as exFAT..."
if [ -n "$UUID" ]; then
pkill -f "$UUID" # Attempt to unmount if mounted
mkfs.exfat "/dev/block/vold/$UUID" && echo "[+] SD card formatted successfully!" || echo "[!] Could not format automatically — format manually in Settings > Storage."
else
echo "[!] No SD card UUID detected — you may need to manually format the SD card."
fi
pause
# Step 5: Prepare Directories
echo "[*] Creating folders on SD card..."
mkdir -p "/storage/$UUID/NetHunterLogs"
mkdir -p "/storage/$UUID/WiGLEData"
# Step 6: Move existing data if any (optional)
echo "[*] Moving existing app data if available..."
mv /data/data/net.wigle.wigleandroid/files/* "/storage/$UUID/WiGLEData/" 2>/dev/null
mv /data/data/com.offsec.nethunter/files/logs/* "/storage/$UUID/NetHunterLogs/" 2>/dev/null
# Step 7: Symlink
echo "[*] Creating symlinks..."
ln -s "/storage/$UUID/WiGLEData" /data/data/net.wigle.wigleandroid/files
ln -s "/storage/$UUID/NetHunterLogs" /data/data/com.offsec.nethunter/files/logs
# Step 8: Install NetHunter Rootless
echo "[*] Installing NetHunter Rootless..."
wget -O ~/install-nethunter-termux https://offs.ec/2MceZWr
chmod +x ~/install-nethunter-termux
./install-nethunter-termux
pause
# Step 9: Setup Aliases
echo "[*] Setting up alias 'nh' for quick NetHunter launch..."
echo 'alias nh="nethunter"' >> ~/.bashrc
source ~/.bashrc
# Step 10: Optional GUI Setup
read -p "Would you like to install the NetHunter GUI with XFCE? (y/n): " gui_choice
if [[ "$gui_choice" == "y" ]]; then
echo "[*] Setting up NetHunter GUI..."
nh
apt update && apt install kali-desktop-xfce tightvncserver -y
vncserver :1
echo -e '#!/data/data/com.termux/files/usr/bin/bash\nvncserver :1' > ~/start-vnc
chmod +x ~/start-vnc
echo "[+] GUI setup complete! Install VNC Viewer app and connect to 127.0.0.1:5901."
else
echo "[*] Skipping GUI setup."
fi
echo "[+] All done! Happy hacking."
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment