Rice your Gentoo the light way

Rice

严格意义上来讲这不是一篇讲如何ricing的文章,而是一篇讲述我的观点的议论文。

刚刚接触Linux桌面,其实很容易就陷入rice的泥潭,美化,配置,自定义,加入特效,加入动画,自己手写WM脚本,都很有乐趣,但是个人认为rice的最终目标是找到一个合适自己的使用方式,美化只是让当前界面不能够太丑。于是本文重点在于打造一个适合自己的工作流,并且视觉效果不能太差。关于美化请移步unixporn,我目前的桌面正在处于并且将长期处于默认主题的阶段,怎么变好看,我帮不了太多忙。

另外由于我使用的桌面环境和窗口管理环境并不太多,这里也只是以dwm和KDE为例子说明。

宗旨

以下几点比较重要:

  • 不拖沓的过渡动画
  • 高负载下的桌面响应速度
  • 尽可能少的功能冗余
  • 尽可能高的自定义范围

以下几点不大重要:

  • 华丽胡哨的特效
  • 普遍的易用性

DWM

很多人不喜欢成熟的桌面环境,觉得很重,或者懒得编译出一个完整的桌面环境。DWM是一个不错的选择,我使用了一段时间之后,感觉比较喜欢这样的使用方式,于是很多习惯仍然保留了下来。

虽然各种窗口管理器面对非Linux平台原生的应用(仅指Wine,像电子应用还是认为是原生应用的),或多或少有些问题,但是问题的程度在简陋的DWM上是比较严重的。当然很多WM用户并没有这样的需求,而我在切换到KDE上,也尝试使用了很长一段时间的所谓十分精简的系统,但是我不想牺牲这些易用性。于是,现在我又回到了KDE上,这里对于DWM的描述,可以说已经过时了。

Patch

DWM的代码量很少,对他的配置主要通过patch进行,相关的配置和patch set一直都在我的dotfiles仓库里面。

对于DWM本身,主要有四个patch:

  • 10-activetagindicatorbar.patch:更改激活标签的样式
  • 15-alpha.patch:dwm bar的透明
  • 20-alpha-systray.patch:保证dwm bar透明的基础上,增加背景透明的系统托盘
  • 90-centeredwindowname.patch:在dwm bar中间只显示窗口名称

另外还有一个savedconfig,这里存放的是一些快捷键和样式的定义,根据习惯而异,不再具体说明。

dwmrc

虽然也在仓库里面,但是这配置很短,就放在这里了。顾名思义,这是dwm在启动时运行的脚本。这里的一些后台任务,起到的就是一个基本的DE的工作。

#!/bin/sh

# Refresh Wallpaper
while feh --randomize --bg-fill /home/oripoin/OneDrive/Wallpaper/
do
sleep 600
done &

# Autostart
/usr/lib64/libexec/polkit-kde-authentication-agent-1 &
picom -CGb &
fcitx5 &
flameshot &
pasystray &
copyq &
(conky | while read LINE; do xsetroot -name "$LINE"; done) &
程序功能
feh图片查看器,这里用于定时切换壁纸
polkit-kde-authentication-agentkde的plokit agent,默认使用gtk的,但是咱喜欢kde的
picom混成/渲染
fcitx5输入法
flameshot截屏工具
pasystray音量调节工具
copyq剪贴板工具
conkydwm bar上的监视

Terminal

嗯,剩下的都在terminal里面了。基本上使用Terminal,熟练的话,是比鼠标点点点快的。Termnial的rice不在此讨论了,习惯就好。

KDE Plamsa

讲到这里,我仍然不想放任何一张图片,毕竟这个博客的所有文章都没有图片,全站只有头像,白天和晚上的背景,一共三张图片而已。

emerge

众所周知,KDE属于依赖地狱中一个典型例子,与GNOME相比,KDE总是会有更多的包,即使在不拆包的Gentoo上,也是如此。原因在于,KDE的plasma,KDE的框架,KDE的图形化库Qt,都是解耦得很厉害的。注意,这里的Qt,在很多发行版上都使用的是KDE维护的稳定分支,Ubuntu的一些版本是使用Qt的分支。这样的解耦,帮助KDE成为软件最丰富的桌面环境,没有之一。但同时带来了很多问题,依赖过多,动态链接库过多,通常来说,KDE的性能并不好,或者并不够好。

来自于嵌入式设备上的prelink技术,是红帽曾经尝试解决这个问题的思路,但是随着glibc和gcc的发展,默认pie的编译,已经不能够使用了。来自编译上的优化,已经没有多少了,如果你看过前面的优化指南,可以去添加一些暴力优化选项,但是就我的实际体验来说,并没有多少作用。

所以,这部分就只能说,尽可能加入更多黑魔法吧,说不定有效呢?

package.use

KDE的组件很多,但是尽可能不要多带,个人认为是真的没用。

kde-plasma/plasma-meta      -browser-integration -wallpapers -firewall -handbook -crash-handler -crypt -kwallet
kde-plasma/powerdevil       -wireless
kde-plasma/plasma-desktop   -kaccounts -semantic-desktop
kde-plasma/plasma-workspace -calculator -calendar -semantic-desktop

像我这样,差不多直接删光了。

system settings

虽然觉得YaST都没直接这么叫,KDE的配置中心真的是有点飘了。

目的主要是为了关闭无用的特效,如果你喜欢某些特效的话,也可以尝试开启,但是对于性能较弱的机器来说,会带来一些卡顿。

全局主题

全部使用Breeze Dark,指针使用Breeze Snow。这里管不了fcitx5的主题,所以仍需要一些额外的设置。记得同步GTK的主题设置。

关闭标题栏

在Windows Decoration中关闭标题栏

个人认为无用。

字体

换成Nerd font补丁过后的字体。

关闭 splash screen

当你不使用Kwin的时候,比如AwesomeWM,这个过程会持续很长时间,然而,其实是已经起来了。

即使你使用Kwin,这个过程也比较繁琐,主要是等KDE panel,但是在我的设置中KDE panel所启的作用也是个状态栏而已。

桌面效果

建议关掉blur

开启多个工作区

由WM养成的习惯

只使用一个活动

没什么用

修改快捷键

建议通览一遍,很多工作流因快捷键而变得方便

后台服务

可以看一下,不一定都有用

桌面会话

KDE默认保留活动中的窗口,在这里关掉

关掉Krunner的多余功能

Krunner作为一个启动器就够了,多余的功能我用不到,不如一个终端。

总结

以上,一些让KDE变得更加简洁,好用的建议。

这只是KDE的一部分,想要达到最终的效果,需要额外设置内核。

知识共享许可协议
本作品采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可。
上一篇
下一篇