Termux adalah aplikasi terminal Android dan lingkungan Linux.
Perhatikan bahwa repositori ini ditujukan untuk aplikasi itu sendiri (antarmuka pengguna dan emulasi terminal). Untuk paket yang dapat diinstal di dalam aplikasi, lihat termux/termux-packages.
Cara cepat tentang manajemen paket Termux tersedia di Manajemen Paket. Ini juga memiliki info tentang cara memperbaiki repository is under maintenance or down
saat menjalankan perintah apt
atau pkg
.
Kami mencari pengelola aplikasi Termux Android.
PEMBERITAHUAN: Termux mungkin tidak stabil di Android 12+. OS Android akan mematikan semua proses (hantu) yang lebih besar dari 32 (batasnya adalah untuk semua aplikasi digabungkan) dan juga mematikan semua proses yang menggunakan CPU berlebihan. Anda mungkin mendapatkan pesan [Process completed (signal 9) - press Enter]
di terminal tanpa benar-benar keluar dari proses shell sendiri. Periksa masalah terkait #2366, pelacak masalah, cache hantu, dan dokumen proses kosong dan komentar TLDR ini tentang cara menonaktifkan pemangkasan proses penggunaan CPU palsu dan berlebihan. Halaman dokumen yang tepat akan ditambahkan nanti. Opsi untuk menonaktifkan pembunuhan harus tersedia di Android 12L atau 13, jadi tingkatkan risiko Anda sendiri jika Anda menggunakan Android 11, khususnya jika Anda tidak di-root.
Aplikasi inti Termux dilengkapi dengan aplikasi plugin opsional berikut.
Versi terbaru adalah v0.118.1
.
PEMBERITAHUAN: Sangat disarankan agar Anda memperbarui ke v0.118.0
atau lebih tinggi secepatnya untuk berbagai perbaikan bug, termasuk kerentanan kritis yang dapat dibaca dunia yang dilaporkan di sini. Lihat di bawah untuk informasi mengenai Termux di Google Play.
Termux bisa didapatkan melalui berbagai sumber yang tercantum di bawah ini hanya untuk Android >= 7
dengan dukungan penuh untuk aplikasi dan paket.
Dukungan untuk aplikasi dan paket dihentikan untuk Android 5
dan 6
pada 01-01-2020 di v0.83
, namun dukungan tersebut ditambahkan kembali hanya untuk aplikasi tanpa dukungan apa pun untuk pembaruan paket pada 24-05-2022 melalui sumber GitHub . Periksa di sini untuk detailnya.
File APK dari sumber berbeda ditandatangani dengan kunci tanda tangan berbeda. Aplikasi Termux
dan semua pluginnya menggunakan sharedUserId
com.termux
yang sama sehingga semua APK yang diinstal pada perangkat harus ditandatangani dengan kunci tanda tangan yang sama agar dapat berfungsi bersama sehingga semuanya harus diinstal dari sumber yang sama. Jangan mencoba menggabungkan keduanya, yaitu jangan mencoba memasang aplikasi atau plugin dari F-Droid
dan aplikasi atau plugin lain dari sumber berbeda seperti GitHub
. Android Package Manager juga biasanya tidak mengizinkan instalasi APK dengan tanda tangan berbeda dan Anda akan mendapatkan kesalahan pada instalasi seperti App not installed
, Failed to install due to an unknown error
, INSTALL_FAILED_UPDATE_INCOMPATIBLE
, INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
, signatures do not match previously installed version
, dll. Ini pembatasan dapat dilewati dengan root atau dengan custom rom.
Jika Anda ingin menginstal dari sumber lain, maka Anda harus menghapus semua APK Termux atau aplikasi pluginnya yang ada dari perangkat Anda terlebih dahulu, lalu menginstal semua APK baru dari sumber baru yang sama. Periksa bagian Penghapusan Instalasi untuk detailnya. Anda mungkin juga ingin mempertimbangkan untuk mencadangkan Termux sebelum penghapusan instalasi sehingga Anda dapat memulihkannya setelah menginstal ulang dari sumber Termux yang berbeda.
Dalam paragraf berikut, "bootstrap" mengacu pada paket minimal yang dikirimkan bersama termux-app
itu sendiri untuk memulai lingkungan shell yang berfungsi. Ritsletingnya dibuat dan dirilis di sini.
Aplikasi Termux dapat diperoleh dari F-Droid
dari sini.
Anda tidak perlu mendownload aplikasi F-Droid
(melalui link Download F-Droid
) untuk menginstal Termux. Anda dapat mendownload APK Termux langsung dari situsnya dengan mengklik link Download APK
di bagian bawah setiap bagian versi.
Biasanya diperlukan waktu beberapa hari (atau bahkan seminggu atau lebih) agar pembaruan tersedia di F-Droid
setelah pembaruan dirilis di GitHub
. Rilis F-Droid
dibuat dan diterbitkan oleh F-Droid
setelah mereka mendeteksi rilis GitHub
baru. Pengelola Termux tidak memiliki kendali apa pun atas pembuatan dan penerbitan aplikasi Termux di F-Droid
. Selain itu, pengelola Termux juga tidak memiliki akses ke kunci penandatanganan APK dari rilis F-Droid
, jadi kami tidak dapat merilis sendiri APK di GitHub
yang kompatibel dengan rilis F-Droid
.
Aplikasi F-Droid
sering kali tidak memberi tahu Anda tentang pembaruan dan Anda harus melakukan tindakan geser ke bawah secara manual di tab Updates
aplikasi agar dapat memeriksa pembaruan. Pastikan pengoptimalan baterai dinonaktifkan untuk aplikasi, periksa https://dontkillmyapp.com/ untuk detail tentang cara melakukannya.
Hanya APK universal yang dirilis, yang akan berfungsi pada semua arsitektur yang didukung. Ukuran instalasi APK dan bootstrap adalah ~180MB
. F-Droid
tidak mendukung APK khusus arsitektur.
Aplikasi Termux dapat diperoleh di GitHub
baik dari GitHub Releases
untuk versi >= 0.118.0
atau dari alur kerja GitHub Build Action
. Untuk Android >= 7
, hanya instal varian apt-android-7
. Untuk Android 5
dan 6
, hanya instal varian apt-android-5
.
APK untuk GitHub Releases
akan dicantumkan di bawah tarik-turun Assets
rilis. Ini secara otomatis dilampirkan ketika versi baru dirilis.
APK untuk alur kerja tindakan GitHub Build
akan dicantumkan di bagian Artifacts
pada alur kerja yang dijalankan. Ini dibuat untuk setiap penerapan/pendorongan yang dilakukan pada repositori dan dapat digunakan oleh pengguna yang tidak ingin menunggu rilis dan ingin segera mencoba fitur terbaru atau ingin menguji permintaan penarikan mereka. Perhatikan bahwa untuk alur kerja tindakan, Anda harus masuk ke akun GitHub
agar tautan Artifacts
dapat diaktifkan/dapat diklik. Jika Anda menggunakan aplikasi GitHub
, pastikan untuk membuka tautan alur kerja di browser seperti Chrome atau Firefox yang akun GitHub Anda telah masuk karena browser dalam aplikasi mungkin tidak masuk.
APK untuk keduanya debuggable
dan kompatibel satu sama lain, namun tidak kompatibel dengan sumber lain.
APK universal dan spesifik arsitektur dirilis. Ukuran instalasi APK dan bootstrap adalah ~180MB
jika menggunakan universal dan ~120MB
jika menggunakan arsitektur spesifik. Periksa di sini untuk detailnya.
Peringatan keamanan : File APK di GitHub ditandatangani dengan kunci pengujian yang telah dibagikan dengan komunitas. Ini BUKAN kunci pengembang resmi dan semua orang dapat menggunakannya untuk menghasilkan rilis untuk pengujian sendiri. Berhati-hatilah saat menggunakan Termux GitHub build yang diperoleh di tempat lain kecuali https://github.com/termux/termux-app. Setiap orang dapat menggunakannya untuk memalsukan pembaruan Termux berbahaya yang dapat diinstal melalui build GitHub. Berpikirlah dua kali untuk menginstal build Termux yang didistribusikan melalui Telegram atau media sosial lainnya. Jika perangkat Anda terkena malware, kami tidak dapat membantu Anda.
Kunci tes tidak boleh digunakan untuk meniru @termux dan tetap tidak dapat digunakan untuk ini. Kunci ini tidak kami percayai dan cukup mudah untuk mendeteksi penggunaannya dalam konten buatan pengguna.
Alias name: alias
Creation date: Oct 4, 2019
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=APK Signer, OU=Earth, O=Earth
Issuer: CN=APK Signer, OU=Earth, O=Earth
Serial number: 29be297b
Valid from: Wed Sep 04 02:03:24 EEST 2019 until: Tue Oct 26 02:03:24 EEST 2049
Certificate fingerprints:
SHA1: 51:79:55:EA:BF:69:FC:05:7C:41:C7:D3:79:DB:BC:EF:20:AD:85:F2
SHA256: B6:DA:01:48:0E:EF:D5:FB:F2:CD:37:71:B8:D1:02:1E:C7:91:30:4B:DD:6C:4B:F4:1D:3F:AA:BA:D4:8E:E5:E1
Signature algorithm name: SHA1withRSA (disabled)
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3
Saat ini ada versi Termux yang tersedia di Google Play untuk perangkat Android 11+, dengan penyesuaian ekstensif untuk memenuhi persyaratan kebijakan di sana. Ini sedang dalam pengembangan dan memiliki fungsionalitas dan bug yang hilang (lihat di sini untuk pembaruan status) dibandingkan dengan versi F-Droid yang stabil, itulah sebabnya sebagian besar pengguna yang bisa tetap harus menggunakan versi F-Droid atau GitHub seperti yang disebutkan di atas.
Saat ini, Google Play akan mencoba memperbarui instalasi dari instalasi F-Droid. Pembaruan akan tetap gagal karena sharedUserId telah dihapus. Rilis F-Droid 0.118.1 yang direncanakan akan memperbaikinya dengan menetapkan kode versi yang lebih tinggi daripada yang digunakan untuk aplikasi PlayStore. Sementara itu, untuk mencegah Google Play mencoba mengunduh dan kemudian gagal menginstal rilis Google Play pada instalasi yang sudah ada, Anda dapat membuka halaman aplikasi Termux di Google Play lalu klik tombol opsi 3 titik di kanan atas lalu nonaktifkan Aktifkan tombol pembaruan otomatis. Namun, pembaruan aplikasi Termux akan tetap ditampilkan di daftar pembaruan aplikasi PlayStore.
Jika Anda ingin membantu menguji build Google Play (atau tidak dapat menginstal Termux dari sumber lain), ketahuilah bahwa Termux dibuat dari repositori terpisah (https://github.com/termux-play-store/) - pastikan untuk melaporkan masalah di sana, karena masalah apa pun yang ditemui mungkin khusus untuk repositori tersebut.
Penghapusan instalasi mungkin diperlukan jika pengguna tidak ingin lagi menginstal Termux di perangkatnya atau beralih ke sumber instalasi lain. Anda mungkin juga ingin mempertimbangkan Mencadangkan Termux sebelum mencopot pemasangannya.
Untuk menghapus instalasi Termux sepenuhnya, Anda harus menghapus semua Termux yang ada atau APK aplikasi pluginnya yang terdaftar di Aplikasi dan Plugin Termux.
Buka Android Settings
-> Applications
lalu cari aplikasi tersebut. Anda juga dapat menggunakan fitur pencarian jika tersedia di perangkat Anda dan mencari termux
di daftar aplikasi.
Bahkan jika Anda merasa belum menginstal plugin apa pun, sangat disarankan untuk memeriksa daftar aplikasi di pengaturan Android dan memeriksa ulang.
Semua tautan komunitas tersedia di sini.
Yang utama adalah sebagai berikut.
RUN_COMMAND
VTE (libvte): Widget emulator terminal untuk GTK+, terutama digunakan di terminal gnome. Sumber, Masalah Terbuka, dan Semua masalah (termasuk masalah tertutup).
iTerm 2: aplikasi terminal OS X. Sumber, Masalah dan Dokumentasi (yang mencakup kode escape milik iTerm2).
Konsole: aplikasi terminal KDE. Sumber, khususnya pengujian, Bugs dan Wishes.
hterm: Implementasi terminal JavaScript dari Chromium. Sumber, termasuk tes, dan grup Google.
xterm: Kakek dari emulator terminal. Sumber.
Connectbot: klien SSH Android. Sumber
Android Terminal Emulator: Aplikasi terminal Android yang menjadi dasar penanganan terminal Termux. Tidak aktif. Sumber.
Anda dapat membantu men-debug masalah aplikasi Termux
dan pluginnya dengan mengatur Log Level
logcat
yang sesuai di pengaturan aplikasi Termux
->
-> Debugging
-> Log Level
(Memerlukan versi aplikasi Termux
>= 0.118.0
). Log Level
defaultnya adalah Normal
dan tingkat log Verbose
saat ini mencatat informasi tambahan. Yang terbaik adalah mengembalikan tingkat log ke Normal
setelah Anda selesai melakukan debug karena data pribadi mungkin diteruskan ke logcat
selama operasi normal dan terlebih lagi, logging tambahan akan meningkatkan waktu eksekusi.
Aplikasi plugin tidak menjalankan perintah itu sendiri tetapi mengirimkan maksud eksekusi ke aplikasi Termux
, yang memiliki level lognya sendiri yang dapat diatur di pengaturan aplikasi Termux
-> Termux
-> Debugging
-> Log Level
. Jadi, Anda harus mengatur level log untuk Termux
dan pengaturan aplikasi plugin masing-masing untuk mendapatkan semua info.
Setelah level log disetel, Anda dapat menjalankan perintah logcat
di terminal aplikasi Termux
untuk melihat log secara realtime ( Ctrl+c
untuk berhenti) atau gunakan logcat -d > logcat.txt
untuk membuang log. Anda juga dapat melihat log dari PC melalui ADB
. Untuk informasi lebih lanjut, periksa panduan logcat
Android resmi di sini.
Selain itu, pengguna juga dapat membuat info stat
file termux dan dump logcat
secara otomatis dengan menu opsi tahan lama terminal More
-> opsi Report Issue
dan memilih YES
pada prompt yang ditampilkan untuk menambahkan info debug. Ini dapat berguna untuk melaporkan dan men-debug masalah lainnya. Jika laporan yang dihasilkan terlalu besar, maka opsi Save To File
di menu konteks (3 titik di kanan atas) ReportActivity
dapat digunakan dan file dilihat/dibagikan sebagai gantinya.
Pengguna harus memposting laporan lengkap (opsional tanpa informasi sensitif) saat melaporkan masalah. Masalah yang dibuka dengan tangkapan layar (sebagian) dari laporan kesalahan, bukan teks, kemungkinan besar akan ditutup/dihapus secara otomatis.
Off
- Tidak mencatat apa pun.Normal
- Mulai kesalahan pencatatan, peringatan dan info pesan serta pelacakan tumpukan.Debug
- Mulai mencatat pesan debug.Verbose
- Mulai mencatat pesan verbose. Pustaka bersama termux telah ditambahkan di v0.109
. Ini mendefinisikan konstanta dan kegunaan bersama dari aplikasi Termux dan pluginnya. Itu dibuat untuk memungkinkan penghapusan semua jalur hardcode di aplikasi Termux. Beberapa plugin termux juga menggunakan ini dan sisanya akan digunakan di masa mendatang. Jika Anda menyumbangkan kode yang menggunakan konstanta atau utilitas yang dapat dibagikan, definisikan kode tersebut di pustaka termux-shared
jika saat ini tidak ada dan rujuk dari sana. Perbarui juga log perubahan yang relevan. Permintaan penarikan yang menggunakan nilai hardcode akan/tidak boleh diterima. Kelas khusus aplikasi dan plugin Termux harus ditambahkan di bawah paket com.termux.shared.termux
dan kelas umum di luarnya. LICENSE
termux-shared
juga harus diperiksa dan diperbarui jika perlu ketika menyumbangkan kode. Lisensi perpustakaan atau kode eksternal apa pun harus dihormati.
Konstanta Termux utama ditentukan oleh kelas TermuxConstants
. Ini juga berisi informasi tentang cara melakukan fork Termux atau membuatnya dengan nama paket Anda sendiri. Mengubah nama paket memerlukan pembuatan paket zip bootstrap dan paket lainnya dengan $PREFIX
baru, periksa Paket Pembuatan untuk info lebih lanjut.
Periksa Perpustakaan Termux untuk cara mengimpor perpustakaan termux di aplikasi plugin dan Forking dan Pengembangan Lokal untuk cara memperbarui perpustakaan termux untuk plugin.
versionName
dalam file build.gradle
Termux dan aplikasi pluginnya harus mengikuti spesifikasi semantik versi 2.0.0
dalam format major.minor.patch(-prerelease)(+buildmetadata)
. Saat memasukkan versionName
dalam file build.gradle
dan saat membuat tag untuk rilis baru di GitHub, pastikan untuk menyertakan nomor patch juga, seperti v0.1.0
, bukan hanya v0.1
. File build.gradle
dan alur kerja attach_debug_apks_to_release
juga memvalidasi versi dan build/lampiran akan gagal jika versionName
tidak mengikuti spesifikasi.
Pesan komit harus menggunakan spesifikasi Komit Konvensional sehingga chagelog sesuai spesifikasi Keep a Changelog dapat secara otomatis dihasilkan oleh skrip create-conventional-changelog
, periksa repo untuk detail lebih lanjut tentang spesifikasi tersebut. Huruf pertama untuk type
dan description
harus kapital dan keterangan harus dalam present tense. Spasi setelah titik dua :
diperlukan. Untuk perubahan yang melanggar, tambahkan tanda seru !
sebelum titik dua :
, sehingga tersorot di chagelog secara otomatis.
[optional scope]:
[optional body]
[optional footer(s)]
Hanya types
yang tercantum di bawah ini yang harus digunakan persis seperti yang digunakan dalam judul changelog. Misalnya, Added: Add foo
, Added|Fixed: Add foo and fix bar
, Changed!: Change baz as a breaking change
, dll. Anda juga dapat menambahkan cakupan opsional, seperti Fixed(terminal): Fix some bug
. Jangan gunakan apa pun sebagai tipe, seperti add
alih-alih Added
, dll.
TermuxConstants
untuk petunjuk tentang perubahan apa yang harus dilakukan di aplikasi untuk mengubah nama paket.TermuxConstants
dari perpustakaan termux-shared
dan memiliki nilai com.termux
yang dikodekan secara hardcode dan perlu ditambal secara manual.