[BUG] Waybar is started twice at login (autostart.lua + ml4w-wallpaper reload)

Abierto Apto para principiantes
#1,904 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
75/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
linux, lua
Área
desktop, devops

Línea de trabajo

Lee dotfiles/.config/hypr/conf/autostart.lua junto con ml4w-autostart y el código de ml4w-wallpaper que llama a run_matugen y reload_waybar. Sigue ambas rutas de inicio y revisa los registros o las pruebas existentes, si los hay. Haz que Waybar se inicie una vez después de aplicar el tema y confirma que el inicio de sesión predeterminado de Waybar ya no registra un segundo reinicio ni muestra parpadeos en la barra.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Describe the bug

On every login Waybar is started twice. The first instance shows up with the previous colors and some modules not ready yet. It is then killed and a second instance is started a moment later, so the bar visibly disappears and comes back.

There are two launches:

  1. dotfiles/.config/hypr/conf/autostart.lua starts Waybar directly:
    -- Start waybar
    hl.exec_cmd(HOME .. "/.config/waybar/launch.sh")
    
  2. A few seconds later ml4w-autostart runs ml4w-wallpaper "<cache>" --skip-wallpaper, which calls run_matugen and then reload_waybar. That function does killall waybar and runs launch.sh again.

Looking at the history, this looks like an overlap between two changes made two days apart:

  • c470e824 (Jun 23) added the Waybar launch to autostart.lua. At that point ml4w-wallpaper was skipped entirely when the awww cache existed, so the bar had to be started from somewhere else.
  • a4a1bebd (Jun 25) changed ml4w-autostart to always run ml4w-wallpaper ... --skip-wallpaper for theming. Since then Waybar is also (re)started by reload_waybar, so the launch in autostart.lua is redundant.
  • 0d676f10 (Jul 14) changed reload_waybar from pkill -SIGUSR2 waybar to killall waybar, which makes the restart visible as a flicker.

The issue is present from 2.14.0 up to 2.17.

Steps to reproduce
  1. Use Waybar as the status bar (~/.config/ml4w/settings/statusbar = waybar) with the default autostart.
  2. Make sure the awww cache exists (any normal login after the first one).
  3. Log in to Hyprland.
  4. Waybar appears, disappears for a moment and then appears again. The autostart log in ~/.local/state/ml4w-os-hyprland/ shows Waybar is currently running. followed by Waybar restarted.
Expected behavior

Waybar should start only once at login, already themed by matugen.

A possible fix is to drop the launch from autostart.lua and let ml4w-wallpaper start Waybar after matugen. Another option is to keep it there and have reload_waybar skip the kill and relaunch when it is called from ml4w-autostart.

Distribution

Arch Linux

Additional context

ML4W dotfiles 2.17 (stable), Hyprland with Lua config, wallpaper-app = quickshell. The installed files are identical to the ones in the repo (no local changes).

Lenguaje dominante
QML
Estrellas
5.1k
Forks
386
Merge medio
16 h 45 min
PR fusionados (30 d)
14

Preparar el entorno

  • Sin Dockerfile ni archivo de Docker Compose
  • Tiene una plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de mylinuxforwork/dotfiles

Todos los issues de mylinuxforwork/dotfiles

Issues similares

Más issues de Desktop Dev

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.