Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
711 commits
Select commit Hold shift + click to select a range
1f3d361
Fixed: Fix termux app restarting on samsung dex version < 3.0 when sw…
agnostic-apollo Jan 22, 2022
3898ebd
Changed: Rename UriUtils getUriFilePath() to getUriFilePathWithFragme…
agnostic-apollo Jan 22, 2022
b435d94
Fixed: Do not open null or empty file paths passed to TermuxOpenReceiver
agnostic-apollo Jan 22, 2022
a3cd058
Update: Remove duplicate log tag prefix from TermuxOpenReceiver
agnostic-apollo Jan 22, 2022
6fea1fb
Changed: Change ShareUtils.openSystemAppChooser() to public
agnostic-apollo Jan 22, 2022
f3f434a
Changed: Rename ShareUtils openURL() to openUrl()
agnostic-apollo Jan 22, 2022
6631599
Added: Add support for shared day/night theming across termux apps
agnostic-apollo Jan 22, 2022
2452399
Added: Add explicit exported attribute for app components as required…
agnostic-apollo Jan 23, 2022
81dd113
Docs: Add notice that users should upgrade to v0.118.0 ASAP
agnostic-apollo Jan 24, 2022
4fd48a5
Fixed: Fix termux session shortcuts not working after TermuxActivity …
agnostic-apollo Jan 27, 2022
172a75e
Changed: Do not recreate TermuxActivity enabled in 6631599f when Term…
agnostic-apollo Jan 27, 2022
95d7a15
Docs: Add notice that termux is broken on Android 12
agnostic-apollo Jan 27, 2022
9b5aad9
Fixed: Fix AppShell failsafe env
agnostic-apollo Jan 28, 2022
2a1c5a7
Docs: Fix issue link
agnostic-apollo Jan 28, 2022
a56ed57
Fixed: Fix terminal sessions being re-added if "New Session" shortcut…
agnostic-apollo Feb 5, 2022
622ff4f
Fixed: Fix issue where a colour tint/highlight would be added to the …
agnostic-apollo Feb 5, 2022
b8c3db0
Fixed: Change extra keys and terminal input view background to black
agnostic-apollo Feb 5, 2022
43858df
Fixed: Rename TermuxActivity isOnResumeAfterOnCreate to mIsOnResumeAf…
agnostic-apollo Feb 5, 2022
c567cc3
Fixed: Fix app crash if failed to start TermuxService while in backgr…
agnostic-apollo Feb 5, 2022
f33758c
Fixed: Fix typo from 43858dfb
agnostic-apollo Feb 5, 2022
f8e7ada
Fixed: Fix typo from 43858dfb
agnostic-apollo Feb 5, 2022
a01ff01
Docs: Update matrix invite links
agnostic-apollo Feb 8, 2022
280e284
Docs: Add building bootstrap link
agnostic-apollo Feb 8, 2022
68cdbd6
Added: Add support for getting feature flag values and show MONITOR_P…
agnostic-apollo Feb 12, 2022
270e41f
Update README.md
Nickoriginal Feb 23, 2022
bd00451
Merge pull request #2612 from Nickoriginal/master
agnostic-apollo Feb 24, 2022
6d944b5
Changed: Use application context for SharedProperties
agnostic-apollo Mar 9, 2022
05283bd
Changed: Load termux.properties into a single static app wide TermuxA…
agnostic-apollo Mar 9, 2022
b94dc7e
Changed|Deprecated: Move from shell command background mode to comman…
agnostic-apollo Mar 9, 2022
c3ac30e
Added: Add ic_info and ic_settings
agnostic-apollo Mar 11, 2022
760ae78
Docs: Add termux apps vulnerability disclosure post links to README
agnostic-apollo Mar 11, 2022
792c33c
Fixed: Fix `PermissionUtils.requestPermissions()` not requesting mult…
agnostic-apollo Mar 15, 2022
14c5fc7
Fixed: Suppress warnings for requiring android 11 to request `MANAGE_…
agnostic-apollo Mar 15, 2022
021cb60
Added: Add `TERMUX_API_APT_*` constants
agnostic-apollo Mar 15, 2022
9a65aa4
Fixed: Do not add double heading if callingPackageName passed to `Ter…
agnostic-apollo Mar 16, 2022
621545d
Added: Add support for getting termux app and plugin app info only in…
agnostic-apollo Mar 16, 2022
4b07e4f
Added: Add multi process support in `TermuxAppSharedPreferences` sinc…
agnostic-apollo Mar 16, 2022
4dbfc1f
Added: Add support for `onPreLogCrash()` and `onPostLogCrash()` in `C…
agnostic-apollo Mar 16, 2022
5f00531
Changed: Move `com.termux.app.utils.CrashUtils` to `com.termux.shared…
agnostic-apollo Mar 16, 2022
477b36a
Added: Add support for `ACTION_NOTIFY_APP_CRASH` in receiver register…
agnostic-apollo Mar 16, 2022
cc58ddd
Changed: Check crash log file whenever `TermuxActivity` is resumed in…
agnostic-apollo Mar 16, 2022
e0074f2
Fixed: Fix typos
agnostic-apollo Mar 16, 2022
d25f7af
Changed: Share terminal transcript with `ShareUtils`
agnostic-apollo Mar 16, 2022
26e0fa2
Changed: Use thread to setup settings components
agnostic-apollo Mar 16, 2022
93d57f0
Added: Add `~/storage` symlinks for `documents`, `podcasts` and `audi…
agnostic-apollo Mar 16, 2022
dd37873
Fixed: Add `media-*` symlinks to `Android/media` for all storages and…
agnostic-apollo Mar 16, 2022
25d21e9
Fixed: Fix wrong input type selected if toolbar is switched back to e…
agnostic-apollo Mar 17, 2022
5e820ad
Added: Allow users to adjust `$TMPDIR` clear mechanism on termux exit
agnostic-apollo Mar 17, 2022
caa13b7
Fixed: Fix pull request APKs commit hash
agnostic-apollo Mar 18, 2022
87a79a9
Added: Log intents received by and
agnostic-apollo Mar 30, 2022
ce12b8a
Fixed: Fix `Settings.ACTION_*` permission requests result callback
agnostic-apollo Mar 30, 2022
8746db0
chore(gitignore): Remove unused ignore rules for crashlytics (#2683)
hisirdox Apr 2, 2022
ee32ef0
Changed: Maintain terminal session name in `ExecutionCommand.sessionN…
agnostic-apollo Mar 18, 2022
5794ab9
Added|Changed: Add support to switch to existing session instead of c…
agnostic-apollo Mar 18, 2022
9e06bfc
Changed: Bump bootstrap to v2022.04.21-r1
Grimler91 Apr 21, 2022
e597ece
Added: ArgumentTokenizer to com.termux.shared.shell
tareksander Dec 4, 2021
4aca163
Added: termux-am-library to integrate am with Termux.
tareksander Dec 4, 2021
f366db0
Added: LocalFilesystemSocket as an Interface to UNIX sockets in the f…
tareksander Dec 6, 2021
33b88b5
Changed: Set termux-am-library to a tag instead of following the main…
tareksander Dec 6, 2021
3dee2eb
Changed: Allow connections from root o sockets.
tareksander Dec 8, 2021
2851175
Changed: Moved the am socket to PREFIX/var/run/am-socket
tareksander Dec 8, 2021
b025872
Changed: Updated the termux-am-library dependency, because the repo i…
tareksander Dec 8, 2021
007f9cd
Changed: Set socket dir to /data/data/com.termux/files/api/
tareksander Dec 9, 2021
cc981d8
Changed: Move `com.termux.app.utils.PluginUtils` to `com.termux.share…
agnostic-apollo Apr 8, 2022
c095a61
Changed: Rename `TermuxCrashUtils` `sendPluginCrashReportNotification…
agnostic-apollo Apr 8, 2022
02ab832
Changed|Fixed: Do not add empty stacktraces entry to Error log and ma…
agnostic-apollo Apr 17, 2022
5116d88
Changed: Add label parameter to `ExecutionCommand` `getArgumentsLogSt…
agnostic-apollo Apr 17, 2022
6b60adc
Fixed: Do not stop the app if `UncaughtExceptionHandler` implemented …
agnostic-apollo Apr 17, 2022
9c7ec0c
Added: Add functions that can be used by non main threads to set `Cra…
agnostic-apollo Apr 17, 2022
1b9ca91
Added: Add functions to `DataUtils` to get generic, space and tab ind…
agnostic-apollo Apr 17, 2022
58c3d42
Fixed: Log and add to Error the current file type in `FileUtils.delet…
agnostic-apollo Apr 17, 2022
c81d9c3
Added: Add `FileType.SOCKET` support and add `FileUtils.deleteSocketF…
agnostic-apollo Apr 17, 2022
89a08ff
Fixed: Allow `Object` class object to be passed to `ReflectionUtils.i…
agnostic-apollo Apr 17, 2022
6bda7c4
Added|Changed: Add `Logger.logErrorPrivate*()` functions which do not…
agnostic-apollo Apr 17, 2022
bcd8f4c
Added: Add `TERMUX_APPS_DIR_PATH` and `TERMUX_APP.APPS_DIR_PATH` and …
agnostic-apollo Apr 17, 2022
69cc65c
Added: Add functions to `UserUtils` to get user name for user id from…
agnostic-apollo Apr 17, 2022
9a71074
Added: Add function to `ProcessUtils` to get app process name for a p…
agnostic-apollo Apr 17, 2022
5f8a922
Added: Allow users to disable `termux-am` server
agnostic-apollo Apr 17, 2022
2aa7f43
Added|Changed|Fixed: Refactor local socket server implementation and …
agnostic-apollo Apr 17, 2022
53f26c9
Changed: Refactor am socket server
agnostic-apollo Apr 17, 2022
7f7d889
Fixed: Fix proguard removing JNI used methods for release builds
agnostic-apollo Apr 19, 2022
4b3b1a5
Changed: Bump bootstrap to v2022.04.22-r1
agnostic-apollo Apr 22, 2022
b950efe
Added: Add support for `TERMUX_APP_PACKAGE_MANAGER` and `TERMUX_APP_P…
agnostic-apollo Apr 28, 2022
0b4f456
Changed: Write only our open collective to FUNDING.yml
Grimler91 May 23, 2022
6213b7f
Changed: Use double quotes instead of single quotes for all gradle de…
agnostic-apollo Apr 25, 2022
623aaeb
Changed: Bump down `minSdkVersion` from `24` to `21` to restart suppo…
agnostic-apollo Apr 25, 2022
9143ebd
Changed: Enable desugaring support to enable support for new language…
agnostic-apollo Apr 25, 2022
a1719d9
Changed: Bump `termux-am-library` to 2.0.0 that uses `minSdkVersion` …
agnostic-apollo Apr 25, 2022
14e9a8b
Changed: Use float dp parameter instead of int for `ViewUtils.dpToPx(…
agnostic-apollo Apr 25, 2022
fa82962
Added: Add `ViewUtils.pxToDp()`
agnostic-apollo Apr 25, 2022
677a580
Changed: Add general compatibility fixes for `minSdkVerion` `21`
agnostic-apollo Apr 25, 2022
55dcd09
Fixed: Fixed extra keys not showing properly on Android 5
agnostic-apollo Apr 25, 2022
c549988
Fixed: Fix broken javadocs links
agnostic-apollo Apr 25, 2022
4e08f76
Changed: Export correct PATH and also export LD_LIBRARY_PATH for Andr…
agnostic-apollo Apr 25, 2022
ab9b620
Added: Add ResourceUtils to get resource ids from names
agnostic-apollo Apr 25, 2022
5290ce1
Added|Fixed: Add `TermuxNotificationUtils.getTermuxOrPluginAppNotific…
agnostic-apollo Apr 25, 2022
007bef8
Added: Add message to bootstrap error if user installed termux on por…
agnostic-apollo Apr 25, 2022
7677633
Fixed: Catch `UnsatisfiedLinkError` for `local-socket` library
agnostic-apollo Apr 28, 2022
18a1a33
Added: Enable `TERMUX_PACKAGE_VARIANT` `apt-android-5` builds
agnostic-apollo Apr 28, 2022
4d084c0
Changed: Bump android-5 bootstraps to v2022.04.28-r6
Grimler91 Apr 28, 2022
899ef71
Changed: Bump android-7 bootstraps to v2022.04.28-r5
Grimler91 Apr 28, 2022
7b222ba
Changed: Export correct PATH and also export LD_LIBRARY_PATH for `apt…
agnostic-apollo Apr 28, 2022
b04f209
Added: Add TERMUX_DEVS key SHA-256 digest to official signing keys list
agnostic-apollo Apr 29, 2022
30cb848
Fixed: Do not setup plugin and crash notification channel on API `< 2…
agnostic-apollo May 29, 2022
a50387b
Changed: Change termux support email from termuxreports@groups.io to …
agnostic-apollo May 29, 2022
37f08c4
Fixed: Fix `Settings.ACTION_*` permission requests for non-activity c…
agnostic-apollo May 29, 2022
c1c46df
Changed: Change `TERMUX_APP.APPS_DIR_PATH` basename from `termux-app`…
agnostic-apollo May 29, 2022
231ecff
Changed: Do not modify code points for virtual or soft keyboard events
agnostic-apollo May 29, 2022
980bf8f
Added: Add support to get termux app package context with code classl…
agnostic-apollo May 31, 2022
46cfea0
Added: Add support for plugin apps to set TERMUX_APP_PACKAGE_VARIANT …
agnostic-apollo May 31, 2022
d287734
Added|Changed!: Rename `SESSION_NAME` and `SESSION_CREATE_MODE` to `S…
agnostic-apollo Jun 3, 2022
0c22067
Added|Changed: Add termux site url and change donate url to https://t…
agnostic-apollo Jun 4, 2022
d29e20b
Removed: Remove Termux game, root, science, unstable and x11 repo lin…
agnostic-apollo Jun 4, 2022
9547869
Changed: Update funding link to https://termux.dev/donate
agnostic-apollo Jun 4, 2022
b96fcb7
Changed: Update termux twitter to https://twitter.com/termuxdevs
agnostic-apollo Jun 9, 2022
042487c
Changed: Ensure `AppShell` executable is not `null` before trying to …
agnostic-apollo Jun 11, 2022
0fd354a
Changed: Ensure `TermuxSession` executable is `null` if its empty so …
agnostic-apollo Jun 11, 2022
5759411
Added: Add `SELinuxUtils` to get process and file paths security cont…
agnostic-apollo Jun 11, 2022
1788013
Added: Add functions to `PackageUtils` to get `seInfo` and `seInfoUse…
agnostic-apollo Jun 11, 2022
790481b
Added: Add functions to `PackageUtils` to get base APK path of package
agnostic-apollo Jun 11, 2022
f9e9193
Added: Add package `APK_PATH`, `SE_PROCESS_CONTEXT`, `SE_FILE_CONTEXT…
agnostic-apollo Jun 11, 2022
0328d15
Fixed: Fix duplicate logging of `file` word in `FileUtils.copyOrMoveF…
agnostic-apollo Jun 11, 2022
f102ea2
Added|Changed!: Implement new design for shell environment generation…
agnostic-apollo Jun 11, 2022
13d93cc
Added: Add `TermuxShellManager` to manage all termux app wide shells
agnostic-apollo Jun 11, 2022
2998558
Added: Add support in `AppShell` and `TermuxSession` for caller to ad…
agnostic-apollo Jun 11, 2022
29d05cc
Changed: All `ExecutionCommands` not managed by `TermuxShellManager` …
agnostic-apollo Jun 11, 2022
9749360
Added: Add `UnixShellEnvironment.LOGIN_SHELL_BINARIES` variable for c…
agnostic-apollo Jun 11, 2022
afc06cf
Added|Changed!: Add `TermuxAppShellEnvironment` and `TermuxAPIShellEn…
agnostic-apollo Jun 11, 2022
ebdab0e
Changed: Update `TERMUX_APP__AM_SOCKET_SERVER_ENABLED` environment va…
agnostic-apollo Jun 11, 2022
150b1ff
Added: Add `ShellCommandShellEnvironment` and `TermuxShellCommandShel…
agnostic-apollo Jun 11, 2022
f76c20d
Added: Init `TermuxShellEnvironment` at app startup
agnostic-apollo Jun 11, 2022
03e1d14
Added: Write termux shell environment to `/data/data/com.termux/files…
agnostic-apollo Jun 11, 2022
42eee49
Added: Add `SettingsProviderUtils` to get `Setting` global, secure an…
agnostic-apollo Jun 11, 2022
b696303
Added: Add `PhantomProcessUtils` to get phantom processes related set…
agnostic-apollo Jun 11, 2022
c2ddc23
Added: Add `MAX_PHANTOM_PROCESSES` and `DEVICE_CONFIG_SYNC_DISABLED` …
agnostic-apollo Jun 11, 2022
841c41b
Added|Changed: Added `TermuxTerminalSessionServiceClient` and renamed…
agnostic-apollo Jun 13, 2022
79d799a
Fixed: Fix `ExecutionCommand.pid` not being set for first and backgro…
agnostic-apollo Jun 13, 2022
af6ac30
Added: Allow users to disable termux file view and share receivers
agnostic-apollo Jun 13, 2022
e75680a
Changed: Do not re-set component state if current state equals new st…
agnostic-apollo Jun 13, 2022
162469f
Fixed: Fix message dialog button text not showing in day mode due to …
agnostic-apollo Jun 13, 2022
b80126f
Fixed: Catch exceptions if failed to bypass hidden API restrictions
agnostic-apollo Jun 13, 2022
26ff978
Changed: Use black or white cursor color based on terminal background…
agnostic-apollo Jun 14, 2022
4c47f4f
Fixed: Fix CSI parameters parsing like for SGR sequences that start w…
agnostic-apollo Jun 14, 2022
e92a6db
Fixed: Ensure CSI parameter value is not greater than `9999` as per v…
agnostic-apollo Jun 14, 2022
82b1580
Fixed: Fix `termux.properties` reload not working if the properties f…
agnostic-apollo Jun 15, 2022
a2df7d7
Fixed: Fix bootstrap not installing on app install
agnostic-apollo Jun 18, 2022
5fc2b4c
Added: Add `SCROLL` extra key to toggle auto scrolling of terminal to…
agnostic-apollo Jun 18, 2022
f1d411a
Fixed: Fix shared terminal transcript joining back lines
agnostic-apollo Jun 18, 2022
4646aca
Added: Start termux app docs support at https://termux.dev/docs/apps/…
agnostic-apollo Jun 20, 2022
605dd6c
Added: Add check for if Termux has been granted Display Over Apps Per…
agnostic-apollo Jul 5, 2022
2113407
Added: Add multi language i18n support for docs per termux/termux.git…
agnostic-apollo Jul 17, 2022
061dc77
rename dev_keystore.jks to testkey_untrusted.jks
Sep 21, 2022
6c56073
readme: add notes about test keystore
Sep 21, 2022
8c1749e
Added|Changed: Add `AppSharedPreferences` to hold `SharedPreferences`…
agnostic-apollo Sep 28, 2022
63d035c
Changed: Update phantom process links
agnostic-apollo Oct 3, 2022
0c14c29
Changed: Use `ShareUtils` to copy and paste text and prevent potentia…
agnostic-apollo Oct 3, 2022
3f7a939
Added: Add support for `Share selected text` of terminal in long hold…
agnostic-apollo Oct 3, 2022
5bc3d2d
Added: Add `KEY_LAST_PENDING_INTENT_REQUEST_CODE` to `TermuxAPIAppSha…
EduardDurech Oct 12, 2022
3516f19
Update actions/checkout to v3
Sushrut1101 Oct 5, 2022
20dee0e
Update actions/upload-artifact to v3
daywalk3r666 Oct 14, 2022
c8a74dc
feat(KeyHandler): respect modifiers with PgUp and PgDn
thunder-coding Oct 24, 2022
29cf982
Fix GitHub spelling
friederbluemle Oct 27, 2022
cff6cff
Create dependabot.yml
landfillbaby Nov 7, 2022
b1c043d
update WcWidth.java to Unicode 15.0.0
landfillbaby Dec 16, 2022
82f83a2
WcWidth.c: fix typo
landfillbaby Dec 16, 2022
2f5a6f7
WcWidth.c: fix 2nd typo
landfillbaby Dec 16, 2022
c6dce12
Fix GitHub spelling
Young-Lord Jan 13, 2023
2ac7fd1
ci: use termux/upload-release-actions to attach debug builds to new r…
thunder-coding Feb 8, 2023
b800f1c
Added: Add monochrome icon
Sandelinos Sep 16, 2022
9b274f9
Changed: Bump robolectric to 4.9.2
utzcoz Jan 28, 2023
93eafff
Changed: Bump Robolectric to 4.10
utzcoz Apr 16, 2023
c1dca29
[doc](readme)modified the links in file
nikam14 Mar 13, 2023
1240c5c
Revert "[doc](readme)modified the links in file"
2096779623 May 1, 2023
ba1fb85
Changed(README.md): Improved some links to Hyperlinks
nikam14 May 1, 2023
33295de
Changed: Add `PGUP` and `PGDN` extra keys to repetitive keys so that …
agnostic-apollo May 21, 2023
66a9495
Fixed: Fix `SHIFT+PAGE_UP` and `SHIFT+PAGE_DOWN` behaviour to scroll …
agnostic-apollo May 21, 2023
11d8e4f
update readme
May 25, 2023
9d308c2
update readme
Jun 25, 2023
06230f9
Changed: Only show github action builds for pushes to master branch a…
agnostic-apollo Aug 9, 2023
7c262b8
Fixed: Fix toggle toolbar not working due to accidental comment of fu…
agnostic-apollo Aug 14, 2023
55cdef0
Fixed: Allow numbers and hyphens in domain extension for url selector
agnostic-apollo Aug 18, 2023
eef5ac4
Fixed: Fix headings in README.md
agnostic-apollo Aug 22, 2023
32cd8a9
Changed: Remove info from README.md that fornwall is inactive and iss…
Oct 5, 2023
cce78cc
Fixed: Fix dependabot commit format to use convetional commit format
agnostic-apollo Oct 7, 2023
c5b6997
Changed: Bump actions/checkout from 3 to 4
dependabot[bot] Oct 7, 2023
e2f0edf
Chore: Add vim swap files to .gitignore
fornwall Oct 8, 2023
e27f9fa
Changed: Update README with info on how to install termux for android…
agnostic-apollo Oct 19, 2023
6727bbe
Changed: Put GitHub debug keystore information in README in dropdown
agnostic-apollo Oct 19, 2023
c84d480
Changed!: Update commit messages guidelines in README to be more clea…
agnostic-apollo Nov 1, 2023
3b5018b
Changed: Update `Twitter` to `X (Twitter)` in README
agnostic-apollo Nov 2, 2023
e438583
Changed: Bump actions/download-artifact from 3 to 4 (#3736)
dependabot[bot] Jan 1, 2024
8e3a898
Changed: Bump actions/upload-artifact from 3 to 4 (#3735)
dependabot[bot] Jan 1, 2024
882da34
Changed: Bump gradle/wrapper-validation-action from 1 to 2
dependabot[bot] Jan 30, 2024
7b19cd2
Changed: Bump termux/upload-release-action from 4.1.0 to 4.2.0
dependabot[bot] Apr 1, 2024
67f4891
Fixed: Limit max combining characters in TerminalRow to 15 characters…
agnostic-apollo Mar 21, 2024
755b752
Reverted: Revert "ci: use termux/upload-release-actions to attach deb…
agnostic-apollo Apr 16, 2024
2f40df9
Changed: Bump gradle/wrapper-validation-action from 2 to 3
dependabot[bot] Apr 15, 2024
062c977
Added: Request `SET_ALARM` permission to allow broadcasting an intent…
agnostic-apollo Jun 5, 2024
d90be9c
Changed: Update information regarding Google Play in README
fornwall Jun 13, 2024
57e4ef4
Added: Add support for GitHub action builds for `github-releases/**` …
agnostic-apollo Jun 17, 2024
a5de3d3
Fixed: Use current bg color when scrolling with horizontal margins
fornwall Aug 13, 2024
f80b464
Fixed: Improve handling of empty ';' SGR sequences
fornwall Jun 24, 2024
661c375
Make Shift-PgUp and Shift-PgDn scroll by pages rather than lines
joshtriplett Aug 16, 2024
c2d57f2
Added|Fixed: Do not show AutoFill UI on Termux start and add support …
agnostic-apollo Aug 26, 2024
36d811e
Fixed: Parse (but ignore for now) terminal APC sequences
fornwall Sep 17, 2024
438cd73
Added|Changed: Fill `.ws_xpixel` and `.ws_ypixel` in `winsize`
Kruna1Pate1 Nov 16, 2022
a8a69c6
Update latest version in README.md to v0.118.1
Dvd-Znf Jul 25, 2024
4443b65
Fixed: Mark view as important for AutoFill before requesting an AutoFill
AChep Sep 23, 2024
0314259
Added: Terminal CSI reporting of window and cell pixel size
fornwall Sep 26, 2024
6c00f1f
Fixed: Use Canvas.drawTextRun instead of drawText
MatanZ Sep 19, 2022
245158c
Added: Basic MIME type recognition in ContentProvider
TpmKranz Jun 20, 2022
d90e3fb
Fixed: Make ScrollDown escape respect margins
evg-zhabotinsky Sep 25, 2022
8be5333
Fixed: Implement colon separated CSI parameters
fornwall Sep 17, 2024
b84dc70
Added: Add empty and null strings tests for invalid urls to `FileRece…
jasonjyu Oct 20, 2024
fb01127
Fixed: Fix tests added in b84dc703
agnostic-apollo Oct 28, 2024
078eea2
Added: Rename app classes in `TermuxConstants` with `_APP` suffix add…
agnostic-apollo Jan 12, 2025
b0e1dbc
Fixed: Use `TERMUX_STYLING_APP` for `TERMUX_STYLING_ACTIVITY_NAME` as…
agnostic-apollo Jan 12, 2025
52da00e
Fixed: Fix gradle build error if using jdk `17`
agnostic-apollo Jan 12, 2025
d2cd6ac
Changed|Fixed: Bump `org.lsposed.hiddenapibypass:hiddenapibypass` to …
agnostic-apollo Jan 24, 2025
a988383
Fixed: Fully consume unknown CSI sequences containing unsupported par…
krobelus Mar 1, 2025
9ee1c9d
Fixed: Use `openjdk11` for jitpack builds of termux libraries
agnostic-apollo Mar 29, 2025
bc321d0
Changed(README): Set latest version to 0.118.2
agnostic-apollo Mar 29, 2025
4de0caa
Changed|Fixed: Bump `org.lsposed.hiddenapibypass:hiddenapibypass` to …
aviraxp May 21, 2025
da3a0ac
Fixed: Add explicit `serialVersionUID` to `Serializable` classes like…
agnostic-apollo May 22, 2025
c6e2ca7
Changed(README): Set latest version to 0.118.3
agnostic-apollo May 23, 2025
9d2ac14
Fixed: Use `ndkVersion` specified in project properties or `$JITPACK_…
agnostic-apollo May 30, 2025
4a9ad91
Added: Add Automatic Dependency Submission for SBOM
agnostic-apollo Jun 17, 2025
2c1bd65
Added: Enable workflow dispatch trigger for Automatic Dependency Subm…
agnostic-apollo Jun 20, 2025
7bceab8
Added: Add `SECURITY.md`
agnostic-apollo Jun 25, 2025
8174a99
Added: Add GitHub Accelerator sponsors logo
agnostic-apollo Sep 24, 2025
f852dca
Added: Add GitHub Secure Open Source Fund sponsors logo
agnostic-apollo Sep 24, 2025
338fb66
Added: Add NLnet NGI Mobifree sponsors logo
agnostic-apollo Sep 24, 2025
1812a40
Added: Add Clouflare funders logo
agnostic-apollo Sep 24, 2025
8aca6db
Added: Add Warp sponsors logo
agnostic-apollo Sep 24, 2025
4183ffa
Changed: Bump gradle/actions from 4 to 5
dependabot[bot] Oct 1, 2025
edd44d2
Changed: Bump actions/setup-java from 4 to 5
dependabot[bot] Aug 22, 2025
382c970
Fixed: Update gradle wrapper validation in CI
fornwall Jan 4, 2026
c6ec1cb
Changed: Bump actions/checkout from 4 to 6 (#4859)
dependabot[bot] Jan 4, 2026
bcb61c3
Changed: Bump actions/upload-artifact from 4 to 6
dependabot[bot] Dec 12, 2025
53f75a8
Changed: Update gradle, android gradle plugin and dependencies
fornwall Oct 2, 2023
7d87ed7
Fixed: Allow language switch key on external keyboards (#4923)
scarf005 Jan 7, 2026
93c9997
Changed: Remove no longer needed gradle jvm args
fornwall Jan 7, 2026
2ad6112
Changed: bug-report-template: scream that this is not the place to re…
thunder-coding Jan 7, 2026
a1457d1
Fixed: Correct publication of Maven libraries after update of Gradle …
robertkirkman Jan 11, 2026
1937595
Fixed: Revert `desugar_jdk_libs` back to 1.1.5
robertkirkman Jan 12, 2026
5f578d5
Update bootstrap packages from 2022.04.28 to 2026.02.12
fornwall Feb 12, 2026
e50ac9e
Changed: Change README termux.com links to termux.dev
agnostic-apollo Feb 12, 2026
ef4775b
Increase read buffer size from 4KB to 64KB
xJonathanLEI Feb 18, 2026
3f0dec3
Fixed: Remove deprecated attribute extractNativeLibs
fornwall Feb 21, 2026
30ebb2d
Fixed: Fix inverted typo in termcap values for `KEYCODE_PAGE_UP` and …
agnostic-apollo Apr 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
* text=auto
*.bat eol=crlf
*.gradle eol=lf
*.mk eol=lf
*.sh eol=lf
*.bat text eol=crlf
*.gradle text eol=lf
*.mk text eol=lf
*.sh text eol=lf
3 changes: 1 addition & 2 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
patreon: termux
custom: https://paypal.me/fornwall
custom: https://termux.dev/donate
45 changes: 45 additions & 0 deletions .github/ISSUE_TEMPLATE/01-bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: "Bug report"
description: "Create a report to help us improve"
title: "[Bug]: "
labels: ["bug report"]
body:
- type: markdown
attributes:
value: |
**THIS IS A BUG TRACKER OF THE TERMUX APP. IF YOU HAVE ISSUES WITH A PACKAGE INSIDE THE APP, THEN PLEASE OPEN AN ISSUE AT [TERMUX/TERMUX-PACKAGES](https://github.com/termux/termux-packages) INSTEAD.**
If you are unsure if this is a bug with the Termux app itself or any of the packages, kindly open up the bug at [termux/termux-packages](https://github.com/termux/termux-packages) as it's very likely that it belongs there.

Use search before you open an issue to check whether your issue has been already reported and perhaps solved.

Android versions 5.x and 6.x are not supported anymore.

If you have issues installing packages then please see https://github.com/termux/termux-packages/issues/6726.
- type: textarea
attributes:
label: Problem description
description: |
A clear and concise description of what the problem is. You may attach the logs, screenshots, screen video recording and whatever else that will help to understand the issue.

Issues without proper description will be closed without solution.
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce the behavior.
description: |
Please post all necessary commands that are needed to reproduce the issue.
validations:
required: true
- type: textarea
attributes:
label: What is the expected behavior?
- type: textarea
attributes:
label: System information
description: Please provide info about your device
value: |
* Termux application version:
* Android OS version:
* Device model:
validations:
required: true
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/02-feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: "Feature request"
description: "Suggest a new feature for Termux application"
title: "[Feature]: "
labels: ["feature request"]
body:
- type: textarea
attributes:
label: Feature description
description: Describe the feature and why you want it.
validations:
required: true
- type: textarea
attributes:
label: Additional information
description: |
Does another app/terminal emulator have this feature?
Provide links to more background information.
validations:
required: true
35 changes: 0 additions & 35 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Want ask questions about the project?
url: https://github.com/termux/termux-app/discussions
about: Join GitHub Discussions
22 changes: 0 additions & 22 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

9 changes: 9 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily
commit-message:
# Prefix all commit messages with "Changed: "
prefix: "Changed"
84 changes: 84 additions & 0 deletions .github/workflows/attach_debug_apks_to_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: Attach Debug APKs To Release

on:
release:
types:
- published

jobs:
attach-apks:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
package_variant: [ apt-android-7, apt-android-5 ]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

steps:
- name: Clone repository
uses: actions/checkout@v6
with:
ref: ${{ env.GITHUB_REF }}

- name: Build and attach APKs to release
shell: bash {0}
env:
PACKAGE_VARIANT: ${{ matrix.package_variant }}
run: |
exit_on_error() {
echo "$1"
echo "Deleting '$RELEASE_VERSION_NAME' release and '$GITHUB_REF' tag"
hub release delete "$RELEASE_VERSION_NAME"
git push --delete origin "$GITHUB_REF"
exit 1
}

echo "Setting vars"
RELEASE_VERSION_NAME="${GITHUB_REF/refs\/tags\//}"
if ! printf "%s" "${RELEASE_VERSION_NAME/v/}" | grep -qP '^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$'; then
exit_on_error "The versionName '${RELEASE_VERSION_NAME/v/}' is not a valid version as per semantic version '2.0.0' spec in the format 'major.minor.patch(-prerelease)(+buildmetadata)'. https://semver.org/spec/v2.0.0.html."
fi

APK_DIR_PATH="./app/build/outputs/apk/debug"
APK_VERSION_TAG="$RELEASE_VERSION_NAME+${{ env.PACKAGE_VARIANT }}-github-debug"
APK_BASENAME_PREFIX="termux-app_$APK_VERSION_TAG"

echo "Building APKs for 'APK_VERSION_TAG' release"
export TERMUX_APK_VERSION_TAG="$APK_VERSION_TAG" # Used by app/build.gradle
export TERMUX_PACKAGE_VARIANT="${{ env.PACKAGE_VARIANT }}" # Used by app/build.gradle
if ! ./gradlew assembleDebug; then
exit_on_error "Build failed for '$APK_VERSION_TAG' release."
fi

echo "Validating APKs"
for abi in universal arm64-v8a armeabi-v7a x86_64 x86; do
if ! test -f "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_$abi.apk"; then
files_found="$(ls "$APK_DIR_PATH")"
exit_on_error "Failed to find built APK at '$APK_DIR_PATH/${APK_BASENAME_PREFIX}_$abi.apk'. Files found: "$'\n'"$files_found"
fi
done

echo "Generating sha25sums file"
if ! (cd "$APK_DIR_PATH"; sha256sum \
"${APK_BASENAME_PREFIX}_universal.apk" \
"${APK_BASENAME_PREFIX}_arm64-v8a.apk" \
"${APK_BASENAME_PREFIX}_armeabi-v7a.apk" \
"${APK_BASENAME_PREFIX}_x86_64.apk" \
"${APK_BASENAME_PREFIX}_x86.apk" \
> "${APK_BASENAME_PREFIX}_sha256sums"); then
exit_on_error "Generate sha25sums failed for '$APK_VERSION_TAG' release."
fi

echo "Attaching APKs to github release"
if ! hub release edit \
-m "" \
-a "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_universal.apk" \
-a "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_arm64-v8a.apk" \
-a "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_armeabi-v7a.apk" \
-a "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_x86_64.apk" \
-a "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_x86.apk" \
-a "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_sha256sums" \
"$RELEASE_VERSION_NAME"; then
exit_on_error "Attach APKs to release failed for '$APK_VERSION_TAG' release."
fi
131 changes: 119 additions & 12 deletions .github/workflows/debug_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,130 @@ on:
push:
branches:
- master
- android-10
- 'github-releases/**'
pull_request:
branches:
- master
- android-10

jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
package_variant: [ apt-android-7, apt-android-5 ]

steps:
- name: Clone repository
uses: actions/checkout@v2
- name: Build
run: |
./gradlew assembleDebug
- name: Store generated APK file
uses: actions/upload-artifact@v2
with:
name: termux-app
path: ./app/build/outputs/apk/debug
- name: Clone repository
uses: actions/checkout@v6

- name: Setup java 17
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '17'

- name: Build APKs
shell: bash {0}
env:
PACKAGE_VARIANT: ${{ matrix.package_variant }}
run: |
exit_on_error() { echo "$1"; exit 1; }

echo "Setting vars"

if [ "$GITHUB_EVENT_NAME" == "pull_request" ]; then
GITHUB_SHA="${{ github.event.pull_request.head.sha }}" # Do not use last merge commit set in GITHUB_SHA
fi

# Set RELEASE_VERSION_NAME to "<CURRENT_VERSION_NAME>+<last_commit_hash>"
CURRENT_VERSION_NAME_REGEX='\s+versionName "([^"]+)"$'
CURRENT_VERSION_NAME="$(grep -m 1 -E "$CURRENT_VERSION_NAME_REGEX" ./app/build.gradle | sed -r "s/$CURRENT_VERSION_NAME_REGEX/\1/")"
RELEASE_VERSION_NAME="v$CURRENT_VERSION_NAME+${GITHUB_SHA:0:7}" # The "+" is necessary so that versioning precedence is not affected
if ! printf "%s" "${RELEASE_VERSION_NAME/v/}" | grep -qP '^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$'; then
exit_on_error "The versionName '${RELEASE_VERSION_NAME/v/}' is not a valid version as per semantic version '2.0.0' spec in the format 'major.minor.patch(-prerelease)(+buildmetadata)'. https://semver.org/spec/v2.0.0.html."
fi

APK_DIR_PATH="./app/build/outputs/apk/debug"
APK_VERSION_TAG="$RELEASE_VERSION_NAME-${{ env.PACKAGE_VARIANT }}-github-debug" # Note the "-", GITHUB_SHA will already have "+" before it
APK_BASENAME_PREFIX="termux-app_$APK_VERSION_TAG"

# Used by attachment steps later
echo "APK_DIR_PATH=$APK_DIR_PATH" >> $GITHUB_ENV
echo "APK_VERSION_TAG=$APK_VERSION_TAG" >> $GITHUB_ENV
echo "APK_BASENAME_PREFIX=$APK_BASENAME_PREFIX" >> $GITHUB_ENV

echo "Building APKs for 'APK_VERSION_TAG' build"
export TERMUX_APP_VERSION_NAME="${RELEASE_VERSION_NAME/v/}" # Used by app/build.gradle
export TERMUX_APK_VERSION_TAG="$APK_VERSION_TAG" # Used by app/build.gradle
export TERMUX_PACKAGE_VARIANT="${{ env.PACKAGE_VARIANT }}" # Used by app/build.gradle
if ! ./gradlew assembleDebug; then
exit_on_error "Build failed for '$APK_VERSION_TAG' build."
fi

echo "Validating APKs"
for abi in universal arm64-v8a armeabi-v7a x86_64 x86; do
if ! test -f "$APK_DIR_PATH/${APK_BASENAME_PREFIX}_$abi.apk"; then
files_found="$(ls "$APK_DIR_PATH")"
exit_on_error "Failed to find built APK at '$APK_DIR_PATH/${APK_BASENAME_PREFIX}_$abi.apk'. Files found: "$'\n'"$files_found"
fi
done

echo "Generating sha25sums file"
if ! (cd "$APK_DIR_PATH"; sha256sum \
"${APK_BASENAME_PREFIX}_universal.apk" \
"${APK_BASENAME_PREFIX}_arm64-v8a.apk" \
"${APK_BASENAME_PREFIX}_armeabi-v7a.apk" \
"${APK_BASENAME_PREFIX}_x86_64.apk" \
"${APK_BASENAME_PREFIX}_x86.apk" \
> "${APK_BASENAME_PREFIX}_sha256sums"); then
exit_on_error "Generate sha25sums failed for '$APK_VERSION_TAG' release."
fi

- name: Attach universal APK file
uses: actions/upload-artifact@v6
with:
name: ${{ env.APK_BASENAME_PREFIX }}_universal
path: |
${{ env.APK_DIR_PATH }}/${{ env.APK_BASENAME_PREFIX }}_universal.apk
${{ env.APK_DIR_PATH }}/output-metadata.json

- name: Attach arm64-v8a APK file
uses: actions/upload-artifact@v6
with:
name: ${{ env.APK_BASENAME_PREFIX }}_arm64-v8a
path: |
${{ env.APK_DIR_PATH }}/${{ env.APK_BASENAME_PREFIX }}_arm64-v8a.apk
${{ env.APK_DIR_PATH }}/output-metadata.json

- name: Attach armeabi-v7a APK file
uses: actions/upload-artifact@v6
with:
name: ${{ env.APK_BASENAME_PREFIX }}_armeabi-v7a
path: |
${{ env.APK_DIR_PATH }}/${{ env.APK_BASENAME_PREFIX }}_armeabi-v7a.apk
${{ env.APK_DIR_PATH }}/output-metadata.json

- name: Attach x86_64 APK file
uses: actions/upload-artifact@v6
with:
name: ${{ env.APK_BASENAME_PREFIX }}_x86_64
path: |
${{ env.APK_DIR_PATH }}/${{ env.APK_BASENAME_PREFIX }}_x86_64.apk
${{ env.APK_DIR_PATH }}/output-metadata.json

- name: Attach x86 APK file
uses: actions/upload-artifact@v6
with:
name: ${{ env.APK_BASENAME_PREFIX }}_x86
path: |
${{ env.APK_DIR_PATH }}/${{ env.APK_BASENAME_PREFIX }}_x86.apk
${{ env.APK_DIR_PATH }}/output-metadata.json

- name: Attach sha256sums file
uses: actions/upload-artifact@v6
with:
name: ${{ env.APK_BASENAME_PREFIX }}_sha256sums
path: |
${{ env.APK_DIR_PATH }}/${{ env.APK_BASENAME_PREFIX }}_sha256sums
${{ env.APK_DIR_PATH }}/output-metadata.json
Loading