Adding OneTeam XMPP client

svn path=/nixpkgs/trunk/; revision=27553
This commit is contained in:
Michael Raskin 2011-06-28 09:45:09 +00:00
parent e324357c8c
commit a0d97d5eb2
3 changed files with 96 additions and 2 deletions

View File

@ -0,0 +1,90 @@
x@{builderDefsPackage
, fetchgit, perl, xulrunner, cmake, perlPackages, zip, unzip, pkgconfig
, pulseaudio, gtkLibs, pixman, nspr, nss, libXScrnSaver, scrnsaverproto
, ...}:
builderDefsPackage
(a :
let
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
["fetchgit" "perlPackages" "gtkLibs"];
buildInputs = map (n: builtins.getAttr n x)
(builtins.attrNames (builtins.removeAttrs x helperArgNames)) ++ [
a.perlPackages.SubName a.gtkLibs.gtk a.gtkLibs.glib
];
sourceInfo = rec {
baseName="oneteam";
version="git-head";
name="${baseName}-${version}";
url="git://git.process-one.net/oneteam/oneteam.git";
rev="066cd861ea4436bbe363f032c58a746a1cac7498";
hash="972310d6ef20db7dc749d7d935aa50889afe2004db2a07409830e09ef639f30a";
method="fetchgit";
};
in
rec {
srcDrv = a.fetchgit {
url = sourceInfo.url;
sha256 = sourceInfo.hash;
rev = sourceInfo.rev;
};
src=srcDrv + "/";
inherit (sourceInfo) name version;
inherit buildInputs;
/* doConfigure should be removed if not needed */
phaseNames = ["goComponents" "setVars" "fixComponents" "doCmake"
"doMakeInstall" "goBack" "buildApp" "doDeploy"];
fixComponents = a.fullDepEntry ''
sed -e '1i#include <netinet/in.h>' -i src/rtp/otRTPDecoder.cpp src/rtp/otRTPEncoder.cpp
'' ["minInit" "doUnpack"];
setVars=a.noDepEntry ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr}/include/nspr"
'';
cmakeBuildDir="cmake-build";
cmakeFlags=["-D XPCOM_GECKO_SDK=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}"];
goComponents=a.fullDepEntry "cd src/components" ["doUnpack"];
goBack=a.noDepEntry "cd ../../..";
buildApp=a.fullDepEntry ''
perl build.pl XULAPP 1
'' ["addInputs"];
doDeploy = a.fullDepEntry ''
TARGET_DIR="$out/share/oneteam/app"
BUILD_DIR="$PWD"
ensureDir "$TARGET_DIR"
cd "$TARGET_DIR"
unzip "$BUILD_DIR/oneteam.xulapp"
ensureDir "$out/bin"
echo "#! ${a.stdenv.shell}" > "$out/bin/oneteam"
echo "\"${xulrunner}/bin/xulrunner\" \"$TARGET_DIR/application.ini\"" > "$out/bin/oneteam"
chmod a+x "$out/bin/oneteam"
ensureDir "$out/share/doc"
cp -r "$BUILD_DIR/docs" "$out/share/doc/oneteam"
'' ["defEnsureDir"];
meta = {
description = "An XMPP client";
maintainers = with a.lib.maintainers;
[
raskin
];
platforms = with a.lib.platforms;
linux;
license = a.lib.licenses.gpl2;
homepage="http://oneteam.im";
};
passthru = {
updateInfo = {
downloadPage = "git://git.process-one.net/oneteam/oneteam.git";
};
};
}) x

View File

@ -396,9 +396,11 @@ let inherit (builtins) head tail trace; in
cmakeRPathFlag = if (attrByPath ["cmakeSkipRpath "] true args) then " -DCMAKE_SKIP_BUILD_RPATH=ON " else "";
cmakeBuildDir = attrByPath ["cmakeBuildDir"] "build" args;
doCmake = fullDepEntry (''
mkdir build
cd build
mkdir ${cmakeBuildDir}
cd ${cmakeBuildDir}
cmake -D CMAKE_INSTALL_PREFIX="$out" ${cmakeRPathFlag}${toString cmakeFlags} ..
'') ["minInit" "addInputs" "doUnpack"];

View File

@ -6745,6 +6745,8 @@ let
offrss = callPackage ../applications/networking/offrss { };
oneteam = callPackage ../applications/networking/instant-messengers/oneteam {};
openbox = callPackage ../applications/window-managers/openbox { };
openjump = callPackage ../applications/misc/openjump { };