Files

46 lines
1018 B
Nix

{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
installShellFiles,
udev,
coreutils,
}:
rustPlatform.buildRustPackage rec {
pname = "surface-control";
version = "0.5.0-1";
src = fetchFromGitHub {
owner = "linux-surface";
repo = "surface-control";
tag = "v${version}";
hash = "sha256-XPIHGDpq2x+P8i8b4nLlobR/BysdZX+7N9Pu2l/U4Gs=";
};
cargoHash = "sha256-K9nfDIEoI/p8DDKe2sFQjFn12zzb5VhKX4mTc0+Y8dE=";
nativeBuildInputs = [
pkg-config
installShellFiles
];
buildInputs = [ udev ];
postInstall = ''
installShellCompletion \
$releaseDir/build/surface-*/out/surface.{bash,fish} \
--zsh $releaseDir/build/surface-*/out/_surface
'';
meta = {
description = "Control various aspects of Microsoft Surface devices on Linux from the Command-Line";
homepage = "https://github.com/linux-surface/surface-control";
license = lib.licenses.mit;
maintainers = [ ];
platforms = lib.platforms.linux;
mainProgram = "surface";
};
}