<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Chris Cammack&#39;s Mostly FreeBSD Notes</title>
    <link>https://www.ccammack.com/</link>
    <description>Recent content on Chris Cammack&#39;s Mostly FreeBSD Notes</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <managingEditor>chris@ccammack.com (Chris Cammack)</managingEditor>
    <webMaster>chris@ccammack.com (Chris Cammack)</webMaster>
    <lastBuildDate>Sat, 11 Oct 2025 08:23:23 -0400</lastBuildDate><atom:link href="https://www.ccammack.com/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Configure Syncoid on FreeBSD</title>
      <link>https://www.ccammack.com/posts/configure-syncoid-on-freebsd/</link>
      <pubDate>Sat, 11 Oct 2025 08:23:23 -0400</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/configure-syncoid-on-freebsd/</guid>
      <description>&lt;p&gt;Here&amp;rsquo;s a quick guide to configure &lt;a href=&#34;https://github.com/jimsalterjrs/sanoid#syncoid&#34;&gt;Syncoid&lt;/a&gt; on FreeBSD for use with removable drives as an off-site backup solution.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Configure a Fast Org Backlog Function in Doom Emacs</title>
      <link>https://www.ccammack.com/posts/configure-a-fast-org-backlog-function-in-doom-emacs/</link>
      <pubDate>Sat, 16 Aug 2025 12:33:54 -0400</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/configure-a-fast-org-backlog-function-in-doom-emacs/</guid>
      <description>&lt;p&gt;My &lt;code&gt;projects.org&lt;/code&gt; file tends to grow, but I&amp;rsquo;m pretty happy with its overall outline structure,
so I use this function to quickly refile the current subtree into the &lt;code&gt;someday.org&lt;/code&gt; backlog file.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Open Elfeed Posts in an External Browser on Windows</title>
      <link>https://www.ccammack.com/posts/open-elfeed-posts-in-an-external-browser-on-windows/</link>
      <pubDate>Sat, 17 Jun 2023 12:35:00 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/open-elfeed-posts-in-an-external-browser-on-windows/</guid>
      <description>Elfeed includes a command to open feed items an an external browser, but doing so causes the browser to steal the focus from Emacs. I don&amp;rsquo;t know of any way to force the browser to remain in the background on Windows, but it&amp;rsquo;s simple enough to configure Emacs to immediately steal the focus back using an external AutoHotkey script.
First, install AutoHotkey from the main site or by using Chocolatey, then write a short AutoHotkey script to wait for Emacs to lose focus and then immediately steal it back.</description>
    </item>
    
    <item>
      <title>Jail Dovecot on FreeBSD</title>
      <link>https://www.ccammack.com/posts/jail-dovecot-on-freebsd/</link>
      <pubDate>Sat, 06 May 2023 10:50:52 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/jail-dovecot-on-freebsd/</guid>
      <description>&lt;p&gt;There are many software packages designed to archive email,
but it&amp;rsquo;s pretty simple to just run a full &lt;a href=&#34;https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol&#34;&gt;IMAP&lt;/a&gt;
server on local hardware and move messages to the archive using an email client.
Because IMAP is a &lt;a href=&#34;https://en.wikipedia.org/wiki/Comparison_of_mail_servers&#34;&gt;standard email protocol&lt;/a&gt;,
the archive will be accessible to any device on the network
running practically any email client one might want to use.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Clear Leftover ZFS Metadata</title>
      <link>https://www.ccammack.com/posts/clear-leftover-zfs-metadata/</link>
      <pubDate>Sat, 30 Jul 2022 11:18:29 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/clear-leftover-zfs-metadata/</guid>
      <description>&lt;p&gt;Redeploying an old drive that previously had zpools on it can potentially cause name conflicts when trying to import the new pool into the system
unless the leftover ZFS metadata has been cleared first.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Verify ZFS Backups Using zxfer and mtree</title>
      <link>https://www.ccammack.com/posts/verify-zfs-backups-using-zxfer-and-mtree/</link>
      <pubDate>Sat, 07 May 2022 15:54:03 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/verify-zfs-backups-using-zxfer-and-mtree/</guid>
      <description>&lt;p&gt;Even if you trust your &lt;a href=&#34;https://www.ccammack.com/posts/create-a-centralized-backup-server-with-freebsd/&#34;&gt;backup process&lt;/a&gt;,
the only way to make sure the archive contains what you expect is to perform an occasional &lt;em&gt;test restore&lt;/em&gt; using a recent backup and compare it to the original source data.
Here&amp;rsquo;s one way to do that on FreeBSD using &lt;a href=&#34;https://www.ccammack.com/posts/back-up-zfs-to-a-removable-drive-using-zxfer/&#34;&gt;zxfer&lt;/a&gt; to restore
and &lt;a href=&#34;https://www.freebsd.org/cgi/man.cgi?query=mtree&#34;&gt;mtree&lt;/a&gt; to compare.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Configure a Wi-Fi Client on FreeBSD</title>
      <link>https://www.ccammack.com/posts/configure-a-wifi-client-on-freebsd/</link>
      <pubDate>Sat, 13 Nov 2021 10:05:09 -0800</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/configure-a-wifi-client-on-freebsd/</guid>
      <description>&lt;p&gt;If you need a GUI-based Wi-Fi manager for a FreeBSD desktop environment, consider using &lt;a href=&#34;https://www.freshports.org/net-mgmt/networkmgr&#34;&gt;networkmgr&lt;/a&gt;
or &lt;a href=&#34;https://www.freshports.org/net-mgmt/wifimgr&#34;&gt;wifimgr&lt;/a&gt;. For console-based servers or IOT devices,
the &lt;code&gt;bsdconfig wireless&lt;/code&gt; command should allow one to configure a supported wireless device on FreeBSD after installation,
but I have never been able to get it to work properly on my devices.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Install Doom Emacs on Windows</title>
      <link>https://www.ccammack.com/posts/install-doom-emacs-on-windows/</link>
      <pubDate>Sat, 24 Jul 2021 21:35:54 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/install-doom-emacs-on-windows/</guid>
      <description>&lt;p&gt;I recently noticed that &lt;a href=&#34;https://www.youtube.com/watch?v=3qDoHd-6NOQ&#34;&gt;Xah had trouble&lt;/a&gt; installing &lt;a href=&#34;https://github.com/hlissner/doom-emacs&#34;&gt;Doom Emacs&lt;/a&gt; on Windows.
Here&amp;rsquo;s how to install it on Windows 7, 8 and 10+ using &lt;a href=&#34;https://chocolatey.org/&#34;&gt;Chocolatey&lt;/a&gt; in case it helps someone else.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Manage Your Configuration Files Using Git</title>
      <link>https://www.ccammack.com/posts/manage-your-configuration-files-using-git/</link>
      <pubDate>Sat, 20 Mar 2021 19:45:53 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/manage-your-configuration-files-using-git/</guid>
      <description>&lt;p&gt;There are &lt;a href=&#34;https://dotfiles.github.io/&#34;&gt;dozens of popular ways&lt;/a&gt; to manage &lt;a href=&#34;https://github.com/webpro/awesome-dotfiles&#34;&gt;user dotfile configurations&lt;/a&gt;,
but I think the simplest might be to just use a &lt;a href=&#34;https://www.atlassian.com/git/tutorials/dotfiles&#34;&gt;bare git repository&lt;/a&gt; for each platform.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Automatically Crop Screenshots Using ImageMagick</title>
      <link>https://www.ccammack.com/posts/automatically-crop-screenshots-using-imagemagick/</link>
      <pubDate>Sat, 17 Oct 2020 09:49:39 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/automatically-crop-screenshots-using-imagemagick/</guid>
      <description>&lt;p&gt;I don&amp;rsquo;t like editing images by hand, but occasionally find myself needing to cut down a full page screenshot to extract something of interest like a dialog box with an open menu.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Protect Your zpools From Running Out of Space</title>
      <link>https://www.ccammack.com/posts/protect-your-zpools-from-running-out-of-space/</link>
      <pubDate>Sun, 20 Sep 2020 21:30:41 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/protect-your-zpools-from-running-out-of-space/</guid>
      <description>&lt;p&gt;One quirk of ZFS is that deleting a file actually uses a small amount of additional drive space to record the deletion,
which causes significant problems if a zpool is ever allowed to fill up 100%.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Trigger Software Events Using a Generic 433MHz Wireless Remote</title>
      <link>https://www.ccammack.com/posts/trigger-software-events-using-a-generic-433mhz-wireless-remote/</link>
      <pubDate>Sat, 25 Jul 2020 20:54:14 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/trigger-software-events-using-a-generic-433mhz-wireless-remote/</guid>
      <description>&lt;p&gt;Combine an inexpensive &lt;a href=&#34;https://en.wikipedia.org/wiki/Software-defined_radio&#34;&gt;software-defined radio&lt;/a&gt; with
a generic key fob remote and some &lt;a href=&#34;https://github.com/merbanan/rtl_433&#34;&gt;open source software&lt;/a&gt; to trigger events on a computer.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Create a Centralized Backup Server With FreeBSD</title>
      <link>https://www.ccammack.com/posts/create-a-centralized-backup-server-with-freebsd/</link>
      <pubDate>Sun, 26 Apr 2020 13:24:37 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/create-a-centralized-backup-server-with-freebsd/</guid>
      <description>&lt;p&gt;To back up data inexpensively, using removable drives that you swap and carry off-site,
install a 5.25&amp;quot; to 3.5&amp;quot; hot swap bay in an old machine and centralize the backup process for all of your hosts onto a dedicated backup server running FreeBSD with ZFS.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Display Server Notifications Using a blink(1)</title>
      <link>https://www.ccammack.com/posts/display-server-notifications-using-a-blink1/</link>
      <pubDate>Sun, 19 Apr 2020 20:24:57 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/display-server-notifications-using-a-blink1/</guid>
      <description>&lt;p&gt;The &lt;a href=&#34;https://blink1.thingm.com/&#34;&gt;blink(1)&lt;/a&gt; is an open source USB notification light that can be controlled from the command line.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Back Up ZFS to a Removable Drive Using zxfer</title>
      <link>https://www.ccammack.com/posts/back-up-zfs-to-a-removable-drive-using-zxfer/</link>
      <pubDate>Mon, 30 Mar 2020 21:01:50 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/back-up-zfs-to-a-removable-drive-using-zxfer/</guid>
      <description>&lt;p&gt;The &lt;a href=&#34;https://www.freebsd.org/cgi/man.cgi?query=zxfer&#34;&gt;&lt;code&gt;zxfer&lt;/code&gt;&lt;/a&gt; shell script wraps the &lt;code&gt;zfs send&lt;/code&gt; and &lt;code&gt;zfs receive&lt;/code&gt; commands and provides one of the easiest ways to back up a ZFS-based system to a remote server.
It also works just as well to back up data to a local hard drive. Run &lt;code&gt;zpool scrub&lt;/code&gt; on the backup drives to detect bit rot, rotate through several drives to maintain multiple copies of the data
and store them off-site to create a reliable and inexpensive backup solution.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Check Hard Drive Health in FreeBSD</title>
      <link>https://www.ccammack.com/posts/check-hard-drive-health-in-freebsd/</link>
      <pubDate>Sat, 28 Mar 2020 18:29:24 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/check-hard-drive-health-in-freebsd/</guid>
      <description>&lt;p&gt;It&amp;rsquo;s wise to check a new hard drive for &lt;a href=&#34;https://en.wikipedia.org/wiki/S.M.A.R.T.&#34;&gt;S.M.A.R.T.&lt;/a&gt; errors before using it the first time and also to keep an eye on it after it goes into production.
In FreeBSD, the &lt;a href=&#34;https://www.smartmontools.org/&#34;&gt;Smartmontools&lt;/a&gt; package provides a way to check drives for errors on demand using &lt;code&gt;smartctl&lt;/code&gt; and on schedule using &lt;code&gt;smartd&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Label GPT Partitions With Their Physical Locations</title>
      <link>https://www.ccammack.com/posts/label-gpt-partitions-with-their-physical-locations/</link>
      <pubDate>Tue, 24 Mar 2020 21:02:40 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/label-gpt-partitions-with-their-physical-locations/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.amazon.com/FreeBSD-Mastery-ZFS-Book-ebook/dp/B00Y32OHNM&#34;&gt;Lucas and Jude&lt;/a&gt; recommend using GPT labels on each drive partition to indicate the hard drive&amp;rsquo;s physical location and serial number.
This would obviously simplify things when working with large numbers of drives in a remote location, but it seems just as useful to me for a personal sever. Also, it&amp;rsquo;s really easy to do.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Create (or Expand) a ZFS Mirror in FreeBSD</title>
      <link>https://www.ccammack.com/posts/create-or-expand-a-zfs-mirror-in-freebsd/</link>
      <pubDate>Fri, 20 Mar 2020 21:42:46 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/create-or-expand-a-zfs-mirror-in-freebsd/</guid>
      <description>&lt;p&gt;Here&amp;rsquo;s a quick guide to convert a system created by the FreeBSD installer from a single-drive stripe into a 2-drive mirror. The same procedure also works to expand an existing mirror by adding additional drives.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Jail Gitea in FreeBSD</title>
      <link>https://www.ccammack.com/posts/jail-gitea-in-freebsd/</link>
      <pubDate>Sat, 18 Jan 2020 16:07:26 -0800</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/jail-gitea-in-freebsd/</guid>
      <description>&lt;p&gt;Here&amp;rsquo;s the bare minimum required to run a local instance of &lt;a href=&#34;https://gitea.com/&#34;&gt;&lt;strong&gt;Gitea&lt;/strong&gt;&lt;/a&gt; inside a FreeBSD jail.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Schedule ZFS Snapshots Using zfs-auto-snapshot</title>
      <link>https://www.ccammack.com/posts/schedule-zfs-snapshots-using-zfs-auto-snapshot/</link>
      <pubDate>Sat, 16 Nov 2019 16:35:05 -0800</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/schedule-zfs-snapshots-using-zfs-auto-snapshot/</guid>
      <description>&lt;p&gt;The &lt;a href=&#34;https://github.com/bdrewery/zfstools&#34;&gt;ZFS Tools&lt;/a&gt; package offers an easy way to automatically create a rotating set of ZFS snapshots for backup purposes.
Here&amp;rsquo;s how to set it up.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Jail Samba in FreeBSD</title>
      <link>https://www.ccammack.com/posts/jail-samba-in-freebsd/</link>
      <pubDate>Sun, 03 Nov 2019 16:40:06 -0800</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/jail-samba-in-freebsd/</guid>
      <description>&lt;p&gt;The release of FreeBSD 12 with VNET support has made it easy to jail a Samba file server using &lt;a href=&#34;../create-vnet-jails-in-freebsd-12-using-iocage&#34;&gt;iocage&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Use iocage Plugins to Jail Common Applications</title>
      <link>https://www.ccammack.com/posts/use-iocage-plugins-to-jail-common-applications/</link>
      <pubDate>Tue, 16 Jul 2019 18:20:58 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/use-iocage-plugins-to-jail-common-applications/</guid>
      <description>&lt;p&gt;The &lt;a href=&#34;https://iocage.readthedocs.io/en/latest/plugins.html&#34;&gt;plugin&lt;/a&gt; feature in &lt;a href=&#34;../create-vnet-jails-in-freebsd-12-using-iocage&#34;&gt;iocage&lt;/a&gt; makes it easy
to create pre-configured container jails for many &lt;a href=&#34;https://raw.githubusercontent.com/freenas/iocage-ix-plugins/master/INDEX&#34;&gt;common applications&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Create VNET Jails in FreeBSD 12 Using iocage</title>
      <link>https://www.ccammack.com/posts/create-vnet-jails-in-freebsd-12-using-iocage/</link>
      <pubDate>Tue, 09 Jul 2019 19:14:43 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/create-vnet-jails-in-freebsd-12-using-iocage/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://www.freebsd.org/&#34;&gt;FreeBSD 12&lt;/a&gt; enables VNET support by default, which gives each jail its own network stack and makes it easy to jail individual applications using &lt;a href=&#34;https://iocage.io/&#34;&gt;&lt;code&gt;iocage&lt;/code&gt;&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Install Ubuntu Server and Samba on the ODROID-HC1</title>
      <link>https://www.ccammack.com/posts/install-ubuntu-server-and-samba-on-the-odroid-hc1/</link>
      <pubDate>Sat, 02 Feb 2019 09:51:04 -0800</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/install-ubuntu-server-and-samba-on-the-odroid-hc1/</guid>
      <description>&lt;p&gt;The &lt;a href=&#34;https://www.hardkernel.com/shop/odroid-hc1-home-cloud-one/&#34;&gt;ODROID-HC1&lt;/a&gt; is a simplified version of the
&lt;a href=&#34;https://www.hardkernel.com/shop/odroid-xu4-special-price/&#34;&gt;ODROID-XU4&lt;/a&gt; single-board computer that has been designed for use as a small headless server.
It includes a built-in SATA connector and comes mounted in a stackable aluminum frame that acts both as a heat sink for the CPU and as a mount point for a 2.5&amp;quot; hard drive or SSD.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Schedule Street Cleaning Reminders in Org-mode</title>
      <link>https://www.ccammack.com/posts/schedule-street-cleaning-reminders-in-org-mode/</link>
      <pubDate>Sat, 27 Oct 2018 23:04:21 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/schedule-street-cleaning-reminders-in-org-mode/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://orgmode.org/&#34;&gt;Org-mode&lt;/a&gt; can parse &lt;a href=&#34;https://www.gnu.org/software/emacs/manual/html_node/emacs/Sexp-Diary-Entries.html&#34;&gt;Emacs diary entries&lt;/a&gt;
that represent concepts such as the &lt;em&gt;4th Tuesday of the month&lt;/em&gt;, which makes it possible to schedule agenda reminders for periodic events like street sweeping.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Create Wrapper Scripts for youtube-dl</title>
      <link>https://www.ccammack.com/posts/create-wrapper-scripts-for-youtube-dl/</link>
      <pubDate>Sat, 02 Jun 2018 23:45:37 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/create-wrapper-scripts-for-youtube-dl/</guid>
      <description>&lt;p&gt;The excellent command-line video downloader &lt;a href=&#34;https://rg3.github.io/youtube-dl/&#34;&gt;youtube-dl&lt;/a&gt; can be made even more useful by wrapping it with a couple of batch scripts to handle the most common cases.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Install FreeBSD on a Headless Server Over SSH</title>
      <link>https://www.ccammack.com/posts/install-freebsd-on-a-headless-server-over-ssh/</link>
      <pubDate>Mon, 21 May 2018 04:15:51 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/install-freebsd-on-a-headless-server-over-ssh/</guid>
      <description>&lt;p&gt;It can be inconvenient to connect a keyboard and monitor to a headless server tucked away in a closet just to install an operating system.
Instead, use &lt;a href=&#34;https://www.virtualbox.org/&#34;&gt;VirtualBox&lt;/a&gt; to make a small number of changes to a &lt;a href=&#34;https://www.freebsd.org/&#34;&gt;FreeBSD&lt;/a&gt; installer image and use SSH to do the installation over the LAN.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Build Notepad&#43;&#43; From Source</title>
      <link>https://www.ccammack.com/posts/build-notepad&#43;&#43;-from-source/</link>
      <pubDate>Wed, 11 Apr 2018 23:15:05 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/build-notepad&#43;&#43;-from-source/</guid>
      <description>&lt;p&gt;I don&amp;rsquo;t try to build &lt;a href=&#34;https://notepad-plus-plus.org/&#34;&gt;Notepad++&lt;/a&gt; from source very often, and I&amp;rsquo;ve never had much luck following
the instructions on the &lt;a href=&#34;https://github.com/notepad-plus-plus/notepad-plus-plus&#34;&gt;github page&lt;/a&gt;, so here&amp;rsquo;s how I do it instead.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Install Cygwin and apt-cyg (and SSH)</title>
      <link>https://www.ccammack.com/posts/install-cygwin-and-apt-cyg/</link>
      <pubDate>Fri, 30 Mar 2018 23:41:01 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/install-cygwin-and-apt-cyg/</guid>
      <description>&lt;p&gt;This is the easiest way I know of to install &lt;a href=&#34;https://www.cygwin.com&#34;&gt;Cygwin&lt;/a&gt; and &lt;a href=&#34;https://github.com/transcode-open/apt-cyg&#34;&gt;apt-cyg&lt;/a&gt; on Windows.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Install CommaFeed Reader on Windows</title>
      <link>https://www.ccammack.com/posts/install-commafeed-reader-on-windows/</link>
      <pubDate>Sat, 10 Feb 2018 19:51:04 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/install-commafeed-reader-on-windows/</guid>
      <description>&lt;p&gt;Although &lt;a href=&#34;https://www.google.com/reader/about/&#34;&gt;Google Reader&lt;/a&gt; ceased operations in 2013, I still rely on &lt;a href=&#34;https://en.wikipedia.org/wiki/RSS&#34;&gt;RSS&lt;/a&gt; every day and won&amp;rsquo;t check a website regularly unless it offers a feed.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Print Address Labels From a LibreOffice Spreadsheet (Mail Merge)</title>
      <link>https://www.ccammack.com/posts/print-address-labels-from-a-libreoffice-spreadsheet/</link>
      <pubDate>Sat, 27 Jan 2018 02:20:14 -0700</pubDate>
      <author>chris@ccammack.com (Chris Cammack)</author>
      <guid>https://www.ccammack.com/posts/print-address-labels-from-a-libreoffice-spreadsheet/</guid>
      <description>&lt;p&gt;I only need to do this once a year, and every year I forget how. MailMerge in &lt;a href=&#34;https://www.libreoffice.org/&#34;&gt;LibreOffice&lt;/a&gt; is somewhat &lt;a href=&#34;http://abhweb.org/jima/mailing-list-labels-in-open-office.php&#34;&gt;fiddly&lt;/a&gt; and the recommended method seems to change from version to version. These instructions work with &lt;strong&gt;version 5.4.5.1&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    
  </channel>
</rss>
