Hello,
after today’s Garuda update my Awesome WM installation broke completely.
After reboot, Awesome WM no longer starts properly.
I tested this on two different laptops with different editions:
-
Garuda Mokka
-
Garuda GNOME
Both GNOME and Plasma still work fine after the update, but Awesome WM fails to start.
I had to roll back using Snapper to make the system usable again, but of course this means the update cannot be applied while keeping Awesome WM functional.
Here is the error message I get when trying to start Awesome WM:
Ooops an error happened
~/.config/awesome/rc.lua:268: attempt to call a nil value (field 'at_screen_connect')
Ooops, there were errors during startup!
error while running function!
stack traceback:
~/.config/awesome/rc.lua:268: in local func
/usr/share/awesome/lib/awful/screen.lua:438 in function 'awful.screen.connect_for_each_screen'
~/.config/awesome/rc.lua:268: in main chunk
error: ~/.config/awesome/rc.lua:268: attempt to call a nil value (field 'at_screen_connect')
Question
Do you have any suggestions on how to fix this issue so that Awesome WM continues to work after updates?
Is this a known bug in the latest Garuda packages, or should I patch my rc.lua
manually?
System info
As requested, here is the output of garuda-inxi:System:
Kernel: 6.16.8-zen2-1-zen arch: x86_64 bits: 64 compiler: gcc v: 15.2.1
clocksource: hpet avail: acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=f1c8448d-e832-4179-840a-01631969e766 rw rootflags=subvol=@
quiet loglevel=3
Desktop: awesome v: 4.3 vt: 2 dm: GDM v: 49.0.1 Distro: Garuda
base: Arch Linux
Machine:
Type: Laptop System: ASUSTeK product: F80Q v: 1.0
serial: <superuser required>
Mobo: ASUSTeK model: F80Q v: 1.0 serial: <superuser required>
uuid: <superuser required> BIOS: American Megatrends v: 219 date: 04/10/2009
Battery:
ID-1: BAT0 charge: 46.1 Wh (100%) condition: 46.1/48.4 Wh (95.3%)
volts: 12.02 min: 10.8 model: ASUSTEK F80--22 type: Li-ion serial: N/A
charging: status: full cycles: N/A
CPU:
Info: model: Intel Core2 Duo T8100 bits: 64 type: MCP arch: Penryn level: v1
built: 2008 process: Intel 45nm family: 6 model-id: 0x17 (23) stepping: 6
microcode: 0x60F
Topology: cpus: 1x dies: 1 clusters: 1 cores: 2 smt: <unsupported> cache:
L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 3 MiB desc: 1x3 MiB
Speed (MHz): avg: 798 min/max: 800/2101 boost: enabled scaling:
driver: acpi-cpufreq governor: schedutil cores: 1: 798 2: 798 bogomips: 8379
Flags-basic: ht lm nx pae sse sse2 sse3 sse4_1 ssse3 vmx
Vulnerabilities: <filter>
Graphics:
Device-1: Intel Mobile 4 Series Integrated Graphics vendor: ASUSTeK
driver: i915 v: kernel arch: Gen-5 process: Intel 45nm built: 2008 ports:
active: LVDS-1 empty: DP-1,VGA-1 bus-ID: 00:02.0 chip-ID: 8086:2a42
class-ID: 0300
Device-2: Chicony 2.0M UVC Webcam / CNF7129 driver: uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 4-3:2 chip-ID: 04f2:b071
class-ID: 0e02 serial: <filter>
Display: x11 server: X.org with: Xwayland v: 24.1.8 compositor: Picom
v: 12.5 driver: X: loaded: intel unloaded: modesetting alternate: fbdev,vesa
gpu: i915 display-ID: :0 screens: 1
Screen-1: 0 s-res: 1280x800 s-dpi: 96 s-size: 338x211mm (13.31x8.31")
s-diag: 398mm (15.69")
Monitor-1: LVDS-1 mapped: LVDS1 model: AU Optronics 0x4444 built: 2006
res: mode: 1280x800 hz: 60 scale: 100% (1) dpi: 108 gamma: 1.2
size: 300x190mm (11.81x7.48") diag: 358mm (14.1") ratio: 16:10
modes: 1280x800
API: EGL v: 1.5 hw: drv: intel crocus platforms: device: 0 drv: crocus
device: 1 drv: swrast gbm: drv: crocus surfaceless: drv: crocus x11:
drv: crocus inactive: wayland
API: OpenGL v: 4.5 compat-v: 2.1 vendor: intel mesa v: 25.2.3-arch1.2
glx-v: 1.4 direct-render: yes renderer: Mesa Mobile Intel GM45 Express (CTG)
device-ID: 8086:2a42 memory: 1.46 GiB unified: yes
API: Vulkan v: 1.4.321 layers: 5 device: 0 type: cpu name: llvmpipe (LLVM
20.1.8 128 bits) driver: mesa llvmpipe v: 25.2.3-arch1.2 (LLVM 20.1.8)
device-ID: 10005:0000 surfaces: N/A
Info: Tools: api: eglinfo, glxinfo, vulkaninfo
x11: xdpyinfo, xprop, xrandr
Audio:
Device-1: Intel 82801I HD Audio vendor: ASUSTeK driver: snd_hda_intel
v: kernel bus-ID: 00:1b.0 chip-ID: 8086:293e class-ID: 0403
API: ALSA v: k6.16.8-zen2-1-zen status: kernel-api tools: N/A
Server-1: PipeWire v: 1.4.8 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Realtek RTL810xE PCI Express Fast Ethernet vendor: ASUSTeK
driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: d800
bus-ID: 01:00.0 chip-ID: 10ec:8136 class-ID: 0200
IF: enp1s0 state: down mac: <filter>
Device-2: Qualcomm Atheros AR928X Wireless Network Adapter
vendor: AzureWave AW-NE771 802.11bgn driver: ath9k v: kernel pcie: gen: 1
speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0 chip-ID: 168c:002a class-ID: 0280
IF: wlp2s0 state: up mac: <filter>
Info: services: NetworkManager, smbd, sshd, systemd-timesyncd,
wpa_supplicant
Drives:
Local Storage: total: 119.24 GiB used: 28.06 GiB (23.5%)
SMART Message: Required tool smartctl not installed. Check --recommends
ID-1: /dev/sda maj-min: 8:0 vendor: Apacer model: AS350 128GB
size: 119.24 GiB block-size: physical: 512 B logical: 512 B speed: 3.0 Gb/s
tech: SSD serial: <filter> fw-rev: 117D scheme: MBR
Partition:
ID-1: / raw-size: 119.24 GiB size: 119.24 GiB (100.00%)
used: 28.06 GiB (23.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
ID-2: /home raw-size: 119.24 GiB size: 119.24 GiB (100.00%)
used: 28.06 GiB (23.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
ID-3: /var/log raw-size: 119.24 GiB size: 119.24 GiB (100.00%)
used: 28.06 GiB (23.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
ID-4: /var/tmp raw-size: 119.24 GiB size: 119.24 GiB (100.00%)
used: 28.06 GiB (23.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 3.78 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 dev: /dev/zram0
Sensors:
System Temperatures: cpu: 37.0 C mobo: N/A
Fan Speeds (rpm): N/A
Info:
Memory: total: 4 GiB available: 3.78 GiB used: 754 MiB (19.5%)
Processes: 202 Power: uptime: 1m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 1.48 GiB
services: power-profiles-daemon,upowerd Init: systemd v: 258
default: graphical tool: systemctl
Packages: pm: pacman pkgs: 1254 libs: 353 tools: paru Compilers:
gcc: 15.2.1 Shell: Bash v: 5.3.3 running-in: tilix inxi: 3.3.39
Garuda (2.8.3-2):
System install date: 2025-06-19
Garuda release: 250308
Last full system update: 2025-09-23
Is partially upgraded: No
Relevant software: snapper NetworkManager dracut
Windows dual boot: <superuser required>
Failed units:
--- System Health Check Report ---
22/24 checks run in 2.10 seconds ⌛
Powered by garuda-health 🦅
✅ System health check passed. No issues found.
I dont know if its matter or not but xlibre is installed by this github repo. (on both mashines) .
I tested in QEMU with Xorg using the default configuration, and Awesome WM works fine.
The crash only happens when using the themes/configs from lcpz/awesome-copycats.
The problematic line is:
-- Create a wibox for each screen and add it
awful.screen.connect_for_each_screen(function(s) beautiful.at_screen_connect(s) end)
If I comment out this line, the error disappears, but then the top bar (wibox) is not visible at all.