35 lines
1.2 KiB
Nix
35 lines
1.2 KiB
Nix
{ lib, fetchurl, appimageTools }:
|
|
let
|
|
name = "vial-${version}";
|
|
version = "0.7.1";
|
|
pname = "Vial";
|
|
|
|
src = fetchurl {
|
|
url = "https://github.com/vial-kb/vial-gui/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
|
|
hash = "sha256-pOcrxZ6vbnbdE/H4Kxufxm/ZovaYBXjFpVpKZYV7f3c=";
|
|
};
|
|
|
|
appimageContents = appimageTools.extractType2 { inherit name src; };
|
|
in
|
|
appimageTools.wrapType2 {
|
|
inherit name src;
|
|
|
|
extraInstallCommands = ''
|
|
mv $out/bin/${name} $out/bin/${pname}
|
|
install -m 444 -D ${appimageContents}/${pname}.desktop -t $out/share/applications
|
|
cp -r ${appimageContents}/usr/share/icons $out/share
|
|
|
|
mkdir -p $out/etc/udev/rules.d/ # https://get.vial.today/getting-started/linux-udev.html
|
|
echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0666", TAG+="uaccess", TAG+="udev-acl"' > $out/etc/udev/rules.d/92-viia.rules
|
|
'';
|
|
|
|
meta = {
|
|
description = "An Open-source GUI and QMK fork for configuring your keyboard in real time";
|
|
homepage = "https://get.vial.today";
|
|
license = lib.licenses.gpl2Plus;
|
|
mainProgram = "vial";
|
|
maintainers = with lib.maintainers; [ kranzes ];
|
|
platforms = [ "x86_64-linux" ];
|
|
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
|
|
};
|
|
}
|