69 lines
1.3 KiB
Nix
69 lines
1.3 KiB
Nix
|
{ stdenv
|
||
|
, lib
|
||
|
, fetchurl
|
||
|
, autoPatchelfHook
|
||
|
, wrapGAppsHook
|
||
|
, libusb1
|
||
|
, webkitgtk
|
||
|
, gtk3
|
||
|
, writeShellScript
|
||
|
, makeDesktopItem
|
||
|
, copyDesktopItems
|
||
|
}:
|
||
|
let
|
||
|
desktopItem = makeDesktopItem {
|
||
|
name = "keymapp";
|
||
|
icon = "keymapp";
|
||
|
desktopName = "Keymapp";
|
||
|
categories = [ "Settings" "HardwareSettings" ];
|
||
|
type = "Application";
|
||
|
exec = "keymapp";
|
||
|
};
|
||
|
in
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "keymapp";
|
||
|
version = "1.0.7";
|
||
|
|
||
|
src = fetchurl {
|
||
|
url = "https://oryx.nyc3.cdn.digitaloceanspaces.com/keymapp/keymapp-${version}.tar.gz";
|
||
|
hash = "sha256-BmCLF/4wjBDxToMW0OYqI6PZwqmctgBs7nBygmJ+YOU=";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
copyDesktopItems
|
||
|
autoPatchelfHook
|
||
|
wrapGAppsHook
|
||
|
];
|
||
|
|
||
|
buildInputs = [
|
||
|
libusb1
|
||
|
webkitgtk
|
||
|
gtk3
|
||
|
];
|
||
|
|
||
|
sourceRoot = ".";
|
||
|
|
||
|
installPhase = ''
|
||
|
runHook preInstall
|
||
|
|
||
|
install -m755 -D keymapp "$out/bin/${pname}"
|
||
|
install -Dm644 icon.png "$out/share/pixmaps/${pname}.png"
|
||
|
|
||
|
runHook postInstall
|
||
|
'';
|
||
|
|
||
|
preFixup = ''
|
||
|
gappsWrapperArgs+=(--set-default '__NV_PRIME_RENDER_OFFLOAD' 1)
|
||
|
'';
|
||
|
|
||
|
desktopItems = [ desktopItem ];
|
||
|
|
||
|
meta = with lib; {
|
||
|
homepage = "https://www.zsa.io/flash/";
|
||
|
description = "Application for ZSA keyboards";
|
||
|
maintainers = with lib.maintainers; [ jankaifer shawn8901 ];
|
||
|
platforms = platforms.linux;
|
||
|
license = lib.licenses.unfree;
|
||
|
};
|
||
|
}
|