#status-bar #wayland #hyprland #wayland-compositor #linux #gtk-layer-shell

app hybrid-bar

为 wlroots 组合器制作的简单状态栏

2 个版本

0.4.9 2023 年 3 月 6 日
0.4.8 2023 年 3 月 4 日
0.4.7 2023 年 3 月 3 日

#1038 in GUI

MITGPL-3.0-or-later

61KB
1.5K SLoC

混合栏

一个专注于 wlroots Wayland 组合器的简单状态栏

预览

通过 Hyprland 模糊处理。 image

底部的栏也使用混合制作。

它支持什么?

它支持

  • 直接的配置;
  • 带有 shell 命令的标签(+监听支持);
  • 间距(即,如果样式化则为分隔符);
  • 带有子小部件的框;
  • 动态标签的自定义更新速率;
  • Cava;
  • 带有 shell 命令的按钮;
  • 按钮和标签的提示;
  • 按钮和标签的标记;
  • 顶部和底部固定;
  • 透明度(+如果你的组合器允许模糊表面层,则模糊);
  • 通过 stray 的实验性系统托盘;
  • 每个配置不同的显示器

我没有配置

如果您在 AUR 外部安装,请将 examples/config.json 的示例复制到 ~/.config/HybridBar/

它只在 wlroots 组合器上工作吗?

不是的,它还在 KDE 上进行了测试,并且工作得很好。

它不会在 GNOME 上工作,因为它尚未实现 wlr-layer-shell 协议。

配置布局

我假设您熟悉 JSON。如果不熟悉,那太糟糕了。

基本设置

在您可以使用栏之前,您必须调整颜色和透明度。

RGB 颜色为 0-255,作为 32 位整数,透明度为 0.0-1.0,作为 32 位浮点数。

这里有一个例子

{
    "hybrid": {
        "namespace": "hybrid-bar",
        "r": 10,
        "g": 10,
        "b": 10,
        "a": 0.5
    }
}

CSS 支持

CSS 受支持,并且您可以通过在相同路径上创建与您的 config.json 在同一路径上的 style.css 文件来自动加载它。

如果您想查看具有良好默认值的示例 CSS,请检查 examples/style.css

环境变量

HYBRID_LOG = 1 : 将混合输出记录到 stdout。

HYBRID_CONFIG = name.json : 在 HybridBar 配置路径中定位配置,然后在 bars 会话的其余部分中使用它。

后台更新

Hybrid 会自动为动态标签/工具提示和 Cava 小部件执行后台更新。

更新标签的速率从标签的 update_rate 键(u64)中读取。

值得注意的是,较低的更新速率可能会导致性能下降,指定的值以 毫秒 为单位。

构建依赖关系

  1. rust
  2. gtk-layer-shell
  3. gtk3
  4. 支持层壳的合成器
    • 这排除了 GNOME。KDE、Hyprland 和 Sway 已确认可以工作。

安装

Arch Linux: yay/paru -S hybrid-bar

其他发行版: cargo install hybrid-bar

构建

  1. gitclone https://github.com/vars1ty/HybridBar
  2. cd HybridBar
  3. cargobuild --release
  4. cdtarget/release
  5. 完成,可执行文件名为 hybrid-bar

依赖关系

~28–42MB
~758K SLoC