Haku Space
适用于 Hyprland / Niri / MangoWM / Labwc 的 Arch Linux dotfiles
Haku Space 现已支持 Fedora!请参阅 Fedora 指南
- 多 WM 支持:专为 Arch Linux 设计(支持 Hyprland、Niri、MangoWM、Labwc),可在窗口管理器之间无缝切换。
- 发行版无关:只要安装了核心依赖项,即可兼容任何 Linux 发行版。
- 类似 DE 的体验:由 Rofi、Waybar、SwayNC 和自定义脚本驱动的模块化 UI。
- 可扩展性:高度可定制,易于适配您自己的工作流。
- 控制中心:
~/hakuspace-control此目录存储您的自定义配置,因此您无需修改主配置文件,从而为您提供更大的自定义自由度。 - 强调色: 在 Waybar、Rofi、Kitty、Swaync 等之间同步,为您的设置带来超级整洁且协调一致的氛围!
- 智能强调色: 根据您当前的壁纸自动生成强调色调色板。
- 灵活的 Waybar 布局: 支持布局:
top、left、coredge、minimal、full、neon(后续将扩展更多)。 - 独特的 Cava 下栏: 动态音频可视化波形无缝叠加在 Waybar 正下方。
- 壁纸自动化: 壁纸每 5 分钟自动更换(可在
main_setting.sh中自定义 WALL_INTERVAL)。 - Dockbar: 内置,另一个带有
wlr/taskbar模块的 Waybar,可以固定应用程序,外观类似任务栏或 Dock。 - 桌面图标
(experimental): 内置,文件夹~/Desktop中的项目将显示在桌面上(顺便说一句,目前仍有 bug)。
[!note] 我的 dotfiles 由脚本驱动;如果您不使用它们,对您的性能没有影响!
如果您有关于如何使用我的 dotfiles 的任何问题,或者想要一些技巧,请随时在 Discord 上联系我
更多信息请参见:pkg-core | pkg-service | pkg-optional
各 WM 的特定软件包:pkg-hyprland | pkg-niri | pkg-mango | pkg-labwc
| 组件 | 程序 |
|---|---|
| 终端 | Kitty |
| 应用启动器 | Rofi |
| 状态栏 | Waybar |
| Shell | Zsh |
| 文件管理器 | Thunar |
| 通知与控制中心 | SwayNC |
| 壁纸 | Awww |
| 空闲管理 | Hypridle |
| 屏幕锁定 | Hyprlock |
| 登录菜单 | Ly |
| 编辑器 | VS Code |
| 浏览器 | Zen |
| 屏幕录制 | Wl-screenrec |
| 显示管理器 | Ly |
XDG Desktop Portal: 默认使用 GTK,但每个 WM 将根据其官方 wiki 使用其特定的推荐 portal(hyprland 使用 hyprland,niri 使用 gnome,mangowm/labwc 使用 wlr)。
基于壁纸的强调色,使用 python-colorthief
[!Important] 先决条件: 您需要预装 Arch Linux 或基于 Arch 的 Linux 发行版(强烈建议全新安装)。如果您已有现有的 WM 或 DE 配置,最好仅参考 HakuSpace 中的配置,而不是直接在系统上运行安装脚本。
[!tip] 对于 Fedora 用户,您可以遵循 Fedora 指南
1. 克隆 Dotfiles
如果您希望体验最新更改(最新 Git),您可以克隆主分支:
cd ~
git clone https://github.com/hakuimaku/hakuspace.git ~/hakuspace
如果您更喜欢我测试过的版本(说实话,稍微稳定一些),请克隆 stable 发布版本 v2.2.1(最新):
cd ~
git clone --depth 1 --branch v2.2.1 https://github.com/hakuimaku/hakuspace.git ~/hakuspace
切换到 hakuspace 目录:
cd hakuspace
2. 运行安装脚本
chmod +x install.sh
./install.sh
3. 完成安装
运行安装脚本后,重启计算机并登录 Hyprland、Niri、Mango 或 Labwc 以体验新配置。
4. 安装后
- 更改 GTK 主题:
- 前往 Rofi 应用菜单中的
GTK Settings。 - 更改主题、图标和鼠标指针以获得更好的美观效果。
- 安装附加软件包:
waybar-cava 是 Waybar 的一个插件,提供音频输出的可视化器。我的 waybar 顶部需要它才能正常工作(cava 模块)。
yay -S waybar-cava
- 允许本地 root 用户访问 X/Xwayland 显示
xhost +si:localuser:root
授予本地 root 用户权限,使其能够连接到当前用户活动的 X 服务器或 Xwayland 会话中,并启动图形(GUI)应用程序(如 GParted)。
🔽 更新 Haku Space 至最新版本
- 获取最新版本
- 通过 Git pull 获取最新的 git。
cd ~/hakuspace
git pull origin main
- 获取最新稳定版本的 Git fetch。
cd ~/hakuspace
git fetch --tags
LATEST_TAG=$(git describe --tags $(git rev-list --tags --max-count=1))
git checkout $LATEST_TAG
- 更新
- 在 hakuspace 文件夹中运行
update.sh脚本。
cd ~/hakuspace
chmod +x update.sh
./update.sh
🗑 卸载 Haku Space
(WM: 你当前正在使用的窗口管理器,例如 hyprland、niri、mango)。
我的 dotfiles 非常干净。你只需要检查从 common 和特定 WM 复制的配置文件夹,位于 ~/hakuspace,然后从 ~/.config 中删除它们(在安装过程中,install.sh 脚本会自动为你现有的配置文件创建一个 备份,以便你可以备份旧配置)。
- 删除位于
~/.local/bin中的所有脚本。 - 删除
~/.local/state/haku_theme中自动生成的文件。 - 如有必要,你还可以删除
~/.icons和~/.themes中的图标和主题。 - 检查
pkg-core.txt、pkg-service.txt、pkg-optional.txt(位于 hakuspace/common)和pkg-WM.txt(位于 hakuspace/WM),以卸载任何不必要的软件包。 - 最后,你可以完全删除
~/hakuspace目录。
您可以立即使用我已预先配置好的插件。只需使用以下命令安装并启用它们(或者在 plugin.lua 中按您的喜好进行调整)。
- hyprexpo - 工作区概览布局。
- hypr-dynamic-cursors - 平滑的基于物理的动态光标效果。
hyprpm update
hyprpm add https://github.com/virtcode/hypr-dynamic-cursors
hyprpm enable dynamic-cursors
hyprpm add https://github.com/sandwichfarm/hyprexpo
hyprpm enable hyprexpo
hyprpm reload
阅读 Wiki 以获取更多信息:https://wiki.hypr.land/Plugins/Using-Plugins/
在 ~/hakuspace-control/hyprland-custom.lua 中查看更多指南。
| 绑定 | 功能 |
|---|---|
| SUPER + Q | 打开 Kitty 终端 |
| SUPER + C | 关闭焦点窗口 |
| SUPER + TAB | 打开菜单 |
| SUPER + R | 应用菜单 |
| SUPER + W | 切换 Dockbar |
| SUPER + P | 截图 |
| SUPER + Z | 切换浮动模式 |
| SUPER + V | 打开剪贴板历史 |
| SUPER + A/S | 聚焦左/右窗口 |
| SUPER + Y | 选择壁纸 |
| SUPER + SHIFT + Y | 选择 Lively 动态壁纸 |
| SUPER + SHIFT + W | 循环切换 Waybar 模式 |
| SUPER + X | 循环切换 Hyprland 布局(仅限 Hyprland) |
| SUPER + ` | 打开特殊工作区 - 用于 VS Code(仅限 Hyprland) |
- Labwc:
| 绑定 | 功能 |
|---|---|
| SUPER + Space | 打开根菜单 |
| SUPER + ` | 打开客户端菜单 |
| ALT + ` | 打开组合客户端菜单 |
| SUPER + A | 最大化 |
| SUPER + S | 最小化 |
| SUPER + D | 显示桌面 |
| SUPER + Z | 缩小窗口尺寸(-10%) |
| SUPER + X | 使用鼠标调整大小 |
- 自定义配置(您的个人更改):
~/hakuspace-control - 图标:
~/.icons - 主题:
~/.themes - 所有 hakuspace 脚本:
~/.local/bin - Fastfetch 标志:
~/.config/fastfetch - 壁纸:
~/Pictures/Wallpapers - Lively 壁纸:
~/Videos/Wallpapers - Lively 壁纸缩略图:在 Preview
~/Videos/Wallpapers/Preview文件夹中,并添加图像 .jpg/.png(与视频同名),以便在 rofi 选择菜单中显示缩略图(如果您想使用 lively 壁纸) - State 文件 & Haku Theme for waybar, rofi,...(包括 accent_color, font, font size):
~/.local/state/haku_theme
- 在 Workspace 1 中打开终端并输入
haku以获取一个小惊喜。要关闭它们,只需添加 '--clear' 参数(例如,haku --clear)。 - Cava Underbar:要在 Waybar 正下方切换 Cava 可视化器,请从 Haku Menu 中选择 Cava Underbar。它在全屏期间会自动隐藏,并在退出时重新出现。要完全禁用它,只需在 Haku Menu 中再次切换即可。
Waybar 故障排除:
- Waybar 时钟: 您应在 waybar 配置中手动设置时区和区域设置,以确保时钟正确显示。
- Waybar cava 模块: 如果您在 Waybar 中遇到 Cava 模块的问题,请确保已安装
waybar-cava并在 Waybar 配置文件中正确配置。 - Waybar 使用
ext/workspaces进行 Multi-WMs 设置。
我的 dotfiles 的 bug:
- 目前,我的自定义
gtk.css仅兼容 GTK 3 且仅支持 Dark Mode。如果你使用的是 Light Mode,可能会遇到 GTK 应用程序 (Thunar) 外观方面的一些问题。如果你不想使用我的 thunar 主题,请在~/.config/gtk-3.0/中移除gtk.css。 - Niri 中的 Cava Underbar 不支持 no-focus 规则。因此,你可能会不小心将其从原始位置移动或意外关闭它。
- 由于我仅将此配置用于个人使用,某些功能可能仍然缺失。如果你需要超出所提供范围的功能,你需要手动安装和配置这些部分。
- 如果你不想使用某些应用程序(如
wl-screenrec、thunar、ly等),你可以轻松移除它们并用替代方案替换。然而,某些应用程序与我的脚本或配置深度集成,因此移除它们可能会破坏功能或导致这些脚本/配置停止工作。 - 如果你发现脚本无法工作,请在终端中直接运行它以查看错误是什么。
- 如果你在安装或配置过程中遇到任何问题,请在我的 Tiktok 上的某个视频中向我提问,在 GitHub 上打开一个 issue,或加入我的 Discord 以获取更多帮助!我会尽力帮助你。
如果你使用的是 Fedora:
- Swaync 服务可能会在 Fedora 上自动启动。这可能会在启动时导致问题。要修复此问题,你可以通过运行以下命令来禁用 Swaync 服务:
systemctl --user disable swaync.service
- 这是一个个人 dotfiles 配置。欢迎 fork 并根据你的需求进行适配!
- Tiktok / 查看更多展示:@hakuimaku2372
- Discord: hakuspace-dots
请参阅 hakuspace-archive 以获取本项目使用的资源:hakuspace-archive