Feuerfest

Just the private blog of a Linux sysadmin

Configuring Termux after a ROM-Update

Just a reminder for myself..

I recently updated the LineageOS on my mobile and hence had to revert to the official Stock ROM first. Due to this I, of course, also had to reinstall all apps.

These are the steps I do to configure Termux (Github, F-Droid) on my mobile.

  1. After install pkg update followed by pkg upgrade
  2. Allow Termux to access the SD-Card storage, so it can read my private SSH-keys: termux-setup-storage
    • Then either provide that path to the keyfile in the .ssh/config like this: /storage/emulated/0/<folder on SD-Card>
    • Or copy the private keyfile to ~/.ssh/, then you are able to revoke the storage permissions again.
  3. Install correct SSH package and agent: pkg install ssh-agent openssh
    • Create ~/.ssh/config and test it
  4. Test SSH-Connections to various servers
  5. Install various tools
    • pkg install dnsutils openssl-tool nmap traceroute
Comments

SECUSO Android Apps - A type of app I thought being extinct

It was just a few days ago when I learned of the existance of the SECUSO apps. These are apps developed at the Karlsruhe Institute of Technology (KIT) by their Research Group: Security • Usability • Society (SECUSO). The Android apps they develop contain absolutely no tracking, no ads and use only the bare minimum of permissions. A sort of app I thought to be extinct in the current app ecosystem.

They have an informational page about their project goals with a list of all currently supported apps: https://secuso.aifb.kit.edu/english/105.php

The catch? All apps are only available in the alternative Android Appstore F-Droid. You most likely won't find them in the Google PlayStore anymore. As SECUSO had to ditch publishing their Apps in the Google PlayStore in 2025 due to ever increasing effort that is needed in order to publish apps with minimal permission requirements. And while they didn't delete their apps from the PlayStore I at least couldn't find a single one there for my mobile.

They provide a PDF with migration instructions on how to install and use F-Droid, but let's face the reality: Many users won't do this.

Personally I am not surprised by the slightest that it publishing minimal permissions apps on Google Play has become such a burden. After all Google is one of the biggest players in the user tracking, data collecting and ad display business. Published data privacy apps without any ads or tracking is simply against their business model and hence its in no way on their list of feature the want to support.

The source code is, of course, available too via their GitHub repository at https://github.com/secuso.

I am just happy that I finally found a good Sudoku game app for my train rides. Their sketching and note taking apps are useful as well. Oh, and the QR code scanner app even has a history of scanned QR codes. A feature I never encountered before!

Comments

Bye Bye: OnePlus

This article could also be labelled: How to wreck your business model.

For over a decade OnePlus released solid Android phone who didn't need to shy away from other competitors flagship models. I owned a OnePlus 3 and currently use a OnePlus 8, what convinced me in the first place was the commitment to provide security updates for up to 5 years. This really stood out back at the time - only matched or beaten by Google's Pixel phones. As I run LineageOS nowadays I am not dependent on vendor updates. However I still held OnePlus' phones in high regards. This drastically changed today.

The reason? OnePlus started rolling out updates for its ColorOS which contain an hardware-level Anti-Rollback (ARB) mechanism. This is a so-called eFuse inside the processor itself and cannot be changed via software.

The result? If your OnePlus 13/13T/15 is on ColorOS 16.0.3.501 you can't install any custom ROM or downgrade the OS. If you try you brick your phone. No recovery possible. The only chance users have to install custom ROM is, if their firmware is build with the same or higher ARB/security level. Which are not yet available. And even then it will always be a ride on razors edge if you brick your phone when updating the ROM - or not.

This change wasn't announced publicly. It wasn't communicated in any way. And when asked OnePlus provided no answer - but they removed old firmware files from their servers for the affected models. Which the community takes as proof that this change is intentional and not just an extremely unfortunate bug or oversight.

It's unclear if other models are affected too or if they will get the same "treatment". Effectively robbing people of their freedom of choice regarding which OS they want on their phones.

And while ColorOS is used for OnePlus devices in China (devices outside of China run OxygenOS) this whole affair has a bad taste to it.

For me it effectively means that I won't buy a OnePlus phone as my next mobile.

Looks like OnePlus started its enshittyfication process.

Source:

Speculating about the reason

China flashers

I was interested in why this was suddenly happening and someone on Reddit mentioned the big flasher market in China. Basically it goes like this:

  • OnePlus sells phones in China with ColorOS, for EU/US/global ship the phones with OxygenOS
  • People buy OnePlus phones in China for a considerably lower price than in EU/US
  • The device is flashed with OxygenOS or other ROMs
  • Now the device is sold outside China, making a big profit

This of course affects OnePlus directly. Their business model, their revenue, everything. So from a business point of view it is comprehensible that they did this. Also the lacking communication upfront and after the ARB discovery is sufficiently explained following this logic.

Still a shitty move. It would certainly help if OnePlus would finally comment on how they plan going forward with this, if other regions will be affected too in the future, etc.

And it also explains why people from all over the world report problems with the ColorOS 16.0.3.501 update. As they likely imported/bought a OnePlus from China and are now getting the ARB-affected OTA updates. As ARB has no method of knowing in which region a phone is operated in.

Then again there is this post on XDA Developers forum where some user claims "CPH2581_16.0.3.500 just dropped on OP12 EU." Where CPH2581 is the model code for the OnePlus 12 Global/EU version. And immediately after that post someone comments: "It's fused" showing a screenshot from a tool which checks the presence of the eFuse in the firmware.

Other users also confirm that their Global/EU/US region models received an eFused update.

So yeah.. OnePlus should really finally comment on this.

Also, the user who reported all this in the XDA Developers forum got his Reddit account banned shortly after, for yet unknown reasons.

Quick Update: My Reddit hub (u/AdaUnlocked) was suspended shortly after I shared this research. I'm not sure if it’s a technical glitch or due to coordinated reporting, but I've filed an appeal. For now, I will keep all technical updates centralized here on XDA.

OnePlus in trouble?

And then there is this article about OnePlus being in trouble because of declining sales and that it is possible that they will exit the US and EU market.

So.. This is a move to secure their market share in China? After all. Samsung has a similar feature with Samsung Knox. Just that... You know.. It doesn't brick your phone. It just disables some of the features Knox offers.

Update July 2026: It is now reported by international media that OnePlus confirmed it will leave the North American an EU market completely. OnePlus will be a China-only brand. For EU the OPPO brand will take over, for US this is still unclear. *sigh* Why do always the brands cease to exist who produce products that I like?

Comments

Bye Bye: Brave Browser

"Bye Bye" is a loose series of articles in which I explain why I no longer use the aforementioned provider and its services.

mthie wrote a short blog post in which he linked to the following XDA Developers article: https://www.xda-developers.com/brave-most-overrated-browser-dont-recommend/.

For me, personally, this article was a real eye-opener. I only knew about roughly half of the things that Brave has done over the years. I was especially unaware of the "Accepting donations for creators - who don't know anything about the Brave program" or the Honey-like "Let's replace referral codes in links and cookies with our own to steal the commission".

If a company pulls such stunts, it is not acting in good faith. Not acting in good faith makes you a bad actor.

Do you really want to use software from a bad actor? Yet alone have it installed on your mobile? It's the most private piece of technical equipment we own in these days.

Yeah, me neither. Hence Brave has been officially uninstalled from all my devices as of 20 minutes ago.

And I doubt I will miss it much, as Firefox on Android officially supports all extensions since end of 2023/beginning of 2024. Therefore extensions like uBlock Origin and uMatrix work perfectly fine. The fact that those were not supported back then was the main reason for choosing Brave in the first place.

Now with this reason being gone, so too is the crypto- and scam-infested Brave browser.

Comments

Termux and local DNS

The app Termux is an Android terminal emulator and provides an Linux environment. I have it installed on my phone to have many of the various command-line tools ready to use.

However, there is one big problem if you to have working local DNS resolution in your home network: Termux uses the Google DNS server 8.8.8.8 and 8.8.4.4 per-default. As this is a problem for many people, it is regularly discussed on GitHub: https://github.com/termux/termux-app/issues/130

And while I'm not having much expertise in regards to Android development it seems that Termux is not allowed to get the Android system DNS settings and hence can't properly update their resolv.conf whenever the DNS server changes.

Also it seems that some tools use the Android system DNS and others don't. nslookup for example uses the resolv.conf provided by Termux. This just adds to the confusion.

It doesn't matter if you've disabled private DNS in your network settings or not. As such they have little other choice but to ship their own resolv.conf file under /data/data/com.termux/files/usr/etc/resolv.conf with the Google DNS servers, which are also the default setting on Android:

~ $ cat /data/data/com.termux/files/usr/etc/resolv.conf
options timeout:2
options attempts:2
options rotate
nameserver 8.8.8.8
nameserver 8.8.4.4

My workaround

If I install vi (to have a useable editor) and edit the resolv.conf so that it only contains my local DNS server it works.

~ $ cat /data/data/com.termux/files/usr/etc/resolv.conf
options timeout:2
options attempts:2
options rotate
nameserver ip1.ip1.ip1.ip1
#nameserver 8.8.8.8
#nameserver 8.8.4.4

But the big downside is: As soon as my phone leaves my Wifi many things regarding Termux will simply stop working. I then have to change the resolv.conf back. Sure, it done easily and an easy script also comes to mind.. 

A more permanent and better solution?

Termux however has Unbound already installed. I could just add dnsmasq to the mix and configure it to send DNS queries for my local lan domain to my Pi-holes. This way the the resolv.conf can be left untouched.

Something like this should do the trick..

server=/lan/192.168.0.x

Has anyone already done that?

Others have come to different solutions

There is https://www.zenz-solutions.de/personaldnsfilter-wp/ which servers as a DNS filter for Android. And apparently one can somehow hook into the DNS resolution process on Android. Okayyy... Wild.

Comments

"The IT Crowd" Android easter egg

Holy shit! Didn't know of that easter egg.

Have you ever entered the "new emergency number" from The IT Crowd into your Android caller app?

I advise you to do so now. No, you don't need to press the call button. You don't need to actually establish/make a call. Just enter the complete number, that is:

0118 999 881 999 119 725 3

Cooooooool! 😆 And it even worked with my LineageOS ROM. 😆
(Doesn't work on GrapheneOS phones from what I heard.)

Comments