evdevhook2-1.0.2

Introduction to evdevhook2

The evdevhook2 package contains an evdev-based Cemuhook UDP server. Plenty of video game console emulators optionally use a Cemuhook UDP server to retrieve motion data from video game controllers that have gryo sensors. For some controllers, this is required as SDL or Steam Input may map the pitch, yaw, or roll incorrectly, or simply not at all.

The main Cemuhook UDP server has been depricated since Cemu now has its own methods of handling input properly. Many emulators still want the server, despite this deprecation, so this is a modern solution to the problem.

evdevhook2 Dependencies

Required

GLib, libevdev, libgee, and Vala

Optional

UPower

Installation of evdevhook2

Install evdevhook2 by running the following commands:

mkdir build &&
cd    build &&

meson setup --prefix=/usr       \
            --buildtype=release \
            .. &&
ninja

Now, as the root user:

ninja install &&
mv -v /usr/share/doc/evdevhook2{,-1.0.2}

Command Explanations

--buildtype=release: Specify a buildtype suitable for stable releases of the package, as the default may produce unoptimized binaries.

mv -v /usr/share/doc/evdevhook2{,-1.0.2}: This command makes the documentation directory versioned to be consistent with the other documentation directories.

Configuring evdevhook2

Now that evdevhook2 is installed, a normal run of the installed server should suffice, typically. You may wish to configure the server. If so, install it as an unprivileged user:

mkdir -pv ~/.config/evdevhook2 &&
cp -v /usr/share/doc/evdevhook2-1.0.2/ExampleConfig.ini \
      ~/.config/evdevhook2/config.ini

Edit it as you see fit. However, the server won't pick it up unless you pass the path to it as an argument. That means it doesn't matter too much where the configuration file is installed to as long is it can be read from.

Systemd Unit

To start the evdevhook2 server whenever the system is booted, install and enable the following Systemd unit as the root user:

cat > /usr/lib/systemd/system/evdevhook2.service << "EOF" &&
[Unit]
Description=evdevhook2 Cemuhook UDP server

[Service]
Type=exec
ExecStart=/usr/bin/evdevhook2

[Install]
WantedBy=multi-user.target
EOF

systemctl enable evdevhook2

Contents

Installed Programs: evdevhook2
Installed Libraries: None
Installed Directories: None

Short Descriptions

evdevhook2

is an evdev-based Cemuhook UDP server