New App - Script Runner for Termux

  • The app complies with the inclusion criteria.
  • The app is not already listed in the repo or issue tracker.
  • The app has not already been requested
  • The upstream app source code repo contains the app metadata (summary/description/images/changelog/etc) in a Fastlane or Triple-T folder structure
  • The original app author has been notified, and does not oppose the inclusion.
  • Optionally donated to support the maintenance of this app in F-Droid.

This issue tracker is meant for anyone to get an automated review to start the process of getting an app included. Opening issues here does not guarantee that the app will be reviewed or packaged. If you are looking to submit an app to F-Droid, please open an merge request instead.

The first step is to find the app's Application ID. This is usually the same as the app's Package Name. You will find it in files called AndroidManifest.xml or build.gradle most of the time. You can also see it in the URLs for the app's page in various app stores. Write it here:

APPLICATION ID: io.github.swiftstagrime.termuxrunner

Below is a template "metadata file" to fill out, it has only the required fields. F-Droid uses this file to build and publish the app. Build Metadata Reference documents all available options. Add values after the colon

# Categories (one per line, each starting with a space and a minus), chosen from the
# official list: https://f-droid.org/docs/Build_Metadata_Reference/#Categories
Categories:
 - Development

# the one license that the whole app is available under, use
# https://spdx.org/licenses/ short identifiers, must be
# floss-compatible FSF and/or OSI approved.
License: GPL-3.0-or-later

# You can provide details on how to contact the author. These are optional, but
# nice to have.
AuthorName: SwiftStagRime
AuthorEmail: lapukhinaa101@gmail.com

# A URL for the project's website, and to the source code repository to visit
# using a web browser. WebSite is optional.
SourceCode: https://github.com/SwiftStagRime/ScriptRunner_for_Termux

# A link to the issue tracker where bugs are reported
IssueTracker: https://github.com/SwiftStagRime/ScriptRunner_for_Termux/issues

# Name of the application
AutoName: Script Runner for Termux

# Repository details to be used by VCS (Version Control Systems)
# git, git-svn, svn, hg or bzr
RepoType: git

# source code repo URL (HTTPS required)
Repo: https://github.com/SwiftStagRime/ScriptRunner_for_Termux

Why do you want this app added to F-Droid:

We heard all the reasons before, but we are open for new ones too 😄

Summary:

A secure Android bridge for managing, writing and executing scripts via Termux

Description:

Requires Termux to be installed to execute scripts.

A secure Android bridge for managing and executing scripts via Termux. This app allows you to automate tasks, manage environment variables, and create home screen shortcuts for your favorite scripts with a focus on security and ease of use.

Features:

  • Integrated Script Editor: Write and modify scripts directly within the app.
  • Flexible Execution: Support for background execution or interactive Termux sessions.
  • Highly Configurable:
    • Support for any file extension.
    • Custom prefix commands and arguments.
    • Environment variable management.
    • Up to 5 tiles for ease of access, as well as a master tile.
    • Addition of runtime parameters, either with text, or you own presets
  • Customization: Personalize your script shortcuts with custom icons.
  • Data Portability: Full support for importing and exporting your script library(now with sripts themself and not just my json DTOs parsing)
  • Experimental !!! Support for script monitoring for auto-restarting them if they were killed by system. They are not restarted if they finished themself.

Security First

I know that scripts often handle sensitive information—whether it's API keys in environment variables or private logic.

  • Encrypted Storage: All script data and configurations are stored in an encrypted database using SQLCipher.

Setup & Onboarding

Small onboarding is present for easier setup. Note on Permissions: During setup, you will be asked to grant the com.termux.permission.RUN_COMMAND permission. While the system warning may look intimidating, this is the standard and necessary way for third-party apps to securely send commands to Termux.

Compatibility

  • Minimum SDK: 24 (Android 7.0)
  • Target SDK: 36 (Android 16)
  • Xiaomi / MIUI / HyperOS: Specific fixes are included to handle the unique way these systems manage shortcut permissions.
  • Other OEMs: If shortcuts do not appear, please manually check your "Background Start" or "Shortcut" permissions in your system settings, NOTE that some flavour might reject the permission later and not send exception to the app, sadly can't do much here.

Current Status

This project is currently in early development.

  • Testing: Tested various extensions, and all works as expected
  • Documentation: Detailed code description is currently under construction.
  • Translation: En and Ru are made by me, everything else is AI. You can always switch in settings or during onboarding
  • Stability: While functional, you may encounter edge cases. I recommend keeping backups of vital scripts using the built-in export feature. Also, BasicTextField starts lagging while typing at around 177K characters on Snapdragon 7s gen2, Snapdragon 8 gen3 does not have the same expirence. I have tested and linenumbergutter has no effect on perfomance, so it might be the internal implementation. I don't want to move to other ways of displaying stuff, because I will loose stylo support on my tablet

Contributing

Contributions, bug reports, and feature requests are welcome! Since the app is in its early stages, feedback on how it handles different script types or OS flavors is especially valuable. This project is currently in early development.

.

Edited by SwiftStagRime