top | item 14428261

(no title)

vomitcuddle | 8 years ago

Yeah, what raised a red flag when reading this project's description was that having a single kernel for all devices and no compatibility layer like libhybris is unfortunately an unrealistic goal in the world of ARM android devices.

An approach that is less likely to result in vaporware would be to maintain ports of Halium to older devices based on LineageOS kernels/drivers, with an optional Alpine Linux userspace.

Otherwise this project is little more than README.md Hacker News bait.

discuss

order

ollieparanoid|8 years ago

> A (nearly) mainline kernel running on the Nexus 7 https://lwn.net/Articles/680109/

If there are enough helping hands, we could do this as a community.

The bootstrap program, pmbootstrap, is a working base component that makes development much easier (alone the automatically set up cross-compiling with distcc, ccache, armhf and native chroot), so it is definitely more than a README.md.

Also the title says, that the project is "aiming" - which does not say it has reached any of its goals yet. But at some point it needs to be announced to the community, so I might as well do that now, at a point, where other hackers could join in and parallelize development.

brady67ten|8 years ago

The biggest issue in trying to have a long running constantly updating OS on a Android phone is the device drivers.

Instead of trying to reverse engineer and make open source drivers, I think you should try a more generic approach something like a rump kernel or some other generic layer for each Linux kernel version which can simulate the interface needed for the particular kernel driver. That way you don't have to keep porting or reverse engineering device drivers.

Your approach of trying to make an open source driver is a losing one, it requires a lot of work and you can't reasonably keep up with it.

vomitcuddle|8 years ago

Could you help me understand your reasoning behind not pairing up with or taking advantage of existing projects like Halium or LineageOS?

I'd love to run mainline Linux without any Android cruft on my old phones, but realise that this would take a lot of effort per each device. Each Android device is different, with its own kernel patches, proprietary modules and sometimes Android-specific userspace HALs. The Tegra in the Nexus 7 was designed to run non-Android Linux, there are native X11 drivers for that thing - that's not the case for devices like my current phone.

ndesaulniers|8 years ago

Isn't that solved by device tree w/ overlays? (I don't know much about ARMv7).

djsumdog|8 years ago

Very few mobile phone arm devices support device trees. Only Windows Mobile phones provided UEFI (with locked bootloaders). Most ARM devices just attach random shit to random pins and have totally non-upstreamable kernels.