mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-24 20:02:58 +03:00
Merge master into stdenv-updates
Conflicts (simple): pkgs/development/tools/misc/binutils/default.nix pkgs/tools/package-management/disnix/default.nix pkgs/top-level/all-packages.nix
This commit is contained in:
commit
8ba92b8895
@ -237,12 +237,12 @@ fetchurl {
|
||||
|
||||
<function>fetchurl</function> will first try to download this file
|
||||
from <link
|
||||
xlink:href="http://nixos.org/tarballs/sha1/eb72f55e4a8bf08e8c6ef227c0ade3d068ba1082"/>.
|
||||
xlink:href="http://tarballs.nixos.org/sha1/eb72f55e4a8bf08e8c6ef227c0ade3d068ba1082"/>.
|
||||
If that file doesn’t exist, it will try the original URL. In
|
||||
general, the “content-addressed” location is
|
||||
<replaceable>mirror</replaceable><literal>/</literal><replaceable>hash-type</replaceable><literal>/</literal><replaceable>hash</replaceable>.
|
||||
There is currently only one content-addressable mirror (<link
|
||||
xlink:href="http://nixos.org/tarballs"/>), but more can be
|
||||
xlink:href="http://tarballs.nixos.org"/>), but more can be
|
||||
specified in the <varname>hashedMirrors</varname> attribute in
|
||||
<filename>pkgs/build-support/fetchurl/mirrors.nix</filename>, or by
|
||||
setting the <envar>NIX_HASHED_MIRRORS</envar> environment variable
|
||||
|
@ -61,7 +61,7 @@ in
|
||||
|
||||
meta = {
|
||||
homepage = "http://lly.org/~rcw/abcde/page/";
|
||||
licence = "GPLv2+";
|
||||
license = "GPLv2+";
|
||||
description = "A Better CD Encoder (ABCDE)";
|
||||
|
||||
longDescription = ''
|
||||
|
@ -19,7 +19,7 @@ in
|
||||
|
||||
meta = {
|
||||
homepage = http://lly.org/~rcw/cd-discid/;
|
||||
licence = "GPLv2+";
|
||||
license = "GPLv2+";
|
||||
description = "cd-discid, a command-line utility to retrieve a disc's CDDB ID";
|
||||
|
||||
longDescription = ''
|
||||
@ -28,4 +28,4 @@ in
|
||||
abcde), but can be used for any purpose requiring CDDB data.
|
||||
'';
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -5,12 +5,11 @@
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "mopidy-${version}";
|
||||
|
||||
version = "0.14.1";
|
||||
version = "0.14.2";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/mopidy/mopidy.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0lgd8dpiri9m6sigpf1g1qzvz25lkb38lskgwvb8j7x64y104z0v";
|
||||
url = "https://github.com/mopidy/mopidy/archive/v${version}.tar.gz";
|
||||
sha256 = "0fqx7lk9g61d744b951cwx0szqbyji58dhw2ravnq9785nkhi7i4";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [
|
||||
|
@ -1,4 +1,5 @@
|
||||
{stdenv, fetchurl, ncurses, curl, taglib, fftw, mpd_clientlib, pkgconfig}:
|
||||
{ stdenv, fetchurl, ncurses, curl, taglib, fftw, mpd_clientlib, pkgconfig
|
||||
, libiconvOrEmpty }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.5.10";
|
||||
@ -9,14 +10,15 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "ff6d5376a2d9caba6f5bb78e68af77cefbdb2f04cd256f738e39f8ac9a79a4a8";
|
||||
};
|
||||
|
||||
buildInputs = [ ncurses curl taglib fftw mpd_clientlib pkgconfig ];
|
||||
buildInputs = [ ncurses curl taglib fftw mpd_clientlib pkgconfig ]
|
||||
++ libiconvOrEmpty;
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Curses-based interface for MPD (music player daemon)";
|
||||
homepage = http://unkart.ovh.org/ncmpcpp/;
|
||||
license = "GPLv2+";
|
||||
maintainers = [ stdenv.lib.maintainers.mornfall ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
homepage = http://unkart.ovh.org/ncmpcpp/;
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ lovek323 mornfall ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -1,9 +1,9 @@
|
||||
{ fetchurl, stdenv, dpkg, xlibs, qt4, alsaLib, makeWrapper, openssl, freetype, glib, pango, cairo, atk, gdk_pixbuf, gtk, cups, nspr, nss, libpng12, GConf, libgcrypt, chromium, sqlite, gst_plugins_base, gstreamer }:
|
||||
{ fetchurl, stdenv, dpkg, xlibs, qt4, alsaLib, makeWrapper, openssl, freetype, glib, pango, cairo, atk, gdk_pixbuf, gtk, cups, nspr, nss, libpng, GConf, libgcrypt, chromium, sqlite, gst_plugins_base, gstreamer }:
|
||||
|
||||
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
|
||||
|
||||
let
|
||||
version = "0.9.0.133";
|
||||
version = "0.9.1.55";
|
||||
qt4webkit =
|
||||
if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
@ -25,13 +25,13 @@ stdenv.mkDerivation {
|
||||
src =
|
||||
if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}.gd18ed58.259-1_i386.deb";
|
||||
sha256 = "15kbwll63pm99262f7xq1z0c5bwmk5cz46pkh8xd5xsqxlsvvv1n";
|
||||
url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}.gbdd3b79.203-1_i386.deb";
|
||||
sha256 = "1sls4gb85700126bbk4sz73ipa2rjcinmpnsi78q0bsdj365y2wc";
|
||||
}
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}.gd18ed58.259-1_amd64.deb";
|
||||
sha256 = "0l3nikhf4hyj6z7639s668kd806730va005rwqcxvymxddcbcp03";
|
||||
url = "http://repository.spotify.com/pool/non-free/s/spotify/spotify-client_${version}.gbdd3b79.203-1_amd64.deb";
|
||||
sha256 = "10pzj3p8bjbxh9nnm4qc5s1hn9nh7hgh3vbwm0xblj9rn71wl03y";
|
||||
}
|
||||
else throw "Spotify not supported on this platform.";
|
||||
|
||||
@ -73,7 +73,7 @@ stdenv.mkDerivation {
|
||||
mkdir -p $out/libexec/spotify
|
||||
gcc -shared ${./preload.c} -o $preload -ldl -DOUT=\"$out\" -fPIC
|
||||
|
||||
wrapProgram $out/bin/spotify --set LD_PRELOAD $preload --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ GConf libpng12 cups libgcrypt sqlite gst_plugins_base gstreamer]}:$out/lib"
|
||||
wrapProgram $out/bin/spotify --set LD_PRELOAD $preload --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ GConf libpng cups libgcrypt sqlite gst_plugins_base gstreamer]}:$out/lib"
|
||||
''; # */
|
||||
|
||||
dontStrip = true;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, cmake, pkgconfig, x11, libjpeg, libpng12, libXmu
|
||||
{ stdenv, fetchurl, cmake, pkgconfig, x11, libjpeg, libpng, libXmu
|
||||
, fontconfig, freetype, pam, dbus_libs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[ cmake pkgconfig x11 libjpeg libpng12 libXmu fontconfig freetype
|
||||
[ cmake pkgconfig x11 libjpeg libpng libXmu fontconfig freetype
|
||||
pam dbus_libs
|
||||
];
|
||||
|
||||
|
@ -44,7 +44,7 @@ EOF
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "GNU Emacs 24, the extensible, customizable text editor";
|
||||
|
||||
longDescription = ''
|
||||
@ -67,7 +67,7 @@ EOF
|
||||
homepage = "http://www.gnu.org/software/emacs/";
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo simons chaoflow ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = with maintainers; [ chaoflow lovek323 ludo simons ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
name = "cua-mode-2.10";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/cua-mode-2.10.el;
|
||||
url = http://tarballs.nixos.org/cua-mode-2.10.el;
|
||||
md5 = "5bf5e43f5f38c8383868c7c6c5baca09";
|
||||
};
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
{stdenv, fetchurl, kdelibs, cmake, gettext }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kile-2.1.2";
|
||||
name = "kile-2.1.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/kile/${name}.tar.bz2";
|
||||
sha256 = "0nx5fmjrxrndnzvknxnybd8qh15jzfxzbny2rljq3amjw02y9lc2";
|
||||
sha256 = "18nfi37s46v9xav7vyki3phasddgcy4m7nywzxis198vr97yqqx0";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake gettext ];
|
||||
|
@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
||||
builder = ./builder.sh;
|
||||
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/monodevelop-0.6-pre2315.tar.bz2;
|
||||
url = http://tarballs.nixos.org/monodevelop-0.6-pre2315.tar.bz2;
|
||||
md5 = "8c33df5629b0676b7ab552854c1de6fd";
|
||||
};
|
||||
|
||||
|
@ -5,7 +5,7 @@ stdenv.mkDerivation {
|
||||
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/monodoc-1.0.6.tar.gz;
|
||||
url = http://tarballs.nixos.org/monodoc-1.0.6.tar.gz;
|
||||
md5 = "f2fc27e8e4717d90dc7efa2450625693";
|
||||
};
|
||||
|
||||
|
@ -40,6 +40,15 @@ composableDerivation {
|
||||
}.src;
|
||||
};
|
||||
|
||||
# if darwin support is enabled, we want to make sure we're not building with
|
||||
# OS-installed python framework
|
||||
preConfigure
|
||||
= stdenv.lib.optionalString
|
||||
(stdenv.isDarwin && (config.vim.darwin or true)) ''
|
||||
sed -i "5387,5390d" src/auto/configure
|
||||
sed -i "5394d" src/auto/configure
|
||||
'';
|
||||
|
||||
configureFlags
|
||||
= [ "--enable-gui=${args.gui}" "--with-features=${args.features}" ];
|
||||
|
||||
@ -58,7 +67,19 @@ composableDerivation {
|
||||
// edf { name = "xsmp_interact"; } #Disable XSMP interaction
|
||||
// edf { name = "mzscheme"; } #Include MzScheme interpreter.
|
||||
// edf { name = "perl"; feat = "perlinterp"; enable = { nativeBuildInputs = [perl]; };} #Include Perl interpreter.
|
||||
// edf { name = "python"; feat = "pythoninterp"; enable = { nativeBuildInputs = [python]; }; } #Include Python interpreter.
|
||||
|
||||
// edf {
|
||||
name = "python";
|
||||
feat = "pythoninterp";
|
||||
enable = {
|
||||
nativeBuildInputs = [ python ];
|
||||
} // lib.optionalAttrs stdenv.isDarwin {
|
||||
configureFlags
|
||||
= [ "--enable-pythoninterp=yes"
|
||||
"--with-python-config-dir=${python}/lib" ];
|
||||
};
|
||||
}
|
||||
|
||||
// edf { name = "tcl"; enable = { nativeBuildInputs = [tcl]; }; } #Include Tcl interpreter.
|
||||
// edf { name = "ruby"; feat = "rubyinterp"; enable = { nativeBuildInputs = [ruby]; };} #Include Ruby interpreter.
|
||||
// edf { name = "lua" ; feat = "luainterp"; enable = { nativeBuildInputs = [lua]; configureFlags = ["--with-lua-prefix=${args.lua}"];};}
|
||||
@ -104,7 +125,7 @@ composableDerivation {
|
||||
// edf "gtktest" "gtktest" { } #Do not try to compile and run a test GTK program
|
||||
*/
|
||||
|
||||
postInstall = if stdenv.isLinux then ''
|
||||
postInstall = stdenv.lib.optionalString stdenv.isLinux ''
|
||||
rpath=`patchelf --print-rpath $out/bin/vim`;
|
||||
for i in $nativeBuildInputs; do
|
||||
echo adding $i/lib
|
||||
@ -113,7 +134,7 @@ composableDerivation {
|
||||
echo $nativeBuildInputs
|
||||
echo $rpath
|
||||
patchelf --set-rpath $rpath $out/bin/{vim,gvim}
|
||||
'' else "";
|
||||
'';
|
||||
|
||||
dontStrip = 1;
|
||||
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation {
|
||||
name = "batik-1.6";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/batik-1.6.zip;
|
||||
url = http://tarballs.nixos.org/batik-1.6.zip;
|
||||
md5 = "edff288fc64f968ff96ca49763d50f3c";
|
||||
};
|
||||
|
||||
|
@ -8,12 +8,12 @@
|
||||
assert stdenv ? glibc;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.2";
|
||||
version = "1.2.2";
|
||||
name = "darktable-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/darktable/darktable/1.2/darktable-${version}.tar.xz";
|
||||
sha256 = "0l2lrly46nda7b2y4gskqqxaajia34g487bgjcpd5ysxbhmmhlnw";
|
||||
sha256 = "0nf85wjhlisbgwkfkc1wb8y7dpnx3v8zk9g3ghbd51gi7s62x40j";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -12,7 +12,7 @@ stdenv.mkDerivation {
|
||||
inherit makeWrapper;
|
||||
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/f-spot-0.0.10.tar.bz2;
|
||||
url = http://tarballs.nixos.org/f-spot-0.0.10.tar.bz2;
|
||||
md5 = "19cc6e067ccc261b0502ff6189b79832";
|
||||
};
|
||||
|
||||
|
@ -1,21 +1,21 @@
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, babl, gegl, gtk, glib, gdk_pixbuf
|
||||
, pango, cairo, freetype, fontconfig, lcms2, libpng, libjpeg, poppler, libtiff
|
||||
, pango, cairo, freetype, fontconfig, lcms, libpng, libjpeg, poppler, libtiff
|
||||
, webkit, libmng, librsvg, libwmf, zlib, libzip, ghostscript, aalib, jasper
|
||||
, python, pygtk, libart_lgpl, libexif, gettext, xlibs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gimp-2.8.4";
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.gimp.org/pub/gimp/v2.8/${name}.tar.bz2";
|
||||
md5 = "392592e8755d046317878d226145900f";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig intltool babl gegl gtk glib gdk_pixbuf pango cairo
|
||||
freetype fontconfig lcms2 libpng libjpeg poppler libtiff webkit
|
||||
freetype fontconfig lcms libpng libjpeg poppler libtiff webkit
|
||||
libmng librsvg libwmf zlib libzip ghostscript aalib jasper
|
||||
python pygtk libart_lgpl libexif gettext
|
||||
python pygtk libart_lgpl libexif gettext
|
||||
];
|
||||
|
||||
passthru = { inherit gtk; }; # probably its a good idea to use the same gtk in plugins ?
|
||||
|
@ -1,19 +1,19 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk, freetype
|
||||
, fontconfig, libart_lgpl, libtiff, libjpeg, libpng12, libexif, zlib, perl
|
||||
, fontconfig, libart_lgpl, libtiff, libjpeg, libpng, libexif, zlib, perl
|
||||
, perlXMLParser, python, pygtk, gettext, xlibs, intltool, babl_0_0_22, gegl_0_0_22
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gimp-2.6.12";
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.gtk.org/pub/gimp/v2.6/${name}.tar.bz2";
|
||||
sha256 = "0qpcgaa4pdqqhyyy8vjvzfflxgsrrs25zk79gixzlnbzq3qwjlym";
|
||||
};
|
||||
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig gtk freetype fontconfig
|
||||
libart_lgpl libtiff libjpeg libpng12 libexif zlib perl
|
||||
libart_lgpl libtiff libjpeg libpng libexif zlib perl
|
||||
perlXMLParser python pygtk gettext intltool babl_0_0_22 gegl_0_0_22
|
||||
];
|
||||
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "oiio-${version}";
|
||||
version = "1.1.8";
|
||||
version = "1.1.12";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/OpenImageIO/oiio/archive/Release-${version}.zip";
|
||||
sha256 = "08a6qhplzs8kianqb1gjgrndg81h3il5531jn9g6i4940b1xispg";
|
||||
sha256 = "196iq15waa2yyryiwhf6ynlpqnpknm4cc4azakg01xs70yiphsfl";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
@ -31,4 +31,4 @@ stdenv.mkDerivation rec {
|
||||
maintainers = [ maintainers.goibhniu ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -1,19 +1,23 @@
|
||||
{stdenv, fetchurl, flvstreamer, ffmpeg, makeWrapper, perl}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "get_iplayer-2.80";
|
||||
{stdenv, fetchurl, flvstreamer, ffmpeg, makeWrapper, perl, buildPerlPackage, perlPackages, vlc, rtmpdump}:
|
||||
buildPerlPackage {
|
||||
name = "get_iplayer-2.83";
|
||||
|
||||
buildInputs = [makeWrapper perl];
|
||||
propagatedBuildInputs = with perlPackages; [HTMLParser HTTPCookies LWP];
|
||||
|
||||
preConfigure = "touch Makefile.PL";
|
||||
doCheck = false;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp get_iplayer $out/bin
|
||||
wrapProgram $out/bin/get_iplayer --suffix PATH ${ffmpeg}/bin:${flvstreamer}/bin
|
||||
sed -i 's|^update_script|#update_script|' $out/bin/get_iplayer
|
||||
wrapProgram $out/bin/get_iplayer --suffix PATH : ${ffmpeg}/bin:${flvstreamer}/bin:${vlc}/bin:${rtmpdump}/bin
|
||||
'';
|
||||
|
||||
src = fetchurl {
|
||||
url = ftp://ftp.infradead.org/pub/get_iplayer/get_iplayer-2.80.tar.gz;
|
||||
sha256 = "1hnadryyzca3bv1hfk2q3np9ihwvyxa3prwcrply6ywy4vnayjf8";
|
||||
url = ftp://ftp.infradead.org/pub/get_iplayer/get_iplayer-2.83.tar.gz;
|
||||
sha256 = "169zji0rr3z5ng6r4cyzvs89779m4iklln9gsqpryvm81ipalfga";
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
description = "WYSIWYM frontend for LaTeX, DocBook, etc.";
|
||||
homepage = "http://www.lyx.org";
|
||||
license = "GPL2";
|
||||
maintainers = [ stdenv.lib.maintainers.neznalek ];
|
||||
maintainers = [ stdenv.lib.maintainers.vcunat ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -1,11 +1,13 @@
|
||||
{ stdenv, fetchurl, kdelibs, kdebase_workspace, gettext }:
|
||||
|
||||
let version = "0.11";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "rsibreak-0.11";
|
||||
name = "rsibreak-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/files/${name}.tar.bz2";
|
||||
sha256 = "1yrf73r8mixskh8b531wb8dfs9z7rrw010xsrflhjhjmqh94h8mw";
|
||||
url = "mirror://debian/pool/main/r/rsibreak/rsibreak_${version}.orig.tar.gz";
|
||||
sha256 = "0g27aswh8iz5v67v1wkjny4p100vs2gm0lw0qzfkg6sw1pb4i519";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gettext ];
|
||||
@ -13,8 +15,8 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [ kdelibs kdebase_workspace ];
|
||||
|
||||
meta = {
|
||||
homepage = http://www.rsibreak.org/;
|
||||
description = "Repetitive Strain Injury prevention";
|
||||
homepage = http://userbase.kde.org/RSIBreak; # http://www.rsibreak.org/ is down since 2011
|
||||
description = "Utility to help prevent repetitive strain injury for KDE 4";
|
||||
inherit (kdelibs.meta) platforms maintainers;
|
||||
};
|
||||
}
|
||||
|
54
pkgs/applications/misc/synergy/cryptopp.patch
Normal file
54
pkgs/applications/misc/synergy/cryptopp.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 3b61fc0..2206646 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -133,6 +133,9 @@ if (UNIX)
|
||||
check_type_size(long SIZEOF_LONG)
|
||||
check_type_size(short SIZEOF_SHORT)
|
||||
|
||||
+ # let's just assume cryptopp exists (provided by the Nix expression)
|
||||
+ list(APPEND libs cryptopp)
|
||||
+
|
||||
# pthread is used on both Linux and Mac
|
||||
check_library_exists("pthread" pthread_create "" HAVE_PTHREAD)
|
||||
if (HAVE_PTHREAD)
|
||||
@@ -303,7 +306,6 @@ if (VNC_SUPPORT)
|
||||
endif()
|
||||
|
||||
add_subdirectory(src)
|
||||
-add_subdirectory(tools)
|
||||
|
||||
if (WIN32)
|
||||
# add /analyze in order to unconver potential bugs in the source code
|
||||
diff --git a/src/lib/synergy/CCryptoMode.h b/src/lib/synergy/CCryptoMode.h
|
||||
index 9b7e8ad..0d659ac 100644
|
||||
--- a/src/lib/synergy/CCryptoMode.h
|
||||
+++ b/src/lib/synergy/CCryptoMode.h
|
||||
@@ -17,9 +17,9 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
-#include <cryptopp562/gcm.h>
|
||||
-#include <cryptopp562/modes.h>
|
||||
-#include <cryptopp562/aes.h>
|
||||
+#include <cryptopp/gcm.h>
|
||||
+#include <cryptopp/modes.h>
|
||||
+#include <cryptopp/aes.h>
|
||||
#include "ECryptoMode.h"
|
||||
#include "CString.h"
|
||||
|
||||
diff --git a/src/lib/synergy/CCryptoStream.h b/src/lib/synergy/CCryptoStream.h
|
||||
index 104b1f6..09c4dc4 100644
|
||||
--- a/src/lib/synergy/CCryptoStream.h
|
||||
+++ b/src/lib/synergy/CCryptoStream.h
|
||||
@@ -20,8 +20,8 @@
|
||||
#include "BasicTypes.h"
|
||||
#include "CStreamFilter.h"
|
||||
#include "CCryptoMode.h"
|
||||
-#include <cryptopp562/osrng.h>
|
||||
-#include <cryptopp562/sha.h>
|
||||
+#include <cryptopp/osrng.h>
|
||||
+#include <cryptopp/sha.h>
|
||||
|
||||
class CCryptoOptions;
|
||||
|
@ -1,19 +1,34 @@
|
||||
{ stdenv, fetchurl, cmake, x11, libX11, libXi, libXtst }:
|
||||
{ stdenv, fetchurl, cmake, x11, libX11, libXi, libXtst, libXrandr, xinput
|
||||
, cryptopp ? null, unzip ? null }:
|
||||
|
||||
assert stdenv.isLinux -> cryptopp != null;
|
||||
assert !stdenv.isLinux -> unzip != null;
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "synergy-1.4.10";
|
||||
name = "synergy-1.4.12";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://synergy.googlecode.com/files/${name}-Source.tar.gz";
|
||||
sha256 = "1ghgf96gbk4sdw8sqlc3pjschkmmqybihi12mg6hi26gnk7a5m86";
|
||||
sha256 = "0j884skwqy8r8ckj9a4rlwsbjwb1yrj9wqma1nwhr2inff6hrdim";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake x11 libX11 libXi libXtst ];
|
||||
|
||||
patches = optional stdenv.isLinux ./cryptopp.patch;
|
||||
|
||||
postPatch = if stdenv.isLinux then ''
|
||||
sed -i -e '/HAVE_X11_EXTENSIONS_XRANDR_H/c \
|
||||
set(HAVE_X11_EXTENSIONS_XRANDR_H true)' CMakeLists.txt
|
||||
'' else ''
|
||||
${unzip}/bin/unzip -d tools/cryptopp562 tools/cryptopp562.zip
|
||||
'';
|
||||
|
||||
buildInputs = [ cmake x11 libX11 libXi libXtst libXrandr xinput ]
|
||||
++ optional stdenv.isLinux cryptopp;
|
||||
|
||||
# At this moment make install doesn't work for synergy
|
||||
# http://synergy-foss.org/spit/issues/details/3317/
|
||||
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
cp ../bin/synergyc $out/bin
|
||||
@ -21,10 +36,14 @@ stdenv.mkDerivation rec {
|
||||
cp ../bin/synergyd $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
doCheck = true;
|
||||
checkPhase = "../bin/unittests";
|
||||
|
||||
meta = {
|
||||
description = "Tool to share the mouse keyboard and the clipboard between computers";
|
||||
homepage = http://synergy-foss.org;
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.aszlig ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -84,6 +84,11 @@ let
|
||||
buildPath = "out/${buildType}";
|
||||
libExecPath = "$out/libexec/${packageName}";
|
||||
|
||||
# user namespace sandbox patch
|
||||
userns_patch = if versionOlder sourceInfo.version "29.0.0.0"
|
||||
then ./sandbox_userns.patch
|
||||
else ./sandbox_userns_29.patch;
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${packageName}-${version}";
|
||||
inherit packageName;
|
||||
@ -116,18 +121,14 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
prePatch = "patchShebangs .";
|
||||
|
||||
patches = [ ./sandbox_userns.patch ]
|
||||
patches = [ userns_patch ]
|
||||
++ optional cupsSupport ./cups_allow_deprecated.patch;
|
||||
|
||||
postPatch = ''
|
||||
sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi
|
||||
sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi
|
||||
'' + optionalString useOpenSSL ''
|
||||
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
|
||||
'' + ''
|
||||
sed -i -e 's|/usr/bin/gcc|gcc|' \
|
||||
third_party/WebKit/Source/${if !versionOlder sourceInfo.version "28.0.0.0"
|
||||
then "core/core.gypi"
|
||||
else "WebCore/WebCore.gyp/WebCore.gyp"}
|
||||
'';
|
||||
|
||||
gypFlags = mkGypFlags (gypFlagsUseSystemLibs // {
|
||||
|
@ -0,0 +1,287 @@
|
||||
commit 557daf9cc9c02b8f17e6ee84f9b1ae6e6132d478
|
||||
Author: aszlig <aszlig@redmoonstudios.org>
|
||||
Date: Thu May 16 14:17:56 2013 +0200
|
||||
|
||||
zygote: Add support for user namespaces on Linux.
|
||||
|
||||
The implementation is done by patching the Zygote host to execute the sandbox
|
||||
binary with CLONE_NEWUSER and setting the uid and gid mapping so that the child
|
||||
process is using uid 0 and gid 0 which map to the current user of the parent.
|
||||
Afterwards, the sandbox will continue as if it was called as a setuid binary.
|
||||
|
||||
In addition, this adds new_user_namespace as an option in process_util in order
|
||||
to set the UID and GID mapping correctly. The reason for this is that just
|
||||
passing CLONE_NEWUSER to clone_flags doesn't help in LaunchProcess(), because
|
||||
without setting the mappings exec*() will clear the process's capability sets.
|
||||
|
||||
If the kernel doesn't support unprivileged user namespaces and the sandbox
|
||||
binary doesn't have the setuid flag, the Zygote main process will run without a
|
||||
sandbox. This is to mimic the behaviour if no SUID sandbox binary path is set.
|
||||
|
||||
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
||||
|
||||
diff --git a/base/process_util.h b/base/process_util.h
|
||||
index 0bec8e0..6b6f566 100644
|
||||
--- a/base/process_util.h
|
||||
+++ b/base/process_util.h
|
||||
@@ -175,6 +175,7 @@ struct LaunchOptions {
|
||||
new_process_group(false)
|
||||
#if defined(OS_LINUX)
|
||||
, clone_flags(0)
|
||||
+ , new_user_namespace(false)
|
||||
#endif // OS_LINUX
|
||||
#if defined(OS_CHROMEOS)
|
||||
, ctrl_terminal_fd(-1)
|
||||
@@ -249,6 +250,9 @@ struct LaunchOptions {
|
||||
#if defined(OS_LINUX)
|
||||
// If non-zero, start the process using clone(), using flags as provided.
|
||||
int clone_flags;
|
||||
+
|
||||
+ // If true, start the process in a new user namespace.
|
||||
+ bool new_user_namespace;
|
||||
#endif // defined(OS_LINUX)
|
||||
|
||||
#if defined(OS_CHROMEOS)
|
||||
diff --git a/base/process_util_posix.cc b/base/process_util_posix.cc
|
||||
index 83afe44..e529b2b 100644
|
||||
--- a/base/process_util_posix.cc
|
||||
+++ b/base/process_util_posix.cc
|
||||
@@ -34,6 +34,13 @@
|
||||
#include "base/threading/platform_thread.h"
|
||||
#include "base/threading/thread_restrictions.h"
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
+#include <sched.h>
|
||||
+#if !defined(CLONE_NEWUSER)
|
||||
+#define CLONE_NEWUSER 0x10000000
|
||||
+#endif
|
||||
+#endif
|
||||
+
|
||||
#if defined(OS_CHROMEOS)
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
@@ -621,8 +628,19 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
|
||||
pid_t pid;
|
||||
#if defined(OS_LINUX)
|
||||
- if (options.clone_flags) {
|
||||
- pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
|
||||
+ int map_pipe_fd[2];
|
||||
+ int flags = options.clone_flags;
|
||||
+
|
||||
+ if (options.new_user_namespace) {
|
||||
+ flags |= CLONE_NEWUSER;
|
||||
+ if (pipe(map_pipe_fd) < 0) {
|
||||
+ DPLOG(ERROR) << "user namespace pipe";
|
||||
+ return false;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (options.clone_flags || options.new_user_namespace) {
|
||||
+ pid = syscall(__NR_clone, flags, 0, 0, 0);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
@@ -635,6 +653,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
} else if (pid == 0) {
|
||||
// Child process
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
+ if (options.new_user_namespace) {
|
||||
+ // Close the write end of the pipe so we get an EOF when the parent closes
|
||||
+ // the FD. This is to avoid race conditions when the UID/GID mappings are
|
||||
+ // written _after_ execvp().
|
||||
+ close(map_pipe_fd[1]);
|
||||
+
|
||||
+ char dummy;
|
||||
+ if (HANDLE_EINTR(read(map_pipe_fd[0], &dummy, 1)) != 0) {
|
||||
+ RAW_LOG(ERROR, "Unexpected input in uid/gid mapping pipe.");
|
||||
+ _exit(127);
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
// DANGER: fork() rule: in the child, if you don't end up doing exec*(),
|
||||
// you call _exit() instead of exit(). This is because _exit() does not
|
||||
// call any previously-registered (in the parent) exit handlers, which
|
||||
@@ -749,6 +782,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
_exit(127);
|
||||
} else {
|
||||
// Parent process
|
||||
+#if defined(OS_LINUX)
|
||||
+ if (options.new_user_namespace) {
|
||||
+ // We need to write UID/GID mapping here to map the current user outside
|
||||
+ // the namespace to the root user inside the namespace in order to
|
||||
+ // correctly "fool" the child process.
|
||||
+ char buf[256];
|
||||
+ int map_fd, map_len;
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "/proc/%d/uid_map", pid);
|
||||
+ map_fd = open(buf, O_RDWR);
|
||||
+ DPCHECK(map_fd >= 0);
|
||||
+ snprintf(buf, sizeof(buf), "0 %d 1", geteuid());
|
||||
+ map_len = strlen(buf);
|
||||
+ if (write(map_fd, buf, map_len) != map_len) {
|
||||
+ RAW_LOG(WARNING, "Can't write to uid_map.");
|
||||
+ }
|
||||
+ close(map_fd);
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "/proc/%d/gid_map", pid);
|
||||
+ map_fd = open(buf, O_RDWR);
|
||||
+ DPCHECK(map_fd >= 0);
|
||||
+ snprintf(buf, sizeof(buf), "0 %d 1", getegid());
|
||||
+ map_len = strlen(buf);
|
||||
+ if (write(map_fd, buf, map_len) != map_len) {
|
||||
+ RAW_LOG(WARNING, "Can't write to gid_map.");
|
||||
+ }
|
||||
+ close(map_fd);
|
||||
+
|
||||
+ // Close the pipe on the parent, so the child can continue doing the
|
||||
+ // execvp() call.
|
||||
+ close(map_pipe_fd[1]);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
if (options.wait) {
|
||||
// While this isn't strictly disk IO, waiting for another process to
|
||||
// finish is the sort of thing ThreadRestrictions is trying to prevent.
|
||||
diff --git a/content/browser/zygote_host/zygote_host_impl_linux.cc b/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
index 130f44a..c1232d4 100644
|
||||
--- a/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
+++ b/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
@@ -118,25 +118,31 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
|
||||
sandbox_binary_ = sandbox_cmd.c_str();
|
||||
|
||||
- // A non empty sandbox_cmd means we want a SUID sandbox.
|
||||
- using_suid_sandbox_ = !sandbox_cmd.empty();
|
||||
+ bool userns_sandbox = false;
|
||||
+ const std::vector<std::string> cmd_line_unwrapped(cmd_line.argv());
|
||||
|
||||
- if (using_suid_sandbox_) {
|
||||
+ if (!sandbox_cmd.empty()) {
|
||||
struct stat st;
|
||||
if (stat(sandbox_binary_.c_str(), &st) != 0) {
|
||||
LOG(FATAL) << "The SUID sandbox helper binary is missing: "
|
||||
<< sandbox_binary_ << " Aborting now.";
|
||||
}
|
||||
|
||||
- if (access(sandbox_binary_.c_str(), X_OK) == 0 &&
|
||||
- (st.st_uid == 0) &&
|
||||
- (st.st_mode & S_ISUID) &&
|
||||
- (st.st_mode & S_IXOTH)) {
|
||||
+ if (access(sandbox_binary_.c_str(), X_OK) == 0) {
|
||||
+ using_suid_sandbox_ = true;
|
||||
+
|
||||
cmd_line.PrependWrapper(sandbox_binary_);
|
||||
|
||||
scoped_ptr<sandbox::SetuidSandboxClient>
|
||||
sandbox_client(sandbox::SetuidSandboxClient::Create());
|
||||
sandbox_client->SetupLaunchEnvironment();
|
||||
+
|
||||
+ if (!((st.st_uid == 0) &&
|
||||
+ (st.st_mode & S_ISUID) &&
|
||||
+ (st.st_mode & S_IXOTH))) {
|
||||
+ userns_sandbox = true;
|
||||
+ sandbox_client->SetNoSuid();
|
||||
+ }
|
||||
} else {
|
||||
LOG(FATAL) << "The SUID sandbox helper binary was found, but is not "
|
||||
"configured correctly. Rather than run without sandboxing "
|
||||
@@ -160,7 +166,19 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
base::ProcessHandle process = -1;
|
||||
base::LaunchOptions options;
|
||||
options.fds_to_remap = &fds_to_map;
|
||||
+ if (userns_sandbox)
|
||||
+ options.new_user_namespace = true;
|
||||
base::LaunchProcess(cmd_line.argv(), options, &process);
|
||||
+
|
||||
+ if (process == -1 && userns_sandbox) {
|
||||
+ LOG(ERROR) << "User namespace sandbox failed to start, running without "
|
||||
+ << "sandbox! You need at least kernel 3.8.0 with CONFIG_USER_NS "
|
||||
+ << "enabled in order to use the sandbox without setuid bit.";
|
||||
+ using_suid_sandbox_ = false;
|
||||
+ options.new_user_namespace = false;
|
||||
+ base::LaunchProcess(cmd_line_unwrapped, options, &process);
|
||||
+ }
|
||||
+
|
||||
CHECK(process != -1) << "Failed to launch zygote process";
|
||||
|
||||
if (using_suid_sandbox_) {
|
||||
diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc
|
||||
index 7d01722..2f445ef 100644
|
||||
--- a/content/zygote/zygote_main_linux.cc
|
||||
+++ b/content/zygote/zygote_main_linux.cc
|
||||
@@ -395,6 +395,13 @@ static bool EnterSandbox(sandbox::SetuidSandboxClient* setuid_sandbox,
|
||||
*has_started_new_init = true;
|
||||
}
|
||||
|
||||
+ // Don't set non-dumpable, as it causes trouble when the host tries to find
|
||||
+ // the zygote process (XXX: Not quite sure why this happens with user
|
||||
+ // namespaces). Fortunately, we also have the seccomp filter sandbox which
|
||||
+ // should disallow the use of ptrace.
|
||||
+ if (setuid_sandbox->IsNoSuid())
|
||||
+ return true;
|
||||
+
|
||||
#if !defined(OS_OPENBSD)
|
||||
// Previously, we required that the binary be non-readable. This causes the
|
||||
// kernel to mark the process as non-dumpable at startup. The thinking was
|
||||
diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
index 34231d4..36e3201 100644
|
||||
--- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
@@ -166,6 +166,10 @@ bool SetuidSandboxClient::IsInNewNETNamespace() const {
|
||||
return env_->HasVar(kSandboxNETNSEnvironmentVarName);
|
||||
}
|
||||
|
||||
+bool SetuidSandboxClient::IsNoSuid() const {
|
||||
+ return env_->HasVar(kSandboxNoSuidVarName);
|
||||
+}
|
||||
+
|
||||
bool SetuidSandboxClient::IsSandboxed() const {
|
||||
return sandboxed_;
|
||||
}
|
||||
@@ -175,5 +179,9 @@ void SetuidSandboxClient::SetupLaunchEnvironment() {
|
||||
SetSandboxAPIEnvironmentVariable(env_);
|
||||
}
|
||||
|
||||
+void SetuidSandboxClient::SetNoSuid() {
|
||||
+ env_->SetVar(kSandboxNoSuidVarName, "1");
|
||||
+}
|
||||
+
|
||||
} // namespace sandbox
|
||||
|
||||
diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.h b/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
index a9f6536..2e8113a 100644
|
||||
--- a/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
@@ -39,6 +39,8 @@ class SetuidSandboxClient {
|
||||
bool IsInNewPIDNamespace() const;
|
||||
// Did the setuid helper create a new network namespace ?
|
||||
bool IsInNewNETNamespace() const;
|
||||
+ // Is sandboxed without SUID binary ?
|
||||
+ bool IsNoSuid() const;
|
||||
// Are we done and fully sandboxed ?
|
||||
bool IsSandboxed() const;
|
||||
|
||||
@@ -46,6 +48,8 @@ class SetuidSandboxClient {
|
||||
// helper.
|
||||
void SetupLaunchEnvironment();
|
||||
|
||||
+ void SetNoSuid();
|
||||
+
|
||||
private:
|
||||
// Holds the environment. Will never be NULL.
|
||||
base::Environment* env_;
|
||||
diff --git a/sandbox/linux/suid/common/sandbox.h b/sandbox/linux/suid/common/sandbox.h
|
||||
index aad4ff8..bd710d5 100644
|
||||
--- a/sandbox/linux/suid/common/sandbox.h
|
||||
+++ b/sandbox/linux/suid/common/sandbox.h
|
||||
@@ -18,6 +18,7 @@ static const char kAdjustLowMemMarginSwitch[] = "--adjust-low-mem";
|
||||
|
||||
static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D";
|
||||
static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID";
|
||||
+static const char kSandboxNoSuidVarName[] = "SBX_NO_SUID";
|
||||
|
||||
static const long kSUIDSandboxApiNumber = 1;
|
||||
static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ";
|
@ -1,18 +1,18 @@
|
||||
# This file is autogenerated from update.sh in the same directory.
|
||||
{
|
||||
dev = {
|
||||
version = "29.0.1521.3";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1521.3.tar.xz";
|
||||
sha256 = "0szc3g24jlhcp8cgijdv0q9rfn3mhp2kjyc85ml4snskkpasfrv3";
|
||||
version = "29.0.1547.0";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.0.tar.xz";
|
||||
sha256 = "0ydinl0zrsm995rcpph4i56335nzhp1fqnlz39lg4vbjsshchh9x";
|
||||
};
|
||||
beta = {
|
||||
version = "28.0.1500.45";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-28.0.1500.45.tar.xz";
|
||||
sha256 = "01sxqv6i7m5h0jsypg801w2ivbrir37wdi4ijd5yvprkyzbd90zi";
|
||||
version = "28.0.1500.52";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-28.0.1500.52.tar.xz";
|
||||
sha256 = "1d0q8lsvwqkaninmnyc8jjj0pnqxc5rr3lr3mgzj37avksxvyg3v";
|
||||
};
|
||||
stable = {
|
||||
version = "27.0.1453.110";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-27.0.1453.110.tar.xz";
|
||||
sha256 = "1y61shbzrkcv70x9zyj559g2yyp40hi9y59f7wwx5g076lsaxsw5";
|
||||
version = "28.0.1500.52";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-28.0.1500.52.tar.xz";
|
||||
sha256 = "1d0q8lsvwqkaninmnyc8jjj0pnqxc5rr3lr3mgzj37avksxvyg3v";
|
||||
};
|
||||
}
|
||||
|
@ -1,175 +0,0 @@
|
||||
{ stdenv, fetchurl, pkgconfig, gtk, pango, perl, python, zip, libIDL
|
||||
, libjpeg, libpng, zlib, cairo, dbus, dbus_glib, bzip2, xlibs
|
||||
, freetype, fontconfig, file, alsaLib, nspr, nss, libnotify
|
||||
, yasm, mesa, sqlite, unzip, makeWrapper, pysqlite
|
||||
|
||||
, # If you want the resulting program to call itself "Firefox" instead
|
||||
# of "Shiretoko" or whatever, enable this option. However, those
|
||||
# binaries may not be distributed without permission from the
|
||||
# Mozilla Foundation, see
|
||||
# http://www.mozilla.org/foundation/trademarks/.
|
||||
enableOfficialBranding ? false
|
||||
}:
|
||||
|
||||
assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
|
||||
|
||||
rec {
|
||||
|
||||
firefoxVersion = "20.0";
|
||||
|
||||
xulVersion = "20.0"; # this attribute is used by other packages
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
# It is better to use this url for official releases, to take load off Mozilla's ftp server.
|
||||
"http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
|
||||
# Fall back to this url for versions not available at releases.mozilla.org.
|
||||
"ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
|
||||
];
|
||||
sha1 = "6d776c29da0be0d2a50abeb504d63b06b7861218";
|
||||
};
|
||||
|
||||
commonConfigureFlags =
|
||||
[ "--enable-optimize"
|
||||
#"--enable-profiling"
|
||||
"--disable-debug"
|
||||
"--enable-strip"
|
||||
"--with-system-jpeg" # now we use recent libjpeg-turbo
|
||||
"--with-system-zlib"
|
||||
"--with-system-bz2"
|
||||
"--with-system-nspr"
|
||||
"--with-system-nss"
|
||||
# "--with-system-png" # <-- "--with-system-png won't work because the system's libpng doesn't have APNG support"
|
||||
# "--enable-system-cairo" # <-- doesn't build
|
||||
"--enable-system-sqlite"
|
||||
"--disable-crashreporter"
|
||||
"--disable-tests"
|
||||
"--disable-necko-wifi" # maybe we want to enable this at some point
|
||||
"--disable-installer"
|
||||
"--disable-updater"
|
||||
];
|
||||
|
||||
|
||||
xulrunner = stdenv.mkDerivation rec {
|
||||
name = "xulrunner-${xulVersion}";
|
||||
|
||||
inherit src;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig gtk perl zip libIDL libjpeg libpng zlib cairo bzip2
|
||||
python dbus dbus_glib pango freetype fontconfig xlibs.libXi
|
||||
xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
|
||||
alsaLib nspr nss libnotify xlibs.pixman yasm mesa
|
||||
xlibs.libXScrnSaver xlibs.scrnsaverproto pysqlite
|
||||
xlibs.libXext xlibs.xextproto sqlite unzip makeWrapper
|
||||
];
|
||||
|
||||
configureFlags =
|
||||
[ "--enable-application=xulrunner"
|
||||
"--disable-javaxpcom"
|
||||
] ++ commonConfigureFlags;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
export NIX_LDFLAGS="$NIX_LDFLAGS -L$out/lib/xulrunner-${xulVersion}"
|
||||
|
||||
mkdir ../objdir
|
||||
cd ../objdir
|
||||
configureScript=../mozilla-release/configure
|
||||
''; # */
|
||||
|
||||
#installFlags = "SKIP_GRE_REGISTRATION=1";
|
||||
|
||||
postInstall = ''
|
||||
# Fix run-mozilla.sh search
|
||||
libDir=$(cd $out/lib && ls -d xulrunner-[0-9]*)
|
||||
echo libDir: $libDir
|
||||
test -n "$libDir"
|
||||
cd $out/bin
|
||||
rm xulrunner
|
||||
|
||||
for i in $out/lib/$libDir/*; do
|
||||
file $i;
|
||||
if file $i | grep executable &>/dev/null; then
|
||||
echo -e '#! /bin/sh\nexec "'"$i"'" "$@"' > "$out/bin/$(basename "$i")";
|
||||
chmod a+x "$out/bin/$(basename "$i")";
|
||||
fi;
|
||||
done
|
||||
for i in $out/lib/$libDir/*.so; do
|
||||
patchelf --set-rpath "$(patchelf --print-rpath "$i"):$out/lib/$libDir" $i || true
|
||||
done
|
||||
for i in $out/lib/$libDir/{plugin-container,xulrunner,xulrunner-stub}; do
|
||||
wrapProgram $i --prefix LD_LIBRARY_PATH ':' "$out/lib/$libDir"
|
||||
done
|
||||
rm -f $out/bin/run-mozilla.sh
|
||||
''; # */
|
||||
|
||||
meta = {
|
||||
description = "Mozilla Firefox XUL runner";
|
||||
homepage = http://www.mozilla.com/en-US/firefox/;
|
||||
};
|
||||
|
||||
passthru = { inherit gtk; version = xulVersion; };
|
||||
};
|
||||
|
||||
|
||||
firefox = stdenv.mkDerivation rec {
|
||||
name = "firefox-${firefoxVersion}";
|
||||
|
||||
inherit src;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig gtk perl zip libIDL libjpeg zlib cairo bzip2 python
|
||||
dbus dbus_glib pango freetype fontconfig alsaLib nspr nss libnotify
|
||||
xlibs.pixman yasm mesa sqlite file unzip pysqlite
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [xulrunner];
|
||||
|
||||
configureFlags =
|
||||
[ "--enable-application=browser"
|
||||
"--with-libxul-sdk=${xulrunner}/lib/xulrunner-devel-${xulrunner.version}"
|
||||
"--enable-chrome-format=jar"
|
||||
]
|
||||
++ commonConfigureFlags
|
||||
++ stdenv.lib.optional enableOfficialBranding "--enable-official-branding";
|
||||
|
||||
makeFlags = [
|
||||
"SYSTEM_LIBXUL=1"
|
||||
];
|
||||
|
||||
# Hack to work around make's idea of -lbz2 dependency
|
||||
preConfigure =
|
||||
''
|
||||
find . -name Makefile.in -execdir sed -i '{}' -e '1ivpath %.so ${
|
||||
stdenv.lib.concatStringsSep ":"
|
||||
(map (s : s + "/lib") (buildInputs ++ [stdenv.gcc.libc]))
|
||||
}' ';'
|
||||
'';
|
||||
|
||||
postInstall =
|
||||
''
|
||||
ln -s ${xulrunner}/lib/xulrunner-${xulrunner.version} $(echo $out/lib/firefox-*)/xulrunner
|
||||
cd "$out/lib/"firefox-*
|
||||
rm firefox
|
||||
echo -e '#!${stdenv.shell}\nexec ${xulrunner}/bin/xulrunner "'"$PWD"'/application.ini" "$@"' > firefox
|
||||
chmod a+x firefox
|
||||
''; # */
|
||||
|
||||
meta = {
|
||||
description = "Mozilla Firefox - the browser, reloaded";
|
||||
homepage = http://www.mozilla.com/en-US/firefox/;
|
||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
||||
};
|
||||
|
||||
passthru = {
|
||||
inherit gtk xulrunner nspr;
|
||||
isFirefox3Like = true;
|
||||
};
|
||||
};
|
||||
}
|
@ -19,9 +19,9 @@ assert useSystemCairo -> cairo != null;
|
||||
let optional = stdenv.lib.optional;
|
||||
in rec {
|
||||
|
||||
firefoxVersion = "21.0";
|
||||
firefoxVersion = "22.0";
|
||||
|
||||
xulVersion = "21.0"; # this attribute is used by other packages
|
||||
xulVersion = "22.0"; # this attribute is used by other packages
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
@ -31,7 +31,7 @@ in rec {
|
||||
# Fall back to this url for versions not available at releases.mozilla.org.
|
||||
"ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
|
||||
];
|
||||
sha1 = "e63b5488eaec1956947f59609d5839332ba7ffe1";
|
||||
sha1 = "db2d5b028b6ea95b5f006b46e153f50f7a52bf80";
|
||||
};
|
||||
|
||||
commonConfigureFlags =
|
||||
@ -46,7 +46,7 @@ in rec {
|
||||
"--with-system-nss"
|
||||
"--with-system-libevent"
|
||||
"--with-system-libvpx"
|
||||
# "--with-system-png" # <-- "--with-system-png won't work because the system's libpng doesn't have APNG support"
|
||||
"--with-system-png"
|
||||
"--enable-startup-notification"
|
||||
"--enable-system-ffi"
|
||||
"--enable-system-hunspell"
|
||||
@ -66,7 +66,7 @@ in rec {
|
||||
inherit src;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig gtk perl zip libIDL libjpeg libpng zlib bzip2
|
||||
[ pkgconfig libpng gtk perl zip libIDL libjpeg zlib bzip2
|
||||
python dbus dbus_glib pango freetype fontconfig xlibs.libXi
|
||||
xlibs.libX11 xlibs.libXrender xlibs.libXft xlibs.libXt file
|
||||
alsaLib nspr nss libnotify xlibs.pixman yasm mesa
|
||||
@ -82,7 +82,7 @@ in rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
patches = optional useSystemCairo ./system-cairo.patch; # probably in 22
|
||||
patches = optional useSystemCairo ./system-cairo.patch;
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
@ -136,7 +136,7 @@ in rec {
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig gtk perl zip libIDL libjpeg zlib bzip2 python
|
||||
[ pkgconfig libpng gtk perl zip libIDL libjpeg zlib bzip2 python
|
||||
dbus dbus_glib pango freetype fontconfig alsaLib nspr nss libnotify
|
||||
xlibs.pixman yasm mesa sqlite file unzip pysqlite
|
||||
hunspell libevent libstartup_notification libvpx
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, rpm, cpio, mesa, xorg, cairo
|
||||
, libpng12, gtk, glib, gdk_pixbuf, fontconfig, freetype, curl
|
||||
, libpng, gtk, glib, gdk_pixbuf, fontconfig, freetype, curl
|
||||
, dbus_glib, alsaLib, pulseaudio, udev, pango
|
||||
}:
|
||||
|
||||
@ -14,7 +14,7 @@ let
|
||||
xorg.libXt
|
||||
xorg.libX11
|
||||
cairo
|
||||
libpng12
|
||||
libpng
|
||||
gtk
|
||||
glib
|
||||
fontconfig
|
||||
@ -79,13 +79,13 @@ stdenv.mkDerivation rec {
|
||||
$plugins/libnpgtpo3dautoplugin.so
|
||||
|
||||
mkdir -p $out/libexec/google/talkplugin
|
||||
cp opt/google/talkplugin/GoogleTalkPlugin $out/libexec/google/talkplugin/
|
||||
|
||||
cp -prd opt/google/talkplugin/{GoogleTalkPlugin,locale,windowpicker.glade} $out/libexec/google/talkplugin/
|
||||
|
||||
mkdir -p $out/libexec/google/talkplugin/lib
|
||||
cp opt/google/talkplugin/lib/libCg* $out/libexec/google/talkplugin/lib/
|
||||
|
||||
patchelf --set-rpath "$out/libexec/google/talkplugin/lib" \
|
||||
$out/libexec/google/talkplugin/lib/libCgGL.so
|
||||
$out/libexec/google/talkplugin/lib/libCgGL.so
|
||||
|
||||
patchelf \
|
||||
--set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
|
||||
@ -102,7 +102,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
dontStrip = true;
|
||||
dontPatchELF = true;
|
||||
|
||||
|
||||
passthru.mozillaPlugin = "/lib/mozilla/plugins";
|
||||
|
||||
meta = {
|
||||
|
@ -12,8 +12,8 @@
|
||||
#include <fcntl.h>
|
||||
#include <limits.h>
|
||||
|
||||
char origDir [] = "/opt/google/talkplugin/GoogleTalkPlugin";
|
||||
char realDir [] = OUT "/libexec/google/talkplugin/GoogleTalkPlugin";
|
||||
char origDir [] = "/opt/google/talkplugin";
|
||||
char realDir [] = OUT "/libexec/google/talkplugin";
|
||||
|
||||
const char * rewrite(const char * path, char * buf)
|
||||
{
|
||||
@ -29,3 +29,31 @@ int execvp(const char * path, char * const argv[])
|
||||
char buf[PATH_MAX];
|
||||
return _execvp(rewrite(path, buf), argv);
|
||||
}
|
||||
|
||||
int open(const char *path, int flags, ...)
|
||||
{
|
||||
char buf[PATH_MAX];
|
||||
int (*_open) (const char *, int, mode_t) = dlsym(RTLD_NEXT, "open");
|
||||
mode_t mode = 0;
|
||||
if (flags & O_CREAT) {
|
||||
va_list ap;
|
||||
va_start(ap, flags);
|
||||
mode = va_arg(ap, mode_t);
|
||||
va_end(ap);
|
||||
}
|
||||
return _open(rewrite(path, buf), flags, mode);
|
||||
}
|
||||
|
||||
int open64(const char *path, int flags, ...)
|
||||
{
|
||||
char buf[PATH_MAX];
|
||||
int (*_open64) (const char *, int, mode_t) = dlsym(RTLD_NEXT, "open64");
|
||||
mode_t mode = 0;
|
||||
if (flags & O_CREAT) {
|
||||
va_list ap;
|
||||
va_start(ap, flags);
|
||||
mode = va_arg(ap, mode_t);
|
||||
va_end(ap);
|
||||
}
|
||||
return _open64(rewrite(path, buf), flags, mode);
|
||||
}
|
||||
|
@ -0,0 +1,42 @@
|
||||
{ stdenv, fetchurl, sqlite, curl, pkgconfig, libxml2, stfl, json_c, ncurses
|
||||
, gettext, libiconvOrEmpty, makeWrapper, perl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "newsbeuter-2.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.newsbeuter.org/downloads/${name}.tar.gz";
|
||||
sha256 = "1hywz5206k0ykjklkjvnfy9fm4jfv9phz8dkzzwhfcjvqv9zv29i";
|
||||
};
|
||||
|
||||
buildInputs
|
||||
# use gettext instead of libintlOrEmpty so we have access to the msgfmt
|
||||
# command
|
||||
= [ pkgconfig sqlite curl libxml2 stfl json_c ncurses gettext perl ]
|
||||
++ libiconvOrEmpty
|
||||
++ stdenv.lib.optional stdenv.isDarwin makeWrapper;
|
||||
|
||||
preBuild = ''
|
||||
sed -i -e 104,108d config.sh
|
||||
sed -i "1 s%^.*$%#!${perl}/bin/perl%" txt2h.pl
|
||||
export LDFLAGS=-lncursesw
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
DESTDIR=$out prefix=\"\" make install
|
||||
''
|
||||
+ stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
for prog in $out/bin/*; do
|
||||
wrapProgram "$prog" --prefix DYLD_LIBRARY_PATH : "${stfl}/lib"
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://www.newsbeuter.org;
|
||||
description = "An open-source RSS/Atom feed reader for text terminals";
|
||||
maintainers = with stdenv.lib.maintainers; [ lovek323 ];
|
||||
license = stdenv.lib.licenses.mit;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -1,21 +1,23 @@
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, gtk, libglade, libosip, libexosip
|
||||
, speex, readline, mediastreamer, libsoup }:
|
||||
, speex, readline, mediastreamer, libsoup, udev, libnotify }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "linphone-3.5.2";
|
||||
name = "linphone-3.6.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://savannah/linphone/3.5.x/sources/${name}.tar.gz";
|
||||
sha256 = "0830iam7kgqphgk3q6qx93kp5wrf0gnm5air82jamy7377jxadys";
|
||||
url = "mirror://savannah/linphone/3.6.x/sources/${name}.tar.gz";
|
||||
sha256 = "186jm4nd4ggb0j8cs8wnpm4sy9cr7chq0c6kx2yc6y4k7qi83fh5";
|
||||
};
|
||||
|
||||
patches = [ ./fix-deprecated.patch ];
|
||||
|
||||
buildInputs = [ gtk libglade libosip libexosip readline mediastreamer speex libsoup ];
|
||||
buildInputs = [ gtk libglade libosip libexosip readline mediastreamer speex libsoup udev
|
||||
libnotify ];
|
||||
|
||||
nativeBuildInputs = [ intltool pkgconfig ];
|
||||
|
||||
preConfigure = "rm -r mediastreamer2 oRTP";
|
||||
preConfigure = ''
|
||||
rm -r mediastreamer2 oRTP
|
||||
sed -i s,/bin/echo,echo, coreapi/Makefile*
|
||||
'';
|
||||
|
||||
configureFlags = "--enable-external-ortp --enable-external-mediastreamer";
|
||||
|
||||
|
@ -0,0 +1,84 @@
|
||||
{ stdenv, fetchurl, libyaml, alsaLib, openssl, libuuid, pkgconfig, pulseaudio, libsamplerate
|
||||
, commoncpp2, ccrtp, libzrtpcpp, dbus, dbus_cplusplus, expat, pcre, gsm, speex, ilbc, libopus
|
||||
, autoconf, automake, libtool, gettext, perl
|
||||
, cmake, qt4
|
||||
, gtk, glib, dbus_glib, libnotify, intltool, makeWrapper }:
|
||||
|
||||
let
|
||||
name = "sflphone-1.2.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://projects.savoirfairelinux.com/attachments/download/6423/${name}.tar.gz";
|
||||
sha256 = "0aiwlky7mp5l51a7kkhkmaz7ivapypar291kdxzdxl1s3qy0x6fd";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://sflphone.org/;
|
||||
license = "GPLv3+";
|
||||
description = "Free software enterprise-class softphone for GNU/Linux";
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
};
|
||||
|
||||
in
|
||||
rec {
|
||||
daemon = stdenv.mkDerivation {
|
||||
name = name + "-daemon";
|
||||
|
||||
inherit src;
|
||||
|
||||
patches = [ ./libzrtpcpp-cflags.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
cd daemon
|
||||
|
||||
# Post patch, required
|
||||
autoreconf -vfi
|
||||
|
||||
cd libs
|
||||
bash ./compile_pjsip.sh
|
||||
cd ..
|
||||
'';
|
||||
|
||||
configureFlags = "--with-expat --with-expat-inc=${expat}/include " +
|
||||
"--with-expat-lib=-lexpat --with-opus ";
|
||||
|
||||
buildInputs = [ libyaml alsaLib openssl libuuid pkgconfig pulseaudio libsamplerate
|
||||
commoncpp2 ccrtp libzrtpcpp dbus dbus_cplusplus expat pcre gsm speex ilbc libopus
|
||||
autoconf automake libtool gettext perl ];
|
||||
};
|
||||
|
||||
# This fails still.
|
||||
# I don't know the best way to make this a KDE program (with switchable kde
|
||||
# libs, like digikam for example)
|
||||
/*
|
||||
kde = stdenv.mkDerivation {
|
||||
name = name + "-kde";
|
||||
|
||||
inherit src;
|
||||
|
||||
preConfigure = ''
|
||||
cd kde
|
||||
'';
|
||||
|
||||
buildInputs = [ daemon cmake qt4 pkgconfig ];
|
||||
};
|
||||
*/
|
||||
|
||||
gnome = stdenv.mkDerivation {
|
||||
name = name + "-gnome";
|
||||
|
||||
inherit src;
|
||||
|
||||
preConfigure = ''
|
||||
cd gnome
|
||||
'';
|
||||
|
||||
# gtk3 programs have the runtime dependency on XDG_DATA_DIRS
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/sflphone* --prefix XDG_DATA_DIRS ":" ${gtk}/share
|
||||
'';
|
||||
|
||||
buildInputs = [ daemon pkgconfig gtk glib dbus_glib libnotify intltool makeWrapper ];
|
||||
};
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
diff --git a/daemon/src/audio/audiortp/Makefile.am b/daemon/src/audio/audiortp/Makefile.am
|
||||
index c27eedd..fe64077 100644
|
||||
--- a/daemon/src/audio/audiortp/Makefile.am
|
||||
+++ b/daemon/src/audio/audiortp/Makefile.am
|
||||
@@ -4,6 +4,10 @@ noinst_LTLIBRARIES = libaudiortp.la
|
||||
|
||||
if BUILD_ZRTP
|
||||
SFL_ZRTP_SRC=audio_zrtp_session.h audio_zrtp_session.cpp zrtp_session_callback.cpp zrtp_session_callback.h
|
||||
+libaudiortp_la_CXXFLAGS = \
|
||||
+ @CCGNU2_CFLAGS@ \
|
||||
+ @ZRTPCPP_CFLAGS@ \
|
||||
+ @CCRTP_CFLAGS@
|
||||
endif
|
||||
|
||||
libaudiortp_la_SOURCES = \
|
@ -12,14 +12,14 @@
|
||||
enableOfficialBranding ? false
|
||||
}:
|
||||
|
||||
let version = "17.0.6"; in
|
||||
let version = "17.0.7"; in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "thunderbird-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
|
||||
sha1 = "cb5cb5dbfe77179b5853345c826eaa2bc634d48c";
|
||||
sha1 = "d6dca3e1cc4293f2e15d6b35056bd8dc319014ee";
|
||||
};
|
||||
|
||||
enableParallelBuilding = false;
|
||||
|
@ -6,16 +6,14 @@ jackaudio ? null }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mumble-" + version;
|
||||
version = "1.2.3";
|
||||
version = "1.2.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/mumble/${name}.tar.gz";
|
||||
sha256 = "0p4as6bcmbzkiff1gvc0f277dzbz2sfys97gcbxw7gjamqi53285";
|
||||
sha256 = "16wwj6gwcnyjlnzh7wk0l255ldxmbwx0wi652sdp20lsv61q7kx1";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
sed -e s/qt_ja_JP.qm// -i src/mumble/mumble.pro src/mumble11x/mumble11x.pro
|
||||
sed -e /qt_ja_JP.qm/d -i src/mumble/mumble_qt.qrc src/mumble11x/mumble_qt.qrc
|
||||
patch -p1 < ${ ./mumble-jack-support.patch }
|
||||
'';
|
||||
|
||||
|
27
pkgs/applications/networking/newsreaders/liferea/default.nix
Normal file
27
pkgs/applications/networking/newsreaders/liferea/default.nix
Normal file
@ -0,0 +1,27 @@
|
||||
{ stdenv, fetchurl, pkgconfig, intltool, glib, gtk2, gnome2 /*just GConf*/
|
||||
, libsoup, libunique, libxslt, webkit_gtk2, json_glib
|
||||
, libnotify /*optional*/ }:
|
||||
|
||||
let version = "1.8.15";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "liferea-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/liferea/Liferea%20Stable/${version}/${name}.tar.bz2";
|
||||
sha256 = "12hhdl5biwcvr9ds7pdhhvlp4vggjix6xm4z5pnfaz53ai2dnc99";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig intltool gtk2 gnome2.GConf
|
||||
libsoup libunique libxslt webkit_gtk2 json_glib
|
||||
libnotify
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "A GTK-based news feed agregator";
|
||||
homepage = http://lzone.de/liferea/;
|
||||
maintainers = [ stdenv.lib.maintainers.vcunat ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
@ -1,11 +1,11 @@
|
||||
{stdenv, fetchurl, openssl, libsamplerate}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pjsip-1.8.10";
|
||||
name = "pjsip-2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.pjsip.org/release/1.8.10/pjproject-1.8.10.tar.bz2;
|
||||
sha256 = "1v2mgbgzn7d3msb406jmg69ms97a0rqg58asykx71dmjipbaiqc0";
|
||||
url = http://www.pjsip.org/release/2.1/pjproject-2.1.tar.bz2;
|
||||
md5 = "310eb63638dac93095f6a1fc8ee1f578";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl libsamplerate ];
|
||||
|
13
pkgs/applications/networking/siproxd/cheaders.patch
Normal file
13
pkgs/applications/networking/siproxd/cheaders.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/src/dejitter.c b/src/dejitter.c
|
||||
index 1904ab3..cb3624d 100644
|
||||
--- a/src/dejitter.c
|
||||
+++ b/src/dejitter.c
|
||||
@@ -22,6 +22,8 @@
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
+#include <string.h>
|
||||
+#include <sys/time.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
@ -1,13 +1,15 @@
|
||||
{ stdenv, fetchurl, libosip }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "siproxd-0.8.0";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "siproxd-0.8.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/siproxd/siproxd-0.8.0.tar.gz;
|
||||
sha256 = "0hl51z33cf68ki707jkrrjjc3a5vpaf49gbrsz3g4rfxypdhc0qs";
|
||||
url = "mirror://sourceforge/siproxd/${name}.tar.gz";
|
||||
sha256 = "1bcxl0h5nc28m8lcdhpbl5yc93w98xm53mfzrf04knsvmx7z0bfz";
|
||||
};
|
||||
|
||||
patches = [ ./cheaders.patch ];
|
||||
|
||||
buildInputs = [ libosip ];
|
||||
|
||||
meta = {
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, openssl, protobufc, libconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "umurmur-0.2.12";
|
||||
name = "umurmur-0.2.13";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://umurmur.googlecode.com/files/${name}.tar.gz";
|
||||
sha1 = "5be3c765af3c5f518d1e1bbd828b3582ad4097cd";
|
||||
sha1 = "c9345b67213f52688fef2113132c62d2edbf4bea";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl protobufc libconfig ];
|
||||
|
16
pkgs/applications/office/hledger-irr/default.nix
Normal file
16
pkgs/applications/office/hledger-irr/default.nix
Normal file
@ -0,0 +1,16 @@
|
||||
{ cabal, Cabal, hledgerLib, statistics, time }:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "hledger-irr";
|
||||
version = "0.1.1.2";
|
||||
sha256 = "1mh1lzhnxc8ps8n5j37wrmbqafwdyap60j8rqr6xdfa2syfyq8i2";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [ Cabal hledgerLib statistics time ];
|
||||
meta = {
|
||||
description = "computes the internal rate of return of an investment";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
maintainers = [ self.stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
})
|
@ -1,15 +1,15 @@
|
||||
{ stdenv, fetchgit, cmake, boost, gmp, mpfr, libedit, python, texinfo }:
|
||||
|
||||
let
|
||||
rev = "2c7ab8be";
|
||||
rev = "26d7197";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "ledger3-2013.04.${rev}";
|
||||
name = "ledger3-2013.06.${rev}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/jwiegley/ledger.git";
|
||||
url = "https://github.com/ledger/ledger.git";
|
||||
inherit rev;
|
||||
sha256 = "1ng5ymzqzbgdrn2ghhr7jvcjv5y7ikhyck5p1yv5j024s17xdyj5";
|
||||
sha256 = "02nf4kdrd61q9rf5rrarwmx47y2ya5qix7n82cj9qi9p4v3k3m2g";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake boost gmp mpfr libedit python texinfo ];
|
||||
|
@ -6,7 +6,7 @@
|
||||
, libXinerama, openssl, gperf, cppunit, GConf, ORBit2, poppler
|
||||
, librsvg, gnome_vfs, gstreamer, gst_plugins_base, mesa
|
||||
, autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
|
||||
, libwpg, dbus_glib, qt4, kde4, clucene_core_2, libcdr, lcms2, vigra
|
||||
, libwpg, dbus_glib, qt4, kde4, clucene_core, libcdr, lcms, vigra
|
||||
, libiodbc, mdds, saneBackends, mythes, libexttextcat, libvisio
|
||||
, fontsConf
|
||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" ]
|
||||
@ -162,10 +162,10 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
[ ant ArchiveZip autoconf automake bison boost cairo clucene_core_2
|
||||
[ ant ArchiveZip autoconf automake bison boost cairo clucene_core
|
||||
CompressZlib cppunit cups curl db4 dbus_glib expat file flex fontconfig
|
||||
freetype GConf getopt gnome_vfs gperf gst_plugins_base gstreamer gtk
|
||||
hunspell icu jdk kde4.kdelibs lcms2 libcdr libexttextcat libiodbc libjpeg
|
||||
hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat libiodbc libjpeg
|
||||
libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11
|
||||
libXaw libXext libXi libXinerama libxml2 libxslt libXtst mdds mesa mythes
|
||||
neon nspr nss openldap openssl ORBit2 pam perl pkgconfigUpstream poppler
|
||||
|
@ -1,6 +1,7 @@
|
||||
{ stdenv, fetchurl, blas, bzip2, gfortran, liblapack, libX11, libXmu, libXt
|
||||
, libjpeg, libpng, libtiff, ncurses, pango, pcre, perl, readline, tcl
|
||||
, texLive, tk, xz, zlib, less, texinfo, graphviz
|
||||
, texLive, tk, xz, zlib, less, texinfo, graphviz, icu, pkgconfig, bison
|
||||
, imake, which, jdk, atlas
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -13,15 +14,65 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt
|
||||
libXt libjpeg libpng libtiff ncurses pango pcre perl readline tcl
|
||||
texLive tk xz zlib less texinfo graphviz ];
|
||||
texLive tk xz zlib less texinfo graphviz icu pkgconfig bison imake
|
||||
which jdk atlas
|
||||
];
|
||||
|
||||
patches = [ ./no-usr-local-search-paths.patch ];
|
||||
|
||||
preConfigure = ''
|
||||
configureFlagsArray=(
|
||||
--disable-lto
|
||||
--with-blas="-L${atlas}/lib -lf77blas -latlas"
|
||||
--with-lapack="-L${liblapack}/lib -llapack"
|
||||
--with-readline
|
||||
--with-tcltk --with-tcl-config="${tcl}/lib/tclConfig.sh" --with-tk-config="${tk}/lib/tkConfig.sh"
|
||||
--with-cairo
|
||||
--with-libpng
|
||||
--with-jpeglib
|
||||
--with-libtiff
|
||||
--with-system-zlib
|
||||
--with-system-bzlib
|
||||
--with-system-pcre
|
||||
--with-system-xz
|
||||
--with-ICU
|
||||
R_SHELL="${stdenv.shell}"
|
||||
JAVA_HOME="${jdk}"
|
||||
LDFLAGS="-L${gfortran.gcc}/lib"
|
||||
)
|
||||
echo "TCLLIBPATH=${tk}/lib" >>etc/Renviron.in
|
||||
'';
|
||||
|
||||
installTargets = [ "install" "install-info" "install-pdf" ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "a free software environment for statistical computing and graphics";
|
||||
homepage = "http://www.r-project.org/";
|
||||
description = "a free software environment for statistical computing and graphics";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
|
||||
longDescription = ''
|
||||
GNU R is a language and environment for statistical computing and
|
||||
graphics that provides a wide variety of statistical (linear and
|
||||
nonlinear modelling, classical statistical tests, time-series
|
||||
analysis, classification, clustering, ...) and graphical
|
||||
techniques, and is highly extensible. One of R's strengths is the
|
||||
ease with which well-designed publication-quality plots can be
|
||||
produced, including mathematical symbols and formulae where
|
||||
needed. R is an integrated suite of software facilities for data
|
||||
manipulation, calculation and graphical display. It includes an
|
||||
effective data handling and storage facility, a suite of operators
|
||||
for calculations on arrays, in particular matrices, a large,
|
||||
coherent, integrated collection of intermediate tools for data
|
||||
analysis, graphical facilities for data analysis and display
|
||||
either on-screen or on hardcopy, and a well-developed, simple and
|
||||
effective programming language which includes conditionals, loops,
|
||||
user-defined recursive functions and input and output facilities.
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
|
@ -0,0 +1,24 @@
|
||||
diff -ubr R-3.0.1-orig/configure R-3.0.1/configure
|
||||
--- R-3.0.1-orig/configure 2013-07-04 10:46:42.336133947 +0200
|
||||
+++ R-3.0.1/configure 2013-07-04 10:46:17.181919960 +0200
|
||||
@@ -3800,13 +3800,13 @@
|
||||
: ${LIBnn=$libnn}
|
||||
## We provide these defaults so that headers and libraries in
|
||||
## '/usr/local' are found (by the native tools, mostly).
|
||||
-if test -f "/sw/etc/fink.conf"; then
|
||||
- : ${CPPFLAGS="-I/sw/include -I/usr/local/include"}
|
||||
- : ${LDFLAGS="-L/sw/lib -L/usr/local/lib"}
|
||||
-else
|
||||
- : ${CPPFLAGS="-I/usr/local/include"}
|
||||
- : ${LDFLAGS="-L/usr/local/${LIBnn}"}
|
||||
-fi
|
||||
+# if test -f "/sw/etc/fink.conf"; then
|
||||
+# : ${CPPFLAGS="-I/sw/include -I/usr/local/include"}
|
||||
+# : ${LDFLAGS="-L/sw/lib -L/usr/local/lib"}
|
||||
+# else
|
||||
+# : ${CPPFLAGS="-I/usr/local/include"}
|
||||
+# : ${LDFLAGS="-L/usr/local/${LIBnn}"}
|
||||
+# fi
|
||||
|
||||
## take care not to override the command-line setting
|
||||
if test "${libdir}" = '${exec_prefix}/lib'; then
|
@ -1,5 +1,4 @@
|
||||
|
||||
{ stdenv, fetchdarcs, ocaml, findlib, lablgl, camlimages, mesa, freeglut, ocaml_mysql, mlgmp, mpfr, gmp, libtiff, libjpeg, libpng12, giflib }:
|
||||
{ stdenv, fetchdarcs, ocaml, findlib, lablgl, camlimages, mesa, freeglut, ocaml_mysql, mlgmp, mpfr, gmp, libtiff, libjpeg, libpng, giflib }:
|
||||
|
||||
let
|
||||
ocaml_version = (builtins.parseDrvName ocaml.name).version;
|
||||
@ -16,7 +15,7 @@ stdenv.mkDerivation {
|
||||
|
||||
buildInputs = [ ocaml findlib freeglut mesa
|
||||
lablgl camlimages ocaml_mysql mlgmp mpfr gmp
|
||||
libtiff libjpeg libpng12 giflib ];
|
||||
libtiff libjpeg libpng giflib ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin $out/share/doc/glsurf
|
||||
|
@ -21,7 +21,7 @@ stdenv.mkDerivation {
|
||||
|
||||
meta = {
|
||||
homepage = "http://www.gromacs.org";
|
||||
licence = "GPLv2";
|
||||
license = "GPLv2";
|
||||
description = "The GROMACS molecular dynamics software package";
|
||||
longDescription = ''
|
||||
GROMACS is a versatile package to perform molecular dynamics,
|
||||
|
@ -9,8 +9,9 @@ rec {
|
||||
|
||||
git = lib.makeOverridable (import ./git) {
|
||||
inherit fetchurl stdenv curl openssl zlib expat perl python gettext gnugrep
|
||||
asciidoc texinfo xmlto docbook2x docbook_xsl docbook_xml_dtd_45 libxslt
|
||||
cpio tcl tk makeWrapper subversionClient gzip;
|
||||
asciidoc xmlto docbook2x docbook_xsl docbook_xml_dtd_45 libxslt cpio tcl
|
||||
tk makeWrapper subversionClient gzip;
|
||||
texinfo = texinfo5;
|
||||
svnSupport = false; # for git-svn support
|
||||
guiSupport = false; # requires tcl/tk
|
||||
sendEmailSupport = false; # requires plenty of perl libraries
|
||||
|
@ -7,14 +7,15 @@
|
||||
, monadControl, mtl, network, networkInfo, networkMulticast
|
||||
, networkProtocolXmpp, openssh, QuickCheck, random, regexTdfa
|
||||
, rsync, SafeSemaphore, SHA, stm, text, time, transformers
|
||||
, unixCompat, utf8String, uuid, wai, waiLogger, warp, xmlConduit
|
||||
, xmlTypes, yesod, yesodDefault, yesodForm, yesodStatic
|
||||
, unixCompat, utf8String, uuid, wai, waiLogger, warp, which
|
||||
, xmlConduit, xmlTypes, yesod, yesodCore, yesodDefault, yesodForm
|
||||
, yesodStatic
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "git-annex";
|
||||
version = "4.20130601";
|
||||
sha256 = "0l6jbi9r26w5h9hfg9v9qybqvijp4n7c9l1zd4ikxg2nqcc8j8ln";
|
||||
version = "4.20130627";
|
||||
sha256 = "1q9hdh7m04idx1nm631624s37p6w1b9j1z5n06j2449b3pxqrn3y";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
@ -25,22 +26,23 @@ cabal.mkDerivation (self: {
|
||||
MonadCatchIOTransformers monadControl mtl network networkInfo
|
||||
networkMulticast networkProtocolXmpp QuickCheck random regexTdfa
|
||||
SafeSemaphore SHA stm text time transformers unixCompat utf8String
|
||||
uuid wai waiLogger warp xmlConduit xmlTypes yesod yesodDefault
|
||||
yesodForm yesodStatic
|
||||
uuid wai waiLogger warp xmlConduit xmlTypes yesod yesodCore
|
||||
yesodDefault yesodForm yesodStatic
|
||||
];
|
||||
buildTools = [ bup curl git gnupg1 lsof openssh rsync ];
|
||||
buildTools = [ bup curl git gnupg1 lsof openssh rsync which ];
|
||||
configureFlags = "-fS3
|
||||
-fWebDAV
|
||||
-fInotify
|
||||
-fDbus
|
||||
-f-Assistant
|
||||
-f-Webapp
|
||||
-fAssistant
|
||||
-fWebapp
|
||||
-fPairing
|
||||
-fXMPP
|
||||
-fDNS
|
||||
-fProduction
|
||||
-fTDFA";
|
||||
preConfigure = "patchShebangs .";
|
||||
installPhase = "make PREFIX=$out CABAL=./Setup docs install";
|
||||
checkPhase = ''
|
||||
export HOME="$NIX_BUILD_TOP/tmp"
|
||||
mkdir "$HOME"
|
||||
@ -50,7 +52,7 @@ cabal.mkDerivation (self: {
|
||||
meta = {
|
||||
homepage = "http://git-annex.branchable.com/";
|
||||
description = "manage files with git, without checking their contents into git";
|
||||
license = "GPL";
|
||||
license = self.stdenv.lib.licenses.gpl3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
maintainers = [ self.stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
|
@ -49,6 +49,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
preBuild = ''
|
||||
makeFlagsArray=(APACHE_LIBEXECDIR=$out/modules)
|
||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace configure --replace "-no-cpp-precomp" ""
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
@ -74,7 +76,7 @@ stdenv.mkDerivation rec {
|
||||
meta = {
|
||||
description = "A version control system intended to be a compelling replacement for CVS in the open source community";
|
||||
homepage = http://subversion.apache.org/;
|
||||
maintainers = [ stdenv.lib.maintainers.eelco ];
|
||||
maintainers = with stdenv.lib.maintainers; [ eelco lovek323 ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -1,9 +0,0 @@
|
||||
source $stdenv/setup
|
||||
|
||||
myPatchPhase()
|
||||
{
|
||||
sed -i -e "s|files.length|files.size|" \
|
||||
-e "s|chlds.length|chlds.size|" src/kmplayerapp.cpp
|
||||
}
|
||||
patchPhase=myPatchPhase
|
||||
genericBuild
|
@ -1,17 +1,28 @@
|
||||
{stdenv, fetchurl, lib, cmake, qt4, perl, gettext, pango, gtk, dbus_glib, kdelibs, automoc4, phonon}:
|
||||
{ stdenv, fetchurl, cmake, pkgconfig, gettext, makeWrapper
|
||||
, kdelibs, cairo, dbus_glib, mplayer
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "kmplayer-0.11.2c";
|
||||
name = "kmplayer-0.11.3d";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://kmplayer.kde.org/pkgs/kmplayer-0.11.2c.tar.bz2;
|
||||
sha256 = "1qhafq865bzpz6m9k7cjdv4884qfpn481ak77ly0nidpq2ab0l9m";
|
||||
url = http://kmplayer.kde.org/pkgs/kmplayer-0.11.3d.tar.bz2;
|
||||
sha256 = "1yvbkb1hh5y7fqfvixjf2rryzm0fm0fpkx4lmvhi7k7d0v4wpgky";
|
||||
};
|
||||
builder = ./builder.sh;
|
||||
buildInputs = [ cmake qt4 perl gettext stdenv.gcc.libc pango gtk dbus_glib kdelibs automoc4 phonon ];
|
||||
|
||||
buildInputs = [
|
||||
cmake gettext pkgconfig makeWrapper
|
||||
kdelibs cairo dbus_glib
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/kmplayer --suffix PATH : ${mplayer}/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "MPlayer front-end for KDE";
|
||||
license = "GPL";
|
||||
homepage = http://kmplayer.kde.org;
|
||||
maintainers = [ lib.maintainers.sander ];
|
||||
maintainers = [ stdenv.lib.maintainers.sander ];
|
||||
};
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
src = fetchurl {
|
||||
# Old kind of URL:
|
||||
# url = http://nixos.org/tarballs/mplayer-snapshot-20101227.tar.bz2;
|
||||
# url = http://tarballs.nixos.org/mplayer-snapshot-20101227.tar.bz2;
|
||||
# Snapshot I took on 20110423
|
||||
|
||||
#Transient
|
||||
|
23
pkgs/applications/video/smplayer/default.nix
Normal file
23
pkgs/applications/video/smplayer/default.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ stdenv, fetchurl, qt4 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "smplayer-0.8.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/smplayer/${name}.tar.bz2";
|
||||
sha256 = "0vbfvaqg5c25vabq1mf9xg6kzgvxnpd0i172y1gjznnlpcw2fxrw";
|
||||
};
|
||||
|
||||
buildInputs = [ qt4 ];
|
||||
|
||||
preConfigure = ''
|
||||
makeFlags="PREFIX=$out"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A complete front-end for MPlayer";
|
||||
homepage = "http://smplayer.sourceforge.net/";
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -68,6 +68,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
||||
preConfigure = ''
|
||||
substituteInPlace xbmc/linux/LinuxTimezone.cpp \
|
||||
--replace 'usr/share/zoneinfo' 'etc/zoneinfo'
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
"--enable-external-libraries"
|
||||
"--disable-webserver"
|
||||
|
@ -1,21 +1,41 @@
|
||||
{ stdenv, fetchurl, python, zlib, pkgconfig, glib, SDL, ncurses, perl, pixman }:
|
||||
{ stdenv, fetchurl, python, zlib, pkgconfig, glib, ncurses, perl, pixman
|
||||
, attr, libcap, vde2, alsaLib, texinfo, libuuid
|
||||
, sdlSupport ? true, SDL
|
||||
, vncSupport ? true, libjpeg, libpng
|
||||
, spiceSupport ? false, spice, spice_protocol
|
||||
, x86Only ? false
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qemu-1.4.0";
|
||||
name = "qemu-1.5.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://wiki.qemu.org/download/${name}.tar.bz2";
|
||||
sha256 = "1a7d11vjs1p6i1ck2ff9annmkhpkbjl73hl9i1cbg3s0fznrfqh6";
|
||||
sha256 = "1s7316pgizpayr472la8p8a4vhv7ymmzd5qlbkmq6y9q5zpa25ac";
|
||||
};
|
||||
|
||||
buildInputs = [ python zlib pkgconfig glib SDL ncurses perl pixman ];
|
||||
buildInputs =
|
||||
[ python zlib pkgconfig glib ncurses perl pixman attr libcap
|
||||
vde2 alsaLib texinfo libuuid
|
||||
]
|
||||
++ stdenv.lib.optionals sdlSupport [ SDL ]
|
||||
++ stdenv.lib.optionals vncSupport [ libjpeg libpng ]
|
||||
++ stdenv.lib.optionals spiceSupport [ spice_protocol spice ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
configureFlags =
|
||||
[ "--audio-drv-list=alsa"
|
||||
"--smbd=smbd" # use `smbd' from $PATH
|
||||
]
|
||||
++ stdenv.lib.optional spiceSupport "--enable-spice"
|
||||
++ stdenv.lib.optional x86Only "--target-list=i386-softmmu,x86_64-softmmu";
|
||||
|
||||
meta = {
|
||||
description = "QEmu processor emulator";
|
||||
homepage = http://www.qemu.org/;
|
||||
description = "A generic and open source machine emulator and virtualizer";
|
||||
license = "GPLv2+";
|
||||
maintainers = with stdenv.lib.maintainers; [ viric shlevy ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ viric shlevy eelco ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -11,8 +11,7 @@ with stdenv.lib;
|
||||
|
||||
let
|
||||
|
||||
version = "4.2.12";
|
||||
extpackRevision = "84980";
|
||||
version = "4.2.14"; # changes ./guest-additions as well
|
||||
|
||||
forEachModule = action: ''
|
||||
for mod in \
|
||||
@ -31,12 +30,10 @@ let
|
||||
done
|
||||
'';
|
||||
|
||||
extensionPack = requireFile {
|
||||
name = "Oracle_VM_VirtualBox_Extension_Pack-${version}-${extpackRevision}"
|
||||
+ ".vbox-extpack";
|
||||
extensionPack = fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/Oracle_VM_VirtualBox_Extension_Pack-${version}.vbox-extpack";
|
||||
# Has to be base16 because it's used as an input to VBoxExtPackHelperApp!
|
||||
sha256 = "ad15a92e49095c2115bd1793b3b957d3eaf44af0f5d24bb53d6b4fc81c3e2fc4";
|
||||
url = "https://www.virtualbox.org/wiki/Downloads";
|
||||
sha256 = "5813cae72790de4893cadb839ffbd148290a44ec6913d901d84c9b3740ab1b1e";
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
@ -44,7 +41,7 @@ in stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
|
||||
sha256 = "eb65ecac94f63d6292a967d39cb5e28326404c10d0e8c2c50399eedb59c17ee6";
|
||||
sha256 = "038k65cdvr80da5nfan5r3rjrnxqab2fbf2pr2jq8g1gc4cxrxpq";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
@ -137,6 +134,8 @@ in stdenv.mkDerivation {
|
||||
done
|
||||
'';
|
||||
|
||||
passthru = { inherit version; /* for guest additions */ };
|
||||
|
||||
meta = {
|
||||
description = "PC emulator";
|
||||
homepage = http://www.virtualbox.org/;
|
||||
|
@ -1,15 +1,18 @@
|
||||
{ stdenv, fetchurl, lib, patchelf, cdrkit, kernelDev, which, makeWrapper
|
||||
, libX11, libXt, libXext, libXmu, libXcomposite, libXfixes, libXrandr, libXcursor
|
||||
, dbus }:
|
||||
, xorg, dbus, virtualbox }:
|
||||
|
||||
let version = "4.2.12"; in
|
||||
let
|
||||
version = virtualbox.version;
|
||||
xserverVListFunc = builtins.elemAt (stdenv.lib.splitString "." xorg.xorgserver.version);
|
||||
xserverABI = xserverVListFunc 0 + xserverVListFunc 1;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "VirtualBox-GuestAdditions-${version}-${kernelDev.version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
|
||||
sha256 = "aed4730b643aca8daa0829e1122b7c8d592b9f6cea902a98e390c4d22373dfb8";
|
||||
sha256 = "9f08f13bbd818fb3ef9916658542ad0999c35e11afc1f6e8ff0b944405486e8a";
|
||||
};
|
||||
|
||||
KERN_DIR = "${kernelDev}/lib/modules/*/build";
|
||||
@ -22,7 +25,7 @@ stdenv.mkDerivation {
|
||||
|
||||
'';
|
||||
|
||||
buildCommand = ''
|
||||
buildCommand = with xorg; ''
|
||||
${if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux" then ''
|
||||
isoinfo -J -i $src -x /VBoxLinuxAdditions.run > ./VBoxLinuxAdditions.run
|
||||
chmod 755 ./VBoxLinuxAdditions.run
|
||||
@ -104,7 +107,7 @@ stdenv.mkDerivation {
|
||||
|
||||
# Install Xorg drivers
|
||||
mkdir -p $out/lib/xorg/modules/{drivers,input}
|
||||
install -m 644 lib/VBoxGuestAdditions/vboxvideo_drv_112.so $out/lib/xorg/modules/drivers/vboxvideo_drv.so
|
||||
install -m 644 lib/VBoxGuestAdditions/vboxvideo_drv_${xserverABI}.so $out/lib/xorg/modules/drivers/vboxvideo_drv.so
|
||||
|
||||
# Install kernel modules
|
||||
cd src
|
||||
|
@ -1,16 +1,16 @@
|
||||
{ fetchurl, stdenv, which, pkgconfig, libxcb, xcbutilkeysyms, xcbutilimage,
|
||||
pam, libX11, libev, cairo }:
|
||||
pam, libX11, libev, cairo, libxkbcommon, libxkbfile }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "i3lock-2.4.1";
|
||||
name = "i3lock-2.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://i3wm.org/i3lock/${name}.tar.bz2";
|
||||
sha256 = "4d29e66841138de562e71903d31ecaaefd8ecffe5e68da0d6c8d560ed543047c";
|
||||
sha256 = "0xqdklvfcn2accwdbzsly7add0f3rh9sxjnahawas4zwwk4p49xc";
|
||||
};
|
||||
|
||||
buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutilimage pam libX11
|
||||
libev cairo ];
|
||||
libev cairo libxkbcommon libxkbfile ];
|
||||
|
||||
makeFlags = "all";
|
||||
installFlags = "PREFIX=\${out} SYSCONFDIR=\${out}/etc";
|
||||
|
@ -91,7 +91,7 @@ stdenv.mkDerivation {
|
||||
urls = urls_;
|
||||
|
||||
# If set, prefer the content-addressable mirrors
|
||||
# (http://nixos.org/tarballs) over the original URLs.
|
||||
# (http://tarballs.nixos.org) over the original URLs.
|
||||
preferHashedMirrors = true;
|
||||
|
||||
# New-style output content requirements.
|
||||
|
@ -2,7 +2,7 @@ rec {
|
||||
|
||||
# Content-addressable Nix mirrors.
|
||||
hashedMirrors = [
|
||||
http://nixos.org/tarballs
|
||||
http://tarballs.nixos.org
|
||||
];
|
||||
|
||||
# Mirrors for mirror://site/filename URIs, where "site" is
|
||||
@ -159,6 +159,7 @@ rec {
|
||||
|
||||
# Debian.
|
||||
debian = [
|
||||
ftp://ftp.au.debian.org/debian/
|
||||
ftp://ftp.de.debian.org/debian/
|
||||
ftp://ftp.es.debian.org/debian/
|
||||
ftp://ftp.fr.debian.org/debian/
|
||||
|
@ -1,22 +1,17 @@
|
||||
{ pkgs
|
||||
, linuxKernel ? pkgs.linux_3_9
|
||||
, kernel ? pkgs.linux_3_9
|
||||
, img ? "bzImage"
|
||||
, rootModules ?
|
||||
[ "cifs" "virtio_net" "virtio_pci" "virtio_blk" "virtio_balloon" "nls_utf8" "ext2" "ext3"
|
||||
"ext4" "unix" "hmac" "md4" "ecb" "des_generic" "sha256"
|
||||
]
|
||||
[ "virtio_pci" "virtio_blk" "virtio_balloon" "ext4" "unix" "9p" "9pnet_virtio" ]
|
||||
}:
|
||||
|
||||
with pkgs;
|
||||
|
||||
rec {
|
||||
|
||||
# The 15 second CIFS timeout is too short if the host if heavily
|
||||
# loaded (e.g., in the Hydra build farm when it's running many jobs
|
||||
# in parallel). So apply a patch to increase the timeout to 120s.
|
||||
kernel = assert pkgs.linux.features.cifsTimeout; linuxKernel;
|
||||
kvm = pkgs.qemu;
|
||||
|
||||
kvm = pkgs.qemu_kvm;
|
||||
qemuProg = "${kvm}/bin/qemu-system-" + (if stdenv.system == "x86_64-linux" then "x86_64" else "i386");
|
||||
|
||||
|
||||
modulesClosure = makeModulesClosure {
|
||||
@ -78,6 +73,8 @@ rec {
|
||||
mount -t proc none /proc
|
||||
mount -t sysfs none /sys
|
||||
|
||||
echo 2 > /proc/sys/vm/panic_on_oom
|
||||
|
||||
for o in $(cat /proc/cmdline); do
|
||||
case $o in
|
||||
mountDisk=1)
|
||||
@ -95,20 +92,14 @@ rec {
|
||||
done
|
||||
|
||||
for i in $(cat ${modulesClosure}/insmod-list); do
|
||||
args=
|
||||
case $i in
|
||||
*/cifs.ko)
|
||||
args="CIFSMaxBufSize=4194304"
|
||||
;;
|
||||
esac
|
||||
echo "loading module $(basename $i .ko)"
|
||||
insmod $i $args
|
||||
insmod $i
|
||||
done
|
||||
|
||||
mount -t tmpfs none /dev
|
||||
${createDeviceNodes "/dev"}
|
||||
|
||||
ifconfig eth0 up 10.0.2.15
|
||||
ifconfig lo up
|
||||
|
||||
mkdir /fs
|
||||
|
||||
@ -123,14 +114,14 @@ rec {
|
||||
|
||||
echo "mounting Nix store..."
|
||||
mkdir -p /fs/nix/store
|
||||
mount -t cifs //10.0.2.4/store /fs/nix/store -o guest,sec=none,sec=ntlm
|
||||
mount -t 9p store /fs/nix/store -o trans=virtio,version=9p2000.L,msize=262144,cache=fscache
|
||||
|
||||
mkdir -p /fs/tmp
|
||||
mount -t tmpfs -o "mode=755" none /fs/tmp
|
||||
|
||||
echo "mounting host's temporary directory..."
|
||||
mkdir -p /fs/tmp/xchg
|
||||
mount -t cifs //10.0.2.4/xchg /fs/tmp/xchg -o guest,sec=none,sec=ntlm
|
||||
mount -t 9p xchg /fs/tmp/xchg -o trans=virtio,version=9p2000.L,msize=262144,cache=fscache
|
||||
|
||||
mkdir -p /fs/proc
|
||||
mount -t proc none /fs/proc
|
||||
@ -140,6 +131,7 @@ rec {
|
||||
|
||||
mkdir -p /fs/etc
|
||||
ln -sf /proc/mounts /fs/etc/mtab
|
||||
echo "127.0.0.1 localhost" > /fs/etc/hosts
|
||||
|
||||
echo "Now running: $command"
|
||||
test -n "$command"
|
||||
@ -195,12 +187,12 @@ rec {
|
||||
|
||||
|
||||
qemuCommandLinux = ''
|
||||
${kvm}/bin/qemu-kvm \
|
||||
${qemuProg} \
|
||||
-enable-kvm \
|
||||
${lib.optionalString (pkgs.stdenv.system == "x86_64-linux") "-cpu kvm64"} \
|
||||
-nographic -no-reboot \
|
||||
-net nic,model=virtio \
|
||||
-chardev socket,id=samba,path=./samba \
|
||||
-net user,guestfwd=tcp:10.0.2.4:445-chardev:samba \
|
||||
-virtfs local,path=/nix/store,security_model=none,mount_tag=store \
|
||||
-virtfs local,path=$TMPDIR/xchg,security_model=none,mount_tag=xchg \
|
||||
-drive file=$diskImage,if=virtio,cache=writeback,werror=report \
|
||||
-kernel ${kernel}/${img} \
|
||||
-initrd ${initrd}/initrd \
|
||||
@ -209,40 +201,6 @@ rec {
|
||||
'';
|
||||
|
||||
|
||||
startSamba =
|
||||
''
|
||||
export WHO=`whoami`
|
||||
mkdir -p $TMPDIR/xchg
|
||||
|
||||
cat > $TMPDIR/smb.conf <<SMB
|
||||
[global]
|
||||
private dir = $TMPDIR
|
||||
smb ports = 0
|
||||
socket address = 127.0.0.1
|
||||
pid directory = $TMPDIR
|
||||
lock directory = $TMPDIR
|
||||
log file = $TMPDIR/log.smbd
|
||||
smb passwd file = $TMPDIR/smbpasswd
|
||||
security = share
|
||||
[store]
|
||||
force user = $WHO
|
||||
path = /nix/store
|
||||
read only = no
|
||||
guest ok = yes
|
||||
[xchg]
|
||||
force user = $WHO
|
||||
path = $TMPDIR/xchg
|
||||
read only = no
|
||||
guest ok = yes
|
||||
$EXTRA_SAMBA_CONF
|
||||
SMB
|
||||
|
||||
rm -f ./samba
|
||||
${socat}/bin/socat unix-listen:./samba exec:"${utillinux}/bin/setsid ${samba}/sbin/smbd -s $TMPDIR/smb.conf",nofork > /dev/null 2>&1 &
|
||||
while [ ! -e ./samba ]; do sleep 0.1; done # ugly
|
||||
'';
|
||||
|
||||
|
||||
vmRunCommand = qemuCommand: writeText "vm-run" ''
|
||||
export > saved-env
|
||||
|
||||
@ -262,7 +220,6 @@ rec {
|
||||
diskImage=$diskImage
|
||||
TMPDIR=$TMPDIR
|
||||
cd $TMPDIR
|
||||
${startSamba}
|
||||
${qemuCommand}
|
||||
EOF
|
||||
|
||||
@ -294,8 +251,8 @@ rec {
|
||||
|
||||
defaultCreateRootFS = ''
|
||||
mkdir /mnt
|
||||
${e2fsprogs}/sbin/mke2fs -F /dev/${hd}
|
||||
${utillinux}/bin/mount -t ext2 /dev/${hd} /mnt
|
||||
${e2fsprogs}/sbin/mkfs.ext4 /dev/${hd}
|
||||
${utillinux}/bin/mount -t ext4 /dev/${hd} /mnt
|
||||
|
||||
if test -e /mnt/.debug; then
|
||||
exec ${bash}/bin/sh
|
||||
@ -309,9 +266,9 @@ rec {
|
||||
|
||||
/* Run a derivation in a Linux virtual machine (using Qemu/KVM). By
|
||||
default, there is no disk image; the root filesystem is a tmpfs,
|
||||
and /nix/store is shared with the host (via the CIFS protocol to
|
||||
a Samba instance automatically started by Qemu). Thus, any pure
|
||||
Nix derivation should run unmodified, e.g. the call
|
||||
and /nix/store is shared with the host (via the 9P protocol).
|
||||
Thus, any pure Nix derivation should run unmodified, e.g. the
|
||||
call
|
||||
|
||||
runInLinuxVM patchelf
|
||||
|
||||
@ -319,7 +276,7 @@ rec {
|
||||
`preVM' can optionally contain a shell command to be evaluated
|
||||
*before* the VM is started (i.e., on the host). The attribute
|
||||
`memSize' specifies the memory size of the VM in megabytes,
|
||||
defaulting to 256. The attribute `diskImage' can optionally
|
||||
defaulting to 512. The attribute `diskImage' can optionally
|
||||
specify a file system image to be attached to /dev/sda. (Note
|
||||
that currently we expect the image to contain a filesystem, not a
|
||||
full disk image with a partition table etc.)
|
||||
@ -334,7 +291,7 @@ rec {
|
||||
args = ["-e" (vmRunCommand qemuCommandLinux)];
|
||||
origArgs = attrs.args;
|
||||
origBuilder = attrs.builder;
|
||||
QEMU_OPTS = "-m ${toString (if attrs ? memSize then attrs.memSize else 256)}";
|
||||
QEMU_OPTS = "-m ${toString (if attrs ? memSize then attrs.memSize else 512)}";
|
||||
});
|
||||
|
||||
|
||||
@ -391,55 +348,6 @@ rec {
|
||||
});
|
||||
|
||||
|
||||
qemuCommandGeneric = ''
|
||||
PATH="${samba}/sbin:$PATH" \
|
||||
${kvm}/bin/qemu-kvm \
|
||||
-nographic -no-reboot \
|
||||
-smb $(pwd) -hda $diskImage \
|
||||
$QEMU_OPTS
|
||||
'';
|
||||
|
||||
|
||||
/* Run a command in an x86 virtual machine image containing an
|
||||
arbitrary OS. The VM should be configured to do the following:
|
||||
|
||||
- Write log output to the serial port.
|
||||
|
||||
- Mount //10.0.2.4/qemu via SMB.
|
||||
|
||||
- Execute the command "cmd" on the SMB share. It can access the
|
||||
original derivation attributes in "saved-env" on the share.
|
||||
|
||||
- Produce output under "out" on the SMB share.
|
||||
|
||||
- Write an exit code to "in-vm-exit" on the SMB share ("0"
|
||||
meaning success).
|
||||
|
||||
- Power-off or reboot the machine.
|
||||
*/
|
||||
runInGenericVM = drv: lib.overrideDerivation drv (attrs: {
|
||||
requiredSystemFeatures = [ "kvm" ];
|
||||
builder = "${bash}/bin/sh";
|
||||
args = ["-e" (vmRunCommand qemuCommandGeneric)];
|
||||
QEMU_OPTS = "-m ${toString (if attrs ? memSize then attrs.memSize else 256)}";
|
||||
|
||||
preVM = ''
|
||||
diskImage=$(pwd)/disk-image.qcow2
|
||||
origImage=${attrs.diskImage}
|
||||
if test -d "$origImage"; then origImage="$origImage/disk-image.qcow2"; fi
|
||||
${kvm}/bin/qemu-img create -b "$origImage" -f qcow2 $diskImage
|
||||
|
||||
echo "$buildCommand" > cmd
|
||||
|
||||
eval "$postPreVM"
|
||||
'';
|
||||
|
||||
postVM = ''
|
||||
cp -prvd out $out
|
||||
'';
|
||||
});
|
||||
|
||||
|
||||
/* Like runInLinuxVM, but run the build not using the stdenv from
|
||||
the Nix store, but using the tools provided by /bin, /usr/bin
|
||||
etc. from the specified filesystem image, which typically is a
|
||||
@ -1081,6 +989,30 @@ rec {
|
||||
packages = commonOpenSUSEPackages;
|
||||
};
|
||||
|
||||
centos64i386 = {
|
||||
name = "centos-6.4-i386";
|
||||
fullName = "CentOS 6.4 (i386)";
|
||||
packagesList = fetchurl {
|
||||
url = http://mirror.centos.org/centos/6.4/os/i386/repodata/87aa4c4e19f9a3ec93e3d820f1ea6b6ece8810cb45f117a16354465e57a1b50d-primary.xml.gz;
|
||||
sha256 = "03dml5bmwijlcfhigwa5rc88ikkfdgmg286qwf9yr8zr3574ral7";
|
||||
};
|
||||
urlPrefix = http://mirror.centos.org/centos/6.4/os/i386/ ;
|
||||
archs = ["noarch" "i386"];
|
||||
packages = commonCentOSPackages;
|
||||
};
|
||||
|
||||
centos64x86_64 = {
|
||||
name = "centos-6.4-x86_64";
|
||||
fullName = "CentOS 6.4 (x86_64)";
|
||||
packagesList = fetchurl {
|
||||
url = http://mirror.centos.org/centos/6.4/os/x86_64/repodata/4d4030b92f010f466eb4f004312b9f532b9e85e60c5e6421e8b429c180ac1efe-primary.xml.gz;
|
||||
sha256 = "1zhymj0c2adlx0hn8phcws2rwaskkwmk217hnip4c3q15ywk0h2d";
|
||||
};
|
||||
urlPrefix = http://mirror.centos.org/centos/6.4/os/x86_64/ ;
|
||||
archs = ["noarch" "x86_64"];
|
||||
packages = commonCentOSPackages;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -1509,6 +1441,28 @@ rec {
|
||||
"unzip"
|
||||
];
|
||||
|
||||
commonCentOSPackages = [
|
||||
"autoconf"
|
||||
"automake"
|
||||
"basesystem"
|
||||
"bzip2"
|
||||
"curl"
|
||||
"diffutils"
|
||||
"centos-release"
|
||||
"findutils"
|
||||
"gawk"
|
||||
"gcc-c++"
|
||||
"gzip"
|
||||
"make"
|
||||
"patch"
|
||||
"perl"
|
||||
"pkgconfig"
|
||||
"procps"
|
||||
"rpm"
|
||||
"rpm-build"
|
||||
"tar"
|
||||
"unzip"
|
||||
];
|
||||
|
||||
/* Common packages for openSUSE images. */
|
||||
commonOpenSUSEPackages = [
|
||||
|
@ -7,8 +7,12 @@ rec {
|
||||
# Run the PatchELF derivation in a VM.
|
||||
buildPatchelfInVM = runInLinuxVM patchelf;
|
||||
|
||||
buildHelloInVM = runInLinuxVM hello;
|
||||
|
||||
testRPMImage = makeImageTestScript diskImages.fedora16i386;
|
||||
buildPanInVM = runInLinuxVM pan;
|
||||
|
||||
|
||||
testRPMImage = makeImageTestScript diskImages.fedora16x86_64;
|
||||
|
||||
|
||||
buildPatchelfRPM = buildRPM {
|
||||
@ -17,10 +21,10 @@ rec {
|
||||
diskImage = diskImages.fedora16x86_64;
|
||||
};
|
||||
|
||||
|
||||
|
||||
testUbuntuImage = makeImageTestScript diskImages.ubuntu810i386;
|
||||
|
||||
|
||||
|
||||
buildInDebian = runInLinuxImage (stdenv.mkDerivation {
|
||||
name = "deb-compile";
|
||||
src = patchelf.src;
|
||||
@ -32,39 +36,4 @@ rec {
|
||||
'';
|
||||
});
|
||||
|
||||
/*
|
||||
testFreeBSD = runInGenericVM {
|
||||
name = "aterm-freebsd";
|
||||
src = aterm242fixes.src;
|
||||
diskImage = "/tmp/freebsd-7.0.qcow";
|
||||
|
||||
postPreVM = ''
|
||||
cp $src aterm.tar.bz2
|
||||
'';
|
||||
|
||||
buildCommand = ''
|
||||
set > /tmp/my-env
|
||||
. /mnt/saved-env
|
||||
. /tmp/my-env
|
||||
unset TEMP
|
||||
unset TEMPDIR
|
||||
unset TMP
|
||||
unset TMPDIR
|
||||
|
||||
set -x
|
||||
|
||||
echo "Hello World!!!"
|
||||
mkdir /mnt/out
|
||||
echo "bar" > /mnt/out/foo
|
||||
|
||||
cd /tmp
|
||||
tar xvf /mnt/aterm.tar.bz2
|
||||
cd aterm-*
|
||||
./configure --prefix=/mnt/out
|
||||
make
|
||||
make install
|
||||
'';
|
||||
};
|
||||
*/
|
||||
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation {
|
||||
name = "bakoma-ttf";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/bakoma-ttf.tar.bz2;
|
||||
url = http://tarballs.nixos.org/bakoma-ttf.tar.bz2;
|
||||
sha256 = "1j1y3cq6ys30m734axc0brdm2q9n2as4h32jws15r7w5fwr991km";
|
||||
};
|
||||
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
|
||||
name = "cacert-20121229";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://nixos.org/tarballs/${name}.pem.bz2";
|
||||
url = "http://tarballs.nixos.org/${name}.pem.bz2";
|
||||
sha256 = "031s86pqvn620zkj6w97hqgjvkp6vsvlymzz7rwvkv25zvrjsgif";
|
||||
};
|
||||
|
||||
|
@ -9,10 +9,16 @@ stdenv.mkDerivation {
|
||||
sha256 = "09ch709cb9fniwc4221xgkq0jf0x0lxs814sqig8p2dcll0llvzk";
|
||||
};
|
||||
|
||||
buildInputs = [ ORBit2 dbus_libs dbus_glib libxml2 polkit gtk ];
|
||||
buildInputs = [ ORBit2 dbus_libs dbus_glib libxml2 gtk ]
|
||||
# polkit requires pam, which requires shadow.h, which is not available on
|
||||
# darwin
|
||||
++ stdenv.lib.optional (!stdenv.isDarwin) polkit;
|
||||
|
||||
propagatedBuildInputs = [ glib ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool ];
|
||||
|
||||
configureFlags = "--with-gtk=2.0";
|
||||
configureFlags = [ "--with-gtk=2.0" ]
|
||||
# fixes the "libgconfbackend-oldxml.so is not portable" error on darwin
|
||||
++ stdenv.lib.optional stdenv.isDarwin [ "--enable-static" ];
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{stdenv, fetchurl_gnome, pkgconfig, glib, libIDL}:
|
||||
{ stdenv, fetchurl_gnome, pkgconfig, glib, libIDL, libintlOrEmpty }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = src.pkgname;
|
||||
@ -14,5 +14,24 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
propagatedBuildInputs = [ glib libIDL ];
|
||||
propagatedBuildInputs = [ glib libIDL ] ++ libintlOrEmpty;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://projects.gnome.org/ORBit2/;
|
||||
description = "A a CORBA 2.4-compliant Object Request Broker";
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ lovek323 ];
|
||||
|
||||
longDescription = ''
|
||||
ORBit2 is a CORBA 2.4-compliant Object Request Broker (ORB) featuring
|
||||
mature C, C++ and Python bindings. Bindings (in various degrees of
|
||||
completeness) are also available for Perl, Lisp, Pascal, Ruby, and TCL;
|
||||
others are in-progress. It supports POA, DII, DSI, TypeCode, Any, IR and
|
||||
IIOP. Optional features including INS and threading are available. ORBit2
|
||||
is engineered for the desktop workstation environment, with a focus on
|
||||
performance, low resource usage, and security. The core ORB is written in
|
||||
C, and runs under Linux, UNIX (BSD, Solaris, HP-UX, ...), and Windows.
|
||||
ORBit2 is developed and released as open source software under GPL/LGPL.
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
@ -1,12 +1,12 @@
|
||||
{ kde, kdelibs, shared_desktop_ontologies, bzip2, libssh, exiv2, attica
|
||||
, libcanberra, virtuoso, samba, libjpeg, ntrack, pkgconfig, qca2, xz, pulseaudio
|
||||
, networkmanager, kactivities, kdepimlibs, openexr, ilmbase
|
||||
, networkmanager, kactivities, kdepimlibs, openexr, ilmbase, config
|
||||
}:
|
||||
|
||||
kde {
|
||||
buildInputs = [
|
||||
kdelibs attica xz bzip2 libssh libjpeg exiv2 ntrack
|
||||
qca2 samba (libcanberra.override { gtk = null; }) pulseaudio
|
||||
qca2 samba libcanberra pulseaudio
|
||||
networkmanager kactivities kdepimlibs openexr
|
||||
#todo: add openslp
|
||||
];
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ kde, kdelibs, libspectre, analitza, rLang, pkgconfig, gfortran, libqalculate }:
|
||||
{ kde, kdelibs, libspectre, analitza, R, pkgconfig, gfortran, libqalculate }:
|
||||
kde {
|
||||
|
||||
buildInputs = [ kdelibs libspectre analitza rLang gfortran libqalculate];
|
||||
buildInputs = [ kdelibs libspectre analitza R gfortran libqalculate];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
|
@ -0,0 +1,22 @@
|
||||
diff --git a/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc b/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc
|
||||
index 88fdbd1..57c6c05 100644
|
||||
--- a/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc
|
||||
+++ b/kopete/protocols/jabber/googletalk/libjingle/talk/session/phone/linphonemediaengine.cc
|
||||
@@ -200,7 +200,7 @@ bool LinphoneVoiceChannel::SetSendCodecs(const std::vector<AudioCodec>& codecs)
|
||||
LOG(LS_INFO) << "Using " << i->name << "/" << i->clockrate;
|
||||
pt_ = i->id;
|
||||
audio_stream_ = audio_stream_start(&av_profile, -1, "localhost", port1, i->id, 250, 0); /* -1 means that function will choose some free port */
|
||||
- port2 = rtp_session_get_local_port(audio_stream_->session);
|
||||
+ port2 = rtp_session_get_local_port(audio_stream_->ms.session);
|
||||
first = false;
|
||||
}
|
||||
}
|
||||
@@ -211,7 +211,7 @@ bool LinphoneVoiceChannel::SetSendCodecs(const std::vector<AudioCodec>& codecs)
|
||||
// working with a buggy client; let's try PCMU.
|
||||
LOG(LS_WARNING) << "Received empty list of codces; using PCMU/8000";
|
||||
audio_stream_ = audio_stream_start(&av_profile, -1, "localhost", port1, 0, 250, 0); /* -1 means that function will choose some free port */
|
||||
- port2 = rtp_session_get_local_port(audio_stream_->session);
|
||||
+ port2 = rtp_session_get_local_port(audio_stream_->ms.session);
|
||||
}
|
||||
|
||||
return true;
|
@ -0,0 +1,47 @@
|
||||
diff --git a/kopete/protocols/jabber/googletalk/libjingle/talk/p2p/base/stun.h b/kopete/protocols/jabber/googletalk/libjingle/talk/p2p/base/stun.h
|
||||
--- a/kopete/protocols/jabber/googletalk/libjingle/talk/p2p/base/stun.h
|
||||
+++ b/kopete/protocols/jabber/googletalk/libjingle/talk/p2p/base/stun.h
|
||||
@@ -25,16 +25,8 @@
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
-#ifndef __STUN_H__
|
||||
-#define __STUN_H__
|
||||
-
|
||||
-// This file contains classes for dealing with the STUN and TURN protocols.
|
||||
-// Both protocols use the same wire format.
|
||||
-
|
||||
-#include "talk/base/basictypes.h"
|
||||
-#include "talk/base/bytebuffer.h"
|
||||
-#include <string>
|
||||
-#include <vector>
|
||||
+#ifndef STUN__HH__IN__STUNREQUEST_CYCLIC_PROBLEM_FIX
|
||||
+#define STUN__HH__IN__STUNREQUEST_CYCLIC_PROBLEM_FIX
|
||||
|
||||
namespace cricket {
|
||||
|
||||
@@ -55,6 +47,23 @@
|
||||
STUN_DATA_INDICATION = 0x0115
|
||||
};
|
||||
|
||||
+}
|
||||
+
|
||||
+#endif // STUN__HH__IN__STUNREQUEST_CYCLIC_PROBLEM_FIX
|
||||
+
|
||||
+#ifndef __STUN_H__
|
||||
+#define __STUN_H__
|
||||
+
|
||||
+// This file contains classes for dealing with the STUN and TURN protocols.
|
||||
+// Both protocols use the same wire format.
|
||||
+
|
||||
+#include "talk/base/basictypes.h"
|
||||
+#include "talk/base/bytebuffer.h"
|
||||
+#include <string>
|
||||
+#include <vector>
|
||||
+
|
||||
+namespace cricket {
|
||||
+
|
||||
// These are the types of attributes defined in STUN & TURN. Next to each is
|
||||
// the name of the class (T is StunTAttribute) that implements that type.
|
||||
enum StunAttributeType {
|
||||
|
@ -18,6 +18,8 @@ kde {
|
||||
patchPhase =
|
||||
''
|
||||
cp -v ${./FindmsiLBC.cmake} kopete/cmake/modules/FindmsiLBC.cmake
|
||||
patch -p1 < ${./kopete-4.10.4-kopete-linphonemediaengine.patch}
|
||||
patch -p1 < ${./kopete-4.10.4-kopete-stun.patch}
|
||||
'';
|
||||
|
||||
cmakeFlags = [ "-DBUILD_skypebuttons=TRUE" ];
|
||||
|
@ -5,7 +5,7 @@
|
||||
kde {
|
||||
buildInputs =
|
||||
[ kdelibs shared_desktop_ontologies bzip2 libssh exiv2 attica
|
||||
samba (libcanberra.override { gtk = null; }) ntrack libjpeg
|
||||
samba libcanberra ntrack libjpeg
|
||||
];
|
||||
|
||||
passthru.propagatedUserEnvPackages = [ virtuoso ];
|
||||
|
@ -6,7 +6,7 @@
|
||||
kde {
|
||||
buildInputs =
|
||||
[ kdelibs shared_desktop_ontologies bzip2 libssh exiv2 attica xz networkmanager
|
||||
samba (libcanberra.override { gtk = null; }) ntrack libjpeg qca2 pulseaudio
|
||||
samba libcanberra ntrack libjpeg qca2 pulseaudio
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
31
pkgs/development/compilers/closure/default.nix
Normal file
31
pkgs/development/compilers/closure/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchurl, jre, gnutar, bash }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "closure-compiler-${version}";
|
||||
version = "20130603";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dl.google.com/closure-compiler/compiler-${version}.tar.gz";
|
||||
sha256 = "0bk0s8p9r9an5m0l8y23wjlx490k15i4zah0a384a2akzji8y095";
|
||||
};
|
||||
|
||||
phases = [ "installPhase" ];
|
||||
|
||||
buildInputs = [ gnutar ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/lib/java $out/bin
|
||||
tar -xzf $src
|
||||
cp -r compiler.jar $out/lib/java/
|
||||
echo "#!${bash}/bin/bash" > $out/bin/closure-compiler
|
||||
echo "${jre}/bin/java -jar $out/lib/java/compiler.jar \"\$@\"" >> $out/bin/closure-compiler
|
||||
chmod +x $out/bin/closure-compiler
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A tool for making JavaScript download and run faster";
|
||||
homepage = https://developers.google.com/closure/compiler/;
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -6,7 +6,7 @@ stdenv.mkDerivation {
|
||||
src =
|
||||
if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = http://nixos.org/tarballs/ghc-6.4.2-i386-unknown-linux.tar.bz2;
|
||||
url = http://tarballs.nixos.org/ghc-6.4.2-i386-unknown-linux.tar.bz2;
|
||||
md5 = "092fe2e25dab22b926babe97cc77db1f";
|
||||
}
|
||||
else if stdenv.system == "x86_64-linux" then
|
||||
|
28
pkgs/development/compilers/lessc/default.nix
Normal file
28
pkgs/development/compilers/lessc/default.nix
Normal file
@ -0,0 +1,28 @@
|
||||
{ stdenv, fetchgit, nodejs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lessc-${version}";
|
||||
version = "1.4.0";
|
||||
|
||||
src = fetchgit {
|
||||
url = https://github.com/less/less.js.git;
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "12nzaz7v1bnqzylh4zm1srrj7w7f45fqj4sihxyg0bknfvfwdc56";
|
||||
};
|
||||
|
||||
phases = [ "installPhase" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin $out/lib
|
||||
cp -r $src/bin/* $out/bin/
|
||||
cp -r $src/lib/* $out/lib/
|
||||
substituteInPlace $out/bin/lessc --replace "/usr/bin/env node" ${nodejs}/bin/node
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "LESS to CSS compiler";
|
||||
homepage = http://lesscss.org/;
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -18,19 +18,23 @@ stdenv.mkDerivation {
|
||||
propagatedBuildInputs = [ libffi ];
|
||||
buildInputs = [ perl groff cmake python ]; # ToDo: polly, libc++; enable cxx11?
|
||||
|
||||
# created binaries need to be run before installation... I coudn't find a better way
|
||||
preBuild = ''export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:"`pwd`/lib'';
|
||||
# created binaries need to be run before installation... I coudn't find a
|
||||
# better way
|
||||
preBuild = ( if stdenv.isDarwin
|
||||
then "export DYLD_LIBRARY_PATH='$DYLD_LIBRARY_PATH:'`pwd`/lib"
|
||||
else "export LD_LIBRARY_PATH='$LD_LIBRARY_PATH:'`pwd`/lib" );
|
||||
|
||||
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DBUILD_SHARED_LIBS=ON" ];
|
||||
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" ]
|
||||
++ stdenv.lib.optional (!stdenv.isDarwin) [ "-DBUILD_SHARED_LIBS=ON" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
#doCheck = true; # tests are broken, don't know why
|
||||
# doCheck = true; # tests are broken, don't know why
|
||||
|
||||
meta = {
|
||||
homepage = http://llvm.org/;
|
||||
meta = with stdenv.lib; {
|
||||
description = "Collection of modular and reusable compiler and toolchain technologies";
|
||||
license = "BSD";
|
||||
maintainers = with stdenv.lib.maintainers; [viric shlevy raskin];
|
||||
platforms = with stdenv.lib.platforms; all;
|
||||
homepage = http://llvm.org/;
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ lovek323 raskin shlevy viric ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ stdenv.mkDerivation {
|
||||
name = "ocaml-3.08.0";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/ocaml-3.08.0.tar.gz;
|
||||
url = http://tarballs.nixos.org/ocaml-3.08.0.tar.gz;
|
||||
md5 = "c6ef478362295c150101cdd2efcd38e0";
|
||||
};
|
||||
configureScript = ./configure-3.08.0;
|
||||
|
@ -4,12 +4,12 @@ let
|
||||
# !!! These should be on nixos.org
|
||||
src = if glibc.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://nixos.org/tarballs/openjdk-bootstrap-x86_64-linux-2012-08-24.tar.xz;
|
||||
url = http://tarballs.nixos.org/openjdk-bootstrap-x86_64-linux-2012-08-24.tar.xz;
|
||||
sha256 = "0gla9dxrfq2w1hvgsnn8jg8a60k27im6z43a6iidi0qmwa0wah32";
|
||||
}
|
||||
else if glibc.system == "i686-linux" then
|
||||
fetchurl {
|
||||
url = http://nixos.org/tarballs/openjdk-bootstrap-i686-linux-2012-08-24.tar.xz;
|
||||
url = http://tarballs.nixos.org/openjdk-bootstrap-i686-linux-2012-08-24.tar.xz;
|
||||
sha256 = "184wq212bycwbbq4ix8cc6jwjxkrqw9b01zb86q95kqpa8zy5206";
|
||||
}
|
||||
else throw "No bootstrap for system";
|
||||
|
@ -2,7 +2,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "qcmm-2006-01-31";
|
||||
src = fetchurl {
|
||||
url = http://nixos.org/tarballs/qc--20060131.tar.gz;
|
||||
url = http://tarballs.nixos.org/qc--20060131.tar.gz;
|
||||
md5 = "9097830775bcf22c9bad54f389f5db23";
|
||||
};
|
||||
buildInputs = [ mk ocaml noweb groff ];
|
||||
|
@ -1,11 +1,12 @@
|
||||
{ stdenv, fetchurl, php, autoconf, automake }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "php-xdebug-2.0.5";
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2.2.3";
|
||||
name = "php-xdebug-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://xdebug.org/files/xdebug-2.0.5.tgz";
|
||||
sha256 = "1cmq7c36gj8n41mfq1wba5rij8j77yqhydpcsbcysk1zchg68f26";
|
||||
url = "http://xdebug.org/files/xdebug-2.2.3.tgz";
|
||||
sha256 = "076px4ax3qcqr3mmhi9jjkfhn7pcymrpda4hzy6kgn3flhnqfldk";
|
||||
};
|
||||
|
||||
buildInputs = [ php autoconf automake ];
|
||||
|
@ -1,7 +1,8 @@
|
||||
{ stdenv, fetchurl, composableDerivation, autoconf, automake, flex, bison
|
||||
, apacheHttpd, mysql, libxml2, readline, zlib, curl, gd, postgresql, gettext
|
||||
, openssl, pkgconfig, sqlite, config, libiconv, libjpeg, libpng, freetype
|
||||
, libxslt, libmcrypt, bzip2, icu }:
|
||||
, openssl, pkgconfig, sqlite, config, libjpeg, libpng, freetype, libxslt
|
||||
, libmcrypt, bzip2, icu, libssh2, makeWrapper, libiconvOrEmpty, libiconv, uwimap
|
||||
, pam }:
|
||||
|
||||
let
|
||||
libmcryptOverride = libmcrypt.override { disablePosixThreads = true; };
|
||||
@ -15,7 +16,15 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = ["flex" "bison" "pkgconfig"];
|
||||
buildInputs
|
||||
= [ flex bison pkgconfig ]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ libssh2 makeWrapper ];
|
||||
|
||||
# need to include the C++ standard library when compiling on darwin
|
||||
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lstdc++";
|
||||
|
||||
# need to specify where the dylib for icu is stored
|
||||
DYLD_LIBRARY_PATH = stdenv.lib.optionalString stdenv.isDarwin "${icu}/lib";
|
||||
|
||||
flags = {
|
||||
|
||||
@ -35,17 +44,21 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
buildInputs = [curl openssl];
|
||||
};
|
||||
|
||||
pcntl = {
|
||||
configureFlags = [ "--enable-pcntl" ];
|
||||
};
|
||||
|
||||
zlib = {
|
||||
configureFlags = ["--with-zlib=${zlib}"];
|
||||
buildInputs = [zlib];
|
||||
};
|
||||
|
||||
libxml2 = {
|
||||
configureFlags = [
|
||||
"--with-libxml-dir=${libxml2}"
|
||||
#"--with-iconv-dir=${libiconv}"
|
||||
];
|
||||
buildInputs = [ libxml2 ];
|
||||
configureFlags
|
||||
= [ "--with-libxml-dir=${libxml2}" ]
|
||||
++ stdenv.lib.optional (libiconvOrEmpty != [])
|
||||
[ "--with-iconv=${libiconv}" ];
|
||||
buildInputs = [ libxml2 ] ++ libiconvOrEmpty;
|
||||
};
|
||||
|
||||
readline = {
|
||||
@ -90,7 +103,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
|
||||
gd = {
|
||||
configureFlags = [
|
||||
"--with-gd"
|
||||
"--with-gd=${gd}"
|
||||
"--with-freetype-dir=${freetype}"
|
||||
"--with-png-dir=${libpng}"
|
||||
"--with-jpeg-dir=${libjpeg}"
|
||||
@ -120,6 +133,11 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
buildInputs = [gettext];
|
||||
};
|
||||
|
||||
imap = {
|
||||
configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" ];
|
||||
buildInputs = [ uwimap openssl pam ];
|
||||
};
|
||||
|
||||
intl = {
|
||||
configureFlags = ["--enable-intl"];
|
||||
buildInputs = [icu];
|
||||
@ -151,45 +169,35 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
ftp = {
|
||||
configureFlags = ["--enable-ftp"];
|
||||
};
|
||||
|
||||
/*
|
||||
php is build within this derivation in order to add the xdebug lines to the php.ini.
|
||||
So both Apache and command line php both use xdebug without having to configure anything.
|
||||
Xdebug could be put in its own derivation.
|
||||
* /
|
||||
meta = {
|
||||
description = "debugging support for PHP";
|
||||
homepage = http://xdebug.org;
|
||||
license = "based on the PHP license - as is";
|
||||
};
|
||||
*/
|
||||
};
|
||||
|
||||
cfg = {
|
||||
mysqlSupport = config.php.mysql or true;
|
||||
mysqliSupport = config.php.mysqli or true;
|
||||
pdo_mysqlSupport = config.php.pdo_mysql or true;
|
||||
libxml2Support = config.php.libxml2 or true;
|
||||
apxs2Support = config.php.apxs2 or true;
|
||||
bcmathSupport = config.php.bcmath or true;
|
||||
socketsSupport = config.php.sockets or true;
|
||||
bz2Support = config.php.bz2 or false;
|
||||
curlSupport = config.php.curl or true;
|
||||
exifSupport = config.php.exif or true;
|
||||
ftpSupport = config.php.ftp or true;
|
||||
gdSupport = config.php.gd or true;
|
||||
gettextSupport = config.php.gettext or true;
|
||||
imapSupport = config.php.imap or false;
|
||||
intlSupport = config.php.intl or true;
|
||||
libxml2Support = config.php.libxml2 or true;
|
||||
mbstringSupport = config.php.mbstring or true;
|
||||
mcryptSupport = config.php.mcrypt or false;
|
||||
mysqlSupport = config.php.mysql or true;
|
||||
mysqliSupport = config.php.mysqli or true;
|
||||
opensslSupport = config.php.openssl or true;
|
||||
pcntlSupport = config.php.pcntl or true;
|
||||
pdo_mysqlSupport = config.php.pdo_mysql or true;
|
||||
postgresqlSupport = config.php.postgresql or true;
|
||||
readlineSupport = config.php.readline or true;
|
||||
sqliteSupport = config.php.sqlite or true;
|
||||
soapSupport = config.php.soap or true;
|
||||
zlibSupport = config.php.zlib or true;
|
||||
opensslSupport = config.php.openssl or true;
|
||||
mbstringSupport = config.php.mbstring or true;
|
||||
gdSupport = config.php.gd or true;
|
||||
intlSupport = config.php.intl or true;
|
||||
exifSupport = config.php.exif or true;
|
||||
socketsSupport = config.php.sockets or true;
|
||||
sqliteSupport = config.php.sqlite or true;
|
||||
xslSupport = config.php.xsl or false;
|
||||
mcryptSupport = config.php.mcrypt or false;
|
||||
bz2Support = config.php.bz2 or false;
|
||||
zipSupport = config.php.zip or true;
|
||||
ftpSupport = config.php.ftp or true;
|
||||
zlibSupport = config.php.zlib or true;
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
@ -202,7 +210,11 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
installPhase = ''
|
||||
unset installPhase; installPhase;
|
||||
cp php.ini-production $iniFile
|
||||
'';
|
||||
'' + ( stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
for prog in $out/bin/*; do
|
||||
wrapProgram "$prog" --prefix DYLD_LIBRARY_PATH : "$DYLD_LIBRARY_PATH"
|
||||
done
|
||||
'' );
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
@ -212,8 +224,10 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
||||
|
||||
meta = {
|
||||
description = "The PHP language runtime engine";
|
||||
homepage = http://www.php.net/;
|
||||
license = "PHP-3";
|
||||
homepage = http://www.php.net/;
|
||||
license = "PHP-3";
|
||||
maintainers = with stdenv.lib.maintainers; [ lovek323 ];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
|
||||
patches = [./fix.patch];
|
||||
|
@ -1,6 +1,5 @@
|
||||
{ stdenv, fetchurl, zlib ? null, zlibSupport ? true, bzip2
|
||||
, sqlite, tcl, tk, x11, openssl, readline, db4, ncurses, gdbm
|
||||
}:
|
||||
, sqlite, tcl, tk, x11, openssl, readline, db4, ncurses, gdbm, libX11 }:
|
||||
|
||||
assert zlibSupport -> zlib != null;
|
||||
|
||||
@ -25,6 +24,10 @@ let
|
||||
# doesn't work in Nix because Nix changes the mtime of files in
|
||||
# the Nix store to 1. So treat that as a special case.
|
||||
./nix-store-mtime.patch
|
||||
|
||||
# patch python to put zero timestamp into pyc
|
||||
# if DETERMINISTIC_BUILD env var is set
|
||||
./deterministic-build.patch
|
||||
];
|
||||
|
||||
postPatch = stdenv.lib.optionalString (stdenv.gcc.libc != null) ''
|
||||
@ -175,7 +178,7 @@ let
|
||||
|
||||
tkinter = buildInternalPythonModule {
|
||||
moduleName = "tkinter";
|
||||
deps = [ tcl tk x11 ];
|
||||
deps = [ tcl tk x11 libX11 ];
|
||||
};
|
||||
|
||||
readline = buildInternalPythonModule {
|
||||
|
@ -0,0 +1,36 @@
|
||||
diff -ur orig/Lib/py_compile.py new/Lib/py_compile.py
|
||||
--- orig/Lib/py_compile.py
|
||||
+++ new/Lib/py_compile.py
|
||||
@@ -122,7 +122,10 @@
|
||||
cfile = file + (__debug__ and 'c' or 'o')
|
||||
with open(cfile, 'wb') as fc:
|
||||
fc.write('\0\0\0\0')
|
||||
- wr_long(fc, timestamp)
|
||||
+ if "DETERMINISTIC_BUILD" in os.environ:
|
||||
+ fc.write('\0\0\0\0')
|
||||
+ else:
|
||||
+ wr_long(fc, timestamp)
|
||||
marshal.dump(codeobject, fc)
|
||||
fc.flush()
|
||||
fc.seek(0, 0)
|
||||
diff -ur orig/Python/import.c new/Python/import.c
|
||||
--- orig/Python/import.c
|
||||
+++ new/Python/import.c
|
||||
@@ -939,10 +939,12 @@
|
||||
return;
|
||||
}
|
||||
/* Now write the true mtime (as a 32-bit field) */
|
||||
- fseek(fp, 4L, 0);
|
||||
- assert(mtime <= 0xFFFFFFFF);
|
||||
- PyMarshal_WriteLongToFile((long)mtime, fp, Py_MARSHAL_VERSION);
|
||||
- fflush(fp);
|
||||
+ if (Py_GETENV("DETERMINISTIC_BUILD") == NULL) {
|
||||
+ fseek(fp, 4L, 0);
|
||||
+ assert(mtime <= 0xFFFFFFFF);
|
||||
+ PyMarshal_WriteLongToFile((long)mtime, fp, Py_MARSHAL_VERSION);
|
||||
+ fflush(fp);
|
||||
+ }
|
||||
fclose(fp);
|
||||
if (Py_VerboseFlag)
|
||||
PySys_WriteStderr("# wrote %s\n", cpathname);
|
||||
|
@ -1,37 +0,0 @@
|
||||
{ stdenv, fetchurl, readline, perl, gfortran, libX11, libpng, libXt, zlib
|
||||
, withBioconductor ? false
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "r-lang";
|
||||
version = "2.12.0";
|
||||
src = fetchurl {
|
||||
url = http://cran.r-project.org/src/base/R-2/R-2.12.0.tar.gz;
|
||||
sha256 = "93d72d845b01c6cd00e58f04b5e78fd6c83de96a8620505ad2a016772af02179";
|
||||
};
|
||||
|
||||
bioconductor = if withBioconductor then import ../development/libraries/science/biology/bioconductor { inherit fetchurl stdenv readline; } else null;
|
||||
|
||||
postUnpack = ''
|
||||
gunzip R-2.12.0/src/library/Recommended/Matrix_0.999375-44.tar.gz
|
||||
tar --file=R-2.12.0/src/library/Recommended/Matrix_0.999375-44.tar --delete Matrix/src/dummy.cpp
|
||||
gzip R-2.12.0/src/library/Recommended/Matrix_0.999375-44.tar
|
||||
'';
|
||||
|
||||
buildInputs = [readline perl gfortran libpng libX11 libXt zlib];
|
||||
configureFlags = ["--enable-R-shlib"] ;
|
||||
|
||||
meta = {
|
||||
description = "R is a language and environment for statistical computing and graphics";
|
||||
license = "GPL2";
|
||||
homepage = http://www.r-project.org/;
|
||||
longDescription = ''
|
||||
R is a language and environment for statistical computing and
|
||||
graphics. It is a GNU project which is similar to the S language.
|
||||
R provides a wide variety of statistical (linear and nonlinear
|
||||
modelling, classical statistical tests, time-series analysis,
|
||||
classification, clustering, ...) and graphical techniques, and is
|
||||
highly extensible.
|
||||
'';
|
||||
};
|
||||
}
|
@ -4,12 +4,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "racket";
|
||||
version = "5.3.4";
|
||||
version = "5.3.5";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.racket-lang.org/installers/${version}/${pname}/${name}-src-unix.tgz";
|
||||
sha256 = "0yrdmpdvzf092869y6zjjjxl6j2kypgiv7qrfkv7lj8w01pbh7sd";
|
||||
sha256 = "0xrd25d2iskkih08ydcjqnasg84r7g32apvdw7qzlp4xs1xynjwk";
|
||||
};
|
||||
|
||||
# Various racket executables do run-time searches for these.
|
||||
|
@ -43,7 +43,7 @@ stdenv.mkDerivation {
|
||||
meta = {
|
||||
description = "Ren'Py Visual Novel Engine";
|
||||
homepage = "http://renpy.org/";
|
||||
licence = "MIT";
|
||||
license = "MIT";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
13
pkgs/development/interpreters/ruby/bitperfect-rdoc.patch
Normal file
13
pkgs/development/interpreters/ruby/bitperfect-rdoc.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff -r -u orig/lib/rdoc/generator/template/darkfish/filepage.rhtml new/lib/rdoc/generator/template/darkfish/filepage.rhtml
|
||||
--- orig/lib/rdoc/generator/template/darkfish/filepage.rhtml
|
||||
+++ new/lib/rdoc/generator/template/darkfish/filepage.rhtml
|
||||
@@ -88,9 +88,6 @@
|
||||
<body class="file file-popup">
|
||||
<div id="metadata">
|
||||
<dl>
|
||||
- <dt class="modified-date">Last Modified</dt>
|
||||
- <dd class="modified-date"><%= file.last_modified %></dd>
|
||||
-
|
||||
<% if file.requires %>
|
||||
<dt class="requires">Requires</dt>
|
||||
<dd class="requires">
|
@ -39,6 +39,10 @@ let
|
||||
[[ -e "$out/bin/$(basename $prog)" ]]
|
||||
done
|
||||
|
||||
# looks like useless files which break build repeatability and consume space
|
||||
rm $out/${ruby.gemPath}/doc/*/*/created.rid || true
|
||||
rm $out/${ruby.gemPath}/gems/*/ext/*/mkmf.log || true
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
|
@ -28,6 +28,7 @@ g: # Get dependencies from patched gems
|
||||
erubis = g.erubis_2_7_0;
|
||||
eventmachine = g.eventmachine_1_0_3;
|
||||
eventmachine_tail = g.eventmachine_tail_0_6_4;
|
||||
excon = g.excon_0_25_0;
|
||||
execjs = g.execjs_1_4_0;
|
||||
fakes3 = g.fakes3_0_1_5;
|
||||
faraday = g.faraday_0_8_7;
|
||||
@ -36,6 +37,8 @@ g: # Get dependencies from patched gems
|
||||
file_tail = g.file_tail_1_0_12;
|
||||
foreman = g.foreman_0_62_0;
|
||||
gettext = g.gettext_2_3_9;
|
||||
heroku = g.heroku_2_39_4;
|
||||
heroku_api = g.heroku_api_0_3_13;
|
||||
highline = g.highline_1_6_16;
|
||||
hike = g.hike_1_2_1;
|
||||
hoe = g.hoe_3_1_0;
|
||||
@ -46,6 +49,7 @@ g: # Get dependencies from patched gems
|
||||
jsduck = g.jsduck_4_7_1;
|
||||
json = g.json_1_7_7;
|
||||
json_pure = g.json_pure_1_7_7;
|
||||
launchy = g.launchy_2_3_0;
|
||||
libv8 = g.libv8_3_3_10_4;
|
||||
locale = g.locale_2_0_8;
|
||||
lockfile = g.lockfile_2_1_0;
|
||||
@ -57,6 +61,7 @@ g: # Get dependencies from patched gems
|
||||
multipart_post = g.multipart_post_1_2_0;
|
||||
net_sftp = g.net_sftp_2_0_5;
|
||||
net_ssh = g.net_ssh_2_6_6;
|
||||
netrc = g.netrc_0_7_7;
|
||||
nix = g.nix_0_1_1;
|
||||
nokogiri = g.nokogiri_1_5_9;
|
||||
papertrail = g.papertrail_0_9_7;
|
||||
@ -72,9 +77,11 @@ g: # Get dependencies from patched gems
|
||||
railties = g.railties_3_2_13;
|
||||
rake = g.rake_10_0_4;
|
||||
rb_fsevent = g.rb_fsevent_0_9_3;
|
||||
rb_readline = g.rb_readline_0_5_0;
|
||||
rdiscount = g.rdiscount_2_0_7_1;
|
||||
rdoc = g.rdoc_3_12_2;
|
||||
remote_syslog = g.remote_syslog_1_6_13;
|
||||
rest_client = g.rest_client_1_6_7;
|
||||
right_aws = g.right_aws_3_0_5;
|
||||
right_http_connection = g.right_http_connection_1_3_0;
|
||||
rjb = g.rjb_1_4_6;
|
||||
@ -222,6 +229,20 @@ adds support for IRIs and URI templates.
|
||||
requiredGems = [ ];
|
||||
sha256 = ''0nn583ba8kq4hhpr4lr2zzpm4r0mga0zfalxxpa6a4v27q71v5hh'';
|
||||
};
|
||||
addressable_2_3_5 = {
|
||||
basename = ''addressable'';
|
||||
meta = {
|
||||
description = ''URI Implementation'';
|
||||
homepage = ''http://addressable.rubyforge.org/'';
|
||||
longDescription = ''Addressable is a replacement for the URI implementation that is part of
|
||||
Ruby's standard library. It more closely conforms to the relevant RFCs and
|
||||
adds support for IRIs and URI templates.
|
||||
'';
|
||||
};
|
||||
name = ''addressable-2.3.5'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''11hv69v6h39j7m4v51a4p7my7xwjbhxbsg3y7ja156z7by10wkg7'';
|
||||
};
|
||||
arel_3_0_2 = {
|
||||
basename = ''arel'';
|
||||
meta = {
|
||||
@ -504,6 +525,17 @@ using TCP/IP, especially if custom protocols are required.'';
|
||||
requiredGems = [ g.eventmachine_1_0_3 ];
|
||||
sha256 = ''1pvlb34vdzd81kf9f3xyibb4f55xjqm7lqqy28dgyci5cyv50y61'';
|
||||
};
|
||||
excon_0_25_0 = {
|
||||
basename = ''excon'';
|
||||
meta = {
|
||||
description = ''speed, persistence, http(s)'';
|
||||
homepage = ''https://github.com/geemus/excon'';
|
||||
longDescription = ''EXtended http(s) CONnections'';
|
||||
};
|
||||
name = ''excon-0.25.0'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''0wv5bc7d138xw2v608ywl9cwhq7d7gl1l2hzdh96ia2a06hf4rry'';
|
||||
};
|
||||
execjs_1_4_0 = {
|
||||
basename = ''execjs'';
|
||||
meta = {
|
||||
@ -593,6 +625,28 @@ So you can use GNU gettext tools for maintaining.
|
||||
requiredGems = [ g.locale_2_0_8 g.text_1_2_1 ];
|
||||
sha256 = ''1i4kzkan7mnyr1ihphx0sqs3k4qj9i1ldg4a1cwf5h2fz657wvjj'';
|
||||
};
|
||||
heroku_2_39_4 = {
|
||||
basename = ''heroku'';
|
||||
meta = {
|
||||
description = ''Client library and CLI to deploy apps on Heroku.'';
|
||||
homepage = ''http://heroku.com/'';
|
||||
longDescription = ''Client library and command-line tool to deploy and manage apps on Heroku.'';
|
||||
};
|
||||
name = ''heroku-2.39.4'';
|
||||
requiredGems = [ g.heroku_api_0_3_13 g.netrc_0_7_7 g.rest_client_1_6_7 g.launchy_2_3_0 g.rubyzip_0_9_9 g.rb_readline_0_5_0 ];
|
||||
sha256 = ''1dhj529kqk6q66406f7iwlxwsifndlzcm0513i0hzlhc4lbkbf4x'';
|
||||
};
|
||||
heroku_api_0_3_13 = {
|
||||
basename = ''heroku_api'';
|
||||
meta = {
|
||||
description = ''Ruby Client for the Heroku API'';
|
||||
homepage = ''http://github.com/heroku/heroku.rb'';
|
||||
longDescription = ''Ruby Client for the Heroku API'';
|
||||
};
|
||||
name = ''heroku-api-0.3.13'';
|
||||
requiredGems = [ g.excon_0_25_0 ];
|
||||
sha256 = ''179asf4rxjyg59zh5s7lcrnj7rrz9ymz1km24hdydgyay7px0yvi'';
|
||||
};
|
||||
highline_1_6_16 = {
|
||||
basename = ''highline'';
|
||||
meta = {
|
||||
@ -753,6 +807,17 @@ For extra goodness, see: http://seattlerb.rubyforge.org/hoe/Hoe.pdf'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''0jxp0amx9xhka0ixnhvfgwc5ydr82hkxp81pvw32z31arx7jrwl6'';
|
||||
};
|
||||
launchy_2_3_0 = {
|
||||
basename = ''launchy'';
|
||||
meta = {
|
||||
description = ''Launchy is helper class for launching cross-platform applications in a fire and forget manner.'';
|
||||
homepage = ''http://github.com/copiousfreetime/launchy'';
|
||||
longDescription = ''Launchy is helper class for launching cross-platform applications in a fire and forget manner. There are application concepts (browser, email client, etc) that are common across all platforms, and they may be launched differently on each platform. Launchy is here to make a common approach to launching external application from within ruby programs.'';
|
||||
};
|
||||
name = ''launchy-2.3.0'';
|
||||
requiredGems = [ g.addressable_2_3_5 ];
|
||||
sha256 = ''0ckvs40f29ancs0ki12pqb94k380cz41b4gbjplm85ly6kd57sph'';
|
||||
};
|
||||
libv8_3_3_10_4 = {
|
||||
basename = ''libv8'';
|
||||
meta = {
|
||||
@ -841,6 +906,38 @@ added from the the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1qmx53a2kqk0nnhjbfvbc213wsxiprl0wqm7f2xvcsh253ld91iw'';
|
||||
};
|
||||
mime_types_1_23 = {
|
||||
basename = ''mime_types'';
|
||||
meta = {
|
||||
description = ''This library allows for the identification of a file's likely MIME content type'';
|
||||
homepage = ''http://mime-types.rubyforge.org/'';
|
||||
longDescription = ''This library allows for the identification of a file's likely MIME content
|
||||
type. This is release 1.23 that adds the ability to enumerate over the
|
||||
collection of MIME types and updates the sources of a few MIME types. The
|
||||
identification of MIME content type is based on a file's filename extensions.
|
||||
|
||||
MIME types are used in MIME-compliant communications, as in e-mail or HTTP
|
||||
traffic, to indicate the type of content which is transmitted. MIME::Types
|
||||
provides the ability for detailed information about MIME entities (provided as
|
||||
a set of MIME::Type objects) to be determined and used programmatically. There
|
||||
are many types defined by RFCs and vendors, so the list is long but not
|
||||
complete; don't hesitate to ask to add additional information. This library
|
||||
follows the IANA collection of MIME types (see below for reference).
|
||||
|
||||
MIME::Types for Ruby was originally based on and synchronized with MIME::Types
|
||||
for Perl by Mark Overmeer, copyright 2001 - 2009. As of version 1.15, the data
|
||||
format for the MIME::Type list has changed and the synchronization will no
|
||||
longer happen.
|
||||
|
||||
MIME::Types is built to conform to the MIME types of RFCs 2045 and 2231. It
|
||||
follows the official {IANA registry}[http://www.iana.org/assignments/media-types/]
|
||||
({ftp}[ftp://ftp.iana.org/assignments/media-types]) with some unofficial types
|
||||
added from the the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp].'';
|
||||
};
|
||||
name = ''mime-types-1.23'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1ch5ngx67nhbq6j1y79c88gzk6i8pzqi860iwfpxp9c0bwf6fags'';
|
||||
};
|
||||
minitar_0_5_3 = {
|
||||
basename = ''minitar'';
|
||||
meta = {
|
||||
@ -907,6 +1004,17 @@ added from the the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp
|
||||
requiredGems = [ ];
|
||||
sha256 = ''00fdnwv3jf311jjcc51lq8w26r62vzma91i79h5hj8i1ylrilx51'';
|
||||
};
|
||||
netrc_0_7_7 = {
|
||||
basename = ''netrc'';
|
||||
meta = {
|
||||
description = ''Library to read and write netrc files.'';
|
||||
homepage = ''https://github.com/geemus/netrc'';
|
||||
longDescription = ''This library can read and update netrc files, preserving formatting including comments and whitespace.'';
|
||||
};
|
||||
name = ''netrc-0.7.7'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1y64v93hsxdwgx3dfkyzdki3zqd1slm42dmi23v0zy3kap4vpard'';
|
||||
};
|
||||
nix_0_1_1 = {
|
||||
basename = ''nix'';
|
||||
meta = {
|
||||
@ -1129,6 +1237,17 @@ request helpers feature.'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''0bdnxwdxj4r1kdxfi5nszbsb126njrr81p912g64xxs2bgxd1bp1'';
|
||||
};
|
||||
rb_readline_0_5_0 = {
|
||||
basename = ''rb_readline'';
|
||||
meta = {
|
||||
description = ''Pure-Ruby Readline Implementation'';
|
||||
homepage = ''http://github.com/luislavena/rb-readline'';
|
||||
longDescription = ''The readline library provides a pure Ruby implementation of the GNU readline C library, as well as the Readline extension that ships as part of the standard library.'';
|
||||
};
|
||||
name = ''rb-readline-0.5.0'';
|
||||
requiredGems = [ ];
|
||||
sha256 = ''1aixbqpwrlzvrii4c80982jih4syanc2jl0lfcbibqvjasy9h9c8'';
|
||||
};
|
||||
rdiscount_2_0_7_1 = {
|
||||
basename = ''rdiscount'';
|
||||
meta = {
|
||||
@ -1165,6 +1284,17 @@ See RDoc for a description of RDoc's markup and basic use.'';
|
||||
requiredGems = [ g.servolux_0_10_0 g.file_tail_1_0_12 g.eventmachine_1_0_3 g.eventmachine_tail_0_6_4 g.syslog_protocol_0_9_2 g.em_resolv_replace_1_1_3 ];
|
||||
sha256 = ''0q35j02k2l3fw3fdzq0i3rd6chsqr982gj13f3m3lsxm7kms03nw'';
|
||||
};
|
||||
rest_client_1_6_7 = {
|
||||
basename = ''rest_client'';
|
||||
meta = {
|
||||
description = ''Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.'';
|
||||
homepage = ''http://github.com/archiloque/rest-client'';
|
||||
longDescription = ''A simple HTTP and REST client for Ruby, inspired by the Sinatra microframework style of specifying actions: get, put, post, delete.'';
|
||||
};
|
||||
name = ''rest-client-1.6.7'';
|
||||
requiredGems = [ g.mime_types_1_23 ];
|
||||
sha256 = ''0nn7zalgidz2yj0iqh3xvzh626krm2al79dfiij19jdhp0rk8853'';
|
||||
};
|
||||
right_aws_3_0_5 = {
|
||||
basename = ''right_aws'';
|
||||
meta = {
|
||||
|
@ -38,7 +38,9 @@ stdenv.mkDerivation rec {
|
||||
++ (op (!cursesSupport && stdenv.isDarwin) readline);
|
||||
|
||||
enableParallelBuilding = true;
|
||||
patches = [ ./ruby19-parallel-install.patch ];
|
||||
patches = [ ./ruby19-parallel-install.patch
|
||||
./bitperfect-rdoc.patch
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-shared" "--enable-pthread" ]
|
||||
# on darwin, we have /usr/include/tk.h -- so the configure script detects
|
||||
|
@ -1,5 +1,6 @@
|
||||
{ fetchurl, stdenv, pkgconfig, libdaemon, dbus, perl, perlXMLParser
|
||||
, expat, gettext, intltool, glib, qt4 ? null, libiconvOrEmpty
|
||||
, expat, gettext, intltool, glib, libiconvOrEmpty
|
||||
, qt4 ? null
|
||||
, qt4Support ? false
|
||||
, withLibdnssdCompat ? false }:
|
||||
|
||||
@ -25,23 +26,29 @@ stdenv.mkDerivation rec {
|
||||
[ "--disable-qt3" "--disable-gdbm" "--disable-mono"
|
||||
"--disable-gtk" "--disable-gtk3"
|
||||
"--${if qt4Support then "enable" else "disable"}-qt4"
|
||||
"--disable-python"
|
||||
"--with-distro=none" "--localstatedir=/var"
|
||||
] ++ stdenv.lib.optional withLibdnssdCompat "--enable-compat-libdns_sd";
|
||||
"--disable-python" "--localstatedir=/var" "--with-distro=none" ]
|
||||
++ stdenv.lib.optional withLibdnssdCompat "--enable-compat-libdns_sd"
|
||||
# autoipd won't build on darwin
|
||||
++ stdenv.lib.optional stdenv.isDarwin "--disable-autoipd";
|
||||
|
||||
meta = {
|
||||
preBuild = stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
sed -i '20 i\
|
||||
#define __APPLE_USE_RFC_2292' \
|
||||
avahi-core/socket.c
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Avahi, an mDNS/DNS-SD implementation";
|
||||
homepage = http://avahi.org;
|
||||
license = licenses.lgpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ lovek323 ludo ];
|
||||
|
||||
longDescription = ''
|
||||
Avahi is a system which facilitates service discovery on a local
|
||||
network. It is an implementation of the mDNS (for "Multicast
|
||||
DNS") and DNS-SD (for "DNS-Based Service Discovery")
|
||||
protocols.
|
||||
'';
|
||||
|
||||
homepage = http://avahi.org;
|
||||
license = "LGPLv2+";
|
||||
|
||||
platforms = stdenv.lib.platforms.linux; # arbitrary choice
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
};
|
||||
}
|
||||
|
91
pkgs/development/libraries/boost/1.54.nix
Normal file
91
pkgs/development/libraries/boost/1.54.nix
Normal file
@ -0,0 +1,91 @@
|
||||
{ stdenv, fetchurl, icu, expat, zlib, bzip2, python
|
||||
, enableRelease ? true
|
||||
, enableDebug ? false
|
||||
, enableSingleThreaded ? false
|
||||
, enableMultiThreaded ? true
|
||||
, enableShared ? true
|
||||
, enableStatic ? false
|
||||
, enablePIC ? false
|
||||
, enableExceptions ? false
|
||||
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
|
||||
}:
|
||||
|
||||
let
|
||||
|
||||
variant = stdenv.lib.concatStringsSep ","
|
||||
(stdenv.lib.optional enableRelease "release" ++
|
||||
stdenv.lib.optional enableDebug "debug");
|
||||
|
||||
threading = stdenv.lib.concatStringsSep ","
|
||||
(stdenv.lib.optional enableSingleThreaded "single" ++
|
||||
stdenv.lib.optional enableMultiThreaded "multi");
|
||||
|
||||
link = stdenv.lib.concatStringsSep ","
|
||||
(stdenv.lib.optional enableShared "shared" ++
|
||||
stdenv.lib.optional enableStatic "static");
|
||||
|
||||
# To avoid library name collisions
|
||||
layout = if taggedLayout then "tagged" else "system";
|
||||
|
||||
cflags = if enablePIC && enableExceptions then
|
||||
"cflags=\"-fPIC -fexceptions\" cxxflags=-fPIC linkflags=-fPIC"
|
||||
else if enablePIC then
|
||||
"cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC"
|
||||
else if enableExceptions then
|
||||
"cflags=-fexceptions"
|
||||
else
|
||||
"";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "boost-1.54.0";
|
||||
|
||||
meta = {
|
||||
homepage = "http://boost.org/";
|
||||
description = "Boost C++ Library Collection";
|
||||
license = "boost-license";
|
||||
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/boost/boost_1_54_0.tar.bz2";
|
||||
sha256 = "07df925k56pbz3gvhxpx54aij34qd40a7sxw4im11brnwdyr4zh4";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [icu expat zlib bzip2 python];
|
||||
|
||||
configureScript = "./bootstrap.sh";
|
||||
configureFlags = "--with-icu=${icu} --with-python=${python}/bin/python";
|
||||
|
||||
buildPhase = "./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${layout} variant=${variant} threading=${threading} link=${link} ${cflags} install";
|
||||
|
||||
# normal install does not install bjam, this is a separate step
|
||||
installPhase = ''
|
||||
cd tools/build/v2
|
||||
sh bootstrap.sh
|
||||
./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${layout} variant=${variant} threading=${threading} link=${link} ${cflags} install
|
||||
'';
|
||||
|
||||
crossAttrs = rec {
|
||||
buildInputs = [ expat.crossDrv zlib.crossDrv bzip2.crossDrv ];
|
||||
# all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to
|
||||
# override them.
|
||||
propagatedBuildInputs = buildInputs;
|
||||
# We want to substitute the contents of configureFlags, removing thus the
|
||||
# usual --build and --host added on cross building.
|
||||
preConfigure = ''
|
||||
export configureFlags="--prefix=$out --without-icu"
|
||||
'';
|
||||
buildPhase = ''
|
||||
set -x
|
||||
cat << EOF > user-config.jam
|
||||
using gcc : cross : $crossConfig-g++ ;
|
||||
EOF
|
||||
./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat.crossDrv}/include -sEXPAT_LIBPATH=${expat.crossDrv}/lib --layout=${layout} --user-config=user-config.jam toolset=gcc-cross variant=${variant} threading=${threading} link=${link} ${cflags} --without-python install
|
||||
'';
|
||||
};
|
||||
}
|
@ -1,18 +1,23 @@
|
||||
{ stdenv, fetchurl }:
|
||||
{ stdenv, fetchurl, boost }:
|
||||
|
||||
let
|
||||
version = stdenv.lib.removePrefix "boost-" boost.name;
|
||||
pkgid = stdenv.lib.replaceChars ["-" "."] ["_" "_"] boost.name;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "boost-headers-1.53.0";
|
||||
name = "boost-headers-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/boost/boost_1_53_0.tar.bz2";
|
||||
sha256 = "15livg6y1l3gdsg6ybvp3y4gp0w3xh1rdcq5bjf0qaw804dh92pq";
|
||||
url = "mirror://sourceforge/boost/${pkgid}.tar.bz2";
|
||||
sha256 = "07df925k56pbz3gvhxpx54aij34qd40a7sxw4im11brnwdyr4zh4";
|
||||
};
|
||||
|
||||
phases = [ "installPhase" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/include
|
||||
tar xf $src -C $out/include --strip-components=1 boost_1_53_0/boost
|
||||
tar xf $src -C $out/include --strip-components=1 ${pkgid}/boost
|
||||
'';
|
||||
|
||||
meta = {
|
@ -8,7 +8,8 @@ stdenv.mkDerivation {
|
||||
sha256 = "1p4zzqn02zvnyjy84khiq8v65pl422fb6ni946h9sxh4yw2lgn01";
|
||||
};
|
||||
|
||||
buildInputs = [ openssl pkgconfig libgcrypt ucommon ];
|
||||
buildInputs = [ openssl pkgconfig libgcrypt ];
|
||||
propagatedBuildInputs = [ ucommon ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl }:
|
||||
{ stdenv, fetchurl, libintlOrEmpty }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cracklib-2.8.16";
|
||||
@ -8,8 +8,12 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1g3mchdvra9nihxlkl3rdz96as3xnfw5m59hmr5k17l7qa9a8fpw";
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = http://sourceforge.net/projects/cracklib;
|
||||
buildInputs = libintlOrEmpty;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://sourceforge.net/projects/cracklib;
|
||||
description = "A library for checking the strength of passwords";
|
||||
maintainers = with maintainers; [ lovek323 ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ stdenv.mkDerivation {
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
http://download.oracle.com/berkeley-db/db-4.4.20.NC.tar.gz
|
||||
http://nixos.org/tarballs/db-4.4.20.NC.tar.gz
|
||||
http://tarballs.nixos.org/db-4.4.20.NC.tar.gz
|
||||
];
|
||||
md5 = "afd9243ea353bbaa04421488d3b37900";
|
||||
};
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user