mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-24 20:02:58 +03:00
Merge branch 'tcl-tkabber-fixup'
This introduces the following changes: * Fixes libPrefix in Tcl libraries I fucked up a few months ago and adds missing meta attributes. * Correctly set TKABBER_SITE_PLUGINS so Tkabber is able to find plugins, if present. * Rely on OPENSSL_X509_CERT_FILE instead of depending on cacert directly. * Introduces a new license called "Tcl/Tk", which applies to some Tcl libraries and is a variation of the BSD license with restrictions regarding governmental use. * New package tclgpg for GPG support in Tkabber.
This commit is contained in:
commit
2c315dee85
@ -1,4 +1,4 @@
|
||||
{stdenv, fetchurl, tkabber}:
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tkabber-plugins-${version}";
|
||||
@ -10,9 +10,12 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
mkdir -p $out/bin
|
||||
sed -e "s@/usr/local@$out@" -i Makefile
|
||||
'';
|
||||
|
||||
buildInputs = [tkabber];
|
||||
meta = {
|
||||
homepage = "http://tkabber.jabber.ru/tkabber-plugins";
|
||||
description = "Plugins for the Tkabber instant messenger";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
};
|
||||
}
|
||||
|
@ -1,6 +1,15 @@
|
||||
{ stdenv, fetchurl, tcl, tk, tcllib, tcltls, bwidget, cacert, makeWrapper, x11 }:
|
||||
{ stdenv, fetchurl, tcl, tk, tcllib, tcltls, tclgpg
|
||||
, bwidget, makeWrapper, x11 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
let
|
||||
tclLibraries = [ bwidget tcllib tcltls tclgpg ];
|
||||
|
||||
getTclLibPath = p: "${p}/lib/${p.libPrefix}";
|
||||
|
||||
tclLibPaths = stdenv.lib.concatStringsSep " "
|
||||
(map getTclLibPath tclLibraries);
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "tkabber-0.11.1";
|
||||
|
||||
src = fetchurl {
|
||||
@ -13,7 +22,7 @@ stdenv.mkDerivation rec {
|
||||
patchPhase = ''
|
||||
substituteInPlace login.tcl --replace \
|
||||
"custom::defvar loginconf(sslcacertstore) \"\"" \
|
||||
"custom::defvar loginconf(sslcacertstore) \"${cacert}/etc/ca-bundle.crt\""
|
||||
"custom::defvar loginconf(sslcacertstore) \$env(OPENSSL_X509_CERT_FILE)"
|
||||
|
||||
sed -i '/^if.*load_default_xrdb/,/^}$/ {
|
||||
s@option readfile \(\[fullpath [^]]*\]\)@option readfile "'"$out/share/doc/tkabber/examples/xrdb/${defaultTheme}.xrdb"'"@
|
||||
@ -26,13 +35,16 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/tkabber --set TCLLIBPATH "${bwidget}/tcltk\ ${tcllib}/lib/tcllib${tcllib.version}\ ${tcltls}/lib/tls${tcltls.version}"
|
||||
wrapProgram $out/bin/tkabber \
|
||||
--set TCLLIBPATH '"${tclLibPaths}"' \
|
||||
--set TKABBER_SITE_PLUGINS '$HOME/.nix-profile/share/tkabber-plugins'
|
||||
'';
|
||||
|
||||
buildInputs = [tcl tk tcllib tcltls bwidget x11 makeWrapper];
|
||||
buildInputs = [ tcl tk x11 makeWrapper ] ++ tclLibraries;
|
||||
|
||||
meta = {
|
||||
homepage = "http://tkabber.jabber.ru/";
|
||||
description = "A GUI client for the XMPP (Jabber) instant messaging protocol";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
};
|
||||
}
|
||||
|
@ -18,6 +18,7 @@ stdenv.mkDerivation {
|
||||
meta = {
|
||||
description = "The Tcl scription language";
|
||||
homepage = http://www.tcl.tk/;
|
||||
license = stdenv.lib.licenses.tcltk;
|
||||
};
|
||||
|
||||
passthru = {
|
||||
|
@ -12,9 +12,19 @@ stdenv.mkDerivation rec {
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
ensureDir "$out/tcltk"
|
||||
cp -R *.tcl lang images "$out/tcltk/"
|
||||
ensureDir "$out/lib/${passthru.libPrefix}"
|
||||
cp -R *.tcl lang images "$out/lib/${passthru.libPrefix}"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
libPrefix = "bwidget${version}";
|
||||
};
|
||||
|
||||
buildInputs = [ tcl ];
|
||||
|
||||
meta = {
|
||||
homepage = "http://tcl.activestate.com/software/tcllib/";
|
||||
description = "The BWidget toolkit is a high-level widget set for Tcl/Tk.";
|
||||
license = stdenv.lib.licenses.tcltk;
|
||||
};
|
||||
}
|
||||
|
37
pkgs/development/libraries/tclgpg/default.nix
Normal file
37
pkgs/development/libraries/tclgpg/default.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ stdenv, fetchsvn, autoconf, automake, tcl, tcllib, gnupg }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tclgpg-${version}";
|
||||
version = "1.0pre";
|
||||
|
||||
src = fetchsvn {
|
||||
url = "http://tclgpg.googlecode.com/svn/trunk";
|
||||
rev = 74;
|
||||
sha256 = "5207b1d246fea6d4527e8c044579dae45a2e31eeaa5633f4f97c7e7b54ec27c5";
|
||||
};
|
||||
|
||||
configureFlags = "--with-tcl=" + tcl + "/lib "
|
||||
+ "--with-tclinclude=" + tcl + "/include ";
|
||||
|
||||
preConfigure = ''
|
||||
configureFlags="--exec_prefix=$prefix $configureFlags"
|
||||
sed -i -e 's|dtplite|TCLLIBPATH="${tcllib}/lib/tcllib${tcllib.version}" &|' Makefile.in
|
||||
autoreconf -vfi
|
||||
'';
|
||||
|
||||
prePatch = ''
|
||||
sed -i -e 's|\[auto_execok gpg\]|"${gnupg}/bin/gpg2"|' tclgpg.tcl
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
libPrefix = "gpg1.0";
|
||||
};
|
||||
|
||||
buildInputs = [ autoconf automake tcl tcllib ];
|
||||
|
||||
meta = {
|
||||
homepage = http://code.google.com/p/tclgpg/;
|
||||
description = "A Tcl interface to GNU Privacy Guard";
|
||||
license = stdenv.lib.licenses.bsd2;
|
||||
};
|
||||
}
|
@ -9,5 +9,15 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "11052fgfmv9vyswzjjgfvh3pi0k3fnfnl9ri6nl4vc6f6z5ry56x";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
libPrefix = "tcllib${version}";
|
||||
};
|
||||
|
||||
buildInputs = [ tcl ];
|
||||
|
||||
meta = {
|
||||
homepage = "http://tcl.activestate.com/software/tcllib/";
|
||||
description = "Tcl-only library of standard routines for Tcl";
|
||||
license = stdenv.lib.licenses.tcltk;
|
||||
};
|
||||
}
|
||||
|
@ -17,5 +17,15 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "adec50143a9ad634a671d24f7c7bbf2455487eb5f12d290f41797c32a98b93f3";
|
||||
};
|
||||
|
||||
passthru = {
|
||||
libPrefix = "tls${version}";
|
||||
};
|
||||
|
||||
buildInputs = [ tcl openssl ];
|
||||
|
||||
meta = {
|
||||
homepage = "http://tls.sourceforge.net/";
|
||||
description = "An OpenSSL / RSA-bsafe Tcl extension";
|
||||
license = stdenv.lib.licenses.tcltk;
|
||||
};
|
||||
}
|
||||
|
@ -176,6 +176,12 @@
|
||||
fullName = "Proprietary (non redistributable) license";
|
||||
};
|
||||
|
||||
tcltk = {
|
||||
shortName = "Tcl/Tk";
|
||||
fullName = "Tcl/Tk license";
|
||||
url = http://www.tcl.tk/software/tcltk/license.html;
|
||||
};
|
||||
|
||||
zlib = {
|
||||
shortName = "zlib";
|
||||
fullName = "zlib license";
|
||||
|
@ -4869,6 +4869,8 @@ let
|
||||
|
||||
tclap = callPackage ../development/libraries/tclap {};
|
||||
|
||||
tclgpg = callPackage ../development/libraries/tclgpg { };
|
||||
|
||||
tcllib = callPackage ../development/libraries/tcllib { };
|
||||
|
||||
tcltls = callPackage ../development/libraries/tcltls { };
|
||||
|
Loading…
Reference in New Issue
Block a user