Merge remote-tracking branch 'origin/master' into stdenv-updates

This commit is contained in:
Eelco Dolstra
2013-02-15 13:36:34 +01:00
302 changed files with 14276 additions and 4226 deletions

View File

@@ -43,6 +43,6 @@ stdenv.mkDerivation {
description = "A standards-based printing system for UNIX";
license = stdenv.lib.licenses.gpl2; # actually LGPL for the library and GPL for the rest
maintainers = [ stdenv.lib.maintainers.urkud stdenv.lib.maintainers.simons ];
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
platforms = stdenv.lib.platforms.linux;
};
}

View File

@@ -1,5 +1,5 @@
{stdenv, fetchurl, cups, zlib, libjpeg, libusb, python, saneBackends, dbus
, pkgconfig, polkit, qtSupport ? true, qt4
{stdenv, fetchurl, cups, zlib, libjpeg, libusb, pythonPackages, saneBackends, dbus
, pkgconfig, polkit, qtSupport ? true, qt4, pythonDBus, pyqt4, net_snmp
}:
stdenv.mkDerivation rec {
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
prePatch = ''
sed -i s,/etc/sane.d,$out/etc/sane.d/, Makefile.in
sed -i s,/etc/hp/,$out/etc/hp/, base/g.py
'';
# --disable-network-build Until we have snmp
@@ -28,7 +29,7 @@ stdenv.mkDerivation rec {
--with-systraydir=$out/xdg/autostart
--with-mimedir=$out/etc/cups
--enable-policykit
--disable-network-build"
"
export makeFlags="
halpredir=$out/share/hal/fdi/preprobe/10osvendor
@@ -41,8 +42,27 @@ stdenv.mkDerivation rec {
";
'';
buildInputs = [libjpeg cups libusb python saneBackends dbus pkgconfig] ++
stdenv.lib.optional qtSupport qt4;
postInstall = ''
wrapPythonPrograms
'';
buildInputs = [
libjpeg
cups
libusb
pythonPackages.python
pythonPackages.wrapPython
saneBackends
dbus
pkgconfig
net_snmp
] ++ stdenv.lib.optional qtSupport qt4;
pythonPath = with pythonPackages; [
pythonDBus
pygobject
recursivePthLoader
] ++ stdenv.lib.optional qtSupport pyqt4;
meta = with stdenv.lib; {
description = "Print, scan and fax HP drivers for Linux";

View File

@@ -0,0 +1,17 @@
#!bash
source $stdenv/setup
mkdir -p $out/bin
cp $src/src/winetricks $out/bin/winetricks
chmod +x $out/bin/winetricks
cd $out/bin
patch -u -p0 < $patch
mkdir -p "$out/share/man/man1"
cp "$src/src/winetricks.1" "$out/share/man/man1/"
patchShebangs "$out"
substituteInPlace "$out/bin/winetricks" --replace "/usr/bin/perl" `which perl`
# add stuff to PATH
sed -i "2i PATH=\"${pathAdd}:\${PATH}\"" "$out/bin/winetricks"

View File

@@ -7,16 +7,17 @@ assert stdenv.isLinux;
assert stdenv.gcc.gcc != null;
stdenv.mkDerivation rec {
name = "wine-${meta.version}";
version = "1.5.23";
name = "wine-${version}";
src = fetchurl {
url = "mirror://sourceforge/wine/${name}.tar.bz2";
sha256 = "0l5kr3iq1lkv3gcw8ljzfjcfnsh9b5crdd4i0dzwdk1i3bfw2xxc";
sha256 = "1wgs2bdl3sn3j0za7fk9zfjlii1x6qkvmyw4jxzz1mfw6nizswzr";
};
gecko = fetchurl {
url = "mirror://sourceforge/wine/wine_gecko-1.5-x86.msi";
sha256 = "2e372a1b87ff2a22ad5127400ece4b09e55591d9f84e00bb562d294898a49b5c";
url = "mirror://sourceforge/wine/wine_gecko-1.9-x86.msi";
sha256 = "10p7djsf85xjk8rzg3hgw5fskrn8402y2aijy701xwm4hy9ga79g";
};
buildInputs = [
@@ -46,7 +47,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
meta = {
version = "1.5.21";
homepage = "http://www.winehq.org/";
license = "LGPL";
description = "An Open Source implementation of the Windows API on top of X, OpenGL, and Unix";

View File

@@ -0,0 +1,28 @@
{ stdenv, fetchsvn, wine, perl, which, coreutils, zenity, curl, cabextract, unzip, p7zip } :
stdenv.mkDerivation rec {
rev = "939";
name = "winetricks-${rev}";
src = fetchsvn {
url = "http://winetricks.googlecode.com/svn/trunk";
inherit rev;
};
buildInputs = [ perl which ];
pathAdd = stdenv.lib.concatStringsSep "/bin:" # coreutils is for sha1sum
[ wine perl which coreutils zenity curl cabextract unzip p7zip ]
+ "/bin";
patch = ./winetricks.patch;
builder = ./build_winetricks.sh;
meta = {
description = "A script to install DLLs needed to work around problems in Wine";
license = "LGPLv2.1";
homepage = http://code.google.com/p/winetricks/;
};
}

View File

@@ -0,0 +1,21 @@
--- upstream-winetricks 2013-01-12 13:26:12.333076904 -0800
+++ winetricks 2013-01-12 14:37:39.675092352 -0800
@@ -3398,7 +3398,7 @@
WINETRICKS_OPT_SHAREDPREFIX=${WINETRICKS_OPT_SHAREDPREFIX:-0}
# Mac folks tend to not have sha1sum, but we can make do with openssl
- if [ -x "`which sha1sum 2>/dev/null`" ]
+ if [ -e "`which sha1sum 2>/dev/null`" ]
then
WINETRICKS_SHA1SUM="sha1sum"
elif [ -x "`which openssl 2>/dev/null`" ]
@@ -3628,7 +3628,7 @@
if ! test "$WINETRICKS_LIB"
then
WINETRICKS_SRCDIR=`dirname "$0"`
- WINETRICKS_SRCDIR=`cd "$WINETRICKS_SRCDIR"; /bin/pwd`
+ WINETRICKS_SRCDIR=`cd "$WINETRICKS_SRCDIR"; pwd`
# Which GUI helper to use (none/zenity/kdialog). See winetricks_detect_gui.
WINETRICKS_GUI=none

View File

@@ -1,19 +1,18 @@
{ stdenv, fetchurl, alsaLib, dbus, expat, libsamplerate
, libsndfile, makeWrapper, pkgconfig, python, pythonDBus
, firewireSupport ? false, ffado ? null }:
, firewireSupport ? false, ffado ? null, bash }:
assert firewireSupport -> ffado != null;
stdenv.mkDerivation rec {
name = "jackdbus-${version}";
version = "1.9.8";
version = "1.9.9.5";
src = fetchurl {
urls = [
"http://pkgs.fedoraproject.org/lookaside/pkgs/jack-audio-connection-kit/jack-1.9.8.tgz/1dd2ff054cab79dfc11d134756f27165/jack-1.9.8.tgz"
"http://www.grame.fr/~letz/jack-1.9.8.tgz"
https://dl.dropbox.com/u/28869550/jack-1.9.9.5.tar.bz2
];
sha256 = "0788092zxrivcfnfg15brpjkf14x8ma8cwjz4k0b9xdxajn2wwac";
sha256 = "1ggba69jsfg7dmjzlyqz58y2wa92lm3vwdy4r15bs7mvxb65mvv5";
};
buildInputs =
@@ -21,10 +20,11 @@ stdenv.mkDerivation rec {
pkgconfig python pythonDBus
] ++ (stdenv.lib.optional firewireSupport ffado);
patches = ./ffado_setbuffsize-jack2.patch;
patchPhase = ''
substituteInPlace svnversion_regenerate.sh --replace /bin/bash ${bash}/bin/bash
'';
configurePhase = ''
cd jack-1.9.8
python waf configure --prefix=$out --dbus --alsa ${if firewireSupport then "--firewire" else ""}
'';

View File

@@ -1,140 +0,0 @@
https://projects.archlinux.org/svntogit/community.git/tree/trunk?h=packages/jack2
From 96e0251234a29a1360c05d5d7dc98b83436b8183 Mon Sep 17 00:00:00 2001
From: Adrian Knoth <adi@drcomp.erfurt.thur.de>
Date: Sat, 17 Mar 2012 22:36:30 +0100
Subject: [PATCH] [firewire] Allow FFADO backend to change the buffer size
This is a port of Jonathan Woithe's patch from jackd1.
With sufficiently recent versions of FFADO, it allows to change
the buffersize at runtime.
---
linux/firewire/JackFFADODriver.cpp | 65 ++++++++++++++++++++++++++++++++----
linux/firewire/JackFFADODriver.h | 6 ++++
2 files changed, 65 insertions(+), 6 deletions(-)
diff --git a/jack-1.9.8/linux/firewire/JackFFADODriver.cpp b/jack-1.9.8/linux/firewire/JackFFADODriver.cpp
index b33e1cd..085b78a 100644
--- a/jack-1.9.8/linux/firewire/JackFFADODriver.cpp
+++ b/jack-1.9.8/linux/firewire/JackFFADODriver.cpp
@@ -3,6 +3,7 @@
Copyright (C) 2004 Grame
Copyright (C) 2007 Pieter Palmers
Copyright (C) 2009 Devin Anderson
+Copyright (C) 2012 Jonathan Woithe, Adrian Knoth
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -48,7 +49,10 @@
namespace Jack
{
+// Basic functionality requires API version 8. If version 9 or later
+// is present the buffers can be resized at runtime.
#define FIREWIRE_REQUIRED_FFADO_API_VERSION 8
+#define FIREWIRE_REQUIRED_FFADO_API_VERSION_FOR_SETBUFSIZE 9
#define jack_get_microseconds GetMicroSeconds
@@ -281,19 +285,68 @@
int
JackFFADODriver::SetBufferSize (jack_nframes_t nframes)
{
- printError("Buffer size change requested but not supported!!!");
+ ffado_driver_t* driver = (ffado_driver_t*)fDriver;
+ signed int chn;
+
+ // The speed of this function isn't critical; we can afford the
+ // time to check the FFADO API version.
+ if (ffado_get_api_version() < FIREWIRE_REQUIRED_FFADO_API_VERSION_FOR_SETBUFSIZE ||
+ ffado_streaming_set_period_size == NULL) {
+ printError("unsupported on current version of FFADO; please upgrade FFADO");
+ return -1;
+ }
- /*
driver->period_size = nframes;
driver->period_usecs =
(jack_time_t) floor ((((float) nframes) / driver->sample_rate)
* 1000000.0f);
- */
+
+
+ // Reallocate the null and scratch buffers.
+ driver->nullbuffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(ffado_sample_t));
+ if(driver->nullbuffer == NULL) {
+ printError("could not allocate memory for null buffer");
+ return -1;
+ }
+ driver->scratchbuffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(ffado_sample_t));
+ if(driver->scratchbuffer == NULL) {
+ printError("could not allocate memory for scratch buffer");
+ return -1;
+ }
+
+ // MIDI buffers need reallocating
+ for (chn = 0; chn < driver->capture_nchannels; chn++) {
+ if(driver->capture_channels[chn].stream_type == ffado_stream_type_midi) {
+ // setup the midi buffer
+ if (driver->capture_channels[chn].midi_buffer != NULL)
+ free(driver->capture_channels[chn].midi_buffer);
+ driver->capture_channels[chn].midi_buffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(uint32_t));
+ }
+ }
+ for (chn = 0; chn < driver->playback_nchannels; chn++) {
+ if(driver->playback_channels[chn].stream_type == ffado_stream_type_midi) {
+ if (driver->playback_channels[chn].midi_buffer != NULL)
+ free(driver->playback_channels[chn].midi_buffer);
+ driver->playback_channels[chn].midi_buffer = (ffado_sample_t*) calloc(driver->period_size, sizeof(uint32_t));
+ }
+ }
+
+ // Notify FFADO of the period size change
+ if (ffado_streaming_set_period_size(driver->dev, nframes) != 0) {
+ printError("could not alter FFADO device period size");
+ return -1;
+ }
+
+ // This is needed to give the shadow variables a chance to
+ // properly update to the changes.
+ sleep(1);
/* tell the engine to change its buffer size */
- //driver->engine->set_buffer_size (driver->engine, nframes);
+ JackAudioDriver::SetBufferSize(nframes); // Generic change, never fails
- return -1; // unsupported
+ UpdateLatencies();
+
+ return 0;
}
typedef void (*JackDriverFinishFunction) (jack_driver_t *);
@@ -306,7 +359,7 @@
assert(params);
- if (ffado_get_api_version() != FIREWIRE_REQUIRED_FFADO_API_VERSION) {
+ if (ffado_get_api_version() < FIREWIRE_REQUIRED_FFADO_API_VERSION) {
printError("Incompatible libffado version! (%s)", ffado_get_version());
return NULL;
}
diff --git a/jack-1.9.8/linux/firewire/JackFFADODriver.h b/jack-1.9.8/linux/firewire/JackFFADODriver.h
index cb2a45d..790f4dd 100644
--- a/jack-1.9.8/linux/firewire/JackFFADODriver.h
+++ b/jack-1.9.8/linux/firewire/JackFFADODriver.h
@@ -82,6 +82,12 @@ class JackFFADODriver : public JackAudioDriver
int Read();
int Write();
+ // BufferSize can be changed
+ bool IsFixedBufferSize()
+ {
+ return false;
+ }
+
int SetBufferSize(jack_nframes_t nframes);
};
--
1.7.10

View File

@@ -20,11 +20,11 @@ let
in
stdenv.mkDerivation {
name = "uboot-2009.11";
name = "uboot-2012.07";
src = fetchurl {
url = "ftp://ftp.denx.de/pub/u-boot/u-boot-2009.11.tar.bz2";
sha256 = "1rld7q3ww89si84g80hqskd1z995lni5r5xc4d4322n99wqiarh6";
url = "ftp://ftp.denx.de/pub/u-boot/u-boot-2012.07.tar.bz2";
sha256 = "15nli6h9a127ldizsck3g4ysy5j4m910wawspgpadz4vjyk213p0";
};
nativeBuildInputs = [ unzip ];
@@ -40,6 +40,15 @@ stdenv.mkDerivation {
cp tools/{envcrc,mkimage} $out/bin
'';
# They have 'errno.h' included by a "-idirafter". As the gcc
# wrappers add the glibc include as "-idirafter", the only way
# we can make the glibc take priority is to -include errno.h.
postPatch = if stdenv ? glibc && stdenv.glibc != null then ''
sed -i 's,$(HOSTCPPFLAGS),-include ${stdenv.glibc}/include/errno.h $(HOSTCPPFLAGS),' config.mk
'' else "";
patches = [ ./sheevaplug-sdio.patch ./sheevaplug-config.patch ];
configurePhase =
assert platform ? uboot && platform.uboot != null;
assert (platform ? ubootConfig);

View File

@@ -0,0 +1,57 @@
diff --git a/include/configs/sheevaplug.h b/include/configs/sheevaplug.h
index 7c8497c..b0da1e5 100644
--- a/include/configs/sheevaplug.h
+++ b/include/configs/sheevaplug.h
@@ -50,7 +50,6 @@
#define CONFIG_CMD_MII
#define CONFIG_CMD_MMC
#define CONFIG_CMD_NAND
-#define CONFIG_JFFS2_NAND
#define CONFIG_CMD_PING
#define CONFIG_CMD_USB
/*
@@ -73,25 +72,36 @@
* it has to be rounded to sector size
*/
#define CONFIG_ENV_SIZE 0x20000 /* 128k */
-#define CONFIG_ENV_ADDR 0xa0000
-#define CONFIG_ENV_OFFSET 0xa0000 /* env starts here */
+#define CONFIG_ENV_ADDR 0x60000
+#define CONFIG_ENV_OFFSET 0x60000 /* env starts here */
/*
* Default environment variables
*/
-#define CONFIG_BOOTCOMMAND "${x_bootcmd_kernel}; " \
+#define CONFIG_BOOTCOMMAND "${x_bootcmd_ubi0}; " \
+ "${x_bootcmd_ubi1}; " \
+ "${x_bootcmd_ubi2}; " \
+ "${x_bootcmd_ubi3}; " \
"setenv bootargs ${x_bootargs} ${x_bootargs_root}; " \
- "${x_bootcmd_usb}; bootm 0x6400000;"
+ "${x_bootcmd_usb}; bootm 0x200000 0x1100000;"
#define CONFIG_MTDPARTS "orion_nand:512k(uboot)," \
- "0x1ff00000@512k(rootfs) rw\0"
+ "0x1ff00000@512k(rootfs)\0"
+#define CONFIG_MTDPARTSK "orion_nand:512k(uboot)," \
+ "0x1ff00000@512k(rootfs)rw\0"
#define CONFIG_EXTRA_ENV_SETTINGS "x_bootargs=console" \
- "=ttyS0,115200 mtdparts="CONFIG_MTDPARTS \
+ "=ttyS0,115200 mtdparts="CONFIG_MTDPARTSK \
+ "mtdparts=mtdparts="CONFIG_MTDPARTS \
"mtdids=nand0=orion_nand\0" \
- "x_bootcmd_kernel=nand read 0x6400000 0x100000 0x300000\0" \
+ "ipaddr=192.168.1.4\0" \
+ "x_bootcmd_ubi0=ubi part nand0,1\0" \
+ "x_bootcmd_ubi1=ubifsmount rootfs\0" \
+ "x_bootcmd_ubi2=ubifsload 0x200000 /nixos-kernel\0" \
+ "x_bootcmd_ubi3=ubifsload 0x1100000 /nixos-initrd\0" \
"x_bootcmd_usb=usb start\0" \
- "x_bootargs_root=root=/dev/mtdblock3 rw rootfstype=jffs2\0"
+ "x_bootargs_root=ubi.mtd=rootfs root=ubi0:rootfs rw rootfstype=ubifs " \
+ "init=/boot/nixos-init systemConfig=/boot/default/system\0"
/*
* Ethernet Driver configuration

File diff suppressed because it is too large Load Diff