3
0
Fork 0
forked from mirrors/nixpkgs

Adding go-oo in multiple languages. The expression and names can be improved, but at least

I reached a point where it works. Patches welcome - even without asking.
I should add a way to regenerate src.nix automatically too, but the information on what
to dowload is only inside their download script generated after configure.

There are more things that can be added: kde4 support, gstreamer, ...

I did not check that all the buildInputs are needed - most come from the old openoffice expression.

svn path=/nixpkgs/trunk/; revision=21969
This commit is contained in:
Lluís Batlle i Rossell 2010-05-25 17:05:52 +00:00
parent 5e846002d6
commit 8b59ac89bf
3 changed files with 296 additions and 0 deletions

View file

@ -0,0 +1,140 @@
{ stdenv, fetchurl, pam, python, tcsh, libxslt, perl, ArchiveZip
, CompressZlib, zlib, libjpeg, expat, pkgconfig, freetype, libwpd
, libxml2, db4, sablotron, curl, libXaw, fontconfig, libsndfile, neon
, bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
, icu, boost, jdk, ant, libXext, libX11, libXtst, libXi, cups
, libXinerama, openssl, gperf, cppunit, GConf, ORBit2
, autoconf, openldap, postgresql
, langs ? [ "en-US" "ca" "ru" "eo" "fr" "nl" "de" "en-GB" ]
}:
let version = "3.2.0"; in
stdenv.mkDerivation rec {
name = "go-oo-3.2.0.10";
# builder = ./builder.sh;
downloadRoot = "http://download.services.openoffice.org/files/stable";
versionDirs = true;
src = fetchurl {
url = "http://download.go-oo.org/OOO320/ooo-build-3.2.0.10.tar.gz";
sha256 = "0g6n0m9pibn6cx12zslmknzy1p764nqj8vdf45l5flyls9aj3x21";
};
srcs_download = (import ./src.nix) fetchurl;
# Multi-CPU: --with-num-cpus=4
configurePhase = ''
sed -i -e '1s,/bin/bash,${stdenv.bash}/bin/bash,' $(find bin -type f)
sed -i -e '1s,/usr/bin/perl,${perl}/bin/perl,' download.in bin/ooinstall bin/generate-bash-completion
echo "$distroFlags" > distro-configs/SUSE-11.1.conf.in
./configure --with-distro=SUSE-11.1 --with-system-libwpd --without-git --with-system-cairo \
--with-lang="${langsSpaces}"
'';
buildPhase = ''
for a in $srcs_download; do
FILE=$(basename $a)
# take out the hash
cp -v $a src/$(echo $FILE | sed 's/[^-]*-//')
done
sed '/-x $WGET/d' -i download
./download
# Needed to find genccode
PATH=$PATH:${icu}/sbin
make build.prepare
set -x
pushd build/ooo3*-*/
# Fix svtools: hardcoded jpeg path
sed -i -e 's,^JPEG3RDLIB=.*,JPEG3RDLIB=${libjpeg}/lib/libjpeg.so,' solenv/inc/libs.mk
# Fix sysui: wants to create a tar for root
sed -i -e 's,--own.*root,,' sysui/desktop/slackware/makefile.mk
# Fix libtextcat: wants to set rpath to /usr/local/lib
sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, libtextcat/makefile.mk
# Fix hunspell: the checks fail due to /bin/bash missing, and I find this fix easier
sed -i -e 's,make && make check,make,' hunspell/makefile.mk
# Fix redland: wants to set rpath to /usr/local/lib
sed -i -e 's,^CONFIGURE_FLAGS.*,& --prefix='$TMPDIR, redland/redland/makefile.mk \
redland/raptor/makefile.mk redland/rasqal/makefile.mk
popd
set +x
make
'';
installPhase = ''
bin/ooinstall $out
ensureDir $out/bin
for a in $out/program/{sbase,scalc,sdraw,simpress,smath,soffice,swriter}; do
ln -s $a $out/bin
done
'';
distroFlags = ''
--with-vendor=NixPkgs
--with-package-format=native
--disable-epm
--disable-fontooo
--disable-gnome-vfs
--disable-gnome-vfs
--disable-mathmldtd
--disable-mozilla
--disable-odk
--disable-pasf
--disable-dbus
--disable-kde
--disable-kde4
--disable-mono
--disable-gstreamer
--with-cairo
--with-system-libs
--with-system-python
--with-system-boost
--with-system-db
--with-jdk-home=${jdk}
--with-ant-home=${ant}
--without-afms
--without-dict
--without-fonts
--without-myspell-dicts
--without-nas
--without-ppds
--without-system-agg
--without-system-beanshell
--without-system-hsqldb
--without-system-xalan
--without-system-xerces
--without-system-xml-apis
--without-system-xt
--without-system-jars
--without-system-hunspell
--without-system-altlinuxhyph
--without-system-lpsolve
--without-system-graphite
--without-system-mozilla
--without-system-libwps
--without-system-libwpg
'';
buildInputs = [
pam python tcsh libxslt perl ArchiveZip CompressZlib zlib
libjpeg expat pkgconfig freetype libwpd libxml2 db4 sablotron curl
libXaw fontconfig libsndfile neon bison flex zip unzip gtk libmspack
getopt file jdk cairo which icu boost libXext libX11 libXtst libXi
cups libXinerama openssl gperf GConf ORBit2
ant autoconf openldap postgresql
];
langsSpaces = stdenv.lib.concatStringsSep " " langs;
meta = {
description = "Go-oo - Novell variant of OpenOffice.org";
homepage = http://go-oo.org/;
license = "LGPL";
maintainers = [ stdenv.lib.maintainers.viric ];
platforms = [ stdenv.lib.platforms.linux ];
};
}

View file

@ -0,0 +1,141 @@
fetchurl:
[
(fetchurl {
url = "http://download.go-oo.org//DEV300/ooo-cli-prebuilt-3.2.tar.bz2";
sha256 = "1v55fl0n8zisn6gih99fn1c5vp6wl6cf0qh1nwlcx9ia76jnjj9k";
})
/*
(fetchurl {
url = "http://cairographics.org/releases//cairo-1.4.10.tar.gz";
sha256 = "0cji7shlnd3yg3939233p8imnrivykx4g39p3qr8r2a4c2k7hkjr";
})
*/
(fetchurl {
url = "http://download.go-oo.org//SRC680/mdbtools-0.6pre1.tar.gz";
sha256 = "1lz33lmqifjszad7rl1r7rpxbziprrm5rkb27wmswyl5v98dqsbi";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/artwork/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-artwork.tar.bz2";
sha256 = "1zfn1gjdbxychxb9xvfi9hchzqbp20f15nf06badgga5klllir8b";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/base/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-base.tar.bz2";
sha256 = "07gmicn9c2x16qzcfi0jh2z8mx0iz76vhskml7xkwv99vryy48im";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/bootstrap/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-bootstrap.tar.bz2";
sha256 = "070zmd25wysmf2rka07b8w02wkyxz7qa30kscd9b3pc8m0cgq0fl";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/calc/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-calc.tar.bz2";
sha256 = "0iwgmvffljmm1vbkjv36fq0riy7alk7r4gnfl5x9nrw7zic0xh29";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/components/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-components.tar.bz2";
sha256 = "19x6lhdbcazkicp4h3zs8sq7n9gc7z9c3xkx6266m15n2k4c8ms9";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/extras/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-extras.tar.bz2";
sha256 = "1lr8l0nxaqrhgcbb1vn08a8d4wzq032q2zl9a12dgjrnmgcx76s7";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/filters/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-filters.tar.bz2";
sha256 = "1p13w9gngc5wz40nhsx8igk8zygnwcacd3bgas3m2jv9ifazk9v3";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/help/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-help.tar.bz2";
sha256 = "0fqg8fpivgpyfqf0s085mjm09cmfzy684q1b58y62hg0f01wwr0k";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/impress/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-impress.tar.bz2";
sha256 = "1dhrdsak1jqydjfkylj6r7w1h886gbcn1g4wjh1kgkwk50bdamh5";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-gui/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-gui.tar.bz2";
sha256 = "0x5jf8bwzqkd76dpd7rh0fj1p4hmh8h9yshn8rfq6ss26bgwnmwr";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-core/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-core.tar.bz2";
sha256 = "1qaa1g9mrlpjv7fkv0c8qarbl162l99w0a92ydsj1lv86jg01xvx";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-extern/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-extern.tar.bz2";
sha256 = "0hxkba5yb1c09yyrqpw4llrr7xhpf5x08mnwgfdcfks690p1rzc9";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/postprocess/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-postprocess.tar.bz2";
sha256 = "1jkkxpc199y64a41y13s6ib6gyp6gas8gl4w95sx506xvj90qxi3";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/sdk/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-sdk.tar.bz2";
sha256 = "0211ak14sblmzswwa605q430gxxdjrqa5a2924r4lb1knrc9vlns";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/testing/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-testing.tar.bz2";
sha256 = "0i7bcxd791id2bbgnsakwnmr4xnzd5hdcydlnqx50mni5mcd13v1";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/ure/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-ure.tar.bz2";
sha256 = "16957l2npcbaizs29ly0xxfqaxinchnrvi720gggwhfp2mbl05ql";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/writer/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-writer.tar.bz2";
sha256 = "0lcdlwy2scs01glj8fi1q1ysmyvn7j70b91ciad3m32lrxmr8s67";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/libs-extern-sys/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-libs-extern-sys.tar.bz2";
sha256 = "0my3wh90xil3xpcjxi1q76v1bwi0rf62pzrf3pi3angd5y3hmysd";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/extensions/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-extensions.tar.bz2";
sha256 = "1qmyc2vb0n6fdl7p92cpvp972zm6ilafq5s5m21wgicqwfr34chv";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/extras-3.tar.bz2";
sha256 = "1s6cz92b2amfn135l6a2hras4qrd04kw5yyqli7xmb8xqa0m3y3c";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/biblio.tar.bz2";
sha256 = "02v2xbq771zi09qw3k4zih95m1rjns4pwwpl51n0m34c0a00lhf0";
})
(fetchurl {
url = "http://tools.openoffice.org/unowinreg_prebuild/680//unowinreg.dll";
sha256 = "0g3529nr0nfhn3cygn8x931pqxnqq88nfc5h829xncr1j8ifaqzm";
})
(fetchurl {
url = "http://cgit.freedesktop.org/ooo-build/l10n/snapshot/ooo/OOO320_m12.tar.bz2";
name = "ooo320-m12-l10n.tar.bz2";
sha256 = "0lknxxl0n4f383gxkljl1294zggfgaf2hbg3f6p4q6vr1byf3lww";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/libwps-0.1.2.tar.gz";
sha256 = "1cdjmgpy0igrwlb5i1sm4s2yxvzbmqz6j7xnmmv3kpbx7z43zw78";
})
(fetchurl {
url = "http://download.go-oo.org//SRC680/libwpg-0.1.3.tar.gz";
sha256 = "1qv5qqycaqrm8arprwf3vyk76fm6v7qabpx5qq58knp1xm72z98r";
})
(fetchurl {
url = "http://download.go-oo.org//DEV300/ooo_oxygen_images-2009-06-17.tar.gz";
sha256 = "0jhgjhm63cmjr59nhvdln1szgm36v6kkazy2388l7z6xjjrhxk1z";
})
]

View file

@ -8268,6 +8268,21 @@ let
stdenv = stdenv2;
};
go_oo = import ../applications/office/openoffice/go-oo.nix {
inherit fetchurl pam python tcsh libxslt perl zlib libjpeg
expat pkgconfig freetype fontconfig libwpd libxml2 db4 sablotron
curl libsndfile flex zip unzip libmspack getopt file cairo
which icu jdk ant cups openssl bison boost gperf cppunit;
inherit (xlibs) libXaw libXext libX11 libXtst libXi libXinerama;
inherit (gtkLibs) gtk;
inherit (perlPackages) ArchiveZip CompressZlib;
inherit (gnome) GConf ORBit2;
neon = neon026;
stdenv = stdenv2;
inherit autoconf openldap postgresql;
};
opera = import ../applications/networking/browsers/opera {
inherit fetchurl zlib glibc stdenv makeDesktopItem;
inherit (xlibs) libX11 libSM libICE libXt libXext;