DIY Docker on Apple silicon M1

When Apple announced the transition to Apple's own ARM-based silicon, I was ecstatic! I've always enjoyed tinkering with ARM based single-board computers such as the raspberry pi 4 and Pinebook Pro. But they always had sub-par performance and here was Apple trying to transition their entire lineup! Even though we all knew the performance should be good based on how recent iPad Pros scored, I don't think many expected the M1 chip, Apple's first iteration, to then beat Intel's most high-end CPUs while redefining "all-day battery life"! So naturally, I found myself clicking buy on day 1, something I rarely do before doing a ton of research. I ended up ordering the base Macbook Air but bumping up the RAM to 16GB in order to better run Docker. Disappointment: Docker support not ready My machine arrived quickly, despite getting shipped directly from China as a result of my memory upgrade. The first step was to setup the environment just the way I liked

Alternate VIM Reloaded

A little over 6 years ago, or just 2 posts below :), I wrote about how I use VIM from the command-line to invoke a GUI version of VIM, where each file would appear in a separate tab. I've stuck with that setup to this day, where VIM is still my main IDE whether working on Linux or macOS. Recently I bought a pine64 based PINEBOOK Pro  laptop which is powered by a low-cost ARM64 Single Board Computer (SBC) . This came pre-installed with Manjaro KDE edition of Linux. Though this laptop is no slouch (I find myself using it more thanks to 8hrs+ battery), I wanted to keep it lean without loading too many GTK apps. KDE, being built on Qt, I decided to try neovim-Qt, which is powered by neovim, a somewhat newer rewrite of VIM, that is pretty slick and fast. This is how I got neovim-Qt working in a similar manner to that of vim / gvim. Install packages First, install neovim-qt. On Manjaro, this would involve pacman. sudo pacman -Sy neovim-qt Next, the secret sa

Re-installations made easy with Install Buddy

I love Linux! For those who know me, that's somewhat of an understatement. That's because, over the years, I've been known run almost every Linux distro you can think of, on devices you probably didn't think of. I actually enjoy the process of installing and configuring the system because every distro and device/platform has its quirks and unique challenges to get it working. Over the years, I've compiled a list of useful software packages that I've grown to like and can't live without. However, I didn't much enjoy manually installing the same list of packages every time. I often found myself comparing the newly installed system with the current one to figure out what needed to be installed and configured. I got tired of this few years back and so that's why I created Install Buddy! Think bootstrapping, not a configuration management Configuration management systems are great f

VIM Reloaded

It’s been a really really long time since I last blogged so bear with me while I try get a little bit of my mojo back :) I’ve been busy changing countries, cities, apartments, jobs – the usual stuff life throws at you. But the one thing I’ve tried to change and keep coming back to is my beloved editor – VIM. This post is on making VIM a little better, like that other one developers tend to use these days. Don’t get me wrong, I’m not suggesting VIM is better (or worse). But after having used VIM for so long, I don’t want to just give up on it. If you’re in the same camp then read on. Get me some of that WYSIWYG I know what you’re thinking – VIM is awesome because its all terminal. And there is no reason to give that up! I haven’t, especially for those quick edits. However when it comes to coding for any length of time, my goto editor has been one where VIM is wrapped in WYSIWYG goodness. I’m talking about the likes of gVim alternatives such as vim-gnome (Linux Gnome

Peer-to-Peer Collaborative Development Using GIT

Wow how time flies when you’re having fun! I first thought of writing this post back in January, when I was on a roll with writing blog posts. But it never materialized beyond notes I collected in preparation. Come several months later with a lot more experience on what I am about to tell you, and you have this post. The notes I’m referring to is about a development style that came about as a result of optimizing, how we at thinkCube organize and work with source code in a revision control system . Considering the wide use of such systems such as SVN and GIT, I thought I’d share our development experience in the hope it will help you to take another look at your own development style. But before I get into it, I’d like very briefly touch on some background on the evolution of development styles around version control systems. Thou shalt not commit, Yet! Back in the days of CVS , source code lived centrally on a server called a repository. One had to earn the right to read/write to

A New Desktop for a New Year

Compared to other new years where I would spend some time cleaning up my room or upgrading my gear , this year I did none of that! Instead I invested some time cleaning up my online space starting with a brand new distro. I’m a big fan of MacOSX’s Lion desktop and wanted to bring some of that minimilistic simplicity to the Linux desktop. So if the above screenshot looks appealing, then read on to see how you too can get a modern desktop that is simple and elegant. Unlike some of my previous desktop customization article, I’ll keep this one to the bare minimum so that you can implement it fairly quickly. Installing the base OS IMHO, Gnome 3 is the best next thing when it comes to being a modern desktop. I realize this is a controversial statement, given news of some ditching and some forking the project. But IMHO when you have a project that can polarize a community that was once united, it means you’ve got true innovation - not just incremental tweaks. Having said all that, I’v

Track Your New Year Resolutions With

I know, I know, it’s a bit of a cheesy title to promote my Open Source project but here me out - it really does work. Though I didn’t really write it to track my new year resolutions (I’ve never found them effective beyond a week), I did write it out of constant frustration with not finding a TODO productivity tool that stuck with me. Let me explain… I’ve tried EVERYTHING! Google Calendar & tasks Sending myself Emails Wiki (Dokuwiki, Mediwiki, Twiki etc.) Tomboy Tomboy with UbuntuOne & Android App EverNote Remember the Milk Gedit notes on my desktop Post-it notes widget Actual Post-it notes Old-skool diary Pieces of paper including backs of payment receipts From the above list, if anything came remotely to sticking as a habit, then it’d be the sticky notes & pieces of paper. I’m not suggesting the other methods suck, but I wouldn’t use it beyond a couple of weeks. Why was it that despite me spending hours on a computer, the best thing that had a chance of r