waybar is causing errors

This commit is contained in:
2026-03-17 10:53:20 +00:00
parent cf76eb66d6
commit 211e6b869e
2 changed files with 28 additions and 30 deletions
+14 -15
View File
@@ -1142,10 +1142,12 @@ in
This file installs and configures waybar This file installs and configures waybar
#+BEGIN_SRC nix :tangle generated/system/core/waybar.nix :noweb tangle :mkdirp yes :eval never-html #+BEGIN_SRC nix :tangle generated/system/core/waybar.nix :noweb tangle :mkdirp yes :eval never-html
{ lib, pkgs, config, flakeRoot, ... }: { lib, pkgs, config, flakeRoot, ... }:
let let
username = "henrov"; # Replace with your actual username username = "henrov";
userHome = "/home/${username}";
waybar-config = pkgs.writeText "waybar-config" (builtins.readFile (flakeRoot + "/assets/system/conf/waybar/config")); 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")); waybar-style = pkgs.writeText "waybar-style" (builtins.readFile (flakeRoot + "/assets/system/conf/waybar/style.css"));
in in
{ {
programs.waybar = { programs.waybar = {
@@ -1153,25 +1155,22 @@ in
package = pkgs.waybar; package = pkgs.waybar;
}; };
systemd.user.services.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)"; description = "Waybar (status bar for Wayland)";
wantedBy = [ "graphical-session.target" ];
after = [ "graphical-session.target" ]; after = [ "graphical-session.target" ];
serviceConfig = { serviceConfig = {
Type = "simple"; Type = "simple";
ExecStart = "${config.programs.waybar.package}/bin/waybar -c ${waybar-config} -s ${waybar-style}"; ExecStart = "${config.programs.waybar.package}/bin/waybar -c $WAYBAR_CONFIG -s $WAYBAR_STYLE";
Restart = "on-failure";
RestartSec = "5s";
}; };
wantedBy = [ "default.target" ]; # Home Manager user target
}; };
# Create symlinks for config and style
system.activationScripts.waybarSetup = lib.mkAfter ''
mkdir -p /home/${username}/.config/waybar
ln -sf ${waybar-config} /home/${username}/.config/waybar/config
ln -sf ${waybar-style} /home/${username}/.config/waybar/style.css
chown -R ${username}:users /home/${username}/.config/waybar
'';
} }
#+END_SRC #+END_SRC
+14 -15
View File
@@ -1,8 +1,10 @@
{ lib, pkgs, config, flakeRoot, ... }: { lib, pkgs, config, flakeRoot, ... }:
let let
username = "henrov"; # Replace with your actual username username = "henrov";
userHome = "/home/${username}";
waybar-config = pkgs.writeText "waybar-config" (builtins.readFile (flakeRoot + "/assets/system/conf/waybar/config")); 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")); waybar-style = pkgs.writeText "waybar-style" (builtins.readFile (flakeRoot + "/assets/system/conf/waybar/style.css"));
in in
{ {
programs.waybar = { programs.waybar = {
@@ -10,23 +12,20 @@ in
package = pkgs.waybar; package = pkgs.waybar;
}; };
systemd.user.services.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)"; description = "Waybar (status bar for Wayland)";
wantedBy = [ "graphical-session.target" ];
after = [ "graphical-session.target" ]; after = [ "graphical-session.target" ];
serviceConfig = { serviceConfig = {
Type = "simple"; Type = "simple";
ExecStart = "${config.programs.waybar.package}/bin/waybar -c ${waybar-config} -s ${waybar-style}"; ExecStart = "${config.programs.waybar.package}/bin/waybar -c $WAYBAR_CONFIG -s $WAYBAR_STYLE";
Restart = "on-failure";
RestartSec = "5s";
}; };
wantedBy = [ "default.target" ]; # Home Manager user target
}; };
# Create symlinks for config and style
system.activationScripts.waybarSetup = lib.mkAfter ''
mkdir -p /home/${username}/.config/waybar
ln -sf ${waybar-config} /home/${username}/.config/waybar/config
ln -sf ${waybar-style} /home/${username}/.config/waybar/style.css
chown -R ${username}:users /home/${username}/.config/waybar
'';
} }