aniketpant / droidfiles

droidfiles

My Termux setup on Android, rebuilt by one script.

privateandroidshelltermux
Role
Machine setup — for this phone
Runs on
Termux on Android
Built with
Bash, with shell tests

01Background

This phone is my main machine. A Termux reinstall used to mean remembering which packages, aliases and settings I had added.

This repository is that list: the packages I install on purpose, the dotfiles I want back, and the Pi Pocket drop-ins. The agent configuration is in botfiles.

02Shape

packages.txt

Packages installed on purpose; dependencies are left out

bootstrap.sh

Updates package lists, installs packages.txt, runs install.sh

install.sh

Links home/* into $HOME, after a backup

home/.bashrc

History, aliases, EDITOR, node heap size

home/bin/

Executables, including the Pi Pocket supervisor

pi-pocket/extensions/

Wake lock, classifier, spec gate, research

test/run.sh

Shell tests, run in a temporary home directory

03Design ideas

Restore in one run

bootstrap.sh installs the packages from packages.txt, then install.sh links the dotfiles back into place. A Termux reinstall takes minutes.

Backup before replacing

A real file that differs from the repository copy is moved to ~/.droidfiles-backup/ under a timestamp before it is replaced. An existing symlink, or a file that already matches, is replaced with no backup.

Symlinks, except where Android refuses them

Termux:Widget and Termux:Boot resolve symlinks and refuse a script whose real path is outside their folders. Executables stay in home/bin, and install.sh writes the two wrappers as real files.

Hand-kept package list

pkg has no installed-on-purpose flag, so packages.txt is maintained by hand. It lists what I chose to install, never dependencies.

The repository is private; this page is its public summary. Skills, prompts and adapters are in botfiles. No secrets are in this repository.