<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>lznauy的技术小屋</title>
    <link>https://lznauy.cn/</link>
    <description>专注于后端开发、Linux运维、容器化技术的技术博客，分享Go语言、Docker、Kubernetes、系统编程等实战经验与踩坑记录，记录生活感悟与学习心得</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 29 Aug 2026 20:40:12 +0800</lastBuildDate>
    <atom:link href="https://lznauy.cn/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>Kubernetes Service/Ingress/CNI 体系</title>
      <link>https://lznauy.cn/posts/2026-07-27-blog-network/</link>
      <pubDate>Mon, 27 Jul 2026 20:43:25 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-27-blog-network/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;pkg/proxy/&lt;/code&gt;、&lt;code&gt;pkg/controller/endpointslice/&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一为什么需要网络抽象&#34;&gt;
  一、为什么需要网络抽象？
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80%e4%b8%ba%e4%bb%80%e4%b9%88%e9%9c%80%e8%a6%81%e7%bd%91%e7%bb%9c%e6%8a%bd%e8%b1%a1&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Kubernetes 中 Pod 是&lt;strong&gt;短暂的&lt;/strong&gt;，IP 会变化，多个 Pod 需要统一访问入口：&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kubelet Pod 生命周期管理</title>
      <link>https://lznauy.cn/posts/2026-07-25-blog-kubelet/</link>
      <pubDate>Sat, 25 Jul 2026 10:11:50 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-25-blog-kubelet/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;pkg/kubelet/&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一kubelet-的职责&#34;&gt;
  一、Kubelet 的职责
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80kubelet-%e7%9a%84%e8%81%8c%e8%b4%a3&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Kubelet 是运行在每个节点上的&lt;strong&gt;节点代理&lt;/strong&gt;，其核心职责是&lt;strong&gt;管理 Pod 的生命周期&lt;/strong&gt;：&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;调度器将 Pod 调度到节点
       ↓
kubelet 监听到 Pod 分配
       ↓
创建容器（通过 CRI）
       ↓
监控容器状态
       ↓
上报状态到 API Server
       ↓
处理删除/更新/驱逐
&lt;/code&gt;&lt;/pre&gt;&lt;hr&gt;


&lt;h2 id=&#34;二kubelet-架构全景&#34;&gt;
  二、Kubelet 架构全景
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%ba%8ckubelet-%e6%9e%b6%e6%9e%84%e5%85%a8%e6%99%af&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;┌────────────────────────────────────────────────────────────┐
│                          Kubelet                           │
│  ┌──────────────────────────────────────────────────────┐  │
│  │                    Pod Sync Loop                     │  │
│  │ LIST/WATCH API Server → 对比期望与实际状态 → 执行     │  │
│  └──────────────────────────────────────────────────────┘  │
│                             ↓                              │
│  ┌──────────────────────────────────────────────────────┐  │
│  │                Container Manager (CM)                │  │
│  │  ┌───────────┐  ┌───────────┐  ┌──────────────────┐  │  │
│  │  │ CRI Client │  │  cgroup   │  │  Device Plugin   │  │  │
│  │  │ 容器运行时  │  │ 资源隔离   │  │   设备管理       │  │  │
│  │  └───────────┘  └───────────┘  └──────────────────┘  │  │
│  └──────────────────────────────────────────────────────┘  │
│                             ↓                              │
│  ┌──────────────────────────────────────────────────────┐  │
│  │          CRI (Container Runtime Interface)           │  │
│  │           containerd / CRI-O / cri-dockerd           │  │
│  └──────────────────────────────────────────────────────┘  │
└────────────────────────────────────────────────────────────┘
&lt;/code&gt;&lt;/pre&gt;&lt;hr&gt;


&lt;h2 id=&#34;三pod-sync-looppod-同步循环&#34;&gt;
  三、Pod Sync Loop（Pod 同步循环）
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%89pod-sync-looppod-%e5%90%8c%e6%ad%a5%e5%be%aa%e7%8e%af&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Kubelet 的核心是一个&lt;strong&gt;持续运行的 Pod 同步循环&lt;/strong&gt;，它监听多个通道来触发同步：&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kubernetes 存储 PV/PVC/CSI 体系</title>
      <link>https://lznauy.cn/posts/2026-07-25-blog-storage/</link>
      <pubDate>Sat, 25 Jul 2026 10:11:50 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-25-blog-storage/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;pkg/volume/&lt;/code&gt;、&lt;code&gt;pkg/controller/volume/&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一为什么需要存储抽象&#34;&gt;
  一、为什么需要存储抽象？
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80%e4%b8%ba%e4%bb%80%e4%b9%88%e9%9c%80%e8%a6%81%e5%ad%98%e5%82%a8%e6%8a%bd%e8%b1%a1&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;容器本身是&lt;strong&gt;无状态&lt;/strong&gt;的，重启后数据丢失。但大多数应用需要持久化存储：&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kubernetes API Server—请求处理链路</title>
      <link>https://lznauy.cn/posts/2026-07-24-blog-apiserver/</link>
      <pubDate>Fri, 24 Jul 2026 10:11:50 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-24-blog-apiserver/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;staging/src/k8s.io/apiserver/&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一api-server-的职责&#34;&gt;
  一、API Server 的职责
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80api-server-%e7%9a%84%e8%81%8c%e8%b4%a3&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;API Server 是 Kubernetes 集群的&lt;strong&gt;唯一入口&lt;/strong&gt;，所有组件都通过它与集群交互：&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kubernetes 调度器—Pod 如何被分配到节点</title>
      <link>https://lznauy.cn/posts/2026-07-24-blog-scheduler/</link>
      <pubDate>Fri, 24 Jul 2026 10:11:50 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-24-blog-scheduler/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;pkg/scheduler/&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一调度器的职责&#34;&gt;
  一、调度器的职责
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80%e8%b0%83%e5%ba%a6%e5%99%a8%e7%9a%84%e8%81%8c%e8%b4%a3&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;调度器的核心任务只有一个：&lt;strong&gt;为待调度的 Pod 找到最合适的节点&lt;/strong&gt;。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;用户创建 Pod（未指定 nodeName）
       ↓
API Server 将 Pod 写入 etcd
       ↓
调度器监听到新 Pod
       ↓
为 Pod 选择最优节点
       ↓
将 Pod 绑定到该节点
&lt;/code&gt;&lt;/pre&gt;&lt;hr&gt;


&lt;h2 id=&#34;二整体架构&#34;&gt;
  二、整体架构
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%ba%8c%e6%95%b4%e4%bd%93%e6%9e%b6%e6%9e%84&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;调度器由四大核心组件组成：&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kubernetes Controller 调谐循环的实现原理</title>
      <link>https://lznauy.cn/posts/2026-07-23-blog-controller/</link>
      <pubDate>Thu, 23 Jul 2026 10:11:50 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-23-blog-controller/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;pkg/controller/deployment/&lt;/code&gt;、&lt;code&gt;pkg/controller/replicaset/&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一什么是控制器&#34;&gt;
  一、什么是控制器？
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80%e4%bb%80%e4%b9%88%e6%98%af%e6%8e%a7%e5%88%b6%e5%99%a8&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;在 Kubernetes 中，&lt;strong&gt;控制器（Controller）&lt;/strong&gt; 是一个永不休止的控制循环，它监控集群中资源对象的实际状态，并驱动其向用户声明的期望状态收敛。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Kubernetes 核心资源模型的设计哲学</title>
      <link>https://lznauy.cn/posts/2026-07-22-blog-core-resources/</link>
      <pubDate>Wed, 22 Jul 2026 15:38:57 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-22-blog-core-resources/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;基于 Kubernetes v1.37 源码（&lt;code&gt;pkg/apis/core/types.go&lt;/code&gt;）&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h2 id=&#34;一一切始于一个信封&#34;&gt;
  一、一切始于一个信封
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80%e4%b8%80%e5%88%87%e5%a7%8b%e4%ba%8e%e4%b8%80%e4%b8%aa%e4%bf%a1%e5%b0%81&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Kubernetes 的所有资源对象，都共享同一个&amp;quot;信封&amp;quot;结构：&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Gin 路由为什么快：Radix Tree 源码剖析</title>
      <link>https://lznauy.cn/posts/2026-07-21-radix-tree/</link>
      <pubDate>Tue, 21 Jul 2026 10:34:00 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-21-radix-tree/</guid>
      <description>&lt;h2 id=&#34;一为什么路由匹配值得优化&#34;&gt;
  一、为什么路由匹配值得优化
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%b8%80%e4%b8%ba%e4%bb%80%e4%b9%88%e8%b7%af%e7%94%b1%e5%8c%b9%e9%85%8d%e5%80%bc%e5%be%97%e4%bc%98%e5%8c%96&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;路由匹配处于 HTTP 请求的最热路径上：每个请求进来，框架做的第一件事就是根据 URL 找到对应的 handler。它的实现方式直接决定了框架的性能下限。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>前路茫茫</title>
      <link>https://lznauy.cn/posts/2026-07-17-ai%E6%97%B6%E4%BB%A3%E8%BF%98%E6%9C%89%E6%8A%80%E6%9C%AF%E5%A3%81%E5%9E%92%E5%90%97/</link>
      <pubDate>Fri, 17 Jul 2026 14:14:42 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-07-17-ai%E6%97%B6%E4%BB%A3%E8%BF%98%E6%9C%89%E6%8A%80%E6%9C%AF%E5%A3%81%E5%9E%92%E5%90%97/</guid>
      <description>&lt;p&gt;如今，失业的寒潮愈发汹涌，各大自媒体平台都能刷到“大龄程序员失业转行干某行业”的标题，不得不感慨行业变化之快。记得我以前的同事讲过，他15年左右大学毕业，经济管理专业，毕业后转行程序员，自学一个月PHP，仅会些编程语法的程度很轻松就找到实习工作，刚入职就拿到6k工资，第二年翻一倍。但今年大多数计算机行业的应届毕业生几乎很难找到工作，甚至实习offer都没有。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>NekoCode 深度解析</title>
      <link>https://lznauy.cn/posts/2026-06-30-nekocode%E5%AD%90%E7%B3%BB%E7%BB%9F%E6%B7%B1%E5%BA%A6%E8%A7%A3%E6%9E%90/</link>
      <pubDate>Tue, 30 Jun 2026 22:00:00 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-06-30-nekocode%E5%AD%90%E7%B3%BB%E7%BB%9F%E6%B7%B1%E5%BA%A6%E8%A7%A3%E6%9E%90/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;
  前言
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e5%89%8d%e8%a8%80&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;上个月在《AI Agent 开发杂谈》里聊了 NekoCode 的架构思路，但那篇偏概述。这篇文章换个角度，从工程实现层面拆开几个核心子系统：它们解决什么问题，代码里怎么落地，又如何互相配合。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>用AI开发新主题仅需一天</title>
      <link>https://lznauy.cn/posts/2026-06-23-%E7%94%A8ai%E5%BC%80%E5%8F%91%E6%96%B0%E4%B8%BB%E9%A2%98%E4%BB%85%E9%9C%80%E4%B8%80%E5%A4%A9/</link>
      <pubDate>Tue, 23 Jun 2026 18:39:02 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-06-23-%E7%94%A8ai%E5%BC%80%E5%8F%91%E6%96%B0%E4%B8%BB%E9%A2%98%E4%BB%85%E9%9C%80%E4%B8%80%E5%A4%A9/</guid>
      <description>&lt;p&gt;今天把用了好久的“毛坯风”主题换了，其实早就觉得之前的主题太丑了，然后只花了一天时间就使用AI重新设计了一版新主题，新主题是报纸风格，比较贴合我的喜好，不得不感慨AI还是太好用了。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>AIAgent开发杂谈</title>
      <link>https://lznauy.cn/posts/2026-06-16-aiagent%E5%BC%80%E5%8F%91%E6%9D%82%E8%B0%88/</link>
      <pubDate>Tue, 16 Jun 2026 01:25:14 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-06-16-aiagent%E5%BC%80%E5%8F%91%E6%9D%82%E8%B0%88/</guid>
      <description>&lt;h2 id=&#34;前言&#34;&gt;
  前言
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e5%89%8d%e8%a8%80&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;我开发nekocode项目已经一个多月了，这个项目完全是vibe出来的，我没写过一行代码，但不代表我对于该项目的方案以及细节一无所知，该项目目前已经超过两万六千行代码，在没有财力和条件使用国外claude或gpt等先进模型，仅使用国内便宜模型的情况下，即使是claude-code或者codex这种工业级的codeagent想完美的实现超过万行代码的项目也是十分困难的，最关键的还是人对于方案的把控和项目发展的约束。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>CodeAgent的开发比我想象的难的多</title>
      <link>https://lznauy.cn/posts/2026-05-18-codeagent%E7%9A%84%E5%BC%80%E5%8F%91%E6%AF%94%E6%88%91%E6%83%B3%E8%B1%A1%E7%9A%84%E9%9A%BE%E7%9A%84%E5%A4%9A/</link>
      <pubDate>Mon, 18 May 2026 00:06:41 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-05-18-codeagent%E7%9A%84%E5%BC%80%E5%8F%91%E6%AF%94%E6%88%91%E6%83%B3%E8%B1%A1%E7%9A%84%E9%9A%BE%E7%9A%84%E5%A4%9A/</guid>
      <description>&lt;p&gt;在上个月底，我萌生了自己开发一款code agent的想法，可以理解为类似claude code的产品。对于code agent, 我用过非常多，除了claude还有opencode、crush、pi-mono、codex、gemini-cli、qoder等等。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>nix语法初入门</title>
      <link>https://lznauy.cn/posts/2026-04-25-nix%E8%AF%AD%E6%B3%95%E5%88%9D%E5%85%A5%E9%97%A8/</link>
      <pubDate>Sat, 25 Apr 2026 11:17:03 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-25-nix%E8%AF%AD%E6%B3%95%E5%88%9D%E5%85%A5%E9%97%A8/</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;文章使用opencode+glm，根据我的练习代码以及官方参考资料生成，这种文章没有必要自己写了&lt;/p&gt;
&lt;/blockquote&gt;


&lt;h1 id=&#34;nix-语言基础语法速览&#34;&gt;
  Nix 语言基础语法速览
  &lt;a class=&#34;heading-link&#34; href=&#34;#nix-%e8%af%ad%e8%a8%80%e5%9f%ba%e7%a1%80%e8%af%ad%e6%b3%95%e9%80%9f%e8%a7%88&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Nix 不仅仅是一个包管理器，它还拥有一门专门为描述软件构建而设计的&lt;strong&gt;纯函数式领域特定语言（DSL）&lt;/strong&gt;。Nix 语言的核心特性包括：惰性求值、动态类型、声明式、无副作用。本文将通过一系列由浅入深的代码示例，带你快速掌握 Nix 语言的基础语法。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>记录一次家里老人受骗</title>
      <link>https://lznauy.cn/posts/2026-04-22-%E5%AE%B6%E9%87%8C%E8%80%81%E4%BA%BA%E5%8F%97%E9%AA%97/</link>
      <pubDate>Wed, 22 Apr 2026 10:54:22 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-22-%E5%AE%B6%E9%87%8C%E8%80%81%E4%BA%BA%E5%8F%97%E9%AA%97/</guid>
      <description>&lt;p&gt;前一段时间我奶奶说肠胃不舒服，吃不下饭，恶心难受。然后家里人立刻带她去当地医院检查，住了10天院，中间做了胃镜与肠镜，结果都没什么问题，仅是肠镜发现了1cm的息肉，顺手摘除了。医生告诫不让乱吃东西，只能先喝点小米粥或者面汤，但我奶奶口味很重，还想吃麻辣米线，也不喜欢喝水，要喝珍珠奶茶，让人很无奈。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>nixos美化shell及常用软件安装</title>
      <link>https://lznauy.cn/posts/2026-04-20-nixos%E7%BE%8E%E5%8C%96shell%E5%8F%8A%E5%B8%B8%E7%94%A8%E8%BD%AF%E4%BB%B6%E5%AE%89%E8%A3%85/</link>
      <pubDate>Mon, 20 Apr 2026 18:37:22 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-20-nixos%E7%BE%8E%E5%8C%96shell%E5%8F%8A%E5%B8%B8%E7%94%A8%E8%BD%AF%E4%BB%B6%E5%AE%89%E8%A3%85/</guid>
      <description>&lt;p&gt;最近回到家，又开始折腾nixos了，当前主题&lt;/p&gt;
&lt;p&gt;









  







  







  
  
  




  
  &lt;img 
    src=&#34;data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7&#34;
    data-src=&#34;https://lznauy.cn/assets/nixos-desktop1.webp&#34;
    alt=&#34;nixos-desktop1&#34;
    title=&#34;&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    class=&#34;lazyload&#34;
    style=&#34;background-color: var(--lazyload-placeholder-solid, #ede6d9);&#34;
  /&gt;

&lt;/p&gt;


&lt;h2 id=&#34;fishstarship-安装及美化&#34;&gt;
  fish+starship 安装及美化
  &lt;a class=&#34;heading-link&#34; href=&#34;#fishstarship-%e5%ae%89%e8%a3%85%e5%8f%8a%e7%be%8e%e5%8c%96&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;最近把shell从zsh+p10k的模式切换成了fish+starship，发现fish的性能要好很多，同时starship的配置也很方便，配置如下，很简单。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>皖南川藏线之旅</title>
      <link>https://lznauy.cn/posts/2026-04-18-%E7%9A%96%E5%8D%97%E5%B7%9D%E8%97%8F%E7%BA%BF%E4%B9%8B%E6%97%85/</link>
      <pubDate>Sat, 18 Apr 2026 09:25:07 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-18-%E7%9A%96%E5%8D%97%E5%B7%9D%E8%97%8F%E7%BA%BF%E4%B9%8B%E6%97%85/</guid>
      <description>&lt;p&gt;自从四月十二号跟杭州几个朋友吃了最后一顿饭，然后我就开始准备行程了，先打算走国道去皖南川藏线逛一圈，然后上高速回家。&lt;/p&gt;
&lt;p&gt;四月十三号，我把房间里的东西都打包好了，六个大箱子加上我的自行车和其他装杂物的小箱子，一共将近二十个箱子，有十二个箱子走德邦物流寄回家，剩下的一些比较贵重或易碎的东西放在后备箱，打算自己开车带回去。自己打包还是比较划算的，我买打包材料包括箱子一共花了将近200块钱，然后走德邦物流运费560块钱，一共760块钱，如果找搬家公司要价基本就上1600了。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>nixos配置kitty以及桌面美化</title>
      <link>https://lznauy.cn/posts/2026-04-11-nixos%E9%85%8D%E7%BD%AEkitty%E4%BB%A5%E5%8F%8A%E6%A1%8C%E9%9D%A2%E7%BE%8E%E5%8C%96/</link>
      <pubDate>Sat, 11 Apr 2026 18:00:21 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-11-nixos%E9%85%8D%E7%BD%AEkitty%E4%BB%A5%E5%8F%8A%E6%A1%8C%E9%9D%A2%E7%BE%8E%E5%8C%96/</guid>
      <description>&lt;p&gt;当前桌面环境









  







  







  
  
  




  
  &lt;img 
    src=&#34;data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7&#34;
    data-src=&#34;https://lznauy.cn/assets/niri-kitty-new.webp&#34;
    alt=&#34;niri-kitty-new&#34;
    title=&#34;&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    class=&#34;lazyload&#34;
    style=&#34;background-color: var(--lazyload-placeholder-solid, #ede6d9);&#34;
  /&gt;

&lt;/p&gt;


&lt;h2 id=&#34;nixvim-安装及美化&#34;&gt;
  nixvim 安装及美化
  &lt;a class=&#34;heading-link&#34; href=&#34;#nixvim-%e5%ae%89%e8%a3%85%e5%8f%8a%e7%be%8e%e5%8c%96&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;由于nvchad发现很多问题，会导致崩溃，于是我将其换成了nixvim，通过hm进行模块配置&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-nix&#34; data-lang=&#34;nix&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# input引入源&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;nixvim&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;n&#34;&gt;url&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;github:nix-community/nixvim&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;      &lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixpkgs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;follows&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;nixpkgs&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;};&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 这里添加nixvim模块&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;outputs&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;{&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;self&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;nixpkgs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;home-manager&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;nixvim&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;...&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;}&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;@&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# 将其由hm管理&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;home-manager&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;sharedModules&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;[&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;n&#34;&gt;inputs&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixvim&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;homeModules&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;nixvim&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;];&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;nixvim 的具体配置如下， 由于treesitter最新版本没进unstable，因此暂时先不装了。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>nixos安装niri和noctalia</title>
      <link>https://lznauy.cn/posts/2026-04-10-nixos%E5%AE%89%E8%A3%85niri%E5%92%8Cnoctalia/</link>
      <pubDate>Fri, 10 Apr 2026 02:42:30 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-10-nixos%E5%AE%89%E8%A3%85niri%E5%92%8Cnoctalia/</guid>
      <description>&lt;p&gt;目前的桌面环境界面









  







  







  
  
  




  
  &lt;img 
    src=&#34;data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7&#34;
    data-src=&#34;https://lznauy.cn/assets/niri-desktop.webp&#34;
    alt=&#34;niri-desktop&#34;
    title=&#34;&#34;
    loading=&#34;lazy&#34;
    decoding=&#34;async&#34;
    class=&#34;lazyload&#34;
    style=&#34;background-color: var(--lazyload-placeholder-solid, #ede6d9);&#34;
  /&gt;

&lt;/p&gt;


&lt;h2 id=&#34;niri和noctalia简介&#34;&gt;
  niri和noctalia简介
  &lt;a class=&#34;heading-link&#34; href=&#34;#niri%e5%92%8cnoctalia%e7%ae%80%e4%bb%8b&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;


&lt;h3 id=&#34;什么是niri&#34;&gt;
  什么是niri
  &lt;a class=&#34;heading-link&#34; href=&#34;#%e4%bb%80%e4%b9%88%e6%98%afniri&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;众所周知Linux桌面主要分为 &lt;strong&gt;X11&lt;/strong&gt; 和 &lt;strong&gt;Wayland&lt;/strong&gt; 两套协议，而niri是Wayland生态里的一个窗口管理器（准确说是合成器compositor），用Rust写的，目前在GitHub上有22k+的star。&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>nixos-shell及配置优化</title>
      <link>https://lznauy.cn/posts/2026-04-08-nixos-shell%E5%8F%8A%E9%85%8D%E7%BD%AE%E4%BC%98%E5%8C%96/</link>
      <pubDate>Wed, 08 Apr 2026 20:12:22 +0800</pubDate>
      <author>lznauy</author>
      <guid>https://lznauy.cn/posts/2026-04-08-nixos-shell%E5%8F%8A%E9%85%8D%E7%BD%AE%E4%BC%98%E5%8C%96/</guid>
      <description>&lt;h2 id=&#34;nix-shell介绍&#34;&gt;
  nix-shell介绍
  &lt;a class=&#34;heading-link&#34; href=&#34;#nix-shell%e4%bb%8b%e7%bb%8d&#34;&gt;
    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;@&#34;&gt;&lt;/i&gt;
    &lt;span class=&#34;sr-only&#34;&gt;@&lt;/span&gt;
  &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;今天又学了一点新东西，&lt;code&gt;nix-shell&lt;/code&gt; 是 Nix 包管理器提供的一个强大的开发环境工具，它可以让你在不影响系统环境的情况下，使用特定版本的工具和依赖。&lt;/p&gt;</description>
    </item>
    
  </channel>
</rss>
