Buenas!
Estoy trasteando con el awesomeWM en un arch, y me da problemas el archivo
/home/usuario/.config/awesome/module/battery_widget/init.lua:125 , resulta que "attempt to nil"
Inicia bien pero no me deja hacer nada salvo "quit" , ni nada.
Entiendo que hay una referencia que esta devolviendo nil cuando no deberia ser asi.
He buscado y no es un error raro, el problema es que las soluciones que he encontrado son para otras lineas y no soy tan avanzado como para saber si realmente es el mismo problema o no.
Como extra estoy intentando usar el awesome de este repo https://github.com/rxyhn/dotfiles
UPDATE: He probado a instalarlo en una maquina virtual y el resultado es exactamente el mismo. Seguire reportando
UPDATE2: he estado mirando e investigando sobre upower que parece ser que es el responsable de que el update (o esa linea es lo que pone) no se este ejecutando.
He visto que no esta anyadido al path, podria ser eso?
UPDATE3 parece ser que el field 'device' es el que devuelve null, por alguna razon no debe estar detectando bien algo en upower....
pongo el trozo de codigo correspondiente.
95 │ --- battery_widget constructor.
96 │ --
97 │ -- This function creates a new `battery_widget` instance. This widget watches
98 │ -- the `display_device` status and report.
99 │ -- @tparam table args The arguments table.
100 │ -- @tparam[opt] widget args.widget_template The widget template to use to
101 │ -- create the widget instance.
102 │ -- @tparam[opt] string args.device_path Path of the device to monitor.
103 │ -- @tparam[opt=false] boolean args.use_display_device Should the widget monitor
104 │ -- the _display device_?
105 │ -- @tparam[opt] boolean args.instant_update Call an update cycle right after the
106 │ -- widget creation.
107 │ -- @treturn battery_widget The battery_widget instance build.
108 │ -- @constructorfct battery_widget.new
109 │ function battery_widget.new (args)
110 │ args = gtable.crush({
111 │ widget_template = default_template(),
112 │ device_path = '',
113 │ use_display_device = false
114 │ }, args or {})
115 │
116 │ local widget = wbase.make_widget_from_value(args.widget_template)
117 │
118 │ widget.device = args.use_display_device
119 │ and upower.Client():get_display_device()
120 │ or battery_widget.get_device(args.device_path)
121 │
122 │ -- Attach signals:
123 │ widget.device.on_notify = function (d)
124 │ widget:emit_signal('upower::update', d)
125 │ end
126 │
127 │ -- Call an update cycle if the user asked to instan update the widget.
128 │ if args.instant_update then
129 │ gtimer.delayed_call(widget.emit_signal, widget, 'upower::update', widget.device)
130 │ end
131 │
132 │ return widget
133 │ end
134 │
135 │
136 │ function mt.__call(self, ...)
137 │ return battery_widget.new(...)
138 │ end
139 │
140 │ return setmetatable(battery_widget, mt)
Meto tambien un copypaste de neofetch para que tengais especificaciones extra por si fuese necesarias.
OS: Arch Linux x86_64
Kernel: 5.17.9-arch1-1
Uptime: 10 mins
Packages: 928 (pacman)
Shell: bash 5.1.16
Resolution: 1920x1080
DE: GNOME 42.1
WM: Mutter
WM Theme: Adwaita
Theme: Adwaita [GTK2/3]
Icons: Adwaita [GTK2/3]
Terminal: kitty
CPU: Intel i7-6700K (8) @ 4.200GHz
GPU: NVIDIA GeForce GTX 1070
Memory: 1392MiB / 15966MiB
Gracias de antemano!