iberianpig/fusuma · error
libinput list-devices failed with output: #{o}
Error message
libinput list-devices failed with output: #{o} What it means
Error "libinput list-devices failed with output: #{o}" thrown in iberianpig/fusuma.
Source
Thrown at lib/fusuma/libinput_command.rb:49
# @return [String]
#: () -> String?
def version
# version_command prints "1.6.3\n"
@version ||= `#{version_command}`.strip
end
# @yieldparam [String] gives a line in libinput list-devices output to the block
#: () { (String) -> void } -> void
def list_devices(&block)
cmd = list_devices_command
unless @logged_list_devices
MultiLogger.debug(list_devices: cmd)
@logged_list_devices = true
end
o, _, s = Open3.capture3(cmd)
unless s.success?
raise "libinput list-devices failed with output: #{o}"
end
o.each_line(&block)
end
# @return [Integer] return a latest line libinput debug-events
#: (StringIO) -> Array[untyped]
def debug_events(writer)
Open3.pipeline_start([debug_events_with_options], ["grep -v POINTER_ --line-buffered"], out: writer, in: "/dev/null")
end
# @return [String] command
# @raise [SystemExit]
#: () -> String?
def version_command
if @libinput_command
"#{@libinput_command} --version"
elsif @debug_events_command && @list_devices_commandView on GitHub (pinned to 43a7eb04fe)
Solutions
- Verify libinput is installed and that libinput list-devices runs successfully in a terminal.
- Run fusuma with sufficient privileges: add your user to the input group (sudo gpasswd -a USER input) and re-login.
- Run the failing command shown in the debug log manually to see the underlying error.
When it happens
Trigger: Thrown at lib/fusuma/libinput_command.rb:49 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of iberianpig/fusuma@43a7eb04fe (2026-08-23).
Data as JSON: /api/errors/8d11c9989f27ffdc.
Report an issue: GitHub.