mirror of
https://github.com/libratbag/libratbag.git
synced 2026-11-07 23:23:52 +01:00
81 lines
2.9 KiB
Markdown
81 lines
2.9 KiB
Markdown
ratbagd
|
|
=======
|
|
|
|
ratbagd is a system daemon to introspect and modify configurable mice.
|
|
|
|
ratbagd uses libratbag to access mice and exports the features over a DBus
|
|
API to unprivileged proceses. ratbagd needs permissions to access device
|
|
nodes (primarily /dev/hidraw nodes) and usually needs to run as root.
|
|
|
|
ratbagd is a relatively thin wrapper arond libratbag. If a device is not
|
|
detected or does not function as expected, the issue is usually in
|
|
libratbag. libratbag can be found at
|
|
https://github.com/libratbag/libratbag
|
|
|
|
|
|
Running ratbagd
|
|
---------------
|
|
|
|
ratbagd is intended to run as dbus-activated systemd service. This requires
|
|
installation of the following files:
|
|
|
|
sudo cp dbus/org.freedesktop.ratbag1.conf /etc/dbus-1/system.d/org.freedesktop.ratbag1.conf
|
|
sudo cp dbus/org.freedesktop.ratbag1.service /etc/dbus-1/systemd-services/org.freedesktop.ratbag1.conf
|
|
sudo cp ratbagd.service /etc/systemd/system/ratbagd.service
|
|
|
|
The files are installed into the prefix by make install, see also the
|
|
configure switches ---with-systemd-unit-dir and --with-dbus-root-dir.
|
|
Developers are encouraged to simply symlink to the files in the git
|
|
repository.
|
|
|
|
For the files to take effect, you should run
|
|
sudo systemctl daemon-reload
|
|
sudo systemctl reload dbus.service
|
|
|
|
And finally, to enable the service:
|
|
sudo systemctl enable ratbagd.service
|
|
|
|
This places the required symlink into the systemd directory so that dbus
|
|
activation is possible.
|
|
|
|
Compiling ratbagd
|
|
-----------------
|
|
|
|
ratbagd needs systemd >= 227. If you are running Fedora 23, you might find the
|
|
following instruction valuable:
|
|
|
|
Download systemd v229 (master caused troubles with gcrypt and gpg-error last
|
|
time I tried).
|
|
|
|
$ git clone --branch v229 https://github.com/systemd/systemd
|
|
|
|
|
|
Configure it with:
|
|
|
|
$ ./autogen.sh && ./configure --prefix=/opt/systemd \
|
|
--libdir=/opt/systemd/lib \
|
|
--disable-gcrypt \
|
|
--without-bashcompletiondir \
|
|
--with-rootprefix=/opt/systemd \
|
|
--with-sysvinit-path=/opt/systemd/etc \
|
|
--with-sysvrcnd-path=/opt/systemd/etc/rc.d
|
|
|
|
Then run make and make install.
|
|
|
|
In ratbagd, you will need to add the newly installed libsystemd in the
|
|
pkg_config path:
|
|
|
|
$ PKG_CONFIG_PATH=/opt/systemd/lib/pkgconfig ./configure
|
|
|
|
License
|
|
-------
|
|
|
|
ratbagd is licensed under the MIT license.
|
|
|
|
> Permission is hereby granted, free of charge, to any person obtaining a
|
|
> copy of this software and associated documentation files (the "Software"),
|
|
> to deal in the Software without restriction, including without limitation
|
|
> the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
> and/or sell copies of the Software, and to permit persons to whom the
|
|
> Software is furnished to do so, subject to the following conditions: [...]
|