Quaintous Author Pouyan Fotouhi Tehrani
Categories Tutorial
2026-01-07 Setup SSH Authentication using FIDO2 Keys (Passkeys) on a Yubikey
I wanted to secure my SSH keys using a Hardware token, a series of bugs and config complications proved that it is harder than I thought.
2025-12-23 Hiding Homelab IP behind Tiny VPS using Wireguard
My home IP should be private. So I’m hiding it behind a public IP and tunnel the traffic through Wireguard.
2025-03-16 Setup Broadcom Fingerprint Driver (Dell ControlVault3) on Ubuntu 24.04
Dell sells Ubuntu certified laptops, yet the latest releases are not always supported. That happened as I wanted to install Broadcom Fingerprint Drivers for my Dell Latitude.
2023-05-08 Migrate Nextcloud Snap to Podman (or Docker)
I did not manage to get Nextcloud Office to run on my old “Nextcloud Box”, so it was time to move on.
2021-09-19 Whitelist TTY access using udev instead of joining dialout
Having my user as part of dialout somehow gives me the creeps, yet I don’t want to sudo my way to UART on my microcontrollers. So, here comes the udev!
2021-02-17 Removing DRM from E-Books on Linux
I used to remove DRMs from my E-Books using Calibre on MacOS because there is no Adobe Digital Editions on Linux. Now I’ve found way to solve this on Linux!
2020-12-25 Migrating managed Wordpress instances to NGINX + PHP-FPM
As my managed wordpress services got too restrictive, it was time to move to my own VPS.
2020-09-17 One-liner to remove bloatware from Android
Sony does not allow removal of Facebook and Netflix from their Xperia devices; it is not hard to do it anyway!
2020-04-19 2FA Linux Smart Card Authentication (PAM + PKCS#11)
Are you paranoid enough to add smart card authentication as a second factor to your linux login (next to your password protected bios and encrypted file system)? Well you’ve come to the right place.
2016-08-12 Test and Code Coverage with GitLab Docker Runners
This article discusses how to use Docker containers as GitLab Runners to do test and code coverage for Java and Node.js projects.
2016-03-16 Polymer 1.0 Internationalization
A simple component which provides other components with a localization behavior which can be either used for computed bindings or simply anywhere in code.
2015-12-26 Configuring OpenVPN on OpenWRT
A quick how-to on configuring OpenVPN on OpenWRT
2015-10-20 Map an existing REST API to a D-Bus service
The journey of porting an already designed REST API to a D-Bus service while trying to stay loyal to the original design.
2015-08-30 That tutorial on D-Bus in C++11
Or how to glue together different programs running in parallel on a Linux machine with dbus-cpp library
2015-07-31 The Mystery of jQuery in Nodejs
jQuery is written in Javascript and Node.js is a Javascript runtime, so why using jQuery in Node.js doesn’t make sense? (actually it might, but let’s all agree that it doesn’t)
2015-07-09 React Components with Material Design Lite
A brief introduction on how to develop React components using Google’s MDL framework
2015-06-23 V8 global proxy object in C++
As a JavaScript engine, V8 implements a number of standard JS functionalities, which are available through the global proxy object. These can also be used inside C++ modules that are using V8 interface, such as Node.js addons.
2015-06-12 Linking in node-gyp For Non-C++ Programmers
Creating native Node.js addons can be real headache if you are comming from a interpreter language background. Most common pitfalls and mistakes leading to compilation and linking failures are discussed here.
2015-06-09 React Auto Update Component
How to build a simple that can be embedded into any React component to automatically update its state using AJAX.
2015-06-07 Sharing Models on Client and Server Side
See how it is possible to share MVC models between backend and frontend using JavaScript on both ends.
License: No JavaScript (Notes)
No Tracking