@mmmbuto/gemini-cli-termux 0.20.2-termux → 0.20.3-termux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -153
- package/bundle/gemini.js +6875 -4009
- package/package.json +6 -14
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# 🤖 Gemini CLI
|
|
1
|
+
# 🤖 Gemini CLI – Termux Edition
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Android/Termux compatible fork of Google Gemini CLI. Installs cleanly on Termux by skipping native modules and adding clipboard detection for Termux.
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@mmmbuto/gemini-cli-termux)
|
|
6
6
|
[](https://www.npmjs.com/package/@mmmbuto/gemini-cli-termux)
|
|
@@ -10,185 +10,65 @@
|
|
|
10
10
|
|
|
11
11
|
## What This Is
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
compatibility.
|
|
13
|
+
Temporary compatibility fork of `google-gemini/gemini-cli` for Android Termux.
|
|
15
14
|
|
|
16
|
-
|
|
15
|
+
- Tracks upstream regularly.
|
|
16
|
+
- Minimal patches only: Termux clipboard env fix, native modules marked optional.
|
|
17
|
+
- Bundled for ARM64/Android.
|
|
18
|
+
- Sunset: once upstream adds Termux support, migrate back to `@google/gemini-cli`.
|
|
17
19
|
|
|
18
|
-
|
|
19
|
-
support. **Once Google merges our fix, this fork will be discontinued** and
|
|
20
|
-
users should migrate to the official `@google/gemini-cli` package.
|
|
21
|
-
|
|
22
|
-
This fork exists **only** as a temporary solution until official Termux support
|
|
23
|
-
is available.
|
|
24
|
-
|
|
25
|
-
### What We Do:
|
|
26
|
-
|
|
27
|
-
✅ **Track official Google Gemini CLI**
|
|
28
|
-
(https://github.com/google-gemini/gemini-cli) ✅ **Apply minimal compatibility
|
|
29
|
-
patches** for Termux-specific issues ✅ **Bundle for Android ARM64** with
|
|
30
|
-
working native module alternatives ✅ **Package as npm** for easy installation
|
|
31
|
-
✅ **Maintain full Apache 2.0 compliance** with Google attribution
|
|
32
|
-
|
|
33
|
-
### What We DON'T Do:
|
|
34
|
-
|
|
35
|
-
❌ **NO new features** ❌ **NO behavior modifications** (works exactly like
|
|
36
|
-
upstream) ❌ **NO replacement** of official Gemini CLI
|
|
37
|
-
|
|
38
|
-
### 🔧 Compatibility Patches
|
|
39
|
-
|
|
40
|
-
We only apply patches for issues that:
|
|
41
|
-
|
|
42
|
-
- **Prevent Gemini CLI from working on Termux**
|
|
43
|
-
- **Are not addressed by upstream** (Termux is not officially supported)
|
|
44
|
-
- **Are minimal and well-documented**
|
|
45
|
-
|
|
46
|
-
**Current patches**:
|
|
47
|
-
|
|
48
|
-
- `esbuild.config.js`: Auto-set `TERMUX__PREFIX` for clipboardy detection
|
|
49
|
-
- Skip optional native modules: `keytar`, `node-pty`, `tree-sitter-bash`
|
|
50
|
-
- Build with `--ignore-optional --ignore-scripts` flags
|
|
51
|
-
|
|
52
|
-
See [docs/TERMUX.md](./docs/TERMUX.md) for complete technical details.
|
|
53
|
-
|
|
54
|
-
**Found an issue?** Open an
|
|
55
|
-
[issue](https://github.com/DioNanos/gemini-cli/issues).
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
## 📋 Prerequisites
|
|
20
|
+
## Installation (Termux)
|
|
60
21
|
|
|
61
22
|
```bash
|
|
62
|
-
# Update Termux packages
|
|
63
23
|
pkg update && pkg upgrade -y
|
|
64
|
-
|
|
65
|
-
# Install Node.js
|
|
66
24
|
pkg install nodejs-lts -y
|
|
67
|
-
|
|
68
|
-
# Verify
|
|
69
|
-
node --version # v20+
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
**Requirements:**
|
|
73
|
-
|
|
74
|
-
- Android 7+ (Termux)
|
|
75
|
-
- ARM64 architecture
|
|
76
|
-
- Node.js ≥ 20.0.0
|
|
77
|
-
- ~25MB storage
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
## 📦 Installation
|
|
82
|
-
|
|
83
|
-
### Via npm (Recommended)
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
25
|
npm install -g @mmmbuto/gemini-cli-termux
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### Verify Installation
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
gemini --version
|
|
93
|
-
# Output: 0.20.2-termux
|
|
94
26
|
|
|
95
|
-
gemini --
|
|
96
|
-
# Shows available commands
|
|
27
|
+
gemini --version # expected: 0.20.3-termux
|
|
97
28
|
```
|
|
98
29
|
|
|
99
|
-
|
|
30
|
+
Build from source:
|
|
100
31
|
|
|
101
32
|
```bash
|
|
102
|
-
git clone https://github.com/DioNanos/gemini-cli.git
|
|
103
|
-
cd gemini-cli
|
|
33
|
+
git clone https://github.com/DioNanos/gemini-cli-termux.git
|
|
34
|
+
cd gemini-cli-termux
|
|
104
35
|
npm install --ignore-optional --ignore-scripts
|
|
105
36
|
npm run build && npm run bundle
|
|
106
37
|
node bundle/gemini.js --version
|
|
107
38
|
```
|
|
108
39
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
## 🚀 Usage
|
|
40
|
+
## Patches
|
|
112
41
|
|
|
113
|
-
|
|
114
|
-
|
|
42
|
+
- Clipboardy: sets `TERMUX__PREFIX` from `PREFIX` on Android.
|
|
43
|
+
- Native modules (`keytar`, `node-pty`, `tree-sitter-bash`) kept optional; install with `--ignore-optional --ignore-scripts`.
|
|
115
44
|
|
|
116
|
-
|
|
117
|
-
# Start interactive mode
|
|
118
|
-
gemini
|
|
45
|
+
## Known Limitations on Termux
|
|
119
46
|
|
|
120
|
-
|
|
121
|
-
|
|
47
|
+
- No PTY (node-pty fails to build) → limited shell integration.
|
|
48
|
+
- No secure keychain → credentials stored in plain config files.
|
|
49
|
+
- Bash parsing without tree-sitter.
|
|
122
50
|
|
|
123
|
-
|
|
124
|
-
gemini -m gemini-2.5-flash
|
|
51
|
+
## Updating
|
|
125
52
|
|
|
126
|
-
|
|
127
|
-
gemini
|
|
53
|
+
```bash
|
|
54
|
+
npm install -g @mmmbuto/gemini-cli-termux@latest
|
|
128
55
|
```
|
|
129
56
|
|
|
130
|
-
|
|
131
|
-
usage guide.
|
|
132
|
-
|
|
133
|
-
---
|
|
134
|
-
|
|
135
|
-
## 📚 Documentation
|
|
57
|
+
## Tests
|
|
136
58
|
|
|
137
|
-
|
|
138
|
-
troubleshooting
|
|
139
|
-
- **[Official Gemini CLI Docs](https://geminicli.com/docs/)** - Full feature
|
|
140
|
-
documentation
|
|
141
|
-
- **[Upstream Repository](https://github.com/google-gemini/gemini-cli)** -
|
|
142
|
-
Google's official repo
|
|
143
|
-
|
|
144
|
-
---
|
|
145
|
-
|
|
146
|
-
## 🔄 Upstream Tracking
|
|
147
|
-
|
|
148
|
-
This fork tracks `google-gemini/gemini-cli` and rebases weekly.
|
|
149
|
-
|
|
150
|
-
- **Current upstream**: `v0.20.0-nightly.20251201.2fe609cb6`
|
|
151
|
-
- **Last sync**: 2025-12-02
|
|
152
|
-
- **Divergent files**: `esbuild.config.js`, `docs/TERMUX.md`, `package.json`,
|
|
153
|
-
`README.md`
|
|
154
|
-
|
|
155
|
-
---
|
|
59
|
+
Smoke suite:
|
|
156
60
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
- **No secure keychain** - Credentials stored in plain text config files
|
|
161
|
-
- **No tree-sitter bash parsing** - Fallback to simpler shell parsing methods
|
|
162
|
-
|
|
163
|
-
All core functionality (AI chat, tools, MCP, extensions) works perfectly.
|
|
164
|
-
|
|
165
|
-
---
|
|
166
|
-
|
|
167
|
-
## 🤝 Contributing
|
|
168
|
-
|
|
169
|
-
This is a **temporary compatibility fork**. For feature requests or general
|
|
170
|
-
bugs, please report to
|
|
171
|
-
[upstream Gemini CLI](https://github.com/google-gemini/gemini-cli/issues).
|
|
172
|
-
|
|
173
|
-
For **Termux-specific issues**, open an
|
|
174
|
-
[issue here](https://github.com/DioNanos/gemini-cli/issues).
|
|
175
|
-
|
|
176
|
-
---
|
|
177
|
-
|
|
178
|
-
## 📄 License
|
|
179
|
-
|
|
180
|
-
Apache License 2.0 - Same as upstream Google Gemini CLI.
|
|
61
|
+
```bash
|
|
62
|
+
npm run test:termux
|
|
63
|
+
```
|
|
181
64
|
|
|
182
|
-
|
|
65
|
+
Checks version, help output, and presence of the Termux clipboard patch inside the bundle.
|
|
183
66
|
|
|
184
|
-
|
|
67
|
+
## Upstream Tracking
|
|
185
68
|
|
|
186
|
-
|
|
69
|
+
- Upstream: https://github.com/google-gemini/gemini-cli
|
|
70
|
+
- Divergent files: `esbuild.config.js`, `docs/TERMUX.md`, `package.json`, `README.md`, `test-gemini/*`
|
|
187
71
|
|
|
188
|
-
##
|
|
72
|
+
## License
|
|
189
73
|
|
|
190
|
-
|
|
191
|
-
- **GitHub Repository**: https://github.com/DioNanos/gemini-cli
|
|
192
|
-
- **Upstream (Google)**: https://github.com/google-gemini/gemini-cli
|
|
193
|
-
- **Latest Release**: https://github.com/DioNanos/gemini-cli/releases/latest
|
|
194
|
-
- **Upstream PR**: Pending Google review for native Termux support
|
|
74
|
+
Apache 2.0 (same as upstream). See LICENSE.
|