{ lib, pkgs, config, flakeRoot, ... }: let username = "henrov"; userHome = "/home/${username}"; waybar-config = pkgs.writeText "waybar-config" (builtins.readFile (flakeRoot + "/assets/system/conf/waybar/config")); waybar-style = pkgs.writeText "waybar-style" (builtins.readFile (flakeRoot + "/assets/system/conf/waybar/style.css")); in { programs.waybar = { enable = true; package = pkgs.waybar; }; # Use Home Manager user units for Waybar home.file.".config/waybar/config".source = waybar-config; home.file.".config/waybar/style.css".source = waybar-style; home.sessionVariables.WAYBAR_CONFIG = "${waybar-config}"; home.sessionVariables.WAYBAR_STYLE = "${waybar-style}"; home.user.services.waybar = { description = "Waybar (status bar for Wayland)"; after = [ "graphical-session.target" ]; serviceConfig = { Type = "simple"; ExecStart = "${config.programs.waybar.package}/bin/waybar -c $WAYBAR_CONFIG -s $WAYBAR_STYLE"; }; wantedBy = [ "default.target" ]; # Home Manager user target }; }