2026-05-11 10:41:00
功能比较简单,基于百度实时语音识别 wss API 实现的 web 浏览器“语音输入法”,支持简体中文(普通话和部分方言)和英语,将语音实时转成文字。
GitHub地址: https://github.com/hellodk34/baidu-asr 喜欢的话帮忙点个⭐
动图演示

剩下的内容看 GitHub 仓库 README 吧~ 这里就不赘述了。做这个主要是满足自用,嘿嘿,偶尔需要用到的时候还是有用的。
2026-05-08 10:58:00
我的 debian 13环境如下
之前还是用的开源驱动 nouveau。安装好了 nvidia 闭源驱动后发现默认回退到了 x11(display protocol),检索到下面这些可参考文章(中文环境)
但是这些文章对于我来说都只是可参考,但是不能实践,我的环境如上,通过与 chatgpt 的多轮对话,我现在成功切换到了 wayland。并且独显电源管理这边也安全落地。
$ echo $XDG_SESSION_TYPE
wayland
下面讲一下如何配置的
最终真正需要的修改,其实只有三项。
创建:
/etc/modprobe.d/nvidia-kms.conf
内容:
options nvidia-drm modeset=1
然后:
sudo update-initramfs -u
作用:
启用 NVIDIA DRM KMS
这是:
Wayland 的基础前提
否则:
cat /sys/module/nvidia_drm/parameters/modeset
会是:
N
GDM 会直接退回 X11。
创建:
/etc/modprobe.d/nvidia-power-management.conf
内容:
options nvidia NVreg_PreserveVideoMemoryAllocations=1
然后:
sudo update-initramfs -u
作用:
允许 suspend/resume 时保留 VRAM
这是:
GNOME 48 + NVIDIA Wayland 的关键条件
否则:
61-gdm.rules
会执行:
WaylandEnable=false
执行:
sudo systemctl enable nvidia-suspend.service
sudo systemctl enable nvidia-resume.service
sudo systemctl enable nvidia-hibernate.service
作用:
满足 GDM 的 Wayland 安全检查
否则:
ENV{NVIDIA_SUSPEND}!="enabled"
-> disable wayland
下面是一些不需要的操作,也是上面贴出来的几篇文章提及的:
不需要:
修改:
/etc/gdm3/daemon.conf
因为:
/run/gdm3/custom.conf
会动态覆盖它。
不需要:
修改 grub:
nvidia-drm.modeset=1
modprobe 的方案更好,通过 modprobe 配置模块参数是 Linux 驱动配置的标准方式。。
不需要:
注释:
/usr/lib/udev/rules.d/61-gdm.rules
因为:
系统实际上已经满足:官方允许 Wayland 的条件
不需要暴力绕过检查。
这样配置已经是“NVIDIA 官方推荐 Wayland 配置”
这比:
稳定得多。
2026-05-05 17:49:00
我发现老家附近有个两县交界公路,很想去探索一翻,不知道今天那边还有多少人居住。这次恰逢五一假期,又得闲,便骑着摩托去转转。
每次去县城,或者去合肥都会经过的“灌溉用水渠桥”。

我们这边是群山环抱的,这个时节,放眼望去全是绿色,我感觉回家就像度假,养眼又让人心情放松。

彩虹公路的加入,让农村更吸引城里人周末/节假日来旅游和消费。

这谁家孵了很多小鸡🐣,嘿嘿蛮可爱的。

山间遇到一水库,待了一会只听见山上的动物们歌唱,只有风的穿行形成的噪声,不然静悄悄的。

这个五一假期,空气气溶胶AOD数值都比较低,不下雨的日子里空气能见度都挺好的,这张能远眺天柱山天柱峰,很是壮观,云朵的HDR效果也非常不错。

一山又一山⛰️,连绵不绝的。

又看到一个新的看天柱峰的视角。

翻过了一座山,来到了隔壁县城的隔壁镇隔壁村子。老屋早已无人居住,想必都移居山下了。曾经炊烟袅袅、满是生机,但如今只剩空屋孤院,再也不见往日烟火人声。

下山发现几个超绝的远眺平台,原来下面就是“平原”了,人口都集中到那了。ps: 说平原只是相对的,这里是大别山深处,不是传统认识中的广袤平原。

远处还能看到沪武高速的身影,因为这条高速的开通,我们从合肥回老家能快很多。

这种果子我们小时候叫“麦泡”,我查了一下,它叫蓬蘽(péng lěi),也常被叫做野草莓、三月泡、红萢,是很多人童年里的 “山野零食”~它是蔷薇科悬钩子属的灌木果实,和覆盆子(山莓)是近亲。注意不能和蛇莓弄混。

看到令我惊喜的“水上公路”,两边的路没有硬化,没有想到在我们家附近也能看到这种“很网红”的漫水公路。

开始等一个夕阳🌇,原本看了晚霞预报,今天我们这里微烧或小烧,都不打算期待的,但是看这阵势似乎值得等待。尽管已经被母亲的电话催了好几次喊着快回家。

天边越来越红。

其实远处的山头就是我们镇上海拔最高的山,也是我们县城(县级市)海拔最高的山,海拔1539米。

电线乱入~

wow开始染红了天!说真的我没有p图,索尼A7C2+腾龙28-200镜头直出。本文所有照片均jpeg直出,在索尼VV创意外观基础上做了很小的微调。我现在不喜欢 ps/lr 这些流程,太繁琐,大部分post出来的照片都是直出。

晚霞达到了鼎盛。

但天色也很快暗下来,不想摸黑骑车就轰着油门回家了。一次很愉快的山间摩旅,原本不是很期待的火烧云却在最后成了最大的惊喜。人生亦是如此,很多猝不及防的美好,往往都藏在随性奔赴的路上,风里自由,晚霞温柔,便是人间最好的治愈。
2026-05-02 18:14:00
我将分为三个方面来简单聊聊:多系统共存和debian安装、驱动我的硬件、程序使用。
现在都 2026年了,虽然这两年固态硬盘涨价了,但我还是建议使用 whole ssd 用于安装 Windows 11/Linux,就是不要在同一块ssd上分区了,更不要分区安装多系统。理由很简单,单块存储用于独立系统,这样治理和维护都更加方便。
在win/debian 双系统的实践时,我将windows这边的多块存储分区的BitLocker 全都关掉了,因为BIOS/UEFI设置中的secure boot 在关掉之后有可能无法启动 win(需要输入恢复key),尤其是在 boot EFI配置在 ssd2上的 debian grub 上时。
我将win上各个卷(windows上的磁盘分区,C盘,D盘,E盘这个概念)BitLocker全部关闭,bios中的secure boot 保持开启。
ssd1整盘用于 win11,ssd2用于debian整盘安装。我的机械革命游戏本还有 ssd3,我插入了一块sata3固态,用于win这边,让win的可用空间更大。
来讲一下debian的安装这块,建议下载 DVD 完整镜像,这样在系统安装引导时能更从容。比如 ustc 的镜像站点 https://mirrors.ustc.edu.cn/debian-cd/13.4.0/amd64/iso-dvd/
至于 netinst 镜像,你要是做一个 Live Linux 那还是很推荐的,但要是安装桌面环境,这种镜像会在安装引导时从网络拉取很多软件包,如果你的网络环境不够科学,那将是漫长的等待。
即使是DVD镜像,在安装的后面阶段也会从网络拉取很多软件包,要是等不及的话可以在网络设置那部分直接跳过处理(实际上没有给跳过选项),可以选择有线连接但是拔掉网线。快速部署好系统写入ssd2,拔掉U盘重启进入系统后再慢慢配置。
在linux发行版上驱动你的电脑硬件,在2026年依然是一个比较让人头疼的事情,如果你没有选 ubuntu 认证的硬件 https://ubuntu.com/certified/laptops 使用的硬件型号比较相似还好,特别小众的机型尝试Linux会很痛苦。
我现在的两个笔记本,都是机械革命的,一个是 Debian Trixie(debian13),另一个安装了 debian forky(是未来的debian14,是当前的 debian testing),都比较成功的驱动,用起来很不错,尤其让我满意的是续航,待机续航,还有系统稳定性,比起 win11 还要好些。
这个其实没啥好说的,主要软件都来自于 apt source,另外一部分来自软件官网(下载deb包),不喜欢用 flatpack。。记录一下几种程序,在linux下的配置经历
当前 linux 的输入法框架主要是 ibus 和 fcitx5,fcitx5之前的版本就不用考虑了。中文输入法,我自然选择了使用多年的 rime,对这套输入法使用的逻辑也有了很大了解。
[email protected]:iDvel/rime-ice.git 这个仓库,我再改成适用于我的我很喜欢 windows 下的 ditto,非常非常的好用。我想找到 linux 下的替代,既要完整记录剪贴板内容,又要有方便的全局快捷键呼出。最终我在 debian forky 上选择并配置了 CopyQ,在 debian trixie 上使用的是 gpaste-2。
转来转去,最终仍然回到了 gnome-shell 集成的截图程序,从 GNOME 42(2022 年 3 月发布) 开始,GNOME 桌面不再默认使用独立的 gnome-screenshot 工具,截图功能正式集成到 GNOME Shell 内部,成为原生交互界面。我一开始不喜欢它默认将剪贴板中图片显式保存到了本地硬盘,但是后来想想这个功能也未尝不可,它自动写入的目录我们可以人工干预,可以定期清理,所以这个问题不算是什么问题。但是 gnome-shell 集成的这个截图程序是真的流畅好用,很推荐!
地图程序对我来说,一是 web(高德、百度、天地图),二是 google earth pro,三是奥维互动地图。
这里奥维互动地图就因为 qt 程序让我遇到过中文无法输入的问题,最终我切换了输入法框架,全面改向 fcitx5 之后,这些问题都迎刃而解,fcitx5 对于gtk/qt 以及它们各种版本的程序的兼容做得还是比较好的。
其他的,以后想到了再说,欢迎评论区交流。
2026-04-26 22:25:00
我的机械革命无界14Pro笔记本安装了debian forky(当下的 debian testing 系统,也是未来的 debian 14代号),今天终于成功驱动了扬声器和麦克风。
先贴出 fastfetch 数据
fastfetch
_,met$$$$$gg. dk@dkwujie14pro
,g$$$$$$$$$$$$$$$P. ---------------
,g$$P"" """Y$$.". OS: Debian GNU/Linux forky/sid (forky) x86_64
,$$P' `$$$. Host: WUJIE14 PRO
',$$P ,ggs. `$$b: Kernel: Linux 6.19.11+deb14-amd64
`d$$' ,$P"' . $$$ Uptime: 20 mins
$$P d$' , $$P Packages: 2976 (dpkg)
$$: $$. - ,d$$' Shell: bash 5.3.9
$$; Y$b._ _,d$P' Display (28U1): 3840x2160 @ 2x in 28", 60 Hz [External]
Y$$. `.`"Y$$$$P"' DE: GNOME 49.5
`$$b "-.__ WM: Mutter (Wayland)
`Y$$b WM Theme: Adwaita
`Y$$. Theme: Adwaita [GTK2/3/4]
`$$b. Icons: Adwaita [GTK2/3/4]
`Y$$b. Font: Adwaita Sans (11pt) [GTK2/3/4]
`"Y$b._ Cursor: Adwaita (32px)
`"""" Terminal: GNOME Terminal 3.60.0
Terminal Font: JetBrains Mono (14pt)
CPU: 12th Gen Intel(R) Core(TM) i7-12650H (16) @ 4.70 GHz
GPU: Intel UHD Graphics @ 1.40 GHz [Integrated]
Memory: 7.11 GiB / 15.35 GiB (46%)
Swap: 0 B / 977.00 MiB (0%)
Disk (/): 90.31 GiB / 1.83 TiB (5%) - ext4
Local IP (wlp3s0): 10.10.10.242/24
Battery (AEC3166124-4S1P): 99% [AC Connected]
Locale: en_US.UTF-8
声卡是 Realtek ALC256,驱动扬声器的过程比较简单,在网上搜一下就很容易得到一个能成功的配置。但是麦克风的驱动着实让我尝试了很多遍才搞定。
重要的参考网站:
https://www.kernel.org/doc/html/latest/sound/hd-audio/models.html
在此记录一下我这里的配置:
#ls
alsa-alc256.conf amd64-microcode-blacklist.conf inteldsp.conf intel-microcode-blacklist.conf
root@dkwujie14pro [22:01:04] /etc/modprobe.d
#cat alsa-alc256.conf
options snd-hda-intel model=laptop-amic
root@dkwujie14pro [22:01:07] /etc/modprobe.d
#cat inteldsp.conf
options snd-intel-dspcfg dsp_driver=3
重点:
配置:
options snd-hda-intel model=laptop-amic
这个参数的作用是:
强制 codec(ALC256)走 “analog internal mic” 路径
说明这台机器:
实际是 模拟内置麦(AMIC)
而不是 DMIC(数字麦)
系统很可能一开始:
误走了 DMIC / 错误 routing
或 SOF 没启用,UCM 不匹配
配置:
options snd-intel-dspcfg dsp_driver=3
这是关键一步,切到 SOF 路径,这一步让系统走:
Intel DSP + SOF(Sound Open Firmware)
而不是 legacy HDA。
在 12 代 Intel 上:
扬声器很多时候 两条路径都能响
但麦克风(尤其是 internal mic)
通常只在 SOF + UCM 配置下才能正确 routing
现在内置扬声器和内置麦克风终于都能工作了,太好了。见下图

2026-04-25 11:02:00
我的 typecho 是基于 docker compose 部署安装的。当前的 compose 文件如下
services:
typecho:
container_name: typecho
image: joyqi/typecho:1.3.0-php7.4-apache
restart: unless-stopped
environment:
TIMEZONE: Asia/Shanghai
TYPECHO_DB_HOST: mysql-typecho
TYPECHO_DB_USER: typecho
TYPECHO_DB_PASSWORD: xxx
TYPECHO_DB_DATABASE: typecho
TYPECHO_SITE_URL: https://blog.xxx.com
TYPECHO_USER_NAME: xxx
TYPECHO_USER_PASSWORD: xxx
TYPECHO_USER_MAIL: xxx
MAX_POST_BODY: 100M
networks:
- typecho-net
volumes:
- ./typecho-data-1.3.0:/app
ports:
- 8090:80
depends_on:
- mysql
mysql:
container_name: mysql-typecho
image: mysql:8.0.29
restart: unless-stopped
networks:
- typecho-net
volumes:
- ./mysql-data:/var/lib/mysql
environment:
TZ: Asia/Shanghai
MYSQL_ROOT_PASSWORD: xxx
MYSQL_DATABASE: xxx
MYSQL_USER: xxx
MYSQL_PASSWORD: xxx
networks:
typecho-net:
docker compose up -d 后台启动docker compose down 删除网络、容器docker compose,不是老旧的 docker-compose
typecho.yml,运行 docker compose 命令时需加上 -f typecho.yml
这里我踩了几个坑,因为我有几个 typecho 环境:
1.3.0版本建议使用这个镜像 joyqi/typecho:1.3.0-php7.4-apache,joyqi/typecho:1.3.0-php8.2-apache这个镜像由于 php 版本过高,有运行时兼容性问题,甚至 blog 系统无法正常工作。
1.2.1版本可以使用 joyqi/typecho:1.2.1-php8.0-apache 这个镜像,我的实测是OK的。
1.2.0版本可以使用 joyqi/typecho:1.2.0-php7.4-apache 这个镜像,我的实测是OK的。
typecho 系统运行之后关键的用户数据在 usr/ 目录下,我之前只挂载了这个目录,但是和 usr/ 目录同级的还有 config.inc.php、.htaccess 等关键文件,其中config.inc.php可以在新版本安装之后重新走一遍安装流程生成。所以我上面的 compose 文件,我将挂载的容器内目录改成了 /app(即./typecho-data-1.3.0:/app),原本只挂载了/app/usr,这样数据更全,更新系统更安全。
因为我开启了系统地址重写功能,所以容器内的 /etc/apache2/apache2.conf 文件也需要备份一下,在新环境里直接将此文件覆盖过去即可。
所以对于我的这种环境部署,更新typecho版本需要备份的关键数据有:
usr/ 目录,这是用户目录,所有的插件,主题,上传的文件都在这里.htaccess 文件,一般在容器内 /app/.htaccess
/etc/apache2/apache2.conf 文件,备份它,新环境运行起来之后进入容器,使用这个文件替换原本的 apache2.conf 文件好了,关键就是这三份文件,如果你在寻找 typecho 博客更新的一些文章,或者遇到什么更新困难,错误之类的问题,你需要考虑到你是不是用的 joyqi/typecho:1.3.0-php7.4-apache 这种镜像!!!这个镜像包含了 typecho php 服务和 apache2 服务!!!数据库服务是单独部署的。但有些镜像可能没有 apache2 web server 服务。
再来说说官方的 upgrade 教程:https://docs.typecho.org/upgrade ,文中提到,更新 typecho 其实只需要升级这些文件,使用新版本的这些文件替换进去就行了。但因为我们是通过 docker 部署的,建议更新镜像 tag,作者除了维护这些文件,还有 php 运行时环境,可能还涉及到安全:比如镜像内基础镜像的更新、内核的更新。
/admin/
/var/
/index.php
/install.php
最后再说一点杂碎的可能被忽略的问题
/app 是否有写入权限。所有者最好是 www-data,权限最好是 755,可以直接在宿主机修改权限和拥有者/var/lib/mysql,数据库镜像tag也不需要更新.htaccess 或者 /etc/apache2/apache2.conf 文件,建议通过 docker compose restart 重启 stack 整个服务大功告成!