mutt integration with Gmail using OAuth

As I mentioned before, I am a heavy terminal user, including viewing and replying emails with it. Mutt is my email client. Once you have setup your 2 factor authentication with Google, you won’t be able to access your Gmail using IMAP with your password, you’ll have to generate a specific password for the so called “Less Secure Apps”. There is a problem with that, if you use IMAP with less-secure-app password on your company account where “less secure app” is not allowed, you are probably stuck.

In this tutorial, I am going to show you how to setup the Google recommended OAuth 2.0 way with Mutt.

Continue reading “mutt integration with Gmail using OAuth”

Resolve virsh start a domain (VM) failed problem

After CVE-2019-11477 and a few other CVEs broke out, Linux kernel released 5.1.11 to address the vulnerabilities. My VM host machine is constantly running on the latest kernel (provided by ELRepo).

When I reboot into the new kernel and want to start one of my KVM boxes, this error appears:

Host CPU does not provide required features: spec-ctrl

Continue reading “Resolve virsh start a domain (VM) failed problem”

tmux select then copy to clipboard

Using mouse to select text with tmux sometimes is inefficient. For my setup, I’ll have to press shift key during text selection and keyboard copy will convert empty line as spaces. The following 2 lines in the configuration file works with version 2.8 (latest at the time of writing).

Continue reading “tmux select then copy to clipboard”

PHP session issue with Remi php-fpm

Using redis for php session brings a lot of advantages, such as faster responsiveness to your website, however the down side could be not very stable and you may lose all redis cache on server reboot. As long as we have a HA setup of redis server we can prevent such thing from happening.
Continue reading “PHP session issue with Remi php-fpm”

SOCKS5 as a VPN under Linux

Being able to proxy via SOCKS5 on browser sometimes wasn’t enough, one needs a system-wide proxy. The best and simplest solution is of course VPN, but VPN is not as fast compare to SOCKS proxy like ShadowSocks under Linux. What can we do? In this article, I am going to briefly introduce System-wide SOCKS5 proxy for all applications.
Continue reading “SOCKS5 as a VPN under Linux”

Weechat – FiSH key exceed 56 bytes (448 bits)

Recently I came across a problem. My friend could not decrypt the channel message in IRC as the channel has a blowfish key exceeds 56 bytes of size. I don’t know about the mIRC implementation (fish10) but in weechat under Linux, I found a solution.
Continue reading “Weechat – FiSH key exceed 56 bytes (448 bits)”