-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Termux support for Android Emacs #1
Comments
Hi! This is a great idea. However, this is not that simple. There is an additional requirement that both APKs are signed with the same key. Currently they are not (they can be if you or me resign them). SHA1 fingerprints on F-Droid are: Termux: E8:75:4A:2C:61:43:92:07:1D:27:02:1B:BC:DF:B8:DD:A7:E0:71:1C They are different. To make that happen both party should agree to use the same key. Anyway, I'll try to reach them both. Thanks for the idea! |
That's odd. I thought F-Droid signed everything with the same key. Maybe Emacs is in Izzy-On-F-Droid or something? |
I though the same (I believe I have read it in Termux docs somewhere) - that's why I verified it myself. But there is also this documentation: https://f-droid.org/en/docs/Signing_Process/ - and it can be configured in different ways. |
What I have read probably must have been about that Google Play & F-Droid use different keys but not that all F-Droid apps are signed with the same key. |
Is there any progress on this? |
Po Lu contacted me first and we are talking about possible solutions. But it's not easy to find the best one. There are many questions (problems with building GnuTLS on F-Droid, incompatible change for existing users - cannot upgrade current version without uninstalling it first, the method with userSharedId is already deprecated although Termux is using it itself, what about integration with other similar software like Nix-on-Droid, do we want to maintain multiple versions, because of that maybe each party like Temux and Nix-on-Droid should maintain their own version?). Thanks to Po I have learned that you can find the latest binary version not on F-Droid but on https://sourceforge.net/projects/android-ports-for-gnu-emacs/files/ which is also better, because it's build with GnuTLS enabled. In the meantime I have updated Emacs to the latest version in the releases here. |
In case it was useful I put a really rough script of the re-signing instructions here: https://gist.github.com/jdriordan/e652ba692dad52400e01a44c8cc14881 There are likely a few mistakes as well as a couple of places where it prompts for input that could be fixed with Neither the files created using this script nor the prebuilt ones from the releases can be installed and I just get a modal saying "Package has not been installed". I have permissions for installing external APKs etc, and if I download the equivalent APK from f-droid (but through Firefox) it installs without issue. Could there be something about the instructions that doesn't work with Android 13. |
Would it be possible to include some of the termux applications inside the emacs package? It wouldn't be ideal, but it would still add a lot of functionality (via packages that assume a certain environment) if there were a few basic utilities and maybe the package installer available within the emacs sandbox. If I have some time I'll try naively copying some binaries from termux into the emacs package. Even just having the git binary for magit would be good. |
HI @jdriordan ! Thanks for the script. One missing part I can is it that
This may be the way to go for the future Android versions as I'm sure it is possible, but it's more work than just copy some binaries. First of all the Termux apps have hardcoded paths to Termux data folder. So it requires that the namespace of the final app is the same as the Temux's. Or you have to recompile all the Termux packages with updated paths. Secondly, the Termux packages should be installed in the But theoretically, when that's done you should be able to use Emacs' shell to call For me it's not worth the time yet as long as |
Do you now use the Android port, instead of running emacs inside of termux? I do the latter, but I use doom emacs, and have been trying in vain for some time to get doom working in the Android port. |
Yes, I do. Doom isn't working on Android port. That's because So, what I did is I rewrote my doom's config to vanilla Emacs using |
And if you are interested I forked If you are interested you can find it here: https://github.com/marek-g/orgzly-android/releases |
That's incredible! Thank you, I'll take a look. |
does this look about right?
Yes. It is :) Have fun! Please note, that my keybindings are mostly not emacsy
(see https://github.com/darkstego/wakib-keys), so you may want to keep or
change them.
|
And I suggest to use `hacker's keyboard` (https://f-droid.org/en/packages/org.pocketworkstation.pckeyboard/) as it has the keys required by emacs (like `ctrl`) and notification icon (that allows to bring up keyboard even for read-only
buffers). It has very small buttons, but as the layout can be customized it
can look anyway you like...
|
Hi! Have you emailed Po Lu about the shared user ID thing? This is probably something that needs to be upstreamed, unless we all want to maintain our own builds of Termux and Emacs every time there's an update. The shared signature thing will be taken care of by installing both of them from F-Droid.
The text was updated successfully, but these errors were encountered: