mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-20 16:39:31 +03:00
inputplumber: init at 0.39.2
This commit is contained in:
parent
08c8596555
commit
11d10df01a
4 changed files with 88 additions and 0 deletions
|
@ -50,6 +50,8 @@
|
||||||
|
|
||||||
- [nvidia-gpu](https://github.com/utkuozdemir/nvidia_gpu_exporter), a Prometheus exporter that scrapes `nvidia-smi` for GPU metrics. Available as [services.prometheus.exporters.nvidia-gpu](#opt-services.prometheus.exporters.nvidia-gpu.enable).
|
- [nvidia-gpu](https://github.com/utkuozdemir/nvidia_gpu_exporter), a Prometheus exporter that scrapes `nvidia-smi` for GPU metrics. Available as [services.prometheus.exporters.nvidia-gpu](#opt-services.prometheus.exporters.nvidia-gpu.enable).
|
||||||
|
|
||||||
|
- [InputPlumber](https://github.com/ShadowBlip/InputPlumber/), an open source input router and remapper daemon for Linux. Available as [services.inputplumber](#opt-services.inputplumber.enable).
|
||||||
|
|
||||||
- [Buffyboard](https://gitlab.postmarketos.org/postmarketOS/buffybox/-/tree/master/buffyboard), a framebuffer on-screen keyboard. Available as [services.buffyboard](option.html#opt-services.buffyboard).
|
- [Buffyboard](https://gitlab.postmarketos.org/postmarketOS/buffybox/-/tree/master/buffyboard), a framebuffer on-screen keyboard. Available as [services.buffyboard](option.html#opt-services.buffyboard).
|
||||||
|
|
||||||
- [KanBoard](https://github.com/kanboard/kanboard), a project management tool that focuses on the Kanban methodology. Available as [services.kanboard](#opt-services.kanboard.enable).
|
- [KanBoard](https://github.com/kanboard/kanboard), a project management tool that focuses on the Kanban methodology. Available as [services.kanboard](#opt-services.kanboard.enable).
|
||||||
|
|
|
@ -604,6 +604,7 @@
|
||||||
./services/hardware/handheld-daemon.nix
|
./services/hardware/handheld-daemon.nix
|
||||||
./services/hardware/hddfancontrol.nix
|
./services/hardware/hddfancontrol.nix
|
||||||
./services/hardware/illum.nix
|
./services/hardware/illum.nix
|
||||||
|
./services/hardware/inputplumber.nix
|
||||||
./services/hardware/interception-tools.nix
|
./services/hardware/interception-tools.nix
|
||||||
./services/hardware/iptsd.nix
|
./services/hardware/iptsd.nix
|
||||||
./services/hardware/irqbalance.nix
|
./services/hardware/irqbalance.nix
|
||||||
|
|
37
nixos/modules/services/hardware/inputplumber.nix
Normal file
37
nixos/modules/services/hardware/inputplumber.nix
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.inputplumber;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.services.inputplumber = {
|
||||||
|
enable = lib.mkEnableOption "InputPlumber";
|
||||||
|
package = lib.mkPackageOption pkgs "inputplumber" { };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
|
systemd.services.inputplumber = {
|
||||||
|
description = "InputPlumber Service";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
environment = {
|
||||||
|
XDG_DATA_DIRS = "/run/current-system/sw/share";
|
||||||
|
};
|
||||||
|
restartIfChanged = true;
|
||||||
|
|
||||||
|
serviceConfig = {
|
||||||
|
ExecStart = "${lib.getExe cfg.package}";
|
||||||
|
Restart = "on-failure";
|
||||||
|
RestartSec = "5";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [ shadowapex ];
|
||||||
|
}
|
48
pkgs/by-name/in/inputplumber/package.nix
Normal file
48
pkgs/by-name/in/inputplumber/package.nix
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
rustPlatform,
|
||||||
|
fetchFromGitHub,
|
||||||
|
pkg-config,
|
||||||
|
udev,
|
||||||
|
libiio,
|
||||||
|
libevdev,
|
||||||
|
}:
|
||||||
|
|
||||||
|
rustPlatform.buildRustPackage rec {
|
||||||
|
pname = "inputplumber";
|
||||||
|
version = "0.39.2";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "ShadowBlip";
|
||||||
|
repo = "InputPlumber";
|
||||||
|
rev = "refs/tags/v${version}";
|
||||||
|
hash = "sha256-Glq7iJ1AHy99AGXYg5P3wAd3kAMJnt5P2vZzyn7qBY4=";
|
||||||
|
};
|
||||||
|
|
||||||
|
useFetchCargoVendor = true;
|
||||||
|
cargoHash = "sha256-pcbW/Od5f+hFCrVpH2yioq+qCmlZ1m3TbUc6rBkYCEs=";
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
pkg-config
|
||||||
|
rustPlatform.bindgenHook
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = [
|
||||||
|
udev
|
||||||
|
libevdev
|
||||||
|
libiio
|
||||||
|
];
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
cp -r rootfs/usr/* $out/
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Open source input router and remapper daemon for Linux";
|
||||||
|
homepage = "https://github.com/ShadowBlip/InputPlumber";
|
||||||
|
license = lib.licenses.gpl3Plus;
|
||||||
|
changelog = "https://github.com/ShadowBlip/InputPlumber/releases/tag/v${version}";
|
||||||
|
maintainers = with lib.maintainers; [ shadowapex ];
|
||||||
|
mainProgram = "inputplumber";
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue