20个版本 (破坏性)

0.16.0 2024年8月10日
0.15.1 2024年5月5日
0.15.0 2024年4月28日
0.15.0-pre 2024年3月29日
0.8.0 2022年11月30日

#81 in GUI

Download history 267/week @ 2024-04-29 55/week @ 2024-05-06 8/week @ 2024-05-13 24/week @ 2024-05-20 14/week @ 2024-06-03 13/week @ 2024-06-10 13/week @ 2024-06-17 4/week @ 2024-06-24 7/week @ 2024-07-01 10/week @ 2024-07-08 5/week @ 2024-07-15 9/week @ 2024-07-29 94/week @ 2024-08-05 31/week @ 2024-08-12

每月134次下载

MIT 和可能 GPL-3.0-or-later

545KB
13K SLoC

--- Ironbar ---


一个可定制的、功能丰富的GTK栏,用于wlroots组合器,用Rust编写。

Ironbar旨在轻松支持从轻量级栏到完整桌面面板的一切。


入门

Wiki | 配置指南 | 风格指南


Screenshot of fully configured bar with MPD widget open

✨ 寻找起点,或想展示?前往 展示与讲述


特性

  • 对Sway和Hyprland的一流支持
  • 完全可主题化,支持热加载CSS
  • 弹出窗口以显示丰富内容
  • 能够创建自定义小部件,运行脚本并嵌入动态内容
  • 轻松配置从单个栏跨越所有显示器到每个显示器多个不同独特栏
  • 支持多种配置语言

安装

Packaging status

Ironbar可以从源代码安装或使用您首选的包管理器安装。

还建议安装一个 Nerd Font 以显示符号。

Cargo

crate

确保您已安装了 构建依赖项

cargo install ironbar

Arch Linux

aur包

yay -S ironbar-git

Nix

nix包

nix-shell -p ironbar

Flake

仓库中包含一个flake,可用于与Home Manager一起使用。

示例用法
{
  # Add the ironbar flake input
  inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
  inputs.ironbar = {
    url = "github:JakeStanger/ironbar";
    inputs.nixpkgs.follows = "nixpkgs";
  };
  inputs.hm = {
    url = "github:nix-community/home-manager";
    inputs.nixpkgs.follows = "nixpkgs";
  };

  outputs = inputs: {
    homeManagerConfigurations."USER@HOSTNAME" = inputs.hm.lib.homeManagerConfiguration {
      pkgs = nixpkgs.legacyPackages.x86_64-linux;
      modules = [
        # And add the home-manager module
        inputs.ironbar.homeManagerModules.default
        {
          # And configure
          programs.ironbar = {
            enable = true;
            config = {};
            style = "";
            package = inputs.ironbar;
            features = ["feature" "another_feature"];
          };
        }
      ];
    };
  };
}

CI构建会自动由Garnix缓存。您可以通过以下步骤使用他们的二进制缓存 此处

Fedora

fedora包

dnf copr enable victorvintorez/tilingtools
dnf install ironbar

Void Linux

void包

xbps-install ironbar

源代码

repo

确保您已安装了 构建依赖项

git clone https://github.com/jakestanger/ironbar.git
cd ironbar
cargo build --release
# change path to wherever you want to install
install target/release/ironbar ~/.local/bin/ironbar

默认情况下,所有功能都已启用。有关控制包含哪些功能的说明,请参阅 此处

运行

安装完成后,您需要创建一个配置文件,可选地创建一个样式表,存放在.config/ironbar目录下。请参阅配置指南样式指南以获取详细信息。

可以使用ironbar二进制文件启动Ironbar。

可以通过设置环境变量IRONBAR_LOGIRONBAR_FILE_LOG来改变控制台和文件日志的详细程度。您可以使用errorwarninfodebugtrace中的任何一项。

默认为IRONBAR_LOG=infoIRONBAR_FILE_LOG=warn。请注意,您无法将文件日志详细程度设置得高于控制台日志详细程度。

日志文件位于~/.local/share/ironbar/.log

状态

Ironbar是一个alpha项目。它尚未完成,并且会不断出现破坏性变更,直到其基础稳固为止。

如果您愿意承担风险并帮助塑造其发展,欢迎提交错误报告、功能请求和讨论。

我正在我的日常驱动器上使用Ironbar,因此开发是活跃的。功能在合并之前旨在稳定且文档完善。

贡献指南

所有人都欢迎,但我会要求一些基本事项以简化过程。请查看此处以获取详细信息。

致谢

  • Waybar - 许多最初的灵感,以及一个相当不错的栏。
  • Rustbar - 作为在Rust中编写基本GTK栏的一个很好的演示。
  • Smithay Client Toolkit - 在与Wayland通信中是必不可少的。
  • gtk-layer-shell - 没有这个,Ironbar和许多其他项目将无法实现。
  • Mixxc - Ironbar的PulseAudio客户端代码的基础,以及一个很酷的独立音量控件。

依赖项

~34–57MB
~1M SLoC