Software is packaged under APT, and whilst the package selection is markedly less than, say, Debian (roughly 70k distinct packages last I checked), there are now several thousand available packages, plus more available through Python, Ruby, Perl, and Node.js package managers (and probably others).
You're still subject to Android limitation:
- No general filesystem access outside Termux's and specifically-shared areas.
- Very limited file permissions options unless rooted.
- No privilege escalation unless you've rooted your device.
- Android's mysterious and quite frequently annoying app process management killing off sessions with no discernible rhyme or reason, let alone owner-based control.
But you'll get all the standard base shell utilities, scripting and programming environments, a selection of networking tools (which function again depends in part on whether your device is or isn't rooted), editors, and even a number of servers, though typically running on high-numbered (unprivileged) ports. There's also a slew of tools for interacting with Android itself, including clipboard, screen brightness, wifi, flashlight (if available), "toasts" (alerts/messages), and more.
Termux has long been the one Android app Which Does Not Precisely and Exactly Suck. It was the first app I found which made the OS vaguely useful to me rather than a captured walled-garden toy.