mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-28 09:53:10 +00:00
Merge remote-tracking branch 'official/master' into multiple-outputs
Conflicts: pkgs/development/libraries/cairo/default.nix pkgs/development/libraries/freetype/default.nix pkgs/development/libraries/glib/default.nix pkgs/development/libraries/libpng/default.nix pkgs/development/libraries/pango/default.nix pkgs/tools/typesetting/tex/texlive/default.nix pkgs/top-level/all-packages.nix
This commit is contained in:
commit
1a55c4b89f
@ -44,6 +44,7 @@ my $info = XMLin($xml, KeyAttr => { 'item' => '+attrPath', 'meta' => 'name' }, F
|
||||
print "=== Package meta information ===\n\n";
|
||||
my $nrBadNames = 0;
|
||||
my $nrMissingMaintainers = 0;
|
||||
my $nrMissingPlatforms = 0;
|
||||
my $nrMissingDescriptions = 0;
|
||||
my $nrBadDescriptions = 0;
|
||||
my $nrMissingLicenses = 0;
|
||||
@ -77,6 +78,12 @@ foreach my $attr (sort keys %{$info->{item}}) {
|
||||
$nrMissingMaintainers++;
|
||||
}
|
||||
|
||||
# Check the platforms.
|
||||
if (!defined $pkg->{meta}->{platforms}) {
|
||||
print "$attr: Lacks a platform\n";
|
||||
$nrMissingPlatforms++;
|
||||
}
|
||||
|
||||
# Package names should not be capitalised.
|
||||
if ($pkgName =~ /^[A-Z]/) {
|
||||
print "$attr: package name ‘$pkgName’ should not be capitalised\n";
|
||||
@ -159,6 +166,7 @@ print "=== Bottom line ===\n";
|
||||
print "Number of packages: ", scalar(keys %{$info->{item}}), "\n";
|
||||
print "Number of bad names: $nrBadNames\n";
|
||||
print "Number of missing maintainers: $nrMissingMaintainers\n";
|
||||
print "Number of missing platforms: $nrMissingPlatforms\n";
|
||||
print "Number of missing licenses: $nrMissingLicenses\n";
|
||||
print "Number of missing descriptions: $nrMissingDescriptions\n";
|
||||
print "Number of bad descriptions: $nrBadDescriptions\n";
|
||||
|
@ -1,24 +1,24 @@
|
||||
{ stdenv, fetchurl, lib, qtscriptgenerator, perl, gettext, curl
|
||||
, libxml2, mysql, taglib, taglib_extras, loudmouth , kdelibs
|
||||
, qca2, libmtp, liblastfm, libgpod, pkgconfig, automoc4, phonon
|
||||
, strigi, soprano, qjson, ffmpeg, libofa }:
|
||||
, strigi, soprano, qjson, ffmpeg, libofa, nepomuk_core ? null }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "${pname}-${version}";
|
||||
|
||||
pname = "amarok";
|
||||
version = "2.7.1";
|
||||
version = "2.8.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.bz2";
|
||||
sha256 = "12dvqnx6jniykbi6sz94xxlnxzafjsaxlf0mppk9w5wn61jwc3cy";
|
||||
sha256 = "1ilf9wdp3wna5pmvxill8x08rb9gw86qkc2zwm3xk9hpy8l9pf7l";
|
||||
};
|
||||
|
||||
QT_PLUGIN_PATH="${qtscriptgenerator}/lib/qt4/plugins";
|
||||
patches = ./find-mysql.patch;
|
||||
|
||||
buildInputs = [ qtscriptgenerator stdenv.gcc.libc gettext curl
|
||||
libxml2 mysql taglib taglib_extras loudmouth kdelibs automoc4 phonon strigi
|
||||
soprano qca2 libmtp liblastfm libgpod pkgconfig qjson ffmpeg libofa ];
|
||||
soprano qca2 libmtp liblastfm libgpod pkgconfig qjson ffmpeg libofa nepomuk_core ];
|
||||
|
||||
cmakeFlags = "-DKDE4_BUILD_TESTS=OFF";
|
||||
|
||||
|
@ -1,46 +0,0 @@
|
||||
commit 9979970f05f25329100168d85a5c4cdc8c084b7a
|
||||
Author: Yury G. Kudryashov <urkud.urkud@gmail.com>
|
||||
Date: Thu Aug 30 12:32:53 2012 +0400
|
||||
|
||||
FindMySQLAmarok.cmake: use PATH_SUFFIXES
|
||||
|
||||
diff --git a/cmake/modules/FindMySQLAmarok.cmake b/cmake/modules/FindMySQLAmarok.cmake
|
||||
index 910b434..4c8b8e8 100644
|
||||
--- a/cmake/modules/FindMySQLAmarok.cmake
|
||||
+++ b/cmake/modules/FindMySQLAmarok.cmake
|
||||
@@ -13,18 +13,17 @@
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
if(NOT WIN32)
|
||||
- find_program(MYSQLCONFIG_EXECUTABLE NAMES mysql_config mysql_config5 PATHS ${BIN_INSTALL_DIR} ~/usr/bin /usr/local/bin)
|
||||
+ find_program(MYSQLCONFIG_EXECUTABLE NAMES mysql_config mysql_config5 HINTS ${BIN_INSTALL_DIR})
|
||||
endif(NOT WIN32)
|
||||
|
||||
find_path(MYSQL_INCLUDE_DIR mysql.h
|
||||
- /opt/local/include/mysql5/mysql
|
||||
+ PATHS
|
||||
+ /opt/local/include
|
||||
/opt/mysql/mysql/include
|
||||
- /opt/mysqle/include/mysql
|
||||
- /opt/ports/include/mysql5/mysql
|
||||
- /usr/include/mysql
|
||||
- /usr/local/include/mysql
|
||||
- /usr/mysql/include/mysql
|
||||
- ~/usr/include/mysql
|
||||
+ /opt/mysqle/include
|
||||
+ /opt/ports/include
|
||||
+ /usr/mysql/include
|
||||
+ PATH_SUFFIXES mysql mysql5/mysql
|
||||
)
|
||||
|
||||
if(MYSQLCONFIG_EXECUTABLE)
|
||||
@@ -40,8 +39,7 @@ if(MYSQLCONFIG_EXECUTABLE)
|
||||
|
||||
find_library(MYSQLD_PIC_SEPARATE
|
||||
mysqld_pic
|
||||
- PATHS
|
||||
- /usr/lib/mysql
|
||||
+ PATH_SUFFIXES mysql
|
||||
)
|
||||
|
||||
if(MYSQLD_PIC_SEPARATE)
|
@ -1,4 +1,4 @@
|
||||
{stdenv, fetchurl, id3lib, groff}:
|
||||
{stdenv, fetchurl, id3lib, groff, zlib}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "id3v2-0.1.11";
|
||||
@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
patches = [ ./id3v2-0.1.11-track-bad-free.patch ];
|
||||
|
||||
nativeBuildInputs = [ groff ];
|
||||
buildInputs = [ id3lib ];
|
||||
buildInputs = [ id3lib zlib ];
|
||||
|
||||
configurePhase = ''
|
||||
export makeFlags=PREFIX=$out
|
||||
|
@ -2,9 +2,9 @@
|
||||
, pkgconfig, gtk, libXft, dbus, libpng, libjpeg, libungif
|
||||
, libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
|
||||
, alsaLib
|
||||
, withX ? true
|
||||
}:
|
||||
|
||||
assert (gtk != null) -> (pkgconfig != null);
|
||||
assert (libXft != null) -> libpng != null; # probably a bug
|
||||
assert stdenv.isDarwin -> libXaw != null; # fails to link otherwise
|
||||
|
||||
@ -19,17 +19,18 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ ncurses x11 texinfo libXaw Xaw3d libXpm libpng libjpeg libungif
|
||||
libtiff librsvg libXft gconf libxml2 imagemagick gnutls alsaLib
|
||||
]
|
||||
++ stdenv.lib.optionals (gtk != null) [ gtk pkgconfig ]
|
||||
++ stdenv.lib.optional stdenv.isLinux dbus;
|
||||
[ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo ]
|
||||
++ stdenv.lib.optional stdenv.isLinux dbus
|
||||
++ stdenv.lib.optionals withX [
|
||||
x11 libXaw Xaw3d libXpm libpng libjpeg libungif
|
||||
libtiff librsvg libXft imagemagick gtk
|
||||
];
|
||||
|
||||
configureFlags =
|
||||
(if gtk != null then
|
||||
(if withX then
|
||||
[ "--with-x-toolkit=gtk" "--with-xft"]
|
||||
else
|
||||
[ "--with-x-toolkit=no" ])
|
||||
[ "--with-x=no --with-xpm=no --with-jpeg=no --with-png=no --with-gif=no --with-tiff=no" ])
|
||||
# On NixOS, help Emacs find `crt*.o'.
|
||||
++ stdenv.lib.optional (stdenv ? glibc)
|
||||
[ "--with-crt-dir=${stdenv.glibc}/lib" ];
|
||||
@ -69,7 +70,7 @@ EOF
|
||||
homepage = "http://www.gnu.org/software/emacs/";
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = with maintainers; [ chaoflow lovek323 simons ];
|
||||
maintainers = with maintainers; [ chaoflow lovek323 simons the-kenny ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -5,19 +5,19 @@ in
|
||||
assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "sublimetext-2.0.1";
|
||||
name = "sublimetext-2.0.2";
|
||||
src =
|
||||
if stdenv.system == "i686-linux" then
|
||||
fetchurl {
|
||||
name = "sublimetext-2.0.1.tar.bz2";
|
||||
url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1.tar.bz2;
|
||||
sha256 = "1x6vmlfn5mdbf23nyfr7dhhi6y60lnpcmqj59svl3bzvayijsxaf";
|
||||
name = "sublimetext-2.0.2.tar.bz2";
|
||||
url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2;
|
||||
sha256 = "026g5mppk28lzzzn9ibykcqkrd5msfmg0sc0z8w8jd7v3h28wcq7";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
name = "sublimetext-2.0.1.tar.bz2";
|
||||
url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1%20x64.tar.bz2;
|
||||
sha256 = "0174dnp9zika5as25mcls5y0qzhh8mnc5ajxsxz7qjrk4lrzk3c5";
|
||||
name = "sublimetext-2.0.2.tar.bz2";
|
||||
url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2%20x64.tar.bz2;
|
||||
sha256 = "115b71nbv9mv8cz6bkjwpbdf2ywnjc1zy2d3080f6ck4sqqfvfh1";
|
||||
};
|
||||
buildCommand = ''
|
||||
tar xvf ${src}
|
||||
|
21
pkgs/applications/misc/abook/default.nix
Normal file
21
pkgs/applications/misc/abook/default.nix
Normal file
@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchurl, pkgconfig, ncurses, readline }:
|
||||
|
||||
let version = "0.6.0pre2"; in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "abook-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://abook.sourceforge.net/devel/${name}.tar.gz";
|
||||
sha256 = "59d444504109dd96816e003b3023175981ae179af479349c34fa70bc12f6d385";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig ncurses readline ];
|
||||
|
||||
meta = {
|
||||
homepage = "http://abook.sourceforge.net/";
|
||||
description = "Abook is a text-based addressbook program designed to use with mutt mail client.";
|
||||
license = "GPLv2";
|
||||
maintainers = [ stdenv.lib.maintainers.edwtjo ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
@ -4,24 +4,31 @@
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "calibre-0.9.11";
|
||||
# 0.9.12+ versions won't build due to missing qt4 private headers: https://bugs.launchpad.net/calibre/+bug/1094719
|
||||
name = "calibre-1.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/calibre/${name}.tar.xz";
|
||||
sha256 = "0jjs2cx222pbv4nrivlxag5fxa0v9m63x7arcll6xi173zdn4gg8";
|
||||
sha256 = "0h6afn57pw3rb03ffbnss774gdx7ldirr43hbhzsc2k2h7lxnzyj";
|
||||
};
|
||||
|
||||
inherit python;
|
||||
|
||||
nativeBuildInputs = [ makeWrapper pkgconfig ];
|
||||
|
||||
patchPhase = ''
|
||||
tar xf ${qt48.src}
|
||||
qtdir=$(realpath $(ls | grep qt | grep 4.8 | grep src))
|
||||
sed -i setup/build_environment.py \
|
||||
-e "s|^qt_private_inc = .*|qt_private_inc = ['$qtdir/include/%s'%(m) for m in ('QtGui', 'QtCore')]|"
|
||||
'';
|
||||
|
||||
buildInputs =
|
||||
[ python pyqt4 sip popplerQt4 libpng imagemagick libjpeg
|
||||
fontconfig podofo qt48 pil chmlib icu
|
||||
fontconfig podofo qt48 pil chmlib icu sqlite libusb1 libmtp
|
||||
pythonPackages.mechanize pythonPackages.lxml pythonPackages.dateutil
|
||||
pythonPackages.cssutils pythonPackages.beautifulsoup pythonPackages.pillow
|
||||
pythonPackages.sqlite3 pythonPackages.netifaces sqlite libusb1 libmtp
|
||||
pythonPackages.sqlite3 pythonPackages.netifaces pythonPackages.apsw
|
||||
pythonPackages.cssselect
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl, pkgconfig, zlib, freetype, libjpeg, jbig2dec, openjpeg
|
||||
, libX11, libXext }:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mupdf-1.1";
|
||||
name = "mupdf-1.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://mupdf.com/download/archive/${name}-source.tar.gz";
|
||||
sha256 = "e54666bbe1d9f0a5464349bfbeffcf676c4a0fcad3efb89eba1f20d4ac991f34";
|
||||
sha256 = "0y247nka5gkr1ajn47jrlp5rcnf6h4ff7dfsprma3h4wxqdv7a5b";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig zlib freetype libjpeg jbig2dec openjpeg libX11 libXext ];
|
||||
@ -15,6 +15,19 @@ stdenv.mkDerivation rec {
|
||||
export NIX_CFLAGS_COMPILE=" $NIX_CFLAGS_COMPILE -I$(echo ${openjpeg}/include/openjpeg-*) "
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/applications
|
||||
cat > $out/share/applications/mupdf.desktop <<EOF
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Version=1.0
|
||||
Name=mupdf
|
||||
Comment=PDF viewer
|
||||
Exec=$out/bin/mupdf-x11
|
||||
Terminal=false
|
||||
EOF
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://mupdf.com/;
|
||||
description = "Lightweight PDF viewer and toolkit written in portable C";
|
||||
|
@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = "https://github.com/samr7/vanitygen";
|
||||
license = "AGPLv3";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -14,9 +14,9 @@ let
|
||||
else if stdenv.system == "i686-linux" then "ld-linux.so.2"
|
||||
else throw "Bittorrent Sync for: ${stdenv.system} not supported!";
|
||||
|
||||
version = "1.1.42";
|
||||
sha256 = if stdenv.system == "x86_64-linux" then "07gcjzhhr8simkjjxhyzkvh3748ll81d742fz7j31nwdi34my8ri"
|
||||
else if stdenv.system == "i686-linux" then "0awf5bfhb4dp4aydzrgdp3wqv1mz6ys1z45i0r1hbqszvf44xj7c"
|
||||
version = "1.1.70";
|
||||
sha256 = if stdenv.system == "x86_64-linux" then "1hnyncq5439fxn1q8dkzcg2alxjkanr4q4pgqqf3nngz4cdar5vi"
|
||||
else if stdenv.system == "i686-linux" then "1ijdmzl8bnb4k99vrjn5gd31hy64p9wiyxw5wc5gbpgap191h5i5"
|
||||
else throw "Bittorrent Sync for: ${stdenv.system} not supported!";
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
|
@ -88,11 +88,9 @@ let
|
||||
libExecPath = "$out/libexec/${packageName}";
|
||||
|
||||
# user namespace sandbox patch
|
||||
userns_patch = if versionOlder sourceInfo.version "29.0.0.0"
|
||||
then ./sandbox_userns.patch
|
||||
else if versionOlder sourceInfo.version "30.0.0.0"
|
||||
then ./sandbox_userns_29.patch
|
||||
else ./sandbox_userns_30.patch;
|
||||
userns_patch = if versionOlder sourceInfo.version "30.0.0.0"
|
||||
then ./sandbox_userns_29.patch
|
||||
else ./sandbox_userns_30.patch;
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "${packageName}-${version}";
|
||||
@ -134,9 +132,11 @@ in stdenv.mkDerivation rec {
|
||||
sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi
|
||||
'' + optionalString useOpenSSL ''
|
||||
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
|
||||
'' + optionalString (versionOlder sourceInfo.version "29.0.0.0") ''
|
||||
sed -i -e '/struct SECItemArray/,/^};/d' \
|
||||
net/third_party/nss/ssl/bodge/secitem_array.c
|
||||
'' + optionalString (!versionOlder sourceInfo.version "30.0.0.0") ''
|
||||
sed -i -e '/base::FilePath exe_dir/,/^ *} *$/c \
|
||||
sandbox_binary = \
|
||||
base::FilePath("'"${libExecPath}/${packageName}_sandbox"'");
|
||||
' content/browser/browser_main_loop.cc
|
||||
'';
|
||||
|
||||
gypFlags = mkGypFlags (gypFlagsUseSystemLibs // {
|
||||
|
@ -1,292 +0,0 @@
|
||||
From a242351d8a32ea33e6337b928969cc9f715e314e Mon Sep 17 00:00:00 2001
|
||||
From: aszlig <aszlig@redmoonstudios.org>
|
||||
Date: Thu, 16 May 2013 14:17:56 +0200
|
||||
Subject: [PATCH] zygote: Add support for user namespaces on Linux.
|
||||
|
||||
The implementation is done by patching the Zygote host to execute the sandbox
|
||||
binary with CLONE_NEWUSER and setting the uid and gid mapping so that the child
|
||||
process is using uid 0 and gid 0 which map to the current user of the parent.
|
||||
Afterwards, the sandbox will continue as if it was called as a setuid binary.
|
||||
|
||||
In addition, this adds new_user_namespace as an option in process_util in order
|
||||
to set the UID and GID mapping correctly. The reason for this is that just
|
||||
passing CLONE_NEWUSER to clone_flags doesn't help in LaunchProcess(), because
|
||||
without setting the mappings exec*() will clear the process's capability sets.
|
||||
|
||||
If the kernel doesn't support unprivileged user namespaces and the sandbox
|
||||
binary doesn't have the setuid flag, the Zygote main process will run without a
|
||||
sandbox. This is to mimic the behaviour if no SUID sandbox binary path is set.
|
||||
|
||||
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
|
||||
---
|
||||
base/process_util.h | 4 ++
|
||||
base/process_util_posix.cc | 71 +++++++++++++++++++++-
|
||||
.../browser/zygote_host/zygote_host_impl_linux.cc | 28 +++++++--
|
||||
content/zygote/zygote_main_linux.cc | 7 +++
|
||||
sandbox/linux/suid/client/setuid_sandbox_client.cc | 8 +++
|
||||
sandbox/linux/suid/client/setuid_sandbox_client.h | 4 ++
|
||||
sandbox/linux/suid/common/sandbox.h | 1 +
|
||||
7 files changed, 117 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/base/process_util.h b/base/process_util.h
|
||||
index 6efc70c..0f0c74c 100644
|
||||
--- a/base/process_util.h
|
||||
+++ b/base/process_util.h
|
||||
@@ -261,3 +261,4 @@ struct LaunchOptions {
|
||||
+ , new_user_namespace(false)
|
||||
#endif // OS_LINUX
|
||||
#if defined(OS_CHROMEOS)
|
||||
, ctrl_terminal_fd(-1)
|
||||
@@ -332,6 +333,9 @@ struct LaunchOptions {
|
||||
#if defined(OS_LINUX)
|
||||
// If non-zero, start the process using clone(), using flags as provided.
|
||||
int clone_flags;
|
||||
+
|
||||
+ // If true, start the process in a new user namespace.
|
||||
+ bool new_user_namespace;
|
||||
#endif // defined(OS_LINUX)
|
||||
|
||||
#if defined(OS_CHROMEOS)
|
||||
diff --git a/base/process_util_posix.cc b/base/process_util_posix.cc
|
||||
index 6f15130..cea07f0 100644
|
||||
--- a/base/process_util_posix.cc
|
||||
+++ b/base/process_util_posix.cc
|
||||
@@ -34,6 +34,13 @@
|
||||
#include "base/threading/platform_thread.h"
|
||||
#include "base/threading/thread_restrictions.h"
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
+#include <sched.h>
|
||||
+#if !defined(CLONE_NEWUSER)
|
||||
+#define CLONE_NEWUSER 0x10000000
|
||||
+#endif
|
||||
+#endif
|
||||
+
|
||||
#if defined(OS_CHROMEOS)
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
@@ -621,8 +628,19 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
|
||||
pid_t pid;
|
||||
#if defined(OS_LINUX)
|
||||
- if (options.clone_flags) {
|
||||
- pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
|
||||
+ int map_pipe_fd[2];
|
||||
+ int flags = options.clone_flags;
|
||||
+
|
||||
+ if (options.new_user_namespace) {
|
||||
+ flags |= CLONE_NEWUSER;
|
||||
+ if (pipe(map_pipe_fd) < 0) {
|
||||
+ DPLOG(ERROR) << "user namespace pipe";
|
||||
+ return false;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (options.clone_flags || options.new_user_namespace) {
|
||||
+ pid = syscall(__NR_clone, flags, 0, 0, 0);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
@@ -635,6 +653,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
} else if (pid == 0) {
|
||||
// Child process
|
||||
|
||||
+#if defined(OS_LINUX)
|
||||
+ if (options.new_user_namespace) {
|
||||
+ // Close the write end of the pipe so we get an EOF when the parent closes
|
||||
+ // the FD. This is to avoid race conditions when the UID/GID mappings are
|
||||
+ // written _after_ execvp().
|
||||
+ close(map_pipe_fd[1]);
|
||||
+
|
||||
+ char dummy;
|
||||
+ if (HANDLE_EINTR(read(map_pipe_fd[0], &dummy, 1)) != 0) {
|
||||
+ RAW_LOG(ERROR, "Unexpected input in uid/gid mapping pipe.");
|
||||
+ _exit(127);
|
||||
+ }
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
// DANGER: fork() rule: in the child, if you don't end up doing exec*(),
|
||||
// you call _exit() instead of exit(). This is because _exit() does not
|
||||
// call any previously-registered (in the parent) exit handlers, which
|
||||
@@ -749,6 +782,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
_exit(127);
|
||||
} else {
|
||||
// Parent process
|
||||
+#if defined(OS_LINUX)
|
||||
+ if (options.new_user_namespace) {
|
||||
+ // We need to write UID/GID mapping here to map the current user outside
|
||||
+ // the namespace to the root user inside the namespace in order to
|
||||
+ // correctly "fool" the child process.
|
||||
+ char buf[256];
|
||||
+ int map_fd, map_len;
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "/proc/%d/uid_map", pid);
|
||||
+ map_fd = open(buf, O_RDWR);
|
||||
+ DPCHECK(map_fd >= 0);
|
||||
+ snprintf(buf, sizeof(buf), "0 %d 1", geteuid());
|
||||
+ map_len = strlen(buf);
|
||||
+ if (write(map_fd, buf, map_len) != map_len) {
|
||||
+ RAW_LOG(WARNING, "Can't write to uid_map.");
|
||||
+ }
|
||||
+ close(map_fd);
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "/proc/%d/gid_map", pid);
|
||||
+ map_fd = open(buf, O_RDWR);
|
||||
+ DPCHECK(map_fd >= 0);
|
||||
+ snprintf(buf, sizeof(buf), "0 %d 1", getegid());
|
||||
+ map_len = strlen(buf);
|
||||
+ if (write(map_fd, buf, map_len) != map_len) {
|
||||
+ RAW_LOG(WARNING, "Can't write to gid_map.");
|
||||
+ }
|
||||
+ close(map_fd);
|
||||
+
|
||||
+ // Close the pipe on the parent, so the child can continue doing the
|
||||
+ // execvp() call.
|
||||
+ close(map_pipe_fd[1]);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
if (options.wait) {
|
||||
// While this isn't strictly disk IO, waiting for another process to
|
||||
// finish is the sort of thing ThreadRestrictions is trying to prevent.
|
||||
diff --git a/content/browser/zygote_host/zygote_host_impl_linux.cc b/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
index ba7884f8..2a674a0 100644
|
||||
--- a/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
+++ b/content/browser/zygote_host/zygote_host_impl_linux.cc
|
||||
@@ -117,6 +117,9 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
|
||||
sandbox_binary_ = sandbox_cmd.c_str();
|
||||
|
||||
+ bool userns_sandbox = false;
|
||||
+ const std::vector<std::string> cmd_line_unwrapped(cmd_line.argv());
|
||||
+
|
||||
if (!sandbox_cmd.empty()) {
|
||||
struct stat st;
|
||||
if (stat(sandbox_binary_.c_str(), &st) != 0) {
|
||||
@@ -124,16 +127,21 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
<< sandbox_binary_ << " Aborting now.";
|
||||
}
|
||||
|
||||
- if (access(sandbox_binary_.c_str(), X_OK) == 0 &&
|
||||
- (st.st_uid == 0) &&
|
||||
- (st.st_mode & S_ISUID) &&
|
||||
- (st.st_mode & S_IXOTH)) {
|
||||
+ if (access(sandbox_binary_.c_str(), X_OK) == 0) {
|
||||
using_suid_sandbox_ = true;
|
||||
+
|
||||
cmd_line.PrependWrapper(sandbox_binary_);
|
||||
|
||||
scoped_ptr<sandbox::SetuidSandboxClient>
|
||||
sandbox_client(sandbox::SetuidSandboxClient::Create());
|
||||
sandbox_client->SetupLaunchEnvironment();
|
||||
+
|
||||
+ if (!((st.st_uid == 0) &&
|
||||
+ (st.st_mode & S_ISUID) &&
|
||||
+ (st.st_mode & S_IXOTH))) {
|
||||
+ userns_sandbox = true;
|
||||
+ sandbox_client->SetNoSuid();
|
||||
+ }
|
||||
} else {
|
||||
LOG(FATAL) << "The SUID sandbox helper binary was found, but is not "
|
||||
"configured correctly. Rather than run without sandboxing "
|
||||
@@ -161,7 +169,19 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
|
||||
base::ProcessHandle process = -1;
|
||||
base::LaunchOptions options;
|
||||
options.fds_to_remap = &fds_to_map;
|
||||
+ if (userns_sandbox)
|
||||
+ options.new_user_namespace = true;
|
||||
base::LaunchProcess(cmd_line.argv(), options, &process);
|
||||
+
|
||||
+ if (process == -1 && userns_sandbox) {
|
||||
+ LOG(ERROR) << "User namespace sandbox failed to start, running without "
|
||||
+ << "sandbox! You need at least kernel 3.8.0 with CONFIG_USER_NS "
|
||||
+ << "enabled in order to use the sandbox without setuid bit.";
|
||||
+ using_suid_sandbox_ = false;
|
||||
+ options.new_user_namespace = false;
|
||||
+ base::LaunchProcess(cmd_line_unwrapped, options, &process);
|
||||
+ }
|
||||
+
|
||||
CHECK(process != -1) << "Failed to launch zygote process";
|
||||
|
||||
if (using_suid_sandbox_) {
|
||||
diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc
|
||||
index ca75518..d906411 100644
|
||||
--- a/content/zygote/zygote_main_linux.cc
|
||||
+++ b/content/zygote/zygote_main_linux.cc
|
||||
@@ -402,6 +402,13 @@ static bool EnterSandbox(sandbox::SetuidSandboxClient* setuid_sandbox,
|
||||
*has_started_new_init = true;
|
||||
}
|
||||
|
||||
+ // Don't set non-dumpable, as it causes trouble when the host tries to find
|
||||
+ // the zygote process (XXX: Not quite sure why this happens with user
|
||||
+ // namespaces). Fortunately, we also have the seccomp filter sandbox which
|
||||
+ // should disallow the use of ptrace.
|
||||
+ if (setuid_sandbox->IsNoSuid())
|
||||
+ return true;
|
||||
+
|
||||
#if !defined(OS_OPENBSD)
|
||||
// Previously, we required that the binary be non-readable. This causes the
|
||||
// kernel to mark the process as non-dumpable at startup. The thinking was
|
||||
diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
index 7a174ef..633401e 100644
|
||||
--- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
|
||||
@@ -166,6 +166,10 @@ bool SetuidSandboxClient::IsInNewNETNamespace() const {
|
||||
return env_->HasVar(kSandboxNETNSEnvironmentVarName);
|
||||
}
|
||||
|
||||
+bool SetuidSandboxClient::IsNoSuid() const {
|
||||
+ return env_->HasVar(kSandboxNoSuidVarName);
|
||||
+}
|
||||
+
|
||||
bool SetuidSandboxClient::IsSandboxed() const {
|
||||
return sandboxed_;
|
||||
}
|
||||
@@ -175,5 +179,9 @@ void SetuidSandboxClient::SetupLaunchEnvironment() {
|
||||
SetSandboxAPIEnvironmentVariable(env_);
|
||||
}
|
||||
|
||||
+void SetuidSandboxClient::SetNoSuid() {
|
||||
+ env_->SetVar(kSandboxNoSuidVarName, "1");
|
||||
+}
|
||||
+
|
||||
} // namespace sandbox
|
||||
|
||||
diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.h b/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
index a9f6536..2e8113a 100644
|
||||
--- a/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
+++ b/sandbox/linux/suid/client/setuid_sandbox_client.h
|
||||
@@ -39,6 +39,8 @@ class SetuidSandboxClient {
|
||||
bool IsInNewPIDNamespace() const;
|
||||
// Did the setuid helper create a new network namespace ?
|
||||
bool IsInNewNETNamespace() const;
|
||||
+ // Is sandboxed without SUID binary ?
|
||||
+ bool IsNoSuid() const;
|
||||
// Are we done and fully sandboxed ?
|
||||
bool IsSandboxed() const;
|
||||
|
||||
@@ -46,6 +48,8 @@ class SetuidSandboxClient {
|
||||
// helper.
|
||||
void SetupLaunchEnvironment();
|
||||
|
||||
+ void SetNoSuid();
|
||||
+
|
||||
private:
|
||||
// Holds the environment. Will never be NULL.
|
||||
base::Environment* env_;
|
||||
diff --git a/sandbox/linux/suid/common/sandbox.h b/sandbox/linux/suid/common/sandbox.h
|
||||
index aad4ff8..bd710d5 100644
|
||||
--- a/sandbox/linux/suid/common/sandbox.h
|
||||
+++ b/sandbox/linux/suid/common/sandbox.h
|
||||
@@ -18,6 +18,7 @@ static const char kAdjustLowMemMarginSwitch[] = "--adjust-low-mem";
|
||||
|
||||
static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D";
|
||||
static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID";
|
||||
+static const char kSandboxNoSuidVarName[] = "SBX_NO_SUID";
|
||||
|
||||
static const long kSUIDSandboxApiNumber = 1;
|
||||
static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ";
|
||||
--
|
||||
1.8.2.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
commit b9a1fa30eb3296b169f51ffa8ee05513c5c1dbae
|
||||
commit 41510de6ae32e6161073992bd1243f7f33148a06
|
||||
Author: aszlig <aszlig@redmoonstudios.org>
|
||||
Date: Thu May 16 14:17:56 2013 +0200
|
||||
|
||||
@ -43,10 +43,10 @@ index 45b1053..ce71418 100644
|
||||
|
||||
#if defined(OS_CHROMEOS)
|
||||
diff --git a/base/process/launch_posix.cc b/base/process/launch_posix.cc
|
||||
index 336633c..4b50a5d 100644
|
||||
index 52e149c..312f835 100644
|
||||
--- a/base/process/launch_posix.cc
|
||||
+++ b/base/process/launch_posix.cc
|
||||
@@ -36,6 +36,13 @@
|
||||
@@ -37,6 +37,13 @@
|
||||
#include "base/threading/platform_thread.h"
|
||||
#include "base/threading/thread_restrictions.h"
|
||||
|
||||
@ -60,12 +60,11 @@ index 336633c..4b50a5d 100644
|
||||
#if defined(OS_CHROMEOS)
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
@@ -395,8 +402,19 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
@@ -416,13 +423,23 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
|
||||
pid_t pid;
|
||||
#if defined(OS_LINUX)
|
||||
- if (options.clone_flags) {
|
||||
- pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
|
||||
+ int map_pipe_fd[2];
|
||||
+ int flags = options.clone_flags;
|
||||
+
|
||||
@ -78,11 +77,18 @@ index 336633c..4b50a5d 100644
|
||||
+ }
|
||||
+
|
||||
+ if (options.clone_flags || options.new_user_namespace) {
|
||||
// Signal handling in this function assumes the creation of a new
|
||||
// process, so we check that a thread is not being created by mistake
|
||||
// and that signal handling follows the process-creation rules.
|
||||
- RAW_CHECK(
|
||||
- !(options.clone_flags & (CLONE_SIGHAND | CLONE_THREAD | CLONE_VM)));
|
||||
- pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
|
||||
+ RAW_CHECK(!(flags & (CLONE_SIGHAND | CLONE_THREAD | CLONE_VM)));
|
||||
+ pid = syscall(__NR_clone, flags, 0, 0, 0);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
@@ -409,6 +427,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
@@ -440,6 +457,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
} else if (pid == 0) {
|
||||
// Child process
|
||||
|
||||
@ -104,7 +110,7 @@ index 336633c..4b50a5d 100644
|
||||
// DANGER: fork() rule: in the child, if you don't end up doing exec*(),
|
||||
// you call _exit() instead of exit(). This is because _exit() does not
|
||||
// call any previously-registered (in the parent) exit handlers, which
|
||||
@@ -523,6 +556,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
@@ -555,6 +587,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
|
||||
_exit(127);
|
||||
} else {
|
||||
// Parent process
|
||||
@ -209,10 +215,10 @@ index bb84e62..bce0d18 100644
|
||||
|
||||
if (using_suid_sandbox_) {
|
||||
diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc
|
||||
index dcea4c0..c06b4ae 100644
|
||||
index 1f0e9f5..ade5aab 100644
|
||||
--- a/content/zygote/zygote_main_linux.cc
|
||||
+++ b/content/zygote/zygote_main_linux.cc
|
||||
@@ -398,6 +398,13 @@ static bool EnterSandbox(sandbox::SetuidSandboxClient* setuid_sandbox,
|
||||
@@ -420,6 +420,13 @@ static bool EnterSandbox(sandbox::SetuidSandboxClient* setuid_sandbox,
|
||||
*has_started_new_init = true;
|
||||
}
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
# This file is autogenerated from update.sh in the same directory.
|
||||
{
|
||||
dev = {
|
||||
version = "30.0.1588.0";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1588.0.tar.xz";
|
||||
sha256 = "1jwc2pkd75gax8vj8wzahhpzl6ilgrlj3bcbah975yy67m7c8p13";
|
||||
version = "31.0.1612.0";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-31.0.1612.0.tar.xz";
|
||||
sha256 = "19h6i8jdnpzbvyq8pk9jq89lghnydpij9yj8xfs7qdgqgyxxcl5w";
|
||||
};
|
||||
beta = {
|
||||
version = "29.0.1547.49";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.49.tar.xz";
|
||||
sha256 = "03r64rydi2kbxgi2dcpslmpb716ppadqy1jzrbw39icz5xpgmg3k";
|
||||
version = "30.0.1599.22";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.22.tar.xz";
|
||||
sha256 = "0955q7fz6nfr7nbxa8hp9q7mgljlan42rjg8ql5x2vn6c80sjji8";
|
||||
};
|
||||
stable = {
|
||||
version = "28.0.1500.95";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-28.0.1500.95.tar.xz";
|
||||
sha256 = "0d6pj57nyx7wfgxws98f6ly749flcyv7zg5sc3w16ggdxf5qhf1w";
|
||||
version = "29.0.1547.65";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.65.tar.xz";
|
||||
sha256 = "0vmb5dsh61jyr68838pnczlc2mhvvil4hjkrmwklzlfz30c8s2w6";
|
||||
};
|
||||
}
|
||||
|
@ -19,9 +19,9 @@ assert useSystemCairo -> cairo != null;
|
||||
let optional = stdenv.lib.optional;
|
||||
in rec {
|
||||
|
||||
firefoxVersion = "23.0";
|
||||
firefoxVersion = "23.0.1";
|
||||
|
||||
xulVersion = "23.0"; # this attribute is used by other packages
|
||||
xulVersion = "23.0.1"; # this attribute is used by other packages
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
@ -31,7 +31,7 @@ in rec {
|
||||
# Fall back to this url for versions not available at releases.mozilla.org.
|
||||
"ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
|
||||
];
|
||||
sha1 = "31936d2ddb727640c96a3ae697bf145c42a2a20e";
|
||||
sha1 = "66361fcvyl9liyh41gvgysiim90wsywk";
|
||||
};
|
||||
|
||||
commonConfigureFlags =
|
||||
|
@ -22,7 +22,7 @@ stdenv.mkDerivation {
|
||||
sha1 = "4bcbb33f0b3ea050e805723680b5669d80438812";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
#enableParallelBuilding = true;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig perl python zip unzip bzip2 gtk dbus_glib alsaLib libIDL nspr
|
||||
|
@ -22,6 +22,6 @@ stdenv.mkDerivation rec {
|
||||
description = "A GTK-based news feed agregator";
|
||||
homepage = http://lzone.de/liferea/;
|
||||
maintainers = [ stdenv.lib.maintainers.vcunat ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -1,19 +1,22 @@
|
||||
{stdenv, fetchurl, libpcap, ncurses, expat, pcre}:
|
||||
{ stdenv, fetchurl, pkgconfig, libpcap, ncurses, expat, pcre, libnl }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "kismet-2011-03-r2";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kismet-${version}";
|
||||
version = "2013-03-R1b";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.kismetwireless.net/code/kismet-2011-03-R2.tar.gz;
|
||||
sha256 = "0r1admlaiq7k0v13d9ci9i9mf5m25i1r5r18bkawsla9fbxrk83i";
|
||||
url = "http://www.kismetwireless.net/code/${name}.tar.xz";
|
||||
sha256 = "0b3wabdkh0p3msphihm4kz5yw02p27ska5lfippfcyn6z1z4svb3";
|
||||
};
|
||||
|
||||
buildInputs = [libpcap ncurses expat pcre];
|
||||
postConfigure =
|
||||
"sed -e 's@-o \$(INSTUSR)@@' \\
|
||||
-e 's@-g \$(INSTGRP)@@' \\
|
||||
-e 's@-g \$(MANGRP)@@' \\
|
||||
-i Makefile";
|
||||
buildInputs = [ pkgconfig libpcap ncurses expat pcre libnl ];
|
||||
postConfigure = ''
|
||||
sed -e 's/-o $(INSTUSR)//' \
|
||||
-e 's/-g $(INSTGRP)//' \
|
||||
-e 's/-g $(MANGRP)//' \
|
||||
-e 's/-g $(SUIDGROUP)//' \
|
||||
-i Makefile
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Wireless network sniffer";
|
||||
|
@ -1,24 +1,33 @@
|
||||
{ stdenv, fetchurl, cmake, kdelibs, attica, perl, zlib, libpng, boost, mesa
|
||||
, kdepimlibs, createresources ? null, eigen, qca2, exiv2, soprano, marble, lcms2
|
||||
, fontconfig, freetype, sqlite, icu, libwpd, libwpg, pkgconfig, popplerQt4
|
||||
, libkdcraw, libxslt, fftw, glew, gsl, shared_desktop_ontologies, okular }:
|
||||
, libkdcraw, libxslt, fftw, glew, gsl, shared_desktop_ontologies, okular
|
||||
, libvisio, kactivities, mysql, postgresql, freetds, xbase, openexr, ilmbase
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "calligra-2.5.5";
|
||||
name = "calligra-2.7.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/${name}/${name}.tar.bz2";
|
||||
sha256 = "0h9idadrcyjvd0mkwri4lg310mzpna6s0pvc7b7r3267wzjbn9kw";
|
||||
url = "mirror://kde/stable/${name}/${name}.tar.xz";
|
||||
sha256 = "1awnvv62fp5bjhi6fys37s6lpzxaig4v15m1zjlgxq82ig61w6sq";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake perl pkgconfig ];
|
||||
|
||||
patches = [ ./fix-kde4.10-build.patch ];
|
||||
# patches = [ ./fix-kde4.10-build.patch ];
|
||||
|
||||
# TODO: package Vc, libWPS, OCIO, OpenShiva, QtShiva, Spnav, m2mml
|
||||
# TODO: not found popplerQt4
|
||||
|
||||
buildInputs = [ kdelibs attica zlib libpng boost mesa kdepimlibs
|
||||
createresources eigen qca2 exiv2 soprano marble lcms2 fontconfig freetype
|
||||
sqlite icu libwpd libwpg popplerQt4 libkdcraw libxslt fftw glew gsl
|
||||
shared_desktop_ontologies okular ];
|
||||
shared_desktop_ontologies okular
|
||||
libvisio kactivities mysql postgresql freetds xbase openexr
|
||||
];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
|
||||
|
||||
meta = {
|
||||
description = "A Qt/KDE office suite, formely known as koffice";
|
||||
|
@ -1,25 +1,30 @@
|
||||
{ stdenv, fetchgit, cmake, boost, gmp, mpfr, libedit, python, texinfo }:
|
||||
|
||||
let
|
||||
rev = "26d7197";
|
||||
rev = "0ec4291";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "ledger3-2013.06.${rev}";
|
||||
name = "ledger3-2013.08.${rev}";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/ledger/ledger.git";
|
||||
inherit rev;
|
||||
sha256 = "02nf4kdrd61q9rf5rrarwmx47y2ya5qix7n82cj9qi9p4v3k3m2g";
|
||||
sha256 = "1y4rcbx8y2fxkdc7i06n1i5jf3cq05bvzpb8498mis2gwfmkw470";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake boost gmp mpfr libedit python texinfo ];
|
||||
|
||||
# Unit tests fail in the current git snapshot. Try enabling them again
|
||||
# when updating this package!
|
||||
doCheck = false;
|
||||
|
||||
# Tests on Darwin are failing
|
||||
doCheck = !stdenv.isDarwin;
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Skip byte-compiling of emacs-lisp files because this is currently
|
||||
# broken in ledger...
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/emacs/site-lisp/
|
||||
cp -v $src/lisp/*.el $out/share/emacs/site-lisp/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://ledger-cli.org/";
|
||||
description = "A double-entry accounting system with a command-line reporting interface";
|
||||
@ -33,6 +38,6 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
maintainers = with stdenv.lib.maintainers; [ simons the-kenny ];
|
||||
};
|
||||
}
|
||||
|
@ -1,4 +1,10 @@
|
||||
{ stdenv, fetchurl, pam, python, tcsh, libxslt, perl, ArchiveZip
|
||||
# when updating version, wait for the build to fail
|
||||
# run make without sourcing the environment and let libreoffice
|
||||
# download all extra files
|
||||
# then list extra files separated by newline and pipe them to
|
||||
# generate-libreoffice-srcs.sh and copy output to libreoffice-srcs.nix
|
||||
|
||||
{ stdenv, fetchurl, pam, python3, tcsh, libxslt, perl, ArchiveZip
|
||||
, CompressZlib, zlib, libjpeg, expat, pkgconfigUpstream, freetype, libwpd
|
||||
, libxml2, db4, sablotron, curl, libXaw, fontconfig, libsndfile, neon
|
||||
, bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
|
||||
@ -6,54 +12,117 @@
|
||||
, libXinerama, openssl, gperf, cppunit, GConf, ORBit2, poppler
|
||||
, librsvg, gnome_vfs, gstreamer, gst_plugins_base, mesa
|
||||
, autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
|
||||
, libwpg, dbus_glib, qt4, kde4, clucene_core, libcdr, lcms, vigra
|
||||
, libiodbc, mdds, saneBackends, mythes, libexttextcat, libvisio
|
||||
, fontsConf
|
||||
, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" ]
|
||||
, libwpg, dbus_glib, glibc, qt4, kde4, clucene_core, libcdr, lcms, vigra
|
||||
, unixODBC, mdds, saneBackends, mythes, libexttextcat, libvisio
|
||||
, fontsConf, pkgconfig, libzip, bluez5, libtool, maven
|
||||
, langs ? [ "ALL" ]
|
||||
}:
|
||||
|
||||
let
|
||||
langsSpaces = stdenv.lib.concatStringsSep " " langs;
|
||||
major = "3";
|
||||
minor = "6";
|
||||
patch = "6";
|
||||
major = "4";
|
||||
minor = "0";
|
||||
patch = "5";
|
||||
tweak = "2";
|
||||
subdir = "${major}.${minor}.${patch}";
|
||||
version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
|
||||
|
||||
# configure phase dependency
|
||||
liborcus = stdenv.mkDerivation rec {
|
||||
version = "0.3.0";
|
||||
name = "liborcus-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dev-www.libreoffice.org/src/8755aac23317494a9028569374dc87b2-liborcus_0.3.0.tar.bz2";
|
||||
sha256 = "0xrw13s390mcpm50apclydl38sw2sdq27csrr1k0d39jna2990ih";
|
||||
};
|
||||
|
||||
configureFlags = "--disable-werror";
|
||||
|
||||
buildInputs = [ zlib boost mdds pkgconfig libixion libzip ];
|
||||
};
|
||||
|
||||
# configure phase dependency
|
||||
liblangtag = stdenv.mkDerivation rec {
|
||||
version = "0.4.0";
|
||||
name = "liblangtag-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dev-www.libreoffice.org/src/54e578c91b1b68e69c72be22adcb2195-${name}.tar.bz2";
|
||||
sha256 = "1bjb0fxjmvzxlhr5by9wgisf6w5yvy6wgfzfkjyw6igk39fivdyb";
|
||||
};
|
||||
|
||||
buildInputs = [ libtool pkgconfig libxml2 ];
|
||||
};
|
||||
|
||||
# doesn't work with srcs versioning
|
||||
libmspub = stdenv.mkDerivation rec {
|
||||
version = "0.0.6";
|
||||
name = "libmspub-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dev-www.libreoffice.org/src/${name}.tar.gz";
|
||||
sha256 = "1zdcvnm0dpac5yqdv34hq9j38cnhyqzyjgb19iyp54ajnwfjhmcq";
|
||||
};
|
||||
|
||||
configureFlags = "--disable-werror";
|
||||
|
||||
buildInputs = [ zlib libwpd libwpg pkgconfig boost icu ];
|
||||
};
|
||||
|
||||
# doesn't exist in srcs
|
||||
libixion = stdenv.mkDerivation rec {
|
||||
version = "0.5.0";
|
||||
name = "libixion-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://kohei.us/files/ixion/src/${name}.tar.bz2";
|
||||
sha256 = "010k33bfkckx28r4rdk5mkd0mmayy5ng9ja0j0zg0z237gcfgrzb";
|
||||
};
|
||||
|
||||
configureFlags = "--with-boost=${boost}";
|
||||
|
||||
buildInputs = [ boost mdds pkgconfig ];
|
||||
};
|
||||
|
||||
fetchThirdParty = {name, md5}: fetchurl {
|
||||
inherit name md5;
|
||||
url = "http://dev-www.libreoffice.org/src/${md5}-${name}";
|
||||
};
|
||||
|
||||
fetchSrc = {name, sha256}: fetchurl {
|
||||
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${name}-${version}.tar.xz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
srcs = {
|
||||
third_party = [ (fetchurl rec {
|
||||
url = "http://dev-www.libreoffice.org/extern/${md5}-${name}";
|
||||
md5 = "185d60944ea767075d27247c3162b3bc";
|
||||
name = "unowinreg.dll";
|
||||
}) ] ++ (map fetchThirdParty (import ./libreoffice-srcs.nix));
|
||||
|
||||
translations = fetchSrc {
|
||||
name = "translations";
|
||||
sha256 = "1n3yk2077adyxrhs0jpkbm8dg3lxpn3sy63f0dl87ifv7ha1rfpn";
|
||||
sha256 = "0x96wlwr5m7w4k3ygydzak3ycq35hjq60vfi6nfxczlr8pfjyjxv";
|
||||
};
|
||||
|
||||
# TODO: dictionaries
|
||||
|
||||
help = fetchSrc {
|
||||
name = "help";
|
||||
sha256 = "12rb5mw6sbi41w1zaxrj4qffiis9qcx8ibp5cpmwsz07nsdv5sxk";
|
||||
sha256 = "0nab5jcgrrgn0v1yrm18nl9avp4vifbas48l1absz3jmzf9wka7b";
|
||||
};
|
||||
|
||||
core = fetchSrc {
|
||||
name = "core";
|
||||
sha256 = "0xw36sa73cgk3k3fv1spv5pavm95bc02lszn8415ay36lcc098pn";
|
||||
};
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libreoffice-${version}";
|
||||
|
||||
src = srcs.core;
|
||||
src = fetchurl {
|
||||
url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
|
||||
sha256 = "195g1iab7j2x7sl326xbq7vya412ns57xrwpv9hqdrb7iiz2n8la";
|
||||
};
|
||||
|
||||
# Openoffice will open libcups dynamically, so we link it directly
|
||||
# to make its dlopen work.
|
||||
@ -69,31 +138,35 @@ stdenv.mkDerivation rec {
|
||||
'' + (stdenv.lib.concatMapStrings (f: "ln -sv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\n") srcs.third_party)
|
||||
+ ''
|
||||
ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
|
||||
tar xf $sourceRoot/src/${srcs.help.name} -C $sourceRoot/../
|
||||
ln -sv ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
|
||||
tar xf $sourceRoot/src/${srcs.translations.name} -C $sourceRoot/../
|
||||
'';
|
||||
|
||||
patchPhase = ''
|
||||
find . -type f -print0 | xargs -0 sed -i \
|
||||
-e 's,! */bin/bash,!${bash}/bin/bash,' -e 's,\(!\|SHELL=\) */usr/bin/env bash,\1${bash}/bin/bash,' \
|
||||
-e 's,! */usr/bin/perl,!${perl}/bin/perl,' -e 's,! */usr/bin/env perl,!${perl}/bin/perl,' \
|
||||
-e 's,! */usr/bin/python,!${python}/bin/python,' -e 's,! */usr/bin/env python,!${python}/bin/python,'
|
||||
sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk
|
||||
-e 's,! */usr/bin/python,!${python3}/bin/${python3.executable},' -e 's,! */usr/bin/env python,!${python3}/bin/${python3.executable},'
|
||||
#sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk
|
||||
'';
|
||||
|
||||
QT4DIR = qt4;
|
||||
KDE4DIR = kde4.kdelibs;
|
||||
|
||||
# I set --with-num-cpus=$NIX_BUILD_CORES, as it's the equivalent of
|
||||
# enableParallelBuilding=true in this build system.
|
||||
preConfigure = ''
|
||||
# Needed to find genccode
|
||||
PATH=$PATH:${icu}/sbin
|
||||
|
||||
configureFlagsArray=("--with-lang=${langsSpaces}" "--with-num-cpus=$NIX_BUILD_CORES")
|
||||
configureFlagsArray=(
|
||||
"--with-parallelism=$NIX_BUILD_CORES"
|
||||
);
|
||||
'';
|
||||
|
||||
makeFlags = "SHELL=${bash}/bin/bash";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildPhase = ''
|
||||
# This is required as some cppunittests require fontconfig configured
|
||||
export FONTCONFIG_FILE=${fontsConf}
|
||||
@ -111,14 +184,22 @@ stdenv.mkDerivation rec {
|
||||
|
||||
# It installs only things to $out/lib/libreoffice
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin
|
||||
mkdir -p $out/bin $out/share
|
||||
for a in sbase scalc sdraw smath swriter spadmin simpress soffice; do
|
||||
ln -s $out/lib/libreoffice/program/$a $out/bin/$a
|
||||
done
|
||||
ln -s $out/bin/soffice $out/bin/libreoffice
|
||||
|
||||
ln -s $out/lib/libreoffice/share/xdg $out/share/applications
|
||||
for f in $out/share/applications/*.desktop; do
|
||||
substituteInPlace "$f" --replace "Exec=libreoffice4.0" "$out/bin/soffice"
|
||||
substituteInPlace "$f" --replace "Exec=libreoffice" "$out/bin/soffice"
|
||||
done
|
||||
'';
|
||||
|
||||
configureFlags = [
|
||||
#"--enable-verbose"
|
||||
"--with-lang=${langsSpaces}"
|
||||
"--with-vender=NixOS"
|
||||
|
||||
# Without these, configure does not finish
|
||||
"--without-junit"
|
||||
@ -130,16 +211,16 @@ stdenv.mkDerivation rec {
|
||||
"--disable-odk"
|
||||
"--with-system-cairo"
|
||||
"--with-system-libs"
|
||||
"--with-system-headers"
|
||||
"--with-system-openssl"
|
||||
"--with-system-openldap"
|
||||
"--with-boost-libdir=${boost}/lib"
|
||||
"--with-system-db"
|
||||
"--with-openldap" "--enable-ldap"
|
||||
"--without-system-libwps"
|
||||
"--without-system-libwps" # TODO
|
||||
"--without-doxygen"
|
||||
|
||||
# I imagine this helps. Copied from go-oo.
|
||||
"--disable-epm"
|
||||
"--disable-mathmldtd"
|
||||
"--disable-mozilla"
|
||||
"--disable-kde"
|
||||
"--disable-postgresql-sdbc"
|
||||
"--with-package-format=native"
|
||||
@ -155,28 +236,33 @@ stdenv.mkDerivation rec {
|
||||
"--without-system-altlinuxhyph"
|
||||
"--without-system-lpsolve"
|
||||
"--without-system-graphite"
|
||||
"--without-system-mozilla-headers"
|
||||
"--without-system-npapi-headers"
|
||||
"--without-system-libcmis"
|
||||
|
||||
"--with-java-target-version=1.6" # The default 1.7 not supported
|
||||
"--without-system-mozilla"
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
make unitcheck
|
||||
make slowcheck
|
||||
'';
|
||||
|
||||
buildInputs =
|
||||
[ ant ArchiveZip autoconf automake bison boost cairo clucene_core
|
||||
CompressZlib cppunit cups curl db4 dbus_glib expat file flex fontconfig
|
||||
freetype GConf getopt gnome_vfs gperf gst_plugins_base gstreamer gtk
|
||||
hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat libiodbc libjpeg
|
||||
hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat unixODBC libjpeg
|
||||
libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11
|
||||
libXaw libXext libXi libXinerama libxml2 libxslt libXtst mdds mesa mythes
|
||||
neon nspr nss openldap openssl ORBit2 pam perl pkgconfigUpstream poppler
|
||||
python sablotron saneBackends tcsh unzip vigra which zip zlib
|
||||
python3 sablotron saneBackends tcsh unzip vigra which zip zlib
|
||||
mdds bluez5 glibc libmspub libixion liborcus liblangtag
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Libre-office, variant of openoffice.org";
|
||||
meta = with stdenv.lib; {
|
||||
description = "LibreOffice is a comprehensive, professional-quality productivity suite, a variant of openoffice.org";
|
||||
homepage = http://libreoffice.org/;
|
||||
license = "LGPL";
|
||||
maintainers = [ stdenv.lib.maintainers.viric ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
license = licenses.lgpl3;
|
||||
maintainers = [ maintainers.viric ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
2
pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
Normal file → Executable file
2
pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
Normal file → Executable file
@ -1,4 +1,4 @@
|
||||
#!/var/run/current-system/bin/bash
|
||||
#!/run/current-system/sw/bin/bash
|
||||
|
||||
# Take the list of files from the main package, ooo.lst.in
|
||||
|
||||
|
@ -1,374 +1,114 @@
|
||||
[
|
||||
{
|
||||
name = "hyphen-2.8.3.tar.gz";
|
||||
md5 = "86261f06c097d3e425a2f6d0b0635380";
|
||||
name = "glibc-2.1.3-stub.tar.gz";
|
||||
md5 = "4a660ce8466c9df01f19036435425c3a";
|
||||
}
|
||||
{
|
||||
name = "openssl-0.9.8v.tar.gz";
|
||||
md5 = "51a40a81b3b7abe8a5c33670bd3da0ce";
|
||||
}
|
||||
{
|
||||
name = "pixman-0.24.4.tar.bz2";
|
||||
md5 = "c63f411b3ad147db2bcce1bf262a0e02";
|
||||
}
|
||||
{
|
||||
name = "README_apache-commons.txt";
|
||||
md5 = "0b49ede71c21c0599b0cc19b353a6cb3";
|
||||
}
|
||||
{
|
||||
name = "libexttextcat-3.3.1.tar.bz2";
|
||||
md5 = "6097739c841f671cb21332b9cc593ae7";
|
||||
}
|
||||
{
|
||||
name = "hsqldb_1_8_0.zip";
|
||||
md5 = "17410483b5b5f267aa18b7e00b65e6e0";
|
||||
}
|
||||
{
|
||||
name = "Adobe-Core35_AFMs-314.tar.gz";
|
||||
md5 = "1756c4fa6c616ae15973c104cd8cb256";
|
||||
}
|
||||
{
|
||||
name = "STLport-4.5.tar.gz";
|
||||
md5 = "18f577b374d60b3c760a3a3350407632";
|
||||
}
|
||||
{
|
||||
name = "xmlsec1-1.2.14.tar.gz";
|
||||
md5 = "1f24ab1d39f4a51faf22244c94a6203f";
|
||||
}
|
||||
{
|
||||
name = "LICENSE_source-9.0.0.7-bj.html";
|
||||
md5 = "24be19595acad0a2cae931af77a0148a";
|
||||
}
|
||||
{
|
||||
name = "lp_solve_5.5.tar.gz";
|
||||
md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
|
||||
}
|
||||
{
|
||||
name = "raptor-1.4.18.tar.gz";
|
||||
md5 = "284e768eeda0e2898b0d5bf7e26a016e";
|
||||
}
|
||||
{
|
||||
name = "jakarta-tomcat-5.0.30-src.tar.gz";
|
||||
md5 = "2a177023f9ea8ec8bd00837605c5df1b";
|
||||
}
|
||||
{
|
||||
name = "commons-lang-2.3-src.tar.gz";
|
||||
md5 = "2ae988b339daec234019a7066f96733e";
|
||||
}
|
||||
{
|
||||
name = "commons-httpclient-3.1-src.tar.gz";
|
||||
md5 = "2c9b0f83ed5890af02c0df1c1776f39b";
|
||||
}
|
||||
{
|
||||
name = "liberation-fonts-ttf-1.07.1.tar.gz";
|
||||
md5 = "0be45d54cc5e1c2e3102e32b8c190346";
|
||||
}
|
||||
{
|
||||
name = "liberation-fonts-ttf-2.00.0.tar.gz";
|
||||
md5 = "cfbf1ac6f61bf6cf45342a0cc9381be5";
|
||||
}
|
||||
{
|
||||
name = "swingExSrc.zip";
|
||||
md5 = "35c94d2df8893241173de1d16b6034c0";
|
||||
}
|
||||
{
|
||||
name = "gentiumbasic-fonts-1.10.zip";
|
||||
md5 = "35efabc239af896dfb79be7ebdd6e6b9";
|
||||
}
|
||||
{
|
||||
name = "sacjava-1.3.zip";
|
||||
md5 = "39bb3fcea1514f1369fcfc87542390fd";
|
||||
}
|
||||
{
|
||||
name = "epm-3.7.tar.gz";
|
||||
md5 = "3ade8cfe7e59ca8e65052644fed9fca4";
|
||||
name = "ucpp-1.3.2.tar.gz";
|
||||
md5 = "0168229624cfac409e766913506961a8";
|
||||
}
|
||||
{
|
||||
name = "commons-logging-1.1.1-src.tar.gz";
|
||||
md5 = "3c219630e4302863a9a83d0efde889db";
|
||||
}
|
||||
{
|
||||
name = "README_source-9.0.0.7-bj.txt";
|
||||
md5 = "48470d662650c3c074e1c3fabbc67bbd";
|
||||
name = "liblayout-0.2.10.zip";
|
||||
md5 = "db60e4fde8dd6d6807523deb71ee34dc";
|
||||
}
|
||||
{
|
||||
name = "clucene-core-2.3.3.4.tar.gz";
|
||||
md5 = "48d647fbd8ef8889e5a7f422c1bfda94";
|
||||
}
|
||||
{
|
||||
name = "glibc-2.1.3-stub.tar.gz";
|
||||
md5 = "4a660ce8466c9df01f19036435425c3a";
|
||||
}
|
||||
{
|
||||
name = "cairo-1.10.2.tar.gz";
|
||||
md5 = "f101a9e88b783337b20b2e26dfd26d5f";
|
||||
}
|
||||
{
|
||||
name = "xpdf-3.02.tar.gz";
|
||||
md5 = "599dc4cc65a07ee868cf92a667a913d2";
|
||||
}
|
||||
{
|
||||
name = "libxml2-2.7.6.tar.gz";
|
||||
md5 = "7740a8ec23878a2f50120e1faa2730f2";
|
||||
}
|
||||
{
|
||||
name = "STLport-4.5-0119.tar.gz";
|
||||
md5 = "7376930b0d3f3d77a685d94c4a3acda8";
|
||||
name = "hsqldb_1_8_0.zip";
|
||||
md5 = "17410483b5b5f267aa18b7e00b65e6e0";
|
||||
}
|
||||
{
|
||||
name = "rhino1_5R5.zip";
|
||||
md5 = "798b2ffdc8bcfe7bca2cf92b62caf685";
|
||||
}
|
||||
{
|
||||
name = "curl-7.19.7.tar.gz";
|
||||
md5 = "ecb2e37e45c9933e2a963cabe03670ab";
|
||||
}
|
||||
{
|
||||
name = "stax-api-1.0-2-sources.jar";
|
||||
md5 = "8294d6c42e3553229af9934c5c0ed997";
|
||||
}
|
||||
{
|
||||
name = "cppunit-1.12.1.tar.gz";
|
||||
md5 = "bd30e9cf5523cdfc019b94f5e1d7fd19";
|
||||
}
|
||||
{
|
||||
name = "seamonkey-1.1.14.source.tar.gz";
|
||||
md5 = "a169ab152209200a7bad29a275cb0333";
|
||||
}
|
||||
{
|
||||
name = "LICENSE_stax-api-1.0-2-sources.html";
|
||||
md5 = "a4d9b30810a434a3ed39fc0003bbd637";
|
||||
}
|
||||
{
|
||||
name = "xsltml_2.1.2.zip";
|
||||
md5 = "a7983f859eafb2677d7ff386a023bc40";
|
||||
}
|
||||
{
|
||||
name = "source-9.0.0.7-bj.zip";
|
||||
md5 = "ada24d37d8d638b3d8a9985e80bc2978";
|
||||
}
|
||||
{
|
||||
name = "commons-codec-1.3-src.tar.gz";
|
||||
md5 = "af3c3acf618de6108d65fcdc92b492e1";
|
||||
}
|
||||
{
|
||||
name = "LICENSE_Python-2.6.1";
|
||||
md5 = "bc702168a2af16869201dbe91e46ae48";
|
||||
}
|
||||
{
|
||||
name = "STLport-4.0.tar.gz";
|
||||
md5 = "c441926f3a552ed3e5b274b62e86af16";
|
||||
}
|
||||
{
|
||||
name = "redland-1.0.8.tar.gz";
|
||||
md5 = "ca66e26082cab8bb817185a116db809b";
|
||||
}
|
||||
{
|
||||
name = "core.zip";
|
||||
md5 = "d4c4d91ab3a8e52a2e69d48d34ef4df4";
|
||||
}
|
||||
{
|
||||
name = "db-4.7.25.NC-custom.tar.gz";
|
||||
md5 = "d70951c80dabecc2892c919ff5d07172";
|
||||
}
|
||||
{
|
||||
name = "README_db-4.7.25.NC-custom.txt";
|
||||
md5 = "e0707ff896045731ff99e99799606441";
|
||||
}
|
||||
{
|
||||
name = "Python-2.6.1.tar.bz2";
|
||||
md5 = "e81c2f0953aa60f8062c05a4673f2be0";
|
||||
}
|
||||
{
|
||||
name = "libxslt-1.1.26.tar.gz";
|
||||
md5 = "e61d0364a30146aaa3001296f853b2b9";
|
||||
}
|
||||
{
|
||||
name = "bsh-2.0b1-src.tar.gz";
|
||||
md5 = "ea570af93c284aa9e5621cd563f54f4d";
|
||||
}
|
||||
{
|
||||
name = "vigra1.4.0.tar.gz";
|
||||
md5 = "ea91f2fb4212a21d708aced277e6e85a";
|
||||
}
|
||||
{
|
||||
name = "expat-2.1.0.tar.gz";
|
||||
md5 = "dd7dab7a5fea97d2a6a43f511449b7cd";
|
||||
}
|
||||
{
|
||||
name = "README_stax-api-1.0-2-sources.txt";
|
||||
md5 = "fb7ba5c2182be4e73748859967455455";
|
||||
}
|
||||
{
|
||||
name = "rasqal-0.9.16.tar.gz";
|
||||
md5 = "fca8706f2c4619e2fa3f8f42f8fc1e9d";
|
||||
}
|
||||
{
|
||||
name = "dejavu-fonts-ttf-2.33.zip";
|
||||
md5 = "f872f4ac066433d8ff92f5e316b36ff9";
|
||||
}
|
||||
{
|
||||
name = "mysql-connector-c++-1.1.0.tar.gz";
|
||||
md5 = "0981bda6548a8c8233ffce2b6e4b2a23";
|
||||
}
|
||||
{
|
||||
name = "postgresql-9.1.1.tar.bz2";
|
||||
md5 = "061a9f17323117c9358ed60f33ecff78";
|
||||
}
|
||||
{
|
||||
name = "mythes-1.2.2.tar.gz";
|
||||
md5 = "e1e255dc43dbcbb34cb19e8a0eba90ae";
|
||||
}
|
||||
{
|
||||
name = "libformula-1.1.7.zip";
|
||||
md5 = "3404ab6b1792ae5f16bbd603bd1e1d03";
|
||||
}
|
||||
{
|
||||
name = "libfonts-1.1.6.zip";
|
||||
md5 = "3bdf40c0d199af31923e900d082ca2dd";
|
||||
name = "xmlsec1-1.2.14.tar.gz";
|
||||
md5 = "1f24ab1d39f4a51faf22244c94a6203f";
|
||||
}
|
||||
{
|
||||
name = "librepository-1.1.6.zip";
|
||||
md5 = "8ce2fcd72becf06c41f7201d15373ed9";
|
||||
}
|
||||
{
|
||||
name = "libbase-1.1.6.zip";
|
||||
md5 = "eeb2c7ddf0d302fba4bfc6e97eac9624";
|
||||
}
|
||||
{
|
||||
name = "lp_solve_5.5.tar.gz";
|
||||
md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
|
||||
}
|
||||
{
|
||||
name = "libloader-1.1.6.zip";
|
||||
md5 = "97b2d4dba862397f446b217e2b623e71";
|
||||
}
|
||||
{
|
||||
name = "libxml-1.1.7.zip";
|
||||
md5 = "ace6ab49184e329db254e454a010f56d";
|
||||
name = "graphite2-1.2.0.tgz";
|
||||
md5 = "f5ef3f7f10fa8c3542c6a085a233080b";
|
||||
}
|
||||
{
|
||||
name = "flute-1.1.6.zip";
|
||||
md5 = "d8bd5eed178db6e2b18eeed243f85aa8";
|
||||
name = "jakarta-tomcat-5.0.30-src.tar.gz";
|
||||
md5 = "2a177023f9ea8ec8bd00837605c5df1b";
|
||||
}
|
||||
{
|
||||
name = "liblayout-0.2.10.zip";
|
||||
md5 = "db60e4fde8dd6d6807523deb71ee34dc";
|
||||
}
|
||||
{
|
||||
name = "libbase-1.1.6.zip";
|
||||
md5 = "eeb2c7ddf0d302fba4bfc6e97eac9624";
|
||||
name = "hyphen-2.8.4.tar.gz";
|
||||
md5 = "a2f6010987e1c601274ab5d63b72c944";
|
||||
}
|
||||
{
|
||||
name = "libserializer-1.1.6.zip";
|
||||
md5 = "f94d9870737518e3b597f9265f4e9803";
|
||||
}
|
||||
{
|
||||
name = "commons-lang-2.3-src.tar.gz";
|
||||
md5 = "2ae988b339daec234019a7066f96733e";
|
||||
}
|
||||
{
|
||||
name = "libxml-1.1.7.zip";
|
||||
md5 = "ace6ab49184e329db254e454a010f56d";
|
||||
}
|
||||
{
|
||||
name = "commons-httpclient-3.1-src.tar.gz";
|
||||
md5 = "2c9b0f83ed5890af02c0df1c1776f39b";
|
||||
}
|
||||
{
|
||||
name = "commons-codec-1.3-src.tar.gz";
|
||||
md5 = "af3c3acf618de6108d65fcdc92b492e1";
|
||||
}
|
||||
{
|
||||
name = "libformula-1.1.7.zip";
|
||||
md5 = "3404ab6b1792ae5f16bbd603bd1e1d03";
|
||||
}
|
||||
{
|
||||
name = "libcmis-0.3.0.tar.gz";
|
||||
md5 = "b2371dc7cf4811c9d32146eec913d296";
|
||||
}
|
||||
{
|
||||
name = "swingExSrc.zip";
|
||||
md5 = "35c94d2df8893241173de1d16b6034c0";
|
||||
}
|
||||
{
|
||||
name = "flow-engine-0.9.4.zip";
|
||||
md5 = "ba2930200c9f019c2d93a8c88c651a0f";
|
||||
}
|
||||
{
|
||||
name = "neon-0.29.5.tar.gz";
|
||||
md5 = "ff369e69ef0f0143beb5626164e87ae2";
|
||||
}
|
||||
{
|
||||
name = "gettext-0.18.1.1.tar.gz";
|
||||
md5 = "3dd55b952826d2b32f51308f2f91aa89";
|
||||
}
|
||||
{
|
||||
name = "glib-2.28.1.tar.gz";
|
||||
md5 = "9f6e85e1e38490c3956f4415bcd33e6e";
|
||||
}
|
||||
{
|
||||
name = "gdk-pixbuf-2.23.0.tar.gz";
|
||||
md5 = "a7d6c5f2fe2d481149ed3ba807b5c043";
|
||||
}
|
||||
{
|
||||
name = "libgsf-1.14.19.tar.gz";
|
||||
md5 = "3a84ac2da37cae5bf7ce616228c6fbde";
|
||||
}
|
||||
{
|
||||
name = "pango-1.28.3.tar.gz";
|
||||
md5 = "22ad1c8d3fda7e73b0798035f3dd96bc";
|
||||
}
|
||||
{
|
||||
name = "libcroco-0.6.2.tar.gz";
|
||||
md5 = "0611e099e807210cf738dcb41425d104";
|
||||
}
|
||||
{
|
||||
name = "librsvg-2.32.1.tar.gz";
|
||||
md5 = "d7a242ca43e33e1b63d3073f9d46a6a8";
|
||||
}
|
||||
{
|
||||
name = "libpng-1.5.10.tar.gz";
|
||||
md5 = "9e5d864bce8f06751bbd99962ecf4aad";
|
||||
}
|
||||
{
|
||||
name = "jpeg-8c.tar.gz";
|
||||
md5 = "a2c10c04f396a9ce72894beb18b4e1f9";
|
||||
}
|
||||
{
|
||||
name = "zlib-1.2.7.tar.bz2";
|
||||
md5 = "2ab442d169156f34c379c968f3f482dd";
|
||||
}
|
||||
{
|
||||
name = "icu4c-49_1_1-src.tgz";
|
||||
md5 = "7c53f83e0327343f4060c0eb83842daf";
|
||||
}
|
||||
{
|
||||
name = "ConvertTextToNumber-1.3.2.oxt";
|
||||
md5 = "451ccf439a36a568653b024534669971";
|
||||
}
|
||||
{
|
||||
name = "JLanguageTool-1.7.0.tar.bz2";
|
||||
md5 = "b63e6340a02ff1cacfeadb2c42286161";
|
||||
}
|
||||
{
|
||||
name = "ixion-0.2.0.tar.gz";
|
||||
md5 = "0f63ee487fda8f21fafa767b3c447ac9";
|
||||
}
|
||||
{
|
||||
name = "nss-3.13.5-with-nspr-4.9.1.tar.gz";
|
||||
md5 = "a0a861f539f0e7a91d05e6b9457e4db1";
|
||||
}
|
||||
{
|
||||
name = "libwpg-0.2.1.tar.bz2";
|
||||
md5 = "9d283e02441d8cebdcd1e5d9df227d67";
|
||||
}
|
||||
{
|
||||
name = "libwpd-0.9.4.tar.bz2";
|
||||
md5 = "c01351d7db2b205de755d58769288224";
|
||||
name = "sacjava-1.3.zip";
|
||||
md5 = "39bb3fcea1514f1369fcfc87542390fd";
|
||||
}
|
||||
{
|
||||
name = "libwps-0.2.7.tar.bz2";
|
||||
md5 = "d197bd6211669a2fa4ca648faf04bcb1";
|
||||
}
|
||||
{
|
||||
name = "mdds_0.6.1.tar.bz2";
|
||||
md5 = "9f9e15966b5624834157fe3d748312bc";
|
||||
name = "libfonts-1.1.6.zip";
|
||||
md5 = "3bdf40c0d199af31923e900d082ca2dd";
|
||||
}
|
||||
{
|
||||
name = "boost_1_44_0.tar.bz2";
|
||||
md5 = "f02578f5218f217a9f20e9c30e119c6a";
|
||||
}
|
||||
{
|
||||
name = "hunspell-1.3.2.tar.gz";
|
||||
md5 = "3121aaf3e13e5d88dfff13fb4a5f1ab8";
|
||||
}
|
||||
{
|
||||
name = "graphite2-1.0.3.tgz";
|
||||
md5 = "3bf481ca95109b14435125c0dd1f2217";
|
||||
}
|
||||
{
|
||||
name = "libvisio-0.0.19.tar.bz2";
|
||||
md5 = "94e7f271e38c976462558b4278590178";
|
||||
}
|
||||
{
|
||||
name = "LinLibertineG-20120116.zip";
|
||||
md5 = "e7a384790b13c29113e22e596ade9687";
|
||||
}
|
||||
{
|
||||
name = "libcmis-0.2.3.tar.gz";
|
||||
md5 = "0d2dcdfbf28d6208751b33057f5361f0";
|
||||
}
|
||||
{
|
||||
name = "libcdr-0.0.9.tar.bz2";
|
||||
md5 = "3c0037fb07dea2f0bbae8386fa7c6a9a";
|
||||
}
|
||||
{
|
||||
name = "lcms2-2.3.tar.gz";
|
||||
md5 = "327348d67c979c88c2dec59a23a17d85";
|
||||
name = "flute-1.1.6.zip";
|
||||
md5 = "d8bd5eed178db6e2b18eeed243f85aa8";
|
||||
}
|
||||
]
|
||||
|
@ -13,15 +13,15 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "eagle-${version}";
|
||||
version = "6.4.0";
|
||||
version = "6.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.cadsoft.de/eagle/program/6.4/eagle-lin-${version}.run";
|
||||
sha256 = "0jb44dsq4cl9rx5nam6rxsw9fsmm6fsksv9s544p2zrwnad2x2i8";
|
||||
url = "ftp://ftp.cadsoft.de/eagle/program/6.5/eagle-lin-${version}.run";
|
||||
sha256 = "17plwx2p8q2ylk0nzj5crfbdm7jc35pw7v3j8f4j81yl37l7bj22";
|
||||
};
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "Eagle";
|
||||
name = "eagle";
|
||||
exec = "eagle";
|
||||
icon = "eagle";
|
||||
comment = "Schematic capture and PCB layout";
|
||||
|
@ -55,5 +55,6 @@ stdenv.mkDerivation {
|
||||
homepage = "http://coq.inria.fr";
|
||||
license = "LGPL";
|
||||
maintainers = [ stdenv.lib.maintainers.roconnor ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -1,24 +1,25 @@
|
||||
{ stdenv, fetchurl, cln, pkgconfig, readline }:
|
||||
{ stdenv, fetchurl, cln, pkgconfig, readline, gmp }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ginac-1.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "${meta.homepage}/${name}.tar.bz2";
|
||||
url = "${meta.homepage}/${name}.tar.bz2";
|
||||
sha256 = "1pivcqqaf142l6vrj2azq6dxrcyzhag4za2dwicb4gsb09ax4d0g";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ cln ];
|
||||
buildInputs = [ readline ];
|
||||
|
||||
buildInputs = [ readline ] ++ stdenv.lib.optional stdenv.isDarwin gmp;
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
configureFlags = "--disable-rpath";
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "GiNaC is Not a CAS";
|
||||
homepage = http://www.ginac.de/;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = [ stdenv.lib.maintainers.urkud ];
|
||||
homepage = http://www.ginac.de/;
|
||||
maintainers = with maintainers; [ lovek323 urkud ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
let
|
||||
name = "maxima";
|
||||
version = "5.29.1";
|
||||
version = "5.30.0";
|
||||
|
||||
searchPath =
|
||||
stdenv.lib.makeSearchPath "bin"
|
||||
@ -13,7 +13,7 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
|
||||
sha256 = "1p94l28adcn0826nah460r9pz71h7wd5klsg885sl2gzds75bn74";
|
||||
sha256 = "1mhx7g0kzpiagg97s2zhaplsq1li9ya2764mhwl7jgfw2vp3jlm0";
|
||||
};
|
||||
|
||||
buildInputs = [sbcl texinfo perl makeWrapper];
|
||||
@ -21,7 +21,7 @@ stdenv.mkDerivation {
|
||||
postInstall = ''
|
||||
# Make sure that maxima can find its runtime dependencies.
|
||||
for prog in "$out/bin/"*; do
|
||||
wrapProgram "$prog" --prefix PATH ":" "${searchPath}"
|
||||
wrapProgram "$prog" --prefix PATH ":" "$out/bin:${searchPath}"
|
||||
done
|
||||
# Move emacs modules and documentation into the right place.
|
||||
mkdir -p $out/share/emacs $out/share/doc
|
||||
|
@ -71,7 +71,7 @@ rec {
|
||||
|
||||
hub = import ./hub {
|
||||
inherit (rubyLibs) rake;
|
||||
inherit stdenv fetchgit groff makeWrapper;
|
||||
inherit stdenv fetchurl groff makeWrapper;
|
||||
};
|
||||
|
||||
gitFastExport = import ./fast-export {
|
||||
|
@ -14,8 +14,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "git-annex";
|
||||
version = "4.20130815";
|
||||
sha256 = "0c4fvqmnvyrncmiz0dxwax2rnb4yrqw1y54q2zkqiifzrihcyi71";
|
||||
version = "4.20130827";
|
||||
sha256 = "07kfp0d2wg3p8s0v2100r4giw5ay1il5j15lrah43fk2rrszgm5z";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -1,13 +1,12 @@
|
||||
{ stdenv, fetchgit, groff, rake, makeWrapper }:
|
||||
{ stdenv, fetchurl, groff, rake, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "hub-${version}";
|
||||
version = "1.10.3";
|
||||
version = "1.10.6";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/defunkt/hub.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "0j0krmf0sf09hhw3nsn0w1y97d67762g4qrc8080bwcx38lbyvbg";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/github/hub/archive/v${version}.tar.gz";
|
||||
sha256 = "0vfl1iq1927in81vd7zvp7yqqzay7pciyj87s83qfxrqyjpxn609";
|
||||
};
|
||||
|
||||
buildInputs = [ rake makeWrapper ];
|
||||
|
@ -24,9 +24,10 @@ stdenv.mkDerivation {
|
||||
wrapProgram $out/bin/meld --prefix PYTHONPATH : $PYTHONPATH:${pygtk}/lib/${python.libPrefix}/site-packages/gtk-2.0
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Visual diff and merge tool";
|
||||
homepage = http://meld.sourceforge.net;
|
||||
license = "GPLv2+";
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "i3-${version}";
|
||||
version = "4.5.1";
|
||||
version = "4.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://i3wm.org/downloads/${name}.tar.bz2";
|
||||
sha256 = "bae55f1c7c4a21d71aae182e4fab6038ba65ba4be5d1ceff9e269f4f74b823f2";
|
||||
sha256 = "1qand44hjqz84f2xzd0mmyk9vpsm7iwz6446s4ivdj6f86213lpm";
|
||||
};
|
||||
|
||||
buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutil xcbutilwm
|
||||
@ -20,12 +20,21 @@ stdenv.mkDerivation rec {
|
||||
|
||||
configurePhase = "makeFlags=PREFIX=$out";
|
||||
|
||||
meta = {
|
||||
description = "i3 is a tiling window manager";
|
||||
homepage = "http://i3wm.org";
|
||||
maintainers = [ stdenv.lib.maintainers.garbas ];
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
meta = with stdenv.lib; {
|
||||
description = "A tiling window manager";
|
||||
homepage = "http://i3wm.org";
|
||||
maintainers = with maintainers; [ garbas modulistic ];
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.all;
|
||||
|
||||
longDescription = ''
|
||||
A tiling window manager primarily targeted at advanced users and
|
||||
developers. Based on a tree as data structure, supports tiling,
|
||||
stacking, and tabbing layouts, handled dynamically, as well as
|
||||
floating windows. Configured via plain text file. Multi-monitor.
|
||||
UTF-8 clean.
|
||||
'';
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
|
@ -4,8 +4,8 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "xmonad-extras";
|
||||
version = "0.11";
|
||||
sha256 = "09r64z09mfdz86k7v5c6zds9ng0fjcp44kd8f5qg1sz40yblrny5";
|
||||
version = "0.12";
|
||||
sha256 = "1gyj9j6x21rvs6kg6g74wr0jdd36c5ml63a670456fhjr96s8y0g";
|
||||
buildDepends = [
|
||||
hint libmpd mtl network parsec random regexPosix split X11 xmonad
|
||||
xmonadContrib
|
||||
|
@ -19,7 +19,8 @@ stdenv.mkDerivation {
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool which ];
|
||||
configureFlags = "--disable-scrollkeeper";
|
||||
|
||||
configureFlags = [ "--disable-scrollkeeper" "--disable-introspection"/*not useful AFAIK*/ ];
|
||||
|
||||
NIX_CFLAGS_COMPILE="-I${GConf}/include/gconf/2";
|
||||
}
|
||||
|
50
pkgs/desktops/gnome-2/desktop/vte/alt.patch
Normal file
50
pkgs/desktops/gnome-2/desktop/vte/alt.patch
Normal file
@ -0,0 +1,50 @@
|
||||
From a9d6a34708f846952f423d078397352858f7b1a4 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Persch <chpe@gnome.org>
|
||||
Date: Sat, 12 May 2012 18:48:05 +0200
|
||||
Subject: [PATCH] keymap: Treat ALT as META
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=663779
|
||||
---
|
||||
src/vte.c | 23 ++++++++++++++---------
|
||||
1 files changed, 14 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/src/vte.c b/src/vte.c
|
||||
index dd27e9a..0657921 100644
|
||||
--- a/src/vte.c
|
||||
+++ b/src/vte.c
|
||||
@@ -5170,19 +5170,24 @@ static void
|
||||
vte_terminal_read_modifiers (VteTerminal *terminal,
|
||||
GdkEvent *event)
|
||||
{
|
||||
+ GdkKeymap *keymap;
|
||||
GdkModifierType modifiers;
|
||||
|
||||
/* Read the modifiers. */
|
||||
- if (gdk_event_get_state((GdkEvent*)event, &modifiers)) {
|
||||
- GdkKeymap *keymap;
|
||||
-#if GTK_CHECK_VERSION (2, 90, 8)
|
||||
- keymap = gdk_keymap_get_for_display(gdk_window_get_display(((GdkEventAny*)event)->window));
|
||||
-#else
|
||||
- keymap = gdk_keymap_get_for_display(gdk_drawable_get_display(((GdkEventAny*)event)->window));
|
||||
+ if (!gdk_event_get_state((GdkEvent*)event, &modifiers))
|
||||
+ return;
|
||||
+
|
||||
+ keymap = gdk_keymap_get_for_display(gdk_window_get_display(((GdkEventAny*)event)->window));
|
||||
+
|
||||
+ gdk_keymap_add_virtual_modifiers (keymap, &modifiers);
|
||||
+
|
||||
+#if 1
|
||||
+ /* HACK! Treat ALT as META; see bug #663779. */
|
||||
+ if (modifiers & GDK_MOD1_MASK)
|
||||
+ modifiers |= VTE_META_MASK;
|
||||
#endif
|
||||
- gdk_keymap_add_virtual_modifiers (keymap, &modifiers);
|
||||
- terminal->pvt->modifiers = modifiers;
|
||||
- }
|
||||
+
|
||||
+ terminal->pvt->modifiers = modifiers;
|
||||
}
|
||||
|
||||
/* Read and handle a keypress event. */
|
||||
--
|
||||
1.7.5.1.217.g4e3aa.dirty
|
@ -2,16 +2,18 @@
|
||||
, pythonSupport ? false, python, pygtk}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vte-0.28.0";
|
||||
|
||||
name = "vte-0.28.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/vte/0.28/${name}.tar.bz2";
|
||||
sha256 = "0blmblvjr35xajr0a07zcd58lk6x2hzympx17biw2mcym9kcarql";
|
||||
sha256 = "00zrip28issgmz2cqk5k824cbqpbixi5x7k88zxksdqpnq1f414d";
|
||||
};
|
||||
|
||||
patches = [ ./alt.patch ];
|
||||
|
||||
buildInputs = [ intltool pkgconfig glib gtk ncurses ] ++
|
||||
stdenv.lib.optionals pythonSupport [python pygtk];
|
||||
|
||||
|
||||
configureFlags = ''
|
||||
${if pythonSupport then "--enable-python" else "--disable-python"}
|
||||
'';
|
||||
|
@ -3,13 +3,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
versionMajor = "2.8";
|
||||
versionMinor = "0";
|
||||
versionMinor = "1";
|
||||
moduleName = "at-spi2-atk";
|
||||
name = "${moduleName}-${versionMajor}.${versionMinor}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
|
||||
sha256 = "085sqww174vl3i9ccb477v706rkjs2d107rl96ma1kbl2jyar226";
|
||||
sha256 = "01pxfnksixrjj27ivllpla54r6nkwsjj34acb0phmp76zna9nrgb";
|
||||
};
|
||||
|
||||
buildInputs = [ python pkgconfig popt atk libX11 libICE xlibs.libXtst libXi
|
||||
|
@ -3,7 +3,8 @@
|
||||
rec {
|
||||
inherit (pkgs) fetchurl_gnome glib gtk3 atk pango;
|
||||
gtk = gtk3;
|
||||
orbit = pkgs.gnome2.ORBit2;
|
||||
inherit (pkgs.gnome2) gnome_common ORBit2;
|
||||
orbit = ORBit2;
|
||||
|
||||
inherit (lib) lowPrio hiPrio appendToName makeOverridable;
|
||||
|
||||
@ -11,7 +12,7 @@ rec {
|
||||
|
||||
#### Core (http://ftp.acc.umu.se/pub/GNOME/core/)
|
||||
|
||||
at_spi2_atk = lib.lowPrio (callPackage ./core/at-spi2-atk { });
|
||||
at_spi2_atk = callPackage ./core/at-spi2-atk { };
|
||||
|
||||
at_spi2_core = callPackage ./core/at-spi2-core { };
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchurl, pkgconfig, python, libxml2Python, libxslt, which, libX11, gnome3
|
||||
, intltool, gnome_doc_utils}:
|
||||
, intltool, gnome_doc_utils }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
@ -7,6 +7,8 @@ stdenv.mkDerivation rec {
|
||||
minorVersion = "3";
|
||||
name = "gnome-desktop-${majorVersion}.${minorVersion}";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnome/sources/gnome-desktop/${majorVersion}/${name}.tar.xz";
|
||||
sha256 = "1nrqcp1p5cxhfjjy5hjpvkqmzsgl2353a08fg0b11c932v95bsba";
|
||||
|
@ -19,7 +19,8 @@ rec {
|
||||
# Default meta attribute
|
||||
defMeta = {
|
||||
homepage = http://www.kde.org;
|
||||
inherit (qt4.meta) platforms maintainers;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
inherit (qt4.meta) maintainers;
|
||||
};
|
||||
|
||||
# KDE package built from the whole tarball
|
||||
|
@ -23,7 +23,8 @@ let
|
||||
meta = {
|
||||
description = "KDE translation for ${lang}";
|
||||
license = "GPL";
|
||||
inherit (kdelibs.meta) maintainers platforms homepage;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
inherit (kdelibs.meta) maintainers homepage;
|
||||
};
|
||||
};
|
||||
|
||||
|
11
pkgs/desktops/kde-4.11/applications/kate.nix
Normal file
11
pkgs/desktops/kde-4.11/applications/kate.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs, kactivities, qjson, pyqt4, sip, python, pykde4 }:
|
||||
|
||||
kde {
|
||||
|
||||
buildInputs = [ kdelibs kactivities qjson pyqt4 sip python pykde4];
|
||||
|
||||
meta = {
|
||||
description = "Kate, the KDE Advanced Text Editor, as well as KWrite";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/applications/konsole.nix
Normal file
11
pkgs/desktops/kde-4.11/applications/konsole.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs, kde_baseapps }:
|
||||
|
||||
kde {
|
||||
|
||||
buildInputs = [ kdelibs kde_baseapps ];
|
||||
|
||||
meta = {
|
||||
description = "Konsole, the KDE terminal emulator";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
42
pkgs/desktops/kde-4.11/default.nix
Normal file
42
pkgs/desktops/kde-4.11/default.nix
Normal file
@ -0,0 +1,42 @@
|
||||
{ callPackage, callPackageOrig, stdenv, qt48, release ? "4.11.0" }:
|
||||
|
||||
let
|
||||
# Need callPackageOrig to avoid infinite cycle
|
||||
kde = callPackageOrig ./kde-package {
|
||||
inherit release ignoreList extraSubpkgs callPackage;
|
||||
};
|
||||
|
||||
# The list of igored individual modules
|
||||
ignoreList = {
|
||||
# Doesn't work yet
|
||||
kdeutils = [ "ksecrets" ];
|
||||
# kdeadmin/strigi-analyzer has no real code
|
||||
kdeadmin = [ "strigi-analyzer" ];
|
||||
# Most of kdebindings do not compile due to a bug in the buildsystem
|
||||
kdebindings = [ "kimono" "korundum" "kross-interpreters" "perlkde" "qyoto" ];
|
||||
};
|
||||
|
||||
# Extra subpackages in the manifest format
|
||||
extraSubpkgs = {};
|
||||
|
||||
in
|
||||
|
||||
kde.modules // kde.individual //
|
||||
{
|
||||
inherit (kde) manifest modules individual splittedModuleList;
|
||||
|
||||
akonadi = callPackage ./support/akonadi { };
|
||||
|
||||
qt4 = qt48;
|
||||
|
||||
kdebase_workspace = kde.modules.kde_workspace;
|
||||
|
||||
inherit release;
|
||||
|
||||
full = stdenv.lib.attrValues kde.modules;
|
||||
|
||||
l10n = callPackage ./l10n {
|
||||
inherit release;
|
||||
inherit (kde.manifest) stable;
|
||||
};
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 3d3e247..f78db67 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,5 +1,10 @@
|
||||
-find_package(KDE4 REQUIRED)
|
||||
-include(KDE4Defaults)
|
||||
+project(kde-wallpapers NONE)
|
||||
+if( WALLPAPER_INSTALL_DIR )
|
||||
+ message(STATUS "Installing wallpapers to user-supplied directory ${WALLPAPER_INSTALL_DIR}")
|
||||
+else()
|
||||
+ find_package(KDE4 REQUIRED)
|
||||
+ include(KDE4Defaults)
|
||||
+endif()
|
||||
|
||||
install(DIRECTORY Air DESTINATION ${WALLPAPER_INSTALL_DIR} PATTERN .svn EXCLUDE)
|
||||
|
12
pkgs/desktops/kde-4.11/files/polkit-install.patch
Normal file
12
pkgs/desktops/kde-4.11/files/polkit-install.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -ru -x '*~' kdelibs-4.6.90-orig/kdecore/auth/ConfigureChecks.cmake kdelibs-4.6.90/kdecore/auth/ConfigureChecks.cmake
|
||||
--- kdelibs-4.6.90-orig/kdecore/auth/ConfigureChecks.cmake 2011-05-20 22:24:54.000000000 +0200
|
||||
+++ kdelibs-4.6.90/kdecore/auth/ConfigureChecks.cmake 2011-07-12 14:03:00.000000000 +0200
|
||||
@@ -139,7 +139,7 @@
|
||||
${CMAKE_INSTALL_PREFIX} _KDE4_AUTH_POLICY_FILES_INSTALL_DIR
|
||||
${POLKITQT-1_POLICY_FILES_INSTALL_DIR})
|
||||
|
||||
- set(KDE4_AUTH_POLICY_FILES_INSTALL_DIR ${_KDE4_AUTH_POLICY_FILES_INSTALL_DIR} CACHE STRING
|
||||
+ set(KDE4_AUTH_POLICY_FILES_INSTALL_DIR "\${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions" CACHE STRING
|
||||
"Where policy files generated by KAuth will be installed" FORCE)
|
||||
elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "FAKE")
|
||||
set (KAUTH_COMPILING_FAKE_BACKEND TRUE)
|
9
pkgs/desktops/kde-4.11/kactivities.nix
Normal file
9
pkgs/desktops/kde-4.11/kactivities.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, nepomuk_core }:
|
||||
|
||||
kde {
|
||||
propagatedBuildInputs = [ kdelibs nepomuk_core ];
|
||||
|
||||
meta = {
|
||||
description = "KDE activities library and daemon";
|
||||
};
|
||||
}
|
14
pkgs/desktops/kde-4.11/kde-base-artwork.nix
Normal file
14
pkgs/desktops/kde-4.11/kde-base-artwork.nix
Normal file
@ -0,0 +1,14 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = "0mrd3w7rhsj0v92c8rh9zjxyifq7wyvwszksf2gyn53dzd06blk8";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "KDE Base artwork";
|
||||
license = "GPL";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kde-baseapps/kde-baseapps.nix
Normal file
11
pkgs/desktops/kde-4.11/kde-baseapps/kde-baseapps.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs, htmlTidy, kactivities
|
||||
, nepomuk_core, nepomuk_widgets, libXt }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs nepomuk_core nepomuk_widgets htmlTidy kactivities libXt ];
|
||||
|
||||
meta = {
|
||||
description = "Base KDE applications, including the Dolphin file manager and Konqueror web browser";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
444
pkgs/desktops/kde-4.11/kde-package/4.11.0.nix
Normal file
444
pkgs/desktops/kde-4.11/kde-package/4.11.0.nix
Normal file
@ -0,0 +1,444 @@
|
||||
{stable=true;
|
||||
hashes=builtins.listToAttrs[
|
||||
{name="amor";value="0xz73rnznng6nd8ax2s8yh5wmvlwlhy7qm2y0m15fxw8x9dyym2s";}
|
||||
{name="analitza";value="1pvi6nsdh64pjmrq0xm6vjl2rdpllm8vizf5pxm64m3s225x11r8";}
|
||||
{name="ark";value="152cilip6g0jvqvczv29kdnlghyra0qs9166g4py82w94f96h4a0";}
|
||||
{name="audiocd-kio";value="1xly06zy2m7xg8b675y2l3xj2mixy739f65b6mciyz0240qlian5";}
|
||||
{name="blinken";value="0kyrblhn4b46fcf2rkidkkvpvnirz1z866yp7mi3m9dnl9iqzk32";}
|
||||
{name="bomber";value="1s9wkdz7mgmsr438ikjxc3qj810aw39kblwc2a0v21skhv9glx40";}
|
||||
{name="bovo";value="1p4v5nvx6nfprpv5wm9ab25d0wklx0znf6257ssy97p9knj7lzf4";}
|
||||
{name="cantor";value="00j2fwl2y93k3mwqmnl9ndcqdfmxl2r5nff920sjmylhplsrvzri";}
|
||||
{name="cervisia";value="1gg53a5lcp2mlii285ys6d570wzjx7v5h3g0r1l3h146ipnddkpm";}
|
||||
{name="dolphin-plugins";value="1cj0vajrpmi1imz3gg6has8bqm2hj2px0k2fda35lc0wb2h6vwip";}
|
||||
{name="dragon";value="1gclq1v9a84aq9jbakc0fs0c4y7ykzf05vl0gkpjkijnnb5sr028";}
|
||||
{name="ffmpegthumbs";value="04zarg373420mzdc4psziw173flpv1jc80xavq5qff4j8njjynw4";}
|
||||
{name="filelight";value="1q7lsiq2xxvfs30i0l0ywvpzch0kd8blbg10r56p15wyyjc84h1d";}
|
||||
{name="granatier";value="14zlk4y30kgbx69hb516dcva78xqk7yhi90f7yg327r5a72njwvv";}
|
||||
{name="gwenview";value="0686bybi10vyz6yb2h5zi906d295rcd7wlgh87zjiw0p2rz5qd6b";}
|
||||
{name="jovie";value="02b2jl3ip7y0sd4xscw8qmkmm646ksmlm0c3xwwcijwvdj1h3xsw";}
|
||||
{name="juk";value="1wm0ngpsc62766l127nk38cg5vdhlqsh3gsl7alk2rcrgfainkhh";}
|
||||
{name="kaccessible";value="0mixfx8f8097p2y7zqacawb64r8jzj6iqrkhh7xp9ldwrrnf8jr0";}
|
||||
{name="kactivities";value="0s5l0h2axq43ip8a4wn9lqb7i6hvxzzpscr1wv9qm02g98h1kzc5";}
|
||||
{name="kajongg";value="0g7cx3qjrhga37wp9wypwwhzsk4q4fy63qqbpzh7znc4kfiw3j56";}
|
||||
{name="kalgebra";value="01vgg54sr7g3h7lk9cd3m739y317x680brnp858chqvi7jq9nw5i";}
|
||||
{name="kalzium";value="1zbrq2jm7j9sjzxfl93kambv1n665ah57ljr16r5dqk0x3xchirn";}
|
||||
{name="kamera";value="1bhmxij7fnzc26hv4fbglqm3fhi5jdd8bqxnyx91sjja34wr55l4";}
|
||||
{name="kanagram";value="1hdv0ydklz8y8wh49drpmgc9hqkwp59zvwn39h67fsiig44k6jag";}
|
||||
{name="kapman";value="024q8w4x1hy518qcl76nxgr6q8h3blkw9qfg9z6d899qa6zb6ihq";}
|
||||
{name="kapptemplate";value="09xgy5wrqhxlgvk6yhdfvickqx4v4rqd0s9zda7mlj13yfphbq8k";}
|
||||
{name="kate";value="1r8i3hiqfxs2idjkszkzzn5lpkpm5bzjprs9dv33gzfnnq7w6q54";}
|
||||
{name="katomic";value="0g197ynk6pzwxhr3yw20jw16qd9664j35vsr7511jxyydadbnrx6";}
|
||||
{name="kblackbox";value="1pv9f3vh7l25xlvxpvznjiw3va2ljcz2znc1qxy6ib907qfgnryv";}
|
||||
{name="kblocks";value="0rahh2hra6k0f0z9sh906avznv6x451da6w62bn561hl1fsd3qmy";}
|
||||
{name="kbounce";value="1h25lyga30fxrhrlagw51la3vl38h5qil6zrwr5j3n8agard6nxf";}
|
||||
{name="kbreakout";value="09mq49ia5synl9k166k2zw7n4awv2jkv0c0cckfc1byfvyfp6hnq";}
|
||||
{name="kbruch";value="1fmc1mi94c8dz20qlj8gva64qk8kwdy22frlx8mv049lpaslhnh9";}
|
||||
{name="kcachegrind";value="0iqa5vd03b3ysms692yqk4wy0igmrzjg1jfyw5sapdch1fv4v5bq";}
|
||||
{name="kcalc";value="0yy41pjy0ai47yl2q8ii74b1qqcrg79xan8m1pxlx1pn0pdqib5h";}
|
||||
{name="kcharselect";value="0sbz5c3jkmh6vpb2zh1jmy1l5f37nwxvhn3a1gbzv20wf2a3mh4x";}
|
||||
{name="kcolorchooser";value="11kjklvvxfg2drwc0gh3z14gh94d6yimswh4g0nrpb7ppny8h0hh";}
|
||||
{name="kcron";value="0ydm9b9x38j4n2v6j144v1jkh91nblbfln0yyfshiig44lxfcg4y";}
|
||||
{name="kdeartwork";value="17s40canzk0z6v4hr683l1xzmpld53lma6m2z7kb537ms4sjrim9";}
|
||||
{name="kde-baseapps";value="06mavmk0v54lwma083w7wyr2374vdwblcbisqb6kr4fsqdng67yk";}
|
||||
{name="kde-base-artwork";value="020j4hi6qmwkjipgf9840m1828bjlcy9vg3nmhrjxvj6wxbaijib";}
|
||||
{name="kde-dev-scripts";value="1hscdf1qdg8kc8x2hp0mibp0k3lq255h8a1kj03b8bk0agrzycjr";}
|
||||
{name="kde-dev-utils";value="05nlisn69r6p58340gaaa8ma1ndpafv69yrynln4nzsw5va6awiv";}
|
||||
{name="kdegraphics-mobipocket";value="1f1x07yy0awz7bas0c189xqn1zrv4sz9fb2vlix1g9qbz4j7440v";}
|
||||
{name="kdegraphics-strigi-analyzer";value="0sq5lmnlgz52znz5jlsd2dixfmiqb6cmwrf6x9pw1px5i76gc63m";}
|
||||
{name="kdegraphics-thumbnailers";value="09bmhxxr53p4szqln8s5pz4yfacyn8drq4p7ffsmp7crhjfjxad3";}
|
||||
{name="kdelibs";value="0q7gzfzkdy8vi56v7xkq79ib3d3x22mi9prc5lkqzq3w9f08xnim";}
|
||||
{name="kdenetwork-filesharing";value="11sc6jxnjl3i5wncc6jpif9d8c6dha3r96qjm5l2afg3g945kjq0";}
|
||||
{name="kdenetwork-strigi-analyzers";value="125vk7y2yjni5bwgld47fg9ms0fksd2mwgpzlmbalcz5a05pwxqr";}
|
||||
{name="kdepim";value="017005mndsg69pfvwn24mdbw0cjny7i3hhvc9102hwv7vn3b38c9";}
|
||||
{name="kdepimlibs";value="0q5g626n6117ri11inyr29lnzirpm8ls68h72m8gy7jbbhpsy2h9";}
|
||||
{name="kdepim-runtime";value="17yjsyyn7hp24r1nx4aggcfjkpw8nyb7lzpp21nf61fb26gdk0m9";}
|
||||
{name="kdeplasma-addons";value="174770q0jgx7h61z48322aqvzprnfyfb1yipv2v725r79wpl8knc";}
|
||||
{name="kde-runtime";value="0yafj2mxqp26zsg3kh1s0vw77wx0l9468jh1g0wkl1hbwxjlszp7";}
|
||||
{name="kdesdk-kioslaves";value="00prg3pblgil86way9air9sl01gfrag8ika96nv8i5qhv0fs5x3n";}
|
||||
{name="kdesdk-strigi-analyzers";value="08rpclbv0csrciqh688akfzh36wy2nc60gsbqfrwrmz82cn0rgyp";}
|
||||
{name="kdesdk-thumbnailers";value="1zx6g94vixk7id1zb7a4f6x4ymkfm4n6g6j2akklzwnba1nqadjx";}
|
||||
{name="kde-wallpapers";value="0km2zpgy4qpqlvnbnbfnklal900idf85xls9h3dn57qckrvscs7n";}
|
||||
{name="kdewebdev";value="1pzph18gw47gy7yfmzcmz7hx35wgsdgc7z7h50p15irrfqd9vxvz";}
|
||||
{name="kde-workspace";value="0wdnnwvzd8djysims0sflban0vvf4rjl5xy9cfxl5c61kgf31zvy";}
|
||||
{name="kdf";value="0znmsv5cpxciqx1pksicpchfqk25damz4zrhsh8fl1y41wr5i0g7";}
|
||||
{name="kdiamond";value="13pz413fvwz74jhvyfvn3l18p5asin2l8r39mqvrp5izz876lrxs";}
|
||||
{name="kdnssd";value="1my59awfn0h67aza1wym7cdlbffm22hf1dma80k4kqwrcws433q7";}
|
||||
{name="kfloppy";value="0aglds7n33pk19qmq26xdr2bmfn3hv80zd479a3czlh0yn0wl0lb";}
|
||||
{name="kfourinline";value="0mbggqssizcsrddi2nb93hwyf9wa6lnqmyswia5bp6803diw0iyr";}
|
||||
{name="kgamma";value="0fwgk3jq5x5fp36jp1yvid69pzqdaac7p8xyd7qwa0m2zz2mbddy";}
|
||||
{name="kgeography";value="0hya5wqigyahl24cmm1ssi5xc6pv8d6hvrd5z4s185pd5i2syfyf";}
|
||||
{name="kget";value="0pnnfizq6xmv3bmpdvqf12pnr1rlbzpdn05c71cl0200frd0samd";}
|
||||
{name="kgoldrunner";value="1s2847rhl1r35a3sjh10yadg7qjs4qycv2j2yc4k6yvh226wixzn";}
|
||||
{name="kgpg";value="1hsa5z4igqn5fd9rnjmm80k6mylf3zyg6ss0m66j96f1r1hc7y9g";}
|
||||
{name="khangman";value="0myjlfm1bws6g8a6r27n4cfdiz6vsii7wk03dhc25a63mbw30lq2";}
|
||||
{name="kig";value="1w0i2q6vvy310ffsc87dahbxx2pv0alsv36wcz5j41a0c0q1lnnq";}
|
||||
{name="kigo";value="026dwwakci2xsxzr05k9wdfn8k22sd0f2qd2hjpjf3nd3306q2m7";}
|
||||
{name="killbots";value="1acn16i1k9il6qflw5kbmwgrdhgf59ziqv0dsdj541wp06v9syzf";}
|
||||
{name="kimono";value="0vws62kw7n6xy4sgyn2w1a1ysfb7g3l730rfvcgdcch1v5k5w6sx";}
|
||||
{name="kiriki";value="0jz9rsmvyb3yqnxpb0fr8nxqcbb55ah4gg75mphxvagfak6180x8";}
|
||||
{name="kiten";value="1vvpd63783lzwb1ixchxzcnv4dwhdfdqvgf6ambxiabdhwzzhrfp";}
|
||||
{name="kjumpingcube";value="0czsirg9r8kngy8y21ds491mdqcysn7c5yravrbvv399j71fgcl7";}
|
||||
{name="klettres";value="0b7zd1f9a3b2d3r4wx03b3gclbnxyxl8sdq4mkrmvxlbv6is4w41";}
|
||||
{name="klickety";value="00yzd79lm7rlfc96cg0asvj3zy1bwb4d0qx2sarf0ny1sbs05d52";}
|
||||
{name="klines";value="1qvjhb88vzymy8c75azhchqxp21iwvbhxiq0mzzb4wg513qz9b1w";}
|
||||
{name="kmag";value="0p7k9w93zyl6ffjwydjfm9pps4irrgdcjf9ksbzm5r41ayj1x3nh";}
|
||||
{name="kmahjongg";value="0wz4lvy4gzix5c5viwcfxqvv43n65151wfz9jay09227f5qfqz1w";}
|
||||
{name="kmines";value="0gsyhmzcj3579bscdlzyp3y1lsxgk7fz6s8gzs36pb1d7cll30i1";}
|
||||
{name="kmix";value="1h5z508yy0y39p5dhmz4lvq2fsl1y9hiqgm0m3xk6js1ysz5cp0w";}
|
||||
{name="kmousetool";value="1p57b4s87hw5rhj3d1m9qaw8r0wx4x7brc9ksizxyjfm90q8hj00";}
|
||||
{name="kmouth";value="1bmmv8w6w9z9dnmm8bwai8wvj1cz3nbibd9qilv0wzy8f9x8z2n2";}
|
||||
{name="kmplot";value="037n51fvpj8r4fz98f1f1jm9pzmlpbcn428cq8kn2p6ahy9g0zhn";}
|
||||
{name="knavalbattle";value="1i128qa95zi0fz6bkkkc0qic630c4n6r24bnc73wp38kkklj1mfm";}
|
||||
{name="knetwalk";value="1yfflp2yndjv0fawahiqq33x9ivv0r5dxivhy38p1xx3bw7aa3qg";}
|
||||
{name="kolf";value="0cfi9mfj1ng7p6vqckjpx4hvzs4cqkiy0wk0c32gyzm3w76ggdsk";}
|
||||
{name="kollision";value="17hzzp4pwl46skf7n2aapxc1wbihxvb8p6z5ch7315d967fbw1iy";}
|
||||
{name="kolourpaint";value="1mvqicbjmbyx7wmw8l8gsfci2x0mg7c7csfbib09p6l5ypr0w5an";}
|
||||
{name="kompare";value="1s5yb2jk6dgsaciwklil43vc3zpr70sarakray0jz22w8sbp00l4";}
|
||||
{name="konquest";value="0v9icbn3pam8w6akz8sk4qpmq8447l9d692877yz9a0wbd4kc3yk";}
|
||||
{name="konsole";value="07pikjzjn824xvjjszvczwwg2alj8qqr7ajy0c7wa9w711hqj654";}
|
||||
{name="kopete";value="114g0pl67vdacxfcnpnhzmy9aarmjm1j6iy6jxc1v3ahrmv7iy1q";}
|
||||
{name="korundum";value="07s4y585a2x6wg9m8hfwhxixbp03aa8z4f7cyk7i7fgvhy32s4wh";}
|
||||
{name="kpat";value="1dqbhn3lypjfnhn4i6212g3spdihp0j12vgkxwf0pii79dwk1lih";}
|
||||
{name="kppp";value="1qk2hvpi72w10gyipw3dcsmkqlg5shvr943rxhkjpx7vp327gcii";}
|
||||
{name="krdc";value="0ikb0bmcq8zpmhr2jbyg40ihjzvi1zfkhcf6y76yjsifzx5nkxaj";}
|
||||
{name="kremotecontrol";value="03mwsl79ljd6zni1ijxbrhl4pm7l52dxdjr5456avx6pbp7rq8j7";}
|
||||
{name="kreversi";value="0r66kj0lanj54ajk1fdn6kijsq412gknva3i29wsvy0hlg18lwgf";}
|
||||
{name="krfb";value="096a61zv76nyqkh9cdzjbgy62g3vi9a7xiwkx0mw63jpfag5sqws";}
|
||||
{name="kross-interpreters";value="0x12cl1hnj9rfasivs3j1m15lr5pmh65bm2dghcypzffs1h4m17h";}
|
||||
{name="kruler";value="0cv3qrs20qckx3d4y0a5ciy6n3hnlxhi20ln9m6szk5nrqwwf8hv";}
|
||||
{name="ksaneplugin";value="02kdbnalq6jfkvcj0dmiyp6hijm8jjl1wl4fxd0kky0wdpj25mqw";}
|
||||
{name="kscd";value="1dmmjzphxy00yynvmb238s60c0xjb9arcyjnynm1pyz8gwbjv370";}
|
||||
{name="kshisen";value="1rildx85ajl14j7qhkwfv3ddyai2m3d2mf6d4i6hd4f6hi01y6lc";}
|
||||
{name="ksirk";value="1rzihjagj78lxyprhzrixk129wgn6v9zacbh5ash6mfgmvpp28fq";}
|
||||
{name="ksnakeduel";value="0fi32y79gjnajswwb5ldkyk0aap1cbdb7i6wdaskpwjh7m9xgbqj";}
|
||||
{name="ksnapshot";value="162rbwlg16b0lq436rsmdaljrp4na0c7hsviw8mv989ylm7k78g5";}
|
||||
{name="kspaceduel";value="1k228vhlv1fglp4572w7li3dvz1inn9x08rqfm167qisz7lz9gk0";}
|
||||
{name="ksquares";value="0i0gw2dq657p3nnlp7billnwlz0jynb01bd3alis9b0y7fzr8141";}
|
||||
{name="kstars";value="1hlv4x43asrz0kha7sypw073zpnb0z1mmwxqsjm7rdb3fzr664ca";}
|
||||
{name="ksudoku";value="1ym6q32jlh55q4af622mq2x4q7ir61h54y03i1cwwl0n536jarw3";}
|
||||
{name="ksystemlog";value="1lipz5ijw90zifvcj8j5cbm5myn3j31v0faik352dy552zbc69ld";}
|
||||
{name="kteatime";value="0nkfshr4gh71yvb4fn3zv99mj8ywq98fmzl41pc8g7zb78c56min";}
|
||||
{name="ktimer";value="0bfyhxcnz4cll3al5sqjiilhhy0wckvnsxl1j9v9cl6fj0yclccx";}
|
||||
{name="ktouch";value="0j2qxh2r1pasa86zakil9hbw0vb39qgwcmkjkds4mgd1rdx3z063";}
|
||||
{name="ktuberling";value="0imb0djrsi3b8aasyycalv7b6r42879053h9r89bq0vr7frshza5";}
|
||||
{name="kturtle";value="04739cjbc8hnhjmccamiim3nhm09jpd5398ckwbqa7z1jrnrfglx";}
|
||||
{name="ktux";value="1dkcca00s2cxr9kimqm8vlar0d47184ba0miihipgi7p752sik5a";}
|
||||
{name="kubrick";value="1f1sfr1w66b3i4pi7b8y3wbks5l2dxij4azx8dzracanfraymhs6";}
|
||||
{name="kuser";value="1r1ysz52w7v8nhl4qj9b4aybb7q45qav9yyzdqxjlz3ixvvvyndy";}
|
||||
{name="kwallet";value="0a5009qx820nfbdhcmwvzbda3bvdmjzbi9i5d05rkcbmxz7l3i7v";}
|
||||
{name="kwordquiz";value="11rhwmzn93gilwlgjmh64pbmmkxf4nxjn3sg8plxnvfnjl27dlwr";}
|
||||
{name="libkcddb";value="0jkblif31r3raykhl69c9mjircsdwrbmzdjks7ngwacyfng2ys7l";}
|
||||
{name="libkcompactdisc";value="1c6g1q543siyk8m81bvxca4qv6pnfjxcmv5mgpnqsv5lbi0k0dil";}
|
||||
{name="libkdcraw";value="1bi0ayf6sg93hx30k5yvblv3jfs8ba6sva7fig1xwag2a1dmpbms";}
|
||||
{name="libkdeedu";value="080mmb6spbr9gyz16n92jai8hv13kxjqgnid8qmgzvrkl9dr5zpi";}
|
||||
{name="libkdegames";value="07324rsyqszsjgpybpr7kpvfpkmg61c4yaaajfr0sbj5a0flypn9";}
|
||||
{name="libkexiv2";value="0rpqj634vxffz1498m2vbjhndc3xha06b4w79wv9qlqgcsaglr9c";}
|
||||
{name="libkipi";value="0har58a6ir3cywsl289avblpqlc67ghv6bhli79nhplblycaf56k";}
|
||||
{name="libkmahjongg";value="1xz4x96l0cim2mcjk9ndikzb0p53i6nximmiwji5ysk9k9ijz8l2";}
|
||||
{name="libksane";value="1wydrqjfczb6c37vpzzavqk4n4fxlg7xfxm3qmg90973z9mhndql";}
|
||||
{name="lokalize";value="0ikcq18jsnk9iqf1636c1llbs43dcbv6pnanydsd8m7pp2x8wd77";}
|
||||
{name="lskat";value="0ld93jvy7w6zy3jifwhb2cvm4qrylknbkgknhxcycq7vxxi1nd1r";}
|
||||
{name="marble";value="0l32r5hbqzyvx85xzvphkyv8fz0ar9l6yyql01y54p9q7g2i0wvy";}
|
||||
{name="mplayerthumbs";value="022n2mi1mkc6isc06b1w7q10k4qxgmvjdg9inysqnyw25zgzqbk0";}
|
||||
{name="nepomuk-core";value="1a08gv05lql1jkkng655k8n4y9bxivaq3j6i9np901calr6q7vq6";}
|
||||
{name="nepomuk-widgets";value="12pfyi4y64p0xs62ax18mbkwf9gd4gn0zsih338ryf2zdpw806c9";}
|
||||
{name="okteta";value="0pg9i7ywcp377brrprl93ayxjjizdmyzgw6fx3zmry7amf45dw1z";}
|
||||
{name="okular";value="1kgkvzfwcqc9v18qgm9vm36v9svasdwyqgbn70nxmwr7rmkvzpsy";}
|
||||
{name="oxygen-icons";value="1m0mha40zg03jy2nvw1cnsi9li8kb84hq3mdr2839jd0qwf06rcs";}
|
||||
{name="pairs";value="0scqagvvp0aaa5gknl5rlfv49r289mgrf5ll0sqbb7w2ga1z71kf";}
|
||||
{name="palapeli";value="1qw6cn7qa5p918x5hhl45c17firyrj3llghd808k9jn0azffkn2k";}
|
||||
{name="parley";value="191ql9jc7pib36ndrn3dyz7h0zqa1a5z06vcppcy56adw395khga";}
|
||||
{name="perlkde";value="0x9pf8hjlnii6kh6jrli8p1glqmnly8ck5f0a9jllx5ylc2v7xgy";}
|
||||
{name="perlqt";value="01wwnpkr0rafmp4lqggpnnzan4abgcbdkf49dzvzf202ksyc7i4s";}
|
||||
{name="picmi";value="1x0gx8spda3m4d8gp3dw4wrjq9plya17x945dd3xww5jb537k9jg";}
|
||||
{name="poxml";value="1icgyilfyv3kfgqnx81c0xfdjklx8rr8xhllqlgh5gpr109ib0v3";}
|
||||
{name="print-manager";value="1bxkf7lfg2bvqy655zd22p1zsj68zyw95kl1xgk2fsbv4p4d4s46";}
|
||||
{name="pykde4";value="0x2zx012n3ng7cnbwv6mjjy7d5cpxj0xicnnp5xpd7cqmi2v4k8x";}
|
||||
{name="qtruby";value="0vbhfynyc0bffr76iz2jfxn15l1nv95g8y7lr9iy32ha84bmc5g3";}
|
||||
{name="qyoto";value="0r8q9hwinac1bk0mvym60s9fwx7ahdsc80mk2a7i9bns5fpd30x8";}
|
||||
{name="rocs";value="16kk54yqpx94cvhkmxvclzkz5w3lfrvcy3mvhyqb0czsknv7hmgm";}
|
||||
{name="smokegen";value="0v1adb6qfmdpvw4yimq8dlxw8zsdbjdw0viwvlxbmvaf4an5kd3y";}
|
||||
{name="smokekde";value="00rw321lcm0by0p8ij60kylg56nrpi0y3j0xj2ss10k9cr13cgwd";}
|
||||
{name="smokeqt";value="116avrlmy7k3ihc176rjl81jlzcp9jlpym1j2cziyxpzygki77ip";}
|
||||
{name="step";value="16vzcw16hqifhmscvhdrww0ykcim8bw271xbqb2g75rf2dcl1zvf";}
|
||||
{name="superkaramba";value="1fx5qwmd6md2x8zxn8xqnildrcxpwlrxbqmi2ia4qm7ivngpdsy4";}
|
||||
{name="svgpart";value="0az94772zvzsikm3imdaq7a22c1gfpn0yv2alc5nk85sa7yl3jzc";}
|
||||
{name="sweeper";value="18nwfrjpdczrmm5ckr64vgznz0nfj53lbwafwyzabp1d2wbvp1r8";}
|
||||
{name="umbrello";value="09pg5xng1mgfvna5kdl4wbfc38b4wrswfl48kdmskjk640p854z7";}
|
||||
];
|
||||
modules=[
|
||||
{
|
||||
module="kdemultimedia";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="audiocd-kio"; sane="audiocd_kio"; }
|
||||
{ name="dragon"; }
|
||||
{ name="ffmpegthumbs"; }
|
||||
{ name="juk"; }
|
||||
{ name="kmix"; }
|
||||
{ name="kscd"; }
|
||||
{ name="libkcddb"; }
|
||||
{ name="libkcompactdisc"; }
|
||||
{ name="mplayerthumbs"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdegraphics";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="gwenview"; }
|
||||
{ name="kamera"; }
|
||||
{ name="kcolorchooser"; }
|
||||
{ name="kdegraphics-mobipocket"; sane="kdegraphics_mobipocket"; }
|
||||
{ name="kdegraphics-strigi-analyzer"; sane="kdegraphics_strigi_analyzer"; }
|
||||
{ name="kdegraphics-thumbnailers"; sane="kdegraphics_thumbnailers"; }
|
||||
{ name="kgamma"; }
|
||||
{ name="kolourpaint"; }
|
||||
{ name="kruler"; }
|
||||
{ name="ksaneplugin"; }
|
||||
{ name="ksnapshot"; }
|
||||
{ name="libkdcraw"; }
|
||||
{ name="libkexiv2"; }
|
||||
{ name="libkipi"; }
|
||||
{ name="libksane"; }
|
||||
{ name="okular"; }
|
||||
{ name="svgpart"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdelibs";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="kdelibs"; }
|
||||
{ name="nepomuk-core"; sane="nepomuk_core"; }
|
||||
{ name="nepomuk-widgets"; sane="nepomuk_widgets"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdenetwork";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="kdenetwork-filesharing"; sane="kdenetwork_filesharing"; }
|
||||
{ name="kdenetwork-strigi-analyzers"; sane="kdenetwork_strigi_analyzers"; }
|
||||
{ name="kdnssd"; }
|
||||
{ name="kget"; }
|
||||
{ name="kopete"; }
|
||||
{ name="kppp"; }
|
||||
{ name="krdc"; }
|
||||
{ name="krfb"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdeutils";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="ark"; }
|
||||
{ name="filelight"; }
|
||||
{ name="kcalc"; }
|
||||
{ name="kcharselect"; }
|
||||
{ name="kdf"; }
|
||||
{ name="kfloppy"; }
|
||||
{ name="kgpg"; }
|
||||
{ name="kremotecontrol"; }
|
||||
{ name="ktimer"; }
|
||||
{ name="kwallet"; }
|
||||
{ name="print-manager"; sane="print_manager"; }
|
||||
{ name="superkaramba"; }
|
||||
{ name="sweeper"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="applications";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="kate"; }
|
||||
{ name="konsole"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdetoys";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="amor"; }
|
||||
{ name="kteatime"; }
|
||||
{ name="ktux"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdesdk";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="cervisia"; }
|
||||
{ name="dolphin-plugins"; sane="dolphin_plugins"; }
|
||||
{ name="kapptemplate"; }
|
||||
{ name="kcachegrind"; }
|
||||
{ name="kde-dev-scripts"; sane="kde_dev_scripts"; }
|
||||
{ name="kde-dev-utils"; sane="kde_dev_utils"; }
|
||||
{ name="kdesdk-kioslaves"; sane="kdesdk_kioslaves"; }
|
||||
{ name="kdesdk-strigi-analyzers"; sane="kdesdk_strigi_analyzers"; }
|
||||
{ name="kdesdk-thumbnailers"; sane="kdesdk_thumbnailers"; }
|
||||
{ name="kompare"; }
|
||||
{ name="lokalize"; }
|
||||
{ name="okteta"; }
|
||||
{ name="poxml"; }
|
||||
{ name="umbrello"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdegames";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="bomber"; }
|
||||
{ name="bovo"; }
|
||||
{ name="granatier"; }
|
||||
{ name="kajongg"; }
|
||||
{ name="kapman"; }
|
||||
{ name="katomic"; }
|
||||
{ name="kblackbox"; }
|
||||
{ name="kblocks"; }
|
||||
{ name="kbounce"; }
|
||||
{ name="kbreakout"; }
|
||||
{ name="kdiamond"; }
|
||||
{ name="kfourinline"; }
|
||||
{ name="kgoldrunner"; }
|
||||
{ name="kigo"; }
|
||||
{ name="killbots"; }
|
||||
{ name="kiriki"; }
|
||||
{ name="kjumpingcube"; }
|
||||
{ name="klickety"; }
|
||||
{ name="klines"; }
|
||||
{ name="kmahjongg"; }
|
||||
{ name="kmines"; }
|
||||
{ name="knavalbattle"; }
|
||||
{ name="knetwalk"; }
|
||||
{ name="kolf"; }
|
||||
{ name="kollision"; }
|
||||
{ name="konquest"; }
|
||||
{ name="kpat"; }
|
||||
{ name="kreversi"; }
|
||||
{ name="kshisen"; }
|
||||
{ name="ksirk"; }
|
||||
{ name="ksnakeduel"; }
|
||||
{ name="kspaceduel"; }
|
||||
{ name="ksquares"; }
|
||||
{ name="ksudoku"; }
|
||||
{ name="ktuberling"; }
|
||||
{ name="kubrick"; }
|
||||
{ name="libkdegames"; }
|
||||
{ name="libkmahjongg"; }
|
||||
{ name="lskat"; }
|
||||
{ name="palapeli"; }
|
||||
{ name="picmi"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdeedu";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="analitza"; }
|
||||
{ name="blinken"; }
|
||||
{ name="cantor"; }
|
||||
{ name="kalgebra"; }
|
||||
{ name="kalzium"; }
|
||||
{ name="kanagram"; }
|
||||
{ name="kbruch"; }
|
||||
{ name="kgeography"; }
|
||||
{ name="khangman"; }
|
||||
{ name="kig"; }
|
||||
{ name="kiten"; }
|
||||
{ name="klettres"; }
|
||||
{ name="kmplot"; }
|
||||
{ name="kstars"; }
|
||||
{ name="ktouch"; }
|
||||
{ name="kturtle"; }
|
||||
{ name="kwordquiz"; }
|
||||
{ name="libkdeedu"; }
|
||||
{ name="marble"; }
|
||||
{ name="pairs"; }
|
||||
{ name="parley"; }
|
||||
{ name="rocs"; }
|
||||
{ name="step"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdeadmin";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="kcron"; }
|
||||
{ name="ksystemlog"; }
|
||||
{ name="kuser"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdebindings";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="kimono"; }
|
||||
{ name="korundum"; }
|
||||
{ name="kross-interpreters"; sane="kross_interpreters"; }
|
||||
{ name="perlkde"; }
|
||||
{ name="perlqt"; }
|
||||
{ name="pykde4"; }
|
||||
{ name="qtruby"; }
|
||||
{ name="qyoto"; }
|
||||
{ name="smokegen"; }
|
||||
{ name="smokekde"; }
|
||||
{ name="smokeqt"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kdeaccessibility";
|
||||
split=true;
|
||||
pkgs=[
|
||||
{ name="jovie"; }
|
||||
{ name="kaccessible"; }
|
||||
{ name="kmag"; }
|
||||
{ name="kmousetool"; }
|
||||
{ name="kmouth"; }
|
||||
];
|
||||
}
|
||||
{
|
||||
module="kde-baseapps";
|
||||
sane="kde_baseapps"; split=true;
|
||||
pkgs=[
|
||||
{ name="kde-baseapps"; sane="kde_baseapps"; }
|
||||
];
|
||||
}
|
||||
{ module="kactivities"; split=false;}
|
||||
{ module="kdeartwork"; split=false;
|
||||
pkgs=[
|
||||
{ name="ColorSchemes"; }
|
||||
{ name="IconThemes"; }
|
||||
{ name="emoticons"; }
|
||||
{ name="kscreensaver"; }
|
||||
{ name="kwin-styles"; sane="kwin_styles";}
|
||||
{ name="sounds"; }
|
||||
{ name="styles"; }
|
||||
{ name="wallpapers"; }
|
||||
{ name="HighResolutionWallpapers"; }
|
||||
{ name="WeatherWallpapers"; }
|
||||
{ name="desktopthemes"; }
|
||||
];
|
||||
|
||||
}
|
||||
{ module="kde-base-artwork"; sane="kde_base_artwork"; split=false;}
|
||||
{ module="kdelibs"; split=false;}
|
||||
{ module="kdepim"; split=false;}
|
||||
{ module="kdepimlibs"; split=false;}
|
||||
{ module="kdepim-runtime"; sane="kdepim_runtime"; split=false;}
|
||||
{ module="kdeplasma-addons"; sane="kdeplasma_addons"; split=false;}
|
||||
{ module="kde-runtime"; sane="kde_runtime"; split=false;}
|
||||
{ module="kde-wallpapers"; sane="kde_wallpapers"; split=false;}
|
||||
{ module="kdewebdev"; split=false;
|
||||
pkgs=[
|
||||
{ name="klinkstatus"; }
|
||||
{ name="kfilereplace"; }
|
||||
{ name="kimagemapeditor"; }
|
||||
{ name="kommander"; }
|
||||
];
|
||||
|
||||
}
|
||||
{ module="kde-workspace"; sane="kde_workspace"; split=false;}
|
||||
{ module="oxygen-icons"; sane="oxygen_icons"; split=false;}
|
||||
];
|
||||
}
|
128
pkgs/desktops/kde-4.11/kde-package/default.nix
Normal file
128
pkgs/desktops/kde-4.11/kde-package/default.nix
Normal file
@ -0,0 +1,128 @@
|
||||
{ callPackage, runCommand, stdenv, fetchurl, qt4, cmake, automoc4
|
||||
, release, ignoreList, extraSubpkgs
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (stdenv.lib) filter fold;
|
||||
inherit (builtins) getAttr hasAttr remoteAttrs listToAttrs tail head;
|
||||
in
|
||||
rec {
|
||||
manifest = import (./. + "/${release}.nix");
|
||||
|
||||
# src attribute for $name tarball
|
||||
kdesrc = name: fetchurl {
|
||||
url = "mirror://kde/" + (if manifest.stable then "" else "un")
|
||||
+ "stable/${release}/src/${name}-${release}.tar.xz";
|
||||
sha256 = getAttr name manifest.hashes;
|
||||
};
|
||||
|
||||
# Default meta attribute
|
||||
defMeta = {
|
||||
homepage = http://www.kde.org;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
inherit (qt4.meta) maintainers;
|
||||
};
|
||||
|
||||
# KDE package built from the whole tarball
|
||||
# This function is used both for monolithic modules and modules which are
|
||||
# released as individual tarballs
|
||||
kdeMonoPkg = name: let n_ = name; in a@{meta, name ? n_, ...}:
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}-${release}";
|
||||
src = kdesrc name;
|
||||
meta = defMeta // meta;
|
||||
enableParallelBuilding = true;
|
||||
} // (removeAttrs a [ "meta" "name" ]));
|
||||
|
||||
# kdeMonoPkg wrapper for modules splitted upstream compatible with combinePkgs
|
||||
# API.
|
||||
kdeSplittedPkg = module: {name, sane ? name}: kdeMonoPkg name;
|
||||
|
||||
# Build subdirectory ${subdir} of tarball ${module}-${release}.tar.xz
|
||||
kdeSubdirPkg = module:
|
||||
{name, subdir ? name, sane ? name}:
|
||||
let name_ = name; in
|
||||
a@{cmakeFlags ? [], name ? name_, meta ? {}, ...}:
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}-${release}";
|
||||
src = kdesrc module;
|
||||
cmakeFlags =
|
||||
[ "-DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE"
|
||||
"-DBUILD_doc=TRUE"
|
||||
"-DBUILD_${subdir}=TRUE"
|
||||
] ++ cmakeFlags;
|
||||
meta = defMeta // meta;
|
||||
enableParallelBuilding = module.enableParallelBuilding or true;
|
||||
} // (removeAttrs a [ "meta" "name" "cmakeFlags" ]));
|
||||
|
||||
# A KDE monolithic module
|
||||
kdeMonoModule = name: path: callPackage path { kde = kdeMonoPkg name; };
|
||||
|
||||
# Combine packages in one module.
|
||||
# Arguments:
|
||||
# * pkgFun --- a function of the following signature:
|
||||
# module: manifest_attrs: manual_attrs: derivation;
|
||||
# * module --- name of the module
|
||||
# * pkgs --- list of packages in manifest format
|
||||
combinePkgs = pkgFun: module: pkgs:
|
||||
let
|
||||
f = p@{name, ...}:
|
||||
callPackage (./.. + "/${module}/${name}.nix") { kde = pkgFun module p; };
|
||||
list = map f pkgs;
|
||||
attrs = listToAttrs (map
|
||||
({name, sane ? name, ...}@p: { name = sane; value = f p; })
|
||||
pkgs);
|
||||
in
|
||||
runCommand "${module}-${release}"
|
||||
({passthru = attrs // {
|
||||
propagatedUserEnvPackages = list;
|
||||
projects = attrs;
|
||||
};})
|
||||
''
|
||||
mkdir -pv $out/nix-support
|
||||
echo "${toString list}" | tee $out/nix-support/propagated-user-env-packages
|
||||
'';
|
||||
|
||||
# Given manifest module data, return the module
|
||||
kdeModule = { module, sane ? module, split, pkgs ? [] }:
|
||||
let
|
||||
pkgs_ = filterPkgs module pkgs;
|
||||
in
|
||||
# Module is splitted by upstream
|
||||
if split then combinePkgs kdeSplittedPkg module pkgs_
|
||||
# Monolithic module
|
||||
else if pkgs == [] then kdeMonoModule module (./.. + "/${module}.nix")
|
||||
# Module is splitted by us
|
||||
else combinePkgs kdeSubdirPkg module pkgs_;
|
||||
|
||||
# The same, as nameValuePair with sane name
|
||||
kdeModuleNV = a@{ module, sane ? module, ... }:
|
||||
{ name = sane; value = kdeModule a; };
|
||||
|
||||
filterPkgs = module: (p:
|
||||
removeNames (stdenv.lib.attrByPath [module] [] ignoreList) p
|
||||
++ (stdenv.lib.attrByPath [module] [] extraSubpkgs));
|
||||
|
||||
# Remove attrsets with x.name in subst. Optimized for empty subst.
|
||||
removeNames = subst: big:
|
||||
fold (s: out: filter (x: x.name != s) out) big subst;
|
||||
|
||||
modules = listToAttrs (map kdeModuleNV manifest.modules);
|
||||
|
||||
splittedModuleList =
|
||||
let
|
||||
splitted = filter (a: a ? pkgs) manifest.modules;
|
||||
names = map ({module, sane ? module, ...}: sane) splitted;
|
||||
in
|
||||
map (m: m.projects) (stdenv.lib.attrVals names modules);
|
||||
|
||||
individual =
|
||||
stdenv.lib.zipAttrsWith
|
||||
(
|
||||
name: list:
|
||||
if tail list == []
|
||||
then head list
|
||||
else abort "Multiple modules define ${name}"
|
||||
)
|
||||
splittedModuleList;
|
||||
}
|
146
pkgs/desktops/kde-4.11/kde-package/kde-manifest.sh
Executable file
146
pkgs/desktops/kde-4.11/kde-package/kde-manifest.sh
Executable file
@ -0,0 +1,146 @@
|
||||
#! /bin/sh
|
||||
|
||||
# Usage: download kde release to $dir, then run
|
||||
# $0 $dir
|
||||
|
||||
dir="$1"
|
||||
|
||||
# Detect release number & whether it is a stable release
|
||||
if [[ ! -d "${dir}" ]]; then
|
||||
echo "${dir} is not a directory (or doesn't exist)!" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
release=$(ls "${dir}"/kdelibs-*.tar.xz | \
|
||||
sed -e 's/.*kdelibs-//' -e 's/\.tar\.xz//')
|
||||
|
||||
if [[ ${release##*.} -gt 50 ]]; then
|
||||
stable="false"
|
||||
else
|
||||
stable="true"
|
||||
fi
|
||||
|
||||
echo "Detected release ${release}" >&2
|
||||
|
||||
declare -A hash
|
||||
declare -A modules
|
||||
declare -a packages
|
||||
declare -a top_level
|
||||
|
||||
# xsltproc output declares -A module
|
||||
if [[ ! -f kde_projects.xml ]]; then
|
||||
curl -O -J http://projects.kde.org/kde_projects.xml
|
||||
fi
|
||||
eval `xsltproc kde-submodules.xslt kde_projects.xml`
|
||||
|
||||
module[kde-baseapps]=kde-baseapps
|
||||
unset module[kactivities]
|
||||
|
||||
print_sane() {
|
||||
echo "Called print_sane $1" >&2
|
||||
sane="${1//[^a-z0-9_]/_}"
|
||||
if [[ "$sane" != "$1" ]]; then
|
||||
echo "Sane version is $sane" >&2
|
||||
echo -n "sane=\"$sane\";"
|
||||
fi
|
||||
}
|
||||
|
||||
for i in `cd "${dir}"; ls *-${release}.tar.xz`; do
|
||||
package=${i%-${release}.tar.xz}
|
||||
packages+=( "$package" )
|
||||
echo -n "${package}.. " >&2
|
||||
hash[$package]=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}")
|
||||
echo -n ${hash[$package]} >&2
|
||||
|
||||
if [ -n "${module[$package]}" ]; then
|
||||
m="${module[$package]}"
|
||||
echo " (${m})" >&2
|
||||
modules[$m]=1
|
||||
else
|
||||
top_level+=( "$package" )
|
||||
echo " (top-level)" >&2
|
||||
fi
|
||||
#nix-store --add-fixed sha256 "${dir}/${i}" >&2
|
||||
done
|
||||
|
||||
|
||||
print_pkg_hash() {
|
||||
echo " {name=\"${1}\";value=\"${hash[$1]}\";}"
|
||||
}
|
||||
|
||||
print_hashes(){
|
||||
echo "hashes=builtins.listToAttrs["
|
||||
for p in "${packages[@]}"; do print_pkg_hash "$p"; done
|
||||
echo "];"
|
||||
}
|
||||
|
||||
print_split_module(){
|
||||
echo -n "$1:" >&2
|
||||
echo -e "{\n module=\"$1\";"
|
||||
print_sane "$1"
|
||||
echo " split=true;"
|
||||
echo " pkgs=["
|
||||
for p in "${packages[@]}"; do
|
||||
if [[ "${module[$p]}" == "$1" ]]; then
|
||||
echo -n " { name=\"$p\"; "
|
||||
print_sane "$p"
|
||||
echo " }"
|
||||
echo -n " $p" >&2
|
||||
fi
|
||||
done
|
||||
echo " ];"
|
||||
echo "}"
|
||||
echo >&2
|
||||
}
|
||||
|
||||
print_mono_module(){
|
||||
echo -en "{ module=\"$1\"; "
|
||||
print_sane "$1"
|
||||
echo -n "$1 ... " >&2
|
||||
echo -n " split=false;"
|
||||
cml="$1-$release/CMakeLists.txt"
|
||||
tar -xf "${dir}/$1-${release}.tar.xz" "$cml"
|
||||
if grep '^[^#]*add_subdirectory' $cml >/dev/null; then
|
||||
if grep '^[^#]*add_subdirectory' $cml | grep -v macro_optional_add_subdirectory >/dev/null; then
|
||||
echo " is monolithic (has unconditionally added subdirs)" >&2
|
||||
else
|
||||
subdirs=( `grep '^[^#]*add_subdirectory' $cml |
|
||||
sed -e 's/[^#]*add_subdirectory *( *\(.*\) *)/\1/' |
|
||||
grep -v '\(doc\|cmake\)'` )
|
||||
echo " seems splittable, subdirs: ${subdirs[*]}" >&2
|
||||
echo -e "\n pkgs=["
|
||||
for s in "${subdirs[@]}"; do
|
||||
echo -en " {"
|
||||
echo -n " name=\"${s//\//-}\"; "
|
||||
print_sane "$s"
|
||||
if [[ $s != "${s//\//-}" ]]; then
|
||||
echo -n "subdir=\"$s\"; "
|
||||
fi
|
||||
echo "}"
|
||||
done
|
||||
echo -e " ];\n"
|
||||
fi
|
||||
else
|
||||
echo " is monolithic (has no subdirs)" >&2
|
||||
fi
|
||||
rm $cml
|
||||
rmdir $1-$release
|
||||
echo "}"
|
||||
}
|
||||
|
||||
print_modules(){
|
||||
echo "modules=["
|
||||
echo "Printing modules splitted by upstream" >&2
|
||||
for m in "${!modules[@]}"; do print_split_module "$m"; done
|
||||
echo >&2
|
||||
echo "Printing modules not splitted by upstream (${top_level[*]})" >&2
|
||||
for m in "${top_level[@]}"; do print_mono_module "$m"; done
|
||||
echo "];"
|
||||
}
|
||||
|
||||
echo "Writing ${release}.nix" >&2
|
||||
exec > "${release}.nix"
|
||||
echo "{stable=${stable};"
|
||||
print_hashes
|
||||
print_modules
|
||||
echo "}"
|
23
pkgs/desktops/kde-4.11/kde-runtime.nix
Normal file
23
pkgs/desktops/kde-4.11/kde-runtime.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ kde, kdelibs, bzip2, libssh, exiv2, attica, qca2
|
||||
, libcanberra, virtuoso, samba, libjpeg, ntrack, pkgconfig, xz, pulseaudio
|
||||
, networkmanager, kactivities, kdepimlibs, openexr, ilmbase
|
||||
}:
|
||||
|
||||
kde {
|
||||
buildInputs = [
|
||||
kdelibs attica xz bzip2 libssh libjpeg exiv2 ntrack
|
||||
qca2 samba libcanberra pulseaudio
|
||||
networkmanager kactivities kdepimlibs openexr
|
||||
#todo: add openslp
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
|
||||
|
||||
passthru.propagatedUserEnvPackages = [ virtuoso ];
|
||||
|
||||
meta = {
|
||||
license = "LGPL";
|
||||
};
|
||||
}
|
17
pkgs/desktops/kde-4.11/kde-wallpapers.nix
Normal file
17
pkgs/desktops/kde-4.11/kde-wallpapers.nix
Normal file
@ -0,0 +1,17 @@
|
||||
{ kde, cmake }:
|
||||
|
||||
kde {
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
patches = [ ./files/kde-wallpapers-buildsystem.patch ];
|
||||
|
||||
cmakeFlags = "-DWALLPAPER_INSTALL_DIR=share/wallpapers";
|
||||
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = "07jwbxp4gdxkvxdasbzbv00l3kqrjph4d8dlbyxgryf12waykcmm";
|
||||
|
||||
meta = {
|
||||
description = "Wallpapers for KDE";
|
||||
};
|
||||
}
|
39
pkgs/desktops/kde-4.11/kde-workspace.nix
Normal file
39
pkgs/desktops/kde-4.11/kde-workspace.nix
Normal file
@ -0,0 +1,39 @@
|
||||
{ kde, kdelibs, qimageblitz, libdbusmenu_qt, xorg, lm_sensors
|
||||
, pciutils, libraw1394, libusb1, python, libqalculate, akonadi
|
||||
, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison
|
||||
, libjpeg, pkgconfig, kactivities, qjson, udev
|
||||
}:
|
||||
|
||||
kde {
|
||||
|
||||
#todo: wayland, consolekit, xmms, opengles, libusb isn't found
|
||||
buildInputs =
|
||||
[ kdelibs qimageblitz libdbusmenu_qt xorg.libxcb xorg.xcbutilimage libjpeg
|
||||
xorg.xcbutilrenderutil xorg.xcbutilkeysyms xorg.libpthreadstubs xorg.libXdmcp
|
||||
xorg.libxkbfile xorg.libXcomposite xorg.libXtst
|
||||
xorg.libXdamage
|
||||
|
||||
python boost qjson lm_sensors gpsd libraw1394 pciutils udev
|
||||
akonadi pam libusb1 libqalculate kdepimlibs prison
|
||||
kactivities
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
# Fix incorrect path to kde4-config.
|
||||
substituteInPlace startkde.cmake --replace '$bindir/kde4-config' ${kdelibs}/bin/kde4-config
|
||||
|
||||
# Fix the path to the keyboard configuration files.
|
||||
substituteInPlace kcontrol/keyboard/xkb_rules.cpp \
|
||||
--replace /usr/share/X11 ${xkeyboard_config}/etc/X11
|
||||
'';
|
||||
|
||||
enableParallelBuilding = false; # frequent problems on Hydra
|
||||
|
||||
meta = {
|
||||
description = "KDE workspace components such as Plasma, Kwin and System Settings";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeaccessibility/jovie.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeaccessibility/jovie.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, speechd }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs speechd ];
|
||||
|
||||
meta = {
|
||||
description = "Text-to-speech synthesis daemon";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeaccessibility/kaccessible.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeaccessibility/kaccessible.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, speechd }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs speechd ];
|
||||
|
||||
meta = {
|
||||
description = "Bridge that provides accessibility services to applications";
|
||||
};
|
||||
}
|
10
pkgs/desktops/kde-4.11/kdeaccessibility/kmag.nix
Normal file
10
pkgs/desktops/kde-4.11/kdeaccessibility/kmag.nix
Normal file
@ -0,0 +1,10 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
#todo: package qaccessibilityclient
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Screen magnifier for KDE";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeaccessibility/kmousetool.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeaccessibility/kmousetool.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, libXtst, libXt }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs libXtst libXt ];
|
||||
|
||||
meta = {
|
||||
description = "A program that clicks the mouse for you";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeaccessibility/kmouth.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeaccessibility/kmouth.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "A type-and-say front end for speech synthesizers";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeadmin/kcron.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeadmin/kcron.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Configure and schedule tasks";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeadmin/ksystemlog.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeadmin/ksystemlog.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "System log viewer tool";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeadmin/kuser.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeadmin/kuser.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, kdepimlibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs kdepimlibs ];
|
||||
|
||||
meta = {
|
||||
description = "User management tool";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/ColorSchemes.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/ColorSchemes.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
name = "kde-color-schemes";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Additional KDE color schemes";
|
||||
};
|
||||
}
|
73
pkgs/desktops/kde-4.11/kdeartwork/FindXscreensaver.cmake
Normal file
73
pkgs/desktops/kde-4.11/kdeartwork/FindXscreensaver.cmake
Normal file
@ -0,0 +1,73 @@
|
||||
#Macro to find xscreensaver directory
|
||||
|
||||
# Copyright (c) 2006, Laurent Montel, <montel@kde.org>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
if (NOT XSCREENSAVER_FOUND)
|
||||
FIND_PATH(XSCREENSAVER_DIR deco
|
||||
HINTS
|
||||
${KDE4_INCLUDE_DIR}
|
||||
PATHS
|
||||
/usr
|
||||
/usr/local
|
||||
/opt/local
|
||||
/usr/X11R6
|
||||
/opt/kde
|
||||
/opt/kde3
|
||||
/usr/kde
|
||||
/usr/local/kde
|
||||
/usr/local/xscreensaver
|
||||
/usr/openwin/lib/xscreensaver
|
||||
/etc
|
||||
PATH_SUFFIXES
|
||||
lib${LIB_SUFFIX}/xscreensaver
|
||||
lib${LIB_SUFFIX}/misc/xscreensaver
|
||||
lib/xscreensaver
|
||||
lib64/xscreensaver
|
||||
lib/misc/xscreensaver
|
||||
libexec/xscreensaver
|
||||
bin/xscreensaver-hacks
|
||||
hacks)
|
||||
message(STATUS "XSCREENSAVER_DIR <${XSCREENSAVER_DIR}>")
|
||||
|
||||
FIND_PATH(XSCREENSAVER_CONFIG_DIR deco.xml
|
||||
PATHS
|
||||
${KDE4_INCLUDE_DIR}
|
||||
/usr/
|
||||
/usr/local/
|
||||
/opt/local/
|
||||
/usr/X11R6/
|
||||
/opt/kde/
|
||||
/opt/kde3/
|
||||
/usr/kde/
|
||||
/usr/local/kde/
|
||||
/usr/openwin/lib/xscreensaver/
|
||||
/etc/
|
||||
PATH_SUFFIXES xscreensaver xscreensaver/config share/xscreensaver/config
|
||||
)
|
||||
MESSAGE(STATUS "XSCREENSAVER_CONFIG_DIR :<${XSCREENSAVER_CONFIG_DIR}>")
|
||||
|
||||
endif(NOT XSCREENSAVER_FOUND)
|
||||
|
||||
#MESSAGE(STATUS "XSCREENSAVER_CONFIG_DIR :<${XSCREENSAVER_CONFIG_DIR}>")
|
||||
#MESSAGE(STATUS "XSCREENSAVER_DIR :<${XSCREENSAVER_DIR}>")
|
||||
|
||||
# Need to fix hack
|
||||
if(XSCREENSAVER_DIR AND XSCREENSAVER_CONFIG_DIR)
|
||||
set(XSCREENSAVER_FOUND TRUE)
|
||||
endif(XSCREENSAVER_DIR AND XSCREENSAVER_CONFIG_DIR)
|
||||
|
||||
if (XSCREENSAVER_FOUND)
|
||||
if (NOT Xscreensaver_FIND_QUIETLY)
|
||||
message(STATUS "Found XSCREENSAVER_CONFIG_DIR <${XSCREENSAVER_CONFIG_DIR}>")
|
||||
endif (NOT Xscreensaver_FIND_QUIETLY)
|
||||
else (XSCREENSAVER_FOUND)
|
||||
if (Xscreensaver_FIND_REQUIRED)
|
||||
message(FATAL_ERROR "XScreenSaver not found")
|
||||
endif (Xscreensaver_FIND_REQUIRED)
|
||||
endif (XSCREENSAVER_FOUND)
|
||||
|
||||
|
||||
MARK_AS_ADVANCED(XSCREENSAVER_DIR XSCREENSAVER_CONFIG_DIR)
|
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde rec {
|
||||
name = "kde-wallpapers-high-resolution";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "KDE wallpapers in high resolution";
|
||||
};
|
||||
}
|
13
pkgs/desktops/kde-4.11/kdeartwork/IconThemes.nix
Normal file
13
pkgs/desktops/kde-4.11/kdeartwork/IconThemes.nix
Normal file
@ -0,0 +1,13 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
name = "kdeartwork-icon-themes";
|
||||
|
||||
# Sources contain primary and kdeclassic as well but they're not installed
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "KDE nuvola and mono icon themes";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/WeatherWallpapers.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/WeatherWallpapers.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde rec {
|
||||
name = "kde-weather-wallpapers";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Additional KDE wallpapers (weather)";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/desktopthemes.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/desktopthemes.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
name = "kde-desktop-themes";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Additional KDE desktop themes";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/emoticons.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/emoticons.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
name = "kde-emotion-icons";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Additional KDE emotion icons (smiles)";
|
||||
};
|
||||
}
|
15
pkgs/desktops/kde-4.11/kdeartwork/kscreensaver.nix
Normal file
15
pkgs/desktops/kde-4.11/kdeartwork/kscreensaver.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{ kde, kdelibs, xscreensaver, kde_workspace, eigen, libkexiv2, libXt, pkgconfig }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs xscreensaver kde_workspace eigen libkexiv2 libXt ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
prePatch = "cp -v ${./FindXscreensaver.cmake} cmake/modules/FindXscreensaver.cmake";
|
||||
|
||||
cmakeFlags = [ "-DBUILD_asciiquarium:BOOL=ON" ];
|
||||
|
||||
meta = {
|
||||
description = "KDE screensavers";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeartwork/kwin-styles.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeartwork/kwin-styles.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, kde_workspace }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs kde_workspace ];
|
||||
|
||||
meta = {
|
||||
description = "Styles for KWin";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/sounds.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/sounds.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde rec {
|
||||
name = "kde-sounds";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "New login/logout sounds";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/styles.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/styles.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde rec {
|
||||
name = "kde-style-phase";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Phase, a widget style for KDE";
|
||||
};
|
||||
}
|
11
pkgs/desktops/kde-4.11/kdeartwork/wallpapers.nix
Normal file
11
pkgs/desktops/kde-4.11/kdeartwork/wallpapers.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde rec {
|
||||
name = "kdeartwork-wallpapers";
|
||||
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Additional KDE wallpapers";
|
||||
};
|
||||
}
|
14
pkgs/desktops/kde-4.11/kdebindings/perlqt.nix
Normal file
14
pkgs/desktops/kde-4.11/kdebindings/perlqt.nix
Normal file
@ -0,0 +1,14 @@
|
||||
{ kde, cmake, smokeqt, perl }:
|
||||
|
||||
kde {
|
||||
|
||||
# TODO: qscintilla2, qwt5
|
||||
|
||||
buildInputs = [ smokeqt perl ];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
meta = {
|
||||
description = "Perl bindings for Qt library";
|
||||
};
|
||||
}
|
32
pkgs/desktops/kde-4.11/kdebindings/pykde4.nix
Normal file
32
pkgs/desktops/kde-4.11/kdebindings/pykde4.nix
Normal file
@ -0,0 +1,32 @@
|
||||
{ kde, kdelibs, python, sip, pyqt4, kdepimlibs, shared_desktop_ontologies,
|
||||
polkit_qt_1, boost, lndir, pkgconfig }:
|
||||
|
||||
let pydir = "lib/python${python.majorVersion}"; in
|
||||
|
||||
kde {
|
||||
|
||||
# todo: polkit isn't found by the build system
|
||||
|
||||
buildInputs = [
|
||||
python kdepimlibs shared_desktop_ontologies
|
||||
boost polkit_qt_1
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
propagatedBuildInputs = [ pyqt4 sip ];
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
# Symlink PyQt into PyKDE. This is necessary because PyQt looks
|
||||
# in its PyQt4/uic/widget-plugins directory for plugins, and KDE
|
||||
# needs to install a plugin.
|
||||
mkdir -pv $out/${pydir}
|
||||
${lndir}/bin/lndir ${pyqt4}/${pydir} $out/${pydir}
|
||||
cmakeFlagsArray=( "-DSIP_DEFAULT_SIP_DIR=$prefix/share/sip" )
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Python bindings for KDE";
|
||||
};
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 33078b4..30aec0e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -31,8 +31,8 @@ if (NOT COMPILE_RUBY)
|
||||
return()
|
||||
endif (NOT COMPILE_RUBY)
|
||||
|
||||
-SET(CUSTOM_RUBY_SITE_ARCH_DIR ${RUBY_SITEARCH_DIR} CACHE DIR "custom installation directory for ruby binary extension" )
|
||||
-SET(CUSTOM_RUBY_SITE_LIB_DIR ${RUBY_SITELIB_DIR} CACHE DIR "custom installation directory for ruby extension" )
|
||||
+string(REPLACE "${RUBY_ROOT_DIR}" "${CMAKE_INSTALL_PREFIX}" CUSTOM_RUBY_SITE_ARCH_DIR ${RUBY_SITEARCH_DIR})
|
||||
+string(REPLACE "${RUBY_ROOT_DIR}" "${CMAKE_INSTALL_PREFIX}" CUSTOM_RUBY_SITE_LIB_DIR ${RUBY_SITELIB_DIR})
|
||||
|
||||
# compute an overall version number which can be compared at once
|
||||
MATH(EXPR RUBY_VERSION_NUMBER "${RUBY_VERSION_MAJOR}*10000 + ${RUBY_VERSION_MINOR}*100 + ${RUBY_VERSION_PATCH}")
|
20
pkgs/desktops/kde-4.11/kdebindings/qtruby.nix
Normal file
20
pkgs/desktops/kde-4.11/kdebindings/qtruby.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{ kde, cmake, smokeqt, ruby }:
|
||||
|
||||
kde {
|
||||
|
||||
# TODO: scintilla2, qwt5
|
||||
|
||||
buildInputs = [ smokeqt ruby ];
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
# The patch is not ready for upstream submmission.
|
||||
# I should add an option() instead.
|
||||
patches = [ ./qtruby-install-prefix.patch ];
|
||||
|
||||
cmakeFlags="-DRUBY_ROOT_DIR=${ruby}";
|
||||
|
||||
meta = {
|
||||
description = "Ruby bindings for Qt library";
|
||||
};
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
--- smokegen-4.10.5.orig/CMakeLists.txt 2013-06-28 17:14:50.000000000 +0000
|
||||
+++ smokegen-4.10.5/CMakeLists.txt 2013-07-31 19:15:17.000000000 +0000
|
||||
@@ -36,6 +36,10 @@
|
||||
set (CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
set (CMAKE_SKIP_RPATH FALSE)
|
||||
|
||||
+# add the automatically determined parts of the RPATH
|
||||
+# which point to directories outside the build tree to the install RPATH
|
||||
+SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
|
||||
+
|
||||
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/config.h.in config.h @ONLY )
|
||||
|
||||
add_executable(smokegen ${generator_SRC})
|
13
pkgs/desktops/kde-4.11/kdebindings/smokegen-nix.patch
Normal file
13
pkgs/desktops/kde-4.11/kdebindings/smokegen-nix.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff -urN smokegen-4.10.5.orig/cmake/SmokeConfig.cmake.in smokegen-4.10.5/cmake/SmokeConfig.cmake.in
|
||||
--- smokegen-4.10.5.orig/cmake/SmokeConfig.cmake.in 2013-06-28 17:14:50.000000000 +0000
|
||||
+++ smokegen-4.10.5/cmake/SmokeConfig.cmake.in 2013-07-30 21:26:33.000000000 +0000
|
||||
@@ -80,8 +80,7 @@
|
||||
set(SMOKE_API_BIN "@SMOKE_API_BIN@")
|
||||
|
||||
find_library(SMOKE_BASE_LIBRARY smokebase
|
||||
- PATHS "@SMOKE_LIBRARY_PREFIX@"
|
||||
- NO_DEFAULT_PATH)
|
||||
+ PATHS "@SMOKE_LIBRARY_PREFIX@")
|
||||
|
||||
if (NOT SMOKE_BASE_LIBRARY)
|
||||
if (Smoke_FIND_REQUIRED)
|
13
pkgs/desktops/kde-4.11/kdebindings/smokegen.nix
Normal file
13
pkgs/desktops/kde-4.11/kdebindings/smokegen.nix
Normal file
@ -0,0 +1,13 @@
|
||||
{ kde, qt4, cmake }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ qt4 ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
patches = [ ./smokegen-nix.patch ./smokegen-CMakeLists.txt-nix.patch ];
|
||||
|
||||
meta = {
|
||||
description = "C++ parser used to generate language bindings for Qt/KDE";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
19
pkgs/desktops/kde-4.11/kdebindings/smokekde.nix
Normal file
19
pkgs/desktops/kde-4.11/kdebindings/smokekde.nix
Normal file
@ -0,0 +1,19 @@
|
||||
{ kde, cmake, smokeqt, kdelibs, akonadi, kdepimlibs, okular
|
||||
, shared_desktop_ontologies, attica, pkgconfig }:
|
||||
|
||||
kde {
|
||||
|
||||
# TODO: attica, akonadi and kdepimlibs are disabled due to smokegen crash
|
||||
# okular is disabled because the code generated is broken
|
||||
buildInputs = [
|
||||
smokeqt kdelibs shared_desktop_ontologies
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
||||
LD_LIBRARY_PATH = "${smokeqt}/lib/";
|
||||
|
||||
meta = {
|
||||
description = "SMOKE bindings for kdelibs";
|
||||
};
|
||||
}
|
15
pkgs/desktops/kde-4.11/kdebindings/smokeqt.nix
Normal file
15
pkgs/desktops/kde-4.11/kdebindings/smokeqt.nix
Normal file
@ -0,0 +1,15 @@
|
||||
{ kde, qt4, cmake, phonon, qimageblitz, smokegen }:
|
||||
|
||||
kde {
|
||||
|
||||
# TODO: Qwt5, QScintilla2
|
||||
|
||||
propagatedBuildInputs = [ qt4 phonon qimageblitz ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
propagatedNativeBuildInputs = [ smokegen ];
|
||||
|
||||
meta = {
|
||||
description = "C++ parser used to generate language bindings for Qt/KDE";
|
||||
license = "GPLv2";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/analitza.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/analitza.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs, readline }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs readline ];
|
||||
|
||||
meta = {
|
||||
description = "Library part of KAlgebra";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/blinken.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/blinken.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Memory Enhancement Game";
|
||||
};
|
||||
}
|
13
pkgs/desktops/kde-4.11/kdeedu/cantor.nix
Normal file
13
pkgs/desktops/kde-4.11/kdeedu/cantor.nix
Normal file
@ -0,0 +1,13 @@
|
||||
{ kde, kdelibs, libspectre, analitza, R, pkgconfig, libqalculate }:
|
||||
kde {
|
||||
|
||||
# TODO: R is not found
|
||||
|
||||
buildInputs = [ kdelibs libspectre analitza R libqalculate];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
meta = {
|
||||
description = "KDE Frontend to Mathematical Software";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/kalgebra.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/kalgebra.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs, libkdeedu, analitza }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs libkdeedu analitza ];
|
||||
|
||||
meta = {
|
||||
description = "2D and 3D Graph Calculator";
|
||||
};
|
||||
}
|
13
pkgs/desktops/kde-4.11/kdeedu/kalzium.nix
Normal file
13
pkgs/desktops/kde-4.11/kdeedu/kalzium.nix
Normal file
@ -0,0 +1,13 @@
|
||||
{ kde, kdelibs, facile, ocaml, eigen, openbabel, avogadro, pkgconfig }:
|
||||
kde {
|
||||
|
||||
# TODO: chemical mime data
|
||||
|
||||
buildInputs = [ kdelibs facile ocaml eigen openbabel avogadro ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
meta = {
|
||||
description = "Periodic Table of Elements";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/kanagram.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/kanagram.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs, libkdeedu }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs libkdeedu ];
|
||||
|
||||
meta = {
|
||||
description = "Letter Order Game";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/kbruch.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/kbruch.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Practice Fractions";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/kgeography.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/kgeography.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Geography Trainer";
|
||||
};
|
||||
}
|
8
pkgs/desktops/kde-4.11/kdeedu/khangman.nix
Normal file
8
pkgs/desktops/kde-4.11/kdeedu/khangman.nix
Normal file
@ -0,0 +1,8 @@
|
||||
{ kde, kdelibs, libkdeedu }:
|
||||
kde {
|
||||
buildInputs = [ kdelibs libkdeedu ];
|
||||
|
||||
meta = {
|
||||
description = "KDE hangman game";
|
||||
};
|
||||
}
|
12
pkgs/desktops/kde-4.11/kdeedu/kig.nix
Normal file
12
pkgs/desktops/kde-4.11/kdeedu/kig.nix
Normal file
@ -0,0 +1,12 @@
|
||||
{ kde, kdelibs, boost, python}:
|
||||
kde {
|
||||
buildInputs = [ kdelibs boost python ];
|
||||
|
||||
cmakeFlags = ''
|
||||
-DBOOST_PYTHON_INCLUDES:PATH=${boost}/include;${python}/include/${python.libPrefix}
|
||||
-DBOOST_PYTHON_LIBS=boost_python;${python.libPrefix} -DKIG_ENABLE_PYTHON_SCRIPTING=1
|
||||
'';
|
||||
meta = {
|
||||
description = "KDE Interactive Geometry";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeedu/kiten.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeedu/kiten.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "Japanese Reference/Study Tool";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeedu/klettres.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeedu/klettres.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "A KDE alphabet tutorial";
|
||||
};
|
||||
}
|
12
pkgs/desktops/kde-4.11/kdeedu/kmplot.nix
Normal file
12
pkgs/desktops/kde-4.11/kdeedu/kmplot.nix
Normal file
@ -0,0 +1,12 @@
|
||||
{ kde, kdelibs }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs ];
|
||||
|
||||
meta = {
|
||||
description = "A KDE mathematical function plotter";
|
||||
kde = {
|
||||
name = "kmplot";
|
||||
};
|
||||
};
|
||||
}
|
14
pkgs/desktops/kde-4.11/kdeedu/kstars.nix
Normal file
14
pkgs/desktops/kde-4.11/kdeedu/kstars.nix
Normal file
@ -0,0 +1,14 @@
|
||||
{ kde, kdelibs, eigen, xplanet, indilib, pkgconfig }:
|
||||
|
||||
kde {
|
||||
|
||||
# TODO: wcslib
|
||||
|
||||
buildInputs = [ kdelibs eigen xplanet indilib ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
meta = {
|
||||
description = "A KDE graphical desktop planetarium";
|
||||
};
|
||||
}
|
9
pkgs/desktops/kde-4.11/kdeedu/ktouch.nix
Normal file
9
pkgs/desktops/kde-4.11/kdeedu/ktouch.nix
Normal file
@ -0,0 +1,9 @@
|
||||
{ kde, kdelibs, libxkbfile }:
|
||||
|
||||
kde {
|
||||
buildInputs = [ kdelibs libxkbfile ];
|
||||
|
||||
meta = {
|
||||
description = "Touch Typing Tutor";
|
||||
};
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user