<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Mosquitto on Aayush Bajaj's Augmenting Infrastructure</title><link>https://abaj.ai/tags/mosquitto/</link><description>Recent content in Mosquitto on Aayush Bajaj's Augmenting Infrastructure</description><generator>Hugo</generator><language>en</language><copyright>© 2026 Aayush Bajaj</copyright><lastBuildDate>Wed, 20 May 2026 06:00:23 +1000</lastBuildDate><atom:link href="https://abaj.ai/tags/mosquitto/index.xml" rel="self" type="application/rss+xml"/><item><title>Manjaro Raspberry Pi 4</title><link>https://abaj.ai/wiki/csp/rpi/rpi/</link><pubDate>Fri, 09 Jan 2026 12:25:20 +1100</pubDate><guid>https://abaj.ai/wiki/csp/rpi/rpi/</guid><description>&lt;p>The Pi 4 is the daily driver of the two: an 8 GB aarch64 board running Arch
Linux ARM (Manjaro flavour) on a 64 GB SD. It does triple duty — small i3
desktop on a 7&amp;quot; DSI touchscreen, audio appliance via PipeWire + MPD + ncmpcpp +
cava, and (post-2026-05-19) the smart-home + media role taken over from the
RPI3.&lt;/p>
&lt;h2 id="hardware">Hardware&lt;a href="#hardware" class="post-heading__anchor" aria-hidden="true">#&lt;/a>
&lt;/h2>
&lt;ul>
&lt;li>Raspberry Pi 4B, 8 GB RAM, aarch64&lt;/li>
&lt;li>64 GB micro-SD root + 11 GB zram swap&lt;/li>
&lt;li>466 GB Samsung T5 portable SSD at &lt;code>/mnt/media&lt;/code> (migrated from the
&lt;a
 href="https://abaj.ai/"
 
 
>RPI3&lt;/a>)&lt;/li>
&lt;li>Official Pi 7&amp;quot; DSI touchscreen, RPI wired keyboard, USB optical mouse&lt;/li>
&lt;li>Sonoff Zigbee 3.0 USB Dongle Plus V2 (CC2652P / CP210x bridge) on
&lt;code>/dev/ttyUSB0&lt;/code> — the Zigbee coordinator radio&lt;/li>
&lt;/ul>
&lt;h2 id="os-kernel">OS / kernel&lt;a href="#os-kernel" class="post-heading__anchor" aria-hidden="true">#&lt;/a>
&lt;/h2>
&lt;ul>
&lt;li>Arch Linux ARM, kernel &lt;code>6.6.33-2-MANJARO-RPI4&lt;/code>&lt;/li>
&lt;li>&lt;code>systemd-networkd&lt;/code> + &lt;code>iwd&lt;/code> + &lt;code>dhcpcd&lt;/code> over Wi-Fi&lt;/li>
&lt;li>mDNS via &lt;code>systemd-resolved&lt;/code>: reachable at &lt;code>rpi.local&lt;/code>&lt;/li>
&lt;/ul>
&lt;h2 id="desktop-userland">Desktop / userland&lt;a href="#desktop-userland" class="post-heading__anchor" aria-hidden="true">#&lt;/a>
&lt;/h2>
&lt;ul>
&lt;li>i3-wm + polybar + picom + nitrogen + rofi + i3lock (configs live in
&lt;code>~rpi/.config/type-dots/&lt;/code> as a GNU-stow tree; X must be started as the
&lt;code>rpi&lt;/code> user, not root, or the wallpaper + polybar fail to load)&lt;/li>
&lt;li>Alacritty, Emacs 30, Chromium&lt;/li>
&lt;li>Audio stack: PipeWire + MPD 0.24 + Mopidy + ncmpcpp + cava + Icecast&lt;/li>
&lt;/ul>
&lt;h2 id="services">Services&lt;a href="#services" class="post-heading__anchor" aria-hidden="true">#&lt;/a>
&lt;/h2>
&lt;ul>
&lt;li>&lt;code>sshd&lt;/code> (port 22), &lt;code>minidlna&lt;/code> (port 8200, library at &lt;code>/mnt/media&lt;/code>)&lt;/li>
&lt;li>&lt;code>docker&lt;/code> → compose stack at &lt;code>/srv/homeassistant/&lt;/code>:
&lt;ul>
&lt;li>Home Assistant Container on &lt;code>http://rpi.local:8123&lt;/code>&lt;/li>
&lt;li>Eclipse Mosquitto MQTT broker on &lt;code>:1883&lt;/code>&lt;/li>
&lt;li>Zigbee2MQTT frontend on &lt;code>http://rpi.local:8080&lt;/code>, driving the Aqara
curtain via the Sonoff dongle&lt;/li>
&lt;/ul>
&lt;/li>
&lt;li>&lt;code>rtorrent&lt;/code> under systemd (tmux-wrapped, attach with &lt;code>tmux a -t rtorrent&lt;/code>),
watch dir &lt;code>/mnt/media/torrents/watch/&lt;/code>&lt;/li>
&lt;/ul>
&lt;h2 id="mac-synced-sleep">Mac-synced sleep&lt;a href="#mac-synced-sleep" class="post-heading__anchor" aria-hidden="true">#&lt;/a>
&lt;/h2>
&lt;p>A Hammerspoon &lt;code>hs.caffeinate.watcher&lt;/code> on the Mac SSHes to the Pi on system
sleep / wake events and calls &lt;code>/usr/local/bin/rpi-display {on,off}&lt;/code>, which
toggles the DSI panel&amp;rsquo;s DRM DPMS node plus the 7&amp;quot; Touch Display backlight
(&lt;code>/sys/class/backlight/10-0045/bl_power&lt;/code>) and the framebuffer blank. The
touchscreen wakes locally on tap; the network blank only fires on Mac state
changes.&lt;/p></description></item></channel></rss>