uiriansan/SilentSDDM
GitHub: uiriansan/SilentSDDM
一个高度可定制的 SDDM 主题解决方案,旨在提升登录界面的美观度与个性化配置体验。
Stars: 1496 | Forks: 83
https://github.com/user-attachments/assets/dd63c526-34d6-45ec-8a7d-5c29bf08c702
# 预设
[`自定义指南`](#Customizing)
# 依赖
- SDDM ≥ 0.21;
- QT ≥ 6.5;
- qt6-svg;
- qt6-virtualkeyboard
- qt6-multimedia
- qt6-imageformats
# 安装
[`安装脚本`](#Install-script) [`AUR 包`](#AUR-packages-for-arch) [`GURU 包`](#GURU-package-for-gentoo) [`NixOS flake`](#NixOS-flake) [`手动安装`](#Manual-installation) [`Pling/KDE Store`](#plingkde-store)
## 安装脚本
只需克隆仓库并运行脚本即可:
```
git clone -b main --depth=1 https://github.com/uiriansan/SilentSDDM && cd SilentSDDM && ./install.sh
```
## Arch 的 AUR 包
如果你运行的是 Arch Linux,可以考虑安装以下 AUR 包之一:
##### [`稳定版本`](https://aur.archlinux.org/packages/sddm-silent-theme):
```
yay -S sddm-silent-theme
```
##### [`Git 版本`](https://aur.archlinux.org/packages/sddm-silent-theme-git):
```
yay -S sddm-silent-theme-git
```
然后,替换当前的主题并在 `/etc/sddm.conf` 中设置环境变量:
```
sudoedit /etc/sddm.conf
```
```
# 确保这些选项正确无误:
[General]
InputMethod=qtvirtualkeyboard
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/silent/components/,QT_IM_MODULE=qtvirtualkeyboard
[Theme]
Current=silent
```
最后,测试该主题以确保一切正常:
```
cd /usr/share/sddm/themes/silent/
./test.sh
```
## Gentoo 的 GURU 包
如果你运行的是 Gentoo Linux,可以考虑安装 GURU 包
1. 启用 GURU 仓库
```
emerge -av eselect-repository
eselect repository enable guru
emaint sync -r guru
```
2. 取消屏蔽所需的包。将以下内容添加到你的 packages.accept_keywords 中:
```
# 对于 git 版本使用
# x11-misc/silent-sddm-theme **
x11-misc/silent-sddm-theme ~amd64
media-fonts/redhat ~amd64
```
3. 安装 SilentSDDM
```
emerge -av x11-misc/silent-sddm-theme
```
4. 将以下内容添加到 /etc/sddm.conf 并重启 SDDM
```
[General]
InputMethod=qtvirtualkeyboard
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/silent/components/,QT_IM_MODULE=qtvirtualkeyboard
[Theme]
Current=silent
```
## NixOS flake
对于启用了 flakes 的 NixOS,首先将此 flake 包含在你的 flake inputs 中:
```
inputs = {
silentSDDM = {
url = "github:uiriansan/SilentSDDM";
inputs.nixpkgs.follows = "nixpkgs";
};
};
```
接下来,导入默认的 nixosModule 并设置 enable 选项
```
{
inputs,
...
}: {
imports = [inputs.silentSDDM.nixosModules.default];
programs.silentSDDM = {
enable = true;
theme = "rei";
# settings = { ... }; see example in module
};
}
```
大功告成!SilentSDDM 现在应该已经安装并配置完毕。
你现在可以运行 `test-sddm-silent` 可执行文件来进行测试。
如需进一步配置,请阅读[模块](./nix/module.nix)选项的说明和示例。
### 在 nix 下进行本地开发和测试
首先 git clone 该仓库并 cd 进入生成的目录
```
git clone https://github.com/uiriansan/SilentSDDM.git
cd SilentSDDM/
```
现在你可以修改内容,并使用以下命令进行测试
```
nix run .#test
```
## 手动安装
### 1. 安装依赖:
#### Arch Linux
```
sudo pacman -S --needed sddm qt6-svg qt6-virtualkeyboard qt6-multimedia-ffmpeg qt6-imageformats
```
#### Void Linux
```
sudo xbps-install sddm qt6-svg qt6-virtualkeyboard qt6-multimedia qt6-imageformats
```
#### Fedora
```
sudo dnf install sddm qt6-qtsvg qt6-qtvirtualkeyboard qt6-qtmultimedia qt6-qtimageformats
```
#### OpenSUSE
```
sudo zypper install sddm-qt6 libQt6Svg6 qt6-virtualkeyboard qt6-virtualkeyboard-imports qt6-multimedia qt6-multimedia-imports qt6-imageformats
```
### 2. 克隆此仓库:
```
git clone -b main --depth=1 https://github.com/uiriansan/SilentSDDM
cd SilentSDDM/
```
### 3. 测试主题以确保你拥有所有依赖:
```
./test.sh
```
### 4. 将主题复制到 `/usr/share/sddm/themes/`:
```
cd SilentSDDM/
sudo mkdir -p /usr/share/sddm/themes/silent
sudo cp -rf . /usr/share/sddm/themes/silent/
```
### 5. 安装字体:
```
sudo cp -r /usr/share/sddm/themes/silent/fonts/* /usr/share/fonts/
```
### 6. 替换当前的主题并在 `/etc/sddm.conf` 中设置环境变量:
```
sudoedit /etc/sddm.conf
```
```
# 确保这些选项正确无误:
[General]
InputMethod=qtvirtualkeyboard
GreeterEnvironment=QML2_IMPORT_PATH=/usr/share/sddm/themes/silent/components/,QT_IM_MODULE=qtvirtualkeyboard
[Theme]
Current=silent
```
## Pling/KDE Store
该主题也可在 [Planet Linux'ing Groups](https://www.pling.com/p/2298627/) 和 [KDE Store](https://store.kde.org/p/2298627) 中获取。
# 自定义
预设配置位于 `./configs/`。要更改当前激活的配置,请编辑 `./metadata.desktop` 并替换 `ConfigFile=` 的值:
```
ConfigFile=configs/.conf
```
你也可以创建自己的配置文件。在[wiki](https://github.com/uiriansan/SilentSDDM/wiki/Customizing)中有一份包含所有可用选项(数量超过 200 个 xD)的指南。 在[代码片段页面](https://github.com/uiriansan/SilentSDDM/wiki/Snippets)上还有一些关于如何自定义主题的额外提示。 # 致谢 - [Keyitdev/sddm-astronaut-theme](https://github.com/Keyitdev/sddm-astronaut-theme):灵感和代码参考; - [Match-Yang/sddm-deepin](https://github.com/Match-Yang/sddm-deepin):灵感和代码参考; - [qt/qtvirtualkeyboard](https://github.com/qt/qtvirtualkeyboard):代码参考; - [Joyston Judah](https://www.pexels.com/photo/white-and-black-mountain-wallpaper-933054/):背景图; - [DesktopHut](https://www.desktophut.com/blue-light-anime-girl-6794):背景图; - [MoeWalls](https://moewalls.com/anime/ken-kaneki-tokyo-ghoul-re-3-live-wallpaper/):背景图; - [MoeWalls](https://moewalls.com/anime/anime-girl-nissan-silvia-live-wallpaper/):背景图; - [iconify.design](https://iconify.design/):图标
configs/default.conf
https://github.com/user-attachments/assets/3a03e859-c6b9-4c4b-bf7f-ab610b94eb28configs/rei.conf
https://github.com/user-attachments/assets/adc9491c-5078-4fb3-86ea-9b91be151412configs/ken.conf
https://github.com/user-attachments/assets/f0538425-c2e6-450e-9f40-d12b7bdbaa86configs/silvia.conf
https://github.com/user-attachments/assets/c90799f7-52bb-4c90-90db-4890281991c1configs/everforest.conf
configs/catppuccin-latte.conf
configs/catppuccin-frappe.conf
configs/catppuccin-macchiato.conf
configs/catppuccin-mocha.conf
configs/nord.conf
你也可以创建自己的配置文件。在[wiki](https://github.com/uiriansan/SilentSDDM/wiki/Customizing)中有一份包含所有可用选项(数量超过 200 个 xD)的指南。 在[代码片段页面](https://github.com/uiriansan/SilentSDDM/wiki/Snippets)上还有一些关于如何自定义主题的额外提示。 # 致谢 - [Keyitdev/sddm-astronaut-theme](https://github.com/Keyitdev/sddm-astronaut-theme):灵感和代码参考; - [Match-Yang/sddm-deepin](https://github.com/Match-Yang/sddm-deepin):灵感和代码参考; - [qt/qtvirtualkeyboard](https://github.com/qt/qtvirtualkeyboard):代码参考; - [Joyston Judah](https://www.pexels.com/photo/white-and-black-mountain-wallpaper-933054/):背景图; - [DesktopHut](https://www.desktophut.com/blue-light-anime-girl-6794):背景图; - [MoeWalls](https://moewalls.com/anime/ken-kaneki-tokyo-ghoul-re-3-live-wallpaper/):背景图; - [MoeWalls](https://moewalls.com/anime/anime-girl-nissan-silvia-live-wallpaper/):背景图; - [iconify.design](https://iconify.design/):图标
标签:Linux, Qt, SDDM, 主题, 前端设计, 桌面环境