working on waybar
This commit is contained in:
@@ -1,27 +1,39 @@
|
||||
{ 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
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user