-
多桌面环境下共享用户资料目录
如果一台 Linux 电脑上装了多个桌面环境,比如 GNOME、KDE、niri,有时候我不太想让它们都挤在同一个用户下面。 原因很简单:桌面环境会往 ~/.config、~/.local、~/.cache 里写很多自己的配置。多个桌面环境共用同一个... -
Windows 暂停更新 100 年的方法
简介Windows 设置里默认只能把更新暂停一小段时间。如果只是想避免它在工作、上课或者打游戏时突然重启,可以通过修改注册表,把 Windows Update 的暂停时间写到很久以后。 这个方法本质上就是修改下面这个注册表路径: 1HKEY_LOCA... -
Go 程序自更新:下载、校验与安全替换
有些命令行工具或桌面小工具发布以后,希望用户不用重新下载压缩包,也能在程序内部完成更新。Go 程序做自更新时,常见流程是: 请求一个 latest.json,获取最新版本和各平台下载地址。 根据当前系统和 CPU 架构选择对应安装包。 下载新的二进... -
AI 时代,孩子还有必要学编程吗?
这段时间我自己一直在使用 AI 写代码,也有一些比较明显的感受。 最直观的一点是:用 AI 写代码,很像领导给下属分配任务。 你表达得越清楚,它完成得越接近你的预期;你说得越笼统,它就越容易自由发挥。你越懂业务、越懂技术,就越不容易被它糊弄;你越不懂... -
Wails2 系列 09:构建、版本与发布:从开发结构走向可发布应用
适合读者适合已经能本地运行 Wails 项目,并准备管理版本、构建产物和发布流程的开发者。 问题场景很多项目开发时结构还算清楚,但一到发布就开始靠手工记忆:先构建前端,再构建 Wails,再改版本号,再打安装包,再上传 Release。哪个步骤忘了,... -
Wails2 系列 08:跨平台能力:托盘、开机启动、窗口材质和条件编译
适合读者适合准备把 Wails 应用发布到多个桌面平台,并开始处理平台差异的开发者。 问题场景桌面应用一旦跨平台,就会遇到很多差异:托盘行为不一样,开机启动实现不一样,窗口材质不一样,通知权限不一样,文件路径和系统 API 也不一样。 最直接的写法是... -
Wails2 系列 07:Wails Runtime:窗口、事件、剪贴板和通知的统一封装
适合读者适合已经使用过 Wails runtime,并在项目中处理窗口、事件、通知、剪贴板或进度推送的开发者。 问题场景Wails runtime 提供了很多桌面能力:窗口显示隐藏、系统通知、事件通信、剪贴板、文件对话框、浏览器打开链接。能力越方便,... -
Wails2 系列 06:状态管理与页面组织:页面、组件、Store 的边界
适合读者适合 Wails 前端页面逐渐变厚,组件、请求和状态逻辑开始缠在一起的开发者。 问题场景前端复杂度不会因为项目是桌面应用就消失。一个页面可能同时处理表格、表单、弹窗、筛选、远程调用、本地状态、加载状态、错误提示和权限判断。 如果所有逻辑都堆在... -
Wails2 系列 05:前端调用层:不要让页面直接依赖 wailsjs
适合读者适合使用 React、Vue 或 Svelte 开发 Wails 前端,并已经通过 wailsjs 调用 Go 方法的开发者。 问题场景Wails 会为绑定的 Go 服务生成前端调用代码。这个能力很方便,但也容易让页面直接依赖生成文件: 1i... -
Wails2 系列 04:存储层与配置层:把数据读写从业务服务中剥离
适合读者适合已经在 Wails 项目中读写本地文件、JSON、SQLite 或配置文件,并开始担心数据逻辑散落的开发者。 问题场景桌面应用通常离不开本地数据:用户设置、缓存、业务记录、授权信息、导入导出文件。Wails 项目因为 Go 侧读写文件很方...
心中若有桃花源,何处不是水云间|