-
Notifications
You must be signed in to change notification settings - Fork 24
Expand file tree
/
Copy pathindex.html
More file actions
8 lines (8 loc) · 16 KB
/
Copy pathindex.html
File metadata and controls
8 lines (8 loc) · 16 KB
1
2
3
4
5
6
7
8
<!doctype html><html lang=en dir=auto data-theme=dark><head><meta name=generator content="Hugo 0.164.0"><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Madhur Ahuja</title><meta name=description content><meta name=author content><link rel=canonical href=https://madhur.co.in/><link crossorigin=anonymous href=/assets/css/stylesheet.cd9298b33628769aa1bc1acebbbfd7aa11ce81dfe03484d479e1907760249a1d.css integrity="sha256-zZKYszYodpqhvBrOu7/XqhHOgd/gNITUeeGQd2Akmh0=" rel="preload stylesheet" as=style><link rel=icon href=https://madhur.co.in/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://madhur.co.in/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://madhur.co.in/favicon-32x32.png><link rel=apple-touch-icon href=https://madhur.co.in/apple-touch-icon.png><link rel=mask-icon href=https://madhur.co.in/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://madhur.co.in/index.xml title=rss><link rel=alternate type=application/json href=https://madhur.co.in/index.json title=json><link rel=alternate hreflang=en href=https://madhur.co.in/><noscript><style>#theme-toggle,.top-link{display:none}</style></noscript><link rel="shortcut icon" href="https://www.gravatar.com/avatar/5352cde0b084abcd6d4d783c08a51c76?s=16"><link rel=stylesheet type=text/css href=/css/tagcloud.css><link rel=stylesheet type=text/css href=/css/site.css><link rel=stylesheet type=text/css media=print href=/css/print.css><script async src="https://www.googletagmanager.com/gtag/js?id=G-N14VDHYFHQ"></script><script>window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-N14VDHYFHQ")</script><meta property="og:url" content="https://madhur.co.in/"><meta property="og:site_name" content="Madhur Ahuja"><meta property="og:title" content="Home"><meta property="og:locale" content="en_us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Home"><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"Madhur Ahuja","url":"https://madhur.co.in/","description":"","logo":"https://madhur.co.in/favicon.ico","sameAs":["http://www.linkedin.com/in/madhurahuja","http://stackoverflow.com/users/507256/madhur-ahuja","https://github.com/madhur","mailto:ahuja.madhur@gmail.com"]}</script></head><body class=list id=top><header class=header><nav class=header-nav><div class=logo><a href=https://madhur.co.in/ accesskey=h title="Madhur Ahuja (Alt + H)">Madhur Ahuja</a></div><ul id=menu class=menu><li><a href=https://madhur.co.in/posts/ title=Blog><span>Blog</span></a></li><li><a href=https://madhur.co.in/archives/ title=Archive><span>Archive</span></a></li><li><a href=https://madhur.co.in/tags/ title=Tags><span>Tags</span></a></li><li><a href=https://madhur.co.in/projects/ title=Work><span>Work</span></a></li><li><a href=https://madhur.co.in/info/ title=About><span>About</span></a></li><li><a href=https://madhur.co.in/search/ title="Search (Alt + /)" accesskey=/><span>Search</span></a></li></ul></nav></header><main class=main><article class="first-entry home-info"><header class=entry-header><h1>Hi, I’m Madhur 👋</h1></header><div class="entry-content md-content"><p>A software developer who likes building things and writing about technology.</p></div><footer class=entry-footer><div class=social-icons><a href=http://www.linkedin.com/in/madhurahuja target=_blank rel="noopener noreferrer me" title=Linkedin><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 016 6v7h-4v-7a2 2 0 00-2-2 2 2 0 00-2 2v7h-4v-7a6 6 0 016-6z"/><rect x="2" y="9" width="4" height="12"/><circle cx="4" cy="4" r="2"/></svg>
</a><a href=http://stackoverflow.com/users/507256/madhur-ahuja target=_blank rel="noopener noreferrer me" title=Stackoverflow><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2.913 16.041v6.848h17.599v-6.848M7.16 18.696h8.925M7.65 13.937l8.675 1.8M9.214 9.124l8.058 3.758M12.086 4.65l6.849 5.66M15.774 1.111l5.313 7.162"/></svg>
</a><a href=https://github.com/madhur target=_blank rel="noopener noreferrer me" title=Github><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg>
</a><a href=mailto:ahuja.madhur@gmail.com target=_blank rel="noopener noreferrer me" title=Email><svg viewBox="0 0 24 21" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1.0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1.0-2-.9-2-2V6c0-1.1.9-2 2-2z"/><polyline points="22,6 12,13 2,6"/></svg></a></div></footer></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>This Blog Just Moved From Jekyll to Hugo</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/hugo/>Hugo</a></li><li><a href=https://madhur.co.in/tags/jekyll/>Jekyll</a></li><li><a href=https://madhur.co.in/tags/papermod/>PaperMod</a></li><li><a href=https://madhur.co.in/tags/static-site-generator/>Static Site Generator</a></li></ul><span class=entry-date><span title='2026-08-15 00:00:00 +0000 UTC'>August 15, 2026</span></span></footer><a class=entry-link aria-label="post link to This Blog Just Moved From Jekyll to Hugo" href=https://madhur.co.in/blog/2026/08/15/migrating-from-jekyll-to-hugo.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>WireGuard Docker Configuration Drift</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/wireguard/>Wireguard</a></li><li><a href=https://madhur.co.in/tags/docker/>Docker</a></li></ul><span class=entry-date><span title='2026-08-01 00:00:00 +0000 UTC'>August 1, 2026</span></span></footer><a class=entry-link aria-label="post link to WireGuard Docker Configuration Drift" href=https://madhur.co.in/blog/2026/08/01/wireguard-docker-issue.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Setting up SMTP Mail Relay with msmtpd and systemd Socket Activation</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/linux/>Linux</a></li><li><a href=https://madhur.co.in/tags/email/>Email</a></li></ul><span class=entry-date><span title='2026-07-01 00:00:00 +0000 UTC'>July 1, 2026</span></span></footer><a class=entry-link aria-label="post link to Setting up SMTP Mail Relay with msmtpd and systemd Socket Activation" href=https://madhur.co.in/blog/2026/07/01/setup-email-smtp-relay-gmail.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Secure Your Homelab: Exposing Services Selectively with WireGuard VPN and Traefik</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/traefik/>Traefik</a></li><li><a href=https://madhur.co.in/tags/vpn/>VPN</a></li><li><a href=https://madhur.co.in/tags/wireguard/>Wireguard</a></li><li><a href=https://madhur.co.in/tags/homelab/>Homelab</a></li></ul><span class=entry-date><span title='2026-06-01 00:00:00 +0000 UTC'>June 1, 2026</span></span></footer><a class=entry-link aria-label="post link to Secure Your Homelab: Exposing Services Selectively with WireGuard VPN and Traefik" href=https://madhur.co.in/blog/2026/06/01/secure-homelab-wireguard-docker-traefik.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>How to Send Emails from Python Using msmtp and Gmail</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/linux/>Linux</a></li><li><a href=https://madhur.co.in/tags/email/>Email</a></li></ul><span class=entry-date><span title='2026-05-01 00:00:00 +0000 UTC'>May 1, 2026</span></span></footer><a class=entry-link aria-label="post link to How to Send Emails from Python Using msmtp and Gmail" href=https://madhur.co.in/blog/2026/05/01/send-gmail-email-python.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Block Storage vs Object Storage</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/design/>Design</a></li></ul><span class=entry-date><span title='2026-04-01 00:00:00 +0000 UTC'>April 1, 2026</span></span></footer><a class=entry-link aria-label="post link to Block Storage vs Object Storage" href=https://madhur.co.in/blog/2026/04/01/block-storage-vs-object-storage.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Systemd timer running on every boot</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/systemd/>Systemd</a></li></ul><span class=entry-date><span title='2026-03-01 00:00:00 +0000 UTC'>March 1, 2026</span></span></footer><a class=entry-link aria-label="post link to Systemd timer running on every boot" href=https://madhur.co.in/blog/2026/03/01/systemd-timer-running-every-boot.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Displaying Google Calendar Events in Conky</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/conky/>Conky</a></li></ul><span class=entry-date><span title='2026-02-01 00:00:00 +0000 UTC'>February 1, 2026</span></span></footer><a class=entry-link aria-label="post link to Displaying Google Calendar Events in Conky" href=https://madhur.co.in/blog/2026/02/01/conky-google-calendar.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Image location detection using Bedrock and Claude Model</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/bedrock/>Bedrock</a></li></ul><span class=entry-date><span title='2026-01-01 00:00:00 +0000 UTC'>January 1, 2026</span></span></footer><a class=entry-link aria-label="post link to Image location detection using Bedrock and Claude Model" href=https://madhur.co.in/blog/2026/01/01/image-location-detection-bedrock.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Automating Gmail PDF Extraction and Paperless NGX Integration</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/python/>Python</a></li><li><a href=https://madhur.co.in/tags/automation/>Automation</a></li><li><a href=https://madhur.co.in/tags/paperless/>Paperless</a></li><li><a href=https://madhur.co.in/tags/gmail/>Gmail</a></li><li><a href=https://madhur.co.in/tags/docker/>Docker</a></li></ul><span class=entry-date><span title='2025-12-29 00:00:00 +0000 UTC'>December 29, 2025</span></span></footer><a class=entry-link aria-label="post link to Automating Gmail PDF Extraction and Paperless NGX Integration" href=https://madhur.co.in/blog/2025/12/29/automating-gmail-pdf-extraction-paperless.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Building a RAG System for Your Jekyll Blog with AWS Bedrock Claude</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/bedrock/>Bedrock</a></li></ul><span class=entry-date><span title='2025-12-01 00:00:00 +0000 UTC'>December 1, 2025</span></span></footer><a class=entry-link aria-label="post link to Building a RAG System for Your Jekyll Blog with AWS Bedrock Claude" href=https://madhur.co.in/blog/2025/12/01/jekyll-blog-rag-vector-db.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Rofi Process Killer</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/rofi/>Rofi</a></li></ul><span class=entry-date><span title='2025-11-01 00:00:00 +0000 UTC'>November 1, 2025</span></span></footer><a class=entry-link aria-label="post link to Rofi Process Killer" href=https://madhur.co.in/blog/2025/11/01/rofi-process-killer.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Configuring AWS ALB Timeouts</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/timeout/>Timeout</a></li></ul><span class=entry-date><span title='2025-10-01 00:00:00 +0000 UTC'>October 1, 2025</span></span></footer><a class=entry-link aria-label="post link to Configuring AWS ALB Timeouts" href=https://madhur.co.in/blog/2025/10/01/configuring-aws-alb-timeout.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Non Blocking I/O</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/linux/>Linux</a></li></ul><span class=entry-date><span title='2025-09-01 00:00:00 +0000 UTC'>September 1, 2025</span></span></footer><a class=entry-link aria-label="post link to Non Blocking I/O" href=https://madhur.co.in/blog/2025/09/01/non-blocking-io.html></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Troubleshooting Shared Library Issues on Linux</h2></header><footer class=entry-footer><ul class=post-tags><li><a href=https://madhur.co.in/tags/linux/>Linux</a></li></ul><span class=entry-date><span title='2025-08-01 00:00:00 +0000 UTC'>August 1, 2025</span></span></footer><a class=entry-link aria-label="post link to Troubleshooting Shared Library Issues on Linux" href=https://madhur.co.in/blog/2025/08/01/troubleshooting-shared-library-issues-linux.html></a></article><footer class=page-footer><nav class=pagination><a class=next href=https://madhur.co.in/page/2/>Next »</a></nav></footer></main><footer class=footer><span>© 2026 <a href=https://madhur.co.in/>Madhur Ahuja</a></span> ·
<span>Powered by
<a href="https://gohugo.io/?utm_source=papermod" rel=noopener target=_blank>Hugo</a> &
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top id=top-link class="top-link hidden" aria-label="go to top" title="Go to Top (Alt + G)" accesskey=g><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevrons-up"><polyline points="17 11 12 6 7 11"/><polyline points="17 18 12 13 7 18"/></svg>
</a><script>(function(){var e,t=new Date,n=t.getDate(),s=t.getMonth()+1;(s===1&&n===26||s===8&&n===15)&&(e=document.createElement("script"),e.src="/js/planes.js",e.onload=function(){doodle.init("/images/plane.png")},document.body.appendChild(e))})()</script><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var toplink=document.getElementById("top-link");window.onscroll=function(){const e=window.innerHeight;document.body.scrollTop>e||document.documentElement.scrollTop>e?toplink.classList.remove("hidden"):toplink.classList.add("hidden")}</script></body></html>