Previous: Troubleshooting Startup Problems on Android, Up: Emacs and Android [Contents][Index]
H.9 Installing Extra Software on AndroidAn exceptionally limited set of Unix-like command line tools is distributed alongside default installations of Android. Several projects exist to augment this selection, providing options that range from improved reproductions of Unix command-line utilities to package repositories providing extensive collections of free GNU and Unix software.
Busybox provides Unix utilities and limited replicas of certain popular GNU programs such as wget
in a single statically-linked Linux binary, which is capable of running under Android.
Termux provides a package manager based on the Debian project’s dpkg
system and a set of package repositories containing substantial amounts of free software for Unix systems, including compilers, debuggers, and runtimes for languages such as C, C++, Java, Python and Common Lisp. These packages are customarily installed from within a purpose-built terminal emulator application, but access is also granted to Emacs when it is built with the same application signing key, and its “shared user ID” is set to the same package name, as that of the terminal emulator program. The file java/INSTALL within the Emacs distribution illustrates how to build Emacs in this fashion.
termux-packages provides the package definitions used by Termux to generate their package repositories, which may also be independently compiled for installation within Emacs’s home directory.
In addition to the projects mentioned above, statically linked binaries for most Linux kernel-based systems can also be run on Android.
Emacs can be configured with support for viewing SVG image files by means of the librsvg
library. In SVG files, there may be references to other images on the file-system, whose format librsvg
cannot detect by default, and which will be rendered as blank squares unless an XDG-compliant MIME database is installed into the directory .local/share/mime within your home directory.
As the XDG shared-mime-info
tools must be available to generate such a database, it is recommended to produce this database in a temporary directory on a GNU/Linux or Unix system, before transferring the same to the recipient Android device. With the latest release of shared-mime-info
installed, create a temporary directory in which to generate the MIME database, copy the default freedesktop.org.in MIME catalog to a directory named packages, and execute update-mime-info
to generate the database:
$ mkdir -p my-mime-database/packages $ cp /usr/share/mime/packages/freedesktop.org.xml my-mime-database/packages $ update-mime-info my-mime-database
This may print a series of notices stating that the MIME database specified is not in the search path on your host system, which are of no consequence. Proceed by transferring the contents of the MIME database to the recipient system, e.g., to /sdcard/Download/my-mime-database.tar.gz:
$ cd; mkdir -p .local/share $ tar xfz /sdcard/Download/my-mime-database.tar.gz $ mv my-mime-database .local/share/mime $ rm /sdcard/Download/my-mime-database.tar.gz
If your Emacs session has already attempted to display an SVG image with embeds, Emacs must be restarted before the new MIME database will enter into effect.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4