fusuma: enable "essential" plugins

Specifically the following plugins:

    fusuma-plugin-appmatcher
    fusuma-plugin-keypress
    fusuma-plugin-sendkey
    fusuma-plugin-tap
    fusuma-plugin-wmctrl

I've not enabled the other plugins available on rubygems for the
following reasons:

  * remap : seems niche functionality and requires further configuration
            to grant the user access permissions to event devices

  * thumbsense : pulls in remap (see above)

  * touchscreen : I've no way of testing.  Note: enabling didn't appear
                  to cause any problems.

Ideally the plugin functionality would be made available as separate
pkgs, but that would require patching Fusuma to search outside of the
Gem directory.  Enabling this subset of packages for what appears to be
widely useful functionality seems a good option.
This commit is contained in:
ebardie 2023-08-18 17:24:55 +01:00 committed by Weijia Wang
parent 41f6c3ff5a
commit 6d30f6d579
4 changed files with 125 additions and 1 deletions

View file

@ -379,6 +379,7 @@ The module update takes care of the new config syntax and the data itself (user
If you use this feature, updates to CoreDNS may require updating `vendorHash` by following these steps again.
- `fusuma` now enables the following plugins: [appmatcher](https://github.com/iberianpig/fusuma-plugin-appmatcher), [keypress](https://github.com/iberianpig/fusuma-plugin-keypress), [sendkey](https://github.com/iberianpig/fusuma-plugin-sendkey), [tap](https://github.com/iberianpig/fusuma-plugin-tap) and [wmctrl](https://github.com/iberianpig/fusuma-plugin-wmctrl).
## Nixpkgs internals {#sec-release-23.11-nixpkgs-internals}

View file

@ -1,2 +1,17 @@
source 'https://rubygems.org'
gem "fusuma"
gem "fusuma-plugin-appmatcher"
gem "fusuma-plugin-keypress"
gem "fusuma-plugin-sendkey"
gem "fusuma-plugin-tap"
gem "fusuma-plugin-wmctrl"
# I've not activated the following plugins for the reasons given below.
# touchscreen needs specific h/w support I don't have access to, so I can't confirm
# if it's problem free. A quick check didn't reveal any problems.
#gem "fusuma-plugin-touchscreen"
# thumbsense pulls in remap, and at best remap requires further configuration to allow the use access to event devices.
#gem "fusuma-plugin-thumbsense"
#gem "fusuma-plugin-remap"

View file

@ -2,12 +2,34 @@ GEM
remote: https://rubygems.org/
specs:
fusuma (3.1.0)
fusuma-plugin-appmatcher (0.6.0)
fusuma (~> 3.0)
rexml
ruby-dbus
fusuma-plugin-keypress (0.8.0)
fusuma (~> 2.0)
fusuma-plugin-sendkey (0.10.1)
fusuma (~> 3.1)
revdev
fusuma-plugin-tap (0.4.2)
fusuma (~> 2.0)
fusuma-plugin-wmctrl (1.3.1)
fusuma (~> 3.1)
revdev (0.2.1)
rexml (3.2.5)
ruby-dbus (0.19.0)
rexml
PLATFORMS
ruby
DEPENDENCIES
fusuma
fusuma-plugin-appmatcher
fusuma-plugin-keypress
fusuma-plugin-sendkey
fusuma-plugin-tap
fusuma-plugin-wmctrl
BUNDLED WITH
2.1.4
2.4.6

View file

@ -9,4 +9,90 @@
};
version = "3.1.0";
};
fusuma-plugin-appmatcher = {
dependencies = ["fusuma" "rexml" "ruby-dbus"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "28e8c59d5984a5723510f19868c37c363bec93e51f6cb7a573170cf7f5b9189f";
type = "gem";
};
version = "0.6.0";
};
fusuma-plugin-keypress = {
dependencies = ["fusuma"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "045c1820d909307abb1d232c0cf26bbd88eafa0453004124c07b15fff5d680de";
type = "gem";
};
version = "0.8.0";
};
fusuma-plugin-sendkey = {
dependencies = ["fusuma" "revdev"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "f792fec194b611d5d79b93b6694876292c43bee55635d9422f885b6509eeb765";
type = "gem";
};
version = "0.10.1";
};
fusuma-plugin-tap = {
dependencies = ["fusuma"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0jlw08iw20fpykjglzj4c2fy3z13zsnmi63zbfpn0gmvs05869ys";
type = "gem";
};
version = "0.4.2";
};
fusuma-plugin-wmctrl = {
dependencies = ["fusuma"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "067939b2d8b99cf8fce43be40341cda3de3371596a8a4fb24eb13ca84c0bffe5";
type = "gem";
};
version = "1.3.1";
};
revdev = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1b6zg6vqlaik13fqxxcxhd4qnkfgdjnl4wy3a1q67281bl0qpsz9";
type = "gem";
};
version = "0.2.1";
};
rexml = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "08ximcyfjy94pm1rhcx04ny1vx2sk0x4y185gzn86yfsbzwkng53";
type = "gem";
};
version = "3.2.5";
};
ruby-dbus = {
dependencies = ["rexml"];
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "18zbsr03drpx7mknm927i2kz5b49s0lwmrbmsdknfa674z0xy6sm";
type = "gem";
};
version = "0.19.0";
};
}