Skip to content

'Invalid config line' error warning is empty line, did something change with the latest update that's incompatible with my config? #4771

Description

@kabeleh

Hyprland Version

System/Version info
Hyprland, built from branch main at commit 86be75dd97b5633b8c0aa6bdcb3346fa871a8480 dirty (events: bring back accidentally nuked preConfigReload).
Date: Tue Feb 20 03:24:15 2024
Tag: v0.35.0-59-g86be75dd

flags: (if any)


System Information:
System name: Linux
Node name: bridge
Release: 6.7.5-arch1-1.1
Version: #1 SMP PREEMPT_DYNAMIC Sat, 17 Feb 2024 20:06:57 +0000


GPU information: 
0c:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA106 [GeForce RTX 3060] [10de:2503] (rev a1) (prog-if 00 [VGA controller])


os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo


plugins:

Bug or Regression?

Bug

Description

I updated the system on Monday, 19th of February, after updating the system the last time on the Friday before that. Since the Monday update, I see the following error message on top of the screen:

Config error in file /home/usr/.config/hypr/hyprland.conf at line 2: Invalid config line
Config error in file /home/usr/.config/hypr/hyprland.conf at line 3: Invalid config line
Config error in file /home/usr/.config/hypr/hyprland.conf at line 4: Invalid config line
Config error in file /home/usr/.config/hypr/hyprland.conf at line 5: Invalid config line
Config error in file /home/usr/.config/hypr/hyprland.conf at line 6: Invalid config line
Config error in file /home/usr/.config/hypr/hyprland.conf at line 144: special catergory's first value must be the key. Key for <device> is <name>

my hyprland.conf is the following:


########################################################################################
AUTOGENERATED HYPR CONFIG.
PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
########################################################################################

#
# Please note not all available settings / options are set here.
# For a full list, see the wiki
#

# autogenerated = 1 # remove this line to remove the warning

# See https://wiki.hyprland.org/Configuring/Monitors/
# monitor=,preferred,auto,auto
monitor=DP-2,1920x1080@60,0x0,1
monitor=DP-3,1920x1080@240,1920x0,1
monitor=HDMI-A-1,1920x1200@60,-1920x0,1


# See https://wiki.hyprland.org/Configuring/Keywords/ for more

# Execute your favorite apps at launch
exec-once = hyprpaper & waybar & vivaldi-stable & kitty & kDrive & protonmail-bridge &
exec-once = /usr/lib/polkit-kde-authentication-agent-1
exec-once = udiskie &
exec-once = pypr

# Source a file (multi-file configs)
# source = ~/.config/hypr/myColors.conf

# Some default env vars.
env = XCURSOR_SIZE,24
env = LIBVA_DRIVER_NAME,nvidia
env = XDG_SESSION_TYPE,wayland
env = GBM_BACKEND,nvidia-drm
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = WLR_NO_HARDWARE_CURSORS,1
#env = HYPRLAND_LOG_WLR,1
env = VISUAL,nvim
env = EDITOR,nvim
#env = QT_QPA_PLATFORMTHEME,qt6ct

# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
input {
    kb_layout = eu
    kb_variant =
    kb_model =
    kb_options =
    kb_rules =

    follow_mouse = 1

    touchpad {
        natural_scroll = no
    }

    numlock_by_default = true

    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
}

general {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more

    gaps_in = 5
    gaps_out = 20
    border_size = 2
    #col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
    col.active_border = rgba(000000ee) rgba(ff0000ee) 315deg
    col.inactive_border = rgba(595959aa)

    layout = dwindle
}

misc {

	mouse_move_enables_dpms = false
	key_press_enables_dpms = true
}

#decoration:blur {
#   enabled = true
#   size = 3
#   passes = 1
#}

decoration {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more

    rounding = 10
    blur {
       enabled = true
       size = 3
       passes = 2 
    }

    #blur = yes
    #blur_size = 3
    #blur_passes = 1
    #blur_new_optimizations = on

    drop_shadow = yes
    shadow_range = 4
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)
}

animations {
    enabled = yes

    # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more

    bezier = myBezier, 0.05, 0.9, 0.1, 1.05

    animation = windows, 1, 7, myBezier
    animation = windowsOut, 1, 7, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 8, default
    animation = fade, 1, 7, default
    animation = workspaces, 1, 6, default,slidevert
}

dwindle {
    # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
    pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = yes # you probably want this
}

master {
    # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
    new_is_master = true
}

gestures {
    # See https://wiki.hyprland.org/Configuring/Variables/ for more
    workspace_swipe = off
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
device:epic-mouse-v1 {
    sensitivity = -0.5
}

# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
windowrule = opacity 1.0 override 0.75 override,^(thunar)$ # set opacity to 1.0 active and 0.5 inactive for thunar
windowrulev2 = float,class:^(thunderbird)$,title:^(.*)(Reminder)(.*)$
windowrulev2 = float,class:^(python3)$,title:^(.*)(Figure)(.*)$

# See https://wiki.hyprland.org/Configuring/Keywords/ for more
$mainMod = SUPER

# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, kitty
bind = $mainMod, C, killactive, 
bind = $mainMod, M, exit, 
bind = $mainMod, E, exec, thunar
bind = $mainMod, V, togglefloating, 
bind = $mainMod, R, exec, wofi --show drun
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, L, exec, swaylock; hyprctl dispatch dpms off
bind = $mainMod, B, exec, vivaldi-stable
bind = $mainMod, T, exec, thunderbird

# Screenshots with hyprshot
# Screenshot a window
bind = $mainMod, PRINT, exec, hyprshot -m window -o /home/usr/Screenshots/
# Screenshot a monitor
bind = , PRINT, exec, hyprshot -m output -o /home/usr/Screenshots/

# Dropdown Kitty Terminal
bind = $mainMod,F12,exec,pypr toggle term
$dropterm  = ^(kitty-dropterm)$
windowrule = float,$dropterm
windowrule = workspace special silent,$dropterm
windowrule = size 75% 60%,$dropterm

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Move Active Window to other monitor
bind = $mainMod, KP_End, movewindow, mon:DP-3
bind = $mainMod, KP_Next, movewindow, mon:HDMI-A-1

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Swap the workspaces of all the screens
#bind = $mainMod, KP_Begin, exec, pypr shift_monitors +1

# Make non-visible workspace follow the focused monitor
#bind = $mainMod, KP_Insert, exec, pypr change_workspace +1
#bind = $mainMod, KP_Down, exec, pypr change_workspace -1

#bind = SUPER, KP_End, workspace, 1
#bind = SUPER, KP_Down, workspace, 2
#bind = SUPER, KP_Next, workspace, 3
#bind = SUPER, KP_Left, workspace, 4
#bind = SUPER, KP_Begin, workspace, 5
#bind = SUPER, KP_Right, workspace, 6
#bind = SUPER, KP_Home, workspace, 7
#bind = SUPER, KP_Up, workspace, 8
#bind = SUPER, KP_Prior, workspace, 9
#bind = SUPER, KP_Insert, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10

bind = $mainMod SHIFT, KP_End, movetoworkspace, 1
bind = $mainMod SHIFT, KP_Down, movetoworkspace, 2
bind = $mainMod SHIFT, KP_Next, movetoworkspace, 3
bind = $mainMod SHIFT, KP_Left, movetoworkspace, 4
bind = $mainMod SHIFT, KP_Begin, movetoworkspace, 5
bind = $mainMod SHIFT, KP_Right, movetoworkspace, 6
bind = $mainMod SHIFT, KP_Home, movetoworkspace, 7
bind = $mainMod SHIFT, KP_Up, movetoworkspace, 8
bind = $mainMod SHIFT, KP_Prior, movetoworkspace, 9
bind = $mainMod SHIFT, KP_Insert, movetoworkspace, 10

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+3
bind = $mainMod, mouse_up, workspace, e-3

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

# Multimedia Keys
bind =  , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
binde = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+

Are empty lines counted? Or does the error message only count non-empty, no-comment lines? In any case, I cannot see what would be wrong with the config lines 2–6. What should I check?

How to reproduce

No crash report is produced, and hyprland is so far also not 'misbehaving', except for the red warning on top of the screen.

Crash reports, logs, images, videos

There are no crash reports. The logs show no warnings, but I'm happy to produce additional logs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions