Nvim

I have been using nvim for a while. Initially with VS Code, and then as replacement for vi/vim from the terminal.

Since I use Doom emacs as may primary editor, I use nvim only for occasional quick edits here and there.

So I had not paid attention, but nvim the ecosystem is getting better.

TIL that there are two ways to configure nvim. Via VimScript and Lua

Need to look into each and decide which one to use.

Continue Reading »

Integrated terminal in Emacs

I spend most of my time in Emacs and Terminal. I make code changes in emacs and switch to terminal to run the tests. It would be nice to do that without switching between the two.

In the past, I had tried shell-mode and inferior shell (python) for this, but it didn’t work, till I found vterm

Continue Reading »

Install LetsEncrypt certificate

Today I installed LetsEncrypt certificate on one of the production server.

I can not believe it is so simple to secure a website running on an Ubuntu server

sudo apt-get install certbot python-certbot-nginx
sudo certbot --nginx -d mydomain.com -d www.mydomain.com

It even configures nginx (or apache) server for you.

To manually renew run the following:

certbot renew --quiet

But you don’t have to, cause certbot is so awesome that it automatically adds an entry into crontab so that certbot runs twice daily. There is an entry under /etc/cron.d/certbot

Continue Reading »

Configure `rsyslog`

Today, I configured rsyslog on Ubuntu server to collect logs from remote application server.

syslog using UDP seems straight forward, but I wanted to set up using TCP (TCP being more reliable and all)

At first, it did not work because I needed to tell SysLogHandler that we are using TCP using SOCK_STREAM as optional param. (Default is UDP) So in a standalone test script, remote logging worked.

Turns out because of how TCP works, the logs are not flushed to the remote server till the application server closes the socket connection.

Continue Reading »