Hyprland: exec-once doesn't start waybar on startup
Steps to reproduce
Example configuration:
exec-once = waybar
Expected outcome
- waybar starts on startup
Noted outcome
- waybar doesn’t start on startup and I have to manually start it
Additional info
- latest git build as of writing (both Hyprland and Waybar)
- waybar autostarts in nested Hyprland session (executing
Hyprland
in the terminal) - tested with default waybar config and get the same result
Configuration file
########################################################################################
_ _ _ _ ____ __ _
| | | |_ _ _ __ _ __| | __ _ _ __ __| | / ___|___ _ __ / _(_) __ _
| |_| | | | | '_ \| '__| |/ _` | '_ \ / _` | | | / _ \| '_ \| |_| |/ _` |
| _ | |_| | |_) | | | | (_| | | | | (_| | | |__| (_) | | | | _| | (_| |
|_| |_|\__, | .__/|_| |_|\__,_|_| |_|\__,_| \____\___/|_| |_|_| |_|\__, |
|___/|_| |___/
#########################################################################################
# You have to change this based on your monitor (run "hyprctl monitors")
monitor = eDP-1,1366x768@60,0x0,1
# Window rules and keybinds
source = ~/.config/hypr/src/windowRules.conf
source = ~/.config/hypr/src/keybinds.conf
#Notification
exec-once = dunst
# Status Bar
exec-once = waybar
#Polkit
exec-once = lxpolkit
# Wallpaper
exec-once = swaybg -o \* -i ~/Pictures/Wallpapers/Aenami7pmMocha1.png -m fill
# For keyboard
#exec-once=fcitx5 -D
# For lockscreen
exec-once = swayidle -w timeout 200 'swaylock --fade-in 2'
# mpdris mpd
exec-once = mpDris2
# clipboard
#exec-once = wl-paste --watch cliphist store
exec-once = copyq
# Foot terminal daemon
exec-once = foot --server
# Night Light
exec-once = gammastep
# Bluetooth
#exec-once=blueman-applet # Make sure you have installed blueman
# Screen Sharing and Screen Recording
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
#exec-once = ~/.config/hypr/scripts/screensharing.sh
# Apply GTK themes (or use nwg-look https://github.com/nwg-piotr/nwg-look)
#exec-once = ~/.config/hypr/scripts/import-gsettings
input {
# Remap Capslock -> Esc for Vim users
#kb_options=caps:escape
repeat_rate = 25
repeat_delay = 269
touchpad {
scroll_factor = 0.8
disable_while_typing = 1
natural_scroll = 1
clickfinger_behavior = 1
middle_button_emulation = 0
tap-to-click = 1
}
}
# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:gaming-mouse {
sensitivity = 0
accel_profile = flat
}
gestures {
workspace_swipe = true
workspace_swipe_min_speed_to_force = 5
}
general {
layout = dwindle
gaps_in = 3
gaps_out = 5
border_size = 3
col.active_border = 0xffEBA0AC
col.inactive_border = 0xffB4BEFE
col.group_border = 0xfffab387
col.group_border_active = 0xffa6e3a1
resize_on_border = true
}
decoration {
multisample_edges = true
blur_new_optimizations = true
rounding = 6
blur = 0
blur_size = 2 # minimum 1
blur_passes = 2 # minimum 1, more passes = more resource intensive.
# Your blur "amount" is blur_size * blur_passes, but high blur_size (over around 5-ish) will produce artifacts.
# if you want heavy blur, you need to up the blur_passes.
# the more passes, the more you can up the blur_size without noticing artifacts.
drop_shadow = true
shadow_range = 15
col.shadow = 0xffEBA0AC
col.shadow_inactive = 0x50000000
}
animations {
enabled = 1
# bezier=overshot,0.05,0.9,0.1,1.1
bezier = buz, -0.09, 0, 0.19, 1
bezier = linear, 0,0,1,1
bezier = md3_decel, 0.05, 0.7, 0.1, 1
bezier = overshot,0.13,0.99,0.29,1.1
bezier = smoothOut, 0.36, 0, 0.66, -0.56
bezier = smoothIn, 0.25, 1, 0.5, 1
animation = windows,1,5,overshot,popin
animation = windowsOut,1,6,md3_decel,popin
animation = windowsMove, 1, 4, buz
animation = fade, 1, 5, smoothIn
animation = workspaces,1,6,overshot,slide
animation = border,1,10,default
}
dwindle {
pseudotile=1 # enable pseudotiling on dwindle
force_split=0
no_gaps_when_only = false
}
master {
new_on_top = true
no_gaps_when_only = false
}
misc {
focus_on_activate = true
disable_hyprland_logo = true
disable_splash_rendering = true
mouse_move_enables_dpms = true
vrr = 0 # variable refresh rate
vfr = 1 # variable frame rate
animate_manual_resizes = true
animate_mouse_windowdragging = true
}
debug:overlay=0
About this issue
- Original URL
- State: closed
- Created a year ago
- Reactions: 7
- Comments: 47 (8 by maintainers)
I just want to comment for dummies like myself who somehow missed it - The
exec-once
line in the default auto generated config file is commented out.This is almost certainly not the reason many people in this thread are experiencing an issue, but if I stumbled across this thread before I realised, there’s a chance others might too. We’re all blind to the blatantly obvious sometimes, but feel free to laugh at me.
I think this can be closed as it’s turned into a fiesta of people with broken waybars.
uh so other apps like eww (
exec-once = eww daemon
), mpd(exec-once = mpd
) also don’t seem to be workingdunno, works for me and like everyone else. Try appending
2>&1 > ~/somelog.txt
and inspecting the logs