working on waybar

This commit is contained in:
2026-03-11 19:53:29 +01:00
parent 5830793d0c
commit 47895c3562
3 changed files with 426 additions and 390 deletions
+28 -16
View File
@@ -888,29 +888,41 @@ This file installs and configures waybar
{ lib, pkgs, config, ... }:
let
cfg = config.programs.waybar;
waybar-config = builtins.readFile ./assets/system/conf/config;
waybar-style = builtins.readFile ./assets/system/conf/style.css;
in
{
waybar.enable = true;
systemd.user.services.waybar = {
description = "Waybar (status bar for Wayland)";
wantedBy = [ "graphical-session.target" ];
after = [ "graphical-session.target" ];
serviceConfig = {
ExecStart = with pkgs; "${waybar}/bin/waybar -c ${./assets/system/conf/config} -s ${./assets/system/conf/style.css}";
Restart = "on-failure";
RestartSec = "5s";
options.programs.waybar = {
enable = lib.mkEnableOption "Waybar";
package = lib.mkOption {
type = lib.types.package;
default = pkgs.waybar;
description = "Waybar package to use.";
};
};
# Create the required directories and files
system.activationScripts.waybarSetup = ''
mkdir -p /home/${config.users.users.${config.nixpkgs.config.permittedUsers[0]}.name}/.config/waybar
ln -sf ${./assets/system/conf/config} /home/${config.users.users.${config.nixpkgs.config.permittedUsers[0]}.name}/.config/waybar/config
ln -sf ${./assets/system/conf/style.css} /home/${config.users.users.${config.nixpkgs.config.permittedUsers[0]}.name}/.config/waybar/style.css
'';
config = lib.mkIf cfg.enable {
environment.systemPackages = [ cfg.package ];
systemd.user.services.waybar = {
description = "Waybar (status bar for Wayland)";
wantedBy = [ "graphical-session.target" ];
after = [ "graphical-session.target" ];
serviceConfig = {
ExecStart = "${cfg.package}/bin/waybar -c ${./assets/system/conf/config} -s ${./assets/system/conf/style.css}";
Restart = "on-failure";
RestartSec = "5s";
};
};
# Create symlinks for config and style
system.activationScripts.waybarSetup = lib.mkAfter ''
mkdir -p /home/${config.users.users.${config.nixpkgs.config.permittedUsers[0]}.name}/.config/waybar
ln -sf ${./assets/system/conf/config} /home/${config.users.users.${config.nixpkgs.config.permittedUsers[0]}.name}/.config/waybar/config
ln -sf ${./assets/system/conf/style.css} /home/${config.users.users.${config.nixpkgs.config.permittedUsers[0]}.name}/.config/waybar/style.css
'';
};
}
#+END_SRC