Categories
Linux

Bypassing the NAT – Reverse SSH tunnel with port forwarding!

This was a really confusing and difficult article to write! But yes, I finally figured it out and wanted to share it with you guys. Hope the article helps someone! Problem I had recently moved to China, where I discovered that the carriers used CGNAT to combat the growing problem of shrinking IPv4 assignments. No […]

Categories
Games

Recovering a Minecraft Hardcore world

It’s 2018, and while everybody else is engrossed in Fortnite, PUBG, and Overwatch, I’m buried deep in Minecraft. …yes, I am a nerd. I figured that my Minecraft experience would prevent me from doing anything stupid and decided to set the world to Hardcore. I got really attached to the world, making and building wonderful […]

Categories
Linux

Create a Windows installer USB in Linux

A few days ago, I had to take a bunch of online courses for SAT and AP preparations. The problem? The website used something called “Kollus Player,” which only worked on Windows. sigh Even though I didn’t like it, the only solution was going back to Windows. (and yes, before you ask, I did try […]

Categories
Android Linux

Finding fstab on Android

When porting a new device, you need to figure out the mounting points for the various partitions on your phone. Maybe you need them to back up existing system files for dissection later, maybe you need to experimentally flash a build to a partition. Except, since it’s classic Android, there is no simple /etc/fstab file […]

Categories
Android Linux

How to unpack .rfs files

While modifying the SCH-i909 ROM, I extracted the firmware and found weird .rfs files instead of the usual .img files. What is this? Google, unfortunately, had no answer. Moreover, I could NOT, for the life of me, figure out how to create an .rfs file for the new firmware, until I discovered this tutorial on […]

Categories
Developer

Force git to sign your commits

Since GitHub puts a nice shiny “Verified” next to your commits if you sign them with GPG, you might be wondering how to get on this bandwagon. Not to worry! With this one simple trick, you’ll never have to remember to type git -S, ever again! Did you forget your GPG keys? Alternatively, check out […]

Categories
China Linux

Set up a network wide VPN using Ubuntu Server

Isn’t it fun living in China? The answer is – it depends. And if you’re a foreigner craving for your Netflix binge and YouTube addiction, this just might be the solution to your problems. Enter the network-wide VPN – your own gateway that you will set up to tunnel your entire home’s network! Prerequisites You […]

Categories
China

Reset service password on China Mobile

On China Mobile, when you need to check up your fees or change your plans, you need something called a “service” password, or fúwù mìmǎ (服务密码). And if you don’t have a Chinese passport and citizenship and their ridiculous ID system, you will not get through the automated calling system they have, or the online […]

Categories
Android

Participating without participating – Google Bug Review

You’ve probably come across at least one Google Bug review if you’re an avid Android user. There’s a lot of fun bugs to address – such as the breaking changes introduced in Android P that denies access to Overlay Management Services with Substratum, for one. To help the bug gain more visibility in the review […]

Categories
Apple

Use NSSavePanel in Swift

TL;DR for impatient developers: Don’t forget to allow the app to access the filesystem. Okay, we need to make a dialog, so let’s make a variable named dialog and assign it the NSSavePanel. So far so good. Then we have to set some parameters. Let’s give the dialog a title-bar name. The parameter names are […]