Merge branch 'master' into arduino

Conflicts:
	pkgs/top-level/all-packages.nix
This commit is contained in:
Antono Vasiljev 2012-12-23 00:17:23 +02:00
commit d4fc33b13a
483 changed files with 4755 additions and 20323 deletions

View file

@ -5,7 +5,6 @@ hydra_eval_jobs \
--argstr system x86_64-linux \
--argstr system i686-linux \
--argstr system x86_64-darwin \
--argstr system i686-darwin \
--argstr system i686-cygwin \
--argstr system i686-freebsd \
--arg officialRelease false \

View file

@ -1,37 +0,0 @@
{ stdenv, fetchgit, fetchgitrevision
, lib, cmake, qt4, qtscriptgenerator, perl, gettext, curl
, libxml2, mysql, taglib, taglib_extras, loudmouth , kdelibs, automoc4, phonon
, strigi, soprano, qca2, libmtp, liblastfm, libgpod, pkgconfig
, repository ? "git://git.kde.org/amarok"
, branch ? "heads/master"
, rev ? fetchgitrevision repository branch
, src ? fetchgit {
url = repository;
rev = rev;
}
}:
stdenv.mkDerivation rec {
name = "${pname}-${version}";
pname = "amarok";
version = "live";
inherit src;
QT_PLUGIN_PATH="${qtscriptgenerator}/lib/qt4/plugins";
buildInputs = [ cmake qt4 qtscriptgenerator perl stdenv.gcc.libc gettext curl
libxml2 mysql taglib taglib_extras loudmouth kdelibs automoc4 phonon strigi
soprano qca2 libmtp liblastfm libgpod pkgconfig ];
postInstall = ''
mkdir -p $out/nix-support
echo ${qtscriptgenerator} > $out/nix-support/propagated-user-env-packages
'';
meta = {
description = "Popular music player for KDE";
license = "GPL";
homepage = http://amarok.kde.org;
inherit (kdelibs.meta) maintainers;
};
}

View file

@ -4,12 +4,12 @@
}:
stdenv.mkDerivation rec {
version = "2.0.0";
version = "2.0.2";
name = "audacity-${version}";
src = fetchurl {
url = "http://audacity.googlecode.com/files/audacity-minsrc-${version}.tar.bz2";
sha256 = "0spbib3f86b4qri0g13idyxvysg28hkpsglmjza681zrln62hjfq";
sha256 = "17c7p5jww5zcg2k2fs1751mv5kbadcmgicszi1zxwj2p5b35x2mc";
};
buildInputs = [ pkgconfig wxGTK libsndfile expat alsaLib libsamplerate
libvorbis libmad flac id3lib ffmpeg gettext ];

View file

@ -2,17 +2,17 @@
, libglademm, libcanberra, intltool, gettext }:
stdenv.mkDerivation rec {
name = "pavucontrol-0.9.10";
name = "pavucontrol-1.0";
src = fetchurl {
url = "http://0pointer.de/lennart/projects/pavucontrol/${name}.tar.gz";
sha256 = "0g2sd9smwwpnyq8yc65dl9z0iafj2rrimi8v58wkxx98vhnnvsby";
url = "http://freedesktop.org/software/pulseaudio/pavucontrol/${name}.tar.xz";
sha256 = "1plcyrc7p6gqxjhxx2xh6162bkb29wixjrqrjnl9b8g3nrjjigix";
};
buildInputs = [ pkgconfig pulseaudio gtkmm libsigcxx libglademm libcanberra
intltool gettext ];
configureFlags = "--disable-lynx";
configureFlags = "--disable-lynx --disable-gtk3";
meta = {
description = "PulseAudio Volume Control";

View file

@ -8,7 +8,16 @@ stdenv.mkDerivation rec {
sha256 = "18gvhyhwpabmgv4lh21lg8vl3z7acdyhh2mr2kj9g75wksj39pcp";
};
doCheck = true;
/* FIXME: Tests currently fail on Darwin:
building test scripts for ed-1.5...
testing ed-1.5...
*** Output e1.o of script e1.ed is incorrect ***
*** Output r3.o of script r3.ed is incorrect ***
make: *** [check] Error 127
*/
doCheck = !stdenv.isDarwin;
crossAttrs = {
compileFlags = [ "CC=${stdenv.cross.config}-gcc" ];

View file

@ -18,6 +18,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
# This file should normally require a gtk-update-icon-cache -q /usr/share/icons/hicolor command
# It have no reasons to exist in a redistribuable package
postInstall = "rm $out/share/icons/hicolor/icon-theme.cache";
meta = {
description = "A GTK2 small and ligthweight IDE.";
longDescription = ''

View file

@ -1,18 +0,0 @@
args: with args;
stdenv.mkDerivation {
name = jedit.name+"_startscript";
java = jre+"/bin/java";
jeditjar = jedit+"/lib/jedit.jar";
phases = "buildPhase";
buildPhase = "
mkdir -p \$out/bin
cat > \$out/bin/${jedit.name} << EOF
#!/bin/sh
exec $java -jar $jeditjar \\$*
EOF
chmod +x \$out/bin/${jedit.name}
";
}

View file

@ -1,6 +1,6 @@
{stdenv, fetchurl, x11, motif, libXpm}:
assert stdenv.system == "i686-linux";
assert stdenv.isLinux;
stdenv.mkDerivation {
name = "nedit-5.5";
@ -15,7 +15,7 @@ stdenv.mkDerivation {
inherit motif;
buildInputs = [x11 motif libXpm];
buildFlags = if stdenv.system == "i686-linux" then "linux" else "";
buildFlags = if stdenv.isLinux then "linux" else "";
meta = {
homepage = http://www.nedit.org;

View file

@ -0,0 +1,19 @@
{ stdenv, fetchurl, ncurses }:
stdenv.mkDerivation rec {
name = "vbindiff-${version}";
version = "3.0_beta4";
buildInputs = [ ncurses ];
src = fetchurl {
url = "http://www.cjmweb.net/vbindiff/${name}.tar.gz";
sha256 = "0gcqy4ggp60qc6blq1q1gc90xmhip1m6yvvli4hdqlz9zn3mlpbx";
};
meta = {
description = "A terminal visual binary diff viewer";
homepage = "http://www.cjmweb.net/vbindiff/";
license = stdenv.lib.licenses.gpl2Plus;
};
}

View file

@ -1,11 +1,11 @@
{ fetchurl, stdenv, ncurses, boehmgc, perl, help2man }:
stdenv.mkDerivation rec {
name = "zile-2.4.7";
name = "zile-2.4.9";
src = fetchurl {
url = "mirror://gnu/zile/${name}.tar.gz";
sha256 = "1ak7qjb7s4whxg8qpkg7yixfnhinwfmzgav7rzi0kjmm93z35xcc";
sha256 = "0j801c28ypm924rw3lqyb6khxyslg6ycrv16wmmwcam0mk3mj6f7";
};
buildInputs = [ ncurses boehmgc ];

View file

@ -3,24 +3,24 @@
, libgnome_keyring, gphoto2, gtk, ilmbase, intltool, lcms, lcms2
, lensfun, libXau, libXdmcp, libexif, libglade, libgphoto2, libjpeg
, libpng, libpthreadstubs, libraw1394, librsvg, libtiff, libxcb
, openexr, pixman, pkgconfig, sqlite, bash }:
, openexr, pixman, pkgconfig, sqlite, bash, libxslt }:
assert stdenv ? glibc;
stdenv.mkDerivation rec {
version = "1.0.5";
version = "1.1.1";
name = "darktable-${version}";
src = fetchurl {
url = "mirror://sourceforge/darktable/darktable-${version}.tar.gz";
sha256 = "0c18530446d2f2459fe533a1ef6fc2711300efe7466f36c23168ec2230fb5fbd";
sha256 = "0k1m7nd42yn4c2jr1ps1g96fqk9pq20cxjp7dmlza61pj2j9nads";
};
buildInputs =
[ GConf atk cairo cmake curl dbus_glib exiv2 glib libgnome_keyring gtk
ilmbase intltool lcms lcms2 lensfun libXau libXdmcp libexif
libglade libgphoto2 libjpeg libpng libpthreadstubs libraw1394
librsvg libtiff libxcb openexr pixman pkgconfig sqlite
librsvg libtiff libxcb openexr pixman pkgconfig sqlite libxslt
];
preConfigure = ''

View file

@ -1,22 +0,0 @@
commit 5803d31ae7704e0349821dcc20a94a1cddda69f1
Author: Tim Harder <radhermit@gmail.com>
Date: Wed Sep 21 14:13:55 2011 -0700
Fix build with libpng-1.5
Explicitly include the zlib.h header for the Z_BEST_COMPRESSION and
Z_DEFAULT_STRATEGY macros since >=libpng-1.5 doesn't pull it in anymore
via the png.h header.
diff --git a/src/imageio/format/png.c b/src/imageio/format/png.c
index 40c7d48..c7be566 100644
--- a/src/imageio/format/png.c
+++ b/src/imageio/format/png.c
@@ -28,6 +28,7 @@
#include <stdio.h>
#include <png.h>
#include <inttypes.h>
+#include <zlib.h>
DT_MODULE(1)

View file

@ -22,6 +22,10 @@ stdenv.mkDerivation rec {
patches = [ ./glib-top-level-header.patch ];
# This file should normally require a gtk-update-icon-cache -q /usr/share/icons/hicolor command
# It have no reasons to exist in a redistribuable package
postInstall = "rm $out/share/icons/hicolor/icon-theme.cache";
meta = {
description = "Gnome Diagram drawing software";
homepage = http://live.gnome.org/Dia;

View file

@ -1,55 +0,0 @@
Index: src/3rdParty/salomesmesh/CMakeLists.txt
===================================================================
--- a/src/3rdParty/salomesmesh/CMakeLists.txt (revision 4193)
+++ a/src/3rdParty/salomesmesh/CMakeLists.txt (working copy)
@@ -191,7 +191,7 @@
INCLUDE_DIRECTORIES(src/StdMeshers)
ADD_LIBRARY(StdMeshers SHARED ${StdMeshers_source_files})
-TARGET_LINK_LIBRARIES(StdMeshers SMESH TKernel TKMath TKAdvTools f2c)
+TARGET_LINK_LIBRARIES(StdMeshers SMESH TKernel TKMath TKAdvTools f2c gfortran)
SET(StdMeshers_CFLAGS "")
IF(WIN32)
SET(StdMeshers_CFLAGS "-DSTDMESHERS_EXPORTS -DMEFISTO2D_EXPORTS")
@@ -218,9 +218,9 @@
# Libraries are installed by default in /usr/local/lib/SMESH-5.1.2.7
INSTALL(TARGETS SMDS Driver DriverSTL DriverDAT DriverUNV
SMESHDS SMESH StdMeshers
- DESTINATION /usr/local/lib/${INSTALL_PATH_NAME})
+ DESTINATION lib)
# Headers are installed by default in /usr/local/include/SMESH-5.1.2.7
INSTALL(DIRECTORY inc/
- DESTINATION /usr/local/include/${INSTALL_PATH_NAME}
+ DESTINATION include
FILES_MATCHING PATTERN "*.h*")
ENDIF(UNIX)
Index: src/3rdParty/Pivy-0.5/CMakeLists.txt
===================================================================
--- a/src/3rdParty/Pivy-0.5/CMakeLists.txt (revision 4193)
+++ a/src/3rdParty/Pivy-0.5/CMakeLists.txt (working copy)
@@ -56,6 +56,7 @@
set_target_properties(coin PROPERTIES OUTPUT_NAME "_coin")
set_target_properties(coin PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/pivy)
set_target_properties(coin PROPERTIES PREFIX "")
+ install(TARGETS coin DESTINATION bin/pivy)
endif(MSVC)
fc_copy_sources_outpath("bin/pivy" "coin"
Index: CMakeLists.txt
===================================================================
--- a/CMakeLists.txt (revision 4193)
+++ a/CMakeLists.txt (working copy)
@@ -57,13 +57,6 @@
# ================================================================================
-
-if(WIN32)
- SET(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR})
-else(WIN32)
- SET(CMAKE_INSTALL_PREFIX "/usr/lib/freecad")
-endif(WIN32)
-
# ================================================================================
# == Win32 is default behaviour use the LibPack copied in Source tree ============
if(MSVC)

View file

@ -1,17 +1,15 @@
{ fetchsvn, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts,
{ fetchgit, stdenv, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts,
boost, zlib,
python, swig, gfortran, soqt, libf2c, pyqt4, makeWrapper }:
# It builds but fails to install
stdenv.mkDerivation rec {
name = "freecad-${version}";
version = "svn-${src.rev}";
version = "git-20121213";
src = fetchsvn {
url = https://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk;
rev = "4184";
sha256 = "26bd8407ce38f070b81ef39145aed093eed3c200d165a605b8169162d66568ce";
src = fetchgit {
url = git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad;
rev = "d3949cedc7e3c924d426660515e06eaf55d1a67f";
sha256 = "0a07ih0z5d8m69zasmvi7z4lgq0pa67k2g7r1l6nz2d0b30py61w";
};
buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost
@ -19,12 +17,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
# The freecad people are used to boost 1.42, and we have newer boost that
# require the -DBOOST_FILESYSTEM_VERSION=2 for freecad to build
# For zlib to build in i686-linux, as g++ plus glibc defines _LARGEFILE64_SOURCE,
# we need the -D-FILE_OFFSET_BITS=64 indication for zlib headers to work.
NIX_CFLAGS_COMPILE = "-DBOOST_FILESYSTEM_VERSION=2 -D_FILE_OFFSET_BITS=64";
# This should work on both x86_64, and i686 linux
preBuild = ''
export NIX_LDFLAGS="-L${gfortran.gcc}/lib64 -L${gfortran.gcc}/lib $NIX_LDFLAGS";
@ -35,7 +27,7 @@ stdenv.mkDerivation rec {
--set COIN_GL_NO_CURRENT_CONTEXT_CHECK 1
'';
patches = [ ./cmakeinstall.patch ./pythonpath.patch ];
patches = [ ./pythonpath.patch ];
meta = {
homepage = http://free-cad.sourceforge.net/;

View file

@ -1,14 +1,18 @@
http://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=4&t=847&p=6364
Index: src/Main/MainGui.cpp
===================================================================
--- a/src/Main/MainGui.cpp (revision 4193)
+++ a/src/Main/MainGui.cpp (working copy)
@@ -149,10 +149,10 @@
diff --git a/src/Main/MainGui.cpp b/src/Main/MainGui.cpp
index 03407c5..b029384 100644
--- a/src/Main/MainGui.cpp
+++ b/src/Main/MainGui.cpp
@@ -190,15 +190,15 @@ int main( int argc, char ** argv )
// http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=559846
putenv("LANG=C");
putenv("LC_ALL=C");
- putenv("PYTHONPATH=");
+ //putenv("PYTHONPATH=");
#elif defined(FC_OS_MACOSX)
(void)QLocale::system();
putenv("LANG=C");
putenv("LC_ALL=C");
- putenv("PYTHONPATH=");
+ //putenv("PYTHONPATH=");
#else
setlocale(LC_NUMERIC, "C");

View file

@ -1,10 +0,0 @@
source $stdenv/setup
patchPhase=patchPhase
patchPhase() {
sed -e "s@-ljpeg6b@-ljpeg@" -i configure
}
genericBuild
ln -sv $KDEDIR/share/mimelnk $out/share

View file

@ -1,19 +1,24 @@
{stdenv, fetchurl, qt4, bison, flex, eigen, boost, mesa, glew, opencsg, cgal
{stdenv, fetchgit, qt4, bison, flex, eigen, boost, mesa, glew, opencsg, cgal
, mpfr, gmp
}:
stdenv.mkDerivation rec {
version = "2011.12";
version = "git-20121213";
name = "openscad-${version}";
src = fetchurl {
url = "https://github.com/downloads/openscad/openscad/${name}.src.tar.gz";
sha256 = "0gaqwzxbbzc21lhb4y26j8g0g28dhrwrgkndizp5ddab5axi4zjh";
# src = fetchurl {
# url = "https://github.com/downloads/openscad/openscad/${name}.src.tar.gz";
# sha256 = "0gaqwzxbbzc21lhb4y26j8g0g28dhrwrgkndizp5ddab5axi4zjh";
# };
src = fetchgit {
url = "https://github.com/openscad/openscad.git";
rev = "c0612a9ed0899c96963e04c848a59b0164a689a2";
sha256 = "1zqiwk1cjbj7sng9sdarbrs0zxkn9fsa84dyv8n0zlyh40s7kvw2";
};
buildInputs = [qt4 bison flex eigen boost mesa glew opencsg cgal gmp mpfr];
configurePhase = ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I ${eigen}/include/eigen2 "
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${eigen}/include/eigen*) "
qmake PREFIX="$out"
'';

View file

@ -1,83 +0,0 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,7 @@
cmake_minimum_required(VERSION 2.6)
+option (WITH_RAWZOR "Build with Rawzor support" ON)
+
add_subdirectory (rtexif)
add_subdirectory (rtengine)
add_subdirectory (rtgui)
--- a/rtengine/CMakeLists.txt
+++ b/rtengine/CMakeLists.txt
@@ -9,9 +9,13 @@
IF (WIN32)
SET (EXTRA_LIBDIR "${CMAKE_CURRENT_SOURCE_DIR}/../lib; ${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_win")
SET (EXTRA_INCDIR "${CMAKE_CURRENT_SOURCE_DIR}/../winclude; ${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_win")
- SET (EXTRA_LIB "ws2_32 ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libiptcdata.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libjpeg.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libpng.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libtiff.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libz.a ${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_win/rwz_sdk_s.a")
+ SET (EXTRA_LIB "ws2_32 ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libiptcdata.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libjpeg.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libpng.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libtiff.a ${CMAKE_CURRENT_SOURCE_DIR}/../lib/libz.a")
+ if (WITH_RAWZOR)
ADD_DEFINITIONS (-DRAWZOR_SUPPORT)
+ SET (EXTRA_LIB "${EXTRA_LIB} ${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_win/rwz_sdk_s.a")
+ endif (WITH_RAWZOR)
ELSE (WIN32)
+ if (WITH_RAWZOR)
IF (CMAKE_SIZEOF_VOID_P EQUAL 4)
SET (EXTRA_INCDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin32")
SET (EXTRA_LIBDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin32")
@@ -19,10 +23,11 @@
SET (EXTRA_INCDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin64")
SET (EXTRA_LIBDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin64")
ENDIF (CMAKE_SIZEOF_VOID_P EQUAL 4)
- pkg_check_modules (IPTCDATA REQUIRED libiptcdata)
- pkg_check_modules (LCMS REQUIRED lcms)
SET (EXTRA_LIB "-lrwz_sdk")
ADD_DEFINITIONS (-DRAWZOR_SUPPORT)
+ endif (WITH_RAWZOR)
+ pkg_check_modules (IPTCDATA REQUIRED libiptcdata)
+ pkg_check_modules (LCMS REQUIRED lcms)
ENDIF (WIN32)
include_directories (${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/../rtexif ${EXTRA_INCDIR} ${GTHREAD_INCLUDE_DIRS} ${GOBJECT_INCLUDE_DIRS} ${GLIB2_INCLUDE_DIRS} ${GLIBMM_INCLUDE_DIRS} ${IPTCDATA_INCLUDE_DIRS} ${LCMS_INCLUDE_DIRS})
--- a/rtengine/imagedata.cc
+++ b/rtengine/imagedata.cc
@@ -19,7 +19,9 @@
#include <imagedata.h>
#include <iptcpairs.h>
#include <glib/gstdio.h>
+#ifdef RAWZOR_SUPPORT
#include <rwz_sdk.h>
+#endif
using namespace rtengine;
--- a/rtengine/myfile.cc
+++ b/rtengine/myfile.cc
@@ -19,7 +19,9 @@
#include <myfile.h>
#include <cstdarg>
#include <glibmm.h>
+#ifdef RAWZOR_SUPPORT
#include <rwz_sdk.h>
+#endif
IMFILE* fopen (const char* fname) {
--- a/rtgui/CMakeLists.txt
+++ b/rtgui/CMakeLists.txt
@@ -75,6 +75,7 @@
if (NOT ZLIB_LIBRARIES)
message(SEND_ERROR "libz was not found!")
endif (NOT ZLIB_LIBRARIES)
+ if (WITH_RAWZOR)
IF (CMAKE_SIZEOF_VOID_P EQUAL 4)
SET (EXTRA_INCDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin32")
SET (EXTRA_LIBDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin32")
@@ -82,6 +83,7 @@
SET (EXTRA_INCDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin64")
SET (EXTRA_LIBDIR "${CMAKE_CURRENT_SOURCE_DIR}/../rawzor_lin64")
ENDIF (CMAKE_SIZEOF_VOID_P EQUAL 4)
+ endif (WITH_RAWZOR)
include_directories (/usr/local/lib ${CMAKE_CURRENT_SOURCE_DIR}/../rtengine . ${CMAKE_CURRENT_SOURCE_DIR}/../rtexif ${EXTRA_INCDIR} ${GLIB2_INCLUDE_DIRS} ${GLIBMM_INCLUDE_DIRS}
${GTK_INCLUDE_DIRS} ${GTKMM_INCLUDE_DIRS} ${GIO_INCLUDE_DIRS} ${GIOMM_INCLUDE_DIRS} ${IPTCDATA_INCLUDE_DIRS} ${LCMS_INCLUDE_DIRS} ${GTHREAD_INCLUDE_DIRS} ${GOBJECT_INCLUDE_DIRS} )

View file

@ -1,11 +0,0 @@
--- old/sink.c (revision 5118)
+++ new/sink.c (revision 5119)
@@ -262,7 +262,7 @@
const char *md1 = "MAILER-DAEMON", *md2 = "MAILER-DAEMON@";
/* don't bounce in reply to undeliverable bounces */
- if (!msg->return_path[0] ||
+ if (!msg || !msg->return_path[0] ||
strcmp(msg->return_path, "<>") == 0 ||
strcasecmp(msg->return_path, md1) == 0 ||
strncasecmp(msg->return_path, md2, strlen(md2)) == 0)

View file

@ -23,7 +23,7 @@ assert mercurialSupport -> (mercurial != null);
let
name = "ikiwiki";
version = "3.20120725";
version = "3.20121017";
lib = stdenv.lib;
in
@ -32,7 +32,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "http://ftp.de.debian.org/debian/pool/main/i/ikiwiki/${name}_${version}.tar.gz";
sha256 = "b600096a77b17e4a9e8a9552c4d36e01ed9217a0f8ff8a4f15110cf80e7adfad";
sha256 = "c0bb6ef9340ebc7eec40812b091700b2bcfd61e7321a22f41026ce130e877028";
};
buildInputs = [ perl TextMarkdown URI HTMLParser HTMLScrubber HTMLTemplate

View file

@ -1,10 +0,0 @@
--- krusader-2.0.0/krusader/VFS/kiojobwrapper.cpp~ 2009-04-29 17:13:43.000000000 +0000
+++ krusader-2.0.0/krusader/VFS/kiojobwrapper.cpp 2009-04-29 17:14:01.000000000 +0000
@@ -37,6 +37,7 @@
#include <kio/jobuidelegate.h>
#include <kio/job.h>
#include <qapplication.h>
+#include <cstdio>
#include <iostream>
#include <klocale.h>
#include "virtualcopyjob.h"

View file

@ -0,0 +1,38 @@
{ stdenv, fetchurl, qt4, muparser, which, boost}:
stdenv.mkDerivation {
name = "librecad-2.0.0beta1";
src = fetchurl {
url = https://github.com/LibreCAD/LibreCAD/tarball/2.0.0beta1;
name = "librecad-2.0.0beta1.tar.gz";
sha256 = "8bf969b79be115f3b3ff72cc030a4c21fe93164dd0cb19ddfb78a7d66b8bc770";
};
patchPhase = ''
sed -i -e s,/bin/bash,`type -P bash`, scripts/postprocess-unix.sh
sed -i -e s,/usr/share,$out/share, librecad/src/lib/engine/rs_system.cpp
'';
configurePhase = ''
qmake librecad.pro PREFIX=$out MUPARSER_DIR=${muparser} BOOST_DIR=${boost}
'';
installPhase = ''
ensureDir $out/bin $out/share
cp -R unix/librecad $out/bin
cp -R unix/resources $out/share/librecad
'';
buildInputs = [ qt4 muparser which boost ];
enableParallelBuilding = true;
meta = {
description = "A 2D CAD package based upon Qt";
homepage = http://librecad.org;
license = "GPLv2";
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
};
}

View file

@ -1,28 +1,34 @@
{ stdenv, fetchurl, qt4}:
{ stdenv, fetchurl, qt4, muparser, which}:
stdenv.mkDerivation {
name = "librecad-1.0.0";
name = "librecad-1.0.2";
src = fetchurl {
url = https://github.com/LibreCAD/LibreCAD/tarball/v1.0.0;
name = "librecad-1.0.0.tar.gz";
sha256 = "0s1ikyvy98zz1vw3xf5la73n3sykib6292cmhh2z738ggwigicc9";
url = https://github.com/LibreCAD/LibreCAD/tarball/v1.0.2;
name = "librecad-1.0.2.tar.gz";
sha256 = "13ee7e401e4f5fbc68c2e017b7189bec788038f4f6e77f559861ceb8cfb1907d";
};
patchPhase = ''
sed -i -e s,/bin/bash,`type -P bash`, scripts/postprocess-unix.sh
sed -i -e s,/usr/share,$out/share, src/lib/engine/rs_system.cpp
'';
configurePhase = "qmake PREFIX=$out";
# It builds, but it does not install
installPhase = "exit 1";
installPhase = ''
ensureDir $out/bin $out/share
cp -R unix/librecad $out/bin
cp -R unix/resources $out/share/librecad
'';
buildInputs = [ qt4 ];
buildInputs = [ qt4 muparser which ];
meta = {
description = "A 2D CAD package based upon Qt";
homepage = http://librecad.org;
license = "GPLv2";
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
};
}

View file

@ -1,55 +0,0 @@
# translations still misssing
{ stdenv, fetchurl, qt3, libpng, libXext, libX11 }:
stdenv.mkDerivation {
name = "qcad-2.0.5.0-1-community";
src = fetchurl {
url = http://www.ribbonsoft.com/archives/qcad/qcad-2.0.5.0-1-community.src.tar.gz;
sha256 = "07aiw7zjf1fc04dhgwwp29adwb2qs165n7v04lh09zy0k2aplcl3";
};
# TODO: add translations
buildPhase = ''
cd scripts
sh build_qcad.sh notrans
cd ..
'';
buildInputs = [ qt3 libpng libXext libX11 ];
prePatch = ''
sed -i 's/-pedantic//' mkspecs/defs.pro
# patch -p1 < ${ ./qcad-2.0.4.0-1.src-intptr.patch }
'';
patches = [
/* taken from gentoo, fixes amd64 compilation issue */
./qcad-2.0.4.0-1.src-intptr.patch
/* taken from gentoo, fixes gcc 4.3 or above compilation issue */
./qcad-2.0.4.0-gcc43.patch
];
# probably there is more to be done. But this seems to work for now (eg see gentoo ebuild)
installPhase = ''
mkdir -p $out/{bin,share}
cp -r qcad $out/share
# The compilation does not fail with error code. But qcad will not exist
# if it failed.
test -f $out/share/qcad/qcad
cat >> $out/bin/qcad << EOF
#!/bin/sh
cd $out/share/qcad
./qcad "\$@"
EOF
chmod +x $out/bin/qcad
'';
meta = {
description = "A 2D CAD package based upon Qt";
homepage = http://www.ribbonsoft.de/qcad.html;
license = "GPLv2"; # community edition
};
}

View file

@ -1,24 +0,0 @@
diff -Naur qcad-2.0.4.0-1.src.orig/qcadlib/src/engine/rs_entity.cpp qcad-2.0.4.0-1.src.patched/qcadlib/src/engine/rs_entity.cpp
--- qcad-2.0.4.0-1.src.orig/qcadlib/src/engine/rs_entity.cpp 2004-09-14 15:13:02.000000000 -0500
+++ qcad-2.0.4.0-1.src.patched/qcadlib/src/engine/rs_entity.cpp 2006-06-23 14:21:40.000000000 -0500
@@ -849,7 +849,7 @@
os << " layer: NULL ";
} else {
os << " layer: " << e.layer->getName().latin1() << " ";
- os << " layer address: " << (int)(e.layer) << " ";
+ os << " layer address: " << (intptr_t)(e.layer) << " ";
}
os << e.pen << "\n";
diff -Naur qcad-2.0.4.0-1.src.orig/qcadlib/src/engine/rs_layer.cpp qcad-2.0.4.0-1.src.patched/qcadlib/src/engine/rs_layer.cpp
--- qcad-2.0.4.0-1.src.orig/qcadlib/src/engine/rs_layer.cpp 2004-09-14 15:13:02.000000000 -0500
+++ qcad-2.0.4.0-1.src.patched/qcadlib/src/engine/rs_layer.cpp 2006-06-23 14:21:23.000000000 -0500
@@ -57,7 +57,7 @@
os << " name: " << l.getName().latin1()
<< " pen: " << l.getPen()
<< " frozen: " << (int)l.isFrozen()
- << " address: " << (int)(&l)
+ << " address: " << (intptr_t)(&l)
<< std::endl;
return os;
}

View file

@ -1,45 +0,0 @@
diff -Naur qcad-2.0.4.0-1.src/dxflib/src/dl_writer_ascii.cpp qcad-2.0.4.0-1.src.new/dxflib/src/dl_writer_ascii.cpp
--- qcad-2.0.4.0-1.src/dxflib/src/dl_writer_ascii.cpp 2004-09-14 16:13:01.000000000 -0400
+++ qcad-2.0.4.0-1.src.new/dxflib/src/dl_writer_ascii.cpp 2008-04-27 08:35:47.000000000 -0400
@@ -30,6 +30,7 @@
#endif // _MSC_VER > 1000
#include <stdio.h>
+#include <cstring>
#include "dl_writer_ascii.h"
#include "dl_exception.h"
diff -Naur qcad-2.0.4.0-1.src/dxflib/src/dl_writer.h qcad-2.0.4.0-1.src.new/dxflib/src/dl_writer.h
--- qcad-2.0.4.0-1.src/dxflib/src/dl_writer.h 2004-09-14 16:13:01.000000000 -0400
+++ qcad-2.0.4.0-1.src.new/dxflib/src/dl_writer.h 2008-04-27 08:35:48.000000000 -0400
@@ -34,6 +34,7 @@
#include <iostream>
+#include <cstring>
#include "dl_attributes.h"
diff -Naur qcad-2.0.4.0-1.src/qcadactions/src/rs_actionzoompan.cpp qcad-2.0.4.0-1.src.new/qcadactions/src/rs_actionzoompan.cpp
--- qcad-2.0.4.0-1.src/qcadactions/src/rs_actionzoompan.cpp 2004-09-14 16:13:03.000000000 -0400
+++ qcad-2.0.4.0-1.src.new/qcadactions/src/rs_actionzoompan.cpp 2008-04-27 08:35:48.000000000 -0400
@@ -28,6 +28,7 @@
#include "rs_snapper.h"
#include "rs_point.h"
+#include <cstdlib>
RS_ActionZoomPan::RS_ActionZoomPan(RS_EntityContainer& container,
RS_GraphicView& graphicView)
diff -Naur qcad-2.0.4.0-1.src/qcadlib/src/information/rs_information.h qcad-2.0.4.0-1.src.new/qcadlib/src/information/rs_information.h
--- qcad-2.0.4.0-1.src/qcadlib/src/information/rs_information.h 2004-09-14 16:13:02.000000000 -0400
+++ qcad-2.0.4.0-1.src.new/qcadlib/src/information/rs_information.h 2008-04-27 08:35:48.000000000 -0400
@@ -31,7 +31,7 @@
#include "rs_line.h"
#include "rs_arc.h"
-
+#include <cstdlib>
/**
* Class for getting information about entities. This includes

View file

@ -23,7 +23,7 @@ stdenv.mkDerivation (rec {
preConfigure =
''
configureFlags="${if perlSupport then "--enable-perl" else "--disable-perl"}";
configureFlags="--with-terminfo=$out/share/terminfo ${if perlSupport then "--enable-perl" else "--disable-perl"}";
export TERMINFO=$out/share/terminfo # without this the terminfo won't be compiled by tic, see man tic
NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${freetype}/include/freetype2"
NIX_LDFLAGS="$NIX_LDFLAGS -lfontconfig -lXrender "
@ -36,10 +36,6 @@ stdenv.mkDerivation (rec {
meta = {
description = "A clone of the well-known terminal emulator rxvt";
longDescription = "
You should put this into your ~/.bashrc:
export TERMINFO=~/.nix-profile/share/terminfo
";
homepage = "http://software.schmorp.de/pkg/rxvt-unicode.html";
};
})

View file

@ -4,8 +4,8 @@ stdenv.mkDerivation rec {
name = "st-0.3";
src = fetchurl {
url = http://hg.suckless.org/st/archive/0.3.tar.gz;
sha256 = "12ypldjjpsq3nvhszgjsk4wgqkwcvz06qiqw8k5npv3rd1nbx9cl";
url = "http://dl.suckless.org/st/${name}.tar.gz";
sha256 = "0d0fjixiis4ixbz4l18rqhnssa7cy2bap3jkjyphqlqhl7lahv3d";
};
buildInputs = [ libX11 ncurses libXext libXft ];

View file

@ -4,8 +4,8 @@
cabal.mkDerivation (self: {
pname = "xmobar";
version = "0.15";
sha256 = "1wa141bf3krzr8qcd9cyix3cflbw1yr1l3299ashjs7skqnjadcl";
version = "0.16";
sha256 = "1dx4kwygzp4c5j4jj4lsfgjfvhh863v68s106lmwc86a30h60p8i";
isLibrary = false;
isExecutable = true;
buildDepends = [
@ -13,9 +13,6 @@ cabal.mkDerivation (self: {
];
extraLibraries = [ libXrandr wirelesstools ];
configureFlags = "-fwith_xft -fwith_iwlib";
patchPhase = ''
sed -i -e 's|mtl ==.*$|mtl,|' xmobar.cabal
'';
meta = {
homepage = "http://projects.haskell.org/xmobar/";
description = "A Minimalistic Text Based Status Bar";

View file

@ -1,471 +0,0 @@
diff -cr xpdf-3.01.orig/goo/gmem.c xpdf-3.01/goo/gmem.c
*** xpdf-3.01.orig/goo/gmem.c Tue Aug 16 22:34:30 2005
--- xpdf-3.01/goo/gmem.c Tue Jan 17 17:03:57 2006
***************
*** 11,16 ****
--- 11,17 ----
#include <stdlib.h>
#include <stddef.h>
#include <string.h>
+ #include <limits.h>
#include "gmem.h"
#ifdef DEBUG_MEM
***************
*** 63,69 ****
int lst;
unsigned long *trl, *p;
! if (size == 0)
return NULL;
size1 = gMemDataSize(size);
if (!(mem = (char *)malloc(size1 + gMemHdrSize + gMemTrlSize))) {
--- 64,70 ----
int lst;
unsigned long *trl, *p;
! if (size <= 0)
return NULL;
size1 = gMemDataSize(size);
if (!(mem = (char *)malloc(size1 + gMemHdrSize + gMemTrlSize))) {
***************
*** 86,92 ****
#else
void *p;
! if (size == 0)
return NULL;
if (!(p = malloc(size))) {
fprintf(stderr, "Out of memory\n");
--- 87,93 ----
#else
void *p;
! if (size <= 0)
return NULL;
if (!(p = malloc(size))) {
fprintf(stderr, "Out of memory\n");
***************
*** 102,108 ****
void *q;
int oldSize;
! if (size == 0) {
if (p)
gfree(p);
return NULL;
--- 103,109 ----
void *q;
int oldSize;
! if (size <= 0) {
if (p)
gfree(p);
return NULL;
***************
*** 120,126 ****
#else
void *q;
! if (size == 0) {
if (p)
free(p);
return NULL;
--- 121,127 ----
#else
void *q;
! if (size <= 0) {
if (p)
free(p);
return NULL;
***************
*** 140,147 ****
void *gmallocn(int nObjs, int objSize) {
int n;
n = nObjs * objSize;
! if (objSize == 0 || n / objSize != nObjs) {
fprintf(stderr, "Bogus memory allocation size\n");
exit(1);
}
--- 141,151 ----
void *gmallocn(int nObjs, int objSize) {
int n;
+ if (nObjs == 0) {
+ return NULL;
+ }
n = nObjs * objSize;
! if (objSize <= 0 || nObjs < 0 || nObjs >= INT_MAX / objSize) {
fprintf(stderr, "Bogus memory allocation size\n");
exit(1);
}
***************
*** 151,158 ****
void *greallocn(void *p, int nObjs, int objSize) {
int n;
n = nObjs * objSize;
! if (objSize == 0 || n / objSize != nObjs) {
fprintf(stderr, "Bogus memory allocation size\n");
exit(1);
}
--- 155,168 ----
void *greallocn(void *p, int nObjs, int objSize) {
int n;
+ if (nObjs == 0) {
+ if (p) {
+ gfree(p);
+ }
+ return NULL;
+ }
n = nObjs * objSize;
! if (objSize <= 0 || nObjs < 0 || nObjs >= INT_MAX / objSize) {
fprintf(stderr, "Bogus memory allocation size\n");
exit(1);
}
diff -cr xpdf-3.01.orig/xpdf/JBIG2Stream.cc xpdf-3.01/xpdf/JBIG2Stream.cc
*** xpdf-3.01.orig/xpdf/JBIG2Stream.cc Tue Aug 16 22:34:31 2005
--- xpdf-3.01/xpdf/JBIG2Stream.cc Tue Jan 17 17:29:46 2006
***************
*** 13,18 ****
--- 13,19 ----
#endif
#include <stdlib.h>
+ #include <limits.h>
#include "GList.h"
#include "Error.h"
#include "JArithmeticDecoder.h"
***************
*** 681,686 ****
--- 682,691 ----
w = wA;
h = hA;
line = (wA + 7) >> 3;
+ if (w <= 0 || h <= 0 || line <= 0 || h >= (INT_MAX - 1) / line) {
+ data = NULL;
+ return;
+ }
// need to allocate one extra guard byte for use in combine()
data = (Guchar *)gmalloc(h * line + 1);
data[h * line] = 0;
***************
*** 692,697 ****
--- 697,706 ----
w = bitmap->w;
h = bitmap->h;
line = bitmap->line;
+ if (w <= 0 || h <= 0 || line <= 0 || h >= (INT_MAX - 1) / line) {
+ data = NULL;
+ return;
+ }
// need to allocate one extra guard byte for use in combine()
data = (Guchar *)gmalloc(h * line + 1);
memcpy(data, bitmap->data, h * line);
***************
*** 720,726 ****
}
void JBIG2Bitmap::expand(int newH, Guint pixel) {
! if (newH <= h) {
return;
}
// need to allocate one extra guard byte for use in combine()
--- 729,735 ----
}
void JBIG2Bitmap::expand(int newH, Guint pixel) {
! if (newH <= h || line <= 0 || newH >= (INT_MAX - 1) / line) {
return;
}
// need to allocate one extra guard byte for use in combine()
***************
*** 2294,2299 ****
--- 2303,2316 ----
!readUWord(&stepX) || !readUWord(&stepY)) {
goto eofError;
}
+ if (w == 0 || h == 0 || w >= INT_MAX / h) {
+ error(getPos(), "Bad bitmap size in JBIG2 halftone segment");
+ return;
+ }
+ if (gridH == 0 || gridW >= INT_MAX / gridH) {
+ error(getPos(), "Bad grid size in JBIG2 halftone segment");
+ return;
+ }
// get pattern dictionary
if (nRefSegs != 1) {
diff -cr xpdf-3.01.orig/xpdf/JPXStream.cc xpdf-3.01/xpdf/JPXStream.cc
*** xpdf-3.01.orig/xpdf/JPXStream.cc Tue Aug 16 22:34:31 2005
--- xpdf-3.01/xpdf/JPXStream.cc Tue Jan 17 17:14:06 2006
***************
*** 12,17 ****
--- 12,18 ----
#pragma implementation
#endif
+ #include <limits.h>
#include "gmem.h"
#include "Error.h"
#include "JArithmeticDecoder.h"
***************
*** 818,823 ****
--- 819,830 ----
/ img.xTileSize;
img.nYTiles = (img.ySize - img.yTileOffset + img.yTileSize - 1)
/ img.yTileSize;
+ // check for overflow before allocating memory
+ if (img.nXTiles <= 0 || img.nYTiles <= 0 ||
+ img.nXTiles >= INT_MAX / img.nYTiles) {
+ error(getPos(), "Bad tile count in JPX SIZ marker segment");
+ return gFalse;
+ }
img.tiles = (JPXTile *)gmallocn(img.nXTiles * img.nYTiles,
sizeof(JPXTile));
for (i = 0; i < img.nXTiles * img.nYTiles; ++i) {
diff -cr xpdf-3.01.orig/xpdf/Stream.cc xpdf-3.01/xpdf/Stream.cc
*** xpdf-3.01.orig/xpdf/Stream.cc Tue Aug 16 22:34:31 2005
--- xpdf-3.01/xpdf/Stream.cc Tue Jan 17 17:31:52 2006
***************
*** 15,20 ****
--- 15,21 ----
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
+ #include <limits.h>
#ifndef WIN32
#include <unistd.h>
#endif
***************
*** 406,418 ****
--- 407,432 ----
width = widthA;
nComps = nCompsA;
nBits = nBitsA;
+ predLine = NULL;
+ ok = gFalse;
nVals = width * nComps;
+ if (width <= 0 || nComps <= 0 || nBits <= 0 ||
+ nComps >= INT_MAX / nBits ||
+ width >= INT_MAX / nComps / nBits ||
+ nVals * nBits + 7 < 0) {
+ return;
+ }
pixBytes = (nComps * nBits + 7) >> 3;
rowBytes = ((nVals * nBits + 7) >> 3) + pixBytes;
+ if (rowBytes <= 0) {
+ return;
+ }
predLine = (Guchar *)gmalloc(rowBytes);
memset(predLine, 0, rowBytes);
predIdx = rowBytes;
+
+ ok = gTrue;
}
StreamPredictor::~StreamPredictor() {
***************
*** 1004,1009 ****
--- 1018,1027 ----
FilterStream(strA) {
if (predictor != 1) {
pred = new StreamPredictor(this, predictor, columns, colors, bits);
+ if (!pred->isOk()) {
+ delete pred;
+ pred = NULL;
+ }
} else {
pred = NULL;
}
***************
*** 1259,1264 ****
--- 1277,1285 ----
if (columns < 1) {
columns = 1;
}
+ if (columns + 4 <= 0) {
+ columns = INT_MAX - 4;
+ }
rows = rowsA;
endOfBlock = endOfBlockA;
black = blackA;
***************
*** 2899,2904 ****
--- 2920,2930 ----
height = read16();
width = read16();
numComps = str->getChar();
+ if (numComps <= 0 || numComps > 4) {
+ error(getPos(), "Bad number of components in DCT stream");
+ numComps = 0;
+ return gFalse;
+ }
if (prec != 8) {
error(getPos(), "Bad DCT precision %d", prec);
return gFalse;
***************
*** 2925,2930 ****
--- 2951,2961 ----
height = read16();
width = read16();
numComps = str->getChar();
+ if (numComps <= 0 || numComps > 4) {
+ error(getPos(), "Bad number of components in DCT stream");
+ numComps = 0;
+ return gFalse;
+ }
if (prec != 8) {
error(getPos(), "Bad DCT precision %d", prec);
return gFalse;
***************
*** 2947,2952 ****
--- 2978,2988 ----
length = read16() - 2;
scanInfo.numComps = str->getChar();
+ if (scanInfo.numComps <= 0 || scanInfo.numComps > 4) {
+ error(getPos(), "Bad number of components in DCT stream");
+ scanInfo.numComps = 0;
+ return gFalse;
+ }
--length;
if (length != 2 * scanInfo.numComps + 3) {
error(getPos(), "Bad DCT scan info block");
***************
*** 3041,3046 ****
--- 3077,3083 ----
numACHuffTables = index+1;
tbl = &acHuffTables[index];
} else {
+ index &= 0x0f;
if (index >= numDCHuffTables)
numDCHuffTables = index+1;
tbl = &dcHuffTables[index];
***************
*** 3827,3832 ****
--- 3864,3873 ----
FilterStream(strA) {
if (predictor != 1) {
pred = new StreamPredictor(this, predictor, columns, colors, bits);
+ if (!pred->isOk()) {
+ delete pred;
+ pred = NULL;
+ }
} else {
pred = NULL;
}
diff -cr xpdf-3.01.orig/xpdf/Stream.h xpdf-3.01/xpdf/Stream.h
*** xpdf-3.01.orig/xpdf/Stream.h Tue Aug 16 22:34:31 2005
--- xpdf-3.01/xpdf/Stream.h Tue Jan 17 17:19:54 2006
***************
*** 232,237 ****
--- 232,239 ----
~StreamPredictor();
+ GBool isOk() { return ok; }
+
int lookChar();
int getChar();
***************
*** 249,254 ****
--- 251,257 ----
int rowBytes; // bytes per line
Guchar *predLine; // line buffer
int predIdx; // current index in predLine
+ GBool ok;
};
//------------------------------------------------------------------------
***************
*** 527,533 ****
short getWhiteCode();
short getBlackCode();
short lookBits(int n);
! void eatBits(int n) { inputBits -= n; }
};
//------------------------------------------------------------------------
--- 530,536 ----
short getWhiteCode();
short getBlackCode();
short lookBits(int n);
! void eatBits(int n) { if ((inputBits -= n) < 0) inputBits = 0; }
};
//------------------------------------------------------------------------
diff -cr xpdf-3.01.orig/splash/SplashXPathScanner.cc xpdf-3.01/splash/SplashXPathScanner.cc
*** xpdf-3.01.orig/splash/SplashXPathScanner.cc Tue Aug 16 22:34:31 2005
--- xpdf-3.01/splash/SplashXPathScanner.cc Wed Feb 1 17:01:14 2006
***************
*** 186,192 ****
}
void SplashXPathScanner::computeIntersections(int y) {
! SplashCoord ySegMin, ySegMax, xx0, xx1;
SplashXPathSeg *seg;
int i, j;
--- 186,192 ----
}
void SplashXPathScanner::computeIntersections(int y) {
! SplashCoord xSegMin, xSegMax, ySegMin, ySegMax, xx0, xx1;
SplashXPathSeg *seg;
int i, j;
***************
*** 236,254 ****
} else if (seg->flags & splashXPathVert) {
xx0 = xx1 = seg->x0;
} else {
! if (ySegMin <= y) {
! // intersection with top edge
! xx0 = seg->x0 + ((SplashCoord)y - seg->y0) * seg->dxdy;
} else {
! // x coord of segment endpoint with min y coord
! xx0 = (seg->flags & splashXPathFlip) ? seg->x1 : seg->x0;
}
! if (ySegMax >= y + 1) {
! // intersection with bottom edge
! xx1 = seg->x0 + ((SplashCoord)y + 1 - seg->y0) * seg->dxdy;
! } else {
! // x coord of segment endpoint with max y coord
! xx1 = (seg->flags & splashXPathFlip) ? seg->x0 : seg->x1;
}
}
if (xx0 < xx1) {
--- 236,262 ----
} else if (seg->flags & splashXPathVert) {
xx0 = xx1 = seg->x0;
} else {
! if (seg->x0 < seg->x1) {
! xSegMin = seg->x0;
! xSegMax = seg->x1;
} else {
! xSegMin = seg->x1;
! xSegMax = seg->x0;
}
! // intersection with top edge
! xx0 = seg->x0 + ((SplashCoord)y - seg->y0) * seg->dxdy;
! // intersection with bottom edge
! xx1 = seg->x0 + ((SplashCoord)y + 1 - seg->y0) * seg->dxdy;
! // the segment may not actually extend to the top and/or bottom edges
! if (xx0 < xSegMin) {
! xx0 = xSegMin;
! } else if (xx0 > xSegMax) {
! xx0 = xSegMax;
! }
! if (xx1 < xSegMin) {
! xx1 = xSegMin;
! } else if (xx1 > xSegMax) {
! xx1 = xSegMax;
}
}
if (xx0 < xx1) {

View file

@ -1,4 +1,4 @@
{ stdenv, config, fetchurl, makeWrapper, which
{ stdenv, fetchurl, makeWrapper, which
# default dependencies
, bzip2, flac, speex
@ -15,32 +15,24 @@
, libXScrnSaver, libXcursor, mesa
# optional dependencies
, libgnome_keyring # config.gnomeKeyring
, gconf # config.gnome
, libgcrypt # config.gnome || config.cups
, nss, openssl # config.openssl
, pulseaudio # config.pulseaudio
, libselinux # config.selinux
, libgcrypt ? null # gnomeSupport || cupsSupport
# package customization
, channel ? "stable"
, enableSELinux ? false, libselinux ? null
, enableNaCl ? false
, useOpenSSL ? false, nss ? null, openssl ? null
, gnomeSupport ? false, gconf ? null
, gnomeKeyringSupport ? false, libgnome_keyring ? null
, proprietaryCodecs ? true
, cupsSupport ? false
, pulseSupport ? false, pulseaudio ? null
}:
with stdenv.lib;
let
mkConfigurable = mapAttrs (flag: default: attrByPath ["chromium" flag] default config);
cfg = mkConfigurable {
channel = "stable";
selinux = false;
nacl = false;
openssl = false;
gnome = false;
gnomeKeyring = false;
proprietaryCodecs = true;
cups = false;
pulseaudio = config.pulseaudio or true;
};
sourceInfo = builtins.getAttr cfg.channel (import ./sources.nix);
sourceInfo = builtins.getAttr channel (import ./sources.nix);
mkGypFlags =
let
@ -62,7 +54,7 @@ let
use_system_libusb = true;
use_system_libxml = true;
use_system_speex = true;
use_system_ssl = cfg.openssl;
use_system_ssl = useOpenSSL;
use_system_stlport = true;
use_system_xdg_utils = true;
use_system_yasm = true;
@ -87,7 +79,7 @@ let
post23 = !versionOlder sourceInfo.version "24.0.0.0";
post24 = !versionOlder sourceInfo.version "25.0.0.0";
maybeFixPulseAudioBuild = optional (post23 && cfg.pulseaudio) (fetchurl {
maybeFixPulseAudioBuild = optional (post23 && pulseSupport) (fetchurl {
url = http://archrepo.jeago.com/sources/chromium-dev/pulse_audio_fix.patch;
sha256 = "1w91mirrkqigdhsj892mqxlc0nlv1dsp5shc46w9xf8nl96jxgfb";
});
@ -107,28 +99,28 @@ in stdenv.mkDerivation rec {
which makeWrapper
python perl pkgconfig
nspr udev
(if cfg.openssl then openssl else nss)
(if useOpenSSL then openssl else nss)
utillinux alsaLib
gcc bison gperf
krb5
glib gtk dbus_glib
libXScrnSaver libXcursor mesa
] ++ optional cfg.gnomeKeyring libgnome_keyring
++ optionals cfg.gnome [ gconf libgcrypt ]
++ optional cfg.selinux libselinux
++ optional cfg.cups libgcrypt
++ optional cfg.pulseaudio pulseaudio
] ++ optional gnomeKeyringSupport libgnome_keyring
++ optionals gnomeSupport [ gconf libgcrypt ]
++ optional enableSELinux libselinux
++ optional cupsSupport libgcrypt
++ optional pulseSupport pulseaudio
++ optional post24 pciutils;
opensslPatches = optional cfg.openssl openssl.patches;
opensslPatches = optional useOpenSSL openssl.patches;
prePatch = "patchShebangs .";
patches = optional cfg.cups ./cups_allow_deprecated.patch
++ optional cfg.pulseaudio ./pulseaudio_array_bounds.patch
patches = optional cupsSupport ./cups_allow_deprecated.patch
++ optional pulseSupport ./pulseaudio_array_bounds.patch
++ maybeFixPulseAudioBuild;
postPatch = optionalString cfg.openssl ''
postPatch = optionalString useOpenSSL ''
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
'';
@ -136,15 +128,15 @@ in stdenv.mkDerivation rec {
linux_use_gold_binary = false;
linux_use_gold_flags = false;
proprietary_codecs = false;
use_gnome_keyring = cfg.gnomeKeyring;
use_gconf = cfg.gnome;
use_gio = cfg.gnome;
use_pulseaudio = cfg.pulseaudio;
disable_nacl = !cfg.nacl;
use_openssl = cfg.openssl;
selinux = cfg.selinux;
use_cups = cfg.cups;
} // optionalAttrs cfg.proprietaryCodecs {
use_gnome_keyring = gnomeKeyringSupport;
use_gconf = gnomeSupport;
use_gio = gnomeSupport;
use_pulseaudio = pulseSupport;
disable_nacl = !enableNaCl;
use_openssl = useOpenSSL;
selinux = enableSELinux;
use_cups = cupsSupport;
} // optionalAttrs proprietaryCodecs {
# enable support for the H.264 codec
proprietary_codecs = true;
ffmpeg_branding = "Chrome";

View file

@ -6,13 +6,13 @@
sha256 = "1i7ga1qhnjvnw2gynmpmsvvl5pxcb5z9sgldp87d9yalim5sra6s";
};
beta = {
version = "24.0.1312.14";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-24.0.1312.14.tar.bz2";
sha256 = "03w8cg4kqmpj82976ax9x6y275y9gcri4vc11cvfjp6r1issxzk8";
version = "24.0.1312.35";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-24.0.1312.35.tar.bz2";
sha256 = "0mb6xz5lrnzjk1zqr83jyprsxv20svy3a7lyxv9iwdb2bh1i13ci";
};
stable = {
version = "23.0.1271.64";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-23.0.1271.64.tar.bz2";
sha256 = "1rzz08sgw07nkmvhhgyrkrcxj3z24lxbx0di6ky6jz3lshibp578";
version = "23.0.1271.97";
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-23.0.1271.97.tar.bz2";
sha256 = "1qf21n6msj1jmxhnlw8fapsz7q6dd851rxdqv4334v06ny4i5fip";
};
}

View file

@ -1,185 +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 = "16.0.2";
xulVersion = "16.0.2"; # 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 = "0ffe96896583e92561b341330ab09ddc50140dd1";
};
commonConfigureFlags =
[ "--enable-optimize"
#"--enable-profiling"
"--disable-debug"
"--enable-strip"
"--with-system-jpeg"
"--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" # disabled for the moment because our Cairo is too old
"--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\n"'"$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"
"--disable-elf-hack"
]
++ 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
for j in $out/bin/*; do
i="$(readlink "$j")";
file $i;
if file $i | grep executable &>/dev/null; then
rm "$out/bin/$(basename "$i")"
echo -e '#! /bin/sh\nexec "'"$i"'" "$@"' > "$out/bin/$(basename "$i")"
chmod a+x "$out/bin/$(basename "$i")"
fi;
done;
cd "$out/lib/"firefox-*
rm firefox
echo -e '#!${stdenv.shell}\n${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;
};
};
}

View file

@ -15,9 +15,9 @@ assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
rec {
firefoxVersion = "17.0";
firefoxVersion = "17.0.1";
xulVersion = "17.0"; # this attribute is used by other packages
xulVersion = "17.0.1"; # this attribute is used by other packages
src = fetchurl {
@ -27,7 +27,7 @@ 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 = "4f5f175c1662d67f70e78403607d8eda600efd8b";
sha1 = "15c09796a388f0a78996427b7bc2c80f4e0496f3";
};
commonConfigureFlags =

View file

@ -43,9 +43,9 @@ let
throw "no x86_64 debugging version available"
else rec {
# -> http://labs.adobe.com/downloads/flashplayer10.html
version = "11.2.202.238";
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
sha256 = "07d09xjnn2hm877psmv9a6c4cfighxw24p0apq2ykawnrjpjc6zn";
version = "11.2.202.251";
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux_x86_64.tar.gz";
sha256 = "0nkwpqp8ilv21rlmr4jv8abdnfmz292y3w1qlx6r67qf926nfrz2";
}
else if stdenv.system == "i686-linux" then
if debug then {
@ -54,9 +54,9 @@ let
url = http://fpdownload.macromedia.com/pub/flashplayer/updaters/11/flashplayer_11_plugin_debug.i386.tar.gz;
sha256 = "1z3649lv9sh7jnwl8d90a293nkaswagj2ynhsr4xmwiy7c0jz2lk";
} else rec {
version = "11.2.202.238";
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
sha256 = "0p05pr4vmc4536axjyljhxhqizq4ihslar8g638dj24251byp7ca";
version = "11.2.202.251";
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux_i386.tar.gz";
sha256 = "0nph42s1bspf88m1qqrvc93kkxkrvq3lfs5iq4l5dflwzs32jdm3";
}
else throw "Flash Player is not supported on this platform";

View file

@ -1,6 +1,6 @@
args: with args;
stdenv.mkDerivation {
name = "libnsbmp-0.0.1";
name = "libnsgif-0.0.1";
src = fetchurl {
url = http://www.netsurf-browser.org/projects/releases/libnsgif-0.0.1-src.tar.gz;

View file

@ -13,18 +13,18 @@ let
in
stdenv.mkDerivation rec {
name = "opera-12.11-1661";
name = "opera-12.12-1707";
src =
if stdenv.system == "i686-linux" then
fetchurl {
url = "${mirror}/linux/1211/${name}.i386.linux.tar.xz";
sha256 = "0ax2kcnl0hb7fz56c9gcjia3dnwabxl2mq2hvszmbky4i399jlkk";
url = "${mirror}/linux/1212/${name}.i386.linux.tar.xz";
sha256 = "1jkrhxjxa5kz4bhyma0zlnsszdn84sq4pks3x8bfcayn12m6yxkz";
}
else if stdenv.system == "x86_64-linux" then
fetchurl {
url = "${mirror}/linux/1211/${name}.x86_64.linux.tar.xz";
sha256 = "1pnad4kdasrmm27kg6frldipyzcfy1y610rasbqic9frzb9q8dbp";
url = "${mirror}/linux/1212/${name}.x86_64.linux.tar.xz";
sha256 = "0acizxgyqblcvl91dwmvi937fi1kw6whz5qgxyl1fkygbayji90v";
}
else throw "Opera is not supported on ${stdenv.system} (only i686-linux and x86_64 linux are supported)";
@ -73,6 +73,10 @@ stdenv.mkDerivation rec {
postFixup = ''
oldRPATH=`patchelf --print-rpath $out/lib/opera/opera`
patchelf --set-rpath $oldRPATH:${cups}/lib $out/lib/opera/opera
# This file should normally require a gtk-update-icon-cache -q /usr/share/icons/hicolor command
# It have no reasons to exist in a redistribuable package
rm $out/share/icons/hicolor/icon-theme.cache
'';
meta = {

View file

@ -5,11 +5,11 @@
assert stdenv.system == "i686-linux";
stdenv.mkDerivation rec {
name = "skype-4.0.0.8";
name = "skype-4.1.0.20";
src = fetchurl {
url = "http://download.skype.com/linux/${name}.tar.bz2";
sha256 = "0gq24rbmjd05ihraarn45rwr79gidnwgllvprzrh5zqx02xll17p";
sha256 = "1qhcxkfmlpblpy9rqimzdl79rm781swbldkzi6nyw56bbp6lf7n3";
};
buildInputs =

View file

@ -1,13 +0,0 @@
[
{name="ktp-accounts-kcm";key="accounts_kcm";sha256="1lkqiwibxabg5p3k8l0zyzjyysi56dvbbcxp1sybd81hmxf6fzxh";}
{name="ktp-approver";key="approver";sha256="0bw3i8av55n93ac6phvar03b6rz34wbqrzx7l2vd48d0y5ib0j6m";}
{name="ktp-auth-handler";key="auth_handler";sha256="0kby9935df474b7jvzzg7v3zvrgml5caf96ps4dcrcvyz91ckd1y";}
{name="ktp-common-internals";key="common_internals";sha256="1g22b0g9g14dsdl0qkdglgkf26c3pjc96q19kj2kai1i644i8k5h";}
{name="ktp-contact-applet";key="contact_applet";sha256="0iwr202snsm72xjxv1jb9z24j8ikdx6ljaz5v9i0ha8f8rb1vrp5";}
{name="ktp-contact-list";key="contact_list";sha256="06y1cw2kkn6ig5qnmzl7bdz9nghpv2c83c9vf9glgbxf77qfg3ms";}
{name="ktp-filetransfer-handler";key="filetransfer_handler";sha256="1cdnl4sn34lmm7h7qv8rrkp7ia5gcg2704fqhvpv8n8gxwwhrc1a";}
{name="ktp-kded-integration-module";key="kded_integration_module";sha256="1ccihqk0pg28v2q6p9dx37ql7hnwdz2060jf1s6p9yyd27fc4is0";}
{name="ktp-presence-applet";key="presence_applet";sha256="0zgl8z81kmy2a03kzgvvqlr244cw9gw2kfrph1d6ax8zk4fqvxnz";}
{name="ktp-send-file";key="send_file";sha256="1d1j0klp8dvmldn5c19zqfsxcm5hbaq5fxikpjg0q3j9ib8yh9la";}
{name="ktp-text-ui";key="text_ui";sha256="0qikjh8ywlnwkfr4nd4hc9b15b824simhdj3n62yd87pmkk3avw6";}
]

View file

@ -22,7 +22,7 @@ stdenv.mkDerivation {
sha1 = "ccc5f2e155364948945abf6fd27bebeb4d797aa8";
};
enableParallelBuilding = true;
enableParallelBuilding = false;
buildInputs =
[ pkgconfig perl python zip unzip bzip2 gtk dbus_glib alsaLib libIDL nspr

View file

@ -10,16 +10,22 @@
, libXdamage
, libXext
, alsaLib
, ffmpeg
, libxkbfile
#, xmlto, docbook_xml_dtd_412, docbook_xml_xslt
, libXinerama
, libXv
, pulseaudioSupport ? true, pulseaudio
}:
assert printerSupport -> cups != null;
stdenv.mkDerivation rec {
name = "freerdp-${version}";
version = "1.0.0";
version = "1.0.1";
src = fetchurl {
url = "https://github.com/downloads/FreeRDP/FreeRDP/FreeRDP-${version}.tar.gz";
sha256 = "df9f5f3275436f3e413824ca40f1e41733a95121f45e1ed41ab410701c5764cc";
url = "https://github.com/FreeRDP/FreeRDP/archive/${version}.tar.gz";
sha256 = "1my8gamvfrn6v9gcqxsa9cgxr42shc0l826zvxj8wpcay6gd321w";
};
buildInputs = [
@ -32,11 +38,17 @@ stdenv.mkDerivation rec {
libXdamage
libXext
alsaLib
ffmpeg
libxkbfile
# xmlto docbook_xml_dtd_412 docbook_xml_xslt
libXinerama
libXv
] ++ stdenv.lib.optional printerSupport cups;
configureFlags = [
"--with-x"
] ++ stdenv.lib.optional printerSupport "--with-printer=cups";
"--with-x" "-DWITH_MANPAGES=OFF"
] ++ stdenv.lib.optional printerSupport "--with-printer=cups"
++ stdenv.lib.optional pulseaudioSupport "-DWITH_PULSEAUDIO=ON";
meta = {
description = "A Remote Desktop Protocol Client";

View file

@ -1,53 +1,63 @@
{ stdenv
, fetchgit
, cmake
, openssl
, printerSupport ? true, cups
, pkgconfig
, zlib
, libX11
, libXcursor
, alsaLib
, cmake
, libxkbfile
, libXinerama
, libXdamage
, libXext
, directfb
, cunit
, alsaLib
, ffmpeg
, libxkbfile
#, xmlto, docbook_xml_dtd_412, docbook_xml_xslt
, libXinerama
#, directfb
#, cunit
, libXv
, pulseaudioSupport ? true, pulseaudio
}:
assert printerSupport -> cups != null;
let rev = "498b88a1da748a4a2b4dbd12c795ca87fee24bab"; in
let rev = "ec6effcb1e7759551cf31f5b18d768afc67db97d"; in
stdenv.mkDerivation rec {
name = "freerdp-1.0pre${rev}";
name = "freerdp-1.1pre${rev}";
src = fetchgit {
url = git://github.com/FreeRDP/FreeRDP.git;
inherit rev;
sha256 = "91ef562e96db483ada28236e524326a75b6942becce4fd2a65ace386186eccf7";
sha256 = "4e5af9a6769c4b34c6b75dffe83a385d1d86068c523ea9f62fabc651a2958455";
};
buildInputs = [
cmake
openssl
pkgconfig
zlib
libX11
libXcursor
libxkbfile
libXinerama
libXdamage
libXext
directfb
# directfb
# cunit
alsaLib
cmake
cunit
ffmpeg
libxkbfile
# xmlto docbook_xml_dtd_412 docbook_xml_xslt
libXinerama
libXv
] ++ stdenv.lib.optional printerSupport cups;
doCheck = false;
checkPhase = ''LD_LIBRARY_PATH="libfreerdp-cache:libfreerdp-chanman:libfreerdp-common:libfreerdp-core:libfreerdp-gdi:libfreerdp-kbd:libfreerdp-rail:libfreerdp-rfx:libfreerdp-utils" cunit/test_freerdp'';
cmakeFlags = [ "-DWITH_DIRECTFB=ON" "-DWITH_CUNIT=ON" ];
cmakeFlags = [ "-DWITH_DIRECTFB=OFF" "-DWITH_CUNIT=OFF" "-DWITH_MANPAGES=OFF"
] ++ stdenv.lib.optional pulseaudioSupport "-DWITH_PULSEAUDIO=ON";
meta = {
description = "A Remote Desktop Protocol Client";

View file

@ -10,6 +10,18 @@ stdenv.mkDerivation {
sha256 = "059sd2apxdmcacc4pll880i7vm18h0kyjsq299m1mz3c7ak8k46r";
};
prePatch = ''
sed -i -e '/#include <glib\/gerror.h>/d' src/af/util/xp/ut_go_file.h
sed -i -e 's|#include <glib/gmacros.h>|#include <glib.h>|' \
goffice-bits/goffice/app/goffice-app.h
sed -i -e 's/ptr->jmpbuf/jmpbuf(png_ptr)/' src/af/util/xp/ut_png.cpp
sed -i -e 's/\(m_pPNG\)->\(jmpbuf\)/png_\2(\1)/' \
src/wp/impexp/gtk/ie_impGraphic_GdkPixbuf.cpp
sed -i -e 's/--no-undefined //' src/Makefile*
'';
enableParallelBuilding = true;
buildInputs =
[ pkgconfig gtk libglade librsvg bzip2 libgnomecanvas fribidi libpng popt
libgsf enchant wv libjpeg

View file

@ -1,41 +0,0 @@
diff --git a/gnucash.cc b/gnucash.cc
index 7d31526..c4edd77 100644
--- a/gnucash.cc
+++ b/gnucash.cc
@@ -201,7 +201,7 @@ static amount_t convert_number(const std::string& number,
{
const char * num = number.c_str();
- if (char * p = std::strchr(num, '/')) {
+ if (const char * p = std::strchr(num, '/')) {
std::string numer_str(num, p - num);
std::string denom_str(p + 1);
diff --git a/option.cc b/option.cc
index 10c23a7..8f2fead 100644
--- a/option.cc
+++ b/option.cc
@@ -892,7 +892,7 @@ OPT_BEGIN(market, "V") {
namespace {
void parse_price_setting(const char * optarg)
{
- char * equals = std::strchr(optarg, '=');
+ const char * equals = std::strchr(optarg, '=');
if (! equals)
return;
diff --git a/textual.cc b/textual.cc
index 2033106..d897368 100644
--- a/textual.cc
+++ b/textual.cc
@@ -298,8 +298,8 @@ transaction_t * parse_transaction(char * line, account_t * account,
DEBUG_PRINT("ledger.textual.parse", "line " << linenum << ": " <<
"Parsed a note '" << xact->note << "'");
- if (char * b = std::strchr(xact->note.c_str(), '['))
- if (char * e = std::strchr(xact->note.c_str(), ']')) {
+ if (const char * b = std::strchr(xact->note.c_str(), '['))
+ if (const char * e = std::strchr(xact->note.c_str(), ']')) {
char buf[256];
std::strncpy(buf, b + 1, e - b - 1);
buf[e - b - 1] = '\0';

View file

@ -1,23 +0,0 @@
{stdenv, fetchurl, liblapack}:
stdenv.mkDerivation {
name = "slr-1.4.2";
src = fetchurl {
url = http://www.ebi.ac.uk/goldman-srv/SLR/download/v1.4.2/slr_source.tgz;
sha256 = "03ak7jsz89zism6gx8fr1dwlwjgcmnrr9m6xgqpr0xzikxid02jp";
};
buildInputs = [ liblapack ];
preConfigure = "mkdir bin; cd src";
makeFlags = "-f Makefile.linux";
meta = {
description = "Phylogenetic Analysis by Maximum Likelihood (PAML)";
longDescription = ''
SLR is a program to detect sites in coding DNA that are unusually conserved and/or unusually variable (that is, evolving under purify or positive selection) by analysing the pattern of changes for an alignment of sequences on an evolutionary tree.
'';
license = "GPL3";
homepage = http://www.ebi.ac.uk/goldman/SLR/;
};
}

View file

@ -0,0 +1,58 @@
diff -ru xoscope-2.0-old//gtkdatabox-0.6.0.0/gtk/gtkdatabox.c xoscope-2.0/gtkdatabox-0.6.0.0/gtk/gtkdatabox.c
--- xoscope-2.0-old//gtkdatabox-0.6.0.0/gtk/gtkdatabox.c 2010-06-07 10:42:24.000000000 +0200
+++ xoscope-2.0/gtkdatabox-0.6.0.0/gtk/gtkdatabox.c 2010-06-07 10:45:40.000000000 +0200
@@ -661,7 +661,7 @@
static void
gtk_databox_calculate_hcanvas (GtkDatabox *box)
{
- if (!GTK_WIDGET_VISIBLE (box))
+ if (!gtk_widget_get_visible (box))
return;
if (box->priv->adjX->page_size == 1.0)
@@ -698,7 +698,7 @@
static void
gtk_databox_calculate_vcanvas (GtkDatabox *box)
{
- if (!GTK_WIDGET_VISIBLE (box))
+ if (!gtk_widget_get_visible (box))
return;
if (box->priv->adjY->page_size == 1.0)
@@ -780,7 +780,7 @@
gtk_databox_draw (box, event);
gdk_draw_drawable (widget->window,
- widget->style->fg_gc[GTK_WIDGET_STATE (widget)],
+ widget->style->fg_gc[gtk_widget_get_state (widget)],
box->priv->canvas.pixmap, event->area.x, event->area.y,
event->area.x, event->area.y, event->area.width,
event->area.height);
@@ -940,7 +940,7 @@
GtkWidget *widget = GTK_WIDGET (box);
g_return_if_fail (GTK_IS_DATABOX (box));
- g_return_if_fail (GTK_WIDGET_VISIBLE (widget));
+ g_return_if_fail (gtk_widget_get_visible (widget));
gdk_draw_rectangle (box->priv->canvas.pixmap, widget->style->bg_gc[0],
TRUE, 0, 0,
@@ -1150,7 +1150,7 @@
/* Copy a part of the pixmap to the screen */
if (pixmapCopyRect)
gdk_draw_drawable (widget->window,
- widget->style->fg_gc[GTK_WIDGET_STATE (box)],
+ widget->style->fg_gc[gtk_widget_get_state (box)],
box->priv->canvas.pixmap,
pixmapCopyRect->x,
pixmapCopyRect->y,
--- xoscope-2.0-old//gtkdatabox-0.6.0.0/gtk/Makefile.in 2011-09-02 16:43:43.000000000 +0200
+++ xoscope-2.0/gtkdatabox-0.6.0.0/gtk/Makefile.in 2011-09-02 16:43:57.000000000 +0200
@@ -196,7 +196,6 @@
-DG_DISABLE_DEPRECATED\
-DGDK_DISABLE_DEPRECATED\
-DGDK_PIXBUF_DISABLE_DEPRECATED\
- -DGTK_DISABLE_DEPRECATED\
`pkg-config gtk+-2.0 --cflags`
all: all-am

View file

@ -1,12 +1,21 @@
{ stdenv, fetchurl, which, texLive }:
let
s = # Generated upstream information
rec {
baseName="eprover";
version="1.6";
name="${baseName}-${version}";
hash="140cnw4qck1hancrqdh0f77yfba5ljhdnfxdxsl0a86a6y7ydbwi";
url="http://www4.in.tum.de/~schulz/WORK/E_DOWNLOAD/V_1.6/E.tgz";
sha256="140cnw4qck1hancrqdh0f77yfba5ljhdnfxdxsl0a86a6y7ydbwi";
};
in
stdenv.mkDerivation {
name = "EProver-1.4";
inherit (s) name;
src = fetchurl {
name = "E-1.4.tar.gz";
url = "http://www4.informatik.tu-muenchen.de/~schulz/WORK/E_DOWNLOAD/V_1.4/E.tgz";
sha256 = "1hxkr21xqkkh4bzqip6qf70w9xvvb8p20zzkvyin631ffgvyvr93";
name = "E-${s.version}.tar.gz";
inherit (s) url sha256;
};
buildInputs = [which texLive];
@ -27,6 +36,7 @@ stdenv.mkDerivation {
'';
meta = {
inherit (s) version;
description = "E automated theorem prover";
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.all;

View file

@ -0,0 +1,3 @@
url http://www4.informatik.tu-muenchen.de/~schulz/E/Download.html
version_link '[.]tgz$'
version '.*[/]V_([0-9.]+)[/].*' '\1'

View file

@ -1,9 +1,9 @@
rec {
version="2.3-src";
name="golly-2.3-src";
hash="12r1lrrn4c1kafzvz5mmfq3750smqv5dwl1xpj3753h0rl9a9gx1";
url="http://downloads.sourceforge.net/project/golly/golly/golly-2.3/golly-2.3-src.tar.gz";
advertisedUrl="http://downloads.sourceforge.net/project/golly/golly/golly-2.3/golly-2.3-src.tar.gz";
version="2.4-src";
name="golly-2.4-src";
hash="06vajm019q4q4wfy6pc1669fbjqdb4jaxcc419bk0vzky40anl9w";
url="http://downloads.sourceforge.net/project/golly/golly/golly-2.4/golly-2.4-src.tar.gz";
advertisedUrl="http://downloads.sourceforge.net/project/golly/golly/golly-2.4/golly-2.4-src.tar.gz";
}

View file

@ -0,0 +1,46 @@
{ stdenv, fetchurl, cmake,
singlePrec ? true,
fftw
}:
stdenv.mkDerivation {
name = "gromacs-4.5.5";
src = fetchurl {
url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-4.5.5.tar.gz";
md5 = "6a87e7cdfb25d81afa9fea073eb28468";
};
buildInputs = [cmake fftw];
cmakeFlags = ''
${if singlePrec then "-DGMX_DOUBLE=OFF" else "-DGMX_DOUBLE=ON -DGMX_DEFAULT_SUFFIX=OFF"}
'';
meta = {
homepage = "http://www.gromacs.org";
licence = "GPLv2";
description = "The GROMACS molecular dynamics software package";
longDescription = ''
GROMACS is a versatile package to perform molecular dynamics,
i.e. simulate the Newtonian equations of motion for systems
with hundreds to millions of particles.
It is primarily designed for biochemical molecules like
proteins, lipids and nucleic acids that have a lot of
complicated bonded interactions, but since GROMACS is
extremely fast at calculating the nonbonded interactions (that
usually dominate simulations) many groups are also using it
for research on non-biological systems, e.g. polymers.
GROMACS supports all the usual algorithms you expect from a
modern molecular dynamics implementation, (check the online
reference or manual for details), but there are also quite a
few features that make it stand out from the competition.
See: http://www.gromacs.org/About_Gromacs for details.
'';
};
}

View file

@ -1,19 +0,0 @@
diff --git a/darcs-2.0.0/tools/darcs_completion b/darcs-2.0.0/tools/darcs_completion
index 10628db..e36476e 100644
--- a/tools/darcs_completion
+++ b/tools/darcs_completion
@@ -3,7 +3,6 @@
# darcs command line completion.
# Copyright 2002 "David Roundy" <droundy@abridgegame.org>
#
-have darcs &&
_darcs()
{
local cur
@@ -48,5 +47,5 @@ _darcs()
return 0
}
-[ "$have" ] && complete -F _darcs -o default darcs
+complete -F _darcs -o default darcs

View file

@ -76,6 +76,11 @@ rec {
inherit stdenv fetchurl ncurses asciidoc xmlto docbook_xsl;
};
hub = import ./hub {
inherit (rubyLibs) rake;
inherit stdenv fetchgit groff makeWrapper;
};
gitFastExport = import ./fast-export {
inherit fetchgit stdenv mercurial coreutils git makeWrapper subversion;
};

View file

@ -12,14 +12,14 @@
}:
let
version = "3.20121112-161-gb27d9eb";
version = "3.20121211";
in
stdenv.mkDerivation {
name = "git-annex-${version}";
src = fetchurl {
url = "http://git.kitenet.net/?p=git-annex.git;a=snapshot;h=b27d9ebd0f63bdc449440f2529224d5b655ddbb3;sf=tgz";
sha256 = "507efc50e33566a51a6abf688920d30fc55ce984c9c35be085e6df0767686b3a";
url = "http://git.kitenet.net/?p=git-annex.git;a=snapshot;sf=tgz;h=${version}";
sha256 = "1l5sffcn6mcfk0s808z490s30dbq8m4wi8a11ard35hyf599zawq";
name = "git-annex-${version}.tar.gz";
};
@ -36,7 +36,6 @@ stdenv.mkDerivation {
checkTarget = "test";
doCheck = true;
# The 'add_url' test fails because it attempts to use the network.
preConfigure = ''
makeFlagsArray=( PREFIX=$out )
sed -i -e 's|#!/usr/bin/perl|#!${perl}/bin/perl|' Build/mdwn2man

View file

@ -9,7 +9,7 @@
let
version = "1.8.0";
version = "1.8.0.1";
svn = subversionClient.override { perlBindings = true; };
@ -20,7 +20,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "http://git-core.googlecode.com/files/git-${version}.tar.gz";
sha1 = "a03afc33f8f0723ad12649d79f1e8968526b4bf7";
sha1 = "4e7492f7558f3ba2a450c43efa7de3b0b1adc6c1";
};
patches = [ ./docbook2texi.patch ];

View file

@ -1,28 +0,0 @@
make sure `gitman.info' isn't produced since it's broken (duplicate
node names).
diff --git a/Documentation/Makefile b/Documentation/Makefile
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -84,7 +84,7 @@ man1: $(DOC_MAN1)
man5: $(DOC_MAN5)
man7: $(DOC_MAN7)
-info: git.info gitman.info
+info: git.info
install: man
$(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
@@ -96,10 +96,9 @@ install: man
install-info: info
$(INSTALL) -d -m 755 $(DESTDIR)$(infodir)
- $(INSTALL) -m 644 git.info gitman.info $(DESTDIR)$(infodir)
+ $(INSTALL) -m 644 git.info $(DESTDIR)$(infodir)
if test -r $(DESTDIR)$(infodir)/dir; then \
$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) git.info ;\
- $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) gitman.info ;\
else \
echo "No directory found in $(DESTDIR)$(infodir)" >&2 ; \
fi

View file

@ -1,529 +0,0 @@
diff --git a/builtin-add.c b/builtin-add.c
index bf13aa3..02c6751 100644
--- a/builtin-add.c
+++ b/builtin-add.c
@@ -123,6 +123,7 @@ int add_files_to_cache(const char *prefix, const char **pathspec, int flags)
init_revisions(&rev, prefix);
setup_revisions(0, NULL, &rev, NULL);
rev.prune_data = pathspec;
+ rev.glob_paths = 0; /* git-add has its own filename matching machinery */
rev.diffopt.output_format = DIFF_FORMAT_CALLBACK;
rev.diffopt.format_callback = update_callback;
data.flags = flags;
diff --git a/builtin-blame.c b/builtin-blame.c
index 9bced3b..237d1fe 100644
--- a/builtin-blame.c
+++ b/builtin-blame.c
@@ -343,7 +343,7 @@ static struct origin *find_origin(struct scoreboard *sb,
paths[0] = origin->path;
paths[1] = NULL;
- diff_tree_setup_paths(paths, &diff_opts);
+ diff_tree_setup_paths(paths, &diff_opts, 0);
if (diff_setup_done(&diff_opts) < 0)
die("diff-setup");
@@ -417,7 +417,7 @@ static struct origin *find_rename(struct scoreboard *sb,
diff_opts.output_format = DIFF_FORMAT_NO_OUTPUT;
diff_opts.single_follow = origin->path;
paths[0] = NULL;
- diff_tree_setup_paths(paths, &diff_opts);
+ diff_tree_setup_paths(paths, &diff_opts, 0);
if (diff_setup_done(&diff_opts) < 0)
die("diff-setup");
@@ -1099,7 +1099,7 @@ static int find_copy_in_parent(struct scoreboard *sb,
diff_opts.output_format = DIFF_FORMAT_NO_OUTPUT;
paths[0] = NULL;
- diff_tree_setup_paths(paths, &diff_opts);
+ diff_tree_setup_paths(paths, &diff_opts, 0);
if (diff_setup_done(&diff_opts) < 0)
die("diff-setup");
@@ -2346,6 +2346,11 @@ int cmd_blame(int argc, const char **argv, const char *prefix)
parse_done:
argc = parse_options_end(&ctx);
+ if (revs.glob_paths) {
+ error("git blame does not support `--glob-paths'");
+ usage_with_options(blame_opt_usage, options);
+ }
+
if (!blame_move_score)
blame_move_score = BLAME_DEFAULT_MOVE_SCORE;
if (!blame_copy_score)
diff --git a/builtin-reset.c b/builtin-reset.c
index 2e5a886..6026b34 100644
--- a/builtin-reset.c
+++ b/builtin-reset.c
@@ -128,14 +128,15 @@ static void update_index_from_diff(struct diff_queue_struct *q,
}
static int read_from_tree(const char *prefix, const char **argv,
- unsigned char *tree_sha1)
+ unsigned char *tree_sha1, int glob_paths)
{
struct lock_file *lock = xcalloc(1, sizeof(struct lock_file));
int index_fd, index_was_discarded = 0;
struct diff_options opt;
memset(&opt, 0, sizeof(opt));
- diff_tree_setup_paths(get_pathspec(prefix, (const char **)argv), &opt);
+ diff_tree_setup_paths(get_pathspec(prefix, (const char **)argv),
+ &opt, glob_paths);
opt.output_format = DIFF_FORMAT_CALLBACK;
opt.format_callback = update_index_from_diff;
opt.format_callback_data = &index_was_discarded;
@@ -171,6 +172,7 @@ static const char *reset_type_names[] = { "mixed", "soft", "hard", NULL };
int cmd_reset(int argc, const char **argv, const char *prefix)
{
int i = 0, reset_type = NONE, update_ref_status = 0, quiet = 0;
+ int glob_paths = 0;
const char *rev = "HEAD";
unsigned char sha1[20], *orig = NULL, sha1_orig[20],
*old_orig = NULL, sha1_old_orig[20];
@@ -182,6 +184,8 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
OPT_SET_INT(0, "soft", &reset_type, "reset only HEAD", SOFT),
OPT_SET_INT(0, "hard", &reset_type,
"reset HEAD, index and working tree", HARD),
+ OPT_BOOLEAN(0, "glob-paths", &glob_paths,
+ "match paths with fnmatch"),
OPT_BOOLEAN('q', NULL, &quiet,
"disable showing new HEAD in hard reset and progress message"),
OPT_END()
@@ -246,7 +250,7 @@ int cmd_reset(int argc, const char **argv, const char *prefix)
else if (reset_type != NONE)
die("Cannot do %s reset with paths.",
reset_type_names[reset_type]);
- return read_from_tree(prefix, argv + i, sha1);
+ return read_from_tree(prefix, argv + i, sha1, glob_paths);
}
if (reset_type == NONE)
reset_type = MIXED; /* by default */
diff --git a/builtin-update-index.c b/builtin-update-index.c
index 38eb53c..28b09a3 100644
--- a/builtin-update-index.c
+++ b/builtin-update-index.c
@@ -23,6 +23,7 @@ static int allow_replace;
static int info_only;
static int force_remove;
static int verbose;
+static int glob_paths;
static int mark_valid_only;
#define MARK_VALID 1
#define UNMARK_VALID 2
@@ -534,7 +535,7 @@ static int do_reupdate(int ac, const char **av,
struct cache_entry *old = NULL;
int save_nr;
- if (ce_stage(ce) || !ce_path_match(ce, pathspec))
+ if (ce_stage(ce) || !ce_path_match(ce, pathspec, glob_paths))
continue;
if (has_head)
old = read_one_ent(NULL, head_sha1,
@@ -659,6 +660,10 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
force_remove = 1;
continue;
}
+ if (!strcmp(path, "--glob-paths")) {
+ glob_paths = 1;
+ continue;
+ }
if (!strcmp(path, "-z")) {
line_termination = 0;
continue;
@@ -702,6 +707,8 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
usage(update_index_usage);
die("unknown option %s", path);
}
+ if (glob_paths)
+ die("--glob-paths without -g");
p = prefix_path(prefix, prefix_length, path);
update_one(p, NULL, 0);
if (set_executable_bit)
@@ -712,6 +719,8 @@ int cmd_update_index(int argc, const char **argv, const char *prefix)
if (read_from_stdin) {
struct strbuf buf, nbuf;
+ if (glob_paths)
+ die("--glob-paths without -g");
strbuf_init(&buf, 0);
strbuf_init(&nbuf, 0);
while (strbuf_getline(&buf, stdin, line_termination) != EOF) {
diff --git a/cache.h b/cache.h
index a779d92..5560195 100644
--- a/cache.h
+++ b/cache.h
@@ -387,7 +387,8 @@ extern int ce_same_name(struct cache_entry *a, struct cache_entry *b);
extern int ie_match_stat(const struct index_state *, struct cache_entry *, struct stat *, unsigned int);
extern int ie_modified(const struct index_state *, struct cache_entry *, struct stat *, unsigned int);
-extern int ce_path_match(const struct cache_entry *ce, const char **pathspec);
+extern int ce_path_match(const struct cache_entry *ce, const char **pathspec,
+ int glob_paths);
extern int index_fd(unsigned char *sha1, int fd, struct stat *st, int write_object, enum object_type type, const char *path);
extern int index_pipe(unsigned char *sha1, int fd, const char *type, int write_object);
extern int index_path(unsigned char *sha1, const char *path, struct stat *st, int write_object);
diff --git a/diff-lib.c b/diff-lib.c
index e7eaff9..87925a2 100644
--- a/diff-lib.c
+++ b/diff-lib.c
@@ -77,7 +77,7 @@ int run_diff_files(struct rev_info *revs, unsigned int option)
DIFF_OPT_TST(&revs->diffopt, HAS_CHANGES))
break;
- if (!ce_path_match(ce, revs->prune_data))
+ if (!ce_path_match(ce, revs->prune_data, revs->glob_paths))
continue;
if (ce_stage(ce)) {
@@ -431,7 +431,7 @@ static int oneway_diff(struct cache_entry **src, struct unpack_trees_options *o)
if (tree == o->df_conflict_entry)
tree = NULL;
- if (ce_path_match(idx ? idx : tree, revs->prune_data))
+ if (ce_path_match(idx ? idx : tree, revs->prune_data, revs->glob_paths))
do_oneway_diff(o, idx, tree);
return 0;
@@ -508,6 +508,7 @@ int do_diff_cache(const unsigned char *tree_sha1, struct diff_options *opt)
init_revisions(&revs, NULL);
revs.prune_data = opt->paths;
+ revs.glob_paths = opt->glob_paths;
tree = parse_tree_indirect(tree_sha1);
if (!tree)
die("bad tree object %s", sha1_to_hex(tree_sha1));
diff --git a/diff-no-index.c b/diff-no-index.c
index f6994cf..ec549a7 100644
--- a/diff-no-index.c
+++ b/diff-no-index.c
@@ -240,6 +240,7 @@ void diff_no_index(struct rev_info *revs,
}
else
revs->diffopt.paths = argv + argc - 2;
+ revs->diffopt.glob_paths = 0;
revs->diffopt.nr_paths = 2;
DIFF_OPT_SET(&revs->diffopt, EXIT_WITH_STATUS);
diff --git a/diff.h b/diff.h
index 50fb5dd..56f0857 100644
--- a/diff.h
+++ b/diff.h
@@ -102,6 +102,7 @@ struct diff_options {
FILE *file;
int close_file;
+ int glob_paths;
int nr_paths;
const char **paths;
int *pathlens;
@@ -128,7 +129,8 @@ const char *diff_get_color(int diff_use_color, enum color_diff ix);
extern const char mime_boundary_leader[];
-extern void diff_tree_setup_paths(const char **paths, struct diff_options *);
+extern void diff_tree_setup_paths(const char **paths, struct diff_options *opt,
+ int glob_paths);
extern void diff_tree_release_paths(struct diff_options *);
extern int diff_tree(struct tree_desc *t1, struct tree_desc *t2,
const char *base, struct diff_options *opt);
diff --git a/gitk-git/gitk b/gitk-git/gitk
index fddcb45..18c5cbc 100644
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -1866,6 +1866,7 @@ proc makewindow {} {
set gm [tk_optionMenu .tf.lbar.gdttype gdttype \
[mc "containing:"] \
[mc "touching paths:"] \
+ [mc "touching paths (glob):"] \
[mc "adding/removing string:"]]
trace add variable gdttype write gdttype_change
pack .tf.lbar.gdttype -side left -fill y
@@ -3588,6 +3589,11 @@ proc do_file_hl {serial} {
set highlight_paths [makepatterns $paths]
highlight_filelist
set gdtargs [concat -- $paths]
+ } elseif {$gdttype eq [mc "touching paths (glob):"]} {
+ if {[catch {set paths [shellsplit $highlight_files]}]} return
+ set highlight_paths $paths
+ highlight_filelist
+ set gdtargs [concat --glob-paths -- $paths]
} elseif {$gdttype eq [mc "adding/removing string:"]} {
set gdtargs [list "-S$highlight_files"]
} else {
diff --git a/read-cache.c b/read-cache.c
index 1648428..c11ded9 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -582,7 +582,8 @@ int ce_same_name(struct cache_entry *a, struct cache_entry *b)
return ce_namelen(b) == len && !memcmp(a->name, b->name, len);
}
-int ce_path_match(const struct cache_entry *ce, const char **pathspec)
+static int ce_path_match_standard(const struct cache_entry *ce,
+ const char **pathspec)
{
const char *match, *name;
int len;
@@ -608,6 +609,31 @@ int ce_path_match(const struct cache_entry *ce, const char **pathspec)
return 0;
}
+static int ce_path_match_globbed(const struct cache_entry *ce,
+ const char **pathspec)
+{
+ const char *match, *name;
+
+ if (!pathspec)
+ return 1;
+
+ name = ce->name;
+ while ((match = *pathspec++) != NULL) {
+ if (!fnmatch(match, name, 0))
+ return 1;
+ }
+ return 0;
+}
+
+int ce_path_match(const struct cache_entry *ce,
+ const char **pathspec, int glob_paths)
+{
+ if (glob_paths)
+ return ce_path_match_globbed(ce, pathspec);
+ else
+ return ce_path_match_standard(ce, pathspec);
+}
+
/*
* We fundamentally don't like some paths: we don't want
* dot or dot-dot anywhere, and for obvious reasons don't
diff --git a/revision.c b/revision.c
index 3897fec..0dd1091 100644
--- a/revision.c
+++ b/revision.c
@@ -519,6 +519,7 @@ static void cherry_pick_list(struct commit_list *list, struct rev_info *revs)
if (revs->diffopt.nr_paths) {
ids.diffopts.nr_paths = revs->diffopt.nr_paths;
ids.diffopts.paths = revs->diffopt.paths;
+ ids.diffopts.glob_paths = revs->diffopt.glob_paths; /* CHECKME */
ids.diffopts.pathlens = revs->diffopt.pathlens;
}
@@ -826,7 +827,7 @@ static void prepare_show_merge(struct rev_info *revs)
struct cache_entry *ce = active_cache[i];
if (!ce_stage(ce))
continue;
- if (ce_path_match(ce, revs->prune_data)) {
+ if (ce_path_match(ce, revs->prune_data, revs->glob_paths)) {
prune_num++;
prune = xrealloc(prune, sizeof(*prune) * prune_num);
prune[prune_num-2] = ce->name;
@@ -837,6 +838,7 @@ static void prepare_show_merge(struct rev_info *revs)
i++;
}
revs->prune_data = prune;
+ revs->glob_paths = 0;
revs->limited = 1;
}
@@ -1033,6 +1035,8 @@ static int handle_revision_opt(struct rev_info *revs, int argc, const char **arg
revs->min_age = approxidate(arg + 8);
} else if (!strcmp(arg, "--first-parent")) {
revs->first_parent_only = 1;
+ } else if (!strcmp(arg, "--glob-paths")) {
+ revs->glob_paths = 1;
} else if (!strcmp(arg, "-g") || !strcmp(arg, "--walk-reflogs")) {
init_reflog_walk(&revs->reflog_info);
} else if (!strcmp(arg, "--default")) {
@@ -1220,6 +1224,7 @@ void parse_revision_opt(struct rev_info *revs, struct parse_opt_ctx_t *ctx,
int setup_revisions(int argc, const char **argv, struct rev_info *revs, const char *def)
{
int i, flags, left, seen_dashdash;
+ const char **paths = NULL;
/* First, search for "--" */
seen_dashdash = 0;
@@ -1230,7 +1235,7 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch
argv[i] = NULL;
argc = i;
if (argv[i + 1])
- revs->prune_data = get_pathspec(revs->prefix, argv + i + 1);
+ paths = argv + i + 1;
seen_dashdash = 1;
break;
}
@@ -1290,6 +1295,9 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch
if (seen_dashdash || *arg == '^')
die("bad revision '%s'", arg);
+ if (revs->glob_paths)
+ die("--glob-paths without --");
+
/* If we didn't have a "--":
* (1) all filenames must exist;
* (2) all rev-args must not be interpretable
@@ -1301,10 +1309,19 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch
revs->prune_data = get_pathspec(revs->prefix,
argv + i);
+ revs->glob_paths = 0;
break;
}
}
+ /* Third, handle paths listed after -- */
+ if (paths != NULL) {
+ if (revs->glob_paths)
+ revs->prune_data = paths;
+ else
+ revs->prune_data = get_pathspec(revs->prefix, paths);
+ }
+
if (revs->def == NULL)
revs->def = def;
if (revs->show_merge)
@@ -1333,12 +1350,14 @@ int setup_revisions(int argc, const char **argv, struct rev_info *revs, const ch
revs->limited = 1;
if (revs->prune_data) {
- diff_tree_setup_paths(revs->prune_data, &revs->pruning);
+ diff_tree_setup_paths(revs->prune_data, &revs->pruning,
+ revs->glob_paths);
/* Can't prune commits with rename following: the paths change.. */
if (!DIFF_OPT_TST(&revs->diffopt, FOLLOW_RENAMES))
revs->prune = 1;
if (!revs->full_diff)
- diff_tree_setup_paths(revs->prune_data, &revs->diffopt);
+ diff_tree_setup_paths(revs->prune_data, &revs->diffopt,
+ revs->glob_paths);
}
if (revs->combine_merges) {
revs->ignore_merges = 0;
diff --git a/revision.h b/revision.h
index fa68c65..a68cdb8 100644
--- a/revision.h
+++ b/revision.h
@@ -32,6 +32,9 @@ struct rev_info {
void *prune_data;
unsigned int early_output;
+ /* whether prune_data contains fnmatch() patterns */
+ unsigned int glob_paths:1;
+
/* Traversal flags */
unsigned int dense:1,
prune:1,
diff --git a/tree-diff.c b/tree-diff.c
index bbb126f..0aa1e9b 100644
--- a/tree-diff.c
+++ b/tree-diff.c
@@ -82,6 +82,11 @@ static int compare_tree_entry(struct tree_desc *t1, struct tree_desc *t2, const
return 0;
}
+static int tree_entry_interesting_globbed(struct tree_desc *, const char *,
+ int, struct diff_options *);
+static int tree_entry_interesting_standard(struct tree_desc *, const char *,
+ int, struct diff_options *);
+
/*
* Is a tree entry interesting given the pathspec we have?
*
@@ -91,7 +96,19 @@ static int compare_tree_entry(struct tree_desc *t1, struct tree_desc *t2, const
* - zero for no
* - negative for "no, and no subsequent entries will be either"
*/
-static int tree_entry_interesting(struct tree_desc *desc, const char *base, int baselen, struct diff_options *opt)
+static int tree_entry_interesting(struct tree_desc *desc,
+ const char *base, int baselen, struct diff_options *opt)
+{
+ if (opt->glob_paths)
+ return tree_entry_interesting_globbed(desc, base,
+ baselen, opt);
+ else
+ return tree_entry_interesting_standard(desc, base,
+ baselen, opt);
+}
+
+static int tree_entry_interesting_standard(struct tree_desc *desc,
+ const char *base, int baselen, struct diff_options *opt)
{
const char *path;
const unsigned char *sha1;
@@ -190,6 +207,41 @@ static int tree_entry_interesting(struct tree_desc *desc, const char *base, int
return never_interesting; /* No matches */
}
+static int tree_entry_interesting_globbed(struct tree_desc *desc,
+ const char *base, int baselen, struct diff_options *opt)
+{
+ const char *path;
+ char *fullpath;
+ const unsigned char *sha1;
+ unsigned mode;
+ int i;
+ int pathlen;
+ int result;
+
+ if (!opt->nr_paths)
+ return 1;
+ sha1 = tree_entry_extract(desc, &path, &mode);
+ if (S_ISDIR(mode))
+ return 1;
+ pathlen = tree_entry_len(path, sha1);
+
+ fullpath = xmalloc(pathlen + baselen + 1);
+ memcpy(fullpath, base, baselen);
+ memcpy(fullpath + baselen, path, pathlen + 1);
+
+ result = 0;
+ for (i = 0; i < opt->nr_paths; i++) {
+ const char *match = opt->paths[i];
+ if (!fnmatch(match, fullpath, 0)) {
+ result = 1;
+ break;
+ }
+ }
+
+ free(fullpath);
+ return result;
+}
+
/* A whole sub-tree went away or appeared */
static void show_tree(struct diff_options *opt, const char *prefix, struct tree_desc *desc, const char *base, int baselen)
{
@@ -338,7 +390,7 @@ static void try_to_follow_renames(struct tree_desc *t1, struct tree_desc *t2, co
diff_opts.single_follow = opt->paths[0];
diff_opts.break_opt = opt->break_opt;
paths[0] = NULL;
- diff_tree_setup_paths(paths, &diff_opts);
+ diff_tree_setup_paths(paths, &diff_opts, 0);
if (diff_setup_done(&diff_opts) < 0)
die("unable to set up diff options to follow renames");
diff_tree(t1, t2, base, &diff_opts);
@@ -362,7 +414,7 @@ static void try_to_follow_renames(struct tree_desc *t1, struct tree_desc *t2, co
/* Update the path we use from now on.. */
diff_tree_release_paths(opt);
opt->paths[0] = xstrdup(p->one->path);
- diff_tree_setup_paths(opt->paths, opt);
+ diff_tree_setup_paths(opt->paths, opt, 0);
break;
}
}
@@ -440,11 +492,13 @@ void diff_tree_release_paths(struct diff_options *opt)
free(opt->pathlens);
}
-void diff_tree_setup_paths(const char **p, struct diff_options *opt)
+void diff_tree_setup_paths(const char **p, struct diff_options *opt,
+ int glob_paths)
{
opt->nr_paths = 0;
opt->pathlens = NULL;
opt->paths = NULL;
+ opt->glob_paths = glob_paths;
if (p) {
int i;

View file

@ -0,0 +1,28 @@
{ stdenv, fetchgit, groff, rake, makeWrapper }:
stdenv.mkDerivation rec {
name = "hub-${version}";
version = "1.10.3";
src = fetchgit {
url = "git://github.com/defunkt/hub.git";
rev = "refs/tags/v${version}";
sha256 = "0j0krmf0sf09hhw3nsn0w1y97d67762g4qrc8080bwcx38lbyvbg";
};
buildInputs = [ rake makeWrapper ];
installPhase = ''
rake install "prefix=$out"
'';
fixupPhase = ''
wrapProgram $out/bin/hub --prefix PATH : ${groff}/bin
'';
meta = {
description = "A GitHub specific wrapper for git";
homepage = "http://defunkt.io/hub/";
license = stdenv.lib.licenses.mit;
};
}

View file

@ -17,8 +17,6 @@ stdenv.mkDerivation {
buildInputs = [ python makeWrapper docutils unzip ];
PYTHONPATH = "${python}/lib/python2.6/site-packages:${python}/lib/python2.7/site-packages:${docutils}/lib/python2.5/site-packages:${docutils}/lib/python2.6/site-packages:${docutils}/lib/python2.7/site-packages";
makeFlags = "PREFIX=$(out)";
postInstall = (stdenv.lib.optionalString guiSupport
@ -47,8 +45,6 @@ stdenv.mkDerivation {
chmod u+x $out/share/cgi-bin/hgweb.cgi
'';
doCheck = false; # The test suite fails, unfortunately. Not sure why.
meta = {
description = "A fast, lightweight SCM system for very large distributed projects";
homepage = "http://www.selenic.com/mercurial/";

View file

@ -1,23 +0,0 @@
args : with args;
rec {
src = fetchurl {
name = "monotone-viz-1.0.1-nolablgtk.tar.gz";
urls = [
http://ftp.debian.org/debian/pool/main/m/monotone-viz/monotone-viz_1.0.1.orig.tar.gz
#http://oandrieu.nerim.net/monotone-viz/monotone-viz-1.0.1-nolablgtk.tar.gz
];
sha256 = "066qwrknjk5hwk9jblnf0bzvbmfbabq0zhsxkd3nzk469zkpvhl2";
};
buildInputs = [ocaml lablgtk libgnomecanvas gtk graphviz glib pkgconfig];
configureFlags = ["--with-lablgtk-dir=${lablgtk}/lib/ocaml/lablgtk2"];
/* doConfigure should be specified separately */
phaseNames = ["doConfigure" "doMakeInstall"];
name = "monotone-viz-" + version;
meta = {
description = "Monotone commit tree visualizer";
};
}

View file

@ -1,34 +0,0 @@
# patch "agraph.ml"
# from [8ae6c9bb70bbf9fd80e4e62d9f162ac581619b9e]
# to [05aa88921481ac9bfe238daeb4374fbc9993caaa]
#
============================================================
--- a/agraph.ml 8ae6c9bb70bbf9fd80e4e62d9f162ac581619b9e
+++ b/agraph.ml 05aa88921481ac9bfe238daeb4374fbc9993caaa
@@ -50,8 +50,9 @@ let dot_format params agraph =
agraph.nodes in
!+ "digraph \"monotone-viz\"\n{\n" ;
- if params.lr_layout then
- !+ " graph [rankdir=LR] ;\n" ;
+ if params.lr_layout
+ then !+ " graph [rankdir=LR] ;\n"
+ else !+ " graph [rankdir=BT] ;\n" ;
!+ " graph [ranksep=\"0.25\"] ;\n" ;
!+ " node [label=\"\"] ;\n" ;
@@ -222,11 +223,11 @@ let spawn_dot graph status done_cb =
let dot_prg = graph.layout_params.dot_program in
let cmd =
if Viz_misc.debug "dot"
- then [ "/bin/sh" ; "-c" ;
+ then [ "/bin/sh" ; "-c" ;
Printf.sprintf
"set -o pipefail ; \
- tee agraph.in.dot | %s -q -y -s%.0f | tee agraph.out.dot" dot_prg ppi ]
- else [ dot_prg ; "-q" ; "-y" ; Printf.sprintf "-s%.0f" ppi ] in
+ tee agraph.in.dot | %s -q -s%.0f | tee agraph.out.dot" dot_prg ppi ]
+ else [ dot_prg ; "-q" ; Printf.sprintf "-s%.0f" ppi ] in
let error fmt =
Printf.kprintf (fun s -> done_cb (`LAYOUT_ERROR s)) fmt in
try

View file

@ -1,23 +0,0 @@
In NixOS chroot builds, there is no root account. So configure should
not rely on its existence in deciding whether to use getpwuid().
diff -rc -x '*~' rcs-5.7-orig/src/conf.sh rcs-5.7/src/conf.sh
*** rcs-5.7-orig/src/conf.sh 1995-06-16 08:19:24.000000000 +0200
--- rcs-5.7/src/conf.sh 2010-02-12 15:22:37.000000000 +0100
***************
*** 821,827 ****
a= z=
cat >a.c <<EOF
#include "$A_H"
! int main() { exitmain(!getpwuid(0)); }
EOF
$PREPARE_CC || exit
if ($CL a.c $L && $aout) >&2
--- 821,827 ----
a= z=
cat >a.c <<EOF
#include "$A_H"
! int main() { exitmain(!getpwuid(getuid())); }
EOF
$PREPARE_CC || exit
if ($CL a.c $L && $aout) >&2

View file

@ -1,9 +1,9 @@
rec {
version="2.0.0.10822";
name="veracity-2.0.0.10822";
hash="0zgvrsjxfd1p9pflx1kxggmk953jhjk02h1hili9h1vdasvn2188";
url="http://download.sourcegear.com/Veracity/release/2.0.0.10822/veracity-source-${version}.tar.gz";
advertisedUrl="http://download.sourcegear.com/Veracity/release/2.0.0.10822/veracity-source-2.0.0.10822.tar.gz";
version="2.1.0.10979";
name="veracity-2.1.0.10979";
hash="15x3cwwjv9b0cbjx6insqk190wpnhwcm1z4b570hvw3lix3xnxhl";
url="http://download.sourcegear.com/Veracity/release/2.1.0.10979/veracity-source-${version}.tar.gz";
advertisedUrl="http://download.sourcegear.com/Veracity/release/2.1.0.10979/veracity-source-2.1.0.10979.tar.gz";
}

View file

@ -0,0 +1,36 @@
{ stdenv, fetchsvn, pkgconfig, zlib }:
stdenv.mkDerivation rec {
name = "gpac-0.5.0-svn";
src = fetchsvn {
url = "https://gpac.svn.sourceforge.net/svnroot/gpac/trunk/gpac";
rev = "4253";
sha256 = "0z4bd63c805q53hpb09gq0m0apy12z5a90zxx4jjx3ln64xq0pnn";
};
# this is the bare minimum configuration, as I'm only interested in MP4Box
# For most other functionality, this should probably be extended
buildNativeInputs = [ pkgconfig zlib ];
meta = {
description = "Open Source multimedia framework for research and academic purposes";
longDescription = ''
GPAC is an Open Source multimedia framework for research and academic purposes.
The project covers different aspects of multimedia, with a focus on presentation
technologies (graphics, animation and interactivity) and on multimedia packaging
formats such as MP4.
GPAC provides three sets of tools based on a core library called libgpac:
A multimedia player, called Osmo4 / MP4Client,
A multimedia packager, called MP4Box,
And some server tools included in MP4Box and MP42TS applications.
'';
homepage = http://gpac.wp.mines-telecom.fr;
license = stdenv.lib.licenses.lgpl21;
maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
platforms = stdenv.lib.platforms.all;
};
}

View file

@ -16,11 +16,11 @@
}:
stdenv.mkDerivation rec {
name = "mkvtoolnix-5.6.0";
name = "mkvtoolnix-5.9.0";
src = fetchurl {
url = "http://www.bunkus.org/videotools/mkvtoolnix/sources/${name}.tar.bz2";
sha256 = "1hzwf4zaamny3qzmd6hyhy4hy9l67s3fjvznbi0avw0ad7g05i89";
sha256 = "1qdxzi72w5p77brlpp7y7llsgzlvl4p8fk1kzg934cqw6cqza4yr";
};
buildInputs = [ libmatroska flac libvorbis file boost lzo xdg_utils expat wxGTK zlib ruby gettext pkgconfig curl ];

View file

@ -1,15 +0,0 @@
Index: tvtime-1.0.2/src/videoinput.c
===================================================================
--- tvtime-1.0.2.orig/src/videoinput.c
+++ tvtime-1.0.2/src/videoinput.c
@@ -35,8 +35,8 @@
#ifdef HAVE_CONFIG_H
# include "config.h"
#endif
-#include "videodev.h"
-#include "videodev2.h"
+#include <linux/videodev.h>
+#include <linux/videodev2.h>
#include "videoinput.h"
#include "mixer.h"

View file

@ -1,18 +0,0 @@
{stdenv, fetchurl, SDL, zlib, which}:
stdenv.mkDerivation {
name = "qemu-0.11.0";
src = fetchurl {
url = http://download.savannah.gnu.org/releases/qemu/qemu-0.11.0.tar.gz;
sha256 = "1w3n61lzwvqg1ygn0vs8syybbmbcbk7lfyya098k201lp5rpwamw";
};
patchFlags = "-p2";
buildInputs = [SDL zlib which];
meta = {
description = "QEmu processor emulator";
};
}

View file

@ -1,19 +0,0 @@
{ stdenv, fetchurl, SDL, zlib, which, ncurses }:
stdenv.mkDerivation rec {
name = "qemu-0.13.0";
src = fetchurl {
url = "mirror://savannah/releases/qemu/${name}.tar.gz";
sha256 = "0xyqbwy78218ja6r9ya5p37j8hcd81l4cpw3ghvnxsjwn18mhvqy";
};
buildInputs = [ SDL zlib which ncurses ];
meta = {
description = "QEmu processor emulator";
license = "GPLv2+";
maintainers = with stdenv.lib.maintainers; [viric];
platforms = with stdenv.lib.platforms; linux;
};
}

View file

@ -1,19 +0,0 @@
{stdenv, fetchsvn, SDL, zlib, which}:
stdenv.mkDerivation {
name = "qemu-svn-6642";
src = fetchsvn {
url = "svn://svn.sv.gnu.org/qemu/trunk";
rev = "6642";
sha256 = "12445ad91feb72eecd1db0d4319a8fa5d7dc971b89228bd0e121b49c5da9705e";
};
patchFlags = "-p2";
buildInputs = [SDL zlib which];
meta = {
description = "QEmu processor emulator";
};
}

View file

@ -4,13 +4,15 @@
, xorriso, makeself, perl, pkgconfig
, javaBindings ? false, jdk ? null
, pythonBindings ? false, python ? null
, enableExtensionPack ? false, requireFile ? null, patchelf ? null
}:
with stdenv.lib;
let
version = "4.2.2";
version = "4.2.4";
extpackRevision = "81684";
forEachModule = action: ''
for mod in \
@ -29,12 +31,20 @@ let
done
'';
extensionPack = requireFile {
name = "Oracle_VM_VirtualBox_Extension_Pack-${version}-${extpackRevision}"
+ ".vbox-extpack";
# Has to be base16 because it's used as an input to VBoxExtPackHelperApp!
sha256 = "62078e057a4ab56aec5ac086746522b3d94787333d0444169471fa5152c609ed";
url = "https://www.virtualbox.org/wiki/Downloads";
};
in stdenv.mkDerivation {
name = "virtualbox-${version}-${kernel.version}";
src = fetchurl {
url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
sha256 = "943daa13694605d5d0a23ffef27c398b5e72ada669de89bad4b98f000f029700";
sha256 = "a7c607523c1c10b7b978ab39a92bb646517316548aa4a1a74b6e434ac2bf0adc";
};
buildInputs =
@ -108,6 +118,15 @@ in stdenv.mkDerivation {
ln -s "$libexec/$file" $out/bin/$file
done
${optionalString enableExtensionPack ''
"$libexec/VBoxExtPackHelperApp" install \
--base-dir "$libexec/ExtensionPacks" \
--cert-dir "$libexec/ExtPackCertificates" \
--name "Oracle VM VirtualBox Extension Pack" \
--tarball "${extensionPack}"
--sha-256 "${extensionPack.outputHash}"
''}
# Create and fix desktop item
mkdir -p $out/share/applications
sed -i -e "s|Icon=VBox|Icon=$libexec/VBox.png|" $libexec/virtualbox.desktop

View file

@ -1,14 +1,14 @@
{ stdenv, fetchurl, lib, patchelf, cdrkit, kernel, which, makeWrapper
, libX11, libXt, libXext, libXmu, libXcomposite, libXfixes, libXrandr, libXcursor}:
let version = "4.2.2"; in
let version = "4.2.4"; in
stdenv.mkDerivation {
name = "VirtualBox-GuestAdditions-${version}";
name = "VirtualBox-GuestAdditions-${version}-${kernel.version}";
src = fetchurl {
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
sha256 = "26f5390b36a3bb9855846d194dcd287b8e53613b599c6ffd7aff1b451cc7f1f1";
sha256 = "3d7d909a0fe9ac5ffcca6afdd4142b88bad116d2ffed6e95588dbfbcf00ca5e9";
};
KERN_DIR = "${kernel}/lib/modules/*/build";

View file

@ -4,11 +4,11 @@
stdenv.mkDerivation rec {
name = "i3-${version}";
version = "4.3";
version = "4.4";
src = fetchurl {
url = "http://i3wm.org/downloads/${name}.tar.bz2";
sha256 = "895bf586092535efb2bc723ba599c71a027768115e56052f111fc8bb148db925";
sha256 = "06s8gzcxxh06zp1586kp4bxaj8yj5i9jacwg0nizbmmnx94mg1wr";
};
buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutil bison xcbutilwm

View file

@ -1,24 +0,0 @@
source $stdenv/setup
postUnpack() {
cd $sourceRoot
cat >> config.mk << EOF
PREFIX=
DESTDIR=${out}
CFLAGS = -DVERSION=\\"\${VERSION}\\"
LDFLAGS = -lm -lX11 -lixp
AWKPATH=${gawk}/bin/gawk
CONFPREFIX = /etc
MANPREFIX = /share/man
EOF
cd ..
}
postUnpack=postUnpack
genericBuild

View file

@ -44,7 +44,9 @@
# the default download location for Cabal packages is Hackage,
# you still have to specify the checksum
src = fetchurl {
url = "http://hackage.haskell.org/packages/archive/${self.pname}/${self.version}/${self.fname}.tar.gz";
# cannot use mirrors system because of subtly different directory structures
urls = ["http://hackage.haskell.org/packages/archive/${self.pname}/${self.version}/${self.fname}.tar.gz"
"http://hdiff.luite.com/packages/archive/${self.pname}/${self.fname}.tar.gz"];
inherit (self) sha256;
};

View file

@ -248,8 +248,6 @@ rec {
];
postgresql = [
http://ftp2.nl.postgresql.org/
ftp://ftp.nl.postgresql.org/pub/mirror/postgresql/
ftp://ftp.postgresql.org/pub/
ftp://ftp-archives.postgresql.org/pub/
];

View file

@ -3,3 +3,7 @@ SF_redirect () {
process 'http://[a-z]+[.]dl[.]sourceforge[.]net/' 'mirror://sourceforge/'
process '[?].*' ''
}
SF_version_dir () {
version_link 'http://sourceforge.net/.+/[0-9.]+/$'
}

View file

@ -82,20 +82,32 @@ version () {
}
ensure_version () {
echo "Ensuring version. CURRENT_VERSION: $CURRENT_VERSION" >&2
[ -z "$CURRENT_VERSION" ] && version '.*-([0-9.]+)[-._].*' '\1'
}
ensure_target () {
[ -z "$CURRENT_TARGET" ] && target default.nix
echo "Ensuring target. CURRENT_TARGET: $CURRENT_TARGET" >&2
[ -z "$CURRENT_TARGET" ] && target "$(basename "$CONFIG_NAME" .upstream).nix"
}
ensure_name () {
echo "Ensuring name. CURRENT_NAME: $CURRENT_NAME" >&2
[ -z "$CURRENT_NAME" ] && name "$(basename "$CONFIG_DIR")"
echo "Resulting name: $CURRENT_NAME"
}
ensure_attribute_name () {
echo "Ensuring attribute name. CURRENT_ATTRIBUTE_NAME: $CURRENT_ATTRIBUTE_NAME" >&2
[ -z "$CURRENT_ATTRIBUTE_NAME" ] && attribute_name "$CURRENT_NAME"
echo "Resulting attribute name: $CURRENT_ATTRIBUTE_NAME"
}
ensure_choice () {
[ -n "NEED_TO_CHOOSE_URL" ] && {
echo "Ensuring that choice is made." >&2
echo "NEED_TO_CHOOSE_URL: [$NEED_TO_CHOOSE_URL]." >&2
echo "CURRENT_URL: $CURRENT_URL" >&2
[ -n "$NEED_TO_CHOOSE_URL" ] && {
version_link '[.]tar[.]([^./])+$'
unset NEED_TO_CHOOSE_URL
}
@ -106,16 +118,28 @@ ensure_choice () {
}
}
ensure_hash () {
echo "Ensuring hash. CURRENT_HASH: $CURRENT_HASH" >&2
[ -z "$CURRENT_HASH" ] && hash
}
hash () {
CURRENT_HASH="$(nix-prefetch-url "$CURRENT_URL")"
echo "CURRENT_HASH: $CURRENT_HASH" >&2
}
name () {
CURRENT_NAME="$1"
echo "CURRENT_NAME: $CURRENT_NAME" >&2
}
attribute_name () {
CURRENT_ATTRIBUTE_NAME="$1"
echo "CURRENT_ATTRIBUTE_NAME: $CURRENT_ATTRIBUTE_NAME" >&2
}
retrieve_version () {
PACKAGED_VERSION="$(nix-instantiate --eval-only '<nixpkgs>' -A "$CURRENT_NAME".meta.version | xargs)"
PACKAGED_VERSION="$(nix-instantiate --eval-only '<nixpkgs>' -A "$CURRENT_ATTRIBUTE_NAME".meta.version | xargs)"
}
directory_of () {
@ -128,7 +152,6 @@ full_path () {
target () {
CURRENT_TARGET="$1"
test -e "$CURRENT_TARGET" ||
{ [ "$CURRENT_TARGET" = "${CURRENT_TARGET#/}" ] && CURRENT_TARGET="$CONFIG_DIR/$CURRENT_TARGET"; }
echo "Target set to: $CURRENT_TARGET"
}
@ -146,7 +169,7 @@ do_write_expression () {
echo "${1}rec {"
echo "${1} baseName=\"$CURRENT_NAME\";"
echo "${1} version=\"$CURRENT_VERSION\";"
echo "${1} name=\"$CURRENT_NAME-$CURRENT_VERSION\";"
echo "${1} name=\"\${baseName}-\${version}\";"
echo "${1} hash=\"$CURRENT_HASH\";"
echo "${1} url=\"$CURRENT_URL\";"
echo "${1} sha256=\"$CURRENT_HASH\";"
@ -166,6 +189,12 @@ replace_once () {
replacement="$3"
instance="${4:-1}"
echo "Replacing once:"
echo "file: [[$file]]"
echo "regexp: [[$regexp]]"
echo "replacement: [[$replacement]]"
echo "instance: [[$instance]]"
position="$(line_position "$file" "$regexp" "$instance")"
sed -re "${position}s $regexp $replacement " -i "$file"
}
@ -180,7 +209,7 @@ set_var_value () {
quote='"'
let "$no_quotes" && quote=""
replace_once "$file" "${var} *= *.*" "${var} = ${quote}${value}${quote};"
replace_once "$file" "${var} *= *.*" "${var} = ${quote}${value}${quote};" "$instance"
}
do_regenerate () {
@ -196,16 +225,18 @@ do_regenerate () {
}
do_overwrite () {
hash
ensure_hash
do_regenerate "$1" > "$1.new.tmp"
mv "$1.new.tmp" "$1"
}
process_config () {
CONFIG_DIR="$(directory_of "$1")"
CONFIG_NAME="$(basename "$1")"
BEGIN_EXPRESSION='# Generated upstream information';
source "$CONFIG_DIR/$(basename "$1")"
source "$CONFIG_DIR/$CONFIG_NAME"
ensure_name
ensure_attribute_name
retrieve_version
ensure_choice
ensure_version

View file

@ -11,4 +11,4 @@ echo "URL: $url" >&2
curl -L -k "$url" | sed -re 's/^/-/;s/[hH][rR][eE][fF]="([^"]*)"/\n+\1\n-/g' | \
sed -e '/^-/d; s/^[+]//; /^#/d;'"s/^\\//$protocol:\\/\\/$server\\//g" | \
sed -re 's~^[^:]*$~'"$protocol://$basepath/&~"
sed -re 's`^[^:]*$`'"$protocol://$basepath/&\`"

View file

@ -1,5 +1,5 @@
use strict;
use Dpkg::Cdata;
use Dpkg::Control;
use Dpkg::Deps;
use File::Basename;
@ -7,6 +7,7 @@ my $packagesFile = shift @ARGV;
my $urlPrefix = shift @ARGV;
my @toplevelPkgs = @ARGV;
my %packages;
@ -14,10 +15,10 @@ my %packages;
open PACKAGES, "<$packagesFile" or die;
while (1) {
my $cdata = parsecdata(\*PACKAGES, $packagesFile);
last unless defined $cdata;
#print $cdata->{Package}, "\n";
my $cdata = Dpkg::Control->new(type => CTRL_INFO_PKG);
last if not $cdata->parse(\*PACKAGES, $packagesFile);
die unless defined $cdata->{Package};
#print STDERR $cdata->{Package}, "\n";
$packages{$cdata->{Package}} = $cdata;
}
@ -50,7 +51,7 @@ my %provides;
foreach my $cdata (values %packages) {
next unless defined $cdata->{Provides};
my @provides = getDeps(Dpkg::Deps::parse($cdata->{Provides}));
my @provides = getDeps(Dpkg::Deps::deps_parse($cdata->{Provides}));
foreach my $name (@provides) {
#die "conflicting provide: $name\n" if defined $provides{$name};
#warn "provide by $cdata->{Package} conflicts with package with the same name: $name\n";
@ -83,7 +84,7 @@ sub closePackage {
$donePkgs{$pkgName} = 1;
if (defined $cdata->{Provides}) {
foreach my $name (getDeps(Dpkg::Deps::parse($cdata->{Provides}))) {
foreach my $name (getDeps(Dpkg::Deps::deps_parse($cdata->{Provides}))) {
$provides{$name} = $cdata->{Package};
}
}
@ -92,14 +93,14 @@ sub closePackage {
if (defined $cdata->{Depends}) {
print STDERR " $pkgName: $cdata->{Depends}\n";
my $deps = Dpkg::Deps::parse($cdata->{Depends});
my $deps = Dpkg::Deps::deps_parse($cdata->{Depends});
die unless defined $deps;
push @depNames, getDeps($deps);
}
if (defined $cdata->{'Pre-Depends'}) {
print STDERR " $pkgName: $cdata->{'Pre-Depends'}\n";
my $deps = Dpkg::Deps::parse($cdata->{'Pre-Depends'});
my $deps = Dpkg::Deps::deps_parse($cdata->{'Pre-Depends'});
die unless defined $deps;
push @depNames, getDeps($deps);
}

View file

@ -3,7 +3,7 @@
, img ? "bzImage"
, rootModules ?
[ "cifs" "virtio_net" "virtio_pci" "virtio_blk" "virtio_balloon" "nls_utf8" "ext2" "ext3"
"unix" "hmac" "md4" "ecb" "des_generic"
"ext4" "unix" "hmac" "md4" "ecb" "des_generic"
]
}:
@ -38,35 +38,19 @@ rec {
# Copy what we need from Glibc.
cp -p ${pkgs.stdenv.glibc}/lib/ld-linux*.so.? $out/lib
cp -p ${pkgs.stdenv.glibc}/lib/libc.so.* $out/lib
cp -p ${pkgs.stdenv.glibc}/lib/librt.so.* $out/lib
cp -p ${pkgs.stdenv.glibc}/lib/libdl.so.* $out/lib
cp -p ${pkgs.stdenv.glibc}/lib/libm.so.* $out/lib
# Copy some utillinux stuff.
cp ${utillinux}/bin/mount ${utillinux}/bin/umount $out/bin
cp -pd ${utillinux}/lib/libblkid*.so.* $out/lib
cp -pd ${utillinux}/lib/libuuid*.so.* $out/lib
# Copy some coreutils.
cp ${coreutils}/bin/basename $out/bin
cp ${coreutils}/bin/mkdir $out/bin
cp ${coreutils}/bin/mknod $out/bin
cp ${coreutils}/bin/cat $out/bin
cp ${coreutils}/bin/chroot $out/bin
cp ${coreutils}/bin/sleep $out/bin
cp ${coreutils}/bin/ln $out/bin
# Copy some other tools.
cp ${bash}/bin/bash $out/bin
cp ${module_init_tools}/sbin/insmod $out/bin/insmod
cp ${nettools}/sbin/ifconfig $out/bin
cp ${sysvinit}/sbin/halt $out/bin
# Copy BusyBox.
cp -pd ${pkgs.busybox}/bin/* ${pkgs.busybox}/sbin/* $out/bin
# Run patchelf to make the programs refer to the copied libraries.
for i in $out/bin/* $out/lib/*; do if ! test -L $i; then nuke-refs $i; fi; done
for i in $out/bin/*; do
if [ -f "$i" -a ! -L "$i" ]; then
echo "patching $i..."
patchelf --set-interpreter $out/lib/ld-linux*.so.? --set-rpath $out/lib $i || true
fi
done
''; # */
@ -84,8 +68,7 @@ rec {
stage1Init = writeScript "vm-run-stage1" ''
#! ${initrdUtils}/bin/bash -e
echo START
#! ${initrdUtils}/bin/ash -e
export PATH=${initrdUtils}/bin
@ -167,8 +150,7 @@ rec {
mount -o remount,ro dummy /fs
echo DONE
halt -d -p -f
poweroff -f
'';
@ -761,7 +743,7 @@ rec {
debClosureGenerator =
{name, packagesLists, urlPrefix, packages}:
runCommand "${name}.nix" {} ''
runCommand "${name}.nix" { buildInputs = [ perl dpkg ]; } ''
for i in ${toString packagesLists}; do
echo "adding $i..."
bunzip2 < $i >> ./Packages
@ -770,7 +752,7 @@ rec {
# Work around this bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=452279
sed -i ./Packages -e s/x86_64-linux-gnu/x86-64-linux-gnu/g
${perl}/bin/perl -I${dpkg} -w ${deb/deb-closure.pl} \
perl -w ${deb/deb-closure.pl} \
./Packages ${urlPrefix} ${toString packages} > $out
'';
@ -1306,6 +1288,40 @@ rec {
packages = commonDebPackages ++ [ "diffutils" ];
};
ubuntu1210i386 = {
name = "ubuntu-12.10-quantal-i386";
fullName = "Ubuntu 12.10 Quantal (i386)";
packagesLists =
[ (fetchurl {
url = mirror://ubuntu/dists/quantal/main/binary-i386/Packages.bz2;
sha256 = "bee3200ac8f037700ccd2311fb8b0de665bd02d46bdb2ae946cf50c5885001c3";
})
(fetchurl {
url = mirror://ubuntu/dists/quantal/universe/binary-i386/Packages.bz2;
sha256 = "323036e81c8bf409f71d3bc5cf37cfba72fe1d0fc82e9b5418d4d0cb516646e1";
})
];
urlPrefix = mirror://ubuntu;
packages = commonDebPackages ++ [ "diffutils" ];
};
ubuntu1210x86_64 = {
name = "ubuntu-12.10-quantal-amd64";
fullName = "Ubuntu 12.10 Quantal (amd64)";
packagesList =
[ (fetchurl {
url = mirror://ubuntu/dists/quantal/main/binary-amd64/Packages.bz2;
sha256 = "ef14073f335ef118ebe1c7d45f5a0c17ef28f72abb57c10b9082ab5e04b5d003";
})
(fetchurl {
url = mirror://ubuntu/dists/quantal/universe/binary-amd64/Packages.bz2;
sha256 = "c762bd4ed063326577a62ff783cf9720e772b03d4a2aa38048918ee6287b96ce";
})
];
urlPrefix = mirror://ubuntu;
packages = commonDebPackages ++ [ "diffutils" ];
};
debian40i386 = {
name = "debian-4.0r9-etch-i386";
fullName = "Debian 4.0r9 Etch (i386)";
@ -1351,22 +1367,22 @@ rec {
};
debian60i386 = {
name = "debian-6.0.4-squeeze-i386";
fullName = "Debian 6.0.4 Squeeze (i386)";
name = "debian-6.0.6-squeeze-i386";
fullName = "Debian 6.0.6 Squeeze (i386)";
packagesList = fetchurl {
url = mirror://debian/dists/squeeze/main/binary-i386/Packages.bz2;
sha256 = "1aih4n1iz4gzzm5cy1j14mpx8i25jj1237994j33k7dm0gnqgr2w";
sha256 = "18c0473jacd877nkky1x21dkmp4992d8qra6wj07sq0yz5gdc9c4";
};
urlPrefix = mirror://debian;
packages = commonDebianPackages;
};
debian60x86_64 = {
name = "debian-6.0.4-squeeze-amd64";
fullName = "Debian 6.0.4 Squeeze (amd64)";
name = "debian-6.0.6-squeeze-amd64";
fullName = "Debian 6.0.6 Squeeze (amd64)";
packagesList = fetchurl {
url = mirror://debian/dists/squeeze/main/binary-amd64/Packages.bz2;
sha256 = "1gb3im7kl8dwd7z82xj4wb5g58r86fjj8cirvq0ssrvcm9bqaiz7";
sha256 = "1n1h3pz6axcaraxq8gfzq0jywlpdrqand1dnd4q79dy6cl788bi2";
};
urlPrefix = mirror://debian;
packages = commonDebianPackages;

View file

@ -1,5 +0,0 @@
{fetchurl, ...} :
fetchurl {
url = http://www.kde-look.org/CONTENT/content-files/58501-green.tar.gz;
sha256 = "0sdykpziij1f3w4braq8r8nqg4lnsd7i7gi1k5d7c31m2q3b9a7r";
}

View file

@ -1,5 +0,0 @@
{fetchurl, ...}:
fetchurl {
url = http://dev.gentoo.org/~spock/repos/bootsplash/Theme-GNU.tar.bz2;
sha256 = "1pj91nxvwjphc8r6idl4ih3ldyk34j1w9c4p8gzmwnwg3w34xha0";
}

View file

@ -1,10 +0,0 @@
{ kde, cmake, smokeqt, perl }:
kde {
buildInputs = [ smokeqt perl ];
buildNativeInputs = [ cmake ];
meta = {
description = "Perl bindings for Qt library";
};
}

View file

@ -1,10 +0,0 @@
{ kde, kdelibs, smokeqt }:
kde {
propagatedBuildInputs = [ kdelibs smokeqt ];
meta = {
description = "C++ parser used to generate language bindings for Qt/KDE";
license = "GPLv2";
};
}

View file

@ -1,60 +0,0 @@
--- a/kget/CMakeLists.txt 2010-08-16 19:08:36.000000000 +0400
+++ b/kget/CMakeLists.txt 2010-08-16 22:04:24.000000000 +0400
@@ -53,21 +53,20 @@
add_subdirectory(desktop)
add_subdirectory(plasma)
-# find kworkspace library to allow the shutdown after downloads completed option
-find_library(KDE4_KWORKSPACE_LIBRARY NAMES kworkspace PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
-if(KDE4_KWORKSPACE_LIBRARY)
- set(KDE4_KWORKSPACE_LIBS ${kworkspace_LIB_DEPENDS} ${KDE4_KWORKSPACE_LIBRARY})
+macro_optional_find_package(KDE4Workspace)
+macro_log_feature(KDE4WORKSPACE_FOUND "KDE4Workspace" "KDE4 workspace libraries, part of kdebase-workspace" "http://www.kde.org" FALSE "" "Allows 'shutdown after downloads completed' in kget")
+if(KDE4WORKSPACE_FOUND)
add_definitions(-DHAVE_KWORKSPACE)
- set(KWORKSPACE_FOUND true)
-endif(KDE4_KWORKSPACE_LIBRARY)
+ include_directories(${KDE4WORKSPACE_INCLUDE_DIR})
+endif(KDE4WORKSPACE_FOUND)
# find libkonq to allow actions and open with options in the context menu of a transfer
-find_library(KDE4_KONQUEROR_LIBRARY NAMES konq PATHS ${KDE4_LIB_INSTALL_DIR} NO_DEFAULT_PATH )
-if(KDE4_KONQUEROR_LIBRARY)
- set(KDE4_KONQUEROR_LIBS ${konq_LIB_DEPENDS} ${KDE4_KONQUEROR_LIBRARY})
+macro_optional_find_package(LibKonq)
+macro_log_feature(LIBKONQ_FOUND "libkonq" "KDE4 Konqueror library" "http://www.kde.org" FALSE "" "Needed to build actions and open with options in the context menu of a transfer")
+if(LIBKONQ_FOUND)
add_definitions(-DHAVE_KONQUEROR)
- set(KONQUEROR_FOUND true)
-endif(KDE4_KONQUEROR_LIBRARY)
+ include_directories(${LIBKONQ_INCLUDE_DIR})
+endif(LIBKONQ_FOUND)
include_directories(
@@ -142,9 +141,9 @@
target_link_libraries(kgetcore ${KDE4_KIO_LIBS})
-if (KWORKSPACE_FOUND)
- target_link_libraries(kgetcore ${KDE4_KWORKSPACE_LIBS})
-endif (KWORKSPACE_FOUND)
+if (KDE4WORKSPACE_FOUND)
+ target_link_libraries(kgetcore ${KDE4WORKSPACE_KWORKSPACE_LIBS})
+endif (KDE4WORKSPACE_FOUND)
if (HAVE_NEPOMUK)
target_link_libraries(kgetcore ${SOPRANO_LIBRARIES} ${NEPOMUK_LIBRARIES})
@@ -294,9 +293,9 @@
target_link_libraries(kget ${SOPRANO_LIBRARIES} ${NEPOMUK_LIBRARIES})
endif (HAVE_NEPOMUK)
-if (KONQUEROR_FOUND)
- target_link_libraries(kget ${KDE4_KONQUEROR_LIBS})
-endif (KONQUEROR_FOUND)
+if (LIBKONQ_FOUND)
+ target_link_libraries(kget ${LIBKONQ_LIBRARY})
+endif (LIBKONQ_FOUND)
if (QGPGME_FOUND)
target_link_libraries(kget ${QGPGME_LIBRARIES})

View file

@ -1,39 +0,0 @@
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index 63cdef8..0c5b50a 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -3,22 +3,30 @@ if( UNIX )
add_subdirectory(cervisia)
endif()
endif( UNIX )
-add_subdirectory(kapptemplate)
+if(BUILD_kapptemplate)
+ add_subdirectory(kapptemplate)
+endif()
if(BUILD_kbugbuster)
add_subdirectory(kbugbuster)
endif()
if(BUILD_kcachegrind)
add_subdirectory(kcachegrind)
endif()
-add_subdirectory(kmtrace)
+if(BUILD_kmtrace)
+ add_subdirectory(kmtrace)
+endif()
if(BUILD_kompare)
add_subdirectory(kompare)
endif()
if(BUILD_lokalize)
add_subdirectory(lokalize)
endif()
-add_subdirectory(poxml)
-add_subdirectory(scripts)
+if(BUILD_poxml)
+ add_subdirectory(poxml)
+endif()
+if(BUILD_scripts)
+ add_subdirectory(scripts)
+endif()
if(LIBXSLT_FOUND AND LIBXML2_FOUND)
if(BUILD_umbrello)

View file

@ -1,29 +0,0 @@
{ stdenv, fetchurl, cmake, kdelibs, qt4, automoc4, phonon, libkexiv2
, libkdcraw, libkipi, gettext, libxml2, libxslt, qjson, qca2
, kdepimlibs }:
stdenv.mkDerivation rec {
name = "kipi-plugins-1.9.0";
src = fetchurl {
url = "mirror://sourceforge/kipi/${name}.tar.bz2";
sha256 = "0k4k9v1rj7129n0s0i5pvv4rabx0prxqs6sca642fj95cxc6c96m";
};
buildInputs =
# Some dependencies are missing because they are very big (OpenCV,
# GTK).
[ cmake kdelibs qt4 automoc4 phonon libkexiv2 libkdcraw libkipi
gettext libxml2 libxslt qjson qca2 kdepimlibs
];
enableParallelBuilding = true;
meta = {
description = "Photo Management Program";
license = "GPL";
homepage = http://www.kipi-plugins.org;
inherit (kdelibs.meta) platforms;
maintainers = with stdenv.lib.maintainers; [ viric urkud ];
};
}

View file

@ -16,69 +16,85 @@
-->
<sdk:sdk-addon xmlns:sdk="http://schemas.android.com/sdk/android/addon/5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<sdk:license id="android-sdk-license" type="text">This is the Android Software Development Kit License Agreement.
<sdk:license id="android-sdk-license" type="text">Terms and Conditions
This is the Android Software Development Kit License Agreement.
1. Introduction
1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
1.2 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
1.1 The Android Software Development Kit (referred to in this License Agreement as the &quot;SDK&quot; and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
1.2 &quot;Android&quot; means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
1.3 &quot;Google&quot; means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
2. Accepting this License Agreement
2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement.
2.2 You can accept this License Agreement by:
2.2 By clicking to accept, you hereby agree to the terms of this License Agreement.
(A) clicking to accept or agree to this License Agreement, where this option is made available to you; or
2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
(B) by actually using the SDK. In this case, you agree that use of the SDK constitutes acceptance of the Licensing Agreement from that point onwards.
2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
2.3 You may not use the SDK and may not accept the Licensing Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the Licensing Agreement or use the SDK on behalf of your employer or other entity.
3. SDK License from Google
3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform.
3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. &quot;Intellectual Property Rights&quot; means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
3.3 Except to the extent required by applicable third party licenses, you may not copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK. Except to the extent required by applicable third party licenses, you may not load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
3.4 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK.
3.5 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
3.6 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
3.7 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
4. Use of the SDK by You
4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, your must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through the Android platform and/or applications for the Android platform, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
5. Your Developer Credentials
5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
6. Privacy and Information
6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
7. Third Party Applications for the Android Platform
7. Third Party Applications
7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
@ -86,55 +102,65 @@
7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties.
8. Using Android APIs
8.1 Google Data APIs
8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
9. Terminating this License Agreement
9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below.
9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
9.3 Google may at any time, terminate this License Agreement with you if:
(A) you have breached any provision of this License Agreement; or
(B) Google is required to do so by law; or
(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
(D) Google decides to no longer providing the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
10. DISCLAIMER OF WARRANTIES
10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED &quot;AS IS&quot; AND &quot;AS AVAILABLE&quot; WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
11. LIMITATION OF LIABILITY
11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
12. Indemnification
12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement.
13. Changes to the License Agreement
13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
14. General Legal Terms
14.1 This License Agreement constitute the whole legal agreement between you and Google and govern your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replace any prior agreements between you and Google in relation to the SDK.
14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
@ -148,7 +174,7 @@
14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
April 10, 2009
November 13, 2012
</sdk:license>
<sdk:license id="android-googletv-license" type="text">Terms and Conditions
@ -157,9 +183,9 @@ This is the Google TV Add-on for the Android Software Development Kit License Ag
1. Introduction
1.1 The Google TV Add-on for the Android Software Development Kit (referred to in this License Agreement as the "Google TV Add-on" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the Google TV Add-on.
1.1 The Google TV Add-on for the Android Software Development Kit (referred to in this License Agreement as the &quot;Google TV Add-on&quot; and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the Google TV Add-on.
1.2 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
1.2 &quot;Google&quot; means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
2. Accepting this License Agreement
@ -179,7 +205,7 @@ This is the Google TV Add-on for the Android Software Development Kit License Ag
3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non- assignable and non-exclusive license to use the Google TV Add-on solely to develop applications to run on the Google TV platform.
3.2 You agree that Google or third parties own all legal right, title and interest in and to the Google TV Add-on, including any Intellectual Property Rights that subsist in the Google TV Add-on. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
3.2 You agree that Google or third parties own all legal right, title and interest in and to the Google TV Add-on, including any Intellectual Property Rights that subsist in the Google TV Add-on. &quot;Intellectual Property Rights&quot; means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
3.3 Except to the extent required by applicable third party licenses, you may not copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the Google TV Add-on or any part of the Google TV Add-on. Except to the extent required by applicable third party licenses, you may not load any part of the Google TV Add-on onto a mobile handset, television, or any other hardware device except a personal computer, combine any part of the Google TV Add-on with other software, or distribute any software or device incorporating a part of the Google TV Add-on.
@ -257,7 +283,7 @@ This is the Google TV Add-on for the Android Software Development Kit License Ag
10. DISCLAIMER OF WARRANTIES
10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE GOOGLE TV ADD-ON IS AT YOUR SOLE RISK AND THAT THE GOOGLE TV ADD-ON IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE GOOGLE TV ADD-ON IS AT YOUR SOLE RISK AND THAT THE GOOGLE TV ADD-ON IS PROVIDED &quot;AS IS&quot; AND &quot;AS AVAILABLE&quot; WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
10.2 YOUR USE OF THE GOOGLE TV ADD-ON AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE GOOGLE TV ADD-ON IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
@ -704,11 +730,41 @@ August 15, 2011
<sdk:libs/>
</sdk:add-on>
<sdk:add-on>
<!-- Generated at Mon Nov 12 17:15:51 2012 from git_jb-mr1-dev @ 526865 -->
<sdk:vendor-id>google</sdk:vendor-id>
<sdk:vendor-display>Google Inc.</sdk:vendor-display>
<sdk:name-id>google_apis</sdk:name-id>
<sdk:name-display>Google APIs</sdk:name-display>
<sdk:description>Android + Google APIs</sdk:description>
<sdk:api-level>17</sdk:api-level>
<sdk:revision>1</sdk:revision>
<sdk:libs>
<sdk:lib>
<sdk:name>com.google.android.maps</sdk:name>
</sdk:lib>
<sdk:lib>
<sdk:name>com.android.future.usb.accessory</sdk:name>
</sdk:lib>
<sdk:lib>
<sdk:name>com.google.android.media.effects</sdk:name>
</sdk:lib>
</sdk:libs>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>132568033</sdk:size>
<sdk:checksum type="sha1">62cb086f11e15713878c8834d58ef1a2454c19a4</sdk:checksum>
<sdk:url>google_apis-17_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:add-on>
<!-- EXTRAS VENDOR=ANDROID ........................ -->
<sdk:extra>
<!-- Generated at Thu Aug 9 13:20:52 2012 from git_jb-dev @ 416700 -->
<sdk:revision>10</sdk:revision>
<!-- Generated at Mon Nov 12 17:16:25 2012 from git_jb-mr1-dev @ 526865 -->
<sdk:revision>11</sdk:revision>
<sdk:vendor-display>Android</sdk:vendor-display>
<sdk:vendor-id>android</sdk:vendor-id>
<sdk:name-display>Android Support Library</sdk:name-display>
@ -716,11 +772,12 @@ August 15, 2011
<sdk:old-paths>compatibility</sdk:old-paths>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>1161015</sdk:size>
<sdk:checksum type="sha1">7c62e542d46ac3bdb89e1b90503d6afae557cf7d</sdk:checksum>
<sdk:url>support_r10.zip</sdk:url>
<sdk:size>1264808</sdk:size>
<sdk:checksum type="sha1">d30d182d8e4c86bb4464c03a83ccffce7bc84ecd</sdk:checksum>
<sdk:url>support_r11.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:extra>
<!-- EXTRAS VENDOR=GOOGLE ....................... -->
@ -768,15 +825,15 @@ August 15, 2011
<sdk:vendor-display>Google Inc.</sdk:vendor-display>
<sdk:name-display>Google Play services</sdk:name-display>
<sdk:path>google_play_services</sdk:path>
<sdk:revision>1</sdk:revision>
<sdk:revision>4</sdk:revision>
<sdk:description>Google Play Services client library and sample code</sdk:description>
<sdk:desc-url>https://developers.google.com/android/google-play-services/index</sdk:desc-url>
<sdk:uses-license ref="android-sdk-license"/>
<sdk:archives>
<sdk:archive os="any">
<sdk:size>363692</sdk:size>
<sdk:checksum type="sha1">b1808a7d5f91a3ed42839b950fd254c60e9328f1</sdk:checksum>
<sdk:url>google_play_services_1013.zip</sdk:url>
<sdk:size>3732458</sdk:size>
<sdk:checksum type="sha1">bbb3d11225fcf60a0bae75afa2c4737010468bf6</sdk:checksum>
<sdk:url>google_play_services_2012110_r04.zip</sdk:url>
</sdk:archive>
</sdk:archives>
</sdk:extra>
@ -806,14 +863,14 @@ August 15, 2011
<sdk:name-display>Google Play Billing Library</sdk:name-display>
<sdk:path>play_billing</sdk:path>
<sdk:old-paths>market_billing</sdk:old-paths>
<sdk:revision>2</sdk:revision>
<sdk:description>Google Play Billing sample code</sdk:description>
<sdk:desc-url>http://developer.android.com/guide/market/billing/index.html</sdk:desc-url>
<sdk:revision>3</sdk:revision>
<sdk:description>Google Play Billing files and sample code</sdk:description>
<sdk:desc-url>http://developer.android.com/google/play/billing/index.html</sdk:desc-url>
<sdk:archives>
<sdk:archive os="any">
<sdk:size>55191</sdk:size>
<sdk:checksum type="sha1">3c84c05c60a9cabb578cebce0515860be7ad23d2</sdk:checksum>
<sdk:url>market_billing_r02.zip</sdk:url>
<sdk:size>435718</sdk:size>
<sdk:checksum type="sha1">a133d454c992ef2a18e62fa810e8185f1be4b054</sdk:checksum>
<sdk:url>play_billing_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>

View file

@ -182,5 +182,17 @@ in
};
};
google_apis_17 = buildGoogleApis {
name = "google_apis-17";
src = fetchurl {
url = https://dl-ssl.google.com/android/repository/google_apis-17_r01.zip;
sha1 = "62cb086f11e15713878c8834d58ef1a2454c19a4";
};
meta = {
description = "Android + Google APIs";
};
};
}

View file

@ -2,22 +2,22 @@
, platformTools, support, platforms, sysimages, addons
, zlib_32bit
, libX11_32bit, libxcb_32bit, libXau_32bit, libXdmcp_32bit, libXext_32bit
, libX11, libXext, libXrender
, libX11, libXext, libXrender, libxcb, libXau, libXdmcp
, freetype, fontconfig, gtk, atk
}:
{platformVersions, useGoogleAPIs}:
stdenv.mkDerivation {
name = "android-sdk-20.0.3";
name = "android-sdk-21";
src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux")
then fetchurl {
url = http://dl.google.com/android/android-sdk_r20.0.3-linux.tgz;
sha256 = "0xfb41xsjaf7n6b9gsrxm24jwg2fi1hzn73y69rlqm55bw1vxhc1";
url = http://dl.google.com/android/android-sdk_r21-linux.tgz;
md5 = "7f8d73b629f808cdcfc9f9900bbd7580";
}
else if stdenv.system == "x86_64-darwin" then fetchurl {
url = http://dl.google.com/android/android-sdk_r20.0.3-macosx.zip;
sha256 = "0eecaa04950d5c540f36ab4183a4cbaef3ae6a7434467bfc32febaeb796a8ff2";
url = http://dl.google.com/android/android-sdk_r21-macosx.zip;
md5 = "67e46adca90dd18d7291443f6c15d6af";
}
else throw "platform not ${stdenv.system} supported!";
@ -32,12 +32,22 @@ stdenv.mkDerivation {
''
# There are a number of native binaries. We must patch them to let them find the interpreter and libstdc++
for i in dmtracedump emulator emulator-arm emulator-x86 hprof-conv mksdcard sqlite3
for i in dmtracedump emulator emulator-arm emulator-mips emulator-x86 hprof-conv mksdcard sqlite3
do
patchelf --set-interpreter ${stdenv_32bit.gcc.libc}/lib/ld-linux.so.2 $i
patchelf --set-rpath ${stdenv_32bit.gcc.gcc}/lib $i
done
${stdenv.lib.optionalString (stdenv.system == "x86_64-linux") ''
# We must also patch the 64-bit emulator instances, if needed
for i in emulator64-arm emulator64-mips emulator64-x86
do
patchelf --set-interpreter ${stdenv.gcc.libc}/lib/ld-linux-x86-64.so.2 $i
patchelf --set-rpath ${stdenv.gcc.gcc}/lib64 $i
done
''}
# These tools also need zlib in addition to libstdc++
for i in etc1tool zipalign
@ -48,11 +58,19 @@ stdenv.mkDerivation {
# The emulators need additional libraries, which are not in the RPATH => let's wrap them
for i in emulator emulator-arm emulator-x86
for i in emulator emulator-arm emulator-mips emulator-x86
do
wrapProgram `pwd`/$i \
--prefix LD_LIBRARY_PATH : `pwd`/lib:${libX11_32bit}/lib:${libxcb_32bit}/lib:${libXau_32bit}/lib:${libXdmcp_32bit}/lib:${libXext_32bit}/lib
done
${stdenv.lib.optionalString (stdenv.system == "x86_64-linux") ''
for i in emulator64-arm emulator64-mips emulator64-x86
do
wrapProgram `pwd`/$i \
--prefix LD_LIBRARY_PATH : `pwd`/lib:${libX11}/lib:${libxcb}/lib:${libXau}/lib:${libXdmcp}/lib:${libXext}/lib
done
''}
''}
patchShebangs .

View file

@ -32,7 +32,7 @@ rec {
androidsdk = import ./androidsdk.nix {
inherit (pkgs) stdenv fetchurl unzip makeWrapper;
inherit (pkgs) freetype fontconfig gtk atk;
inherit (pkgs.xorg) libX11 libXext libXrender;
inherit (pkgs.xorg) libX11 libXext libXrender libxcb libXau libXdmcp;
inherit platformTools support platforms sysimages addons;

View file

@ -1,15 +1,15 @@
{stdenv, stdenv_32bit, fetchurl, unzip, zlib, ncurses}:
stdenv.mkDerivation {
name = "android-platform-tools-r15_rc7";
name = "android-platform-tools-r16";
src = if (stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux")
then fetchurl {
url = https://dl-ssl.google.com/android/repository/platform-tools_r15_rc7-linux.zip;
sha1 = "444e12ba413341282cd810d2e4bdb49975c95758";
url = https://dl-ssl.google.com/android/repository/platform-tools_r16-linux.zip;
sha1 = "84d563ae5e324f223f335f11bf511bf6207c05fb";
}
else if stdenv.system == "x86_64-darwin" then fetchurl {
url = https://dl-ssl.google.com/android/repository/platform-tools_r15_rc7-macosx.zip;
sha1 = "974eac4afbe404278fcda8f8cd39b55c82be012d";
url = https://dl-ssl.google.com/android/repository/platform-tools_r16-macosx.zip;
sha1 = "fbb0f8d2786a83b8c3eb6df402e706e136db8fed";
}
else throw "System ${stdenv.system} not supported!";

View file

@ -194,5 +194,17 @@ in
};
};
platform_17 = buildPlatform {
name = "android-platform-4.2";
src = fetchurl {
url = https://dl-ssl.google.com/android/repository/android-17_r01.zip;
sha1 = "c2e7c8c8db40e06b804ddb1725ac2c3555b55025";
};
meta = {
description = "Android SDK Platform 4.2";
};
};
}

View file

@ -194,5 +194,17 @@ in
};
};
platform_17 = buildPlatform {
name = "android-platform-4.2";
src = fetchurl {
url = https://dl-ssl.google.com/android/repository/android-17_r01.zip;
sha1 = "c2e7c8c8db40e06b804ddb1725ac2c3555b55025";
};
meta = {
description = "Android SDK Platform 4.2";
};
};
}

View file

@ -16,69 +16,85 @@
-->
<sdk:sdk-repository xmlns:sdk="http://schemas.android.com/sdk/android/repository/7" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<sdk:license id="android-sdk-license" type="text">This is the Android Software Development Kit License Agreement.
<sdk:license id="android-sdk-license" type="text">Terms and Conditions
This is the Android Software Development Kit License Agreement.
1. Introduction
1.1 The Android Software Development Kit (referred to in this License Agreement as the "SDK" and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
1.2 "Google" means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
1.1 The Android Software Development Kit (referred to in this License Agreement as the &quot;SDK&quot; and specifically including the Android system files, packaged APIs, and Google APIs add-ons) is licensed to you subject to the terms of this License Agreement. This License Agreement forms a legally binding contract between you and Google in relation to your use of the SDK.
1.2 &quot;Android&quot; means the Android software stack for devices, as made available under the Android Open Source Project, which is located at the following URL: http://source.android.com/, as updated from time to time.
1.3 &quot;Google&quot; means Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.
2. Accepting this License Agreement
2.1 In order to use the SDK, you must first agree to this License Agreement. You may not use the SDK if you do not accept this License Agreement.
2.2 You can accept this License Agreement by:
2.2 By clicking to accept, you hereby agree to the terms of this License Agreement.
(A) clicking to accept or agree to this License Agreement, where this option is made available to you; or
2.3 You may not use the SDK and may not accept the License Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
(B) by actually using the SDK. In this case, you agree that use of the SDK constitutes acceptance of the Licensing Agreement from that point onwards.
2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the License Agreement or use the SDK on behalf of your employer or other entity.
2.3 You may not use the SDK and may not accept the Licensing Agreement if you are a person barred from receiving the SDK under the laws of the United States or other countries including the country in which you are resident or from which you use the SDK.
2.4 If you are agreeing to be bound by this License Agreement on behalf of your employer or other entity, you represent and warrant that you have full legal authority to bind your employer or such entity to this License Agreement. If you do not have the requisite authority, you may not accept the Licensing Agreement or use the SDK on behalf of your employer or other entity.
3. SDK License from Google
3.1 Subject to the terms of this License Agreement, Google grants you a limited, worldwide, royalty-free, non-assignable and non-exclusive license to use the SDK solely to develop applications to run on the Android platform.
3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. "Intellectual Property Rights" means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
3.2 You agree that Google or third parties own all legal right, title and interest in and to the SDK, including any Intellectual Property Rights that subsist in the SDK. &quot;Intellectual Property Rights&quot; means any and all rights under patent law, copyright law, trade secret law, trademark law, and any and all other proprietary rights. Google reserves all rights not expressly granted to you.
3.3 Except to the extent required by applicable third party licenses, you may not copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK. Except to the extent required by applicable third party licenses, you may not load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
3.3 You may not use the SDK for any purpose not expressly permitted by this License Agreement. Except to the extent required by applicable third party licenses, you may not: (a) copy (except for backup purposes), modify, adapt, redistribute, decompile, reverse engineer, disassemble, or create derivative works of the SDK or any part of the SDK; or (b) load any part of the SDK onto a mobile handset or any other hardware device except a personal computer, combine any part of the SDK with other software, or distribute any software or device incorporating a part of the SDK.
3.4 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
3.4 You agree that you will not take any actions that may cause or result in the fragmentation of Android, including but not limited to distributing, participating in the creation of, or promoting in any way a software development kit derived from the SDK.
3.5 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
3.5 Use, reproduction and distribution of components of the SDK licensed under an open source software license are governed solely by the terms of that open source software license and not this License Agreement.
3.6 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
3.6 You agree that the form and nature of the SDK that Google provides may change without prior notice to you and that future versions of the SDK may be incompatible with applications developed on previous versions of the SDK. You agree that Google may stop (permanently or temporarily) providing the SDK (or any features within the SDK) to you or to users generally at Google's sole discretion, without prior notice to you.
3.7 Nothing in this License Agreement gives you a right to use any of Google's trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.
3.8 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
3.7 You agree that you will not remove, obscure, or alter any proprietary rights notices (including copyright and trademark notices) that may be affixed to or contained within the SDK.
4. Use of the SDK by You
4.1 Google agrees that it obtains no right, title or interest from you (or your licensors) under this License Agreement in or to any software applications that you develop using the SDK, including any intellectual property rights that subsist in those applications.
4.2 You agree to use the SDK and write applications only for purposes that are permitted by (a) this License Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).
4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, your must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
4.3 You agree that if you use the SDK to develop applications for general public users, you will protect the privacy and legal rights of those users. If the users provide you with user names, passwords, or other login information or personal information, you must make the users aware that the information will be available to your application, and you must provide legally adequate privacy notice and protection for those users. If your application stores personal or sensitive information provided by users, it must do so securely. If the user provides your application with Google Account information, your application may only use that information to access the user's Google Account when, and for the limited purposes for which, the user has given you permission to do so.
4.4 You agree that you will not engage in any activity with the SDK, including the development or distribution of an application, that interferes with, disrupts, damages, or accesses in an unauthorized manner the servers, networks, or other properties or services of any third party including, but not limited to, Google or any mobile communications carrier.
4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through the Android platform and/or applications for the Android platform, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
4.5 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any data, content, or resources that you create, transmit or display through Android and/or applications for Android, and for the consequences of your actions (including any loss or damage which Google may suffer) by doing so.
4.6 You agree that you are solely responsible for (and that Google has no responsibility to you or to any third party for) any breach of your obligations under this License Agreement, any applicable third party contract or Terms of Service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.
5. Your Developer Credentials
5.1 You agree that you are responsible for maintaining the confidentiality of any developer credentials that may be issued to you by Google or which you may choose yourself and that you will be solely responsible for all applications that are developed under your developer credentials.
6. Privacy and Information
6.1 In order to continually innovate and improve the SDK, Google may collect certain usage statistics from the software including but not limited to a unique identifier, associated IP address, version number of the software, and information on which tools and/or services in the SDK are being used and how they are being used. Before any of this information is collected, the SDK will notify you and seek your consent. If you withhold consent, the information will not be collected.
6.2 The data collected is examined in the aggregate to improve the SDK and is maintained in accordance with Google's Privacy Policy.
7. Third Party Applications for the Android Platform
7. Third Party Applications
7.1 If you use the SDK to run applications developed by a third party or that access data, content or resources provided by a third party, you agree that Google is not responsible for those applications, data, content, or resources. You understand that all data, content or resources which you may access through such third party applications are the sole responsibility of the person from which they originated and that Google is not liable for any loss or damage that you may experience as a result of the use or access of any of those third party applications, data, content, or resources.
@ -86,55 +102,65 @@
7.3 You acknowledge that your use of such third party applications, data, content, or resources may be subject to separate terms between you and the relevant third party. In that case, this License Agreement does not affect your legal relationship with these third parties.
8. Using Android APIs
8.1 Google Data APIs
8.1.1 If you use any API to retrieve data from Google, you acknowledge that the data may be protected by intellectual property rights which are owned by Google or those parties that provide the data (or by other persons or companies on their behalf). Your use of any such API may be subject to additional Terms of Service. You may not modify, rent, lease, loan, sell, distribute or create derivative works based on this data (either in whole or in part) unless allowed by the relevant Terms of Service.
8.1.2 If you use any API to retrieve a user's data from Google, you acknowledge and agree that you shall retrieve data only with the user's explicit consent and only when, and for the limited purposes for which, the user has given you permission to do so.
9. Terminating this License Agreement
9.1 This License Agreement will continue to apply until terminated by either you or Google as set out below.
9.2 If you want to terminate this License Agreement, you may do so by ceasing your use of the SDK and any relevant developer credentials.
9.3 Google may at any time, terminate this License Agreement with you if:
(A) you have breached any provision of this License Agreement; or
(B) Google is required to do so by law; or
(C) the partner with whom Google offered certain parts of SDK (such as APIs) to you has terminated its relationship with Google or ceased to offer certain parts of the SDK to you; or
(D) Google decides to no longer providing the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
(D) Google decides to no longer provide the SDK or certain parts of the SDK to users in the country in which you are resident or from which you use the service, or the provision of the SDK or certain SDK services to you by Google is, in Google's sole discretion, no longer commercially viable.
9.4 When this License Agreement comes to an end, all of the legal rights, obligations and liabilities that you and Google have benefited from, been subject to (or which have accrued over time whilst this License Agreement has been in force) or which are expressed to continue indefinitely, shall be unaffected by this cessation, and the provisions of paragraph 14.7 shall continue to apply to such rights, obligations and liabilities indefinitely.
10. DISCLAIMER OF WARRANTIES
10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
10.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT YOUR USE OF THE SDK IS AT YOUR SOLE RISK AND THAT THE SDK IS PROVIDED &quot;AS IS&quot; AND &quot;AS AVAILABLE&quot; WITHOUT WARRANTY OF ANY KIND FROM GOOGLE.
10.2 YOUR USE OF THE SDK AND ANY MATERIAL DOWNLOADED OR OTHERWISE OBTAINED THROUGH THE USE OF THE SDK IS AT YOUR OWN DISCRETION AND RISK AND YOU ARE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR OTHER DEVICE OR LOSS OF DATA THAT RESULTS FROM SUCH USE.
10.3 GOOGLE FURTHER EXPRESSLY DISCLAIMS ALL WARRANTIES AND CONDITIONS OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
11. LIMITATION OF LIABILITY
11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
11.1 YOU EXPRESSLY UNDERSTAND AND AGREE THAT GOOGLE, ITS SUBSIDIARIES AND AFFILIATES, AND ITS LICENSORS SHALL NOT BE LIABLE TO YOU UNDER ANY THEORY OF LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES THAT MAY BE INCURRED BY YOU, INCLUDING ANY LOSS OF DATA, WHETHER OR NOT GOOGLE OR ITS REPRESENTATIVES HAVE BEEN ADVISED OF OR SHOULD HAVE BEEN AWARE OF THE POSSIBILITY OF ANY SUCH LOSSES ARISING.
12. Indemnification
12.1 To the maximum extent permitted by law, you agree to defend, indemnify and hold harmless Google, its affiliates and their respective directors, officers, employees and agents from and against any and all claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) arising out of or accruing from (a) your use of the SDK, (b) any application you develop on the SDK that infringes any copyright, trademark, trade secret, trade dress, patent or other intellectual property right of any person or defames any person or violates their rights of publicity or privacy, and (c) any non-compliance by you with this License Agreement.
13. Changes to the License Agreement
13.1 Google may make changes to the License Agreement as it distributes new versions of the SDK. When these changes are made, Google will make a new version of the License Agreement available on the website where the SDK is made available.
14. General Legal Terms
14.1 This License Agreement constitute the whole legal agreement between you and Google and govern your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replace any prior agreements between you and Google in relation to the SDK.
14.1 This License Agreement constitutes the whole legal agreement between you and Google and governs your use of the SDK (excluding any services which Google may provide to you under a separate written agreement), and completely replaces any prior agreements between you and Google in relation to the SDK.
14.2 You agree that if Google does not exercise or enforce any legal right or remedy which is contained in this License Agreement (or which Google has the benefit of under any applicable law), this will not be taken to be a formal waiver of Google's rights and that those rights or remedies will still be available to Google.
@ -148,7 +174,7 @@
14.7 This License Agreement, and your relationship with Google under this License Agreement, shall be governed by the laws of the State of California without regard to its conflict of laws provisions. You and Google agree to submit to the exclusive jurisdiction of the courts located within the county of Santa Clara, California to resolve any legal matter arising from this License Agreement. Notwithstanding this, you agree that Google shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction.
April 10, 2009
November 13, 2012
</sdk:license>
<!-- PLATFORMS ........................ -->
@ -180,6 +206,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated manually from earlier versions -->
@ -213,6 +240,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<sdk:platform>
@ -245,6 +273,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Thu Oct 22 10:16:34 PDT 2009 using eclair-sdk 17704: Platform. Addon. Tools. Doc. -->
@ -280,6 +309,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Mon Nov 23 14:08:02 PST 2009 using eclair-release 20723: Platform. Addon. -->
@ -315,6 +345,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Thu May 6 15:57:41 PDT 2010 using eclair 35983: Platform. -->
@ -339,6 +370,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Wed Jun 30 16:13:06 PDT 2010 using froyo-release 43546: Platform. Addon. -->
@ -363,6 +395,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Thu Jan 20 09:40:59 PST 2011 using gingerbread-sdk-release 93351: Platform. -->
@ -388,6 +421,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Fri Feb 4 16:41:27 PST 2011 using gingerbread-release 101070: Platform. -->
@ -412,6 +446,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Thu Feb 17 08:41:10 PST 2011 using honeycomb 104254: Platform. -->
@ -436,6 +471,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Wed May 4 19:39:17 PDT 2011 using honeycomb-mr1 123685: Platform.
@ -462,6 +498,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- Generated on Fri Jul 15 11:50:12 PDT 2011 using honeycomb-mr2-release 140714: Platform. -->
@ -486,6 +523,7 @@ April 10, 2009
<sdk:layoutlib>
<sdk:api>4</sdk:api>
</sdk:layoutlib>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<sdk:platform>
@ -505,6 +543,7 @@ April 10, 2009
<sdk:url>android-14_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<sdk:platform>
@ -527,6 +566,7 @@ April 10, 2009
<sdk:url>android-15_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<sdk:platform>
@ -549,6 +589,30 @@ April 10, 2009
<sdk:url>android-16_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<sdk:platform>
<!-- Generated at Mon Nov 12 17:12:35 2012 from git_jb-mr1-dev @ 526865 -->
<sdk:revision>1</sdk:revision>
<sdk:description>Android SDK Platform 4.2</sdk:description>
<sdk:version>4.2</sdk:version>
<sdk:api-level>17</sdk:api-level>
<sdk:min-tools-rev>
<sdk:major>21</sdk:major>
</sdk:min-tools-rev>
<sdk:layoutlib>
<sdk:api>9</sdk:api>
<sdk:revision>1</sdk:revision>
</sdk:layoutlib>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>47886130</sdk:size>
<sdk:checksum type="sha1">c2e7c8c8db40e06b804ddb1725ac2c3555b55025</sdk:checksum>
<sdk:url>android-17_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform>
<!-- SYSTEM IMAGES ........................ -->
@ -566,6 +630,7 @@ April 10, 2009
<sdk:url>sysimg_armv7a-14_r02.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:system-image>
<sdk:system-image>
@ -581,6 +646,7 @@ April 10, 2009
<sdk:url>sysimg_armv7a-15_r02.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:system-image>
<sdk:system-image>
@ -596,6 +662,23 @@ April 10, 2009
<sdk:url>sysimg_armv7a-16_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:system-image>
<sdk:system-image>
<!-- Generated at Mon Nov 12 17:14:39 2012 from git_jb-mr1-dev @ 526865 -->
<sdk:revision>1</sdk:revision>
<sdk:description>Android SDK Platform 4.2</sdk:description>
<sdk:api-level>17</sdk:api-level>
<sdk:abi>armeabi-v7a</sdk:abi>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>116831648</sdk:size>
<sdk:checksum type="sha1">45b9344473e0a6d063c2b1fe58d8cd47d307905e</sdk:checksum>
<sdk:url>sysimg_armv7a-17_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:system-image>
<!-- SAMPLES ........................ -->
@ -615,6 +698,7 @@ April 10, 2009
<sdk:url>samples-2.1_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- Generated on Tue May 11 19:15:20 PDT 2010 using froyo 36658: Samples. -->
@ -632,6 +716,7 @@ April 10, 2009
<sdk:url>samples-2.2_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- Generated on Tue Nov 30 19:39:34 PST 2010 using gingerbread 79962: Samples. -->
@ -650,6 +735,7 @@ April 10, 2009
<sdk:url>samples-2.3_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- Generated on Tue Feb 8 17:37:15 PST 2011 using gingerbread 102121: Samples. -->
@ -667,6 +753,7 @@ April 10, 2009
<sdk:url>samples-2.3.3_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- Generated on Thu Feb 17 08:45:49 PST 2011 using honeycomb 104254: Samples. -->
@ -684,6 +771,7 @@ April 10, 2009
<sdk:url>samples-3.0_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- Generated on Wed May 4 19:49:56 PDT 2011 using honeycomb-mr1 123685: Samples. -->
@ -701,6 +789,7 @@ April 10, 2009
<sdk:url>samples-3.1_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- Generated on Fri Jul 15 11:52:24 PDT 2011 using honeycomb-mr2 142871: Samples. -->
@ -718,6 +807,7 @@ April 10, 2009
<sdk:url>samples-3.2_r01-linux.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<sdk:sample>
@ -731,6 +821,7 @@ April 10, 2009
<sdk:url>samples-14_r02.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<sdk:sample>
@ -744,6 +835,7 @@ April 10, 2009
<sdk:url>samples-15_r02.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<sdk:sample>
@ -757,132 +849,125 @@ April 10, 2009
<sdk:url>samples-16_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<sdk:sample>
<!-- Generated at Mon Nov 12 17:18:09 2012 from git_jb-mr1-dev @ 526865 -->
<sdk:revision>1</sdk:revision>
<sdk:api-level>17</sdk:api-level>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>14840030</sdk:size>
<sdk:checksum type="sha1">12d58cb26503610fc05bd7618c434cc6f983bc41</sdk:checksum>
<sdk:url>samples-17_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:sample>
<!-- PLATFORM-TOOLS ........................ -->
<sdk:platform-tool>
<!-- Generated at Thu Jul 19 18:38:34 2012 from git_jb-dev @ 407773 -->
<!-- Generated at Mon Nov 12 17:13:48 2012 from git_jb-mr1-dev @ 527242 -->
<sdk:revision>
<sdk:major>14</sdk:major>
<sdk:major>16</sdk:major>
</sdk:revision>
<sdk:archives>
<sdk:archive arch="any" os="windows">
<sdk:size>11159472</sdk:size>
<sdk:checksum type="sha1">6028258d8f2fba14d8b40c3cf507afa0289aaa13</sdk:checksum>
<sdk:url>platform-tools_r14-windows.zip</sdk:url>
<sdk:size>11938435</sdk:size>
<sdk:checksum type="sha1">0d6245b685c7d303cf4a054a3d373c4427b7ad01</sdk:checksum>
<sdk:url>platform-tools_r16-windows.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="linux">
<sdk:size>10985068</sdk:size>
<sdk:checksum type="sha1">6e2bc329c9485eb383172cbc2cde8b0c0cd1843f</sdk:checksum>
<sdk:url>platform-tools_r14-linux.zip</sdk:url>
<sdk:size>12676089</sdk:size>
<sdk:checksum type="sha1">84d563ae5e324f223f335f11bf511bf6207c05fb</sdk:checksum>
<sdk:url>platform-tools_r16-linux.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="macosx">
<sdk:size>11342461</sdk:size>
<sdk:checksum type="sha1">4a015090c6a209fc33972acdbc65745e0b3c08b9</sdk:checksum>
<sdk:url>platform-tools_r14-macosx.zip</sdk:url>
</sdk:archive>
</sdk:archives>
</sdk:platform-tool>
<sdk:platform-tool>
<!-- Generated at Wed Oct 17 15:42:13 2012 from git_jb-dev @ 505673 -->
<sdk:revision>
<sdk:major>15</sdk:major>
<sdk:preview>9</sdk:preview>
</sdk:revision>
<sdk:archives>
<sdk:archive arch="any" os="windows">
<sdk:size>11170483</sdk:size>
<sdk:checksum type="sha1">853afdf5f63aaac61dcfd016a7acb930b6dac377</sdk:checksum>
<sdk:url>platform-tools_r15_rc9-windows.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="linux">
<sdk:size>10996592</sdk:size>
<sdk:checksum type="sha1">c1aa2bc0d6f7dac7e292151ee77752bbfb10d1c5</sdk:checksum>
<sdk:url>platform-tools_r15_rc9-linux.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="macosx">
<sdk:size>11345162</sdk:size>
<sdk:checksum type="sha1">22ac626ec3526b606d358193a16df10179f1d4f5</sdk:checksum>
<sdk:url>platform-tools_r15_rc9-macosx.zip</sdk:url>
<sdk:size>13147351</sdk:size>
<sdk:checksum type="sha1">fbb0f8d2786a83b8c3eb6df402e706e136db8fed</sdk:checksum>
<sdk:url>platform-tools_r16-macosx.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:platform-tool>
<!-- TOOLS ........................ -->
<sdk:tool>
<!-- Generated at Thu Aug 9 13:16:38 2012 from git_tools_r20 @ 427395 -->
<!-- Generated at Mon Nov 12 17:07:47 2012 from git_tools_r21 @ 519525 -->
<sdk:revision>
<sdk:major>20</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>3</sdk:micro>
<sdk:major>21</sdk:major>
</sdk:revision>
<sdk:min-platform-tools-rev>
<sdk:major>12</sdk:major>
<sdk:major>16</sdk:major>
</sdk:min-platform-tools-rev>
<sdk:archives>
<sdk:archive arch="any" os="windows">
<sdk:size>90272048</sdk:size>
<sdk:checksum type="sha1">54fb94168e631e211910f88aa40c532205730dd4</sdk:checksum>
<sdk:url>tools_r20.0.3-windows.zip</sdk:url>
<sdk:size>98982670</sdk:size>
<sdk:checksum type="sha1">57bbfadcedbef44fc322e5e037666393668cf3fe</sdk:checksum>
<sdk:url>tools_r21-windows.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="linux">
<sdk:size>82723559</sdk:size>
<sdk:checksum type="sha1">09bc633b406ae81981e3a0db19426acbb01ef219</sdk:checksum>
<sdk:url>tools_r20.0.3-linux.zip</sdk:url>
<sdk:size>91495104</sdk:size>
<sdk:checksum type="sha1">013b9c04407a9d73b8bf3c574327fbe870acd264</sdk:checksum>
<sdk:url>tools_r21-linux.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="macosx">
<sdk:size>58197071</sdk:size>
<sdk:checksum type="sha1">09cee5ff3226277a6f0c07dcd29cba4ffc2e1da4</sdk:checksum>
<sdk:url>tools_r20.0.3-macosx.zip</sdk:url>
<sdk:size>65767130</sdk:size>
<sdk:checksum type="sha1">fcfa3a6932f2ed0d970a0ca959bb2b4972f7d46d</sdk:checksum>
<sdk:url>tools_r21-macosx.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:tool>
<sdk:tool>
<!-- Generated at Wed Oct 17 15:40:42 2012 from git_mirror-aosp-master @ 506320 -->
<!-- Generated at Fri Nov 30 13:45:55 2012 from git_tools_r21 @ 539280 -->
<sdk:revision>
<sdk:major>21</sdk:major>
<sdk:preview>9</sdk:preview>
<sdk:minor>0</sdk:minor>
<sdk:micro>1</sdk:micro>
<sdk:preview>1</sdk:preview>
</sdk:revision>
<sdk:min-platform-tools-rev>
<sdk:major>15</sdk:major>
<sdk:preview>9</sdk:preview>
<sdk:major>16</sdk:major>
</sdk:min-platform-tools-rev>
<sdk:archives>
<sdk:archive arch="any" os="windows">
<sdk:size>98865433</sdk:size>
<sdk:checksum type="sha1">a1379cef10f33e74061f6935fd74922b0351addb</sdk:checksum>
<sdk:url>tools_r21_rc9-windows.zip</sdk:url>
<sdk:size>98998088</sdk:size>
<sdk:checksum type="sha1">1503aaf2c91cb07c0240a2db3af0de027941a4f6</sdk:checksum>
<sdk:url>tools_r21.0.1_rc1-windows.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="linux">
<sdk:size>91377922</sdk:size>
<sdk:checksum type="sha1">dde958cb26276b632a02ca6d530506c09ce4e086</sdk:checksum>
<sdk:url>tools_r21_rc9-linux.zip</sdk:url>
<sdk:size>91510079</sdk:size>
<sdk:checksum type="sha1">183670a7f9878d8d3693d5fcf32e1357b69f0fed</sdk:checksum>
<sdk:url>tools_r21.0.1_rc1-linux.zip</sdk:url>
</sdk:archive>
<sdk:archive arch="any" os="macosx">
<sdk:size>65655657</sdk:size>
<sdk:checksum type="sha1">43803f6179707ca6bd4a37e129bcf022ebda0043</sdk:checksum>
<sdk:url>tools_r21_rc9-macosx.zip</sdk:url>
<sdk:size>65777178</sdk:size>
<sdk:checksum type="sha1">109d4f287904875f067e021be3fd1f549e6afb67</sdk:checksum>
<sdk:url>tools_r21.0.1_rc1-macosx.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:tool>
<!-- DOCS ........................ -->
<sdk:doc>
<!-- Generated at Tue Oct 9 14:08:23 2012 from git_jb-dev @ 495790 -->
<sdk:revision>3</sdk:revision>
<sdk:api-level>16</sdk:api-level>
<!-- Generated at Mon Nov 12 17:17:53 2012 from git_jb-mr1-dev @ 528390 -->
<sdk:revision>1</sdk:revision>
<sdk:api-level>17</sdk:api-level>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>164244602</sdk:size>
<sdk:checksum type="sha1">3168152f52f5edc0c85523c875c96e7431ab4545</sdk:checksum>
<sdk:url>docs-16_r03.zip</sdk:url>
<sdk:size>171564393</sdk:size>
<sdk:checksum type="sha1">fb988cdd2beaac0dd47dc630821ccc30557c67e5</sdk:checksum>
<sdk:url>docs-17_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:doc>
<!-- SOURCES ........................ -->
@ -898,6 +983,7 @@ April 10, 2009
<sdk:url>sources-14_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:source>
<sdk:source>
@ -911,6 +997,7 @@ April 10, 2009
<sdk:url>sources-15_r02.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:source>
<sdk:source>
@ -924,5 +1011,20 @@ April 10, 2009
<sdk:url>sources-16_r02.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:source>
<sdk:source>
<!-- Generated at Mon Nov 12 17:16:08 2012 from git_jb-mr1-dev @ 526865 -->
<sdk:revision>1</sdk:revision>
<sdk:api-level>17</sdk:api-level>
<sdk:archives>
<sdk:archive arch="any" os="any">
<sdk:size>18976816</sdk:size>
<sdk:checksum type="sha1">6f1f18cd2d2b1852d7f6892df9cee3823349d43a</sdk:checksum>
<sdk:url>sources-17_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:source>
</sdk:sdk-repository>

View file

@ -1,10 +1,10 @@
{stdenv, fetchurl, unzip}:
stdenv.mkDerivation {
name = "android-support";
name = "android-support-r11";
src = fetchurl {
url = https://dl-ssl.google.com/android/repository/support_r10.zip;
sha1 = "7c62e542d46ac3bdb89e1b90503d6afae557cf7d";
url = https://dl-ssl.google.com/android/repository/support_r11.zip;
sha1 = "d30d182d8e4c86bb4464c03a83ccffce7bc84ecd";
};
buildCommand = ''

View file

@ -38,5 +38,13 @@ in
};
};
sysimg_17 = buildSystemImage {
name = "armeabi-v7a-17";
src = fetchurl {
url = https://dl-ssl.google.com/android/repository/sysimg_armv7a-17_r01.zip;
sha1 = "45b9344473e0a6d063c2b1fe58d8cd47d307905e";
};
};
}

View file

@ -15,10 +15,6 @@ let
arch = "x86-linux";
sha256 = "1s00r1kszk5zhmv7m8z5q2wcqjn2gn7fbqwji3hgnsdvbb1f3jdn";
}
else if system == "i686-darwin" then fetchDist {
arch = "x86-darwin";
sha256 = "0vd3zbp5zcp0hjd3y03k595hmri8hw884brjpwjiby3jpm3l40np";
}
else throw "Unsupported platform for cmucl.";
in

View file

@ -1,47 +1,45 @@
{builderDefsPackage
{stdenv, fetchurl
, gmp, mpfr, libffi
, ...} @ x:
builderDefsPackage (a :
, noUnicode ? false,
}:
let
propagatedBuildInputs = with a; [
s = # Generated upstream information
rec {
baseName="ecl";
version="12.12.1";
name="${baseName}-${version}";
hash="15y2dgj95li6mxiz9pnllj9x88km0z8gfh46kysfllkp2pl7rrsl";
url="mirror://sourceforge/project/ecls/ecls/12.12/ecl-12.12.1.tgz";
sha256="15y2dgj95li6mxiz9pnllj9x88km0z8gfh46kysfllkp2pl7rrsl";
};
buildInputs = [
libffi
];
propagatedBuildInputs = [
gmp mpfr
];
buildInputs = [ gmp libffi mpfr ];
in
rec {
mainVersion = "12.7";
revision = "1";
version = "${mainVersion}.${revision}";
name = "ecl-${version}";
src = a.fetchurl {
url = "mirror://sourceforge/project/ecls/ecls/${mainVersion}/${name}.tar.gz";
sha256 = "0k8ww142g3bybvvnlijqsbidl8clbs1pb4ympk2ds07z5swvy2ap";
};
stdenv.mkDerivation {
inherit (s) name version;
inherit buildInputs propagatedBuildInputs;
src = fetchurl {
inherit (s) url sha256;
};
configureFlags = [
"--enable-threads"
]
++
(a.lib.optional (! (a.lib.attrByPath ["noUnicode"] false a))
(stdenv.lib.optional (! noUnicode)
"--enable-unicode")
;
/* doConfigure should be removed if not needed */
phaseNames = ["doConfigure" "doMakeInstall" "fixEclConfig"];
fixEclConfig = a.fullDepEntry ''
postInstall = ''
sed -e 's/@[-a-zA-Z_]*@//g' -i $out/bin/ecl-config
'' ["minInit"];
'';
meta = {
description = "A Lisp implementation aiming to be small and fast";
maintainers = [
a.lib.maintainers.raskin
];
platforms = with a.lib.platforms;
linux;
inherit (s) version;
description = "Lisp implementation aiming to be small, fast and easy to embed";
license = stdenv.lib.licenses.mit ;
maintainers = [stdenv.lib.maintainers.raskin];
platforms = stdenv.lib.platforms.linux;
};
}) x
}

Some files were not shown because too many files have changed in this diff Show more