iOS14 Charger Connect & Disconnect Sounds

This seems to be very popular with the release of iOS14, & I’m writing this up as a personal reference so I don’t have to continue to watch the great setup video that u/zeeshan_02 posted on Reddit: Beginner’s Guide on Playing a Custom Sound when Connected to Charger! Shortcut 01: Encode Audio This converts a sound file (in my case I was using an MP3) to Base64, for later use by the next shortcut: ...

September 21, 2020 · Sean P. McAdam

Super Mario 64 Natively on Android

Found a post on XDA about building Super Mario 64 for Android using Termux, & figured I’d try it out for fun. Source: XDA Developers: Super Mario 64 can be natively run on Android without a Nintendo 64 emulator Their instructions worked fine, so below is really just a copy & paste from the XDA post: ➜ ~ pkg install git wget make python getconf zip apksigner clang Checking availability of current mirror: ok Reading package lists... Done Building dependency tree Reading state information... Done apksigner is already the newest version (29.0.2-5). clang is already the newest version (10.0.1-2). getconf is already the newest version (0.5-1). git is already the newest version (2.28.0). make is already the newest version (4.3-1). python is already the newest version (3.8.5). wget is already the newest version (1.20.3-3). zip is already the newest version (3.0-5). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. ➜ ~ cd Development ➜ Development git clone https://github.com/VDavid003/sm64-port-android Cloning into 'sm64-port-android'... remote: Enumerating objects: 15616, done. remote: Total 15616 (delta 0), reused 0 (delta 0), pack-reused 15616 Receiving objects: 100% (15616/15616), 22.76 MiB | 5.71 MiB/s, done. Resolving deltas: 100% (7567/7567), done. ➜ Development cd sm64-port-android ➜ sm64-port-android git:(master) cp ~/storage/shared/Super\ Mario\ 64\ \(USA\).z64 baserom.us.z64 ➜ sm64-port-android git:(master) sha256 baserom.us.z64 The program openssl is not installed. Install it by executing: pkg install openssl-tool ➜ sm64-port-android git:(master) pkg install openssl-tool Checking availability of current mirror: ok Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: openssl-tool 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 185 kB of archives. After this operation, 643 kB of additional disk space will be used. Get:1 https://dl.bintray.com/termux/termux-packages-24 stable/main aarch64 openssl-tool aarch64 1.1.1g-4 [185 kB] Fetched 185 kB in 0s (214 kB/s) Selecting previously unselected package openssl-tool. (Reading database ... 14219 files and directories currently installed.) Preparing to unpack .../openssl-tool_1.1.1g-4_aarch64.deb ... Unpacking openssl-tool (1.1.1g-4) ... Setting up openssl-tool (1.1.1g-4) ... ➜ sm64-port-android git:(master) sha256 baserom.us.z64 SHA256(baserom.us.z64)= 17ce077343c6133f8c9f2d6d6d9a4ab62c8cd2aa57c40aea1f490b4c8bb21d91 ➜ sm64-port-android git:(master) md5sum baserom.us.z64 20b854b239203baf6c961b850a4a51a2 baserom.us.z64 ➜ sm64-port-android git:(master) ./getSDL.sh ~/Development/sm64-port-android/SDL ~/Development/sm64-port-android --2020-09-20 11:56:47-- https://www.libsdl.org/release/SDL2-2.0.12.zip Resolving www.libsdl.org... 2604:a880:1:20::181:e001, 192.241.223.99 Connecting to www.libsdl.org|2604:a880:1:20::181:e001|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 6784187 (6.5M) [application/zip] Saving to: ‘SDL2-2.0.12.zip’ SDL2-2.0.12.zip 100%[=======================================================================>] 6.47M 5.65MB/s in 1.1s 2020-09-20 11:56:49 (5.65 MB/s) - ‘SDL2-2.0.12.zip’ saved [6784187/6784187] ~/Development/sm64-port-android ➜ sm64-port-android git:(master) make --jobs 4 ... cp build/us_pc/sm64.us.f3dex2e.unsigned.apk build/us_pc/sm64.us.f3dex2e.apk apksigner sign --cert certificate.pem --key key.pk8 build/us_pc/sm64.us.f3dex2e.apk ➜ sm64-port-android git:(master) ls Android.mk Makefile.split assets charmap.txt enhancements key.pk8 sm64.jp.sha1 text CHANGES README.md assets.json charmap_menu.txt extract_assets.py levels sm64.ld textures Dockerfile SDL baserom.us.z64 data first-diff.py lib sm64.sh.sha1 tools Doxyfile actors bin diff.py format.sh rename_sym.sh sm64.us.sha1 undefined_syms.txt Jenkinsfile android build diff_settings.py getSDL.sh rsp sound Makefile asm certificate.pem doxygen include sm64.eu.sha1 src ➜ sm64-port-android git:(master) ls build us_pc ➜ sm64-port-android git:(master) ls build/us_pc actors bin endian-and-bitwidth level_rules.mk lib rsp sm64.us.f3dex2e.unsigned.apk src textures assets data include levels libmain.so sm64.us.f3dex2e.apk sound text ➜ sm64-port-android git:(master) ...

September 20, 2020 · Sean P. McAdam

OnePlus 7 Pro: LineageOS+MicroG

After a full weekend of originally getting CrDroid on my new OnePlus 7 Pro a few months back, I decided to switch to LineageOS+MicroG because I was never able to get location working on CrDroid. This was mostly due to the changes in Android 10, but when I was still unable to get it working with the new UnifiedNLP package, I just decided it was easier to switch & settled for reinstalling MicroG, which I had avoided on CrDroid because I wanted to avoid as many Google services as possible. ...

August 31, 2020 · Sean P. McAdam

OnePlus 7 Pro: Update System Firmware on Custom ROM

Follow up to the OnePlus 7 Pro: LineageOS+MicroG post, where I mentioned I would have to update the Bluetooth & Modem firmware on my device. This fortunately went as smoothly as the LineageOS+MicroG install, so I’m very happy about that. The first step was downloading the latest OxygenOS ZIP through this post: XDA Developers: [ROM][STOCK][FASTBOOT][OP7P] Stock Fastboot ROMs for OnePlus 7 Pro/ 7 Pro 5G by mauronofrio. The specific ZIP i pulled down from Android File Host was “10.0-GM21AA-OnePlus7ProOxygen_21.O.20_OTA_020_all_1909172051_db7a3f61-FASTBOOT.zip”. From there, it was just a simple matter of extracting that, images.zip, & flashing the bluetooth.img & modem.img files: ...

August 31, 2020 · Sean P. McAdam

Remapping Hardware Buttons: Mi MIX 3

Now that I was able to get my Mi MIX 3 setup with TWRP & a custom ROM (unofficial LineageOS 16 build), I started looking into remapping the AI button to something actually useful. I found a few posts to point me in the right direction, as well as a Magisk module that is supposed to handle this: StackOverflow: ADB Shell Input Events Android Developers: KeyEvent StackOverflow: Need table of key codes for android and presenter I tried out a bunch of the codes to see what would work, & for now just remapped the key to SEARCH, until I can find something better \ more useful. ...

June 2, 2019 · Sean P. McAdam

Custom ROM on Mi MIX 3

I recently picked up a Xiaomi Mi MIX 3 & was able to unlock the bootloader after the 72 hour waiting period. That wasn’t a problem, however getting TWRP up & running was where I had a problem. For some reason, whenever I would flash TWRP, but device was stuck in a fastboot loop – could not reboot out of it, boot the TWRP image, or any other method of exiting fastboot. I finally got TWRP working properly after flashing perseus_global_images_9.5.17_20190517.0000.00_9.0 _global_134d3070e5.tgz. I tried flashing one of the China ROM’s, & that was of no help. ...

May 27, 2019 · Sean P. McAdam

Show Actual Clients in Pi-Hole Console

Finally took care of something I’ve been meaning to do for a while… I now have my Pi-Hole showing the real client source IP’s instead of the router & localhost. I have this post to thank: Pi-Hole Discourse: [SOLVED] Can’t see device list on Pi-Hole Admin.

April 15, 2019 · Sean P. McAdam

Protecting Linux Login with 2FA

This is definitely not the first time I’ve tried getting this working, but glad I was finally able to. Looks like if I had read a bit more, I never would have run into issues… By the second or third time I ran into problems, I at least figured out why: with my home directory being encrypted, the “secret” 2FA files could not be accessed & verified. Now for the fun part… It looks like Google had the instructions for encrypted home directories in the README the whole time. ...

January 22, 2019 · Sean P. McAdam

Password "Complexity" Requirements"

I actually forget what web site this one, but found this little gem while trying to setup a new account: I guess my password doesn’t meet their requirements? Then I decide to use this instead. No, I didn’t actually make my password “password123” but I would have thought a site warning my against it wouldn’t allow “password”+< something >. The fact that it wouldn’t accept my random password probably should have been my first hint that it was not going to go well.

January 5, 2019 · Sean P. McAdam

FINALLY Got my OpenVPN Server Setup on My DD-WRT Router

This took way longer than I would have liked, but at least it seems to be working right now. After moving recently, I needed to purchase a new router, leaving my rooted Google WiFi AP’s behind. I decided to replace it with a D-LINK AC2600 EXO MU-MIMO Wi-Fi Router. After some more router related fun, I was able to get DD-WRT custom firmware running on the device. With that finally in place, my next project was to get the OpenVPN Server feature enabled. I had all the certificates & keys I needed, it was just a matter of getting the right config in the DD-WRT Admin GUI. Below is what I finally had in the “Additional Config” field that, that ended up working: ...

January 1, 2019 · Sean P. McAdam