pytrainer: unpin python 3.10
[NixPkgs.git] / pkgs / by-name / ex / exodus / package.nix
blob09759bb7e5ff9867e0520e2bac6875c2b39a27dc
2   stdenv,
3   lib,
4   requireFile,
5   unzip,
6   glib,
7   systemd,
8   nss,
9   nspr,
10   gtk3-x11,
11   pango,
12   atk,
13   cairo,
14   gdk-pixbuf,
15   xorg,
16   xorg_sys_opengl,
17   util-linux,
18   alsa-lib,
19   dbus,
20   at-spi2-atk,
21   cups,
22   vivaldi-ffmpeg-codecs,
23   libpulseaudio,
24   at-spi2-core,
25   libxkbcommon,
26   mesa,
29 stdenv.mkDerivation (finalAttrs: {
30   pname = "exodus";
31   version = "24.41.3";
33   src = requireFile {
34     name = "exodus-linux-x64-${finalAttrs.version}.zip";
35     url = "https://downloads.exodus.com/releases/exodus-linux-x64-${finalAttrs.version}.zip";
36     hash = "sha256-cq8vHE/wAGRu20F3N3q9F+JXLV8VgGbo5JE9Q2OFuMw=";
37   };
39   nativeBuildInputs = [ unzip ];
41   installPhase = ''
42     mkdir -p $out/bin $out/share/applications
43     cp -r . $out
44     ln -s $out/Exodus $out/bin/Exodus
45     ln -s $out/bin/Exodus $out/bin/exodus
46     ln -s $out/exodus.desktop $out/share/applications
47     substituteInPlace $out/share/applications/exodus.desktop \
48           --replace 'Exec=bash -c "cd \`dirname %k\` && ./Exodus %u"' "Exec=Exodus %u"
49   '';
51   dontPatchELF = true;
52   dontBuild = true;
54   preFixup =
55     let
56       libPath = lib.makeLibraryPath [
57         glib
58         nss
59         nspr
60         gtk3-x11
61         pango
62         atk
63         cairo
64         gdk-pixbuf
65         xorg.libX11
66         xorg.libxcb
67         xorg.libXcomposite
68         xorg.libXcursor
69         xorg.libXdamage
70         xorg.libXext
71         xorg.libXfixes
72         xorg.libXi
73         xorg.libXrender
74         xorg.libxshmfence
75         xorg.libXtst
76         xorg_sys_opengl
77         util-linux
78         xorg.libXrandr
79         xorg.libXScrnSaver
80         alsa-lib
81         dbus.lib
82         at-spi2-atk
83         at-spi2-core
84         cups.lib
85         libpulseaudio
86         systemd
87         vivaldi-ffmpeg-codecs
88         libxkbcommon
89         mesa
90       ];
91     in
92     ''
93       patchelf \
94         --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
95         --set-rpath "${libPath}" \
96         $out/Exodus
97     '';
99   meta = with lib; {
100     homepage = "https://www.exodus.io/";
101     description = "Top-rated cryptocurrency wallet with Trezor integration and built-in Exchange";
102     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
103     license = licenses.unfree;
104     platforms = platforms.linux;
105     maintainers = with maintainers; [
106       mmahut
107       rople380
108       Crafter
109     ];
110   };