پیش‌نویس:ترموکس (Termux)

از ویکی‌پدیا، دانشنامهٔ آزاد
ترمکس
نویسنده اصلی فردریک فورنوال
انتشار اولیه 30 مه 2015؛ 8 سال پیش  (2015-05-30  
آزاد شدن ثابت
0.118.0 [۱] (7 ژانویه 2022؛ 2 سال پیش (7 ژانویه 2022)  )  Edit this on Wikidata
مخزن https://github.com/termux/termuch-app
نوشته شده در C="cx-link" data-linkid="48" href="./Java_(programming_language)" rel="mw:WikiLink" title="Java (programming language)">جاوا C، C++
سیستم عامل اندروید
پلتفرم x86-64, ARM64, i686, ARMv7
اندازه 101 مگابایتMB
نوع شبیه ساز ترمینال، رابط خط فرمان
مجوز فقط GPLv3
وب سایت termux.com Edit this on Wikidata

ترمکس یک شبیه‌ساز ترمینال رایگان و منبع باز برای اندروید است که امکان اجرای محیط لینوکس را در دستگاه اندروید فراهم می‌کند. ترمکس به طور خودکار یک سیستم پایه حداقل را نصب می‌کند و بسته‌های اضافی با استفاده از مدیر بسته‌ها به صورت Debian در دسترس هستند.

اکثر دستورات موجود در بش لینوکس در Termux و همچنین دستورات Bash ساخته شده در دسترس هستند. دستورات دیگری نیز وجود دارند، مانند Zsh و tcsh.

خلاصه[ویرایش]

بسته‌ها با استفاده از اندروید NDK ترکیب می‌شوند و دارای پیچ‌های سازگاری هستند تا آنها را در اندروید کار کنند. از آنجا که تمام فایل‌ها در دایرکتوری برنامه نصب شده‌اند، ریشه‌سازی مورد نیاز نیست.

بیش از هزار بسته در دسترس است و کاربران می توانند درخواست های جدیدی را ارسال کنند. C++ به عنوان گزینه‌ای دیگر مورد استفاده قرار می‌گیرد و بسته‌ها می‌توانند از منابع مختلف جمع‌آوری شوند. این به این معناست که Termux از ابزارهای متنوعی برای ساخت استفاده می‌کند، از جمله CMake، Meson، GNU Autotools، و سازندگان مختلف برای زبان‌های برنامه‌نویسی مانند C++، Rust، Go، Swift و زبان‌های دیگر پشتیبانی می‌کند. همچنین، Termux قابلیت نصب مترجمان برای زبان‌هایی مانند Ruby، Python و JavaScript را نیز دارا است.

ویم و نانو متن مبتنی بر ترمینال مانند Emacs و Vim می‌توانند در Termux نصب شوند. همچنین، امکان اجرای برنامه‌های گرافیکی GUI در Termux با استفاده از یک سرور VNC و نصب یک محیط دسکتاپ (مانند Xfce، LXQt، MATE) یا مدیر پنجره نیز وجود دارد.

رابط کاربری[ویرایش]

رابط کاربری Termux به نسبت ساده است و تنها ردیف کلیدهای اضافی و خروجی ترمینال را نمایش می‌دهد. طرح رنگ و قلم متن را می‌توان از طریق Termux: Styling تغییر داد.

ردیف کلیدهای اضافی نیز قابل سفارشی‌سازی است. کاربران می‌توانند با ویرایش فایل ‎~/.termux/termux.properties‎، کلیدهای عملکردی بیشتر و کنترل‌های بیشتری را اضافه کنند. این کار به دقت و

ترموکس (Termux) از پشتیبانی موس/لمس برخوردار است که می‌توان از آن برای تعامل با برنامه‌هایی مانند htop و دیگر برنامه‌های مبتنی بر ncurses استفاده کرد. امکان اسکرول کردن با انجام حرکت بالا یا پایین در بافر ترمینال وجود دارد.

پیکربندی[ویرایش]

کاربران با ویرایش فایل ~/.termux/termux.properties می‌توانند ترموکس را پیکربندی کنند.

افزونه ها[ویرایش]

Termux also includes 7 add-ons:

  • Termux:API: قابلیت های اندروید را به برنامه های CLI نشان می دهد
  • اصطلاح:استایلینگ: اجازه می دهد رنگ و فونت ترمینل را تغییر دهد
  • Termux:Boot: دستورات Termux را در زمان شروع اجرا می کند
  • Termux:GUI: اجازه می دهد تا برخی از برنامه های Termux با استفاده از منابع پیش فرض اندروید GUI داشته باشند؛ با برنامه های X11 / Wayland کار نمی کند
  • Termux:Widget: اجازه می دهد کاربران در یک ویجت اختصاصی یا میانراه در صفحه اصلی اسکریپت اجرا کنند
  • Termux:فلوت: جلسه ترمینل را در پنجره شناور اجرا می کند
  • ترمکس:Tasker: Tasker را با Termux ادغام می کند

افزونه‌ها باید از همان منبعی که برنامه از آن استفاده می‌کند نصب شوند تا از همان شناسه کاربری استفاده شود.

تاریخ[ویرایش]

ترموکس (Termux) در ابتدا در سال 2015 منتشر شد. پشتیبانی از درخواست‌ها و ویژگی‌ها از طریق ارسال مسائل در GitHub به مخزن این اپلیکیشن افزوده شد. همچنین، افراد می‌توانند با اضافه کردن ویژگی‌ها و بسته‌های جدید به این پروژه کمک کنند. این امکان برای ارتقاء و بهبود پلتفرم فراهم شده است.

در ژانویه 2020، تیم توسعه Termux پشتیبانی از دستگاه‌های دارای اندروید 5 و 6 را متوقف کرد و اندروید نسخه 7 را به حداقل سیستم عامل مورد نیاز تبدیل کرد.

نسخه Termux v0.101 آخرین نسخه‌ای بود که در فروشگاه Google Play به‌روزرسانی شد. از نوامبر ۲۰۲۰، Google Play اجرای باینری‌ها در دایرکتوری‌های برنامه‌های خصوصی را که به API level 29 هدف گیری کرده‌اند متوقف کرده است. به گفته Google:

برنامه های غیرقابل اعتماد که هدف اندروید 10 هستند نمی توانند exec() () را در فایل های موجود در دایرکتوری اصلی برنامه درخواست کنند. این اجرای فایل ها از دایرکتوری اصلی برنامه های قابل نوشتن یک نقض W^X است. برنامه ها باید فقط کد دوگانه ای را که در فایل APK یک برنامه گنجانده شده است بارگذاری کنند. [۲]

  1. "Release 0.118.0". 7 January 2022. Retrieved 24 October 2022.
  2. "Behavior changes: apps targeting API 29+". Android Developers (به انگلیسی). Retrieved 2021-12-01.