nixpkgs/pkgs/development/tools/misc/saleae-logic-2/default.nix
2021-10-21 19:58:30 +02:00

75 lines
1.8 KiB
Nix

{ lib, fetchurl, makeDesktopItem, appimageTools, gtk3 }:
let
name = "saleae-logic-2";
version = "2.3.38";
src = fetchurl {
url = "https://downloads.saleae.com/logic2/Logic-${version}-master.AppImage";
sha256 = "0y3ys3q6gd9fxgaf36q5av0kgvy7jv5anyjxb4cva8d95l4k3ask";
};
desktopItem = makeDesktopItem {
inherit name;
exec = name;
icon = "Logic";
comment = "Software for Saleae logic analyzers";
desktopName = "Saleae Logic";
genericName = "Logic analyzer";
categories = "Development";
};
in
appimageTools.wrapType2 {
inherit name src;
extraInstallCommands =
let
appimageContents = appimageTools.extractType2 { inherit name src; };
in
''
mkdir -p $out/etc/udev/rules.d
cp ${appimageContents}/resources/linux/99-SaleaeLogic.rules $out/etc/udev/rules.d/
mkdir -p $out/share/pixmaps
ln -s ${desktopItem}/share/applications $out/share/
cp ${appimageContents}/usr/share/icons/hicolor/256x256/apps/Logic.png $out/share/pixmaps/Logic.png
'';
profile = ''
export XDG_DATA_DIRS="${gtk3}/share/gsettings-schemas/${gtk3.name}''${XDG_DATA_DIRS:+:"''$XDG_DATA_DIRS"}"
'';
extraPkgs = pkgs: with pkgs; [
wget
unzip
glib
xorg.libX11
xorg.libxcb
xorg.libXcomposite
xorg.libXcursor
xorg.libXdamage
xorg.libXext
xorg.libXfixes
xorg.libXi
xorg.libXrender
xorg.libXtst
nss
nspr
dbus
gdk-pixbuf
gtk3
pango
atk
cairo
expat
xorg.libXrandr
xorg.libXScrnSaver
alsa-lib
at-spi2-core
cups
];
meta = with lib; {
homepage = "https://www.saleae.com/";
description = "Software for Saleae logic analyzers";
license = licenses.unfree;
platforms = [ "x86_64-linux" ];
maintainers = [ maintainers.j-hui ];
};
}