منصوبے کے بارے میں
# TermFold
TermFold ایک Android ایپ ہے جو ٹیبلٹس اور فونز پر مکمل Debian 13 ماحول اور AI کوڈنگ ایجنٹس فراہم کرتی ہے۔ یہ PRoot کے ذریعے حقیقی Linux userland چلاتی ہے (root کی ضرورت نہیں)، Claude Code، Codex، Gemini CLI، OpenCode، Cursor اور Pi جیسے مقبول کوڈنگ ایجنٹس کو سپورٹ کرتی ہے، اور Agent Client Protocol (ACP) بولنے والے ایجنٹس کے لیے native چیٹ انٹرفیس پیش کرتی ہے۔
## اہم خصوصیات
- **مکمل Debian 13 ماحول**: ایک بار سیٹ اپ کے بعد `apt` سے پیکجز انسٹال کریں، Python، Node 22، git، build tools، SSH اور SCP استعمال کریں۔
- **حقیقی Linux پروجیکٹس**: پروجیکٹس Debian کی اپنی اسٹوریج (`~/projects`) میں رہتے ہیں، اس لیے symlinks، permissions، executables، git، npm اور virtualenvs بالکل PC کی طرح کام کرتے ہیں۔
- **AI کوڈنگ ایجنٹس**: ٹرمینل میں `claude`، `codex`، `gemini`، `opencode`، `pi` یا `qwen` چلائیں؛ ہر ایک پہلی بار استعمال پر خود کو انسٹال کرتا ہے۔ ACP بولنے والے ایجنٹس کو native چیٹ UI ملتا ہے جس میں Markdown rendering، tool calls، permission prompts اور model/reasoning/mode picker شامل ہیں۔
- **بلٹ اِن فائل مینیجر**: فائلیں browse، search، sort، create، rename، copy، move اور delete کریں۔ کوڈ CodeMirror ایڈیٹر میں کھلتا ہے جس میں 40+ زبانیں، search، undo اور Ctrl+S شامل ہیں۔ تصاویر zoomable viewer میں کھلتی ہیں جس میں clipboard copy موجود ہے۔
- **فائل import/export**: فائلیں یا فولڈرز اپلوڈ کریں، کسی بھی ایپ سے TermFold کو share کریں، device فولڈرز میں export کریں، اور Android کے file picker میں ظاہر ہوں۔
- **مربوط براؤزر**: dev servers (`localhost:5173`)، پروجیکٹ صفحات یا کوئی بھی سائٹ چیٹ کے ساتھ preview کریں۔ ایجنٹس بھی براؤزر استعمال کر سکتے ہیں، حقیقی taps اور keys کے ساتھ، MCP tools یا `termfold-browser` کمانڈ کے ذریعے۔
- **سیشن persistence**: چیٹس اپنا آخری سیشن دوبارہ کھولتی ہیں، `/resume` پچھلے سیشنز کی فہرست دیتا ہے، اور ایجنٹس notifications کے ساتھ پس منظر میں چلتے رہتے ہیں۔
- **ٹیبلٹ کے لیے بہتر**: مکمل چوڑائی والی Ctrl/Alt/Esc/Tab/arrow key rows، physical keyboard support، JetBrains Mono font، pinch to zoom۔
- **کچھ بھی paste کریں**: چیٹ یا ٹرمینل میں تصاویر paste کریں (Claude Code اور Codex کے لیے file paths کے طور پر)، طویل pastes `.txt` attachments بن جاتے ہیں۔
- **نہ root، نہ Termux، نہ اکاؤنٹ**: سب کچھ ایپ کے اندر چلتا ہے۔ Apache-2.0 کے تحت open source۔
## انسٹالیشن
1. تازہ ترین release سے `.apk` ڈاؤن لوڈ کریں اور انسٹال کریں۔
2. TermFold کھولیں اور پروجیکٹ شروع کرنے کے لیے **+** پر ٹیپ کریں (خالی، Git سے cloned، یا imported)۔
3. **Shell** کھولیں — پہلی بار سیٹ اپ Debian ڈاؤن لوڈ کرتا ہے (چند سو MB، ایک بار)۔
4. `claude`، `codex`، `gemini`، `opencode` یا `pi` ٹائپ کریں، یا native چیٹ کے لیے **ACP** سیشن شامل کریں۔ Shell میں ایک بار sign in کریں۔
تقاضے: arm64 (زیادہ تر ڈیوائسز) یا x86_64 پر Android 8.0+، چند GB خالی جگہ۔
## یہ کیسے کام کرتا ہے
TermFold PRoot (userspace chroot) استعمال کرتی ہے تاکہ Debian 13 base image کو app storage میں unpack کرے، جس سے persistent Linux ماحول ملتا ہے۔ پروجیکٹس `~/projects` میں عام directories ہیں۔ ایک preloaded library (`/etc/ld.so.preload`) Android کی hard-link پابندیوں کو سنبھالتی ہے، جس سے dpkg، npm، git، pip اور tar بغیر تبدیلی کے کام کرتے ہیں۔ ایپ پلیٹ فارم کی پابندیوں (W^X، seccomp filters، ممنوع hard links، کوئی CA bundle نہیں) کا حل نکالتی ہے جو `docs/SHELL-NOTES.md` میں دستاویزی ہیں۔
## بلڈ کرنا
```bash
py -3 tools/fetch-shell-runtime.py # PRoot اور Debian images
py -3 tools/fetch-ca-bundle.py # CA bundle
./gradlew :app:assembleDebug
```
Release builds اس وقت signed ہوتے ہیں جب `termfold-release.jks` موجود ہو اور `termfold.storePassword` سیٹ ہو۔ ٹیسٹس: `./gradlew :app:testDebugUnitTest`۔
## حدود
- Architecture CPU سے مماثل ہونی چاہیے (arm64 یا x86_64)؛ کوئی emulation نہیں۔
- VM نہیں: کوئی `systemd`، kernel modules یا raw sockets نہیں۔
- ایپ uninstall کرنے یا app data clear کرنے سے Debian ماحول اور پروجیکٹس حذف ہو جاتے ہیں (کاپیاں رکھنے کے لیے git پر push کریں یا export کریں)۔
## لائسنس
Apache License 2.0۔ Third-party components (PRoot، talloc، Termux terminal libraries، Debian base image، fonts) اپنے اپنے لائسنسوں کے تحت؛ `THIRD_PARTY_NOTICES.md` دیکھیں۔
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.