https://github.com/sickcodes/anbox-modules-dkms
anbox-modules-dkms for kernel - resurrected aur.archlinux.org/anbox-modules-dkms for ongoing maintaining. Next Generation Box Modules DKMS (ngbox). WayDroid, Anbox Halium, Droid Native, Dock Droid + BlissOS!
https://github.com/sickcodes/anbox-modules-dkms
anbox anbox-git android dkms modules waydroid
Last synced: 2 months ago
JSON representation
anbox-modules-dkms for kernel - resurrected aur.archlinux.org/anbox-modules-dkms for ongoing maintaining. Next Generation Box Modules DKMS (ngbox). WayDroid, Anbox Halium, Droid Native, Dock Droid + BlissOS!
- Host: GitHub
- URL: https://github.com/sickcodes/anbox-modules-dkms
- Owner: sickcodes
- License: gpl-3.0
- Created: 2021-09-05T18:35:50.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-01-18T09:41:19.000Z (over 3 years ago)
- Last Synced: 2025-03-15T22:00:16.305Z (3 months ago)
- Topics: anbox, anbox-git, android, dkms, modules, waydroid
- Language: Shell
- Homepage:
- Size: 20.5 KB
- Stars: 23
- Watchers: 3
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# anbox-modules-dkms for kernel 5.7+ (ngbox-modules-dkms)
# Next Generation Box Modules DKMS (ngbox)
### [https://aur.archlinux.org/packages/anbox-modules-dkms](https://aur.archlinux.org/packages/anbox-modules-dkms)
Maintained by Christian Hoff [@choff](https://github.com/choff): [https://github.com/choff/anbox-modules](https://github.com/choff/anbox-modules)
The AUR package is maintained here: [https://github.com/sickcodes/aur/tree/master/anbox-modules-dkms](https://github.com/sickcodes/aur/tree/master/anbox-modules-dkms)
Resurrected aur.archlinux.org/anbox-modules-dkms for maintenance
As per the Arch Wiki, https://wiki.archlinux.org/title/Anbox#Old_kernels
> The dkms modules do not work on kernels ≥5.7 anymore. Follow the instructions below instead. For older kernels see Old kernels.
However, a user named @Choff has included some patches here:
[https://github.com/anbox/anbox-modules/pull/76](https://github.com/anbox/anbox-modules/pull/76)
This repo will be used to fix the anbox modules for 5.7+.
### This project was created for use in:
- Next Generation Anbox Style LXC: [https://github.com/sickcodes/droid-native](https://github.com/sickcodes/droid-native)- Android in a Docker using [BlissOS](https://blissos.org/): [https://github.com/sickcodes/dock-droid](https://github.com/sickcodes/dock-droid)
- binder(fs) and ashmem for use in anbox related 5.7+ Kernel distribuitons (soon to be all): [https://github.com/sickcodes/anbox-modules-dkms](https://github.com/sickcodes/anbox-modules-dkms)
- WayDroid: [https://github.com/waydroid/waydroid](https://github.com/waydroid/waydroid)
# Patches
`git submodule add https://github.com/choff/anbox-modules
`
We will use commit https://github.com/choff/anbox-modules/commit/6ddae194592451d604726a286f566d0246aef567https://github.com/choff/anbox-modules/commit/4af9d5d591f33a0d8d7fb0735e280fa51ccef53e
> Fix compilation of binder and ashmem on kernel 5.7 and later
> On kernel 5.7 and later, kallsyms_lookup_name() can no longer be called from a kernel
> module for reasons described here: https://lwn.net/Articles/813350/
> As binder really needs to use kallsysms_lookup_name() to access some kernel
> functions that otherwise wouldn't be accessible, KProbes are used on later
> kernels to get the address of kallsysms_lookup_name(). The function is
> afterwards used just as before. This is a very dirty hack though and the much
> better solution would be if all the functions that are currently resolved
> with kallsysms_lookup_name() would get an EXPORT_SYMBOL() annotation to
> make them directly accessible to kernel modules.https://github.com/choff/anbox-modules/commit/443f984b1a4eecf464b0081820e87e351c5d7c36
> Compile fixes for kernel >= 5.8
> With the commit 64fe66e8a95e in the Linux kernel, the member "mmap_sem" in the
> struct mm_struct was renamed to "mmap_lock". This patch fixes the resulting
> compile errors.https://github.com/choff/anbox-modules/commit/6ddae194592451d604726a286f566d0246aef567
> Another compile fix for kernel >= 5.8
> With kernel 5.8, the return value of map_kernel_range_noflush()
> was changed. This function now returns 0 on success (instead of
> the number of successfully mapped pages).> This commit adjusts binder accordingly.
Thank you so much @choff!