Fedora SSDM 登陆界面美化篇:魔改原神主题
前言:
原本只是想给自己的登录界面加点“原神味道”。
在 GitHub 上找了个现成项目,边折腾边写安装记录,想着小改一下,不行就算了。结果没想到——修一个错误,反而成了修所有问题的开始。项目基于 Qt5,我的环境是 Qt6,于是一路对着文档和报错,把 Qt5 的东西一点点替换成 Qt6。
改着改着,视频效果还是不满意,干脆又参考系统自带的主题(01-breeze-fedora)重新整合了一版。就在我觉得差不多可以提交到 GitHub 的时候,手一滑,一个sudo rm -rf *,直接把桌面环境送走了。
重启之后,熟悉的界面没有出现。
那一刻脑子里只剩一句话:
——又要重装系统了。
刚升级到 Fedora 44 Beta,还没捂热,就被自己亲手送走。想到要重新装输入法、配置 vim、装插件、配环境……已经开始头疼。
好在还有最后一条命:Ctrl + Alt + F3。
绕过图形界面进终端——但新的密码却想不起来了。
正当我准备彻底摆烂的时候,突然想起刚好启用了指纹登录。
那一刻,真的有种“命不该绝”的感觉。
进了系统,发现工具还在,环境还没完全崩。借助工具一点点修,等回过神来,天已经亮了。
现在虽然系统还没完全恢复,但至少活过来了。
至于剩下的——
等我睡醒再说吧。
_________这就是魔改的Genshin Fedora主题, 学到了很多东西。比如视频的这个叠层使用Alpha通道, 还有窥的Linux下有些基础工具不好用, 其实是在避免专利问题, 所以感觉某些工具是残次品, 但一定会越来越好的。

Genshin Fedora - SDDM 登录主题
一个原神风格的 SDDM 登录主题,适用于 KDE Plasma。动态视频壁纸、游戏内音乐播放器、开门过渡动画,沉浸式登录体验。
功能特色
- 按时段切换背景 — 根据系统时间自动选择清晨 / 下午 / 夜晚场景
- 音乐播放器 — 16 首原神 OST,
←→键切歌 - 开门过渡动画 — 从欢迎屏进入登录界面的电影级开门动画
- Breeze 风格登录 — 完整集成 KDE Breeze 登录组件(用户头像列表、密码框、操作按钮、时钟、底栏)
- 视频回退 — 视频不可用时自动切换静态壁纸
- 开门动画预加载 — 启动时预缓冲门动画,切换无延迟
三阶段流程
┌─────────────────────────────────────────────────┐
│ IDLE(欢迎界面) │
│ 视频壁纸循环播放 + 居中音乐播放器 │
│ ◀ ▶ 切换曲目 · 按 Enter 进入登录 │
└────────────────────┬────────────────────────────┘
│ Enter
▼
┌─────────────────────────────────────────────────┐
│ DOOR(过渡动画) │
│ 开门动画播放 · 音乐渐隐 │
│ 动画结束自动进入登录 │
└────────────────────┬────────────────────────────┘
│ 自动
▼
┌─────────────────────────────────────────────────┐
│ LOGIN(Breeze 登录界面) │
│ │
│ 12:34 │
│ 星期五, 4月18日 │
│ │
│ ┌──────────────────┐ │
│ │ 用户头像列表 │ │
│ └──────────────────┘ │
│ ┌──────────────────┐ │
│ │ 密码 │ │
│ └──────────────────┘ │
│ │
│ [休眠] [重启] [关机] │
│ 🎯 Fedora Logo │
└─────────────────────────────────────────────────┘
依赖
基于 Qt 6 构建,已通过 Fedora Linux 44 (KDE Plasma Desktop Edition) x86_64 验证。
- SDDM(Simple Desktop Display Manager)
- Qt 6(
qt6-qtbase、qt6-qtmultimedia、qt6-qtquickcontrols2、qt6-qt5compat) - KDE Plasma 运行时(
kirigami、plasma-components、plasma-workspace) - GStreamer 插件(
gstreamer1-plugins-good、gstreamer1-libav) - HEVC 硬解(
gstreamer1-plugins-bad-freeworld,RPM Fusion)
安装
自动安装
chmod +x install.sh
sudo ./install.sh
脚本会自动:
- 安装 Qt6 依赖包(会提示选择发行版)
- 复制主题文件到
/usr/share/sddm/themes/genshin-fedora/ - 更新 SDDM 配置使用该主题
- 可选禁用虚拟键盘
手动安装
-
安装依赖(Fedora):
sudo dnf install qt6-qtbase qt6-qtmultimedia qt6-qtquickcontrols2 \ qt6-qt5compat gstreamer1-plugins-good gstreamer1-libav \ gstreamer1-plugins-bad-freeworld -
复制主题文件:
sudo rsync -a --exclude='install.sh' --exclude='.git' --exclude='result*.png' \ ./ /usr/share/sddm/themes/genshin-fedora/ -
配置 SDDM — 编辑
/etc/sddm.conf或/etc/sddm.conf.d/kde.conf:[Theme] Current=genshin-fedora
启用
sudo reboot
时段划分
| 时段 | 时间范围 | 背景视频 | 开门动画 | 登录背景 |
|---|---|---|---|---|
| 清晨 | 06:00 – 12:00 | morningbg.mp4 |
morningdoor.webm |
morning_bg.png |
| 下午 | 12:00 – 18:00 | afternoonbg.mp4 |
afternoondoor.webm |
afternoon_bg.png |
| 夜晚 | 18:00 – 06:00 | nightbg.mp4 |
nightdoor.webm |
night_bg.png |
所有视频:1920×1080 @ 60fps。界面自适应屏幕分辨率。
快捷键(欢迎界面)
| 按键 | 功能 |
|---|---|
← |
上一首 |
→ |
下一首 |
Enter |
进入登录 |
登录界面快捷键
| 按键 | 功能 |
|---|---|
Enter |
登录 |
Esc |
取消输入 |
文件结构
genshin-fedora/
├── Main.qml 入口,三阶段状态机,视频/音乐播放
├── metadata.desktop SDDM 主题元数据
├── theme.conf 主题配置(时钟、Logo 等)
├── components/
│ ├── LoginScreen.qml Breeze 风格登录界面(改编自 01-breeze-fedora)
│ ├── Login.qml 用户列表 + 密码框(来自 01-breeze-fedora)
│ ├── KeyboardButton.qml 键盘布局选择器
│ ├── SessionButton.qml 桌面会话选择器
│ ├── Background.qml Breeze 背景组件(未使用)
│ └── faces → 符号链接至 01-breeze-fedora 头像目录
├── backgrounds/
│ ├── failed.png 视频加载失败时的静态回退壁纸
│ ├── morningbg.mp4 清晨背景循环
│ ├── afternoonbg.mp4 下午背景循环
│ ├── nightbg.mp4 夜晚背景循环
│ └── doorbg/
│ ├── morningdoor.webm 清晨开门动画
│ ├── afternoondoor.webm 下午开门动画
│ ├── nightdoor.webm 夜晚开门动画
│ ├── morning_bg.png 清晨登录背景
│ ├── afternoon_bg.png 下午登录背景
│ ├── night_bg.png 夜晚登录背景
│ ├── door_alpha.frag 亮度阈值着色器源码(GLSL 440)
│ └── door_alpha.qsb 预编译着色器(SPIR-V + GLSL + HLSL + MSL)
├── sounds/
│ ├── popup.mp3 切歌音效
│ └── *.mp3 16 首 OST 曲目
├── preview/ 预览截图
└── install.sh 安装脚本
技术实现细节
视频叠加:亮度阈值着色器
欢迎界面的背景视频(如 nightbg.mp4)展示完整的原神场景。开门动画(如 nightdoor.webm)只截取了画面中间那条路的部分,其余区域全黑。按下 Enter 后,开门动画需要叠在背景视频上方播放——只显示中间的路和门,让黑色区域变透明,露出底层的背景视频。
┌──────────────────────────────┐
│ nightbg.mp4(完整场景) │ ← 底层,z: 0
│ │
│ ┌────────────────┐ │
│ │ nightdoor.webm │ │ ← 叠加层,z: 1
│ │ (中间门动画) │ │ 黑色部分透明
│ │ 黑→透明 │ │ → 底层背景透出来
│ └────────────────┘ │
│ │
└──────────────────────────────┘
纯 RGB 和带 Alpha 通道的视频有什么区别
| 纯 RGB 视频(当前) | 带 Alpha 通道的视频 | |
|---|---|---|
| 每个像素存储 | R(红)G(绿)B(蓝)共 3 个值 | R G B A(透明度)共 4 个值 |
| 黑色区域 | RGB = (0,0,0),显示为纯黑实心 | 可以设 A=0,显示为完全透明 |
| 叠加效果 | 黑色会遮住底下的一切 | 透明区域让底层画面透出来 |
| 像素格式 | yuv420p(无透明通道) |
yuva420p(a = alpha) |
当前的开门动画文件是 yuv420p(无 alpha),黑色区域是实心黑,直接盖住了背景视频。
解决方案
既然视频本身不带 alpha,就用 GPU 着色器在播放时实时计算——逐像素算亮度,低于阈值的黑色区域设为透明:
// door_alpha.frag — GLSL 440
float lum = p.r * 0.299 + p.g * 0.587 + p.b * 0.114; // ITU-R BT.601 亮度
if (lum < 0.08) // 亮度低于 8% → 判定为黑色背景
p.a = 0.0; // 设为透明
Qt6 着色器工具链: Qt5 可以内联写 GLSL,但 Qt6 切换到了 RHI,着色器必须用 qsb 工具预编译为 .qsb 格式,内含 SPIR-V + GLSL ES + GLSL 150 + HLSL + MSL 五种格式。
sudo dnf install qt6-qtshadertools
/usr/lib64/qt6/bin/qsb --glsl "100 es,150" --hlsl 50 --msl 12 \
-o backgrounds/doorbg/door_alpha.qsb backgrounds/doorbg/door_alpha.frag
QML 中的使用:
VideoOutput {
id: doorOutput
z: 1
layer.enabled: true
layer.effect: ShaderEffect {
fragmentShader: "backgrounds/doorbg/door_alpha.qsb"
}
}
Qt5 → Qt6 迁移:着色器部分
本项目基于 Qt6,但原始代码沿用了 Qt5 的写法。以下是着色器相关的关键差异:
| Qt5 | Qt6 | |
|---|---|---|
| 渲染后端 | OpenGL | RHI(渲染硬件接口),自动适配 OpenGL / Vulkan / Metal / D3D |
| 着色器格式 | 直接内联 GLSL 代码 | 必须预编译为 .qsb 文件 |
| QML 写法 | fragmentShader: "varying ... gl_FragColor ..." |
fragmentShader: "xxx.qsb" |
| 编译工具 | 不需要 | qsb(来自 qt6-qtshadertools) |
| GLSL 版本 | GLSL ES 100 / GLSL 120 即可 | 需要 GLSL 440(#version 440),且用 layout 限定符 |
| 着色器变量 | varying / uniform 自由声明 |
必须用标准 uniform block(layout(std140, binding=0) uniform buf { mat4 qt_Matrix; float qt_Opacity; }) |
| 纹理采样 | texture2D() |
texture() |
| 输出 | gl_FragColor |
out vec4 fragColor(需 layout(location=0) 声明) |
本项目遇到的实际问题: 已安装的主题使用了 Qt5 风格的内联 GLSL 着色器,Qt6 日志报错:
ShaderEffect: Failed to deserialize QShader ... In Qt 6 shaders must be
preprocessed using the Qt Shader Tools infrastructure.
着色器编译失败导致 layer.effect 整体失效,叠加层不渲染,door 视频完全不可见。
Fedora 44 工具限制
VP9 alpha 编码不可用: 尝试用 ffmpeg 把黑色转为 alpha 通道(-pix_fmt yuva420p),编码器接受输入但实际输出仍为 yuv420p,alpha 通道被静默丢弃。实测环境:
- Fedora 44(Linux 6.19)
- ffmpeg 8.0.1(libvpx 启用)
- libvpx 编码器声明支持
yuva420p,但编码后 alpha 丢失
因此最终采用 GPU 着色器方案,在播放端实时计算透明度,绕过编码器限制。
视频编码:MP4 与 WebM 的选择
项目中使用了两种视频容器,各自对应不同的用途:
| MP4(H.264) | WebM(VP9) | |
|---|---|---|
| 用途 | 背景视频循环播放 | 开门过渡动画 |
| 文件 | nightbg.mp4 等 |
nightdoor.webm 等 |
| 编码器 | H.264 Baseline(libopenh264) |
Google VP9 |
| 时长 | ~5 分钟(循环) | ~6 秒(一次性) |
| 文件大小 | 142–167 MB | 580–744 KB |
| 音频 | 无 | Vorbis(静音,保留音轨供扩展) |
为什么背景用 H.264 Baseline? Fedora 默认不包含专有 H.264 解码器(如 x264),但提供 Cisco 的开源实现 openh264,它只支持 Baseline 配置。因此背景视频必须用 libopenh264 编码为 Baseline,才能在纯净 Fedora 环境下播放。SDDM greeter 日志也确认了这一点:
sddm-greeter-qt6: "No HW decoder found" ← 无硬件加速
Stream #0:0: Video: h264 (libopenh264) (Baseline) ← 纯 openh264 软解码
如果误用 x264 的 Main/High 配置,在未安装 RPM Fusion 解码器的 Fedora 上将无法播放。
所需的 Fedora 软件包:
# H.264 解码(必须)
sudo dnf install openh264 gstreamer1-plugin-openh264
# VP9 / WebM 解码 + Qt6 多媒体后端
sudo dnf install gstreamer1-plugins-good gstreamer1-plugins-good-qt6
# 安装脚本已包含的依赖
sudo dnf install qt6-qtbase qt6-qtmultimedia qt6-qtquickcontrols2 qt6-qt5compat
注意:
openh264和gstreamer1-plugin-openh264是 H.264 播放的关键依赖,当前install.sh未显式安装。如果背景视频黑屏无画面,先检查这两个包是否已安装。
为什么开门动画用 VP9? 开门动画只有几秒,VP9 在短视频中压缩率极高,6 秒的 1080p60 仅数百 KB,适合作为叠加层快速加载。
为什么不统一格式? H.264 Baseline 体积大(5 分钟 ~150 MB)不适合短视频场景;VP9 兼容性依赖 GStreamer 插件,长时间循环播放的稳定性不如 H.264。两种格式各取所长。
如何把自己的应用放到Fedora的Discover上面,供其他人使用下载?
注册并登录KDE商店
点击右上角头像并添加产品, 然后依次填写完, next, save。

此处会涉及:关于如何上传Github上的文件
比如我们访问这个https://github.com/rockosdev/genshin-fedora/releases链接就能直接看到标签下的包

然后要是使用直达链接下载Source code.zip的话就需要在仓库名之后+/archive/refs/tags/+ 标签.zip,比如浏览器输入https://github.com/rockosdev/genshin-fedora/archive/refs/tags/genshin-fedora_v1.0.0_build.zip就可以下载了.
同理要下载Source code.tar.gz的话就需要在仓库名之后+/archive/refs/tags/+ 标签.tar.gz,比如浏览器输入https://github.com/rockosdev/genshin-fedora/archive/refs/tags/genshin-fedora_v1.0.0_build..tar.gz就可以下载了.
在终端命令行使用wget下载, 后面附上这个链接就行.
wget https://github.com/rockosdev/genshin-fedora/archive/refs/tags/genshin-fedora_v1.0.0_build.zip
这里是我的KDE Store和Github仓库genshin-fedora, 欢迎下载使用.

致谢
- 原始 Breeze 主题 by KDE Visual Design Group
- Kiki the Cyber Squirrel — Krita 官方吉祥物壁纸
- 原始 genshin-sddm-theme 主题
- 原神 OST — HOYO-MiX
- Fedora KDE SIG
图标默认
最近我发现一款非常漂亮的Icons主题-----Papirus. 按下Alt+空格搜索theme, 然后点击Global Theme, 走到 Color Theme下的Icons栏, 右上角有个Get New, 搜索Papirus, 然后点击下载, 完成之后Icons就会多出Papirus | Papirus-Dark | Papirus-Light三种选择, 第一个应该是包含后面两个, 应该是按照时间切换, 我喜欢Papirus-Dark模式, 但是电脑重启之后就会默认回到Breeze里面了.
我查了一下, 发现KDE 是“默认主题回滚” + 多层配置覆盖的, 其优先级系统默认 (/usr/share/kde-settings/)>用户默认 (~/.config/kdedefaults/)>用户配置 (~/.config/kdeglobals), 我们会被用户默认给覆盖掉, 如何修锁死为Papirus-Dark呢? 就要改用户配置, 类似于:
#修改前
[Icons]
Theme=Breeze
# 修改后
[Icons]
Theme=Papirus-Dark
先搜索一下实际的主题是啥
grep -r "\[Icons\]" ~/.config/ -n
然后我本地是相关的几条是
/home/rock/.config/kdedefaults/kdeglobals:4:[Icons]
说明 我自己的真实配置 ~/.config/kdeglobals 里根本没有 [Icons],只有 ~/.config/kdedefaults/kdeglobals 在管图标主题。
所以它才老是把我带回默认值, 赶紧查看这个文件。
rock@192$ cd ~/.config/kdedefaults
rock@192:~/.config/kdedefaults$ ls
kcminputrc kdeglobals ksplashrc kwinrc package plasmarc
rock@192:~/.config/kdedefaults$ cat kdeglobals
[General]
ColorScheme=BreezeLight
[Icons]
Theme=breeze
[KDE]
widgetStyle=Breeze
现在确定了要修改的地方, 但是要修改成什么才会起效呢? 就要找到Papirus-Dark主题真正生效的关键字, 可不能只看表面名字, 我尝试了一下方法
# 默认图标目录下:没有
rock@192:~$ ls /usr/share/icons
# 使用papirus查, 查到了
rock@192:~$ ls ~/.local/share/icons | grep -i papirus
输出
rock@192:~$ ls /usr/share/icons
Adwaita Bluecurve breeze_cursors Breeze_Light hicolor oxygen
AdwaitaLegacy breeze breeze-dark default locolor
rock@192:~$ ls ~/.local/share/icons | grep -i papirus
Papirus
Papirus-Dark
Papirus-Light
现在只需打开vim ~/.config/kdedefaults/kdeglobals把[Icons]部分的Theme=breeze改成Papirus-Dark, 然后:wq保存退出就行了.
按下Win键盘退出会话, 重新登录一下就会起效

KDE Plasma 图标主题与 Splash Screen 配置记录
这份记录不仅包含 Papirus-Dark 图标主题的设置过程,也补充了 Kuro Splash Screen 为什么会在启动后被 Breeze Dark 覆盖,以及最终如何把两者都固定下来。
配置项总览
| 配置项 | 文件所在位置 | 变更 |
|---|---|---|
KDE (kdeglobals) |
~/.config/kdeglobals |
breeze-dark → Papirus-Dark |
| KSplash | ~/.config/ksplashrc、~/.config/kdedefaults/ksplashrc |
org.kde.breezedark.desktop → a2n.kuro |
| GTK 3.0 | ~/.config/gtk-3.0/settings.ini |
gtk-icon-theme-name=Papirus-Dark |
| GTK 4.0 | ~/.config/gtk-4.0/settings.ini |
gtk-icon-theme-name=Papirus-Dark |
| dconf | ~/.config/dconf/user (二进制) |
icon-theme='Papirus-Dark' |
查找过程
1. 确认桌面环境
echo $XDG_CURRENT_DESKTOP # → KDE
echo $DESKTOP_SESSION # → plasma
得知是 KDE Plasma,图标主题可能分散在 KDE 自己的配置系统和 GTK 配置中。
2. 逐个查找所有可能控制图标主题的位置
| 查找命令 | 目的 |
|---|---|
cat ~/.config/gtk-3.0/settings.ini |
看 GTK3 应用的图标主题 |
cat ~/.config/gtk-4.0/settings.ini |
看 GTK4 应用的图标主题 |
gsettings get org.gnome.desktop.interface icon-theme |
看 dconf/GNOME 兼容层的设置 |
find /usr/share/icons ~/.local/share/icons -name "Papirus*" |
确认 Papirus-Dark 装了没、装在哪 |
KDE 自己的配置文件 ~/.config/kdeglobals 没有直接 cat 看,而是直接用 kwriteconfig6 写入,因为 KDE 的标准改法就是通过 kwriteconfig6 操作 kdeglobals,而不是手动编辑。
3. 逐个修改
| 修改方式 | 对应命令 |
|---|---|
| KDE 配置 | kwriteconfig6 --file kdeglobals --group Icons --key Theme Papirus-Dark |
| GTK 3/4 配置 | 直接编辑 settings.ini 中的 gtk-icon-theme-name 字段 |
| dconf | gsettings set org.gnome.desktop.interface icon-theme 'Papirus-Dark' |
dconf 是二进制数据库,不是直接改文件,而是通过 gsettings 命令写入。
4. 启动后又被重置为 Breeze 的原因
后续排查发现,问题不只是“哪里写 Papirus-Dark”,而是 Plasma 登录时又把图标主题重新套回了 Breeze。
根因在于:
# ~/.config/kdeglobals
[Icons]
Theme=Papirus-Dark
[KDE]
AutomaticLookAndFeel=true
LookAndFeelPackage=org.kde.breezedark.desktop
虽然 ~/.config/kdeglobals 里已经是 Papirus-Dark,但只要 AutomaticLookAndFeel=true,Plasma 就可能在会话启动时重新应用全局主题包的默认值。
而 org.kde.breezedark.desktop 自己的默认配置是:
# /usr/share/plasma/look-and-feel/org.kde.breezedark.desktop/contents/defaults
[kdeglobals][Icons]
Theme=breeze-dark
这就是为什么看起来“明明已经改成 Papirus-Dark,重启后又回到 Breeze”。
Splash Screen 也是同一类问题:
# ~/.config/ksplashrc
[KSplash]
Theme=a2n.kuro
虽然用户当前配置已经是 a2n.kuro,但如果 ~/.config/kdedefaults/ksplashrc 还是:
[KSplash]
Engine=KSplashQML
Theme=org.kde.breezedark.desktop
那启动阶段仍然可能从 kdedefaults 层把 Splash 恢复成 Breeze Dark,而不是 Kuro。
5. 最终修复
除了把图标主题写成 Papirus-Dark,还需要把 Plasma 自动切换全局主题关掉:
kwriteconfig6 --file ~/.config/kdeglobals --group Icons --key Theme Papirus-Dark
kwriteconfig6 --file ~/.config/kdeglobals --group KDE --key AutomaticLookAndFeel false
kwriteconfig6 --file ~/.config/kdeglobals --group KDE --key AutomaticLookAndFeelOnIdle false
kwriteconfig6 --file ~/.config/kdedefaults/kdeglobals --group Icons --key Theme Papirus-Dark
kwriteconfig6 --file ~/.config/ksplashrc --group KSplash --key Theme a2n.kuro
kwriteconfig6 --file ~/.config/kdedefaults/ksplashrc --group KSplash --key Theme a2n.kuro
修完后的关键状态是:
# ~/.config/kdeglobals
[Icons]
Theme=Papirus-Dark
[KDE]
AutomaticLookAndFeel=false
AutomaticLookAndFeelOnIdle=false
LookAndFeelPackage=org.kde.breezedark.desktop
# ~/.config/kdedefaults/kdeglobals
[Icons]
Theme=Papirus-Dark
# ~/.config/ksplashrc
[KSplash]
Theme=a2n.kuro
# ~/.config/kdedefaults/ksplashrc
[KSplash]
Engine=KSplashQML
Theme=a2n.kuro
6. 结论
- 单独修改
~/.config/kdeglobals里的Icons/Theme不一定够。 - 如果启用了
AutomaticLookAndFeel,Plasma 可能在登录时重新应用Breeze Dark的默认图标主题。 - Splash Screen 也有同样的问题,除了
~/.config/ksplashrc,还要看~/.config/kdedefaults/ksplashrc是否还残留org.kde.breezedark.desktop。 - 要稳定保持
Papirus-Dark和Kuro,至少要同时处理用户配置层和kdedefaults默认层。
颜色主题
颜色主题里面我感觉Krita Blender这个适合我, 然后有个小诀窍, 前面我们是搜索所有主题, 然后选定其中一个, 这样我们在辨别上有些问题, 不知道到底是哪个, 所以我们可以先选定, 然后应用查看当前的颜色主题是那个

# 查看当前的用的颜色主题:
ock@192:~$ grep ColorScheme ~/.config/kdeglobals
ColorScheme=KritaBlender
ColorSchemeHash=xxxxx
# 然后所有的颜色主题:
rock@192:~$ ls /usr/share/color-schemes/
BreezeClassic.colors KritaBlender.colors KritaDarker.colors
BreezeDark.colors KritaBright.colors KritaDarkOrange.colors
BreezeLight.colors KritaDark.colors KritaNeutral.colors
这样我们很容易确认是KritaBlender是真正要能生效的关键字, 所以再次打开vim ~/.config/kdedefaults/kdeglobals将ColorScheme=BreezeLight改为ColorScheme=KritaBlender, 按下:wq保存退出, 然后在此退出会话重新登录就可以了.
下面是图标主题和颜色主题的配置

这是我的配置
rock@192:~$ fastfetch
.',;::::;,'. rock@192
.';:cccccccccccc:;,. --------
.;cccccccccccccccccccccc;. OS: Fedora Linux 44 (KDE Plasma Desktop Edition) x86_64
.:cccccccccccccccccccccccccc:. Host: HP ZBook Power 16 inch G11 A Mobile Workstation PC )
.;ccccccccccccc;.:dddl:.;ccccccc;. Kernel: Linux 6.19.12-200.fc43.x86_64
.:ccccccccccccc;OWMKOOXMWd;ccccccc:. Uptime: 2 mins
.:ccccccccccccc;KMMc;cc;xMMc;ccccccc:. Packages: 3809 (rpm), 18 (flatpak), 9 (snap)
,cccccccccccccc;MMM.;cc;;WW:;cccccccc, Shell: bash 5.3.9
:cccccccccccccc;MMM.;cccccccccccccccc: Display (AUOA0A9): 2560x1600 @ 1.5x in 16", 120 Hz [Built]
:ccccccc;oxOOOo;MMM000k.;cccccccccccc: DE: KDE Plasma 6.6.4
cccccc;0MMKxdd:;MMMkddc.;cccccccccccc; WM: KWin (Wayland)
ccccc;XMO';cccc;MMM.;cccccccccccccccc' WM Theme: Breeze
ccccc;MMo;ccccc;MMW.;ccccccccccccccc; Theme: Breeze (KritaBlender) [Qt], Breeze-Dark [GTK2], Br]
ccccc;0MNc.ccc.xMMd;ccccccccccccccc; Icons: Papirus-Dark [Qt], Papirus-Dark [GTK2/3/4]
cccccc;dNMWXXXWM0:;cccccccccccccc:, Font: Noto Sans (10pt) [Qt], Noto Sans (10pt) [GTK2/3/4]
cccccccc;.:odl:.;cccccccccccccc:,. Cursor: breeze (24px)
ccccccccccccccccccccccccccccc:'. Terminal: konsole 25.12.3
:ccccccccccccccccccccccc:;,.. CPU: AMD Ryzen 7 8845HS (16) @ 5.10 GHz
':cccccccccccccccc::;,. GPU 1: NVIDIA GeForce RTX 4050 Max-Q / Mobile [Discrete]
GPU 2: AMD Radeon 780M Graphics [Integrated]
Memory: 5.05 GiB / 30.62 GiB (16%)
Swap: 0 B / 8.00 GiB (0%)
Disk (/): 109.87 GiB / 951.27 GiB (12%) - btrfs
Local IP (wlp4s0):
Battery (Primary): 78% [Discharging]
Locale: en_US.UTF-8

浙公网安备 33010602011771号