netevent(1)
π¦ Name π¦
okay so bestie, meet netevent from the netevent Manual β it's the icon for showing, sharing, and cloning evdev event devices. literally the whole vibe is event devices, but make them shareable π
.
π SYNOPSIS π
netevent show DEVICE [COUNT]
netevent cat [OPTIONS] DEVICE
netevent create [OPTIONS] DEVICE
netevent daemon [OPTIONS] SOCKETNAME
netevent command SOCKETNAME COMMAND
β¨ OPTIONS β¨
Some options can be used on multiple commands.
π All subcommands π
-h,--helpβ show a short usage message.-V,--versionβ show theneteventversion string.
π netevent create π
--duplicates=MODEβ change how duplicate devices are treated.MODEcan be:rejectβ the default. If a device with an already existing ID is received, treat this as an error and exit.resumeβ assume the source was restarted and is sending the same device again. Currently this does not verify whether that's actually the case.replaceβ remove the previous device and replace it with the new one. Sinceresumedoes not verify the device, this is the preferred mode if the destination event device node does not need to be persistent.
--listen=SOCKETNAMEβ rather than reading from stdin, listen on the specified unix (or abstract if prefixed with"@") socket.--connectβ used together with--listen, this causesneteventto first try to connect to the socket. If successful, it'll pass events through to the instance it connected to. Otherwise, if--daemonizewas also specified, it'll fork off a new instance to which it connects first. If--daemonizewas not specified, it'll return an error code.--on-close=end|acceptβ when using--listen, this option decides how to proceed after a client disconnects. The default is to accept a new client and resume according to the configured--duplicatesmode. Alternatively,endcan be used to cause the main loop to exit successfully.--daemonizeβ run as a background daemon. When using--listenit may also be desirable to runneteventin the background.
π« netevent cat and netevent create π«
-l,--legacyβ use anetevent1 compatible protocol.--no-legacyβ use anetevent2 compatible protocol. This is the default.
π«Ά netevent cat and netevent show π«Ά
-g,--grabβ grab the input device to prevent it from also firing events on the system. This is the default.-G,--no-grabβ do not grab the input device.
π§ netevent daemon π§
-s,--source=FILEβ run commands from the specified file. Can be specified multiple times. This can be used to fully setup the daemon with outputs, devices and hotkeys. See the DAEMON COMMANDS section for details.
π DAEMON COMMANDS π
action set EVENT COMMANDβ queue a command when an event occurs. The command can contain semicolons to execute multiple commands. Multiple parameters will be concatenated with a space.
The following events currently exist:
output-changedβ executed on ausecommand or when an output device fails and a fallback is being activated.write-changedβ executed whenever thewrite-eventscommand is used.grab-changedβ executed whenever thegrab-devicescommand is used.device-lostβ executed whenever a device we are reading from disappears.
These commands are executed immediately after such an event has occurred. Note that there's nothing preventing you from building an endless loop by adding event-triggering commands in this place, so, just don't. π
action remove EVENTβ remove a command bound to an event.nopβ nothing. Bind as hotkey to ignore an event and be explicit about it.grab-devices on|off|toggleβ set the grabbing state. Controls whether events are also fired locally.write-events on|off|toggleβ set the writing state. Controls whether events are passed to the current output.grab on|off|toggleβ deprecated. This is the old command which has been superseded by the pairgrab-devicesandwrite-events.use OUTPUTβ set the current output.output add [--resume] OUTPUT_NAME OUTPUT_SPECβ add a new output.OUTPUT_NAMEcan be an arbitrary name used later foroutput removeorusecommands.OUTPUT_SPECcan currently be either a file/fifo, a command to pipe to when prefixed withexec:, or the name of a unix or abstract socket when usingunix:/pathorunix:@abstractName. See the examples above.
If the --resume parameter is provided, assume the destination already knows all the existing devices and do not recreate them.
output remove OUTPUT_NAMEβ remove an existing output.output use OUTPUT_NAMEβ long version ofuse OUTPUT_NAME.exec COMMANDβ execute a command. Mostly useful for hotkeys.exec& COMMANDβ execute a command in the background.source FILEβ execute daemon commands from a file.quitβ cause the daemon to quit.hotkey add DEVICE_NAME EVENT COMMANDβ add a hotkey to an existing device.DEVICEis the name used when adding the device viadevice add.EVENTis an event specification of the formTYPE:CODE:VALUE, as printed out bynetevent show.COMMANDis a daemon command to be executed when the event is read.hotkey remove DEVICE_NAME EVDENTβ remove a hotkey for an event on a device. yes bestie, it literally saysEVDENTin the original, and I'm keeping it exactly π.device add DEVICE_NAME EVENT_DEVICE_FILEβ register anevdevdevice.device remove DEVICE_NAMEβ remove anevdevdevice.device rename DEVICE_NAME NEW_NAMEβ rename a device. Useful when adding output of which the devices should have a recognizable name.device reset-name DEVICE_NAMEβ reset a device's name to its default.device set-persistent DEVICE_NAME BOOLβ change whether a device's removal should be announced to the outputs.infoβ show current inputs, outputs, devices and hotkeys.
πΈ DAEMON ENVIRONMENT VARIABLES πΈ
The daemon will maintain the following environment variables to provide some information to commands executed via an exec hotkey:
NETEVENT_OUTPUT_NAMEβ this will contain the name of the output currently in use.NETEVENT_GRABBINGβ this will be"1"if the daemon is currently grabbing, or"0"if it is not. Note that with multiple input devices, failure to grab an input device will cause this variable to be in an undefined state. π«NETEVENT_WRITINGβ this will be"1"if the daemon is currently writing, or"0"if it is not.
π KNOWN INTERACTIONS WITH X11 π
When using the synaptics X11 driver, it can be configured to grab event devices, which will prevent netevent from grabbing them. You may need to change the GrabEventDevice option in your xorg.conf.
π BUGS π
Please report bugs to via <https://github.com/Blub/netevent/issues>. π
π Author π
Wolfgang Bumiller
okay that's the whole page, bestie π footer check: it's just netevent(1), the netevent Manual name is folded up top, and this copy has no separate version or date stamp, so no date to give you. byeeeeee π
β¨
π¦ where this page comes from
- nixos 26.05: netevent 20230429
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms