SketchyBar
SketchyBar copied to clipboard
Cannot run SketchyBar if configuration is execeutable symbolic link
In case of nix all config files are symlink. The SketcyBar check if config file is executable (and it will be false in case of symlink, even if target is executable) and try to set the execute permission and it's fail since it's a nix )))
It seems issue is arising here https://github.com/FelixKratz/SketchyBar/blob/4aa602ac71f98fe9f4a4edb7cd0fd434c38010f9/src/misc/helpers.h#L427
and this code for executable symlink won't return true
I don't have knowladge of c++ to fix this, so please aware of the issue related to symlinked configuration
in my case I've fixed it, by manualy configure launchctl service using following changes at my configuration and don't using the nix-darwin service for the integration
launchd.user.agents.sketchybar = {
path = [ pkgs.sketchybar ] ++ [ pkgs.sketchybar-app-font ] ++ [ config.environment.systemPath ];
serviceConfig.ProgramArguments = [ "${pkgs.sketchybar}/bin/sketchybar" ] ++ ["--config" "${self}/sketchybar/sketchybarrc"];
serviceConfig.KeepAlive = true;
serviceConfig.RunAtLoad = true;
};
Where self
it's my flake configuration inherits to system configuration and to home-manager configuration via specialArgs
and extraSpecialArgs
.
Note: nix-darwin solution works since create the service using real path to configuration, not symlink