Git hooks: Permission denied on a new HDD

I recently got a new Samsung 860 EVO 1TB SSD to add to my existing 128GB SSD that was filling up fast. After setting up the SSD on my machine using fstab, I started moving all my vagrant boxes and projects to a new partition dedicated to development. I mounted all the partitions under my home folder, and gave myself ownership of the respective folders.

I was ready to submit a patch to Wikimedia’s Gerrit platform. When you commit code, Gerrit runs a git commit-msg hook to add a Change-Id to every patch that is submitted for review. Committing code locally gave me the following error,

Continue reading “Git hooks: Permission denied on a new HDD”

Configuring Intel WIFI on an Asus Vivobook running Debian

I recently bought an Asus Laptop. I will be using this laptop while traveling and to work from coffee shops whenever the opportunity to do so arises.  My desktop is running Debian Stretch (Stable) but since the hardware on this laptop is fairly recent, I decided to install Debian Buster (Testing) on it. In this blog, I’ll talk about how I set up the WIFI during the OS installation and post installation.

Continue reading “Configuring Intel WIFI on an Asus Vivobook running Debian”

Updating ghost-cli process name

Imagine you’ve created your new Ghost install but have set it up with the incorrect process name. The official documentation does not tell us how to update it, it just tells us that it can be set using the --pname flag during initial installation. Let’s look at how we can update the process name after we’ve installed our site.

Continue reading “Updating ghost-cli process name”

Renewing Let’s Encrypt certificate

Have the following command setup in my crontab to renew the certificate for this blog, and for the main website –

This causes the command to run,

At 03:30 on day-of-month 1 in every 2nd month.


Incase you want to add more domains to an existing certificate, you can use the following command –

This assumes that you have only a single certificate. If you’ve more, you’ll have to use --cert-name. Read more here.

Just putting this here for reference, and with the hope that it might be useful for someone else.

Setting up a blog using Ghost on Debian

My web hosting’s annual payment date was drawing close, and instead of renewing it, I decided I’d rent a server on Digital Ocean for 10$ a month. It turns out to be a lot more expensive but gives me the option to use the server for something other than just blogging and running PHP application.

After shifting to this new server, the first thing to do was to migrate my blog here. WordPress is an amazing platform, but over the years it has evolved to something a lot more than just a blogging tool. Besides the new kid on the block – Ghost, was creating a lot of buzz for its simplicity. I wanted to give it a try.

I setup my Digital Ocean server with Debian (Jessie 8.2). Node.js is required to run Ghost. Since I wanted to use this server for multiple applications, I decided I’d put nginx as a front facing proxy/compression server.

This blog item is a guide for setting up Ghost on a server running Debian. Let’s start,

Continue reading “Setting up a blog using Ghost on Debian”

My tools on Linux

Update 2016-01-16

Development of Crunchbang has now stopped. There are a few community spin-offs available, Bunsen Labs and Crunchbang++. I’m now using a netinst version of Debian at home with the i3 window manager, and Bunsen Labs on my office laptop. Both are working well. I’m still using the same set of software for my work, in addition to a few more, so this post is still valid.

I’ve been using Linux at home and work for over 5 months now. I’m using a Debian based distribution called Crunchbang. Over these past few months I’ve developed/programmed using multiple technologies and have gathered a collection of tools, that I use on a daily basis.

Eclipse with NodeEclipse – Check UpdateIDE for Node.jsLink
NetbeansIDE for PHPLink
DbeaverGUI client for Cassandra and othersLink
MySQL WorkbenchMySQL/MariaDB GUI clientLink
DiaFlowchart and DiagramsLink
SoapUITesting – API and Web ServicesLink
TildaDrop down terminalLink
RemminaGTK RDP ClientLink
TomboyNote Taking AppLink
GMTPMTP ClientLink
GIMPImage manipulationLink

Continue reading “My tools on Linux”