Hacker News new | past | comments | ask | show | jobs | submit login

After my Samsung Galaxy S7 phone started having hardware issues, I looked to see if a phone running open source software was available, one that also could run the Android apps I currently use.

I've had sucess with LineageOS 15.1 on a Xiaomi Redmi Note 5 Pro (codename "whyred"). Unfortunately the phone's LTE bands don't support every country, but it works fine here in India. The phone hardware costs USD 210 and buys a lot of hardware: https://www.gsmarena.com/xiaomi_redmi_note_5_pro-8893.php

The phone comes with Xiaomi's Android fork called MIUI. It comes with the bootloader locked, and Xiaomi makes you wait for about 2 weeks to 2 months to be able to unlock the bootloader to install a different phone OS (called a custom ROM). Until then, one has to either put up with MIUI or leave the phone sitting on a shelf.

https://wiki.lineageos.org/devices/whyred/install

Once you unlock the bootloader, you can install LineageOS on it which is fully open source stock Android with some minimal tweaks and extra privacy features. The current version for this phone is 15.1 which is based on Android Oreo. This reminds me of my old Google Nexus 5's phone OS, but it is far more tweakable. You can build the LineageOS ROM for your phone from source code: https://download.lineageos.org/whyred

You can install a subset of Google Apps depending on what your preference is: https://wiki.lineageos.org/gapps.html https://github.com/opengapps/opengapps/wiki/Package-Comparis...

Or you can avoid Google Apps altogether by using microG instead: https://microg.org/

After 2 weeks of using LineageOS, I am so impressed that I'm willing to shill for it^w^w^w describe about it here.

For your country, if the "whyred" phone's LTE bands are not compatible, you should be able to find a similar phone that is.




I've been running LineageOS (on Nexus 5X, then Galaxy S7, now Nexus 5X again) since it was Cyanogenmod. It pains me to say it but it seems to be getting steadily worse. The first install after the Cyanogenmod fork was perfect for two years until I broke the phone. I then got a Galaxy S7 and it was fine initially but an update introduced a bug which made it drop calls randomly. It took a couple of months of updates not helping before I wiped it and went back to the first ROM which worked perfectly. Now I'm back on a Nexus 5X again and there's an intermittent problem with voice calls where the sound goes quiet/muddy, and just in the past couple of weeks they broke Bluetooth music streaming (the music app crashes and needs to be manually restarted - which is great when you've hopped in the car and started driving!)

When I have time I'm going right back to 14.1 in the hope that that fixes it.


Fully aware this might be a silly question, but why do they make you wait, and why does the time period vary so greatly?


Xiaomi temporarily locks the bootloader to prevent third-party Chinese retailers from bundling malware and adware with its phones sold on the international market[1].

[1] https://www.xda-developers.com/xiaomi-anti-rollback-protecti...


Which is hilariously dumb because now 3rd party retailers are the go to source if you want to buy a Xiaomi with unlocked bootloader rather than waiting a month . It's creating more business for the people they are supposedly trying to stop.

Also none of the stock Android phones they sell have a wait time for bootloader unlocking, it's only the ones with their own os MIUI


Xiaomi doesn't give a shit about the bootloader itself. What it cares about, is people receiving a modified version of MIUI which it has no control over:

"The retailers would buy Xiaomi devices in bulk, unlock the bootloader, change the software themselves or flash a custom ROM like Xiaomi.eu (unofficial ROMs based on MIUI China but with more languages and features), and then sell the device. Most consumers would have no way of knowing they’re running unofficial/modified software, and would instead blame Xiaomi for a lack of updates or bugs they encounter."


>Most consumers would have no way of knowing they’re running unofficial/modified software

It's right there on the boot screen. They can make it more explicit if they want with a red skull or whatever. That reason doesn't fly. Also, what changes in 30 days ?


Xiaomi is primarily a software company, not hardware. It sells hardware almost at its costs, because it treats it as a user acquisition. If a re-seller replaces the official MIUI version with a modified one, Xiaomi loses a customer. Xiaomi doesn't care about Android One phones, and allows them to be unlocked instantly.


I think you are conflating a few different things. That they want you to use their OS is obvious. The 30 day period may even be a wear-you-down period, so that you grow to like their OS. That is quite unrelated to the evil reseller backstory, mainly because the reseller could do that after 30 days too, and if they only wanted to thwart resellers, they could do captcha + ip checks, which they presumably anyway do.


The percentage of people who unlock the bootloader themselves is so small, that Xiaomi couldn't be less worried about them. On the contrary, unlike many other manufacturers, Xiaomi releases the source code and welcomes enthusiasts. The problem is with re-sellers, who unlock the devices in bulk and sell a modified version of MIUI to non-technical people. The longer the unlock period is, the longer the re-sellers have to keep the inventory purchased before they are able to make any modifications. This increases their costs and risks, because they now have to make large investments up-front.


Accounts are limited (1 in 30 days) in unlock ability. This kills the business.


Waiting is inconvenient to buyers and to explain it away, Xiaomi provide some silly reasons such as saying they are trying to thwart sideloading of apps and custom ROMs by resellers, that does nefarious things like steal data... it's a silly excuse, and the wait time inconveniences buyers who want to unlock and install custom ROMs.

Edit: I suspect Xiaomi do this to keep you using MIUI as long as possible because they make money from showing ads in various parts of the system, and also sync your data back to their cloud which probably is resold in some derived form to advertisers. In my opinion, MIUI sucks. MIUI vs. LineageOS proved it is the phone OS (software) which influences how much a person likes a phone, rather than the hardware.

They've recently increased the wait time from 2 weeks to 2 months which had buyers complaining loudly on forums. So for their newest device (the Pocophone) they reduced the wait time to about 3 days. But I think the long wait times still exist for other phone models.

The wait time depends on Xiaomi's mood-of-the-day. They keep fluctuating it.


> and also sync your data back to their cloud which probably is resold in some derived form to advertisers.

And to the Chinese MSS perhaps?


I'm also using a 'Whyred' (silly name but since Xiaomi used the model name 'Redmi Note 5 (sometimes followed by 'Pro' or 'AI', terms which have different meanings in different countries)' for several different devices it is better to be accurate and use the code name), it offers great hardware for its price (around $180 for the 4GB/64GB model on Aliexpress) and - just as important - runs for 7 days/15 hours of screen-on time on a single charge. I'd just add that once you unlock the bootloader (which can be done in Linux using the java-based MiUnlocktool [1]) you can also de-fang MIUI by disabling all the intrusive bits, installing a different launcher and configuring iptables. Turn on the firewall log to see what tries to get through, you'll notice the thing trying to establish XMPP connections to some Xiaomi-owned domains. After disabling most of Xiaomi's 'services' the log stays empty without anything of value having been lost. This is a good compromise for those who'd rather use stock firmware, albeit de-bloated.

[1] http://xiaomitool.com/MiUnlockTool - make sure to run it on a 64bit machine as the included fastboot binary doesn't work on 32bit installations


LineageOS was working great for me on my Oneplus 3T for about 6 months, but something has gone wrong with recent updates. It has started slowing down to the point of being unusable and I have to reset my phone several times a day. There have been about 6 updates since I started seeing the issue and it hasn't been addressed.

I loathe going back to Oneplus's stock ROM as they modified it to kill background processes to make the phone seem like it has better battery life. I own a Tesla Model 3 and it uses the phone as a key, and the stock ROM doesn't work well with it at all.


Please consider generating a log file and create a bug report for them to look at:

https://wiki.lineageos.org/logcat.html

https://jira.lineageos.org/secure/Dashboard.jspa

They do look at them. But I would suggest taking a quick glance at those logs and see if you notice anything familiar. It may be something you recognize.


I appreciate the advice but the phone isn't even responsive enough to run logcat.

I tried running it before it starts locking up and don't see anything of note.


LineageOS 15.1 is great, except it STILL doesn't have exchange support, and yes a bug/regression has been logged. That's a pretty big thing to be missing, since all the competitors (Outlook, GMail, Nine) are closed source.


Is this advice geared towards the HN crowd - software developera & tech enthusiasts, or is this your recommendation for all?


It would take someone with reasonable technical skills to install LineageOS as it involves unlocking the phone's bootloader (depending on the choice of phone hardware), working around any anti-rollback features by flashing, flashing TWRP recovery, and then boot into TWRP and install LineageOS, GApps and Magisk (if you want root). But the OS once installed can be used by all. Take my non-technical cousin for example who looked at what I was doing and bought the same phone and made me put LineageOS on it and now uses it.

It isn't advice or suggestion BTW.. just my experience. :)


Well beyond reason to assume something pedestrian for you - a developer - to be "reasonable skills" for the average Joe.

Do you build your own car? Or bike? Or home? Or even mattress? All of these can be done with reasonable skills, they aren't because you pay for a finished product, in most cases, for the economy to remain productive. No one ever said 'reinvent the wheel' for making progress.


This entire post is a nitpick about a single word, with the intent perfectly clear, and you should be ashamed of that.

Just pretend it says "It would take a tech enthusiast to install [...] but the OS once installed can be used by all".


You be ashamed of trying to shame strangers on the interwebs for talking freely!

There's plenty of benefits Google's product offers that lineage doesn't. The surprising thing is, this kind of parameter toggling (turning on battery saver in an OS update) typically happens in non-Google OS-es too. What are you even offering, other than rhetoric, by suggesting lineage as an alt? How does lineage prevent an OS update from toggling a feature - something put in source code.

Lies, damn lies


People pay becaise they get value, time savings, etc...

It is not to keep the economy productive. That is an artifact of real value.

And, "keeping the economy productive" can mean making things for people that seem like they have value, but maybe break early, or have some catch.

Just saying..




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: