notes by alifeee profile picture tagged android (3) rss

return to notes / blog / website / weeknotes / linktree

here I may post some short, text-only notes, mostly about programming. source code.

tags: all (44) scripting (13) linux (5) bash (4) geojson (4) obsidian (4) android (3) github (3) html (3) jq (3) ............ see all (+63)

my de-googlification so far - switching from big tech # prev single next top

tags: software, ethical, big-tech, obsidian, email, syncthing, openstreetmap, linux, github, android • 1430 'words', 429 secs @ 200wpm

I think it's a great idea to use ethical alternatives to free software made by mega-corporations with profit-maximising motives.

To that end, I had a push to replace lots of things I used (most because they were the default, or because I'd used them a long time), mainly using the great website https://switching.software/ (I also know of https://european-alternatives.eu/alternatives-to but haven't used it as much.)

I replaced some things. I didn't manage to replace everything. Change is, and should be, incremental.

Here is a list, mostly copied from my notes, of what I replaced, and what I didn't. The title of each item is verbatim copied from my notes, and I have added context underneath each.

Google

Gmail -> see below
see "email" below
Drive -> Cryptpad/Nextcloud or Syncthing
I replaced my Google Drive usage with a weird setup where I use Syncthing to sync several folders between my devices, and to share large files I either upload them to my server (bad advice, technical knowledge needed), or I upload them to Wormhole where they get deleted after 24 hours. I don't have much need to share files for a long time, but I'd consider Nextcloud.
Photos -> ???
I thought about this a lot, but Google Photos is too good for me. Maybe another day.
Calendar -> ???
I installed Tasks and Fossify Calendar. I tried to use them, but in the end, Google Calendar won out, and I still use it.
Keep -> ???
I didn't really replace keep, I just started using it less. I put most of my notes in Obsidian, but I still have it installed. Sometimes, when I want to take a really quick note, I'll put it in there.
Maps -> OpenStreetMap
I still use Google Maps, but I've been using OpenStreetMap more recently, and while interrailing last month, I mainly used OsmAnd because of its great offline maps. Day-to-day, I still use Google Maps, because it has most-or-every business, and websites, and opening times, which OSM tries but just doesn't (yet…) have the data for.
generic Android apps -> Fossify
I found Fossify who make "generic apps" for Android like the gallery, file explorer, contacts, calendar, messages, notes, etc. I haven't used many of them, apart from the file explorer, which I like.

Facebook

Facebook -> delete it
my suggested replacement here was "delete it". I haven't. Sometimes I open it for "mindless phone downtime", but I have a 5 minute daily app timer on it, so not for long.
Instagram -> PixelFed
I tried to import my Instagram export into Pixelfed, but it wouldn't work when I deleted my DMs from the files (as these are not needed to import only posts). I raised an issue, and left it at that. Since then, PixelFed has gotten quite a lot more popular. I haven't tried again recently, but I find the main developer of PixelFed a little weird on Mastodon. That means nothing, but… I just haven't tried again.
Messenger/WhatsApp -> Signal
I am slowly convincing friends and group chats to move to Signal. It goes well.

Microsoft

OneDrive -> Cryptpad/Nextcloud or Syncthing
see Google Drive above. I have also stopped using OneDrive.
Windows -> Linux https://waldyrious.net/computefreely/
That site is good. This was probably the biggest switch in this list. I installed Linux in increments, first on my PC, then on my laptop, then on my Gaming PC, which ends up with Steam's Proton able to play anything I could have played on Windows! I'm loving it. I have Pop!_OS, backed up in a custom way.
GitHub -> sourcehut, codeberg, gitlab, etc
I haven't started on this one, even though I should. I have so many things on GitHub, and I feel as if I create a new repository every week. Combine that with all the GitHub actions I use, and I say rightfully that Microsoft has me. It's not what I want, but it's what I have.

Android

Android -> LineageOS or GrapheneOS or CalyxOS (comparison)
I looked into this one a lot, and talked to a few people I knew on Mastodon for advice. Ultimately, I discovered people's opinions and experiences that it was neat, but there were enough compatibility problems to be annoying. Particularly, that banking apps would semi-regularly break on non-stock-Android OSes, and that the banking app companies would say "we don't care". I use a very digital banking app where I only keep between £0 and £50 on my card, and it would be very annoying for me to not shuffle money around easily. I already have boneless Wednesday. I did enjoy installing LineageOS on an old phone though.

The rest

Notion -> Obsidian
Notion is classic lock-in. It was also a place where I had a lot of notes. I made an export, downloaded Obsidian (which, sadly, is still not open source - but your notes are simply text files, so I hazard if it were to go weird, there would be many Open Source pop-ups, or I could use VSCodium, etc.), and imported my export. It worked pretty well. Most files had double spaces where I only had single in Notion, and the databases ended up pretty weird (as loads of flat files), which made my Notion spider diagram look super weird. Anyway, I love Obsidian now. I sync my vault between my devices with Syncthing, and when there are editing conflicts, I use a great plugin.
Spotify -> https://codeberg.org/swiso/website/issues/26
Several months ago I was removed from a Spotify Family plan that I was on, so stopping my Spotify usage was pretty easy. I didn't resubscribe, and I mainly listen to the radio now (BBC Radio 6 Music ! the best station !). Sometimes, I miss being able to choose what I'm listening to. I tried to get SoundCloud, but it didn't have as much music on as I wanted (or it was restricted to a "super Pro" version). However, I do want it back. I might re-subscribe soon.
DNS Registrar -> https://dnsimple.com/ https://www.namecheap.com/ https://domainr.com/ https://www.namesilo.com/ (API) https://www.name.com https://desec.io/
to be honest, mine wasn't an evil corporation, I just wanted a new one (I was using 123-reg and it's super annoying to configure my DNS settings). It was difficult to web-search for this, and I ended up using Porkbun, which isn't even on the list above.

email

Format-break. I spent a long time looking at options, and ended up finding a bunch. Here was a list I had:

I wanted to use a custom domain (alifeee.net), I wanted to use wildcard domains (anyone@alifeee.net), I wanted to use maybe a few custom domains (alfierenn.dev), I wanted to use IMAP and SMTP (so I could view my emails with Thunderbird). Turns out those requirements were restrictive to make a lot of the above list bad options, which left me Proton or Mailbox.org.

There was a problem with Proton which I can't remember, so I am using Mailbox.org. I like it. Free your email.

The End

I started the push maybe six months ago. Maybe I did OK, maybe I didn't. But, I certainly made some changes, and I think that's good.

Why not take a look at https://switching.software/ and think about whether you are fine with the number of tentacles that American Big-Tech companies have in your life.

back to top

flashing an old Android phone with LineageOS # prev single next top

tags: lineageos, android, hacking • 921 'words', 276 secs @ 200wpm

Why

I had an old Android phone I didn't use, and a lover who wanted to use Ankidecks without paying £30 for the Apple version. The Android version is an open source app.

What I'd looked at before

A while ago I looked into installing GrapheneOS or CalyxOS on my Android phone, which is a Google Pixel something, but after researching, found there could be problems with banking apps and other "secure apps", and I decided it wasn't worth the pain.

But, I still wanted to see what it was like, so I looked into installing something that wasn't Android onto my old phone, a Samsung A70. Neither GrapheneOS, nor CalyxOS, nor LineageOS supported the device, which was a bit annoying. One of the greatest uses for me for open source, freeing OSes, seems to be installing them on old software to give it more life (see: Linux), but I suppose these are for different audiences (people who already have a really expensive phone and can afford to now also have privacy).

What guides to follow

After a bit more searching the web, I found an unofficial build for the A70, so I started installing! The process took a while, and I mainly:

What steps to take

From the first one, the process was somewhat:

  1. Install necessary computer software (ADB, drivers, etc.)
  2. Download packages (ROM, recovery, apps, etc.)
  3. Prepare device & Unlock bootloader
  4. Flash custom recovery
  5. Flash custom ROM
  6. Install Google apps
  7. Reboot and personalize

...which is a lot of steps, including a lot of strange words. But, probably doable. From here, I describe all the "annoying little specific things I had to do":

Specific things I did

download files

…resulting in

$ cp  lineage-21.0-20241031-recovery-a70q.tar recovery.img.tar
$ ls
lineage-21.0-20241031-recovery-a70q.tar
lineage-21.0-20241031-UNOFFICIAL-a70q.zip
MindTheGapps-14.0.0-arm64-20250203_200051.zip
odin4
recovery.img.tar

fuck around with Linux permissions

I do a lot of this with thermal printers and web servers and... yeah. Here, I make "Samsung phones" (USB devices that have a vendor ID of 04e8) writable by anyone (0666) and owned by the plugdev group (and also add myself to that group).

$ echo 'SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666", GROUP="plugdev"' \
  | sudo tee -a /etc/udev/rules.d/51-android.rules 
$ sudo usermod -a -G plugdev alifeee

One thing I find every time with groups is that if you add yourself to one, you aren't in it until you restart the device. Not wanting to restart my PC with all my tabs open, I usually run sudo su alifeee in a terminal and then the "new" user has the group.

install "recovery image"

I'm still not sure what a recovery image is, but I now describe it as "a thing that lets you install other things (OSes)". I had to enable "OEM Unlocking" in the Android developer settings, reboot the device holding all the buttons, then choose "unlock device".

It didn't work (odin said there was an error), and after some advice from the web, I booted to Android, turned on WiFi, and tried again, and it worked. Strange. Then I ran:

$ ./odin4 -a recovery.img.tar -d /dev/bus/usb/001/017
Check file : recovery.img.tar
/dev/bus/usb/001/017
Setup Connection
initializeConnection
Receive PIT Info
success getpit
Upload Binaries
recovery.img
vbmeta.img
Close Connection

install LineageOS

At this point, when I restarted the phone, I had a neat recovery thing with some buttons, that reminded me of SpaceTeam or Space Trader. I clicked apply update > apply from ADB and then uploaded LineageOS and Google Apps with:

$ adb -d sideload lineage-21.0-20241031-UNOFFICIAL-a70q.zip
Total xfer: 1.00x
$ adb -d sideload MindTheGapps-14.0.0-arm64-20250203_200051.zip
Total xfer: 1.00x

…then "reboot system now", and I'm in!

I installed F-Droid, a FLOSS app store, and then AuroraStore, which is a mirror (or something) of the Google Play Store, so you can install Google Apps with it.

the end

I skipped about 3 hours of screwing around, trying to run things, running the wrong things, finding advice on the Internet, discarding advice from the Internet, and otherwise encountering unexpected things. Computing.

But, it was an OK process. Not as fun as when I cracked a Wii. But a (much more usable) neat LineageOS phone as a result.

back to top

choosing a free and open Android keyboard # prev single next top

tags: android, free-software • 485 'words', 146 secs @ 200wpm

A few months ago I was trying to find a keyboard to replace SwiftKey (Microsoft's Android keyboard). The other behemoth in the arena is GBoard, Google's Android keyboard. I didn't want to use either of these because... they're privacy-invading megacorps. My morality aligns more with that of switching.software or this page on digital solidarity networks.

What I wanted

I wanted to find a keyboard that had:

What I chose

(spoilers) I ended up choosing FUTO keyboard, as it seemed ethically good, even though I don't fully enjoy the story of the FUTO organisation. From the about page - it seems fully funded and fully run by one rich guy who escaped silicon valley. I'd rather something more cooperatively minded, but hey-ho.

After using it for a few months, I have gotten used to its quirks (such as not autocorrecting if you are typing a word in between words not separated by a space, etc) and I am not regretting switching nor missing SwiftKey.

The others

Here are the others I considered:

back to top