Using Git Conflict Style Diff3 to Easily Resolve Merge Conflicts

There is a git setting that is off by default, but when turned on, it makes resolving merge conflicts trivial. That setting is merge.conflictstyle = diff3. This setting is a merge conflict resolving superpower. Even if you had nothing to do with the changes in the two trees you are merging, with it on, you are able to infer the correct resolution.

Read more >>

Text Manipulation and Modifier Keys

About 3 years ago I switched my primary OS from MacOS back to Linux. I hadn't run it as a desktop OS since college and have memories of updates breaking my system, battling with Xorg configs, and slow, bloated DEs. However, this time around it has been a very positive and painless experience. It's been more stable than MacOS (despite using a rolling release distribution). And now that I'm running a Wayland compositor (Sway), I don't have any screen tearing or need to deal with Xorg configuration anymore. But the feature I've missed most from MacOS is having readline style bindings in all text inputs uniformly across the system.

Read more >>

Hosting a Static Website on IPFS

Update 2022-07-17: This post is outdated. While there is still a mirror of this website deployed to IPFS, the claims below that the page you are currently on is served by the IPFS network is no longer true if you are viewing this on https://alexdav.id. The non-IPFS version is now hosted by SourceHut Pages. The automatic IPFS deployment has changed as well, instead IPFS watching the domain, I have SourceHut Builds push the content to my IPFS gateway and pin it. (See .build.yml).

Read more >>

Personal Meta Packages

I use Arch Linux meta packages to manage the dependencies on my system. You can see all of my PKGBUILD files here. They are broken out into individual meta package groups based on the type of system I'm installing for.

Read more >>