chromium,chromedriver: 129.0.6668.91 -> 129.0.6668.100
[NixPkgs.git] / pkgs / by-name / sm / smuxi / package.nix
blob72354275e39819eb2a5665d603dc0bf1c83365e7
1 { stdenv
2 , autoconf, automake, itstool, intltool, pkg-config
3 , fetchFromGitHub
4 , glib
5 , gettext
6 , sqlite
7 , mono
8 , stfl
9 , makeWrapper, lib
10 , guiSupport ? true
11 , gtk-sharp-2_0
12 , gdk-pixbuf
13 , pango
16 stdenv.mkDerivation rec {
17   pname = "smuxi";
18   version = "unstable-2023-07-01";
20   runtimeLoaderEnvVariableName = if stdenv.hostPlatform.isDarwin then
21                                    "DYLD_FALLBACK_LIBRARY_PATH"
22                                  else
23                                    "LD_LIBRARY_PATH";
25   src = fetchFromGitHub {
26     owner = "meebey";
27     repo = "smuxi";
28     rev = "3e4b5050b66944532e95df3c31245c8ae6379b3f";
29     hash = "sha256-zSsckcEPEX99v3RkM4O4+Get5tnz4FOpiodoTGTZq+8=";
30     fetchSubmodules = true;
31   };
33   nativeBuildInputs = [ pkg-config makeWrapper ];
34   buildInputs = [ autoconf automake itstool intltool gettext
35     mono
36     stfl ] ++ lib.optionals (guiSupport) [
37       gtk-sharp-2_0
38       # loaded at runtime by GTK#
39       gdk-pixbuf pango
40     ];
42   preConfigure = ''
43     NOCONFIGURE=1 NOGIT=1 ./autogen.sh
44   '';
46   configureFlags = [
47     "--disable-frontend-gnome"
48     "--enable-frontend-stfl"
49   ] ++ lib.optional guiSupport "--enable-frontend-gnome";
51   postInstall = ''
52     makeWrapper "${mono}/bin/mono" "$out/bin/smuxi-message-buffer" \
53       --add-flags "$out/lib/smuxi/smuxi-message-buffer.exe" \
54       --prefix ${runtimeLoaderEnvVariableName} : ${lib.makeLibraryPath [
55                                                   gettext sqlite
56                                                  ]}
58     makeWrapper "${mono}/bin/mono" "$out/bin/smuxi-server" \
59       --add-flags "$out/lib/smuxi/smuxi-server.exe" \
60       --prefix ${runtimeLoaderEnvVariableName} : ${lib.makeLibraryPath [
61                                                   gettext sqlite
62                                                  ]}
64     makeWrapper "${mono}/bin/mono" "$out/bin/smuxi-frontend-stfl" \
65       --add-flags "$out/lib/smuxi/smuxi-frontend-stfl.exe" \
66       --prefix ${runtimeLoaderEnvVariableName} : ${lib.makeLibraryPath [
67                                                   gettext sqlite stfl
68                                                  ]}
70     makeWrapper "${mono}/bin/mono" "$out/bin/smuxi-frontend-gnome" \
71       --add-flags "$out/lib/smuxi/smuxi-frontend-gnome.exe" \
72       --prefix MONO_GAC_PREFIX : ${if guiSupport then gtk-sharp-2_0 else ""} \
73       --prefix ${runtimeLoaderEnvVariableName} : ${lib.makeLibraryPath [
74                                                    gettext
75                                                    glib
76                                                    sqlite
77                                                    gtk-sharp-2_0
78                                                    gtk-sharp-2_0.gtk gdk-pixbuf pango
79                                                   ]}
81     # install log4net and nini libraries
82     mkdir -p $out/lib/smuxi/
83     cp -a lib/log4net.dll $out/lib/smuxi/
84     cp -a lib/Nini.dll $out/lib/smuxi/
86     # install GTK+ icon theme on Darwin
87     ${if guiSupport && stdenv.hostPlatform.isDarwin then "
88       mkdir -p $out/lib/smuxi/icons/
89       cp -a images/Smuxi-Symbolic $out/lib/smuxi/icons/
90     " else ""}
91   '';
93   meta = with lib; {
94     homepage = "https://smuxi.im/";
95     downloadPage = "https://smuxi.im/download/";
96     changelog = "https://github.com/meebey/smuxi/releases/tag/v${version}";
97     description = "irssi-inspired, detachable, cross-platform, multi-protocol (IRC, XMPP/Jabber) chat client for the GNOME desktop";
98     platforms = platforms.unix;
99     license = lib.licenses.gpl2Plus;
100     maintainers = with maintainers; [
101       meebey
102     ];
103   };