<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>I am LAZY bones?</title>
	<atom:link href="https://luy.li/feed/" rel="self" type="application/rss+xml" />
	<link>https://luy.li</link>
	<description>AN ancient AND boring SITE</description>
	<lastBuildDate>Tue, 14 Apr 2026 05:15:45 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>App Store Small Business Program</title>
		<link>https://luy.li/2026/04/14/app-store-small-business-program/</link>
					<comments>https://luy.li/2026/04/14/app-store-small-business-program/#respond</comments>
		
		<dc:creator><![CDATA[bones7456]]></dc:creator>
		<pubDate>Tue, 14 Apr 2026 05:15:45 +0000</pubDate>
				<category><![CDATA[精华]]></category>
		<guid isPermaLink="false">https://luy.li/?p=2434</guid>

					<description><![CDATA[<p>事情是这样的，3月初的时候，我上线了我的第一款收费APP（用于在睡眠期间监测和记录呼噜声的），然后陆陆续续也有 [&#8230;]</p>
<p>The post <a href="https://luy.li/2026/04/14/app-store-small-business-program/">App Store Small Business Program</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>事情是这样的，3月初的时候，我上线了我的第一款<a href="https://nightsnore.com" title="NightSnore" rel="noopener" target="_blank">收费APP</a>（用于在睡眠期间监测和记录呼噜声的），然后陆陆续续也有几笔成交了。</p>
<p>于是我这个数据控，就研究了一下Apple的开发者后台，里面的一些看板和详细数据。由于我的APP一共也才成交了几笔而已，样本非常有限，还刻意和资深开发者朋友 <a href="https://imtx.me">TualatriX</a> 聊了一下，还真让我发现了一些门道和问题。。。</p>
<p>那就是在app store connect里，Sales、Proceeds的数据，和你给APP的定价肯定都会不一样。原因有以下几层：</p>
<p>第一层，是汇率的影响。</p>
<p>因为你的 APP 是全球卖的。用户可能用的是欧元、日元、人民币付款，而你后台的结算通常是按美元（或你本地货币）来算的。中间一定会经历一次甚至两次货币转换。</p>
<p>关键点在于：Apple 用的不是实时汇率，而是自己的一套定价和结算汇率（按周期更新）。这就会带来几个结果：</p>
<ul>
<li>同样标价 2.99，在不同国家对应的本地价格其实是不一样的</li>
<li>不同货币换算回来的“基准金额”，本身就有偏差</li>
<li>即使同一个国家，汇率调整周期不同，Proceeds 也可能轻微波动</li>
</ul>
<p>换句话说，从一开始，你的“2.99”，在全球范围内就已经不是一个严格一致的数字了。</p>
<p>然后，才是第二层：税。</p>
<p>App Store 的价格是“含税展示价”，不同国家税率不同（比如 VAT、GST）。这些税是从用户支付的钱里先扣掉的。</p>
<p>接着是第三层：Apple 抽成。</p>
<p>而且这个抽成，是在“去税之后”的金额上算的（默认抽走30%）。再剩下的才是你真正拿到的 Proceeds。</p>
<p>所以完整链路其实是：<strong>本地定价 → 汇率换算 → 扣税 → Apple 抽成 → 最终收入（Proceeds）</strong></p>
<p>那，作为开发者，有什么可以action的东西么？</p>
<p>显然，汇率和税，作为小卡拉米的我们，是没法去影响的，但苹果其实有个“<a href="https://developer.apple.com/app-store/small-business-program/" rel="noopener" target="_blank">App Store Small Business Program</a>”，是可以给小开发者一些抽成上的优惠的。</p>
<p>具体来说，苹果针对年销售额不足1百万美元的小开发者，可以把默认的30%的抽成比例，降到15%。其实之前我也听说过这个计划，但当时也没细看，以为是默认开通的。但其实是要开发者去单独申请，并审核开通的。方法倒是很简单，就是用开发者账号登录后，在<a href="https://developer.apple.com/app-store/small-business-program/" rel="noopener" target="_blank">这个页面</a>点“Enroll now”，填上相应的信息，就算提交成功了。</p>
<p>注意，提交成功，并不代表你enroll成功了，在收到以下邮件之前，抽成将还是30%。而且苹果处理这个请求相当地慢，以我为例花了3周的时间，而且我中间还催过一次。<br />
<img fetchpriority="high" decoding="async" src="https://luy.li/wp-content/uploads/2026/04/Small-Business-Program.png" alt="Small Business Program" width="913" height="629" class="alignnone size-full wp-image-2438" /></p>
<p>好了，最后祝所有开发者都能APP大卖！早日被踢出Small Business Program！</p><p>The post <a href="https://luy.li/2026/04/14/app-store-small-business-program/">App Store Small Business Program</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://luy.li/2026/04/14/app-store-small-business-program/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>清迈旅行</title>
		<link>https://luy.li/2026/04/11/chiangmai/</link>
					<comments>https://luy.li/2026/04/11/chiangmai/#respond</comments>
		
		<dc:creator><![CDATA[bones7456]]></dc:creator>
		<pubDate>Sat, 11 Apr 2026 14:06:01 +0000</pubDate>
				<category><![CDATA[游记]]></category>
		<guid isPermaLink="false">https://luy.li/?p=2425</guid>

					<description><![CDATA[<p>我发现，要坚持输出一些内容，还是挺难的，这不，离上一篇文章都已经快一个月了。经常有这样那样的事情，就推脱自己有 [&#8230;]</p>
<p>The post <a href="https://luy.li/2026/04/11/chiangmai/">清迈旅行</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>我发现，要坚持输出一些内容，还是挺难的，这不，离上一篇文章都已经快一个月了。经常有这样那样的事情，就推脱自己有点忙，哈哈！好在，今天还是想起来要写点东西了。</p>
<p>这次去清迈，是因为4月初有个Good Friday，新加坡会多一天假，而且刚好和国内的清明假期差不多时间。就想趁着小长假去哪里玩一下。一开始是计划去印尼看火山的，但机票、行程都没有选到合适的，后来又在科莫多岛、巴厘岛和斯里兰卡之间摇摆了很久，最终决定去个轻松的，几个人才定了清迈。</p>
<p>我们有4天3晚的时间，去掉来和回的两个半天，安排一个一日游行程和一天的自由活动。剩下的就是吃吃喝喝和每天一次的马杀鸡了。</p>
<p>一日游，我们是携程上找的“清迈黑庙+白庙+蓝庙一日游”，中文导游+跟车+门票+团餐的小团。389RMB一个人，我们选的是9人小团，如果是12人的团，价格会便宜蛮多。但是，相信我选贵的，这9人和12人，不仅仅是人数的差别。这两者使用的面包车是一样大小的，也就是说12人团的车，位置会很挤，相当于经济舱；而9人团的位置就宽敞很多。而且，由于经典离清迈老城还蛮远的（实际上，已经到旁边叫“清莱”的邦了），全天在车上的时间会超过6小时，所以乘车的舒适性对这个行程还是挺关键的。</p>
<p>好了，接下来就到了放图时间了。我按时间顺序来吧。</p>
<p>长颈族部落，这是一个3庙以外的小景点，可以选参加的。景点确实非常小，有几十个长颈族的部落成员，导游说以前他们是缅甸的，逃难到此，扎下根来，受泰国政府庇护，专门给他们开发了这块区域。<br />
<img decoding="async" src="https://luy.li/wp-content/uploads/2026/04/longneck.webp" alt="长颈族人民的生活状况" width="1500" height="1125" class="alignnone size-full wp-image-2428" /></p>
<p>白庙的创始人，是一个当地的艺术家，前半生艺术成就很高，也买了很多画赚到不少钱，后半生开始参与公共事业，建设了这座庙。这座庙的艺术水准确实也非常高！非常地闪亮！<br />
<img decoding="async" src="https://luy.li/wp-content/uploads/2026/04/white.webp" alt="白庙" width="1500" height="1125" class="alignnone size-full wp-image-2429" /></p>
<p>蓝庙就比较新了。建于2016年前后，由白庙的那个艺术家的学生打造，在旧庙遗址上重建，以深蓝象征智慧、金色象征佛光，融合现代艺术与传统佛教风格，成为清莱最具视觉冲击力的新地标之一。<br />
<img loading="lazy" decoding="async" src="https://luy.li/wp-content/uploads/2026/04/blue.webp" alt="蓝庙" width="1500" height="1125" class="alignnone size-full wp-image-2430" /></p>
<p>蓝庙的冰激凌都是蓝色的<br />
<img loading="lazy" decoding="async" src="https://luy.li/wp-content/uploads/2026/04/icecream.webp" alt="蓝庙的冰激凌都是蓝色的" width="1500" height="1125" class="alignnone size-full wp-image-2431" /></p>
<p>黑庙，则另一个艺术家于20世纪后期逐步建成，它其实不是寺庙，而是一组以黑色木屋与动物骨骼、毛皮等艺术构成的博物馆，通过强烈的原始与暗黑风格表达生死、欲望与人性主题。<br />
<img loading="lazy" decoding="async" src="https://luy.li/wp-content/uploads/2026/04/black.webp" alt="黑庙" width="1500" height="1125" class="alignnone size-full wp-image-2432" /></p>
<p>黑庙其实占地面积挺大的，我们应该是逛了一个小时左右，还意犹未尽，这是部分展品：<br />
<img loading="lazy" decoding="async" src="https://luy.li/wp-content/uploads/2026/04/black_collection.webp" alt="" width="1500" height="1125" class="alignnone size-full wp-image-2427" /></p>
<p>以上就是一日游的所有景点了。</p>
<p>另外值得一提的，就是马杀鸡了，泰国的马杀鸡本身就很出名，清迈的马杀鸡店非常多，价格从便宜到中等都有（真的都不算贵），我们基本上从200多泰铢到700多泰铢的都体验了一下，怎么说呢？还是很解压的，基本上每个档位的服务也都对得起那个价格。所以，一般对着Google maps的评分做参考，就不会踩雷。当然，还是得体验一下贵一点的，毕竟换算一下还是很便宜。这个就不放图了。</p>
<p>还有就是，我们住在塔佩门附近，周日晚上的夜市（只有周日有，其他的都是小夜市），确实很热闹，可以逛逛。而且夜市里也有很多吃的小摊贩，品种很多，样式很齐，所以可以解决晚饭。但其他商品嘛，可能是因为逛过义务小商品市场了，又有万能的淘宝了，基本上也都不怎么会看得上。就看个热闹也挺好的。</p>
<p>自己玩的那天，我们去了素贴山徒步，行程一般，门票大人100，小孩50，会路过另外两个寺庙。而且当时空气质量还是有点堪忧（虽然山上比市区好多了），就不多说了吧。</p>
<p>就此，完毕！</p><p>The post <a href="https://luy.li/2026/04/11/chiangmai/">清迈旅行</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://luy.li/2026/04/11/chiangmai/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>OpenClaw分享</title>
		<link>https://luy.li/2026/03/15/openclaw-share/</link>
					<comments>https://luy.li/2026/03/15/openclaw-share/#respond</comments>
		
		<dc:creator><![CDATA[bones7456]]></dc:creator>
		<pubDate>Sun, 15 Mar 2026 06:45:28 +0000</pubDate>
				<category><![CDATA[AI]]></category>
		<category><![CDATA[经验技巧]]></category>
		<category><![CDATA[OpenClaw]]></category>
		<category><![CDATA[龙虾]]></category>
		<guid isPermaLink="false">https://luy.li/?p=2419</guid>

					<description><![CDATA[<p>以下PPT和内容，来源是我跟一群爱学习的朋友一起学时下大火的OpenClaw小龙虾，我给大家做了个小分享。 P [&#8230;]</p>
<p>The post <a href="https://luy.li/2026/03/15/openclaw-share/">OpenClaw分享</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>以下PPT和内容，来源是我跟一群爱学习的朋友一起学时下大火的OpenClaw小龙虾，我给大家做了个小分享。</p>
<p>PPT几乎是OpenClaw输出的内容，下面的会议总结也是GPT根据会议录屏总结的。</p>
<p>需要注意的是，我其实没有将小龙虾玩得很深，因为我从心底里是不信任AI的，也就不敢给它太多权限。所以内容也都比较浅，请见谅。</p>
<p><iframe loading="lazy" src="https://docs.google.com/presentation/d/e/2PACX-1vQOtHcPM_SPHQeRBGgkKIznkqP-kPuwz3G7weQm1kvBp_B-XKdhTz011_iabr5mXQ/pubembed?start=true&#038;loop=true&#038;delayms=3000" frameborder="0" width="960" height="569" allowfullscreen="true" mozallowfullscreen="true" webkitallowfullscreen="true"></iframe></p>
<p><strong>OpenClaw 会议总结</strong></p>
<p>这次分享的核心，不是在介绍一个“聊天机器人”，而是在介绍一套可自托管、可扩展、可执行任务的<strong>个人 AI 基础设施</strong>。分享者把 OpenClaw 定位为“装进手机里的 AI 助手”：用户通过 WhatsApp、Telegram 等聊天入口发出请求，背后由部署在自己电脑或服务器上的 OpenClaw 网关完成会话管理、记忆注入、工具调用和本地执行，再把结果返回到聊天端。PPT 对这一定位和整体链路描述得很清楚。</p>
<p><span id="more-2419"></span></p>
<p><strong>一、这场分享的主线是什么</strong></p>
<p>整场分享围绕一个很明确的问题展开：<strong>为什么需要 OpenClaw，而不是直接用通用聊天产品。</strong></p>
<p>PPT 给出的答案是，ChatGPT 更像“顾问”，而 OpenClaw 更像“助手”——它不是只回答问题，而是要具备持续记忆、调用工具、执行动作、主动提醒和接入个人环境的能力。具体包括：</p>
<ul>
<li>有长期记忆，不是每次会话都“重新认识你”</li>
<li>能直接操作文件、终端、日历等外部系统</li>
<li>可以通过心跳机制和定时任务主动触达用户</li>
<li>以自托管方式运行，强调自主可控和隐私优先</li>
<li>按用量计费，面向愿意折腾和深度定制的用户群体</li>
</ul>
<p>从表达方式上看，这不是一场“功能堆砌式”介绍，而是在尝试说明：<strong>OpenClaw 的价值不在模型本身，而在模型外层那一整套长期运行的个人代理系统。</strong></p>
<p><strong>二、OpenClaw 的核心能力框架</strong></p>
<p>根据 PPT，OpenClaw 的能力可以概括成四层：</p>
<p><strong>1. 聊天入口层</strong></p>
<p>支持 WhatsApp、Telegram、iMessage、Discord、Slack 等多个消息平台，目标是让用户沿用已有通信习惯，而不必专门切换到某个 AI 产品界面。PPT 明确强调：“换了聊天软件，AI 还是同一个——记忆和设置全部保留。”</p>
<p><strong>2. 网关与调度层</strong></p>
<p>消息进入后，由 OpenClaw 网关完成身份验证、会话管理、消息路由、工具执行和记忆注入。PPT 用“一条消息的旅程”说明了从手机发消息，到加载 USER.md / MEMORY.md，再到发给模型、决策调用工具、执行、最后自然语言回复的完整链路。</p>
<p><strong>3. 记忆与人格层</strong></p>
<p>这是分享里非常重要的一部分。PPT 把记忆系统拆成多个 Markdown 文件：</p>
<ul>
<li><strong>SOUL.md</strong>：AI 的人格、风格、语气</li>
<li><strong>USER.md</strong>：用户身份、背景、偏好</li>
<li><strong>MEMORY.md</strong>：长期累积的重要记忆</li>
<li><strong>AGENTS.md</strong>：规则、权限边界与行为约束</li>
</ul>
<p>这种设计的意义在于：AI 的“性格、知识、权限和历史”都变成了用户可编辑的文本资产，而不是封装在黑箱里。</p>
<p><strong>4. 工具与执行层</strong></p>
<p>PPT 列出的工具包括文件读写、shell 执行、浏览器控制、网页搜索、手机节点、canvas、tts、消息推送等，目标是让 AI 能从“回答”升级为“完成任务”。同时也强调了工具级权限控制、白名单验证、分场景配置以及 Docker 隔离等安全措施。</p>
<p><strong>三、这次录屏里真正有说服力的部分：不是讲概念，而是做了演示</strong></p>
<p>结合录屏画面看，分享并没有停留在 PPT 层面，而是穿插了实际操作，这一点增强了可信度。</p>
<p>从录屏中能看到，分享后半段进入了一个类似 <strong>ClawHub</strong> 的界面，现场展示了一个 <strong>Trello Skill</strong> 的文件内容、配置说明和调用方式；随后又切到 <strong>Telegram</strong> 对话窗口，以及本地 <strong>终端</strong>，演示如何通过消息端触发配置流程，并把第三方能力接到 OpenClaw 体系里。这个流程说明两件事：</p>
<ol>
<li><strong>Skills 不是抽象概念，而是可安装、可配置、可调用的扩展能力。</strong></li>
<li><strong>OpenClaw 的“手机端 AI 助手”并不依赖复杂前端，而是通过消息通道串起技能、工具和运行环境。</strong></li>
</ol>
<p>从演示节奏上看，分享者实际上是在证明：</p>
<p><strong>OpenClaw 的价值不只是“能接模型”，而是能把模型、工具、个人环境、外部平台和长期记忆组合成一个持续在线的代理系统。</strong></p>
<p><strong>四、这场分享传达出的三个关键判断</strong></p>
<p><strong>1. OpenClaw 的竞争点不是模型能力，而是“代理能力”</strong></p>
<p>这套系统的重点不是谁的模型更聪明，而是谁更能接入现实世界、持续服务用户、并完成闭环动作。PPT 中“帮你做，不只说”就是这个核心。</p>
<p><strong>2. 它更像一个 AI 操作系统，而不是单点应用</strong></p>
<p>无论是记忆文件、agent 配置、skills 插件、heartbeat、cron，还是多账号/多角色隔离，整体架构都更接近一个可编排的 AI runtime，而不是普通对话产品。尤其是“家庭共享、工作/私人分离、权限分级”这些设计，说明它从一开始就考虑了长期运营而不是一次性 demo。</p>
<p><strong>3. 目标用户非常清晰：不是大众用户，而是愿意部署、愿意调教、愿意承担维护成本的人</strong></p>
<p>PPT 直接写明更适合有服务器/NAS/Mac mini、喜欢定制、想要私人 AI、重视掌控权的人。这一点判断是务实的，也符合演示中的实际复杂度。</p>
<p><strong>五、我认为这场分享里最值得保留的亮点</strong></p>
<p><strong>最亮的点有三个：</strong></p>
<p><strong>一是记忆系统设计。</strong></p>
<p>用普通 Markdown 管理 persona、user profile、memory、agent rule，这个思路非常工程化，也非常利于用户理解和修改。</p>
<p><strong>二是主动性机制。</strong></p>
<p>PPT 提到 heartbeat 每 30 分钟自动唤醒、检查邮件/日历/待办，并通过 cron 做天气摘要、周报提醒、服务器状态检查。这意味着 AI 不再只在被提问时才工作，而是能持续担任“个人运维助手”。</p>
<p><strong>三是多智能体与权限隔离。</strong></p>
<p>同一套网关下，可以给自己、家人、工作场景分别配置不同 Agent，并限制工具权限。这使它具备了现实部署价值，而不是仅适合个人极客实验。</p>
<p><strong>六、这场分享也有意保留了几个“没有过度包装”的点</strong></p>
<p>这一点我觉得反而很专业。</p>
<p>PPT 里并没有把 OpenClaw 完全神化，而是明确写出了几个边界条件：</p>
<ul>
<li>文件和命令虽然在本地处理，但<strong>部分内容仍会发送到 token provider</strong>，因此“隐私优先”不是绝对封闭</li>
<li>为了达到较好效果，上下文很长，<strong>按量付费未必便宜</strong></li>
<li><strong>Docker 隔离是建议配置，不是默认配置</strong></li>
<li>在“重视隐私的人”这一页里，演讲者自己还留了保留意见，说明他并不是无条件认可全部宣传口径</li>
</ul>
<p>这些细节说明，分享者对产品定位是偏清醒的：</p>
<p><strong>OpenClaw 很强，但它不是零成本、零配置、零风险的万能方案。</strong></p>
<p><strong>七、结论</strong></p>
<p>如果要用一句更专业的话来概括，这次分享展示的是：</p>
<p><strong>OpenClaw 不是一个 AI 聊天应用，而是一套面向个人场景的、自托管 AI Agent 基础设施。它通过消息入口、长期记忆、工具调用、任务调度和多代理隔离，把大模型从“会回答”推进到“能持续协助与执行”。</strong></p><p>The post <a href="https://luy.li/2026/03/15/openclaw-share/">OpenClaw分享</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://luy.li/2026/03/15/openclaw-share/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>《静静的顿河》第三、四卷读后感</title>
		<link>https://luy.li/2026/02/25/and-quiet-flows-the-don-3-4/</link>
					<comments>https://luy.li/2026/02/25/and-quiet-flows-the-don-3-4/#respond</comments>
		
		<dc:creator><![CDATA[bones7456]]></dc:creator>
		<pubDate>Wed, 25 Feb 2026 14:56:33 +0000</pubDate>
				<category><![CDATA[流水帐]]></category>
		<guid isPermaLink="false">https://luy.li/?p=2416</guid>

					<description><![CDATA[<p>前两卷留下的印象，是那种暖色调的水彩画——顿河边的草场、哥萨克村子里的家长里短、葛利沙和阿克西妮亚之间藕断丝连 [&#8230;]</p>
<p>The post <a href="https://luy.li/2026/02/25/and-quiet-flows-the-don-3-4/">《静静的顿河》第三、四卷读后感</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>前两卷留下的<a href="https://luy.li/2026/01/11/and-quiet-flows-the-don-1-2/" title="《静静的顿河》第一、二卷的读后感">印象</a>，是那种暖色调的水彩画——顿河边的草场、哥萨克村子里的家长里短、葛利沙和阿克西妮亚之间藕断丝连的情愫。节奏慢，但耐看，像坐在廊子下面晒太阳，看日子一天天过去。</p>
<p>到了三、四卷，画风突然就变了。</p>
<p>大量的场景转移到了军营、行军路上，甚至直接是炮火纷飞的战场。节奏紧了，人也开始大批地死。那种生活流的温度消失了，取而代之的是裹挟着所有人的历史洪流——你不想卷进去，但你没得选。</p>
<p>这两卷真正开始展开的，是俄国社会深处的阶级裂痕。对外的战争还没打完，内部的矛盾就已经压不住了。沙皇的权威在慢慢松动，旧秩序腾出来的空间，各方势力都想填进去。这种感觉其实很熟悉——历史上大概率，对外的战争一旦结束，就容易有内战。外部的压力消失了，内部的矛盾反而浮上来了。</p>
<p>布尔什维克在这两卷里开始有了存在感。他们的传播方式是低调的、地下的，像水渗进土里一样，悄悄地扩散。对那些一无所有的底层人来说，他们描绘的那个世界确实有吸引力——凭什么你有地我没地？凭什么干一样的活，命运差这么多？这种质问是朴素的，也是有力量的。</p>
<p>但我读到这里会停下来想一个问题：保护&#8221;私有财产&#8221;和追求&#8221;社会公平&#8221;，这两件事本质上是有张力的。布尔什维克当时给出的答案，是彻底打翻旧秩序。可打翻之后呢？这个问题到今天也没有一个让所有人都满意的答案。不同的国家在这条线上划在不同的位置，还在不断地摩擦、调整。</p>
<p>肖洛霍夫厉害的地方在于，他没有给你答案。他只是把所有人都放进这个漩涡里，然后让你看着他们挣扎。葛利沙就是这样一个人——他不是天生的革命者，也不是坚定的保守派，他只是一个被时代推着走、不断做选择又不断后悔的普通人。</p>
<p>看完这两卷，确实比前两卷更沉重了。后面还有什么呢？我会继续探索。</p><p>The post <a href="https://luy.li/2026/02/25/and-quiet-flows-the-don-3-4/">《静静的顿河》第三、四卷读后感</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://luy.li/2026/02/25/and-quiet-flows-the-don-3-4/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>局域网影音解决方案——Jellyfin</title>
		<link>https://luy.li/2026/02/20/jellyfin/</link>
					<comments>https://luy.li/2026/02/20/jellyfin/#comments</comments>
		
		<dc:creator><![CDATA[bones7456]]></dc:creator>
		<pubDate>Fri, 20 Feb 2026 12:53:42 +0000</pubDate>
				<category><![CDATA[经验技巧]]></category>
		<guid isPermaLink="false">https://luy.li/?p=2408</guid>

					<description><![CDATA[<p>先交代下背景：我本来是打算在家里搞个NAS的，但由于最近硬盘和内存都疯狂涨价，加上其实需求也不是那么迫切，就一 [&#8230;]</p>
<p>The post <a href="https://luy.li/2026/02/20/jellyfin/">局域网影音解决方案——Jellyfin</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></description>
										<content:encoded><![CDATA[<p>先交代下背景：我本来是打算在家里搞个NAS的，但由于最近硬盘和内存都疯狂涨价，加上其实需求也不是那么迫切，就一直没有去折腾。</p>
<p>另外，家里其实已经有一个小主机（对，本blog就跑在上面呢）了，它带了1TB的SSD。所以偶尔有下载电影、在不同的屏幕（手机、pad、电脑、电视机等）看电影的需求，就想着把这个小主机再压榨一下吧。</p>
<p>于是有了以下的折腾：</p>
<p>下载的需求，其实很好搞定。但下载完之后，电影在小主机上，要在各种设备上播放，我一个想到的是用SMB在局域网里共享目录，这确实是一个方案。但这个方案有两个问题：</p>
<ol>
<li>不是所有的（屏幕）设备都能找到支持SMB的播放器。</li>
<li>有些设备的解码能力太弱，遇到高码率的4K视频，就会卡住</li>
</ol>
<p>所以，最好的方式就是再充分压榨这个小主机，因为它其实有个显卡（CPU：AMD Ryzen 3 7330U（集成 Radeon iGPU）），可以用于服务端转码。于是就给它装了个 Jellyfin。</p>
<p>Jellyfin是个开源的、完全自托管的影音解决方案，特别适合喜欢折腾的人。</p>
<p>安装过程我也偷懒了，没有去编译源码、调试环境，而是直接采用docker运行了，在我的Ubuntu下，大致如下：</p><pre class="urvanov-syntax-highlighter-plain-tag"># 添加docker的key和源
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo \
  &quot;deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
  https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release &amp;&amp; echo &quot;$VERSION_CODENAME&quot;) stable&quot; | \
  sudo tee /etc/apt/sources.list.d/docker.list &gt; /dev/null

# 安装 docker 和 compose 插件
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin</pre><p></p>
<p>接着，建一个 Jellyfin 的空目录，在里面建一个 <code>docker-compose.yml</code> 内容如下：</p><pre class="urvanov-syntax-highlighter-plain-tag">services:
  jellyfin:
    image: jellyfin/jellyfin:latest
    container_name: jellyfin
    ports:
      - &quot;8096:8096&quot;
    volumes:
      - ./config:/config
      - ./cache:/cache
      - /home/shared:/media:ro
    devices:
      - /dev/dri:/dev/dri
    environment:
      - TZ=Asia/Singapore
      - LIBVA_DRIVER_NAME=radeonsi
    restart: unless-stopped</pre><p>其中，<code>/home/shard</code> 是存电影的目录。</p>
<p>然后，在此目录下，执行 <code>docker compose up -d</code>，不出意外的话，你的Jellyfin就应该能正常启动了。这时候就可以访问 http://192.168.你的.IP:8096 进入web管理界面进行进一步的设置了。</p>
<p>设置完管理员账号之类的信息以后，需要注意的一点，就是开启转码的硬件加速。做法是在 <code>Dashboard → Playback → Transcoding</code> 里<br />
Hardware acceleration 选择 Video Acceleration API (VAAPI)，这是AMD的芯片+Linux系统的选项，其他的硬件、软件的组合，可以参考<a href="https://jellyfin.org/docs/general/post-install/transcoding/hardware-acceleration/" rel="noopener" target="_blank">官方文档</a>。<br />
VAAPI device 就选择 <code>/dev/dri/renderD128</code>，如果前面的 <code>docker-compose.yml</code> 没有写错，这里应该是可以选到的。</p>
<p>这么做了以后，在客户端有播放视频的时候，即使是播放的4K视频，CPU利用率也不应该太高。如果是CPU持续打满，就建议再看看硬件加速的配置。</p>
<p>配置好以后，家里的几个屏就都可以无缝切换看小主机里的电影了！因为每个屏至少都有浏览器可用，直接浏览器打开上述地址就可以了。当然，安装最佳实践来说的话，在有条件的情况下，最好使用<a href="https://jellyfin.org/downloads/clients" rel="noopener" target="_blank">官方客户端</a>来看，而不是只用浏览器。因为用浏览器就会把所有的解码压力，都丢给服务端。尤其是你的端侧算力很强（比如Mac）的时候，用客户端可以直接拿原始视频到端侧解码！这样不仅服务器的压力更小，而且画质也是无损的。体验也会更好！</p>
<p>那么，如果大家还有比较全、质量又比较高的电影下载源（最好是magnet协议的）的话，也请留言告诉我！谢谢！</p><p>The post <a href="https://luy.li/2026/02/20/jellyfin/">局域网影音解决方案——Jellyfin</a> first appeared on <a href="https://luy.li">I am LAZY bones?</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://luy.li/2026/02/20/jellyfin/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
