Automatic notes backup on macOS with hammerspoon

I’m a backup nerd and like to back-up everything I do. Not just that, I like to version them too so I can go back in time to any point. git serves as a good tool for me for versioning wherever small data/text files etc are concerned and then I back this up with remote git servers like my own git server on a raspberry pi at home, a gitlab server and a github server. [Read More]

Fixing the Raspberrypi 4 Ethernet disconnection problem

I added a Raspberry Pi 4B recently in my ever expanding homelab. To get the best network with the new gigabit ethernet port on the raspi, and still save power, I added a PoE hat to it so I could power the raspi as well as provide it data through the ethernet port. Everything worked fine except that I ocassionaly got into situations where the raspi stopped responding suddenly. Initially I thought that it’s crashing due to some issues and used to just restart it manually. [Read More]

Migrating my hugo blog from Gitlab/AWS S3 to Github Pages with Actions

Until Now - The State of the union This blog is generated using hugo, an awesome static site generator. So far, the workflow I used to deploy it was: Push commit to the source repository on GitLab GitLab CI kicks off on receiving the push CI downloads latest version of hugo and generates the static site Runs aws-cli to sync the new files to AWS S3 S3 serves the static site Cloudflare provides: DNS services (so I can use https://shantanugoel. [Read More]

Integrating SDL2 with bazel on macOS

Bazel Came across bazel build system recently at my new job and found it to be quite nice compared to my earlier mainstays CMake and Make. It’s fast and correct, just as their website says. But I also liked it because it’s explicit with very little magic. And it has a powerful query/tools system that allows you to really analyze your builds and dependencies in depth. Though examples in the wild are a bit less since it is a fairly recent entrant compared to its competitors. [Read More]

Practical Reverse Engineering Tutorials Part 2: Protostar Stack4

About the challenge In this article, we’ll go through the Protostar stack4 challenge. This would be a bit similar to the stack0 challenge that we already tackled earlier, but it will think about an interesting way to get alternate code to execute instead of just modifying data. Pre-requisite: Make sure you’ve completed the Part 1 of the Practical Reverse Engineering Tutorials series. It’d also be great if you can try stack1-stack3 challenges on your own as they are similar to stack0. [Read More]