21e3ff658a
Scilab note: the parameters already had pointed to nonexistent dirs before this set of refactoring. But that config wasn't even used by default.
73 lines
1.9 KiB
Nix
73 lines
1.9 KiB
Nix
{ stdenv, fetchurl, tcl, tk, tcllib, tcltls, tclgpg
|
|
, bwidget, makeWrapper, xlibsWrapper
|
|
, withSitePlugins ? true
|
|
, theme ? null
|
|
}:
|
|
|
|
with stdenv.lib;
|
|
|
|
let
|
|
version = "1.1";
|
|
|
|
main = {
|
|
name = "tkabber";
|
|
sha256 = "1ip0mi2icqkjxiam4qj1qcynnz9ck1ggzcbcqyjj132hakd855a2";
|
|
};
|
|
|
|
plugins = {
|
|
name = "tkabber-plugins";
|
|
sha256 = "1dr12rh4vs1w1bga45k4ijgxs39801c1k4z3b892pn1dwv84il5y";
|
|
};
|
|
|
|
tclLibraries = [ bwidget tcllib tcltls tclgpg ];
|
|
|
|
getTclLibPath = p: "${p}/lib/${p.libPrefix}";
|
|
|
|
tclLibPaths = stdenv.lib.concatStringsSep " "
|
|
(map getTclLibPath tclLibraries);
|
|
|
|
mkTkabber = attrs: stdenv.mkDerivation (rec {
|
|
name = "${attrs.name}-${version}";
|
|
|
|
src = fetchurl {
|
|
url = "http://files.jabber.ru/tkabber/${name}.tar.xz";
|
|
inherit (attrs) sha256;
|
|
};
|
|
|
|
prePatch = ''
|
|
sed -e "s@/usr/local@$out@" -i Makefile
|
|
'';
|
|
} // removeAttrs attrs [ "name" "sha256" ]);
|
|
|
|
in mkTkabber (main // {
|
|
postPatch = ''
|
|
substituteInPlace login.tcl --replace \
|
|
"custom::defvar loginconf(sslcacertstore) \"\"" \
|
|
"custom::defvar loginconf(sslcacertstore) \$env(SSL_CERT_FILE)"
|
|
'' + optionalString (theme != null) ''
|
|
themePath="$out/share/doc/tkabber/examples/xrdb/${theme}.xrdb"
|
|
sed -i '/^if.*load_default_xrdb/,/^}$/ {
|
|
s@option readfile \(\[fullpath [^]]*\]\)@option readfile "'"$themePath"'"@
|
|
}' tkabber.tcl
|
|
'';
|
|
|
|
postInstall = ''
|
|
for prog in $out/bin/*; do
|
|
wrapProgram "$prog" \
|
|
--prefix PATH : "${tk}/bin" \
|
|
--set TCLLIBPATH '"${tclLibPaths}"' \
|
|
${optionalString withSitePlugins ''
|
|
--set TKABBER_SITE_PLUGINS '${mkTkabber plugins}/share/tkabber-plugins'
|
|
''}
|
|
done
|
|
'';
|
|
|
|
buildInputs = [ tcl tk xlibsWrapper makeWrapper ] ++ tclLibraries;
|
|
|
|
meta = {
|
|
homepage = "http://tkabber.jabber.ru/";
|
|
description = "A GUI XMPP (Jabber) client written in Tcl/Tk";
|
|
license = stdenv.lib.licenses.gpl2;
|
|
};
|
|
})
|