TypeScript 初识

最近浏览 GitHub 发现一个有趣的项目 PT Plugin Plus 代码拉下来发现是 TypeScript 语言写的,就顺便了解一下。1 目标很简单,不是为了写 ts 项目,只是为了能看懂项目。 ts in 5 minutes 强类型 在 JavaScript 中,变量是没有类型的,只有运行时赋值了才决定变量的类型(这就是所谓的动态语言),但是 TypeScript 在方法定义的时候可以给参数加上类型校验: function greeter(person: string) { return "Hello, " + person; } Read more ...

2020-03-03 typescript , javascript , web , frontend

清理 macOS 磁盘

在使用一段时间的 macOS 之后,在打开磁盘就会发现其中有一大部分的磁盘被 Other 占用。这一部分内容在磁盘管理里面是看不到详情的,也就没有办法手动进行管理。 磁盘中的 Other 是什么? macOS 可以识别很多类型的文件,比如说音频,视频,应用等等,但是还有很多其他类型的文件系统是无法识别的,那么就会把这些文件统计成 Other。比如说系统临时文件,应用的缓存文件,日志文件等等。 如何清理磁盘中的 Other? 清理磁盘中的 Other 可以帮助释放磁盘空间,提高系统性能。以下是一些方法可以尝试: 使用第三方工具:有很多专 Read more ...

2020-03-01 macos , macos-cleanup , mac , mac-app

NAS 下文件系统比较

记录一下常见的 Linux 的文件系统。 ext4 ext4 是目前 Debian/Ubuntu/Mint 的默认文件系统,比较常见,它其实是第 4 代扩展文件系统 (Fourth extended filesystem), 是 ext3 的延续。 ext4 对大文件有着比较好的支持,最大支持 1 EiB 的卷,标准 4Kib 块大小下支持单文件最大 16 TiB Extents ext4 兼容 ext3, ext2 ext4 允许对一些文件预留空间 (Persistent pre-allocation) Delayed all Read more ...

2020-02-23 nas , filesystem , file , ext4 , owm , zfs

使用 flexget 实现下载更新自动化

FlexGet 官网是这样描述自己的,媒体文件的多功能自动化工具。可以支持 torrents, nzbs, podcasts, comics, TV, movies, RSS, HTML, CSV, 等等作为输入。FlexGet 是 Python 编写的,所以如果想要实现更加复杂的功能,也可以自己写脚本来处理。 简单的来说,FlexGet 解决 BT 客户端没有订阅功能的问题,通过 FlexGet 可以方便的制定一些规则来自动订阅并自动下载特定的种子,比如在追剧集时,按照特定的名字以及文件大小,或者分辨率自动进行下载。 FlexGet 一大被称道的就 Read more ...

2020-02-18 flexget , docker , python , linux , rss , pt , private-tracker

我有一台服务器能做什么:自架的服务整理

很多年前当我拥有第一台 VPS 的时候,我也曾经问我我自己,这一台 VPS 服务器能做什么,当时最简单的想法就是能够假设一个 WordPress,发布一些自己感兴趣的内容,然而时间过去了快 10 年,中间互联网尤其是开源社区的发展让 Self-hosted 成为了我过去 5 年的主要关键字。 而我也逐渐将大厂的服务迁移出来,搬到了我自己的假设的服务器中。虽然确实可能会多出来一些维护成本,但我发现当数据和代码掌握在自己手里的时候才是真正安全的。虽然可能需要考虑到备份,运维等等一系列复杂的问题,但还是比大厂的服务动辄关闭服务要安心许多。 所以这篇文章主要 Read more ...


关于 BitTorrent 和 PT 你需要知道的一切

几个 bt 中经常见到的词汇 bt 其实是 BitTorrent 的缩写,后文为了描述简单统一简称为 bt。 BitTorrent 协议由美国程序员布莱姆·科亨在 2001 年发布。 peer peer 可以理解成节点,或者等同于 client 客户端。只要你在本地打开了 bt 软件,连接了 swarm,有数据传输,就可以认为是一个 peer. 严格的来说,peer 指的是还未下载完成的节点。但通俗的就认为所有连接到 swarm 的客户端都叫做 peer,这个意义上, peer 和 client 有着相同的含义,并不区分是否完成了整个 torrent Read more ...


Zettelkasten 笔记法

在接触到 Obsidian 这款笔记应用的时候听说了 Zettelkasten 笔记法,这些天陆陆续续地阅读了一些相关的材料,说起来 Zettelkasten 是一个非常简单的方法,但要真正理解其背后的思维方式,以及真正地贯彻到现实中来也需要好好的整理一下。 什么是 Zettelkasten? Zettelkasten 是一个德语词,这个词语可以拆分成两个部分,”Zettel”,表示的是笔记或者纸条 (slip of paper),而 “Kasten” 表示的是盒子 (box),两者合起来表示的意思是 box of notes,指通过不同盒子来管理的笔 Read more ...


NAS 上的音乐管理应用 Funkwhale

NAS 上的文件已经有足够多的管理系统 了 12,而电影也有 [[Kodi]], [[Emby]], [[Plex]] 等等工具,图片同样 Chevereto,Lychee,电子书有 Calibre-web,但就是音乐管理工具没有找到一个比较合适的。 构想 我想的应该这个管理系统可以直接通过 Docker 安装,提供一个比较美观的 Web 页面。 Docker 映射本地音乐文件夹 Web 管理界面 可以根据文件的 metadata 自动归类,如果可以手工进行编辑就更好了 能在线播放 于是乎我带着这样的目的在 awesome- Read more ...

2020-02-12 nas , qnap , music , file-manager , docker

几个常见的 NAS 系统整理及选择

看文章老有几个 NAS 系统被翻来覆去的提到,这里就一起看看 Wiki,看看有什么区别吧。 FreeNAS 开源 NAS 系统中最著名也最强大的一个系统,基于安全和稳定著称的 FreeBSD,集成了 Sun 公司的 ZFS 文件系统,ZFS 拥有很多文件管理的特性,非常适合管理大量可扩展的数据系统。1 目前由 ixsystems 公司维护。 http://www.freenas.org 硬件依赖 FreeNAS 对硬件有一定的要求(ECC 内存),达到日常可用需要较大内存,如果要安装插件或者启用虚拟机可能需要更多。FreeNAS 的 Z Read more ...


从零搭建一台 NAS:软件篇

之前总结过一篇 NAS 硬件 介绍了自组 NAS 可能遇到的一些名词和概念,这里再总结一下相关的软件。 Operating System 首先就是操作系统的选择,这里 也简单总结过 FreeNAS,OpenMediaVault 和 [[unRAID]] 的优缺。 软件的选择 MergerFS MergerFS 提供了一种简单的,类似于存储池的概念,可以让我们通过简单的方式来访问多块硬盘,和 unRAID, Synology, Qnap 提供的方式类似。总结一下就是 MergerFS 允许我们混合合并多个数据卷到一个挂载点下。 mergerf Read more ...

2020-02-11 nas , software , server , operating-system

最近文章

  • Meta Muse 使用教程:上手设置、提示词技巧与实用案例 上一篇 Meta Muse 介绍与注册指南:一个会替你跑腿的个人 AI Agent 把 [[Muse]] 是什么、怎么注册、额度怎么算都整理了一遍,但是留了一个结尾:注册完之后到底该让它干什么。Muse 上线这几周,我查阅了一些测评体验,整理了 X 和 Threads 上用户晒出来的用法,发现大家的使用路径其实很像:从提醒和文件这类零风险的任务开始,确认它靠谱之后再慢慢接入邮箱、日历,最后才让它碰钱。这篇就按这个顺序来整理,从界面和设置讲起,再到具体的案例和踩过的坑。
  • Meta Muse 介绍与注册指南:一个会替你跑腿的个人 AI Agent 2026 年 9 月 8 日,[[Meta]] 发布了个人 AI Agent [[Muse]],宣传语只有一句:「它去做,而不是告诉你怎么做」。用 [[ChatGPT]] 或 [[Claude]] 时,我们得到的往往是一份说明书,真正动手的部分,打开网页、填表单、下单付款,还得自己来。Muse 想把这一段也接过去:你交给它的不是一个问题,而是一件事,它会自己打开浏览器一步步做完,需要你拍板时再回来问你。这是 Meta 迄今为止在消费级 AI 上下的最大一笔注,两周后的 Connect 2026 大会几乎整场都围绕它展开。
  • Jev:不聊天只做判断的 System One 决策模型 过去一两年,大模型的发展方向几乎都是更长的思考链、更大的上下文、更强的 Agent 能力。但在日常写代码和搭建自动化流程的过程中,我发现很多地方用到大模型,其实只是为了让它做一个简单的判断,却要付出几秒钟的等待和解析 JSON 的麻烦。TypeSafe AI 发布的 Jev 走了一条相反的路:不聊天、不写代码,只做快速的判断。
  • Executor:多 Agents 和外部世界之间的统一代理层 同时使用 Claude Code,Codex,Pi,OpenClaw 等等 Agent 工具时有一个非常尴尬的状况,就是不同的 Agent 工具维护了不同的配置格式,如果要配置 MCP server 就需要分别到不同的配置文件中定义,相同的配置散落在系统的各个角落中。同一份 API Key 也需要重复粘贴到不同的配置中,更麻烦的是如果一旦有更新或者 API Key 变动就需要重复修改多个地方,我之前还调查过如何[[跨平台管理 MCP]],主要的思路还是通过脚本和同步来对齐配置,但本质上还是在管理多个副本,直到我看到了 Executor 这个项目。
  • Stremio 免费开源的流媒体聚合中心,插件生态与使用体验 前段时间写过一篇 Plex 将终身会员涨价到 749.99 美元 的文章,当时就在思考一个问题:当自建媒体库的门槛(无论是硬件、资源还是订阅费)越来越高的时候,还有没有更轻量的方式来管理自己的观影需求。后来在折腾 [[Trakt]] 的时候,反复在各种播放器的集成列表里看到 Stremio 这个名字,于是花了一些时间把它装到了桌面和电视上认真体验了一番。这篇文章就来聊聊 [[Stremio]] 这款免费开源的流媒体聚合应用,它的设计思路和 [[Plex]]、[[Jellyfin]] 这类传统媒体服务器完全不同,某种程度上说它更像是「浏览器」而不是「硬盘」。