迁移Debian并配置niri桌面的一系列配置以及问题
”这是一次冒险,也是一次疯狂的折腾“
导火索
自3月初开学以来,我因为不爱呆在宿舍,经常在工位的缘故,苦于笔记本的厚重(实际上是轻薄本,但依然很重),我渐渐适应了工位上mint系统。特别是他的热区功能,让我感到非常好用。于是乎,将近一个月,我发觉,我的日常生活已经可以完全使用linux来实现代替了。而这就是这篇文章产生的起点。
起点
Fedora 颜值拉满:Niri+ Dank Material Shell 一步到位
这个视频是我踏出这一步的开始,因为美观,好看。加上对linux的习惯。我选择了直接重装系统,不给自己留退路了。(实际上重要数据已经多地保存了,大家千万不要轻易尝试!!!)。于是乎,再第一次实验中,我选择了fedora+dms+niri,也就是视频中一模一样的配置。❌错误发生在安装了dankGreeter之后,这只是一个适配的登陆UI。但是在我安装后,他就变成了全英文界面。虽然我也不是不能接受。重点是我不知道怎么调回来。视频的评论中有一些配置,但在我测试过之后,他也只有命令行的help提示变成了中文,其他的甚至包括浏览器都变成了全英文界面,这太难受了。同时我还不太适应fedora的包管理器,虽然dnf也不难用,但我对于apt已经用习惯了。于是乎,我决定重装系统,换成debian。
中道崩殂后的再次开始
这次重装系统,我谨慎了很多。比如,我没有去安装dmsGreeter了,哈哈哈。我生怕他又出问题。
先给大家展示一下我现在的桌面:
整体来说还是蛮不错的,那么接下来我会讲讲我在配置过程中遇到的一些问题,以及解决方法。我记录这些方法更多是在自己以后再重装电脑时,可以直接参考这篇文章来完成重装,而不用再花太多时间去临时解决问题了。如果我的文章可以帮到您,那自然是在好不过了。
1. fcitx5输入法的安装和配置
首先必然是最重要的,输入法,我选择了fcitx5,因为他是目前linux上最主流的输入法框架了。安装也非常简单,直接在终端输入:
1 | sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk2 fcitx5-frontend-gtk3 fcitx5-frontend-qt5 |
命令很简单,上面就可以完成安装,接着是fcitx5在niri中的默认启动和配置,这里其实有几个问题,一个是美化,一个是在electron软件中的输入问题,还一个就是自启动问题。
我会逐步讲解。
美化
在美化这一部分,我选择了fcitx5-themes-candlelight这个仓库,这个仓库提供了很多简单的美化主题,而且操作简单,跟着README文档一步步操作就可以了。安装完成后,重启输入法,就可以看到新的主题了。我使用的是macOS-dark。完成这个功能后,就可以实现输入法的美化了。展示一下我目前的输入法界面:
electron软件中的输入问题和自启动
在electron软件中的输入问题,主要是因为electron软件和wayland桌面环境的兼容性问题,就会出现输入法无法使用的问题。而且这个问题已经是个老问题了,很多人都遇到过。我也是在b站的某个评论区中刷到的。汇总一下就是下面的部分:编辑 /etc/environment 并添加以下几行后重新登录:
1 | GTK_IM_MODULE=fcitx |
在niri中,由于配置文件格式的不同。则可以修改~/.config/niri/config.kdl,他的书写格式稍有不同展示如下:
1 | spawn-at-startup "fcitx5" "-d" "--replace" //自启动输入法 |
完成这个配置后,注销重新登陆,fcitx5就会自动启动。然后就在各种地方使用输入法了。
2. 截图功能
由于我在win和mint下都习惯于使用snipaste这个超强工具,既有截图,贴图和编辑功能。所以我理所当然的也下载了他,但是似乎,他在wayland下适配的并不好,截图虽然能截下来,但是整体界面都糅杂在一起,非常的不美观。所以呢,还是选择了暂时先使用dms中自带的截图功能,虽然功能不多,但胜在能用。他主要有三个基本快捷键。
ctrl+super+PrtSc:全屏截图alt+super+PrtSc:当前区域截图PrtSc:自选窗口截图
我已经习惯了使用f1键来打开截图,所以多配置了一个快捷键。他截图后,使用space会保存到系统的Pictures/Screenshots文件夹中,使用enter或者ctrl+c会直接复制到剪贴板中。这个功能对我而言已经足够了。至于后续的图片编辑和贴图功能,我觉得可以等以后有需要了再说了。
3. 翻译功能
这个的话,我就懒得去配置了,win下我使用有道词典的全屏翻译,现在由于没有合适的全屏获取工具,所以就使用浏览器的沉浸式翻译工具,对我而言也够用了。使用的翻译引擎则是L站为所有佬友提供的Deeplx工具,大爱L站。
4. 配置微信小程序开发工具
这个最开始我还尝试了把仓库拉下来自己编译一次,结果发现实在没必要,直接下载github别人仓库打包好的AppImage就可以直接使用了。我这里展示一下仓库地址,有需要的直接去release下载即可。
5. timeshift快照工具
这个工具,我就是执行某些操作时,不小心把环境搞得非常崩溃,所以使用他来实现快照,他不会备份用户数据,只会备份与你系统相关的文件,所以即使恢复了快照,你的用户数据也不会丢失。安装也非常简单,直接在终端输入:
1 | sudo apt install timeshift |
上面是最基础的功能,更多的可以参考他的官方文档,这里的配置对我而言已经足够了。
6. dsearch服务配置
这个功能是dms自带的一个功能,但是在我使用的时候,他没有自启动注册为服务,所以我无法使用他的功能,他就类似于windows下的everything,但是没那么方便,因为我使用super+space后,还要多点一下文件,才会进入文件搜索界面,不然只会展示应用部分。
这个功能在dms的默认配置中,他的名字为danksearch,然后我们需要把它注册为服务。
1 | mkdir -p ~/.config/systemd/user |
完成这个操作后,注销重新登录,就可以使用super+space来直接进入文件搜索界面了。当然,他会占用一个端口,你也可以直接进入web界面访问他的详细信息:http://localhost:43654/docs,在这你就可以直接看到网页了。
vs-picgo在linux下的使用
这个工具在linux下的使用,和windows下的使用是一样的,唯一不同的是在linux下,他会调用系统的剪贴板来实现复制功能,而这个库,它实际上在5年前就已经停止维护了。所以他只默认调用了xclip这个工具来实现复制功能,而在wayland桌面环境下,xclip是无法使用的。所以我修改了他的源码,在vscode中打开扩展。
搜索picgo,在大小这个位置,你可以通过点击进入他的源代码。
如上所示,我们进入./dist/clipboard下就可以看到linux.sh这个脚本,他就是系统调用xclip实现粘贴的关键,如果你使用的也是niri,你可以使用我这个代码去覆盖他原本的linux.sh,然后就可以在niri中使用vs-picgo的复制功能了。下面是我修改后的代码:
1 |
|
记录一些问题
- opencode的自动复制功能,和niri的复制功能相冲突。如果opencode复制后,我在微信中就只能粘贴opencode的复制内容,即便重新在其他地方复制了也没用
- 如何配置腾讯会议录制功能?(这个问题可以往这里瞅,L站,这里有我和一些佬友的讨论过程,有人已经有解决方案了,但是我复刻了一边,只是失败了)
- 更好的图片编辑工具
- debian笔记本盖盖子后,只熄屏,不会自动锁屏
- 缺少一个查看图片的工具,目前是使用浏览器来查看的,只能说能用而已
- 配置了yazi但是我觉得他并不好用,我还是比较喜欢GUI界面下的点点点。可能我需要的功能就是进入到文件夹下,然后可以方便的使用ghostty直接进入终端。
- wps字体等问题
