E-Paper Based Weather Dashboard

Weather dashboards are a dime a dozen but I have been looking for one that is e-paper based primarily to serve 2 purposes: Battery Life: E-paper based screens are not consuming power when they are displaying information, only when they need to reach out to the internet to obtain it. Crisp Display: E-paper screens can … [Read more…]

Plus Address Forwarding With Postfix

One of the advantages of running your own mail server is the ability to enable address forwarding for email addresses handed out to third parties. Particularly, in these times where customer hungry corporations are always looking to harvest email addresses, I make it a point to have a different account to give out so that … [Read more…]

More fun with Signed / Unsigned Comparisons

Here is why one should be very careful while mixing signed and unsigned integer comparisons. Take a look at this code snippet below: #include <iostream> #include <string> int main(int argc, char *argv[]) { std::string presidentsOrders = “NO lets do more sanctions”; unsigned int pos; pos = presidentsOrders.find(“YES”); if (pos != std::string::npos) { std::cout << “Lets … [Read more…]

Using Lets Encrypt Certificates for Postfix and Dovecot

Recently, the self-signed certificates that I use for Postfix / Dovecot on my mailserver expired and I decided to try using Lets Encrypt to obtain certificates for them. Lets Encrypt is a fully trusted free Certificate Authority developed by a consortium of organizations to promote a more secure internet. I particularly like the fact that … [Read more…]

Using ddclient for DDNS

I use ddclient to update my dynamic IP address which is assigned by Comcast. This is the gist for the ddclient configuration: # Configuration file for ddclient generated by debconf # # /etc/ddclient.conf daemon=5m syslog=yes use=if, if=eth0 ssl=yes use=web, web=myip.dnsomatic.com protocol=freedns login=abcd password=’CENSORED’ asrivas.me www.asrivas.me mailserver.asrivas.me

Memory Barriers on x86

Recently, there have been some interesting discussions at work going on around the correctness of system critical code and how memory barriers actually operate on x86. This is a very poorly understood concept mainly due to the ambiguity of the Intel / AMD manuals on the subject. x86 has a much stronger memory model than … [Read more…]

Upgrading the HomeLab

I have been wanting to upgrade my homelab for a while now to allow for running more experimental VMs. I already had six VMs running on the HP Microserver which was much more than could be handled by the AMD Turion 1.2Ghz single core 2 threaded CPU. I decided to go with the ThinkServer TS140 … [Read more…]