www.duckland.org/index.html.1
2025-06-17 22:14:34 -05:00

271 lines
11 KiB
Groff
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" dir="auto">
<head>
<meta name="generator" content="Hugo 0.147.7"><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>duckland.org</title>
<meta name="description" content="Random Quacking">
<meta name="author" content="Don Harper">
<link rel="canonical" href="https://www.duckland.org/">
<link crossorigin="anonymous" href="/assets/css/stylesheet.8fe10233a706bc87f2e08b3cf97b8bd4c0a80f10675a143675d59212121037c0.css" integrity="sha256-j&#43;ECM6cGvIfy4Is8&#43;XuL1MCoDxBnWhQ2ddWSEhIQN8A=" rel="preload stylesheet" as="style">
<link rel="icon" href="https://www.duckland.org/favicon.ico">
<link rel="icon" type="image/png" sizes="16x16" href="https://www.duckland.org/favicon-16x16.png">
<link rel="icon" type="image/png" sizes="32x32" href="https://www.duckland.org/favicon-32x32.png">
<link rel="apple-touch-icon" href="https://www.duckland.org/apple-touch-icon.png">
<link rel="mask-icon" href="https://www.duckland.org/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://www.duckland.org/index.xml">
<link rel="alternate" hreflang="en" href="https://www.duckland.org/">
<noscript>
<style>
#theme-toggle,
.top-link {
display: none;
}
</style>
<style>
@media (prefers-color-scheme: dark) {
:root {
--theme: rgb(29, 30, 32);
--entry: rgb(46, 46, 51);
--primary: rgb(218, 218, 219);
--secondary: rgb(155, 156, 157);
--tertiary: rgb(65, 66, 68);
--content: rgb(196, 196, 197);
--code-block-bg: rgb(46, 46, 51);
--code-bg: rgb(55, 56, 62);
--border: rgb(51, 51, 51);
}
.list {
background: var(--theme);
}
.list:not(.dark)::-webkit-scrollbar-track {
background: 0 0;
}
.list:not(.dark)::-webkit-scrollbar-thumb {
border-color: var(--theme);
}
}
</style>
</noscript><meta property="og:url" content="https://www.duckland.org/">
<meta property="og:site_name" content="duckland.org">
<meta property="og:title" content="duckland.org">
<meta property="og:description" content="Random Quacking">
<meta property="og:locale" content="en-us">
<meta property="og:type" content="website">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="duckland.org">
<meta name="twitter:description" content="Random Quacking">
<meta name="twitter:site" content="@https://fosstodon.org/@duckunix">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "duckland.org",
"url": "https://www.duckland.org/",
"description": "Random Quacking",
"logo": "https://www.duckland.org/favicon.ico",
"sameAs": [
]
}
</script>
</head>
<body class="list" id="top">
<script>
if (localStorage.getItem("pref-theme") === "dark") {
document.body.classList.add('dark');
} else if (localStorage.getItem("pref-theme") === "light") {
document.body.classList.remove('dark')
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
document.body.classList.add('dark');
}
</script>
<header class="header">
<nav class="nav">
<div class="logo">
<a href="https://www.duckland.org/" accesskey="h" title="duckland.org (Alt + H)">duckland.org</a>
<div class="logo-switches">
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
</svg>
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
stroke-linejoin="round">
<circle cx="12" cy="12" r="5"></circle>
<line x1="12" y1="1" x2="12" y2="3"></line>
<line x1="12" y1="21" x2="12" y2="23"></line>
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
<line x1="1" y1="12" x2="3" y2="12"></line>
<line x1="21" y1="12" x2="23" y2="12"></line>
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
</svg>
</button>
</div>
</div>
<ul id="menu">
</ul>
</nav>
</header>
<main class="main">
<article class="first-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">Check-in 2025Q2
</h2>
</header>
<div class="entry-content">
<p>Well, aside from the burst of posts, it as been a spell since I last posted something. Sorry about that.
Computer Well, I think my little Challenge with NixOS which I started way back in January 2023 has been passed. I have one local server, one local appliance, and one VPS not on NixOS. Everything else has been converted for a while. Keeping my laptops config synced turned out to be a good thing. My main laptop ate its drive just before work one morning, I was able to grab the pixelbook and start working as it was fully configured, and the needed data was synced in place. Nice.
...</p>
</div>
<footer class="entry-footer"><span title='2025-06-17 04:00:00 -0700 -0700'>June 17, 2025</span>&nbsp;·&nbsp;Don Harper</footer>
<a class="entry-link" aria-label="post link to Check-in 2025Q2" href="https://www.duckland.org/post/2025/06/check-in-2025q2/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">TUI Challenge: Day 7
</h2>
</header>
<div class="entry-content">
<p>This is the end, my friend</p>
</div>
<footer class="entry-footer"><span title='2025-06-14 04:00:00 -0700 -0700'>June 14, 2025</span>&nbsp;·&nbsp;Don Harper</footer>
<a class="entry-link" aria-label="post link to TUI Challenge: Day 7" href="https://www.duckland.org/post/2025/06/tui-challenge-day-7/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">TUI Challenge: Day 6
</h2>
</header>
<div class="entry-content">
<p>Every Task In Its Place</p>
</div>
<footer class="entry-footer"><span title='2025-06-13 04:00:00 -0700 -0700'>June 13, 2025</span>&nbsp;·&nbsp;Don Harper</footer>
<a class="entry-link" aria-label="post link to TUI Challenge: Day 6" href="https://www.duckland.org/post/2025/06/tui-challenge-day-6/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">TUI Challenge: Day 5
</h2>
</header>
<div class="entry-content">
<p>A Song For The Terminal</p>
</div>
<footer class="entry-footer"><span title='2025-06-12 04:00:00 -0700 -0700'>June 12, 2025</span>&nbsp;·&nbsp;Don Harper</footer>
<a class="entry-link" aria-label="post link to TUI Challenge: Day 5" href="https://www.duckland.org/post/2025/06/tui-challenge-day-5/"></a>
</article>
<article class="post-entry">
<header class="entry-header">
<h2 class="entry-hint-parent">TUI Challenge: Day 4
</h2>
</header>
<div class="entry-content">
<p>A Song For The Terminal</p>
</div>
<footer class="entry-footer"><span title='2025-06-11 04:00:00 -0700 -0700'>June 11, 2025</span>&nbsp;·&nbsp;Don Harper</footer>
<a class="entry-link" aria-label="post link to TUI Challenge: Day 4" href="https://www.duckland.org/post/2025/06/tui-challenge-day-4/"></a>
</article>
<footer class="page-footer">
<nav class="pagination">
<a class="next" href="https://www.duckland.org/page/2/">Next&nbsp;&nbsp;»
</a>
</nav>
</footer>
</main>
<footer class="footer">
<span>All rights reserved - 2006-</span> ·
<span>
Powered by
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
</span>
</footer>
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
<path d="M12 6H0l6-6z" />
</svg>
</a>
<script>
let menu = document.getElementById('menu')
if (menu) {
menu.scrollLeft = localStorage.getItem("menu-scroll-position");
menu.onscroll = function () {
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
}
}
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener("click", function (e) {
e.preventDefault();
var id = this.getAttribute("href").substr(1);
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
behavior: "smooth"
});
} else {
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
}
if (id === "top") {
history.replaceState(null, null, " ");
} else {
history.pushState(null, null, `#${id}`);
}
});
});
</script>
<script>
var mybutton = document.getElementById("top-link");
window.onscroll = function () {
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
mybutton.style.visibility = "visible";
mybutton.style.opacity = "1";
} else {
mybutton.style.visibility = "hidden";
mybutton.style.opacity = "0";
}
};
</script>
<script>
document.getElementById("theme-toggle").addEventListener("click", () => {
if (document.body.className.includes("dark")) {
document.body.classList.remove('dark');
localStorage.setItem("pref-theme", 'light');
} else {
document.body.classList.add('dark');
localStorage.setItem("pref-theme", 'dark');
}
})
</script>
</body>
</html>