ReRevert Merge x-updates into master

This reverts commit ec3965d8d0.

Conflicts (taken x-updates):
	pkgs/development/libraries/libgcrypt/default.nix
	pkgs/development/libraries/libgpg-error/default.nix
	pkgs/development/libraries/poppler/default.nix
This commit is contained in:
Vladimír Čunát 2013-05-29 23:24:20 +02:00
parent 971337a119
commit b770365574
135 changed files with 2718 additions and 1591 deletions

View file

@ -1,15 +1,15 @@
{ stdenv, fetchurl, gtk2, which, pkgconfig, intltool }:
let
version = "1.22";
version = "1.23";
in
stdenv.mkDerivation rec {
name = "geany-${version}";
src = fetchurl {
url = "http://download.geany.org/${name}.tar.gz";
md5 = "1cb7f6cea8e301c416211786cec474fa";
url = "http://download.geany.org/${name}.tar.bz2";
sha256 = "1c78rggjaz9fa8gj25wka1sa3argvixnzrarmqvwh0s8d5ragm6d";
};
buildInputs = [ gtk2 which pkgconfig intltool ];

View file

@ -20,6 +20,7 @@ stdenv.mkDerivation rec {
preConfigure = ''
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/build/lib"
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${gtkglext}/include/gtkglext-*) -I$(echo ${gtkglext}/lib/gtkglext-*/include)"
'';
buildInputs = [

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, gtk, cmake, pixman, libpthreadstubs, gtkmm, libXau
, libXdmcp, lcms2, libiptcdata, libcanberra, fftw
, libXdmcp, lcms2, libiptcdata, libcanberra, fftw, expat
, mercurial # Not really needed for anything, but it fails if it does not find 'hg'
}:
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ pkgconfig gtk cmake pixman libpthreadstubs gtkmm libXau libXdmcp
lcms2 libiptcdata mercurial libcanberra fftw ];
lcms2 libiptcdata mercurial libcanberra fftw expat ];
# Disable the use of the RAWZOR propietary libraries
cmakeFlags = [ "-DWITH_RAWZOR=OFF" ];

View file

@ -0,0 +1,12 @@
diff --git a/intern/smoke/intern/WAVELET_NOISE.h b/intern/smoke/intern/WAVELET_NOISE.h
index fce901b..1f73c5e 100644
--- a/intern/smoke/intern/WAVELET_NOISE.h
+++ b/intern/smoke/intern/WAVELET_NOISE.h
@@ -43,6 +43,7 @@
#ifndef WAVELET_NOISE_H
#define WAVELET_NOISE_H
+#include <string.h>
#include <MERSENNETWISTER.h>
#ifdef WIN32

View file

@ -1,17 +1,15 @@
{ stdenv, fetchurl, python, pyqt4, sip, popplerQt4, pkgconfig, libpng
, imagemagick, libjpeg, fontconfig, podofo, qt4, icu, sqlite
, pil, makeWrapper, unrar, chmlib, pythonPackages, xz
, pil, makeWrapper, unrar, chmlib, pythonPackages, xz, udisks, libusb1, libmtp
}:
stdenv.mkDerivation rec {
name = "calibre-0.8.51";
name = "calibre-0.8.70";
# 0.9.* versions won't build: https://bugs.launchpad.net/calibre/+bug/1094719
src = fetchurl {
urls = [
"http://calibre-ebook.googlecode.com/files/${name}.tar.xz"
"mirror://sourceforge/calibre/${name}.tar.xz"
];
sha256 = "1grcc0k9qpfpwp863x52rl9wj4wz61hcz67l8h2jmli0wxiq44z1";
url = "mirror://sourceforge/calibre/${name}.tar.xz";
sha256 = "12avwp8r6cnrw6c32gmd2hksa9rszdb76zs6fcmr3n8r1wkwa71g";
};
inherit python;
@ -23,7 +21,7 @@ stdenv.mkDerivation rec {
fontconfig podofo qt4 pil chmlib icu
pythonPackages.mechanize pythonPackages.lxml pythonPackages.dateutil
pythonPackages.cssutils pythonPackages.beautifulsoup
pythonPackages.sqlite3 sqlite
pythonPackages.sqlite3 sqlite udisks libusb1 libmtp
];
installPhase = ''

View file

@ -1,16 +1,14 @@
{ stdenv, fetchurl, libjpeg, libtiff, libpng, ghostscript, libungif, zlib }:
{ stdenv, fetchurl, libjpeg, libtiff, librsvg }:
stdenv.mkDerivation rec {
name = "djvulibre-3.5.24";
name = "djvulibre-3.5.25.3";
src = fetchurl {
url = "mirror://sourceforge/djvu/${name}.tar.gz";
sha256 = "0d1592cmc7scg2jzah47mnvbqldhxb1x9vxm7y64a3iasa0lqwy0";
sha256 = "1q5i5ha4zmj2ahjfhi8cv1rah80vm43m9ads46ji38rgvpb7x3c9";
};
buildInputs = [ libjpeg libtiff libpng ghostscript zlib libungif ];
patches = [ ./gcc-4.6.patch ];
buildInputs = [ libjpeg libtiff librsvg ];
meta = {
description = "A library and viewer for the DJVU file format for scanned images";

View file

@ -1,658 +0,0 @@
commit 3341545edba359b292a8ef6db1b7d342caf3dcf1
Author: Leon Bottou <leon@bottou.org>
Date: Wed May 4 21:25:35 2011 -0700
Added include <stddef.h> for gcc-4.6
diff --git a/libdjvu/BSByteStream.cpp b/libdjvu/BSByteStream.cpp
index b762ccf..d662ab0 100644
--- a/libdjvu/BSByteStream.cpp
+++ b/libdjvu/BSByteStream.cpp
@@ -62,6 +62,7 @@
// - Author: Leon Bottou, 07/1998
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/BSEncodeByteStream.cpp b/libdjvu/BSEncodeByteStream.cpp
index 5d80e51..68bc3e3 100644
--- a/libdjvu/BSEncodeByteStream.cpp
+++ b/libdjvu/BSEncodeByteStream.cpp
@@ -71,6 +71,7 @@
#include "GOS.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/ByteStream.cpp b/libdjvu/ByteStream.cpp
index 158c33c..be01847 100644
--- a/libdjvu/ByteStream.cpp
+++ b/libdjvu/ByteStream.cpp
@@ -73,6 +73,7 @@
#include "GOS.h"
#include "GURL.h"
#include "DjVuMessage.h"
+#include <stddef.h>
#include <fcntl.h>
#if defined(WIN32) || defined(__CYGWIN32__)
# include <io.h>
diff --git a/libdjvu/DjVuFileCache.cpp b/libdjvu/DjVuFileCache.cpp
index 6b1e85d..7d7a192 100644
--- a/libdjvu/DjVuFileCache.cpp
+++ b/libdjvu/DjVuFileCache.cpp
@@ -63,6 +63,7 @@
#include "DjVuFileCache.h"
#include "debug.h"
+#include <stddef.h>
#include <stdlib.h>
diff --git a/libdjvu/DjVuGlobal.cpp b/libdjvu/DjVuGlobal.cpp
index e6d3cec..df9278e 100644
--- a/libdjvu/DjVuGlobal.cpp
+++ b/libdjvu/DjVuGlobal.cpp
@@ -76,6 +76,8 @@
#include "GThreads.h"
#include "GException.h"
#include "GContainer.h"
+
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/DjVuGlobalMemory.cpp b/libdjvu/DjVuGlobalMemory.cpp
index 3c6012c..c8ba309 100644
--- a/libdjvu/DjVuGlobalMemory.cpp
+++ b/libdjvu/DjVuGlobalMemory.cpp
@@ -67,6 +67,8 @@
#include "DjVuGlobal.h"
#include "GException.h"
+
+#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include "debug.h"
diff --git a/libdjvu/DjVuMessage.cpp b/libdjvu/DjVuMessage.cpp
index 6f5a735..1726025 100644
--- a/libdjvu/DjVuMessage.cpp
+++ b/libdjvu/DjVuMessage.cpp
@@ -71,6 +71,7 @@
#include "debug.h"
#include <ctype.h>
#include <string.h>
+#include <stddef.h>
#include <stdlib.h>
#ifdef WIN32
# include <tchar.h>
diff --git a/libdjvu/DjVuMessageLite.cpp b/libdjvu/DjVuMessageLite.cpp
index b8c1010..5daa9d9 100644
--- a/libdjvu/DjVuMessageLite.cpp
+++ b/libdjvu/DjVuMessageLite.cpp
@@ -73,8 +73,8 @@
#include "debug.h"
#include <ctype.h>
#include <string.h>
+#include <stddef.h>
#include <stdlib.h>
-// #include <stdio.h>
#ifdef WIN32
#include <tchar.h>
#include <windows.h>
diff --git a/libdjvu/DjVuPalette.cpp b/libdjvu/DjVuPalette.cpp
index c489f7b..76b0bf4 100644
--- a/libdjvu/DjVuPalette.cpp
+++ b/libdjvu/DjVuPalette.cpp
@@ -64,6 +64,8 @@
#include "ByteStream.h"
#include "BSByteStream.h"
#include "DjVuPalette.h"
+
+#include <stddef.h>
#include <stdlib.h>
#include <math.h>
diff --git a/libdjvu/DjVuPort.h b/libdjvu/DjVuPort.h
index f6a92f6..e2b3125 100644
--- a/libdjvu/DjVuPort.h
+++ b/libdjvu/DjVuPort.h
@@ -65,6 +65,7 @@
#include "GThreads.h"
#include "GURL.h"
+#include "stddef.h"
#ifdef HAVE_NAMESPACES
namespace DJVU {
diff --git a/libdjvu/DjVuToPS.cpp b/libdjvu/DjVuToPS.cpp
index 5517bf3..6914ff9 100644
--- a/libdjvu/DjVuToPS.cpp
+++ b/libdjvu/DjVuToPS.cpp
@@ -72,6 +72,7 @@
#include "GPixmap.h"
#include "debug.h"
#include <stdarg.h>
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
diff --git a/libdjvu/GBitmap.cpp b/libdjvu/GBitmap.cpp
index ab5c0de..797edcc 100644
--- a/libdjvu/GBitmap.cpp
+++ b/libdjvu/GBitmap.cpp
@@ -66,6 +66,8 @@
#include "GString.h"
#include "GThreads.h"
#include "GException.h"
+#include <stddef.h>
+#include <stdlib.h>
#include <string.h>
// - Author: Leon Bottou, 05/1997
diff --git a/libdjvu/GException.cpp b/libdjvu/GException.cpp
index 2ea179a..89da70f 100644
--- a/libdjvu/GException.cpp
+++ b/libdjvu/GException.cpp
@@ -60,6 +60,7 @@
# pragma implementation
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/GOS.cpp b/libdjvu/GOS.cpp
index e784932..d2088e2 100644
--- a/libdjvu/GOS.cpp
+++ b/libdjvu/GOS.cpp
@@ -65,6 +65,7 @@
#include "GOS.h"
#include "GURL.h"
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
diff --git a/libdjvu/GPixmap.cpp b/libdjvu/GPixmap.cpp
index 392df54..4bf6f57 100644
--- a/libdjvu/GPixmap.cpp
+++ b/libdjvu/GPixmap.cpp
@@ -75,6 +75,8 @@
#include "GThreads.h"
#include "Arrays.h"
#include "JPEGDecoder.h"
+
+#include <stddef.h>
#include <stdlib.h>
#include <math.h>
#include <assert.h>
diff --git a/libdjvu/GSmartPointer.cpp b/libdjvu/GSmartPointer.cpp
index 6e523e7..58aef5b 100644
--- a/libdjvu/GSmartPointer.cpp
+++ b/libdjvu/GSmartPointer.cpp
@@ -67,6 +67,7 @@
// Our original implementation consisted of multiple classes.
// <http://prdownloads.sourceforge.net/djvu/DjVu2_2b-src.tgz>.
+#include <stddef.h>
#include <string.h>
#if PARANOID_DEBUG
# include <assert.h>
diff --git a/libdjvu/GSmartPointer.h b/libdjvu/GSmartPointer.h
index 82781bd..8a8bb8a 100644
--- a/libdjvu/GSmartPointer.h
+++ b/libdjvu/GSmartPointer.h
@@ -97,6 +97,8 @@
#include "DjVuGlobal.h"
#include "atomic.h"
+#include <stddef.h>
+
#ifdef HAVE_NAMESPACES
namespace DJVU {
# ifdef NOT_DEFINED // Just to fool emacs c++ mode
diff --git a/libdjvu/GString.cpp b/libdjvu/GString.cpp
index 03f6226..350b11b 100644
--- a/libdjvu/GString.cpp
+++ b/libdjvu/GString.cpp
@@ -73,6 +73,7 @@
#include "GThreads.h"
#include "debug.h"
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/GString.h b/libdjvu/GString.h
index b63b753..3aa1f76 100644
--- a/libdjvu/GString.h
+++ b/libdjvu/GString.h
@@ -108,6 +108,7 @@
#include "DjVuGlobal.h"
#include "GContainer.h"
+#include <stddef.h>
#include <stdlib.h>
#include <stdarg.h>
#ifdef WIN32
diff --git a/libdjvu/GThreads.cpp b/libdjvu/GThreads.cpp
index d81f3c3..253fed8 100644
--- a/libdjvu/GThreads.cpp
+++ b/libdjvu/GThreads.cpp
@@ -71,6 +71,8 @@
#include "GThreads.h"
#include "GException.h"
#include "DjVuMessageLite.h"
+
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
diff --git a/libdjvu/GURL.cpp b/libdjvu/GURL.cpp
index c37bf52..a80078c 100644
--- a/libdjvu/GURL.cpp
+++ b/libdjvu/GURL.cpp
@@ -72,6 +72,7 @@
#include "GURL.h"
#include "debug.h"
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
diff --git a/libdjvu/GUnicode.cpp b/libdjvu/GUnicode.cpp
index 415c081..a8b25b8 100644
--- a/libdjvu/GUnicode.cpp
+++ b/libdjvu/GUnicode.cpp
@@ -62,6 +62,8 @@
#include "GString.h"
+#include <stddef.h>
+
#if HAS_ICONV
#include <iconv.h>
#endif
diff --git a/libdjvu/IFFByteStream.h b/libdjvu/IFFByteStream.h
index a653f8c..e31b216 100644
--- a/libdjvu/IFFByteStream.h
+++ b/libdjvu/IFFByteStream.h
@@ -124,6 +124,7 @@
#include "DjVuGlobal.h"
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/IW44EncodeCodec.cpp b/libdjvu/IW44EncodeCodec.cpp
index 8d7b12c..49081b7 100644
--- a/libdjvu/IW44EncodeCodec.cpp
+++ b/libdjvu/IW44EncodeCodec.cpp
@@ -76,6 +76,7 @@
#include "IFFByteStream.h"
#include "GRect.h"
+#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
diff --git a/libdjvu/IW44Image.cpp b/libdjvu/IW44Image.cpp
index 9476726..4a19fb5 100644
--- a/libdjvu/IW44Image.cpp
+++ b/libdjvu/IW44Image.cpp
@@ -76,6 +76,7 @@
#include "IFFByteStream.h"
#include "GRect.h"
+#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
diff --git a/libdjvu/JPEGDecoder.h b/libdjvu/JPEGDecoder.h
index bd430a0..fad1d4c 100644
--- a/libdjvu/JPEGDecoder.h
+++ b/libdjvu/JPEGDecoder.h
@@ -64,6 +64,7 @@
#ifdef NEED_JPEG_DECODER
+#include <stddef.h>
#include <string.h>
#include <setjmp.h>
diff --git a/libdjvu/MMX.cpp b/libdjvu/MMX.cpp
index 5ab60bb..528dab6 100644
--- a/libdjvu/MMX.cpp
+++ b/libdjvu/MMX.cpp
@@ -62,6 +62,7 @@
#include "MMX.h"
#include <stdio.h>
+#include <stddef.h>
#include <stdlib.h>
diff --git a/libdjvu/UnicodeByteStream.h b/libdjvu/UnicodeByteStream.h
index 0ae112b..9b49a17 100644
--- a/libdjvu/UnicodeByteStream.h
+++ b/libdjvu/UnicodeByteStream.h
@@ -88,6 +88,7 @@
#include "GString.h"
#include "ByteStream.h"
+#include <stddef.h>
#ifdef HAVE_NAMESPACES
namespace DJVU {
diff --git a/libdjvu/XMLParser.cpp b/libdjvu/XMLParser.cpp
index 84386c5..7da923a 100644
--- a/libdjvu/XMLParser.cpp
+++ b/libdjvu/XMLParser.cpp
@@ -75,6 +75,7 @@
#include "debug.h"
#include <stdio.h>
#include <ctype.h>
+#include <stddef.h>
#include <stdlib.h>
diff --git a/libdjvu/ZPCodec.cpp b/libdjvu/ZPCodec.cpp
index f6e971d..ff5b9bf 100644
--- a/libdjvu/ZPCodec.cpp
+++ b/libdjvu/ZPCodec.cpp
@@ -66,6 +66,8 @@
#include "ZPCodec.h"
#include "ByteStream.h"
#include "GException.h"
+
+#include <stddef.h>
#include <stdlib.h>
#include <assert.h>
#include <math.h>
diff --git a/libdjvu/atomic.cpp b/libdjvu/atomic.cpp
index bdc193e..63fd483 100644
--- a/libdjvu/atomic.cpp
+++ b/libdjvu/atomic.cpp
@@ -28,6 +28,7 @@
# include "config.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <assert.h>
#include "atomic.h"
diff --git a/libdjvu/ddjvuapi.cpp b/libdjvu/ddjvuapi.cpp
index b18b84b..f40f5aa 100644
--- a/libdjvu/ddjvuapi.cpp
+++ b/libdjvu/ddjvuapi.cpp
@@ -60,6 +60,7 @@
# pragma implementation "ddjvuapi.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
diff --git a/libdjvu/ddjvuapi.h b/libdjvu/ddjvuapi.h
index d0ed48f..841f223 100644
--- a/libdjvu/ddjvuapi.h
+++ b/libdjvu/ddjvuapi.h
@@ -64,6 +64,7 @@ extern "C" {
}
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
diff --git a/libdjvu/miniexp.cpp b/libdjvu/miniexp.cpp
index e0fb087..fc51297 100644
--- a/libdjvu/miniexp.cpp
+++ b/libdjvu/miniexp.cpp
@@ -23,6 +23,7 @@
# pragma implementation "miniexp.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
diff --git a/libdjvu/miniexp.h b/libdjvu/miniexp.h
index 91e345d..993005b 100644
--- a/libdjvu/miniexp.h
+++ b/libdjvu/miniexp.h
@@ -38,7 +38,8 @@ extern "C" {
#ifndef MINILISPAPI
# define MINILISPAPI /**/
#endif
-
+
+#include <stddef.h>
/* -------------------------------------------------- */
/* LISP EXPRESSIONS */
diff --git a/tools/bzz.cpp b/tools/bzz.cpp
index ca092e1..2ebc7b9 100644
--- a/tools/bzz.cpp
+++ b/tools/bzz.cpp
@@ -94,6 +94,7 @@
#include "GURL.h"
#include "DjVuMessage.h"
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
static const char *program = "(unknown)";
diff --git a/tools/c44.cpp b/tools/c44.cpp
index 6f23b53..855504b 100644
--- a/tools/c44.cpp
+++ b/tools/c44.cpp
@@ -226,6 +226,7 @@
#include <locale.h>
#include <stdio.h>
#include <string.h>
+#include <stddef.h>
#include <stdlib.h>
// command line data
diff --git a/tools/cjb2.cpp b/tools/cjb2.cpp
index 8cf89b9..11eb662 100644
--- a/tools/cjb2.cpp
+++ b/tools/cjb2.cpp
@@ -120,6 +120,7 @@
#include "jb2tune.h"
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
#if HAVE_TIFF
#include <tiffio.h>
diff --git a/tools/cpaldjvu.cpp b/tools/cpaldjvu.cpp
index 111cbd3..b640a7a 100644
--- a/tools/cpaldjvu.cpp
+++ b/tools/cpaldjvu.cpp
@@ -118,6 +118,7 @@
#include "jb2tune.h"
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
#include <math.h>
diff --git a/tools/csepdjvu.cpp b/tools/csepdjvu.cpp
index cd721f8..d5203d5 100644
--- a/tools/csepdjvu.cpp
+++ b/tools/csepdjvu.cpp
@@ -162,6 +162,7 @@
#include "jb2tune.h"
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
#undef MIN
diff --git a/tools/ddjvu.cpp b/tools/ddjvu.cpp
index 817e045..981a270 100644
--- a/tools/ddjvu.cpp
+++ b/tools/ddjvu.cpp
@@ -62,6 +62,7 @@
# include "config.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
diff --git a/tools/djvm.cpp b/tools/djvm.cpp
index 951bd66..6ea88c2 100644
--- a/tools/djvm.cpp
+++ b/tools/djvm.cpp
@@ -135,9 +135,9 @@
#include "DjVuMessage.h"
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
-#include <stdlib.h>
static const char * progname;
diff --git a/tools/djvmcvt.cpp b/tools/djvmcvt.cpp
index 9ca1c54..20b468a 100644
--- a/tools/djvmcvt.cpp
+++ b/tools/djvmcvt.cpp
@@ -144,6 +144,7 @@
#include <locale.h>
#include <stdio.h>
+#include <stddef.h>
#include <stdlib.h>
static const char * progname;
diff --git a/tools/djvudump.cpp b/tools/djvudump.cpp
index 6a0215a..2dddbdf 100644
--- a/tools/djvudump.cpp
+++ b/tools/djvudump.cpp
@@ -119,6 +119,7 @@ xxx
#include <locale.h>
#include <stdio.h>
#include <ctype.h>
+#include <stddef.h>
#include <stdlib.h>
void
diff --git a/tools/djvuextract.cpp b/tools/djvuextract.cpp
index 4a9f381..907b99c 100644
--- a/tools/djvuextract.cpp
+++ b/tools/djvuextract.cpp
@@ -105,6 +105,7 @@
#include "GOS.h"
#include "DjVuMessage.h"
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
diff --git a/tools/djvumake.cpp b/tools/djvumake.cpp
index 7020484..4c5fc0f 100644
--- a/tools/djvumake.cpp
+++ b/tools/djvumake.cpp
@@ -153,6 +153,7 @@
#include <locale.h>
#include <stdio.h>
+#include <stddef.h>
#include <stdlib.h>
#include <ctype.h>
diff --git a/tools/djvups.cpp b/tools/djvups.cpp
index 51aa999..632b832 100644
--- a/tools/djvups.cpp
+++ b/tools/djvups.cpp
@@ -57,6 +57,7 @@
# include "config.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
diff --git a/tools/djvused.cpp b/tools/djvused.cpp
index de84dcd..687fdca 100644
--- a/tools/djvused.cpp
+++ b/tools/djvused.cpp
@@ -61,6 +61,7 @@
#endif
#include <stdio.h>
+#include <stddef.h>
#include <stdlib.h>
#include <stdarg.h>
#include <errno.h>
diff --git a/tools/djvuserve.cpp b/tools/djvuserve.cpp
index 19a17da..818fe78 100644
--- a/tools/djvuserve.cpp
+++ b/tools/djvuserve.cpp
@@ -73,6 +73,7 @@
#include <locale.h>
#include <stdio.h>
+#include <stddef.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <time.h>
diff --git a/tools/djvutxt.cpp b/tools/djvutxt.cpp
index ba2c745..9e9124c 100644
--- a/tools/djvutxt.cpp
+++ b/tools/djvutxt.cpp
@@ -61,6 +61,7 @@
# include "config.h"
#endif
+#include <stddef.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
diff --git a/tools/tiff2pdf.h b/tools/tiff2pdf.h
index 082f5fb..656dc43 100644
--- a/tools/tiff2pdf.h
+++ b/tools/tiff2pdf.h
@@ -22,6 +22,7 @@
# endif
# if HAVE_TIFF
# include <stdio.h>
+# include <stddef.h>
# include <stdlib.h>
# include <tiff.h>
# include <tiffio.h>
diff --git a/xmltools/djvutoxml.cpp b/xmltools/djvutoxml.cpp
index 17c769b..b40535e 100644
--- a/xmltools/djvutoxml.cpp
+++ b/xmltools/djvutoxml.cpp
@@ -71,6 +71,7 @@
#include <locale.h>
#include <stdio.h>
+#include <stddef.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <assert.h>
diff --git a/xmltools/djvuxmlparser.cpp b/xmltools/djvuxmlparser.cpp
index bdc5768..6679a9d 100644
--- a/xmltools/djvuxmlparser.cpp
+++ b/xmltools/djvuxmlparser.cpp
@@ -70,6 +70,7 @@
#include <stdio.h>
#include <ctype.h>
#include <locale.h>
+#include <stddef.h>
#include <stdlib.h>
static void

View file

@ -1,59 +0,0 @@
{ fetchurl, stdenv, perl, perlXMLParser, gettext, intltool
, pkgconfig, glib, gtk, gnomedocutils, gnomeicontheme
, libgnome, libgnomeui, scrollkeeper, libxslt
, libglade, libgnome_keyring, dbus, dbus_glib
, poppler, libspectre, djvulibre, shared_mime_info
, makeWrapper, which, ghostscript
, recentListSize ? null # 5 is not enough, allow passing a different number
}:
stdenv.mkDerivation rec {
name = "evince-2.32.0";
src = fetchurl {
url = "http://ftp.gnome.org/pub/GNOME/sources/evince/2.32/${name}.tar.bz2";
sha256 = "2a4c91ae38f8b5028cebb91b9da9ddc50ea8ae3f3d429df89ba351da2d787ff7";
};
buildInputs = [
perl perlXMLParser gettext intltool pkgconfig glib gtk
gnomedocutils gnomeicontheme libgnome libgnomeui libglade
scrollkeeper libgnome_keyring
libxslt # for `xsltproc'
dbus dbus_glib poppler libspectre djvulibre makeWrapper which
ghostscript
];
configureFlags = "--with-libgnome --enable-dbus --enable-pixbuf "
# Do not use nautilus
+ " --disable-nautilus "
# Do not update Scrollkeeper's database (GNOME's help system).
+ "--disable-scrollkeeper";
postUnpack = if recentListSize != null then ''
sed -i 's/\(gtk_recent_chooser_set_limit .*\)5)/\1${builtins.toString recentListSize})/' */shell/ev-open-recent-action.c
sed -i 's/\(if (++n_items == \)5\(.*\)/\1${builtins.toString recentListSize}\2/' */shell/ev-window.c
'' else "";
postInstall = ''
# Tell Glib/GIO about the MIME info directory, which is used
# by `g_file_info_get_content_type ()'.
wrapProgram "$out/bin/evince" \
--prefix XDG_DATA_DIRS : "${shared_mime_info}/share:$out/share"
'';
meta = {
homepage = http://www.gnome.org/projects/evince/;
description = "Evince, GNOME's document viewer";
longDescription = ''
Evince is a document viewer for multiple document formats. It
currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
of Evince is to replace the multiple document viewers that exist
on the GNOME Desktop with a single simple application.
'';
license = "GPLv2+";
};
}

View file

@ -35,7 +35,7 @@ rec {
#"--enable-profiling"
"--disable-debug"
"--enable-strip"
# "--with-system-jpeg" # Too old in nixpkgs
"--with-system-jpeg" # now we use recent libjpeg-turbo
"--with-system-zlib"
"--with-system-bz2"
"--with-system-nspr"

View file

@ -19,6 +19,8 @@ stdenv.mkDerivation rec {
configureFlags = "--enable-external-ortp --enable-external-mediastreamer";
NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations"; # I'm lazy to fix these for them
meta = {
homepage = http://www.linphone.org/;
description = "Open Source video SIP softphone";

View file

@ -1,6 +1,7 @@
{ fetchurl, stdenv, pkgconfig, libxml2, gconf, glib, gtk, libgnomeui, libofx
, libgtkhtml, gtkhtml, libgnomeprint, goffice, enchant, gettext, libbonoboui
, intltool, perl, guile, slibGuile, swig, isocodes, bzip2, makeWrapper
, intltool, perl, guile, slibGuile, swig, isocodes, bzip2, makeWrapper, libglade
, libgsf, libart_lgpl
}:
/* If you experience GConf errors when running GnuCash on NixOS, see
@ -19,9 +20,12 @@ stdenv.mkDerivation rec {
buildInputs = [
pkgconfig libxml2 gconf glib gtk libgnomeui libgtkhtml gtkhtml
libgnomeprint goffice enchant gettext intltool perl guile slibGuile
swig isocodes bzip2 makeWrapper libofx
swig isocodes bzip2 makeWrapper libofx libglade libgsf libart_lgpl
];
# fix a problem with new intltool versions, taken from Gentoo
patchPhase = "patch -p3 < ${./potfiles-skip.patch}";
configureFlags = "CFLAGS=-O3 CXXFLAGS=-O3 --disable-dbi --enable-ofx";
postInstall = ''

View file

@ -0,0 +1,147 @@
Index: gnucash/branches/2.4/po/POTFILES.skip
===================================================================
--- gnucash/branches/2.4/po/POTFILES.skip (revision 18623)
+++ gnucash/branches/2.4/po/POTFILES.skip (revision 22300)
@@ -19,2 +19,142 @@
src/libqof/qof/qofquery-serialize.c
src/libqof/qof/qofsql.c
+
+# The scheme files are handled by intl-scm/guile-strings.c because
+# intltool wouldn't scan scheme files. They're here now because
+# intltool 0.50 *does* scan them, and it creates an error during make
+# check. Once the whole world has upgraded to intltool 0.50, intl-scm
+# can be deleted and these files added to POTFILES.in.
+
+src/app-utils/date-utilities.scm
+src/app-utils/prefs.scm
+src/business/business-utils/business-prefs.scm
+src/business/business-utils/business-utils.scm
+src/business/business-utils/gnucash/business-utils.scm
+src/import-export/qif-import/qif-dialog-utils.scm
+src/import-export/qif-import/qif-file.scm
+src/import-export/qif-import/qif-import/qif-dialog-utils.scm
+src/import-export/qif-import/qif-import/qif-file.scm
+src/import-export/qif-import/qif-import/qif-merge-groups.scm
+src/import-export/qif-import/qif-import/qif-parse.scm
+src/import-export/qif-import/qif-import/qif-to-gnc.scm
+src/import-export/qif-import/qif-merge-groups.scm
+src/import-export/qif-import/qif-parse.scm
+src/import-export/qif-import/qif-to-gnc.scm
+src/report/business-reports/aging.scm
+src/report/business-reports/balsheet-eg.eguile.scm
+src/report/business-reports/balsheet-eg.scm
+src/report/business-reports/business-reports.scm
+src/report/business-reports/customer-summary.scm
+src/report/business-reports/easy-invoice.scm
+src/report/business-reports/fancy-invoice.scm
+src/report/business-reports/gnucash/report/aging.scm
+src/report/business-reports/gnucash/report/balsheet-eg.eguile.scm
+src/report/business-reports/gnucash/report/balsheet-eg.scm
+src/report/business-reports/gnucash/report/business-reports.scm
+src/report/business-reports/gnucash/report/customer-summary.scm
+src/report/business-reports/gnucash/report/easy-invoice.scm
+src/report/business-reports/gnucash/report/fancy-invoice.scm
+src/report/business-reports/gnucash/report/invoice.scm
+src/report/business-reports/gnucash/report/job-report.scm
+src/report/business-reports/gnucash/report/owner-report.scm
+src/report/business-reports/gnucash/report/payables.scm
+src/report/business-reports/gnucash/report/receivables.scm
+src/report/business-reports/gnucash/report/taxinvoice.eguile.scm
+src/report/business-reports/gnucash/report/taxinvoice.scm
+src/report/business-reports/invoice.scm
+src/report/business-reports/job-report.scm
+src/report/business-reports/owner-report.scm
+src/report/business-reports/payables.scm
+src/report/business-reports/receivables.scm
+src/report/business-reports/taxinvoice.eguile.scm
+src/report/business-reports/taxinvoice.scm
+src/report/locale-specific/us/gnucash/report/taxtxf-de_DE.scm
+src/report/locale-specific/us/gnucash/report/taxtxf.scm
+src/report/locale-specific/us/taxtxf-de_DE.scm
+src/report/locale-specific/us/taxtxf.scm
+src/report/report-gnome/gnucash/report/report-gnome.scm
+src/report/report-gnome/report-gnome.scm
+src/report/report-system/eguile-gnc.scm
+src/report/report-system/gnucash/report/eguile-gnc.scm
+src/report/report-system/html-acct-table.scm
+src/report/report-system/html-fonts.scm
+src/report/report-system/html-style-sheet.scm
+src/report/report-system/html-utilities.scm
+src/report/report-system/options-utilities.scm
+src/report/report-system/report-utilities.scm
+src/report/report-system/report.scm
+src/report/standard-reports/account-piecharts.scm
+src/report/standard-reports/account-summary.scm
+src/report/standard-reports/advanced-portfolio.scm
+src/report/standard-reports/average-balance.scm
+src/report/standard-reports/balance-sheet.scm
+src/report/standard-reports/budget-balance-sheet.scm
+src/report/standard-reports/budget-barchart.scm
+src/report/standard-reports/budget-flow.scm
+src/report/standard-reports/budget-income-statement.scm
+src/report/standard-reports/budget.scm
+src/report/standard-reports/cash-flow.scm
+src/report/standard-reports/category-barchart.scm
+src/report/standard-reports/daily-reports.scm
+src/report/standard-reports/equity-statement.scm
+src/report/standard-reports/general-journal.scm
+src/report/standard-reports/general-ledger.scm
+src/report/standard-reports/gnucash/report/standard-reports/account-piecharts.scm
+src/report/standard-reports/gnucash/report/standard-reports/account-summary.scm
+src/report/standard-reports/gnucash/report/standard-reports/advanced-portfolio.scm
+src/report/standard-reports/gnucash/report/standard-reports/average-balance.scm
+src/report/standard-reports/gnucash/report/standard-reports/balance-sheet.scm
+src/report/standard-reports/gnucash/report/standard-reports/budget-balance-sheet.scm
+src/report/standard-reports/gnucash/report/standard-reports/budget-barchart.scm
+src/report/standard-reports/gnucash/report/standard-reports/budget-flow.scm
+src/report/standard-reports/gnucash/report/standard-reports/budget-income-statement.scm
+src/report/standard-reports/gnucash/report/standard-reports/budget.scm
+src/report/standard-reports/gnucash/report/standard-reports/cash-flow.scm
+src/report/standard-reports/gnucash/report/standard-reports/category-barchart.scm
+src/report/standard-reports/gnucash/report/standard-reports/daily-reports.scm
+src/report/standard-reports/gnucash/report/standard-reports/equity-statement.scm
+src/report/standard-reports/gnucash/report/standard-reports/general-journal.scm
+src/report/standard-reports/gnucash/report/standard-reports/general-ledger.scm
+src/report/standard-reports/gnucash/report/standard-reports/income-statement.scm
+src/report/standard-reports/gnucash/report/standard-reports/net-barchart.scm
+src/report/standard-reports/gnucash/report/standard-reports/net-linechart.scm
+src/report/standard-reports/gnucash/report/standard-reports/portfolio.scm
+src/report/standard-reports/gnucash/report/standard-reports/price-scatter.scm
+src/report/standard-reports/gnucash/report/standard-reports/register.scm
+src/report/standard-reports/gnucash/report/standard-reports/sx-summary.scm
+src/report/standard-reports/gnucash/report/standard-reports/transaction.scm
+src/report/standard-reports/gnucash/report/standard-reports/trial-balance.scm
+src/report/standard-reports/income-statement.scm
+src/report/standard-reports/net-barchart.scm
+src/report/standard-reports/net-linechart.scm
+src/report/standard-reports/portfolio.scm
+src/report/standard-reports/price-scatter.scm
+src/report/standard-reports/register.scm
+src/report/standard-reports/sx-summary.scm
+src/report/standard-reports/transaction.scm
+src/report/standard-reports/trial-balance.scm
+src/report/stylesheets/gnucash/report/stylesheet-easy.scm
+src/report/stylesheets/gnucash/report/stylesheet-fancy.scm
+src/report/stylesheets/gnucash/report/stylesheet-footer.scm
+src/report/stylesheets/gnucash/report/stylesheet-plain.scm
+src/report/stylesheets/stylesheet-easy.scm
+src/report/stylesheets/stylesheet-fancy.scm
+src/report/stylesheets/stylesheet-footer.scm
+src/report/stylesheets/stylesheet-plain.scm
+src/report/utility-reports/gnucash/report/hello-world.scm
+src/report/utility-reports/gnucash/report/view-column.scm
+src/report/utility-reports/gnucash/report/welcome-to-gnucash.scm
+src/report/utility-reports/hello-world.scm
+src/report/utility-reports/view-column.scm
+src/report/utility-reports/welcome-to-gnucash.scm
+src/scm/build-config.scm
+src/scm/build-config.scm.in
+src/scm/command-line.scm
+src/scm/gnucash/price-quotes.scm
+src/scm/main-window.scm
+src/scm/price-quotes.scm
+src/tax/us/de_DE.scm
+src/tax/us/gnucash/tax/de_DE.scm
+src/tax/us/txf-de_DE.scm
+src/tax/us/txf.scm
+

View file

@ -1,13 +1,13 @@
{ fetchurl, stdenv, libxml2, freetype, mesa, glew, qt4
, cmake, makeWrapper, libjpeg }:
let version = "3.7.0"; in
let version = "4.1.0"; in
stdenv.mkDerivation rec {
name = "tulip-${version}";
src = fetchurl {
url = "mirror://sourceforge/auber/tulip/tulip-3.7.0/${name}-src.tar.gz";
sha256 = "150fj9pdxblvl5sby61cb2kq98r6h8yljk3vq5xizn198d3fz4jq";
url = "mirror://sourceforge/auber/${name}_src.tar.gz";
sha256 = "1js1f8xdm9g2m66xbhfxa8ixzw6h4gjynxsm83p54l3i0hs3biig";
};
buildInputs = [ libxml2 freetype glew mesa qt4 libjpeg ];
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
doCheck = false;
meta = {
description = "Tulip, a visualization framework for the analysis and visualization of relational data";
description = "A visualization framework for the analysis and visualization of relational data";
longDescription =
'' Tulip is an information visualization framework dedicated to the

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, gettext, apr, aprutil, subversion, db4, kdelibs }:
{ stdenv, fetchurl, gettext, apr, aprutil, subversion, db4, kdelibs, expat }:
stdenv.mkDerivation rec {
name = "kdesvn-1.5.5";
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
patches = [ ./docbook.patch ./virtual_inheritance.patch ];
buildInputs = [ apr aprutil subversion db4 kdelibs ];
buildInputs = [ apr aprutil subversion db4 kdelibs expat ];
nativeBuildInputs = [ gettext ];

View file

@ -3,7 +3,7 @@
, gst_ffmpeg, speex
, libogg, libxml2, libjpeg, mesa, libpng, libungif, libtool
, boost, freetype, agg, dbus, curl, pkgconfig, gettext
, glib, gtk, gtkglext, x11, ming, dejagnu, python, perl
, glib, gtk, gtkglext, pangox_compat, x11, ming, dejagnu, python, perl
, freefont_ttf, haxe, swftools
, lib, makeWrapper
, xulrunner }:
@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
gettext x11 SDL SDL_mixer gstreamer gst_plugins_base gst_plugins_good
gst_ffmpeg speex libtool
libogg libxml2 libjpeg mesa libpng libungif boost freetype agg
dbus curl pkgconfig glib gtk gtkglext
dbus curl pkgconfig glib gtk gtkglext pangox_compat
xulrunner
makeWrapper
]

View file

@ -0,0 +1,31 @@
{ stdenv, fetchurl, pkgconfig, wayland, mesa, libxkbcommon
, cairo, libxcb, libXcursor, x11, udev, libdrm, mtdev
, libjpeg, pam, autoconf, automake, libtool }:
let version = "1.0.5"; in
stdenv.mkDerivation rec {
name = "weston-${version}";
src = fetchurl {
url = "http://wayland.freedesktop.org/releases/${name}.tar.xz";
sha256 = "0g2k82pnlxl8b70ykazj7kn8xffjfsmgcgx427qdrm4083z2hgm0";
};
buildInputs = [ pkgconfig wayland mesa libxkbcommon
cairo libxcb libXcursor x11 udev libdrm mtdev
libjpeg pam autoconf automake libtool ];
preConfigure = "autoreconf -vfi";
# prevent install target to chown root weston-launch, which fails
configureFlags = ''
--disable-setuid-install
'';
meta = {
description = "Reference implementation of a Wayland compositor";
homepage = http://wayland.freedesktop.org/;
license = stdenv.lib.licenses.mit;
};
}

View file

@ -1,17 +0,0 @@
{ stdenv, fetchurl, glib, pkgconfig, intltool }:
stdenv.mkDerivation {
name = "gsettings-desktop-schemas-3.2.0";
src = fetchurl {
url = mirror://gnome/sources/gsettings-desktop-schemas/3.2/gsettings-desktop-schemas-3.2.0.tar.xz;
sha256 = "0772axkd1nlf3j1lcg0zi5x5jh4zmr25k98dhn7pzppahljaj3hi";
};
buildInputs = [ glib ];
nativeBuildInputs = [ pkgconfig intltool ];
meta = {
inherit (glib.meta) maintainers platforms;
};
}

View file

@ -1,11 +1,11 @@
{ fetchurl, stdenv, cmake }:
stdenv.mkDerivation rec {
name = "poppler-data-0.4.5";
name = "poppler-data-0.4.6";
src = fetchurl {
url = "http://poppler.freedesktop.org/${name}.tar.gz";
sha256 = "1zbh1zd083wfwrcw7vxc2bn32h42y6iyh24syxcb3r5ggd2vr41i";
sha256 = "1yhaz74b50hjkz3ii077kmq3qg3p3kdyxm33cv6r1njvz8fr01pk";
};
buildInputs = [ cmake ];
@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
homepage = http://poppler.freedesktop.org/;
description = "Encoding files for Poppler, a PDF rendering library";
platforms = stdenv.lib.platforms.all;
license = "free"; # more free licenses combined
maintainers = [ stdenv.lib.maintainers.urkud ];
};
}

View file

@ -1,24 +1,26 @@
{ stdenv, fetchurl, gnome, librsvg, pkgconfig, pygtk, python }:
{ stdenv, fetchurl, gnome, librsvg, pkgconfig, pygtk, python, gtk }:
stdenv.mkDerivation rec {
version = "2.32";
ver_maj = "2.32";
ver_min = "0";
version = "${ver_maj}.${ver_min}";
name = "python-rsvg-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-python-desktop/${version}/gnome-python-desktop-${version}.0.tar.gz";
sha256 = "1xhh3h1qdnimydvv55pmqwyzjchhjwfvp951sjlq0180kskqrlj5";
url = "mirror://gnome/sources/gnome-python-desktop/${ver_maj}/gnome-python-desktop-${version}.tar.bz2";
sha256 = "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9";
};
configurePhase = ''
sed -e "s@{PYTHONDIR}/gtk-2.0@{PYTHONDIR}/@" -i rsvg/wscript
python waf configure --enable-modules=rsvg --prefix=$out
sed -e "s@{PYTHONDIR}/gtk-2.0@{PYTHONDIR}/@" -i rsvg/wscript
python waf configure --enable-modules=rsvg --prefix=$out
'';
buildPhase = "python waf build";
installPhase = "python waf install";
buildInputs = [ gnome.gnome_python librsvg pkgconfig pygtk python ];
buildInputs = [ gtk gnome.gnome_python librsvg pkgconfig pygtk python ];
meta = with stdenv.lib; {
homepage = "http://www.pygtk.org";

View file

@ -29,8 +29,6 @@
libgtkhtml = callPackage ./platform/libgtkhtml { };
intltool = callPackage ./platform/intltool { };
GConf = callPackage ./platform/GConf { };
gconfmm = callPackage ./platform/gconfmm { };

View file

@ -9,6 +9,10 @@ stdenv.mkDerivation rec {
sha256 = "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam";
};
preBuild = ''
sed 's/-DG_DISABLE_DEPRECATED//' -i linc2/src/Makefile
'';
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = [ glib libIDL ];
}

View file

@ -16,4 +16,6 @@ stdenv.mkDerivation rec {
];
propagatedBuildInputs = [ GConf glib ];
postPatch = "find . -name Makefile.in | xargs sed 's/-DG_DISABLE_DEPRECATED//g' -i ";
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, gtk, mesa, pango }:
{ stdenv, fetchurl, pkgconfig, glib, gtk, mesa, pango, pangox_compat, xlibs }:
stdenv.mkDerivation rec {
name = "gtkglext-1.2.0";
@ -8,7 +8,8 @@ stdenv.mkDerivation rec {
sha256 = "0lbz96jwz57hnn52b8rfj54inwpwcc9fkdq6ya043cgnfih77g8n";
};
buildInputs = [ pkgconfig gtk mesa pango ];
buildInputs = with xlibs;
[ pkgconfig glib gtk mesa pango pangox_compat libX11 libXmu ];
# The library uses `GTK_WIDGET_REALIZED', `GTK_WIDGET_TOPLEVEL', and
# `GTK_WIDGET_NO_WINDOW', all of which appear to be deprecated nowadays.

View file

@ -1,13 +0,0 @@
{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, gettext}:
stdenv.mkDerivation rec {
name = "intltool-0.40.6";
src = fetchurl {
url = mirror://gnome/sources/intltool/0.40/intltool-0.40.6.tar.bz2;
sha256 = "0r1vkvy5xzqk01yl6a0xlrry39bra24alkrx6279b77hc62my7jd";
};
buildInputs = [ pkgconfig ];
propagatedBuildInputs = [ perl perlXMLParser gettext ];
}

View file

@ -10,7 +10,9 @@ stdenv.mkDerivation rec {
sha256 = "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i";
};
preConfigure = "export USER=`whoami`";
preConfigure = # still using stuff deprecated in new glib versions
"sed 's/-DG_DISABLE_DEPRECATED//g' -i configure activation-server/Makefile.in";
nativeBuildInputs = [ flex bison pkgconfig intltool procps ];
buildInputs = [ libxml2 ];
propagatedBuildInputs = [ popt glib ORBit2 ];

View file

@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
major = "2"; minor = "32"; patchlevel = "1";
sha256 = "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj";
};
patches = [ ./new-glib.patch ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ popt zlib intltool GConf gnome_vfs libcanberra libtool ];
propagatedBuildInputs = [ glib libbonobo ];

View file

@ -0,0 +1,65 @@
Porting libgnome to newer glib:
* remove g_thread_init and g_thread_supported, which are longer needed
https://developer.gnome.org/glib/2.36/glib-Deprecated-Thread-APIs.html#g-thread-init
* replace GStaticRecMutex by GRecMutex
https://developer.gnome.org/glib/2.36/glib-Deprecated-Thread-APIs.html#GStaticRecMutex
diff --git a/libgnome/gnome-i18n.c b/libgnome/gnome-i18n.c
index 531c56c..f13d61e 100644
--- a/libgnome/gnome-i18n.c
+++ b/libgnome/gnome-i18n.c
@@ -55,12 +55,14 @@
const GList *
gnome_i18n_get_language_list (const gchar *ignored)
{
- static GStaticRecMutex lang_list_lock = G_STATIC_REC_MUTEX_INIT;
+ static GRecMutex lang_list_lock;
+ g_rec_mutex_init (&lang_list_lock);
+
static GList *list = NULL;
const char * const* langs;
int i;
- g_static_rec_mutex_lock (&lang_list_lock);
+ g_rec_mutex_lock (&lang_list_lock);
if (list == NULL) {
langs = g_get_language_names ();
@@ -71,7 +73,7 @@ gnome_i18n_get_language_list (const gchar *ignored)
list = g_list_reverse (list);
}
- g_static_rec_mutex_unlock (&lang_list_lock);
+ g_rec_mutex_unlock (&lang_list_lock);
return list;
}
diff --git a/libgnome/gnome-init.c b/libgnome/gnome-init.c
index fe3efd4..c6619af 100644
--- a/libgnome/gnome-init.c
+++ b/libgnome/gnome-init.c
@@ -115,9 +115,6 @@ gnome_bonobo_module_info_get (void)
static void
bonobo_activation_pre_args_parse (GnomeProgram *program, GnomeModuleInfo *mod_info)
{
- if (!g_thread_supported ())
- g_thread_init (NULL);
-
if (!bonobo_activation_is_initialized ())
bonobo_activation_preinit (program, mod_info);
}
diff --git a/libgnome/gnome-program.c b/libgnome/gnome-program.c
index 739765e..cd14999 100644
--- a/libgnome/gnome-program.c
+++ b/libgnome/gnome-program.c
@@ -1878,10 +1878,6 @@ gnome_program_init (const char *app_id, const char *app_version,
GnomeProgram *program;
va_list args;
- /* g_thread_init() has to be the first GLib function called ever */
- if (!g_threads_got_initialized)
- g_thread_init (NULL);
-
g_type_init ();
va_start(args, first_property_name);

View file

@ -0,0 +1,17 @@
{ stdenv, fetchurl, python, pkgconfig, popt, atk, libX11, libICE, xlibs, libXi
, intltool, dbus_glib, at_spi2_core, libSM }:
stdenv.mkDerivation rec {
versionMajor = "2.8";
versionMinor = "0";
moduleName = "at-spi2-atk";
name = "${moduleName}-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
sha256 = "085sqww174vl3i9ccb477v706rkjs2d107rl96ma1kbl2jyar226";
};
buildInputs = [ python pkgconfig popt atk libX11 libICE xlibs.libXtst libXi
intltool dbus_glib at_spi2_core libSM ];
}

View file

@ -0,0 +1,23 @@
{ stdenv, fetchurl, python, pkgconfig, popt, intltool, dbus_glib
, libX11, xextproto, libSM, libICE, libXtst, libXi }:
stdenv.mkDerivation rec {
versionMajor = "2.8";
versionMinor = "0";
moduleName = "at-spi2-core";
name = "${moduleName}-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
sha256 = "0n64h6j10sn90ds9y70d9wlvvsbwnrym9fm0cyjxb0zmqw7s6q8q";
};
buildInputs = [
python pkgconfig popt intltool dbus_glib
libX11 xextproto libSM libICE libXtst libXi
];
# ToDo: on non-NixOS we create a symlink from there?
configureFlags = "--with-dbus-daemondir=/run/current-system/sw/bin/";
}

View file

@ -0,0 +1,62 @@
{ fetchurl, stdenv, pkgconfig, intltool, perl, perlXMLParser, libxml2
, glib, gtk3, pango, atk, gdk_pixbuf, shared_mime_info
, itstool, gnome_icon_theme, libgnome_keyring, gsettings_desktop_schemas
, poppler, ghostscriptX, djvulibre, libspectre
, makeWrapper #, python /*just for tests*/
, recentListSize ? null # 5 is not enough, allow passing a different number
}:
stdenv.mkDerivation rec {
name = "evince-3.6.1";
src = fetchurl {
url = "http://ftp.gnome.org/pub/GNOME/sources/evince/3.6/${name}.tar.xz";
sha256 = "1da1pij030dh8mb0pr0jnyszgsbjnh8lc17rj5ii52j3kmbv51qv";
};
buildInputs = [
pkgconfig intltool perl perlXMLParser libxml2
glib gtk3 pango atk gdk_pixbuf
itstool gnome_icon_theme libgnome_keyring gsettings_desktop_schemas
poppler ghostscriptX djvulibre libspectre
makeWrapper
];
configureFlags = [
"--disable-nautilus" # Do not use nautilus
"--disable-dbus" # strange compilation error
];
preConfigure = with stdenv.lib;
optionalString doCheck ''
for file in test/*.py; do
echo "patching $file"
sed '1s,/usr,${python},' -i "$file"
done
'' + optionalString (recentListSize != null) ''
sed -i 's/\(gtk_recent_chooser_set_limit .*\)5)/\1${builtins.toString recentListSize})/' shell/ev-open-recent-action.c
sed -i 's/\(if (++n_items == \)5\(.*\)/\1${builtins.toString recentListSize}\2/' shell/ev-window.c
'';
postInstall = ''
# Tell Glib/GIO about the MIME info directory, which is used
# by `g_file_info_get_content_type ()'.
wrapProgram "$out/bin/evince" \
--prefix XDG_DATA_DIRS : "${shared_mime_info}/share:$out/share"
'' + gsettings_desktop_schemas.doCompileSchemas;
doCheck = false; # would need pythonPackages.dogTail, which is missing
meta = {
homepage = http://www.gnome.org/projects/evince/;
description = "GNOME's document viewer";
longDescription = ''
Evince is a document viewer for multiple document formats. It
currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
of Evince is to replace the multiple document viewers that exist
on the GNOME Desktop with a single simple application.
'';
license = "GPLv2+";
};
}

View file

@ -0,0 +1,29 @@
{ stdenv, fetchurl, pkgconfig, dbus_glib, gtk, glib, libxml2
, intltool, polkit, orbit }:
stdenv.mkDerivation rec {
versionMajor = "3.2";
versionMinor = "5";
moduleName = "GConf";
origName = "${moduleName}-${versionMajor}.${versionMinor}";
name = "gconf-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${origName}.tar.xz";
sha256 = "1ijqks0jxc4dyfxg4vnbqds4aj6miyahlsmlqlkf2bi1798akpjd";
};
buildInputs = [ libxml2 polkit gtk orbit ];
propagatedBuildInputs = [ glib dbus_glib ];
nativeBuildInputs = [ pkgconfig intltool ];
# ToDo: ldap reported as not found but afterwards reported as supported
meta = {
homepage = http://projects.gnome.org/gconf/;
description = "A system for storing application preferences";
};
}

View file

@ -0,0 +1,18 @@
{ stdenv, fetchurl, pkgconfig, intltool, gnupg, p11_kit, glib
, libgcrypt, libtasn1, dbus_glib, gtk, pango, gdk_pixbuf, atk }:
stdenv.mkDerivation rec {
name = "gcr-3.6.2";
src = fetchurl {
url = "mirror://gnome/sources/gcr/3.6/${name}.tar.xz";
sha256 = "16xyqxv2hxl3a4m8ahilqcf1ps58w1ijh8dav1l5nqz36ljdn2gp";
};
buildInputs = [
pkgconfig intltool gnupg p11_kit glib
libgcrypt libtasn1 dbus_glib gtk pango gdk_pixbuf atk
];
#doCheck = true;
}

View file

@ -0,0 +1,12 @@
{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils, gtk }:
stdenv.mkDerivation rec {
name = "gnome-icon-theme-3.6.2";
src = fetchurl {
url = "mirror://gnome/sources/gnome-icon-theme/3.6/${name}.tar.xz";
sha256 = "0i8hkx2c1g5ckrvbkvs9n47i8fby8p9xs6p5l0mxdx9aq4smak9i";
};
nativeBuildInputs = [ pkgconfig intltool iconnamingutils gtk ];
}

View file

@ -0,0 +1,26 @@
{stdenv, fetchurl, pkgconfig, dbus, libgcrypt, libtasn1, pam, python, glib
, gtk3, intltool, gconf, libgnome_keyring, pango, gcr, gdk_pixbuf, atk, p11_kit }:
stdenv.mkDerivation rec {
name = "gnome-keyring-3.6.2";
src = fetchurl {
url = "mirror://gnome/sources/gnome-keyring/3.6/${name}.tar.xz";
sha256 = "1mhc2c0qswfjqi2spdvh19b7npfkjf1k40q6v7fja4qpc26maq5f";
};
buildInputs = [
dbus libgcrypt pam python gtk3 gconf libgnome_keyring
pango gcr gdk_pixbuf atk p11_kit
];
propagatedBuildInputs = [ glib libtasn1 ];
nativeBuildInputs = [ pkgconfig intltool ];
configureFlags = [
"--with-ca-certificates=/etc/ssl/certs/ca-bundle.crt" # NixOS hardcoded path
"--with-pkcs11-config=$$out/etc/pkcs11/" # installation directories
"--with-pkcs11-modules=$$out/lib/pkcs11/"
];
}

View file

@ -0,0 +1,20 @@
{ stdenv, fetchurl, pkgconfig, cairo, libxml2, libxslt, gnome3, pango
, gnome_doc_utils, intltool, libX11, which, gconf }:
stdenv.mkDerivation rec {
versionMajor = "3.4";
versionMinor = "1.1";
name = "gnome-terminal-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-terminal/${versionMajor}/${name}.tar.xz";
sha256 = "1p9zqjmkxryf2kyghhhwwpsh4kd8y1jzzwc9zxghmpxszi9a5m0l";
};
configureFlags = "--disable-scrollkeeper";
buildInputs = [ gnome3.gtk gnome3.gsettings_desktop_schemas gnome3.vte gconf ];
nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which ];
}

View file

@ -0,0 +1,30 @@
{ stdenv, fetchurl, pkgconfig, intltool, glib
# just for passthru
, gtk3, gsettings_desktop_schemas }:
stdenv.mkDerivation rec {
versionMajor = "3.6";
versionMinor = "1";
moduleName = "gsettings-desktop-schemas";
name = "${moduleName}-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
sha256 = "1rk71q2rky9nzy0zb5jsvxa62vhg7dk65kdgdifq8s761797ga6r";
};
buildInputs = [ glib ];
nativeBuildInputs = [ pkgconfig intltool ];
passthru = {
doCompileSchemas = ''
for pkg in "${gsettings_desktop_schemas}" "${gtk3}"; do
cp -s $pkg/share/glib-2.0/schemas/*.gschema.xml $out/share/glib-2.0/schemas/
done
${glib}/bin/glib-compile-schemas $out/share/glib-2.0/schemas/
'';
};
}

View file

@ -0,0 +1,21 @@
{ stdenv, fetchurl, pkgconfig, dbus_libs, samba, libarchive, fuse, libgphoto2
, libcdio, libxml2, libtool, glib, intltool, gconf, libgnome_keyring, libsoup
, udev, avahi, libxslt, docbook_xsl }:
stdenv.mkDerivation rec {
name = "gvfs-1.14.2";
src = fetchurl {
url = "mirror://gnome/sources/gvfs/1.14/${name}.tar.xz";
sha256 = "1g4ghyf45jg2ajdkv2d972hbckyjh3d9jdrppai85pl9pk2dmfy3";
};
buildInputs =
[ glib dbus_libs udev samba libarchive fuse libgphoto2 libcdio libxml2 gconf
libgnome_keyring libsoup avahi libtool libxslt docbook_xsl
];
nativeBuildInputs = [ pkgconfig intltool ];
enableParallelBuilding = true;
}

View file

@ -0,0 +1,11 @@
{stdenv, fetchurl, pkgconfig, libxml2, glib}:
stdenv.mkDerivation rec {
name = "libcroco-0.6.6"; # 3.6.2 release
src = fetchurl {
url = "mirror://gnome/sources/libcroco/0.6/${name}.tar.xz";
sha256 = "1nbb12420v1zacn6jwa1x4ixikkcqw66sg4j5dgs45nhygiarv3j";
};
buildInputs = [ pkgconfig libxml2 glib ];
}

View file

@ -0,0 +1,17 @@
{ stdenv, fetchurl, glib, dbus_libs, libgcrypt, pkgconfig, intltool }:
stdenv.mkDerivation rec {
name = "libgnome-keyring-3.6.0";
src = fetchurl {
url = "mirror://gnome/sources/libgnome-keyring/3.6/${name}.tar.xz";
sha256 = "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd";
};
propagatedBuildInputs = [ glib dbus_libs libgcrypt ];
nativeBuildInputs = [ pkgconfig intltool ];
meta = {
inherit (glib.meta) platforms maintainers;
};
}

View file

@ -0,0 +1,14 @@
{ stdenv, fetchurl, pkgconfig, libxml2, gtk, intltool, libsoup, gconf
, pango, gdk_pixbuf, atk }:
stdenv.mkDerivation rec {
name = "libgweather-3.6.2";
src = fetchurl {
url = "mirror://gnome/sources/libgweather/3.6/${name}.tar.xz";
sha256 = "1c50m0zrnfh4g58rzf33dfw8ggslj38c61p8a75905bmj3rfyahg";
};
configureFlags = if stdenv ? glibc then "--with-zoneinfo-dir=${stdenv.glibc}/share/zoneinfo" else "";
propagatedBuildInputs = [ libxml2 gtk libsoup gconf pango gdk_pixbuf atk ];
nativeBuildInputs = [ pkgconfig intltool ];
}

View file

@ -0,0 +1,46 @@
{ stdenv, fetchurl, intltool, pkgconfig, gnome3, ncurses
, pythonSupport ? false, python, pygtk}:
stdenv.mkDerivation rec {
versionMajor = "0.32";
versionMinor = "2";
moduleName = "vte";
name = "${moduleName}-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
sha256 = "0sj837b9ib36gx00hzdinv23f7w91fd5mcw1p6wdi053yxqw17nn";
};
buildInputs = [ intltool pkgconfig gnome3.glib gnome3.gtk ncurses ] ++
stdenv.lib.optionals pythonSupport [python pygtk];
configureFlags = ''
${if pythonSupport then "--enable-python" else "--disable-python"}
'';
postInstall = stdenv.lib.optionalString pythonSupport ''
cd $(toPythonPath $out)/gtk-2.0
for n in *; do
ln -s "gtk-2.0/$n" "../$n"
done
'';
meta = {
homepage = http://www.gnome.org/;
description = "A library implementing a terminal emulator widget for GTK+";
longDescription = ''
VTE is a library (libvte) implementing a terminal emulator widget for
GTK+, and a minimal sample application (vte) using that. Vte is
mainly used in gnome-terminal, but can also be used to embed a
console/terminal in games, editors, IDEs, etc. VTE supports Unicode and
character set conversion, as well as emulating any terminal known to
the system's terminfo database.
'';
license = "LGPLv2";
maintainers = with stdenv.lib.maintainers; [ astsmtl antono ];
platforms = with stdenv.lib.platforms; linux;
};
}

View file

@ -0,0 +1,20 @@
{ stdenv, fetchurl, pkgconfig, cairo, libxml2, libxslt, gnome3, pango
, gnome_doc_utils, intltool, libX11, which }:
stdenv.mkDerivation rec {
versionMajor = "3.4";
versionMinor = "0";
name = "zenity-${versionMajor}.${versionMinor}";
src = fetchurl {
url = "mirror://gnome/sources/zenity/${versionMajor}/zenity-${versionMajor}.${versionMinor}.tar.xz";
sha256 = "1bqbfcvd3kj2xk15fvbcdaqvyg9qvymlhn8cwvg5m6v4gicniw2w";
};
configureFlags = "--disable-scrollkeeper";
buildInputs = [ gnome3.gtk libxml2 libxslt libX11 ];
nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which ];
}

View file

@ -0,0 +1,55 @@
{ callPackage, lib, self, stdenv, gettext, overrides ? {}, pkgs }:
rec {
inherit (pkgs) fetchurl_gnome glib gtk3 atk pango;
gtk = gtk3;
orbit = pkgs.gnome2.ORBit2;
inherit (lib) lowPrio hiPrio appendToName makeOverridable;
__overrides = overrides;
#### Core (http://ftp.acc.umu.se/pub/GNOME/core/)
at_spi2_atk = lib.lowPrio (callPackage ./core/at-spi2-atk { });
at_spi2_core = callPackage ./core/at-spi2-core { };
evince = callPackage ./core/evince { }; # ToDo: dbus would prevent compilation, enable tests
gconf = callPackage ./core/gconf { };
gcr = callPackage ./core/gcr { }; # ToDo: tests fail
gnome_icon_theme = callPackage ./core/gnome-icon-theme { };
gnome_keyring = callPackage ./core/gnome-keyring { };
libgnome_keyring = callPackage ./core/libgnome-keyring { };
gnome_terminal = callPackage ./core/gnome-terminal { };
gsettings_desktop_schemas = lib.lowPrio (callPackage ./core/gsettings-desktop-schemas { });
gvfs = callPackage ./core/gvfs { };
libcroco = callPackage ./core/libcroco {};
libgweather = callPackage ./core/libgweather { };
vte = callPackage ./core/vte { };
zenity = callPackage ./core/zenity { };
#### Apps (http://ftp.acc.umu.se/pub/GNOME/apps/)
gnome_dictionary = callPackage ./desktop/gnome-dictionary { };
gnome_desktop = callPackage ./desktop/gnome-desktop { };
# Removed from recent GNOME releases, but still required
scrollkeeper = callPackage ./desktop/scrollkeeper { };
# scrollkeeper replacement
rarian = callPackage ./desktop/rarian { };
}

View file

@ -0,0 +1,18 @@
{ stdenv, fetchurl, pkgconfig, python, libxml2Python, libxslt, which, libX11, gnome3
, intltool, gnome_doc_utils}:
stdenv.mkDerivation rec {
majorVersion = "3.5";
minorVersion = "3";
name = "gnome-desktop-${majorVersion}.${minorVersion}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-desktop/${majorVersion}/${name}.tar.xz";
sha256 = "1nrqcp1p5cxhfjjy5hjpvkqmzsgl2353a08fg0b11c932v95bsba";
};
configureFlags = "--disable-scrollkeeper";
buildInputs = [ pkgconfig python libxml2Python libxslt which libX11
gnome3.gtk gnome3.glib intltool gnome_doc_utils ];
}

View file

@ -0,0 +1,15 @@
{ stdenv, fetchurl, pkgconfig, gnome3, gnome_doc_utils, intltool, which
, libxml2, libxslt }:
stdenv.mkDerivation rec {
version = "3.5.2";
name = "gnome-dictionary-${version}";
src = fetchurl {
url = "mirror://gnome/sources/gnome-dictionary/3.5/${name}.tar.xz";
sha256 = "1cq32csxn27vir5nlixx337ym2nal9ykq3s1j7yynh2adh4m0jil";
};
buildInputs = [ gnome3.gtk ];
nativeBuildInputs = [ pkgconfig intltool gnome_doc_utils which libxml2 libxslt gnome3.scrollkeeper ];
}

View file

@ -0,0 +1,11 @@
{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42}:
stdenv.mkDerivation rec {
name = "rarian-0.8.1";
src = fetchurl {
url = "mirror://gnome/sources/rarian/0.8/${name}.tar.bz2";
sha256 = "aafe886d46e467eb3414e91fa9e42955bd4b618c3e19c42c773026b205a84577";
};
buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt];
configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat";
}

View file

@ -0,0 +1,18 @@
{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42, automake}:
stdenv.mkDerivation {
name = "scrollkeeper-0.3.14";
src = fetchurl {
url = mirror://gnome/sources/scrollkeeper/0.3/scrollkeeper-0.3.14.tar.bz2;
sha256 = "08n1xgj1f53zahwm0wpn3jid3rfbhi3iwby0ilaaldnid5qriqgc";
};
# The fuloong2f is not supported by scrollkeeper-0.3.14 config.guess
preConfigure = "
substituteInPlace extract/dtds/Makefile.am --replace /usr/bin/xmlcatalog xmlcatalog
cp ${automake}/share/automake*/config.{sub,guess} .
";
buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt];
configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat";
}

View file

@ -0,0 +1,37 @@
{ pkgs, newScope }: let
common = (import ./common.nix) { inherit pkgs newScope xfce_self; };
callPackage = common.callPackage;
xfce_self = common.xfce_common // rec { # the lines are very long but it seems better than the even-odd line approach
#### CORE
exo = callPackage ./core/exo.nix { v= "0.6.2"; h= "0f8zh5y057l7xffskjvky6k88hrnz6jyk35mvlfpmx26anlgd77l"; };
libxfce4ui = callPackage ./core/libxfce4ui.nix { v= "4.8.1"; h= "0mlrcr8rqmv047xrb2dbh7f4knsppb1anx2b05s015h6v8lyvjrr"; };
libxfce4util = callPackage ./core/libxfce4util.nix { v= "4.8.2"; h= "05n8586h2fwkibfld5fm4ygx1w66jnbqqb3li0ardjvm2n24k885"; };
libxfcegui4 = callPackage ./core/libxfcegui4.nix { v= "4.8.1"; h= "0hr4h6a9p6w3qw1976p8v9c9pwhd9zhrjlbaph0p7nyz7j1836ih"; };
thunar = callPackage ./core/thunar.nix { v= "1.2.3"; h= "19mczys6xr683r68g3s2njrrmnk1p73zypvwrhajw859c6nsjsp6"; };
xfce4panel = callPackage ./core/xfce4-panel.nix { v= "4.8.6"; h= "00zdkg1jg4n2n109nxan8ji2m06r9mc4lnlrvb55xvj229m2dwb6"; };
xfce4session = callPackage ./core/xfce4-session.nix { v= "4.8.2"; h= "1l608kik98jxbjl73waf8515hzji06lr80qmky2qlnp0b6js5g1i"; };
xfce4settings = callPackage ./core/xfce4-settings.nix { v= "4.8.3"; h= "0bmw0s6jp2ws4n0f3387zwsyv46b0w89m6r70yb7wrqy9r3wqy6q"; };
xfceutils = callPackage ./core/xfce-utils.nix { v= "4.8.3"; h= "09mr0amp2f632q9i3vykaa0x5nrfihfm9v5nxsx9vch8wvbp0l03"; };
xfconf = callPackage ./core/xfconf.nix { v= "4.8.1"; h= "1jwkb73xcgqfly449jwbn2afiyx50p150z60x19bicps75sp6q4q"; };
xfdesktop = callPackage ./core/xfdesktop.nix { v= "4.8.3"; h= "097lc9djmay0jyyl42jmvcfda75ndp265nzn0aa3hv795bsn1175"; };
xfwm4 = callPackage ./core/xfwm4.nix { v= "4.8.3"; h= "0zi2g1d2jdgw5armlk9xjh4ykmydy266gdba86nmhy951gm8n3hb"; };
xfce4_appfinder = callPackage ./core/xfce4-appfinder.nix { v= "4.8.0"; h= "0zy7i9x4qjchmyb8nfpb7m2ply5n2aq35p9wrhb8lpz4am1ihx7x"; };
#### APPLICATIONS
terminal = null; # newer versions don't build with 4.8
# versions > 0.3* don't build with xfce-4.8.*
ristretto = callPackage ./applications/ristretto.nix { v= "0.3.7"; h= "19mzy159j4qhd7pd1b83gimxfdg3mwdab9lq9kk505d21r7iqc9b"; };
xfce4mixer = callPackage ./applications/xfce4-mixer.nix { v= "4.8.0"; h= "1aqgjxvck6hx26sk3n4n5avhv02vs523mfclcvjb3xnks3yli7wz"; };
}; # xfce_self
in xfce_self

View file

@ -0,0 +1,35 @@
{ pkgs, newScope }: let
common = (import ./common.nix) { inherit pkgs newScope xfce_self; };
callPackage = common.callPackage;
xfce_self = common.xfce_common // rec { # the lines are very long but it seems better than the even-odd line approach
#### CORE
exo = callPackage ./core/exo.nix { v= "0.10.2"; h= "1kknxiz703q4snmry65ajm26jwjslbgpzdal6bd090m3z25q51dk"; };
libxfce4ui = callPackage ./core/libxfce4ui.nix { v= "4.10.0"; h= "1qm31s6568cz4c8rl9fsfq0xmf7pldxm0ki62gx1cpybihlgmfd2"; };
libxfce4util = callPackage ./core/libxfce4util.nix { v= "4.10.0"; h= "13k0wwbbqvdmbj4xmk4nxdlgvrdgr5y6r3dk380mzfw053hzwy89"; };
libxfcegui4 = callPackage ./core/libxfcegui4.nix { v= "4.10.0"; h= "0cs5im0ib0cmr1lhr5765yliqjfyxvk4kwy8h1l8bn3mj6bzk0ib"; };
thunar = callPackage ./core/thunar.nix { v= "1.6.2"; h= "11dx38rvkfbp91pxrprymxhimsm90gvizp277x9s5rwnwcm1ggbx"; };
xfce4panel = callPackage ./core/xfce4-panel.nix { v= "4.10.0"; h= "1f8903nx6ivzircl8d8s9zna4vjgfy0qhjk5d2x19g9bmycgj89k"; };
xfce4session = callPackage ./core/xfce4-session.nix { v= "4.10.0"; h= "1kj65jkjhd0ysf0yxsf88wzpyv6n8i8qgd3gb502hf1x9jksk2mv"; };
xfce4settings = callPackage ./core/xfce4-settings.nix { v= "4.10.0"; h= "0zppq747z9lrxyv5zrrvpalq7hb3gfhy9p7qbldisgv7m6dz0hq8"; };
xfceutils = null; # removed in 4.10
xfconf = callPackage ./core/xfconf.nix { v= "4.10.0"; h= "0xh520z0qh0ib0ijgnyrgii9h5d4pc53n6mx1chhyzfc86j1jlhp"; };
xfdesktop = callPackage ./core/xfdesktop.nix { v= "4.10.0"; h= "0yrddj1lgk3xn4w340y89z7x2isks72ia36pka08kk2x8gpfcyl9"; };
xfwm4 = callPackage ./core/xfwm4.nix { v= "4.10.0"; h= "170zzs7adj47srsi2cl723w9pl8k8awd7w1bpzxby7hj92zmf8s9"; };
xfce4_appfinder = callPackage ./core/xfce4-appfinder.nix { v= "4.9.4"; h= "12lgrbd1n50w9n8xkpai98s2aw8vmjasrgypc57sp0x0qafsqaxq"; };
#### APPLICATIONS
ristretto = callPackage ./applications/ristretto.nix { v= "0.6.3"; h= "0y9d8w1plwp4vmxs44y8k8x15i0k0xln89k6jndhv6lf57g1cs1b"; };
terminal = xfce4terminal; # it has changed its name
xfce4mixer = callPackage ./applications/xfce4-mixer.nix { v= "4.10.0"; h= "1pnsd00583l7p5d80rxbh58brzy3jnccwikbbbm730a33c08kid8"; };
xfce4terminal = callPackage ./applications/terminal.nix { v= "0.6.1"; h= "1j6lpkq952mrl5p24y88f89wn9g0namvywhma639xxsswlkn8d31"; };
};
in xfce_self

View file

@ -0,0 +1,72 @@
{ pkgs, newScope, xfce_self }: rec {
callPackage = newScope (deps // xfce_self);
deps = rec { # xfce-global dependency overrides should be here
inherit (pkgs.gnome) libglade libwnck vte gtksourceview;
inherit (pkgs.perlPackages) URI;
# The useful bits from gnome-disk-utility.
libgdu = callPackage ./support/libgdu.nix { };
# Gvfs is required by Thunar for the trash feature and for volume
# mounting. Should use the one from Gnome, but I don't want to mess
# with the Gnome packages (or pull in a zillion Gnome dependencies).
gvfs = callPackage ./support/gvfs.nix { };
# intelligent fetcher for Xfce
fetchXfce = rec {
generic = prepend : name : hash :
let lib = pkgs.lib;
p = builtins.parseDrvName name;
versions = lib.splitString "." p.version;
ver_maj = lib.concatStrings (lib.intersperse "." (lib.take 2 versions));
name_low = lib.toLower p.name;
in pkgs.fetchurl {
url = "mirror://xfce/src/${prepend}/${name_low}/${ver_maj}/${name}.tar.bz2";
sha256 = hash;
};
core = generic "xfce";
app = generic "apps";
art = generic "art";
};
};
xfce_common = rec {
inherit (deps) gvfs; # used by NixOS
#### CORE
garcon = callPackage ./core/garcon.nix { v= "0.2.0"; h= "0v7pkvxcayi86z4f173z5l7w270f3g369sa88z59w0y0p7ns7ph2"; };
# not used anymore TODO: really? Update to 2.99.2?
gtk_xfce_engine = callPackage ./core/gtk-xfce-engine.nix { };
# ToDo: segfaults after some work
tumbler = callPackage ./core/tumbler.nix { v= "0.1.27"; h= "0s9qj99b81asmlqa823nzykq8g6p9azcp2niak67y9bp52wv6q2c"; };
xfce4_power_manager = callPackage ./core/xfce4-power-manager.nix { v= "1.0.10"; h= "1w120k1sl4s459ijaxkqkba6g1p2sqrf9paljv05wj0wz12bpr40"; };
#### APPLICATIONS
#TODO: correct links; more stuff
xfce4notifyd = callPackage ./applications/xfce4-notifyd.nix { v= "0.2.2"; h= "0s4ilc36sl5k5mg5727rmqims1l3dy5pwg6dk93wyjqnqbgnhvmn"; };
gigolo = callPackage ./applications/gigolo.nix { v= "0.4.1"; h= "1y8p9bbv1a4qgbxl4vn6zbag3gb7gl8qj75cmhgrrw9zrvqbbww2"; };
xfce4taskmanager = callPackage ./applications/xfce4-taskmanager.nix { v= "1.0.0"; h= "1vm9gw7j4ngjlpdhnwdf7ifx6xrrn21011almx2vwidhk2f9zvy0"; };
mousepad = callPackage ./applications/mousepad.nix { v= "0.3.0"; h= "0v84zwhjv2xynvisn5vmp7dbxfj4l4258m82ks7hn3adk437bwhh"; };
thunar_volman = callPackage ./core/thunar-volman.nix { };
#### ART
xfce4icontheme = callPackage ./art/xfce4-icon-theme.nix { v= "4.4.3"; h= "1yk6rx3zr9grm4jwpjvqdkl13pisy7qn1wm5cqzmd2kbsn96cy6l"; };
#### PANEL PLUGINS
xfce4_systemload_plugin = callPackage ./panel-plugins/xfce4-systemload-plugin.nix { };
xfce4_cpufreq_plugin = callPackage ./panel-plugins/xfce4-cpufreq-plugin.nix { };
};
}

View file

@ -0,0 +1,24 @@
{ stdenv, fetchurl, pkgconfig, glib, autoconf, automake, libtool, intltool }:
stdenv.mkDerivation rec {
p_name = "xfce4-dev-tools";
ver_maj = "4.10";
ver_min = "0";
src = fetchurl {
url = "mirror://xfce/src/xfce/${p_name}/${ver_maj}/${name}.tar.bz2";
sha256 = "1y1byfjciqhxqfxbjfp22bn5lxk3a01ng7zfjha8h5mzzfxlk5pp";
};
name = "${p_name}-${ver_maj}.${ver_min}";
buildInputs = [ pkgconfig glib ];
# not needed to build it but to use it
propagatedBuildInputs = [ autoconf automake libtool intltool ];
meta = {
homepage = http://foo-projects.org/~benny/projects/xfce4-dev-tools/;
description = "Tools and M4 macros for Xfce4 developers";
license = "GPLv2+";
};
}

View file

@ -0,0 +1,470 @@
From ae28aef315a7a6b90f1649ce6d1f30b842791cbf Mon Sep 17 00:00:00 2001
From: Nick Schermer <nick@xfce.org>
Date: Sun, 04 Nov 2012 20:23:36 +0000
Subject: Add shutdown/reboot functionality for systemd (bug #8729).
Based on patch by Christian Hesse and Evangelos Foutras.
---
diff --git a/configure.in.in b/configure.in.in
index 9aa4f8f..134d0f7 100644
--- a/configure.in
+++ b/configure.in
@@ -96,6 +96,10 @@ XDT_CHECK_PACKAGE([DBUS], [dbus-1], [1.1.0])
XDT_CHECK_PACKAGE([DBUS_GLIB], [dbus-glib-1], [0.84])
XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.9.0])
+dnl Check for polkit / systemd integration
+XDT_CHECK_OPTIONAL_PACKAGE([SYSTEMD], [polkit-gobject-1], [0.100],
+ [systemd], [Systemd support (through polit)])
+
dnl Check for debugging support
XDT_FEATURE_DEBUG([xfsm_debug_default])
diff --git a/xfce4-session/Makefile.am b/xfce4-session/Makefile.am
index c015154..f748b2b 100644
--- a/xfce4-session/Makefile.am
+++ b/xfce4-session/Makefile.am
@@ -38,8 +38,6 @@ xfce4_session_SOURCES = \
xfsm-compat-gnome.h \
xfsm-compat-kde.c \
xfsm-compat-kde.h \
- xfsm-consolekit.c \
- xfsm-consolekit.h \
xfsm-dns.c \
xfsm-dns.h \
xfsm-error.c \
@@ -65,6 +63,16 @@ xfce4_session_SOURCES = \
xfsm-upower.c \
xfsm-upower.h
+if HAVE_SYSTEMD
+xfce4_session_SOURCES += \
+ xfsm-systemd.c \
+ xfsm-systemd.h
+else
+xfce4_session_SOURCES += \
+ xfsm-consolekit.c \
+ xfsm-consolekit.h
+endif
+
xfce4_session_CFLAGS = \
$(LIBSM_CFLAGS) \
$(LIBX11_CFLAGS) \
@@ -72,6 +80,7 @@ xfce4_session_CFLAGS = \
$(DBUS_CFLAGS) \
$(DBUS_GLIB_CFLAGS) \
$(LIBWNCK_CFLAGS) \
+ $(SYSTEMD_CFLAGS) \
$(XFCONF_CFLAGS) \
$(GMODULE_CFLAGS) \
$(PLATFORM_CFLAGS)
@@ -91,6 +100,7 @@ xfce4_session_LDADD = \
$(DBUS_LIBS) \
$(DBUS_GLIB_LIBS) \
$(LIBWNCK_LIBS) \
+ $(SYSTEMD_LIBS) \
$(XFCONF_LIBS) \
-lm
diff --git a/xfce4-session/xfsm-shutdown.c b/xfce4-session/xfsm-shutdown.c
index d8757a8..4c483a7 100644
--- a/xfce4-session/xfsm-shutdown.c
+++ b/xfce4-session/xfsm-shutdown.c
@@ -66,10 +66,13 @@
#include <xfce4-session/xfsm-fadeout.h>
#include <xfce4-session/xfsm-global.h>
#include <xfce4-session/xfsm-legacy.h>
-#include <xfce4-session/xfsm-consolekit.h>
#include <xfce4-session/xfsm-upower.h>
-
+#ifdef HAVE_SYSTEMD
+#include <xfce4-session/xfsm-systemd.h>
+#else
+#include <xfce4-session/xfsm-consolekit.h>
+#endif
static void xfsm_shutdown_finalize (GObject *object);
static void xfsm_shutdown_sudo_free (XfsmShutdown *shutdown);
@@ -93,7 +96,11 @@ struct _XfsmShutdown
{
GObject __parent__;
+#ifdef HAVE_SYSTEMD
+ XfsmSystemd *systemd;
+#else
XfsmConsolekit *consolekit;
+#endif
XfsmUPower *upower;
/* kiosk settings */
@@ -131,7 +138,11 @@ xfsm_shutdown_init (XfsmShutdown *shutdown)
{
XfceKiosk *kiosk;
+#ifdef HAVE_SYSTEMD
+ shutdown->systemd = xfsm_systemd_get ();
+#else
shutdown->consolekit = xfsm_consolekit_get ();
+#endif
shutdown->upower = xfsm_upower_get ();
shutdown->helper_state = SUDO_NOT_INITIAZED;
shutdown->helper_require_password = FALSE;
@@ -150,7 +161,11 @@ xfsm_shutdown_finalize (GObject *object)
{
XfsmShutdown *shutdown = XFSM_SHUTDOWN (object);
+#ifdef HAVE_SYSTEMD
+ g_object_unref (G_OBJECT (shutdown->systemd));
+#else
g_object_unref (G_OBJECT (shutdown->consolekit));
+#endif
g_object_unref (G_OBJECT (shutdown->upower));
/* close down helper */
@@ -641,7 +656,11 @@ xfsm_shutdown_try_restart (XfsmShutdown *shutdown,
if (shutdown->helper_state == SUDO_AVAILABLE)
return xfsm_shutdown_sudo_try_action (shutdown, XFSM_SHUTDOWN_RESTART, error);
else
+#ifdef HAVE_SYSTEMD
+ return xfsm_systemd_try_restart (shutdown->systemd, error);
+#else
return xfsm_consolekit_try_restart (shutdown->consolekit, error);
+#endif
}
@@ -658,7 +677,11 @@ xfsm_shutdown_try_shutdown (XfsmShutdown *shutdown,
if (shutdown->helper_state == SUDO_AVAILABLE)
return xfsm_shutdown_sudo_try_action (shutdown, XFSM_SHUTDOWN_SHUTDOWN, error);
else
+#ifdef HAVE_SYSTEMD
+ return xfsm_systemd_try_shutdown (shutdown->systemd, error);
+#else
return xfsm_consolekit_try_shutdown (shutdown->consolekit, error);
+#endif
}
@@ -698,7 +721,11 @@ xfsm_shutdown_can_restart (XfsmShutdown *shutdown,
return TRUE;
}
+#ifdef HAVE_SYSTEMD
+ if (xfsm_systemd_can_restart (shutdown->systemd, can_restart, error))
+#else
if (xfsm_consolekit_can_restart (shutdown->consolekit, can_restart, error))
+#endif
return TRUE;
if (xfsm_shutdown_sudo_init (shutdown, error))
@@ -725,7 +752,11 @@ xfsm_shutdown_can_shutdown (XfsmShutdown *shutdown,
return TRUE;
}
+#ifdef HAVE_SYSTEMD
+ if (xfsm_systemd_can_shutdown (shutdown->systemd, can_shutdown, error))
+#else
if (xfsm_consolekit_can_shutdown (shutdown->consolekit, can_shutdown, error))
+#endif
return TRUE;
if (xfsm_shutdown_sudo_init (shutdown, error))
diff --git a/xfce4-session/xfsm-systemd.c b/xfce4-session/xfsm-systemd.c
new file mode 100644
index 0000000..7bdd39d
--- /dev/null
+++ b/xfce4-session/xfsm-systemd.c
@@ -0,0 +1,229 @@
+/*-
+ * Copyright (C) 2012 Christian Hesse
+ *
+ * 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
+ * the Free Software Foundation; either version 2, or (at your option)
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301 USA.
+ */
+
+#include <config.h>
+
+#include <gio/gio.h>
+#include <polkit/polkit.h>
+#include <dbus/dbus-glib.h>
+#include <dbus/dbus-glib-lowlevel.h>
+
+#include <xfce4-session/xfsm-systemd.h>
+
+
+
+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
+#define SYSTEMD_REBOOT_ACTION "Reboot"
+#define SYSTEMD_POWEROFF_ACTION "PowerOff"
+#define SYSTEMD_REBOOT_TEST "org.freedesktop.login1.reboot"
+#define SYSTEMD_POWEROFF_TEST "org.freedesktop.login1.power-off"
+
+
+
+static void xfsm_systemd_finalize (GObject *object);
+
+
+
+struct _XfsmSystemdClass
+{
+ GObjectClass __parent__;
+};
+
+struct _XfsmSystemd
+{
+ GObject __parent__;
+
+ PolkitAuthority *authority;
+ PolkitSubject *subject;
+};
+
+
+
+G_DEFINE_TYPE (XfsmSystemd, xfsm_systemd, G_TYPE_OBJECT)
+
+
+
+static void
+xfsm_systemd_class_init (XfsmSystemdClass *klass)
+{
+ GObjectClass *gobject_class;
+
+ gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->finalize = xfsm_systemd_finalize;
+}
+
+
+
+static void
+xfsm_systemd_init (XfsmSystemd *systemd)
+{
+ systemd->authority = polkit_authority_get_sync (NULL, NULL);
+ systemd->subject = polkit_unix_process_new (getpid());
+}
+
+
+
+static void
+xfsm_systemd_finalize (GObject *object)
+{
+ XfsmSystemd *systemd = XFSM_SYSTEMD (object);
+
+ g_object_unref (G_OBJECT (systemd->authority));
+ g_object_unref (G_OBJECT (systemd->subject));
+
+ (*G_OBJECT_CLASS (xfsm_systemd_parent_class)->finalize) (object);
+}
+
+
+static gboolean
+xfsm_systemd_can_method (XfsmSystemd *systemd,
+ gboolean *can_method,
+ const gchar *method,
+ GError **error)
+{
+ PolkitAuthorizationResult *res;
+ GError *local_error = NULL;
+
+ *can_method = FALSE;
+
+ res = polkit_authority_check_authorization_sync (systemd->authority,
+ systemd->subject,
+ method,
+ NULL,
+ POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE,
+ NULL,
+ &local_error);
+
+ if (res == NULL)
+ {
+ g_propagate_error (error, local_error);
+ return FALSE;
+ }
+
+ *can_method = polkit_authorization_result_get_is_authorized (res)
+ || polkit_authorization_result_get_is_challenge (res);
+
+ g_object_unref (G_OBJECT (res));
+
+ return TRUE;
+}
+
+
+
+static gboolean
+xfsm_systemd_try_method (XfsmSystemd *systemd,
+ const gchar *method,
+ GError **error)
+{
+ GDBusConnection *bus;
+ GError *local_error = NULL;
+
+ bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, error);
+ if (G_UNLIKELY (bus == NULL))
+ return FALSE;
+
+ g_dbus_connection_call_sync (bus,
+ SYSTEMD_DBUS_NAME,
+ SYSTEMD_DBUS_PATH,
+ SYSTEMD_DBUS_INTERFACE,
+ method,
+ g_variant_new ("(b)", TRUE),
+ NULL, 0, G_MAXINT, NULL,
+ &local_error);
+
+ g_object_unref (G_OBJECT (bus));
+
+ if (local_error != NULL)
+ {
+ g_propagate_error (error, local_error);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+
+
+XfsmSystemd *
+xfsm_systemd_get (void)
+{
+ static XfsmSystemd *object = NULL;
+
+ if (G_LIKELY (object != NULL))
+ {
+ g_object_ref (G_OBJECT (object));
+ }
+ else
+ {
+ object = g_object_new (XFSM_TYPE_SYSTEMD, NULL);
+ g_object_add_weak_pointer (G_OBJECT (object), (gpointer) &object);
+ }
+
+ return object;
+}
+
+
+
+gboolean
+xfsm_systemd_try_restart (XfsmSystemd *systemd,
+ GError **error)
+{
+ return xfsm_systemd_try_method (systemd,
+ SYSTEMD_REBOOT_ACTION,
+ error);
+}
+
+
+
+gboolean
+xfsm_systemd_try_shutdown (XfsmSystemd *systemd,
+ GError **error)
+{
+ return xfsm_systemd_try_method (systemd,
+ SYSTEMD_POWEROFF_ACTION,
+ error);
+}
+
+
+
+gboolean
+xfsm_systemd_can_restart (XfsmSystemd *systemd,
+ gboolean *can_restart,
+ GError **error)
+{
+ return xfsm_systemd_can_method (systemd,
+ can_restart,
+ SYSTEMD_REBOOT_TEST,
+ error);
+}
+
+
+
+gboolean
+xfsm_systemd_can_shutdown (XfsmSystemd *systemd,
+ gboolean *can_shutdown,
+ GError **error)
+{
+ return xfsm_systemd_can_method (systemd,
+ can_shutdown,
+ SYSTEMD_POWEROFF_TEST,
+ error);
+}
diff --git a/xfce4-session/xfsm-systemd.h b/xfce4-session/xfsm-systemd.h
new file mode 100644
index 0000000..8223622
--- /dev/null
+++ b/xfce4-session/xfsm-systemd.h
@@ -0,0 +1,55 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
+ *
+ * Copyright (C) 2012 Christian Hesse
+ *
+ * Licensed under the GNU General Public License Version 2
+ *
+ * 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
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifndef __XFSM_SYSTEMD_H__
+#define __XFSM_SYSTEMD_H__
+
+typedef struct _XfsmSystemdClass XfsmSystemdClass;
+typedef struct _XfsmSystemd XfsmSystemd;
+
+#define XFSM_TYPE_SYSTEMD (xfsm_systemd_get_type ())
+#define XFSM_SYSTEMD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XFSM_TYPE_SYSTEMD, XfsmSystemd))
+#define XFSM_SYSTEMD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), XFSM_TYPE_SYSTEMD, XfsmSystemdClass))
+#define XFSM_IS_SYSTEMD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XFSM_TYPE_SYSTEMD))
+#define XFSM_IS_SYSTEMD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), XFSM_TYPE_SYSTEMD))
+#define XFSM_SYSTEMD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), XFSM_TYPE_SYSTEMD, XfsmSystemdClass))
+
+GType xfsm_systemd_get_type (void) G_GNUC_CONST;
+
+XfsmSystemd *xfsm_systemd_get (void);
+
+gboolean xfsm_systemd_try_restart (XfsmSystemd *systemd,
+ GError **error);
+
+gboolean xfsm_systemd_try_shutdown (XfsmSystemd *systemd,
+ GError **error);
+
+gboolean xfsm_systemd_can_restart (XfsmSystemd *systemd,
+ gboolean *can_restart,
+ GError **error);
+
+gboolean xfsm_systemd_can_shutdown (XfsmSystemd *systemd,
+ gboolean *can_shutdown,
+ GError **error);
+
+G_END_DECLS
+
+#endif /* __XFSM_SYSTEMD_H__ */
--
cgit v0.9.1

View file

@ -35,7 +35,7 @@ xfce_self = rec { # the lines are very long but it seems better than the even-od
xfwm4 = callPackage ./core/xfwm4.nix { };
xfce4_appfinder = callPackage ./core/xfce4-appfinder.nix { };
xfce4_dev_tools = callPackage ./core/xfce4-dev-tools.nix { }; # only if autotools are needed
#### APPLICATIONS from "mirror://xfce/src/apps/${p_name}/${ver_maj}/${name}.tar.bz2"

View file

@ -1,18 +1,24 @@
{ stdenv, fetchurl, yacc, flex, pkgconfig, glib, libintlOrEmpty }:
{ stdenv, fetchurl, yacc, flex, pkgconfig, glib, dbus, dbus_tools, libiconvOrEmpty }:
stdenv.mkDerivation rec {
version = "0.17.2";
name = "vala-${version}";
p_name = "vala";
ver_maj = "0.19";
ver_min = "0";
src = fetchurl {
url = "mirror://gnome/sources/vala/0.17/${name}.tar.xz";
sha256 = "09i2s0dwmrk147ind2dx7nq845g12fp6fsjqrphhrr0dbi0zzgh3";
url = "mirror://gnome/sources/${p_name}/${ver_maj}/${name}.tar.xz";
sha256 = "1vn524hcnaggz8zx49mvf7p4z1mscrlj2syg7jjhph8nak5wi0bp";
};
name = "${p_name}-${ver_maj}.${ver_min}";
postPatch = "patchShebangs .";
nativeBuildInputs = [ yacc flex pkgconfig ];
buildInputs = [ glib ] ++ libintlOrEmpty;
buildInputs = [ glib ] ++ libiconvOrEmpty
++ stdenv.lib.optional doCheck [ dbus dbus_tools ];
doCheck = false; # problems when launching dbus tests
meta = {
description = "Compiler for the GObject type system";

View file

@ -9,11 +9,11 @@ with stdenv.lib;
let
majorVersion = "2.7";
version = "${majorVersion}.3";
version = "${majorVersion}.4";
src = fetchurl {
url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2";
sha256 = "0g3672il41rcfjk7sphfqdsa6qf53y8g3ai8yk1sslxi3khmfr3j";
sha256 = "0nd3x4j2w8pi9ac3pawrzb5i3s88hw0aasr08dprdv7q81fp0pq3";
};
patches =

View file

@ -58,7 +58,7 @@ stdenv.mkDerivation {
readlineSupport = readline != null;
opensslSupport = openssl != null;
tkSupport = (tk != null) && (tcl != null) && (libX11 != null) && (xproto != null);
libPrefix = "python${majorVersion}";
libPrefix = "python${majorVersion}m";
};
enableParallelBuilding = true;

View file

@ -1,23 +0,0 @@
{ stdenv, fetchurl, glib, dbus_glib, pkgconfig, libxml2, gtk3, intltool, polkit }:
stdenv.mkDerivation {
name = "GConf-3.2.3";
src = fetchurl {
url = mirror://gnome/sources/GConf/3.2/GConf-3.2.3.tar.xz;
sha256 = "0jd1z9gb1b7mv4g07qm554va6idasf3swgrfqflypdh9s38mvdcy";
};
propagatedBuildInputs = [ glib dbus_glib ];
buildInputs = [ polkit gtk3 libxml2 ];
nativeBuildInputs = [ pkgconfig intltool ];
configureFlags = "--disable-orbit";
meta = {
homepage = http://projects.gnome.org/gconf/;
description = "A system for storing application preferences";
maintainers = [ stdenv.lib.maintainers.urkud ];
inherit (gtk3.meta) platforms;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig
{ stdenv, fetchurl, pkgconfig, audiofile
, openglSupport ? false, mesa ? null
, alsaSupport ? true, alsaLib ? null
, x11Support ? true, x11 ? null, libXrandr ? null
@ -16,25 +16,26 @@ assert pulseaudioSupport -> pulseaudio != null;
let
configureFlagsFun = attrs: ''
--disable-oss
--disable-oss --disable-video-x11-xme
--disable-x11-shared --disable-alsa-shared --enable-rpath --disable-pulseaudio-shared
--disable-osmesa-shared
${if alsaSupport then "--with-alsa-prefix=${attrs.alsaLib}/lib" else ""}
'';
in
stdenv.mkDerivation rec {
name = "SDL-1.2.14";
name = "SDL-1.2.15";
src = fetchurl {
url = "http://www.libsdl.org/release/${name}.tar.gz";
sha256 = "1dnrxr18cyar0xd13dca7h8wp1fin4n3iyncxfq6pjrlf0l7x4jx";
sha256 = "005d993xcac8236fpvd1iawkz4wqjybkpn8dbwaliqz5jfkidlyn";
};
# Since `libpulse*.la' contain `-lgdbm', PulseAudio must be propagated.
propagatedBuildInputs = stdenv.lib.optionals x11Support [ x11 libXrandr ] ++
stdenv.lib.optional pulseaudioSupport pulseaudio;
buildInputs = [ pkgconfig ] ++
stdenv.lib.optional openglSupport mesa ++
buildInputs = [ pkgconfig audiofile ] ++
stdenv.lib.optional openglSupport [ mesa ] ++
stdenv.lib.optional alsaSupport alsaLib;
# XXX: By default, SDL wants to dlopen() PulseAudio, in which case

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, perl, glib }:
stdenv.mkDerivation rec {
name = "atk-2.6.0";
name = "atk-2.8.0";
src = fetchurl {
url = "mirror://gnome/sources/atk/2.6/${name}.tar.xz";
sha256 = "eff663f90847620bb68c9c2cbaaf7f45e2ff44163b9ab3f10d15be763680491f";
url = "mirror://gnome/sources/atk/2.8/${name}.tar.xz";
sha256 = "1x3dd3hg9l1j9dq70xwph13vxdp6a9wbfcnryryf1wr6c8bij9dj";
};
nativeBuildInputs = [ pkgconfig perl ];

View file

@ -1,29 +1,33 @@
{ postscriptSupport ? true
, pdfSupport ? true
, pngSupport ? true
, xcbSupport ? false
, xcbSupport ? true # no longer experimental since 1.12
, glSupport ? false
, gobjectSupport ? true, glib
, stdenv, fetchurl, pkgconfig, x11, fontconfig, freetype, xlibs
, zlib, libpng, pixman, libxcb ? null, xcbutil ? null
, expat
, zlib, libpng, pixman, libxcb ? null, xcbutil ? null, mesa ? null
, libiconvOrEmpty, libintlOrEmpty
}:
assert postscriptSupport -> zlib != null;
assert pngSupport -> libpng != null;
assert xcbSupport -> libxcb != null && xcbutil != null;
assert glSupport -> mesa != null;
stdenv.mkDerivation rec {
name = "cairo-1.12.4";
name = "cairo-1.12.14";
src = fetchurl {
url = "http://cairographics.org/releases/${name}.tar.xz";
sha1 = "f4158981ed01e73c94fb8072074b17feee61a68b";
sha256 = "04xcykglff58ygs0dkrmmnqljmpjwp2qgwcz8sijqkdpz7ix3l4n";
};
buildInputs =
[ pkgconfig x11 fontconfig ]
++ stdenv.lib.optional (!stdenv.isDarwin) xlibs.libXrender
buildInputs = with xlibs;
[ pkgconfig x11 fontconfig expat ]
++ stdenv.lib.optional (!stdenv.isDarwin) libXrender
++ stdenv.lib.optionals xcbSupport [ libxcb xcbutil ]
++ stdenv.lib.optionals glSupport [ mesa ]
++ libintlOrEmpty
++ libiconvOrEmpty;
@ -36,17 +40,12 @@ stdenv.mkDerivation rec {
configureFlags =
[ "--enable-tee" ]
++ stdenv.lib.optional xcbSupport "--enable-xcb"
++ stdenv.lib.optional glSupport "--enable-gl"
++ stdenv.lib.optional pdfSupport "--enable-pdf";
preConfigure = ''
# Work around broken `Requires.private' that prevents Freetype
# `-I' flags to be propagated.
sed -i "src/cairo.pc.in" \
-es'|^Cflags:\(.*\)$|Cflags: \1 -I${freetype}/include/freetype2 -I${freetype}/include|g'
''
preConfigure =
# On FreeBSD, `-ldl' doesn't exist.
+ (stdenv.lib.optionalString stdenv.isFreeBSD
(stdenv.lib.optionalString stdenv.isFreeBSD
'' for i in "util/"*"/Makefile.in" boilerplate/Makefile.in
do
cat "$i" | sed -es/-ldl//g > t

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, dbus, glib, gtkmm, pkgconfig }:
{ stdenv, fetchurl, dbus, glib, gtkmm, pkgconfig, expat }:
stdenv.mkDerivation rec {
name = "dbus-cplusplus-${version}";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
sha256 = "0qafmy2i6dzx4n1dqp6pygyy6gjljnb7hwjcj2z11c1wgclsq4dw";
};
buildInputs = [ dbus glib gtkmm pkgconfig ];
buildInputs = [ dbus glib gtkmm pkgconfig expat ];
configureFlags = "--disable-ecore";

View file

@ -1,18 +1,20 @@
{ stdenv, fetchurl, pkgconfig, expat, gettext, libiconv, dbus, glib }:
stdenv.mkDerivation rec {
name = "dbus-glib-0.98";
name = "dbus-glib-0.100.2";
src = fetchurl {
url = "${meta.homepage}/releases/dbus-glib/${name}.tar.gz";
sha256 = "04fiwld5yaxyggxlvdmbaqkngh4fn8gfkkqckcp3274bpgb82z19";
sha256 = "1ibav91yg70f2l3l18cr0hf4mna1h9d4mrg0c60w4l8zjbd45fx5";
};
nativeBuildInputs = [ pkgconfig gettext ];
buildInputs = [ expat ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv;
propagatedBuildInputs = [ dbus glib ];
propagatedBuildInputs = [ dbus.libs glib ];
doCheck = true;
passthru = { inherit dbus glib; };

View file

@ -1,71 +1,104 @@
{ stdenv, fetchurl, pkgconfig, expat, libX11, libICE, libSM, useX11 ? true }:
{ stdenv, fetchurl, pkgconfig, autoconf, automake, libtool
, expat, systemd, glib, dbus_glib, python
, libX11, libICE, libSM, useX11 ? true }:
let
version = "1.6.4";
version = "1.6.10"; # 1.7.* isn't recommended, even for gnome 3.8
sha256 = "11jyj6aw8yf75hqv7v0601n2xms08k0mys6dyql164m7ad56yg8z";
src = fetchurl {
url = "http://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz";
sha256 = "1wacqyfkcpayg7f8rvx9awqg275n5pksxq5q7y21lxjx85x6pfjz";
inherit (stdenv) lib;
buildInputsX = lib.optionals useX11 [ libX11 libICE libSM ];
# also other parts than "libs" need this statically linked lib
makeInternalLib = "(cd dbus && make libdbus-internal.la)";
# A generic builder for individual parts (subdirs) of D-Bus
dbus_drv = name: subdirs: merge: stdenv.mkDerivation (lib.mergeAttrsByFuncDefaultsClean [{
name = "dbus-${name}-${version}";
src = fetchurl {
url = "http://dbus.freedesktop.org/releases/dbus/dbus-${version}.tar.gz";
inherit sha256;
};
configureFlags = [
"--localstatedir=/var"
"--sysconfdir=/etc"
"--with-session-socket-dir=/tmp"
"--with-systemdsystemunitdir=$(out)/lib/systemd"
];
preConfigure = ''
patchShebangs .
substituteInPlace tools/Makefile.am --replace 'install-localstatelibDATA:' 'disabled:'
autoreconf -fi
'';
installFlags = "sysconfdir=$(out)/etc";
doCheck = true;
patches = [
./ignore-missing-includedirs.patch ./implement-getgrouplist.patch
./ucred-dirty-hack.patch ./no-create-dirs.patch
];
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = [ expat ];
buildInputs = [ autoconf automake libtool ]; # ToDo: optional selinux?
# build only the specified subdirs
postPatch = "sed '/SUBDIRS/s/=.*/=" + subdirs + "/' -i Makefile.am\n"
# use already packaged libdbus instead of trying to build it again
+ lib.optionalString (name != "libs") ''
for mfile in */Makefile.am; do
sed 's,\$(top_builddir)/dbus/\(libdbus-[0-9]\),${libs}/lib/\1,g' -i "$mfile"
done
'';
} merge ]);
libs = dbus_drv "libs" "dbus" {
buildInputs = [ systemd.headers ];
patches = [ ./systemd.patch ]; # bypass systemd detection
# Enable X11 autolaunch support in libdbus. This doesn't actually depend on X11
# (it just execs dbus-launch in dbus.tools), contrary to what the configure script demands.
NIX_CFLAGS_COMPILE = "-DDBUS_ENABLE_X11_AUTOLAUNCH=1";
};
patches = [ ./ignore-missing-includedirs.patch ];
configureFlags = "--localstatedir=/var --sysconfdir=/etc --with-session-socket-dir=/tmp";
in rec {
libs = stdenv.mkDerivation {
name = "dbus-library-" + version;
# This package has been split because most applications only need dbus.lib
# which serves as an interface to a *system-wide* daemon,
# see e.g. http://en.wikipedia.org/wiki/D-Bus#Architecture .
# Also some circular dependencies get split by this (like with systemd).
nativeBuildInputs = [ pkgconfig ];
inherit libs;
buildInputs = [ expat ];
# FIXME: dbus has optional systemd integration when checking
# at_console policies. How to enable this without introducing a
# circular dependency between dbus and systemd?
inherit src patches configureFlags;
preConfigure =
''
sed -i '/mkinstalldirs.*localstatedir/d' bus/Makefile.in
sed -i '/SUBDIRS/s/ tools//' Makefile.in
'';
# Enable X11 autolaunch support in libdbus. This doesn't actually
# depend on X11 (it just execs dbus-launch in dbus.tools),
# contrary to what the configure script demands.
NIX_CFLAGS_COMPILE = "-DDBUS_ENABLE_X11_AUTOLAUNCH=1";
installFlags = "sysconfdir=$(out)/etc";
tools = dbus_drv "tools" "tools" {
configureFlags = [ "--with-dbus-daemondir=${daemon}/bin" ];
buildInputs = buildInputsX ++ [ libs daemon systemd dbus_glib ];
NIX_CFLAGS_LINK = "-Wl,--as-needed -ldbus-1";
};
tools = stdenv.mkDerivation {
name = "dbus-tools-" + version;
inherit src patches;
configureFlags = "${configureFlags} --with-dbus-daemondir=${daemon}/bin";
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ expat libs ]
++ stdenv.lib.optionals useX11 [ libX11 libICE libSM ];
NIX_LDFLAGS = "-ldbus-1";
preConfigure =
''
sed -i 's@$(top_builddir)/dbus/libdbus-1.la@@' tools/Makefile.in
substituteInPlace tools/Makefile.in --replace 'install-localstatelibDATA:' 'disabled:'
'';
postConfigure = "cd tools";
installFlags = "localstatedir=$TMPDIR/var";
daemon = dbus_drv "daemon" "bus" {
preBuild = makeInternalLib;
buildInputs = [ systemd ];
};
# I'm too lazy to separate daemon and libs now.
daemon = libs;
# Some of the tests don't work yet; in fact, @vcunat tried several packages
# containing dbus testing, and all of them have some test failure.
tests = dbus_drv "tests" "test" {
preBuild = makeInternalLib;
buildInputs = buildInputsX ++ [ systemd libs tools daemon dbus_glib python ];
NIX_CFLAGS_LINK = "-Wl,--as-needed -ldbus-1";
};
docs = dbus_drv "docs" "doc" {
postInstall = ''rm -r "$out/lib"'';
};
}

View file

@ -0,0 +1,108 @@
Compatibility patch for Illumos/Solaris and possibly other platforms.
Implements getgrouplist when not provided by OS.
Without it, only the user's primary group is used in authentication!
--- 1970-01-01 00:00:00.000000000 +0000
+++ dbus-1.6.8/dbus/getgrouplist.c 2013-02-28 13:10:51.081792722 +0000
@@ -0,0 +1,89 @@
+/* $OpenBSD: getgrouplist.c,v 1.12 2005/08/08 08:05:34 espie Exp $ */
+/*
+ * Copyright (c) 1991, 1993
+ * The Regents of the University of California. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+/* OPENBSD ORIGINAL: lib/libc/gen/getgrouplist.c */
+
+/*
+ * get credential
+ */
+#include <sys/types.h>
+#include <string.h>
+#include <unistd.h>
+#include <grp.h>
+
+int
+getgrouplist(const char *uname, gid_t agroup, gid_t *groups, int *grpcnt)
+{
+ struct group *grp;
+ int i, ngroups;
+ int ret, maxgroups;
+ int bail;
+
+ ret = 0;
+ ngroups = 0;
+ maxgroups = *grpcnt;
+
+ /*
+ * install primary group
+ */
+ if (ngroups >= maxgroups) {
+ *grpcnt = ngroups;
+ return (-1);
+ }
+ groups[ngroups++] = agroup;
+
+ /*
+ * Scan the group file to find additional groups.
+ */
+ setgrent();
+ while ((grp = getgrent())) {
+ if (grp->gr_gid == agroup)
+ continue;
+ for (bail = 0, i = 0; bail == 0 && i < ngroups; i++)
+ if (groups[i] == grp->gr_gid)
+ bail = 1;
+ if (bail)
+ continue;
+ for (i = 0; grp->gr_mem[i]; i++) {
+ if (!strcmp(grp->gr_mem[i], uname)) {
+ if (ngroups >= maxgroups) {
+ ret = -1;
+ goto out;
+ }
+ groups[ngroups++] = grp->gr_gid;
+ break;
+ }
+ }
+ }
+out:
+ endgrent();
+ *grpcnt = ngroups;
+ return (ret);
+}
--- dbus-1.6.8/dbus/dbus-sysdeps-unix.c.orig 2013-02-28 13:08:52.171215237 +0000
+++ dbus-1.6.8/dbus/dbus-sysdeps-unix.c 2013-02-28 13:13:52.224615146 +0000
@@ -21,6 +21,10 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
*/
+#ifndef HAVE_GETGROUPLIST
+#include "getgrouplist.c"
+#define HAVE_GETGROUPLIST
+#endif
#include <config.h>

View file

@ -0,0 +1,26 @@
diff --git a/bus/Makefile.am b/bus/Makefile.am
index 6cbc09a..be60bb8 100644
--- a/bus/Makefile.am
+++ b/bus/Makefile.am
@@ -212,7 +212,6 @@ clean-local:
/bin/rm *.bb *.bbg *.da *.gcov || true
install-data-hook:
- $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus
$(mkinstalldirs) $(DESTDIR)$(configdir)/system.d
$(mkinstalldirs) $(DESTDIR)$(configdir)/session.d
$(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/services
diff --git a/tools/Makefile.am b/tools/Makefile.am
index cfd54b8..b6e28f9 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -74,7 +74,7 @@ CLEANFILES = \
# create the /var/lib/dbus directory for dbus-uuidgen
install-data-local:
- $(MKDIR_P) $(DESTDIR)$(localstatedir)/lib/dbus
+ :
installcheck-local:
- test -d $(DESTDIR)$(localstatedir)/lib/dbus
+ :

View file

@ -0,0 +1,14 @@
diff --git a/configure.ac b/configure.ac
index 24fcc9e..98e0459 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1167,7 +1167,8 @@ else
PKG_CHECK_MODULES(SYSTEMD,
[libsystemd-login >= 32, libsystemd-daemon >= 32],
have_systemd=yes,
- have_systemd=no)
+ have_systemd=yes)
+ AC_MSG_NOTICE([NixOS: do not care whether we found systemd or not])
fi
if test x$have_systemd = xyes; then

View file

@ -0,0 +1,18 @@
diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c
index b4ecc96..267984a 100644
--- a/dbus/dbus-sysdeps-unix.c
+++ b/dbus/dbus-sysdeps-unix.c
@@ -1635,6 +1635,13 @@ write_credentials_byte (int server_fd,
}
}
+struct ucred
+{
+ pid_t pid; /* PID of sending process. */
+ uid_t uid; /* UID of sending process. */
+ gid_t gid; /* GID of sending process. */
+};
+
/**
* Reads a single byte which must be nul (an error occurs otherwise),
* and reads unix credentials if available. Clears the credentials

View file

@ -1,18 +1,26 @@
{ stdenv, fetchurl, pkgconfig, freetype, expat }:
stdenv.mkDerivation rec {
name = "fontconfig-2.10.1";
name = "fontconfig-2.10.2";
src = fetchurl {
url = "http://fontconfig.org/release/${name}.tar.gz";
sha256 = "08h252crb3aqciwdk81jypmz2i7618dzqn3zlr87w1f017wjp4f3";
url = "http://fontconfig.org/release/${name}.tar.bz2";
sha256 = "0llraqw86jmw4vzv7inskp3xxm2gc64my08iwq5mzncgfdbfza4f";
};
buildInputs = [ pkgconfig freetype ];
infinality_patch = with freetype.infinality; if useInfinality
then let subvers = "1";
in fetchurl {
url = "${base_URL}/fontconfig-infinality-1-${vers}_${subvers}.tar.bz2";
sha256 = "1fm5xx0mx2243jrq5rxk4v0ajw2nawpj23399h710bx6hd1rviq7";
}
else null;
propagatedBuildInputs = [ expat ]; # !!! shouldn't be necessary, but otherwise pango breaks
buildInputs = [ pkgconfig freetype expat ];
configureFlags = "--with-confdir=/etc/fonts --with-cache-dir=/var/cache/fontconfig --disable-docs --with-default-fonts=";
#propagatedBuildInputs = [ expat ]; # !!! shouldn't be necessary, but otherwise pango breaks
configureFlags = "--sysconfdir=/etc --with-cache-dir=/var/cache/fontconfig --disable-docs --with-default-fonts=";
# We should find a better way to access the arch reliably.
crossArch = stdenv.cross.arch or null;
@ -26,7 +34,11 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
# Don't try to write to /etc/fonts or /var/cache/fontconfig at install time.
installFlags = "CONFDIR=$(out)/etc/fonts RUN_FC_CACHE_TEST=false fc_cachedir=$(TMPDIR)/dummy";
installFlags = "sysconfdir=$(out)/etc RUN_FC_CACHE_TEST=false fc_cachedir=$(TMPDIR)/dummy";
postInstall = if !freetype.infinality.useInfinality then "" else ''
cd "$out/etc/fonts" && tar xvf ${infinality_patch}
'';
meta = {
description = "A library for font customization and configuration";

View file

@ -1,22 +1,50 @@
{ stdenv, fetchurl, gnumake
, # FreeType supports sub-pixel rendering. This is patented by
# FreeType supports sub-pixel rendering. This is patented by
# Microsoft, so it is disabled by default. This option allows it to
# be enabled. See http://www.freetype.org/patents.html.
useEncumberedCode ? false
, useEncumberedCode ? false
, useInfinality ? true
}:
assert !(useEncumberedCode && useInfinality); # probably wouldn't make sense
let
version = "2.4.11";
infinality = rec {
inherit useInfinality;
vers = "20130104";
subvers = "04";
sha256 = "0dqglig34lfcw0w6sm6vmich0pcvq303vyh8jzqapvxgvrpr2156";
base_URL = "http://www.infinality.net/fedora/linux/zips";
url = "${base_URL}/freetype-infinality-${version}-${vers}_${subvers}-x86_64.tar.bz2";
};
in
stdenv.mkDerivation rec {
name = "freetype-2.4.10";
name = "freetype-${version}";
src = fetchurl {
url = "mirror://sourceforge/freetype/${name}.tar.bz2";
sha256 = "0bwrkqpygayfc1rf6rr1nb8l3svgn1fmjz8davg2hnf46cn293hc";
sha256 = "0gxyzxqpyf8g85y6g1zc1wqrh71prbbk8xfw4m8rwzb4ck5hp7gg";
};
infinality_patch = if useInfinality
then fetchurl { inherit (infinality) url sha256; }
else null;
configureFlags = "--disable-static";
NIX_CFLAGS_COMPILE = stdenv.lib.optionalString useEncumberedCode
"-DFT_CONFIG_OPTION_SUBPIXEL_RENDERING=1";
NIX_CFLAGS_COMPILE = with stdenv.lib;
" -fno-strict-aliasing" # from Gentoo, see https://bugzilla.redhat.com/show_bug.cgi?id=506840
+ optionalString useEncumberedCode " -DFT_CONFIG_OPTION_SUBPIXEL_RENDERING=1"
+ optionalString useInfinality " -DTT_CONFIG_OPTION_SUBPIXEL_HINTING=1";
patches = [ ./enable-validation.patch ] # from Gentoo
++ stdenv.lib.optional useInfinality [ infinality_patch ];
# The asm for armel is written with the 'asm' keyword.
CFLAGS = stdenv.lib.optionalString stdenv.isArm "-std=gnu99";
@ -26,6 +54,8 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
doCheck = true;
postInstall =
''
ln -s freetype2/freetype $out/include/freetype
@ -38,9 +68,12 @@ stdenv.mkDerivation rec {
configureFlags = "--disable-static CC_BUILD=gcc";
};
passthru = { inherit infinality; }; # for fontconfig
meta = {
description = "A font rendering engine";
homepage = http://www.freetype.org/;
license = "GPLv2+"; # or the FreeType License (BSD + advertising clause)
license = if useEncumberedCode then "unfree"
else "GPLv2+"; # or the FreeType License (BSD + advertising clause)
};
}

View file

@ -0,0 +1,22 @@
Enables gxvalid and otvalid modules for use with ftvalid.
--- freetype-2.2.1/modules.cfg.orig 2006-07-07 21:01:09.000000000 -0400
+++ freetype-2.2.1/modules.cfg 2006-07-07 21:01:54.000000000 -0400
@@ -110,7 +110,7 @@
AUX_MODULES += cache
# TrueType GX/AAT table validation. Needs ftgxval.c below.
-# AUX_MODULES += gxvalid
+AUX_MODULES += gxvalid
# Support for streams compressed with gzip (files with suffix .gz).
#
@@ -124,7 +124,7 @@
# OpenType table validation. Needs ftotval.c below.
#
-# AUX_MODULES += otvalid
+AUX_MODULES += otvalid
# Auxiliary PostScript driver component to share common code.
#

View file

@ -1,11 +1,12 @@
{ stdenv, fetchurl, pkgconfig, glib, libtiff, libjpeg, libpng, libX11, xz, jasper }:
{ stdenv, fetchurl, pkgconfig, glib, libtiff, libjpeg, libpng, libX11, xz
, jasper }:
stdenv.mkDerivation rec {
name = "gdk-pixbuf-2.26.1";
name = "gdk-pixbuf-2.28.1";
src = fetchurl {
url = "mirror://gnome/sources/gdk-pixbuf/2.26/${name}.tar.xz";
sha256 = "a60af12b58d9cc15ba4c680c6730ce5d38e8d664af1d575a379385b94b4ec7ba";
url = "mirror://gnome/sources/gdk-pixbuf/2.28/${name}.tar.xz";
sha256 = "1fy2a05xhfg7gy4l4aajsbmgj62zxhikdxqh6bicihxmzm1vg85y";
};
# !!! We might want to factor out the gdk-pixbuf-xlib subpackage.

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, gettext, perl, libiconvOrNull, zlib, libffi
, python, pcre }:
{ stdenv, fetchurl, pkgconfig, gettext, perl, libiconvOrEmpty, zlib, libffi
, python, pcre, libelf }:
# TODO:
# * Add gio-module-fam
@ -11,16 +11,29 @@
# Reminder: add 'sed -e 's@python2\.[0-9]@python@' -i
# $out/bin/gtester-report' to postInstall if this is solved
let
# some packages don't get "Cflags" from pkgconfig correctly
# and then fail to build when directly including like <glib/...>
flattenInclude = ''
for dir in $out/include/*; do
cp -r $dir/* "$out/include/"
rm -r "$dir"
ln -s . "$dir"
done
ln -sr -t "$out/include/" $out/lib/*/include/* 2>/dev/null || true
'';
in
stdenv.mkDerivation (rec {
name = "glib-2.34.0";
name = "glib-2.36.1";
src = fetchurl {
url = "mirror://gnome/sources/glib/2.34/${name}.tar.xz";
sha256 = "f69b112f8848be35139d9099b62bc81649241f78f6a775516f0d4c9b47f65144";
url = "mirror://gnome/sources/glib/2.36/${name}.tar.xz";
sha256 = "090bw5par3dfy5m6dhq393pmy92zpw3d7rgbzqjc14jfg637bqvx";
};
# configure script looks for d-bus but it is only needed for tests
buildInputs = [ libiconvOrNull ];
buildInputs = [ libelf ] ++ libiconvOrEmpty;
nativeBuildInputs = [ perl pkgconfig gettext python ];
@ -28,12 +41,17 @@ stdenv.mkDerivation (rec {
configureFlags = "--with-pcre=system --disable-fam";
postConfigure = "sed '/SANE_MALLOC_PROTOS/s,^,//,' -i config.h"; # https://bugzilla.gnome.org/show_bug.cgi?id=698716 :-)
enableParallelBuilding = true;
passthru.gioModuleDir = "lib/gio/modules";
postInstall = ''rm -rvf $out/share/gtk-doc'';
passthru = {
gioModuleDir = "lib/gio/modules";
inherit flattenInclude;
};
meta = {
description = "GLib, a C library of programming buildings blocks";

View file

@ -1,14 +1,15 @@
{ stdenv, fetchurl, pkgconfig, glib, zlib }:
{ stdenv, fetchurl, pkgconfig, glib, zlib, libgpgerror }:
stdenv.mkDerivation rec {
name = "gmime-2.4.24";
name = "gmime-2.6.15";
src = fetchurl {
url = "mirror://gnome/sources/gmime/2.4/${name}.tar.gz";
sha256 = "2f538d68e215f075d16575a6da9acb87983db9e2df0d7d403858048881a0dd15";
url = "mirror://gnome/sources/gmime/2.6/${name}.tar.xz";
sha256 = "16n9gmlwn6rphi59hrwy6dpn785s3r13h2kmrn3k61l2kfws1hml";
};
buildInputs = [ pkgconfig glib zlib ];
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = [ glib zlib libgpgerror ];
meta = {
homepage = http://spruce.sourceforge.net/gmime/;

View file

@ -1,9 +1,9 @@
{ stdenv, fetchurl, glib, flex, bison, pkgconfig, libffi, python }:
{ stdenv, fetchurl, glib, flex, bison, pkgconfig, libffi, python, gdk_pixbuf }:
stdenv.mkDerivation rec {
name = "gobject-introspection-1.34.0";
name = "gobject-introspection-1.34.2";
buildInputs = [ flex bison glib pkgconfig python ];
buildInputs = [ flex bison glib pkgconfig python gdk_pixbuf ];
propagatedBuildInputs = [ libffi ];
# Tests depend on cairo, which is undesirable (it pulls in lots of
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnome/sources/gobject-introspection/1.34/${name}.tar.xz";
sha256 = "80e211ea95404fc7c5fa3b04ba69ee0b29af70847af315155ab06b8cff832c85";
sha256 = "0a9lq0y67sr3g37l1hy0biqn046jr9wnd05hvwi8j8g2bjilhydw";
};
postInstall = "rm -rf $out/share/gtk-doc";

View file

@ -8,22 +8,22 @@ assert xineramaSupport -> xlibs.libXinerama != null;
assert cupsSupport -> cups != null;
stdenv.mkDerivation rec {
name = "gtk+-2.24.14";
name = "gtk+-2.24.17";
src = fetchurl {
url = "mirror://gnome/sources/gtk+/2.24/${name}.tar.xz";
sha256 = "8bd1b8b511a3004e8972badf467ce829e6855cdff15540b9344dc934c68008ac";
sha256 = "05gl82k82w3gjrzr4vmj3ski7mp1b0jbhc49wgl9hv8mc2sb4iz9";
};
enableParallelBuilding = true;
nativeBuildInputs = [ perl pkgconfig ];
propagatedBuildInputs =
[ xlibs.xlibs glib atk pango gdk_pixbuf cairo
xlibs.libXrandr xlibs.libXrender xlibs.libXcomposite xlibs.libXi
propagatedBuildInputs = with xlibs;
[ glib cairo pango gdk_pixbuf atk
libXrandr libXrender libXcomposite libXi libXcursor
]
++ stdenv.lib.optional xineramaSupport xlibs.libXinerama
++ stdenv.lib.optional xineramaSupport libXinerama
++ stdenv.lib.optionals cupsSupport [ cups ];
configureFlags = "--with-xinput=yes";

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, pkgconfig, glib, atk, pango, cairo, perl, xlibs
, gdk_pixbuf, xz
{ stdenv, fetchurl, pkgconfig
, expat, glib, cairo, pango, gdk_pixbuf, atk, at_spi2_atk, xlibs
, xineramaSupport ? true
, cupsSupport ? true, cups ? null
}:
@ -8,22 +8,20 @@ assert xineramaSupport -> xlibs.libXinerama != null;
assert cupsSupport -> cups != null;
stdenv.mkDerivation rec {
name = "gtk+-3.2.4";
name = "gtk+-3.8.0";
src = fetchurl {
url = "mirror://gnome/sources/gtk+/3.2/${name}.tar.xz";
sha256 = "f981bf514858c00d7084bd6f6c34b3c60b8aebdb959e7aca6faa59ed67c136bd";
url = "mirror://gnome/sources/gtk+/3.8/${name}.tar.xz";
sha256 = "0bi5dip7l6d08c6v9c9aipwsi8hq38xjljqv86nmnpvbkpc4a4yv";
};
enableParallelBuilding = true;
nativeBuildInputs = [ perl pkgconfig ];
propagatedBuildInputs =
[ xlibs.xlibs glib atk pango gdk_pixbuf cairo
xlibs.libXrandr xlibs.libXrender xlibs.libXcomposite xlibs.libXi
]
++ stdenv.lib.optional xineramaSupport xlibs.libXinerama
nativeBuildInputs = [ pkgconfig ];
propagatedBuildInputs = with xlibs; [
expat glib cairo pango gdk_pixbuf atk at_spi2_atk
libXrandr libXrender libXcomposite libXi libXcursor
] ++ stdenv.lib.optional xineramaSupport libXinerama
++ stdenv.lib.optionals cupsSupport [ cups ];
postInstall = "rm -rf $out/share/gtk-doc";

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, gtk3, glibmm, cairomm, pangomm, atkmm }:
stdenv.mkDerivation {
name = "gtkmm-3.2.0";
stdenv.mkDerivation rec {
name = "gtkmm-3.7.12"; # gnome 3.8 release; stable 3.6 has problems with our new glibc
src = fetchurl {
url = mirror://gnome/sources/gtkmm/3.2/gtkmm-3.2.0.tar.xz;
sha256 = "1wkljr2vjvjg5mggi4rvk9k4j2kzh8lc106k2yp8gqjlhk2xm5b1";
url = "mirror://gnome/sources/gtkmm/3.7/${name}.tar.xz";
sha256 = "05nrilm34gid7kqlq09hcdd7942prn2vbr1qgqvdhgy4x8pvz9p9";
};
nativeBuildInputs = [ pkgconfig ];

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, glib, freetype }:
stdenv.mkDerivation rec {
name = "harfbuzz-0.9.4";
name = "harfbuzz-0.9.12";
src = fetchurl {
url = "http://www.freedesktop.org/software/harfbuzz/release/${name}.tar.bz2";
sha256 = "2572f9a810d17a735ef565115463827d075af2371ee5b68e6d77231381f4bddc";
sha256 = "19cx5y2m20rp7z5j7mwqfb4ph2g8lrri69zim44x362y4w5gfly6";
};
buildInputs = [ pkgconfig glib freetype ];

View file

@ -1,25 +1,25 @@
{ stdenv, fetchurl, pkgconfig, libtool, gtk ? null
, alsaLib, pulseaudio, gstreamer ? null, libvorbis, libcap }:
, alsaLib, pulseaudio, gstreamer, gst_plugins_base, libvorbis }:
stdenv.mkDerivation rec {
name = "libcanberra-0.28";
name = "libcanberra-0.30";
src = fetchurl {
url = "http://0pointer.de/lennart/projects/libcanberra/${name}.tar.gz";
sha256 = "1346d2y24wiyanyr5bvdnjjgq7iysy8nlq2dwjv0fzxdmcn8n7zb";
url = "http://0pointer.de/lennart/projects/libcanberra/${name}.tar.xz";
sha256 = "0wps39h8rx2b00vyvkia5j40fkak3dpipp1kzilqla0cgvk73dn2";
};
buildInputs =
[ pkgconfig libtool alsaLib pulseaudio gstreamer libvorbis libcap gtk ];
buildInputs = # ToDo: gstreamer not found (why?), add (g)udev?
[ pkgconfig libtool alsaLib pulseaudio /*gstreamer gst_plugins_base*/ libvorbis gtk ];
configureFlags = "--disable-oss --disable-schemas-install";
configureFlags = "--disable-oss";
passthru = {
gtkModule = "/lib/gtk-2.0/";
};
meta = {
description = "libcanberra, an implementation of the XDG Sound Theme and Name Specifications";
description = "An implementation of the XDG Sound Theme and Name Specifications";
longDescription = ''
libcanberra is an implementation of the XDG Sound Theme and Name

View file

@ -1,11 +0,0 @@
{stdenv, fetchurl, pkgconfig, libxml2, glib}:
stdenv.mkDerivation {
name = "libcroco-0.6.4";
src = fetchurl {
url = mirror://gnome/sources/libcroco/0.6/libcroco-0.6.4.tar.xz;
sha256 = "1sij88na1skd4d5dx75l803fww3v9872q8m2hj6sjlkc839vl5n8";
};
buildInputs = [ pkgconfig libxml2 glib ];
}

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, udev }:
stdenv.mkDerivation rec {
name = "libdrm-2.4.33";
name = "libdrm-2.4.42";
src = fetchurl {
url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
sha256 = "1slgi61n4dlsfli47ql354fd1ppj7n40jd94wvnsdqx0mna9syrd";
sha256 = "1qbnpi64hyqzd650hj6jki1d50pzypdhj3rw9m3whwbqly110rz0";
};
nativeBuildInputs = [ pkgconfig ];

View file

@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "mirror://gnupg/libgcrypt/${name}.tar.bz2";
sha1 = "c9998383532ba3e8bcaf690f2f0d65e814b48d2f";
sha256 = "0gwnzqd64cpwdmk93nll54nidsr74jpimxzj4p4z7502ylwl66p4";
};
propagatedBuildInputs = [ libgpgerror ];

View file

@ -1,18 +0,0 @@
{ stdenv, fetchurl, glib, dbus_libs, libgcrypt, pkgconfig,
intltool }:
stdenv.mkDerivation {
name = "libgnome-keyring-3.2.2";
src = fetchurl {
url = mirror://gnome/sources/libgnome-keyring/3.2/libgnome-keyring-3.2.2.tar.xz;
sha256 = "1cxd2vb1lzm8smq1q45dsn13s6kdqdb60lashdk7hwv035xy9jrb";
};
propagatedBuildInputs = [ glib dbus_libs libgcrypt ];
nativeBuildInputs = [ pkgconfig intltool ];
meta = {
inherit (glib.meta) platforms maintainers;
};
}

View file

@ -5,7 +5,7 @@ stdenv.mkDerivation (rec {
src = fetchurl {
url = "mirror://gnupg/libgpg-error/${name}.tar.bz2";
sha1 = "be209b013652add5c7e2c473ea114f58203cc6cd";
sha256 = "1h0ql8j65ns2rmhj9wnc9035026crzkg226xg8614fq71947ccxf";
};
doCheck = true;

View file

@ -1,26 +1,21 @@
{ fetchurl, stdenv, perl, perlXMLParser, pkgconfig, libxml2
, gettext, intltool, bzip2, glib, python
, gnomeSupport ? true, gdk_pixbuf ? null
, gnome_vfs ? null, libbonobo ? null }:
{ fetchurl, stdenv, pkgconfig, intltool, gettext, glib, libxml2, zlib, bzip2
, python, libiconvOrEmpty
}:
assert gnomeSupport -> gdk_pixbuf != null && gnome_vfs != null && libbonobo != null
&& glib != null;
with { inherit (stdenv.lib) optionals; };
stdenv.mkDerivation rec {
name = "libgsf-1.14.25";
src = fetchurl {
url = "mirror://gnome/sources/libgsf/1.14/${name}.tar.xz";
sha256 = "127548f07e07951984fb139c3f89d65b9e471aefe6555387de03e1113944d1a2";
sha256 = "18ni8hwi3q83vs3m6mg6xwd4g7jvss4kz70kzf21k587gvq4hx8j";
};
nativeBuildInputs = [ intltool pkgconfig ];
buildInputs =
[ perl perlXMLParser gettext bzip2 python ]
++ stdenv.lib.optionals gnomeSupport [ gnome_vfs gdk_pixbuf ];
nativeBuildInputs = [ pkgconfig intltool ];
buildInputs = [ gettext bzip2 zlib python ];
propagatedBuildInputs = [ libxml2 glib ]
++ stdenv.lib.optionals gnomeSupport [ libbonobo ];
propagatedBuildInputs = [ libxml2 glib ] ++ libiconvOrEmpty;
doCheck = true;

View file

@ -1,13 +0,0 @@
{ stdenv, fetchurl, pkgconfig, libxml2, gtk3, intltool, libsoup, GConf3 }:
stdenv.mkDerivation {
name = "libgweather-3.4.1";
src = fetchurl {
url = mirror://gnome/sources/libgweather/3.4/libgweather-3.4.1.tar.xz;
sha256 = "0q0vkggrbvy2ihwcsfynlv5qk9l3wjinls8yvmkb1qisyc4lv77f";
};
configureFlags = if stdenv ? glibc then "--with-zoneinfo-dir=${stdenv.glibc}/share/zoneinfo" else "";
propagatedBuildInputs = [ libxml2 gtk3 libsoup GConf3 ];
nativeBuildInputs = [ pkgconfig intltool ];
}

View file

@ -1,13 +1,17 @@
{ stdenv, fetchurl, libusb }:
{ stdenv, fetchurl, pkgconfig, libusb1 }:
stdenv.mkDerivation rec {
name = "libmtp-1.0.1";
name = "libmtp-1.1.5";
propagatedBuildInputs = [ libusb ];
propagatedBuildInputs = [ libusb1 ];
buildInputs = [ pkgconfig ];
# tried to install files to /lib/udev, hopefully OK
configureFlags = [ "--with-udev=$$out/lib/udev" ];
src = fetchurl {
url = "mirror://sourceforge/libmtp/${name}.tar.gz";
sha256 = "19iha1yi07cdqzlba4ng1mn7h701binalwwkb71q0ld9b88mad6s";
sha256 = "0fn6y7kirgln6sfizmwvjsy7qkdb0p3rccf0zkr3r2xg3cbpjxkq";
};
meta = {

View file

@ -0,0 +1,17 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "1.1.24";
name = "libpaper-${version}";
src = fetchurl {
url = "mirror://debian/pool/main/libp/libpaper/libpaper_${version}.tar.gz";
sha256 = "0zhcx67afb6b5r936w5jmaydj3ks8zh83n9rm5sv3m3k8q8jib1q";
};
meta = {
description = "Library for handling paper characteristics";
homepage = "http://packages.debian.org/unstable/source/libpaper";
license = "GPLv2";
};
}

View file

@ -0,0 +1,24 @@
{ stdenv, fetchurl, zlib }:
assert zlib != null;
stdenv.mkDerivation rec {
name = "libpng-1.5.15";
src = fetchurl {
url = "mirror://sourceforge/libpng/${name}.tar.xz";
sha256 = "1iaplghmv5qhd4dgwfymhp42sh27vz6s2107jk698xm57z2v9hwm";
};
propagatedBuildInputs = [ zlib ];
doCheck = true;
passthru = { inherit zlib; };
meta = {
description = "The official reference implementation for the PNG file format";
homepage = http://www.libpng.org/pub/png/libpng.html;
license = "free-non-copyleft"; # http://www.libpng.org/pub/png/src/libpng-LICENSE.txt
};
}

View file

@ -3,15 +3,17 @@
assert zlib != null;
stdenv.mkDerivation rec {
name = "libpng-1.5.13";
name = "libpng-1.6.2";
src = fetchurl {
url = "mirror://sourceforge/libpng/${name}.tar.xz";
sha256 = "1vks4mqv4140b10kp53qrywsx9m4xan5ibwsrlmf42ni075zjhxq";
sha256 = "1pljkqjqgyz8c32w8fipd9f0v2gcyhah2ypp0h7ya1r1q85sk5qw";
};
propagatedBuildInputs = [ zlib ];
doCheck = true;
passthru = { inherit zlib; };
meta = {

View file

@ -1,29 +1,27 @@
{ stdenv, fetchurl, zlib }:
assert zlib != null;
stdenv.mkDerivation rec {
version = "1.4.4";
version = "1.5.14";
name = "libpng-apng-${version}";
patch_src = fetchurl {
url = "mirror://sourceforge/project/libpng-apng/libpng-master/${version}/libpng-${version}-apng.patch.gz";
sha256 = "d729a2feacfd80547e06c30343d598302f4417cf2e6f649e4ee617690987bd24";
url = "mirror://sourceforge/libpng-apng/libpng15/${version}/libpng-${version}-apng.patch.gz";
sha256 = "1vcqbkdssy4srm8jqyzaipdc70xzanilqssypmwqyngp8ph0m45p";
};
src = fetchurl {
url = "mirror://sourceforge/libpng/libpng-${version}.tar.gz";
sha256 = "d07616ba1e9c161017384feb3b576d70c160b970abfd9549ad39a622284b574a";
url = "mirror://sourceforge/libpng/libpng-${version}.tar.xz";
sha256 = "0m3vz3gig7s63zanq5b1dgb5ph12qm0cylw4g4fbxlsq3f74hn8l";
};
preConfigure = ''
gunzip < ${patch_src} | patch -Np1
'';
propagatedBuildInputs = [ zlib ];
passthru = { inherit zlib; };
meta = {
description = "The official reference implementation for the PNG file format with animation patch";
homepage = http://www.libpng.org/pub/png/libpng.html;

View file

@ -1,16 +1,24 @@
{stdenv, fetchurl, pkgconfig, libxml2, libgsf, bzip2, glib, gtk, libcroco}:
{ stdenv, fetchurl, pkgconfig, glib, gdk_pixbuf, pango, cairo
, libxml2, libgsf, bzip2, libcroco
, gtk2 ? null, gtk3 ? null
, gobjectIntrospection ? null, enableIntrospection ? false }:
stdenv.mkDerivation {
name = "librsvg-2.34.2";
# no introspection by default, it's too big
stdenv.mkDerivation rec {
name = "librsvg-2.36.4";
src = fetchurl {
url = mirror://gnome/sources/librsvg/2.34/librsvg-2.34.2.tar.xz;
sha256 = "0r24xr10chmz4l3ka2zy9c2245s7svzljbw9nrda3h44bcr03rsx";
url = "mirror://gnome/sources/librsvg/2.36/${name}.tar.xz";
sha256 = "1hp6325gdkzx8yqn2d2r915ak3k6hfshjjh0sc54z3vr0i99688h";
};
buildInputs = [ libxml2 libgsf bzip2 libcroco ];
propagatedBuildInputs = [ glib gtk ];
buildInputs = [ libxml2 libgsf bzip2 libcroco pango cairo ]
++ stdenv.lib.optional enableIntrospection [ gobjectIntrospection ];
propagatedBuildInputs = [ glib gdk_pixbuf gtk2 gtk3 ];
nativeBuildInputs = [ pkgconfig ];
configureFlags = ["--enable-introspection=auto"];
# It wants to add loaders and update the loaders.cache in gdk-pixbuf
# Patching the Makefiles to it creates rsvg specific loaders and the
# relevant loader.cache here.

View file

@ -1,6 +1,6 @@
{ stdenv, fetchurl, zlib, libjpeg }:
let version = "3.9.7"; in
let version = "4.0.3"; in
stdenv.mkDerivation rec {
name = "libtiff-${version}";
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
[ "ftp://ftp.remotesensing.org/pub/libtiff/tiff-${version}.tar.gz"
"http://download.osgeo.org/libtiff/tiff-${version}.tar.gz"
];
sha256 = "0spg1hr5rsrmg88sfzb05qnf0haspq7r5hvdkxg5zib1rva4vmpm";
sha256 = "0wj8d1iwk9vnpax2h29xqc2hwknxg3s0ay2d5pxkg59ihbifn6pa";
};
propagatedBuildInputs = [ zlib libjpeg ];
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Library and utilities for working with the TIFF image file format";
homepage = http://www.libtiff.org/;
homepage = http://www.remotesensing.org/libtiff/;
license = "bsd";
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl }:
{ stdenv, fetchurl, pkgconfig }:
stdenv.mkDerivation rec {
name = "libusb-1.0.9";
@ -8,6 +8,8 @@ stdenv.mkDerivation rec {
sha256 = "16sz34ix6hw2wwl3kqx6rf26fg210iryr68wc439dc065pffw879";
};
buildInputs = [ pkgconfig ];
meta = {
homepage = http://www.libusb.org;
description = "User-space USB library";

View file

@ -1,16 +1,16 @@
{ stdenv, fetchurl, pkgconfig, libX11 }:
{ stdenv, fetchurl, pkgconfig, xlibs }:
stdenv.mkDerivation rec {
name = "libvdpau-0.5";
name = "libvdpau-0.6";
src = fetchurl {
url = "http://people.freedesktop.org/~aplattner/vdpau/${name}.tar.gz";
sha256 = "0k2ydz4yp7zynlkpd1llfwax30xndwbca36z83ah1i4ldjw2gfhx";
sha256 = "0x9dwxzw0ilsy88kqlih3170z1zfrrsx1dr9jbwbn0cbkpnbwmcv";
};
buildInputs = [ pkgconfig libX11 ];
buildInputs = with xlibs; [ pkgconfig dri2proto libXext ];
propagatedBuildInputs = [ libX11 ];
propagatedBuildInputs = [ xlibs.libX11 ];
meta = {
homepage = http://people.freedesktop.org/~aplattner/vdpau/;

View file

@ -0,0 +1,21 @@
{ stdenv, fetchurl, yacc, flex, xkeyboard_config }:
stdenv.mkDerivation rec {
name = "libxkbcommon-0.2.0";
src = fetchurl {
url = "http://xkbcommon.org/download/${name}.tar.bz2";
sha256 = "0hpvfa8p4bhvhc1gcb578m354p5idd192xb8zlaq16d33h90msvl";
};
buildInputs = [ yacc flex xkeyboard_config ];
configureFlags = ''
--with-xkb-config-root=${xkeyboard_config}/etc/X11/xkb
'';
meta = {
description = "A library to handle keyboard descriptions";
homepage = http://xkbcommon.org;
};
}

View file

@ -8,8 +8,5 @@ stdenv.mkDerivation rec {
sha256 = "0q5fjaknl7s0z206dd8nzk9bdh8g4p23bz7784zrllnarl90saa5";
};
postUnpack = ''
tar xf ${mesa.src} --wildcards '*/include/'
export NIX_CFLAGS_COMPILE="-I $NIX_BUILD_TOP/[mM]esa*/include"
'';
NIX_CFLAGS_COMPILE = "-I ${mesa}/include";
}

View file

@ -0,0 +1,19 @@
{ stdenv, fetchurl, pkgconfig, mesa_noglu }:
stdenv.mkDerivation rec {
name = "glu-9.0.0";
src = fetchurl {
url = "ftp://ftp.freedesktop.org/pub/mesa/glu/${name}.tar.bz2";
sha256 = "04nzlil3a6fifcmb95iix3yl8mbxdl66b99s62yzq8m7g79x0yhz";
};
buildInputs = [ pkgconfig ];
propagatedBuildInputs = [ mesa_noglu ];
meta = {
description = "OpenGL utility library";
homepage = http://cgit.freedesktop.org/mesa/glu/;
license = "bsd"; # SGI-B-2.0, which seems BSD-like
};
}

View file

@ -1,41 +1,48 @@
{ stdenv, fetchurl, flex, bison, pkgconfig, libdrm, file, expat, makedepend
{ stdenv, fetchurl, flex, bison, pkgconfig, intltool, libdrm, file, expat, makedepend
, libXxf86vm, libXfixes, libXdamage, glproto, dri2proto, libX11, libxcb, libXext
, libXt, udev, enableTextureFloats ? false
, python, libxml2Python }:
, libXt, udev, enableTextureFloats ? false, enableR600LlvmCompiler ? false
, python, libxml2Python, autoconf, automake, libtool, llvm, writeText
, libffi, wayland }:
if ! stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms then
throw "unsupported platform for Mesa"
else
let version = "8.0.4"; in
let
version = "9.1.2";
in
stdenv.mkDerivation {
name = "mesa-${version}";
name = "mesa-noglu-${version}";
src = fetchurl {
url = "ftp://ftp.freedesktop.org/pub/mesa/${version}/MesaLib-${version}.tar.bz2";
md5 = "d546f988adfdf986cff45b1efa2d8a46";
sha256="1ns366armqmp2bxj1l7fff95v22b5z9mnkyykbdj81lhg9gi3586";
};
patches =
stdenv.lib.optional (stdenv.system == "mips64el-linux") ./mips_wmb.patch;
prePatch = "patchShebangs .";
preConfigure = "./autogen.sh";
configureFlags =
" --enable-gles1 --enable-gles2 --enable-gallium-egl"
+ " --with-gallium-drivers=i915,nouveau,r600,svga,swrast"
""
+ " --enable-gles1 --enable-gles2 --enable-gallium-egl"
+ " --with-gallium-drivers=i915,nouveau,r300,r600,svga,swrast"
+ " --with-egl-platforms=x11,wayland,drm --enable-gbm --enable-shared-glapi"
+ stdenv.lib.optionalString enableR600LlvmCompiler " --enable-r600-llvm-compiler"
# Texture floats are patented, see docs/patents.txt
+ stdenv.lib.optionalString enableTextureFloats " --enable-texture-float";
buildInputs = [ expat libdrm libXxf86vm libXfixes libXdamage glproto dri2proto
libxml2Python libX11 libXext libxcb libXt udev ];
buildInputs = [
autoconf automake libtool intltool expat libxml2Python udev llvm
libdrm libXxf86vm libXfixes libXdamage glproto dri2proto libX11 libXext libxcb libXt
libffi wayland
];
nativeBuildInputs = [ pkgconfig python makedepend file flex bison ];
enableParallelBuilding = true;
passthru = { inherit libdrm; };
passthru = { inherit libdrm; inherit version; };
meta = {
description = "An open source implementation of OpenGL";

View file

@ -1,16 +0,0 @@
rixed told me (viric) it's the patch to apply for mesa.
I adapted his patch for mesa 7.5 to this 7.10
diff --git a/src/mesa/drivers/dri/sis/sis_context.h b/src/mesa/drivers/dri/sis/sis_context.h
index a82a659..d8d8d9a 100644
--- a/src/mesa/drivers/dri/sis/sis_context.h
+++ b/src/mesa/drivers/dri/sis/sis_context.h
@@ -404,6 +404,8 @@ struct sis_context
#define MMIO_WMB() __asm __volatile("" : : : "memory")
#elif defined(__ia64__)
#define MMIO_WMB() __asm __volatile("mf" : : : "memory")
+#elif defined(__mips__)
+#define MMIO_WMB() __asm __volatile("" : : : "memory")
#else
#error platform needs WMB
#endif

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