nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at release-20.03 92 lines 2.2 kB view raw
1{ stdenv, makeWrapper, fetchurl, dpkg, alsaLib, atk, cairo, cups, dbus, expat 2, fontconfig, freetype, gdk-pixbuf, glib, gnome2, nspr, nss, gtk3, gtk2 3, at-spi2-atk, gsettings-desktop-schemas, gobject-introspection, wrapGAppsHook 4, libX11, libXScrnSaver, libXcomposite, libXcursor, libXdamage, libXext 5, libXfixes, libXi, libXrandr, libXrender, libXtst, libxcb, nghttp2 6, libudev0-shim, glibc, curl, openssl, autoPatchelfHook }: 7 8let 9 runtimeLibs = stdenv.lib.makeLibraryPath [ 10 curl 11 glibc 12 libudev0-shim 13 nghttp2 14 openssl 15 stdenv.cc.cc 16 ]; 17in stdenv.mkDerivation rec { 18 pname = "insomnia"; 19 version = "7.0.5"; 20 21 src = fetchurl { 22 url = 23 "https://github.com/getinsomnia/insomnia/releases/download/v${version}/insomnia_${version}_amd64.deb"; 24 sha256 = "1zcxldfi4rxg7rr6r588blhihyh7ggcdy32vwzjklgq7ihsvx5bs"; 25 }; 26 27 nativeBuildInputs = 28 [ autoPatchelfHook dpkg makeWrapper gobject-introspection wrapGAppsHook ]; 29 30 buildInputs = [ 31 alsaLib 32 at-spi2-atk 33 atk 34 cairo 35 cups 36 dbus 37 expat 38 fontconfig 39 freetype 40 gdk-pixbuf 41 glib 42 gnome2.GConf 43 gnome2.pango 44 gtk2 45 gtk3 46 gsettings-desktop-schemas 47 libX11 48 libXScrnSaver 49 libXcomposite 50 libXcursor 51 libXdamage 52 libXext 53 libXfixes 54 libXi 55 libXrandr 56 libXrender 57 libXtst 58 libxcb 59 nspr 60 nss 61 stdenv.cc.cc 62 ]; 63 64 dontBuild = true; 65 dontConfigure = true; 66 67 unpackPhase = "dpkg-deb -x $src ."; 68 69 installPhase = '' 70 mkdir -p $out/share/insomnia $out/lib $out/bin 71 72 mv usr/share/* $out/share/ 73 mv opt/Insomnia/* $out/share/insomnia 74 mv $out/share/insomnia/*.so $out/lib/ 75 76 ln -s $out/share/insomnia/insomnia $out/bin/insomnia 77 sed -i 's|\/opt\/Insomnia|'$out'/bin|g' $out/share/applications/insomnia.desktop 78 ''; 79 80 preFixup = '' 81 wrapProgram "$out/bin/insomnia" --prefix LD_LIBRARY_PATH : ${runtimeLibs} 82 ''; 83 84 meta = with stdenv.lib; { 85 homepage = "https://insomnia.rest/"; 86 description = "The most intuitive cross-platform REST API Client"; 87 license = licenses.mit; 88 platforms = [ "x86_64-linux" ]; 89 maintainers = with maintainers; [ markus1189 babariviere ]; 90 }; 91 92}