Merge branch 'master' into x-updates
This commit is contained in:
commit
c1e62e7e91
@ -6,7 +6,7 @@
|
||||
|
||||
|
||||
<para>The standard build environment in the Nix Packages collection
|
||||
provides a environment for building Unix packages that does a lot of
|
||||
provides an environment for building Unix packages that does a lot of
|
||||
common build tasks automatically. In fact, for Unix packages that use
|
||||
the standard <literal>./configure; make; make install</literal> build
|
||||
interface, you don’t need to write a build script at all; the standard
|
||||
|
@ -41,7 +41,7 @@ NB:
|
||||
|
||||
Keep in mind that many programs are not very well suited for cross
|
||||
compilation. Either they are not intended to run on other platforms,
|
||||
because the code is highly platform specific, or the configuration proces
|
||||
because the code is highly platform specific, or the configuration process
|
||||
is not written with cross compilation in mind.
|
||||
|
||||
Nix will not solve these problems for you!
|
||||
@ -290,7 +290,7 @@ this compiler and verified to be working on a HP Jornada 820 running Linux
|
||||
are "patch", "make" and "wget".
|
||||
|
||||
If we want to build C++ programs it gets a lot more difficult. GCC has a
|
||||
three step compilation proces. In the first step a simple compiler, called
|
||||
three step compilation process. In the first step a simple compiler, called
|
||||
xgcc, that can compile only C programs is built. With that compiler it
|
||||
compiles itself two more times: one time to build a full compiler, and another
|
||||
time to build a full compiler once again with the freshly built compiler from
|
||||
@ -318,7 +318,7 @@ with compilation flags. This is still work in progress for Nix.
|
||||
|
||||
---
|
||||
|
||||
After succesfully completing the whole toolchain you can start building
|
||||
After successfully completing the whole toolchain you can start building
|
||||
packages with the newly built tools. To make everything build correctly
|
||||
you will need a stdenv for your target platform. Setting up this platform
|
||||
will take some effort. Right now there is a very experimental setup for
|
||||
|
@ -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.6.0";
|
||||
version = "2.8.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.bz2";
|
||||
sha256 = "1h6jzl0jnn8g05pz4mw01kz20wjjxwwz6iki7lvgj70qi3jq04m9";
|
||||
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)
|
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
|
||||
description = "mpg321, a command-line MP3 player";
|
||||
homepage = http://mpg321.sourceforge.net/;
|
||||
license = "GPLv2";
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -1,16 +1,24 @@
|
||||
{ stdenv, fetchurl, pythonPackages, gettext, pyqt4
|
||||
, pkgconfig, libdiscid, libofa, ffmpeg }:
|
||||
, pkgconfig, libdiscid, libofa, ffmpeg, acoustidFingerprinter
|
||||
}:
|
||||
|
||||
pythonPackages.buildPythonPackage rec {
|
||||
name = "picard-${version}";
|
||||
namePrefix = "";
|
||||
version = "1.1";
|
||||
version = "1.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp.musicbrainz.org/pub/musicbrainz/picard/${name}.tar.gz";
|
||||
md5 = "57abb76632a423760f336ac11da5c149";
|
||||
md5 = "d1086687b7f7b0d359a731b1a25e7b66";
|
||||
};
|
||||
|
||||
postPatch = let
|
||||
fpr = "${acoustidFingerprinter}/bin/acoustid_fpcalc";
|
||||
in ''
|
||||
sed -ri -e 's|(TextOption.*"acoustid_fpcalc"[^"]*")[^"]*|\1${fpr}|' \
|
||||
picard/ui/options/fingerprinting.py
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig
|
||||
ffmpeg
|
||||
|
@ -1,23 +1,43 @@
|
||||
{ stdenv, fetchurl, lightdm, pkgconfig, gtk3, intltool }:
|
||||
{ stdenv, fetchurl, lightdm, pkgconfig, intltool
|
||||
, hicolor_icon_theme, makeWrapper
|
||||
, useGTK2 ? false, gtk2, gtk3 # gtk3 seems better supported
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "lightdm-gtk-greeter";
|
||||
#ToDo: bad icons with gtk2;
|
||||
# avatar icon is missing in standard hicolor theme, I don't know where gtk3 takes it from
|
||||
|
||||
#ToDo: Failed to open sessions directory: Error opening directory '${lightdm}/share/lightdm/remote-sessions': No such file or directory
|
||||
|
||||
let
|
||||
ver_branch = "1.6";
|
||||
version = "1.5.1"; # 1.5.2 and 1.6.0 result into infinite cycling of X in restarts
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lightdm-gtk-greeter-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://launchpad.net/lightdm-gtk-greeter/1.6/1.5.1/+download/lightdm-gtk-greeter-1.5.1.tar.gz";
|
||||
sha256 = "ecce7e917a79fa8f2126c3fafb6337f81f2198892159a4ef695016afecd2d621";
|
||||
url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.gz";
|
||||
sha256 = "08fnsbnay5jhd7ps8n91i6c227zq6xizpyn34qhqzykrga8pxkpc";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig gtk3 lightdm intltool ];
|
||||
|
||||
patches =
|
||||
[ ./lightdm-gtk-greeter.patch
|
||||
];
|
||||
|
||||
patches = [ ./lightdm-gtk-greeter.patch ];
|
||||
patchFlags = "-p0";
|
||||
|
||||
buildInputs = [ pkgconfig lightdm intltool ]
|
||||
++ (if useGTK2 then [ gtk2 makeWrapper ] else [ gtk3 ]);
|
||||
|
||||
configureFlags = stdenv.lib.optional useGTK2 "--with-gtk2";
|
||||
|
||||
postInstall = ''
|
||||
substituteInPlace "$out/share/xgreeters/lightdm-gtk-greeter.desktop" \
|
||||
--replace "Exec=lightdm-gtk-greeter" "Exec=$out/sbin/lightdm-gtk-greeter"
|
||||
'' + stdenv.lib.optionalString useGTK2 ''
|
||||
wrapProgram "$out/sbin/lightdm-gtk-greeter" \
|
||||
--prefix XDG_DATA_DIRS ":" "${hicolor_icon_theme}/share"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://launchpad.net/lightdm-gtk-greeter;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
@ -1,25 +1,31 @@
|
||||
{ stdenv, fetchurl, pam, pkgconfig, libxcb, glib, libXdmcp, itstool, libxml2, intltool, x11, libxklavier, libgcrypt, makeWrapper }:
|
||||
{ stdenv, fetchurl, pam, pkgconfig, libxcb, glib, libXdmcp, itstool, libxml2
|
||||
, intltool, x11, libxklavier, libgcrypt, dbus/*for tests*/ }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "lightdm-1.5.1";
|
||||
let
|
||||
ver_branch = "1.8";
|
||||
version = "1.7.0";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lightdm-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = https://launchpad.net/lightdm/1.6/1.5.1/+download/lightdm-1.5.1.tar.xz;
|
||||
sha256 = "645db2d763cc514d6aecb1838f4a9c33c3dcf0c94567a7ef36c6b23d8aa56c86";
|
||||
url = "${meta.homepage}/${ver_branch}/${version}/+download/${name}.tar.xz";
|
||||
sha256 = "0nwwjgc9xvwili6714ag88wsrf0lr5hv1i6z9f0xvin4ym18cbs5";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig pam libxcb glib libXdmcp itstool libxml2 intltool libxklavier libgcrypt makeWrapper ];
|
||||
|
||||
configureFlags = [ "--enable-liblightdm-gobject" ];
|
||||
|
||||
patches =
|
||||
[ ./lightdm.patch
|
||||
];
|
||||
|
||||
patches = [ ./lightdm.patch ];
|
||||
patchFlags = "-p0";
|
||||
|
||||
buildInputs = [
|
||||
pkgconfig pam libxcb glib libXdmcp itstool libxml2 intltool libxklavier libgcrypt
|
||||
] ++ stdenv.lib.optional doCheck dbus.daemon;
|
||||
|
||||
configureFlags = [ "--enable-liblightdm-gobject" "--localstatedir=/var" ];
|
||||
|
||||
doCheck = false; # some tests fail, don't know why
|
||||
|
||||
meta = {
|
||||
homepage = http://launchpad.net/lightdm;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -41,6 +41,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
homepage = http://www.gnu.org/software/ed/;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ EOF
|
||||
homepage = http://www.gnu.org/software/emacs/;
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo simons chaoflow ];
|
||||
maintainers = with stdenv.lib.maintainers; [ simons chaoflow ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -26,8 +26,10 @@ stdenv.mkDerivation rec {
|
||||
++ stdenv.lib.optional stdenv.isLinux dbus;
|
||||
|
||||
configureFlags =
|
||||
stdenv.lib.optionals (gtk != null) [ "--with-x-toolkit=gtk" "--with-xft"]
|
||||
|
||||
(if gtk != null then
|
||||
[ "--with-x-toolkit=gtk" "--with-xft"]
|
||||
else
|
||||
[ "--with-x-toolkit=no" ])
|
||||
# On NixOS, help Emacs find `crt*.o'.
|
||||
++ stdenv.lib.optional (stdenv ? glibc)
|
||||
[ "--with-crt-dir=${stdenv.glibc}/lib" ];
|
||||
@ -67,7 +69,7 @@ EOF
|
||||
homepage = "http://www.gnu.org/software/emacs/";
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = with maintainers; [ chaoflow lovek323 ludo simons ];
|
||||
maintainers = with maintainers; [ chaoflow lovek323 simons ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -43,6 +43,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
homepage = http://ecb.sourceforge.net/;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
@ -56,6 +56,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
homepage = http://emacs-w3m.namazu.org/;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
@ -91,7 +91,7 @@ in
|
||||
|
||||
license = "GPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -40,6 +40,6 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = with stdenv.lib.maintainers; [ simons ludo ];
|
||||
maintainers = with stdenv.lib.maintainers; [ simons ];
|
||||
};
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo chaoflow ];
|
||||
maintainers = with stdenv.lib.maintainers; [ chaoflow ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -27,6 +27,6 @@ stdenv.mkDerivation {
|
||||
description = "Enhanced Emacs support for editing and running Scheme code";
|
||||
homepage = http://www.neilvandyke.org/quack/;
|
||||
license = "GPLv2+";
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
@ -25,6 +25,6 @@ stdenv.mkDerivation rec {
|
||||
# non-copyleft, BSD-style
|
||||
license = "permissive";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
20
pkgs/applications/editors/flpsed/default.nix
Normal file
20
pkgs/applications/editors/flpsed/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{stdenv, fetchurl, fltk13, ghostscript}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "flpsed-0.7.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.ecademix.com/JohannesHofmann/flpsed-0.7.0.tar.gz";
|
||||
sha1 = "7966fd3b6fb3aa2a376386533ed4421ebb66ad62";
|
||||
};
|
||||
|
||||
buildInputs = [ fltk13 ghostscript ];
|
||||
|
||||
meta = {
|
||||
description = "A WYSIWYG PostScript annotator.";
|
||||
homepage = "http://http://flpsed.org/flpsed.html";
|
||||
license = "GPLv3";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
|
||||
}
|
35
pkgs/applications/editors/nvpy/default.nix
Normal file
35
pkgs/applications/editors/nvpy/default.nix
Normal file
@ -0,0 +1,35 @@
|
||||
{ pkgs, fetchurl, tk, buildPythonPackage, pythonPackages }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "0.9.2";
|
||||
name = "nvpy-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/cpbotha/nvpy/archive/v${version}.tar.gz";
|
||||
sha256 = "78e41b80fc5549cba8cfd92b52d6530e8dfc8e8f37e96e4b219f30c266af811d";
|
||||
};
|
||||
|
||||
buildInputs = [tk];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pythonPackages.markdown
|
||||
pythonPackages.tkinter
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
install -dm755 "$out/share/licenses/nvpy/"
|
||||
install -m644 LICENSE.txt "$out/share/licenses/nvpy/LICENSE"
|
||||
|
||||
install -dm755 "$out/share/doc/nvpy/"
|
||||
install -m644 README.rst "$out/share/doc/nvpy/README"
|
||||
|
||||
wrapProgram $out/bin/nvpy --set TK_LIBRARY "${tk}/lib/${tk.libPrefix}"
|
||||
'';
|
||||
|
||||
meta = with pkgs.lib; {
|
||||
description = "A simplenote-syncing note-taking tool inspired by Notational Velocity";
|
||||
homepage = "https://github.com/cpbotha/nvpy";
|
||||
platforms = platforms.linux;
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
homepage = http://texmacs.org/;
|
||||
license = "GPLv2+";
|
||||
maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.roconnor ];
|
||||
maintainers = [ stdenv.lib.maintainers.roconnor ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
24
pkgs/applications/editors/tiled-qt/default.nix
Normal file
24
pkgs/applications/editors/tiled-qt/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, fetchurl, qt }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tiled-qt-0.9.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/tiled/${name}.tar.gz";
|
||||
sha256 = "09xm6ry56zsqbfl9fvlvc5kq9ikzdskm283r059q6rlc7crzhs38";
|
||||
};
|
||||
|
||||
buildInputs = [ qt ];
|
||||
|
||||
preConfigure = "qmake -r PREFIX=$out";
|
||||
|
||||
meta = {
|
||||
description = "A free, easy to use and flexible tile map editor";
|
||||
homepage = "http://www.mapeditor.org/";
|
||||
# libtiled and tmxviewer is licensed under 2-calause BSD license.
|
||||
# The rest is GPL2 or later.
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ iyzsong ];
|
||||
};
|
||||
}
|
@ -1,6 +1,6 @@
|
||||
# TODO tidy up eg The patchelf code is patching gvim even if you don't build it..
|
||||
# but I have gvim with python support now :) - Marc
|
||||
args@{source ? "latest", ...}: with args;
|
||||
args@{source ? "default", ...}: with args;
|
||||
|
||||
|
||||
let inherit (args.composableDerivation) composableDerivation edf; in
|
||||
@ -11,7 +11,7 @@ composableDerivation {
|
||||
else stdenv ).mkDerivation;
|
||||
} (fix: {
|
||||
|
||||
name = "vim_configurable-7.3";
|
||||
name = "vim_configurable-7.4";
|
||||
|
||||
enableParallelBuilding = true; # test this
|
||||
|
||||
@ -20,8 +20,8 @@ composableDerivation {
|
||||
"default" =
|
||||
# latest release
|
||||
args.fetchurl {
|
||||
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2;
|
||||
sha256 = "079201qk8g9yisrrb0dn52ch96z3lzw6z473dydw9fzi0xp5spaw";
|
||||
url = ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2;
|
||||
sha256 = "1pjaffap91l2rb9pjnlbrpvb3ay5yhhr3g91zabjvw1rqk9adxfh";
|
||||
};
|
||||
"vim-nox" =
|
||||
{
|
||||
@ -31,14 +31,7 @@ composableDerivation {
|
||||
name = "vim-nox-hg-2082fc3";
|
||||
# END
|
||||
}.src;
|
||||
"latest" = {
|
||||
# vim latest usually is vim + bug fixes. So it should be very stable
|
||||
# REGION AUTO UPDATE: { name="vim"; type="hg"; url="https://vim.googlecode.com/hg"; }
|
||||
src = (fetchurl { url = "http://mawercer.de/~nix/repos/vim-hg-7f98896.tar.bz2"; sha256 = "efcb8cc5924b530631a8e5fc2a0622045c2892210d32d300add24aded51866f1"; });
|
||||
name = "vim-hg-7f98896";
|
||||
# END
|
||||
}.src;
|
||||
};
|
||||
};
|
||||
|
||||
# if darwin support is enabled, we want to make sure we're not building with
|
||||
# OS-installed python framework
|
||||
|
@ -1,12 +1,14 @@
|
||||
{ stdenv, fetchurl, ncurses, gettext, pkgconfig }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vim-7.3";
|
||||
name = "vim-7.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.vim.org/pub/vim/unix/${name}.tar.bz2";
|
||||
sha256 = "079201qk8g9yisrrb0dn52ch96z3lzw6z473dydw9fzi0xp5spaw";
|
||||
sha256 = "1pjaffap91l2rb9pjnlbrpvb3ay5yhhr3g91zabjvw1rqk9adxfh";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs = [ ncurses pkgconfig ];
|
||||
nativeBuildInputs = [ gettext ];
|
||||
|
@ -47,6 +47,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
homepage = http://geeqie.sourceforge.net;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # needs GTK+
|
||||
};
|
||||
}
|
||||
|
@ -1,15 +1,18 @@
|
||||
{ stdenv, fetchurl, coreutils , unzip, which, pkgconfig , dbus
|
||||
{ stdenv, fetchgit, coreutils , unzip, which, pkgconfig , dbus
|
||||
, freetype, xdg_utils , libXext, glib, pango , cairo, libX11, libnotify
|
||||
, libxdg_basedir , libXScrnSaver, xproto, libXinerama , perl, gdk_pixbuf
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.0.0";
|
||||
name = "dunst-${version}";
|
||||
rev = "6a3a855b48a3db64821d1cf8a91c5ee2815a2b2d";
|
||||
name = "dunst-${rev}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/knopwob/dunst/archive/v${version}.zip";
|
||||
sha256 = "1x6k6jrf219v8hmhqhnnfjycldvsnp7ag8a2y8adp5rhfmgyn671";
|
||||
# 1.0.0 release doesn't include 100% CPU fix
|
||||
# https://github.com/knopwob/dunst/issues/98
|
||||
src = fetchgit {
|
||||
inherit rev;
|
||||
url = "https://github.com/knopwob/dunst.git";
|
||||
sha256 = "0m7yki16d72xm9n2m2fjszd8phqpn5b95q894cz75pmd0sv1j6bj";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
@ -23,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
libXScrnSaver xproto libXinerama perl];
|
||||
|
||||
buildPhase = ''
|
||||
export VERSION=${version};
|
||||
export VERSION=${rev};
|
||||
export PREFIX=$out;
|
||||
make dunst;
|
||||
'';
|
||||
|
@ -31,7 +31,7 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
license = "GPLv3+";
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -1,18 +1,25 @@
|
||||
{ stdenv, fetchurl, postgresql, wxGTK, libxml2, libxslt, openssl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "pgadmin3-1.10.0";
|
||||
name = "pgadmin3-${version}";
|
||||
version = "1.16.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://ftp3.de.postgresql.org/pub/Mirrors/ftp.postgresql.org/pgadmin3/release/v1.10.0/src/pgadmin3-1.10.0.tar.gz";
|
||||
sha256 = "1ndi951da3jw5800fjdgkbvl8n6k71x7x16ghihi1l88bilf2a16";
|
||||
url = "http://ftp.postgresql.org/pub/pgadmin3/release/v${version}/src/pgadmin3-${version}.tar.gz";
|
||||
sha256 = "13n2nyjnbmjbz9n0xp6627n3pavkqfp4n45l1mnqxhjdq8yj9fnl";
|
||||
};
|
||||
|
||||
buildInputs = [ postgresql wxGTK libxml2 libxslt openssl ];
|
||||
|
||||
meta = {
|
||||
preConfigure = ''
|
||||
substituteInPlace pgadmin/ver_svn.sh --replace "bin/bash" "$shell"
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "PostgreSQL administration GUI tool";
|
||||
homepage = http://www.pgadmin.org;
|
||||
license = "GPL2";
|
||||
license = licenses.gpl2;
|
||||
maintainers = [ maintainers.iElectric ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -4,11 +4,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "redshift";
|
||||
version = "1.6";
|
||||
version = "1.7";
|
||||
name = "${pname}-${version}";
|
||||
src = fetchurl {
|
||||
url = "http://launchpad.net/${pname}/trunk/${version}/+download/${pname}-${version}.tar.bz2";
|
||||
sha256 = "0g46zhqnx3y2fssmyjgaardzhjw1j29l1dbc2kmccw9wxqfla1wi";
|
||||
sha256 = "1j0hs0vnlic90cf4bryn11n4ani1x2s5l8z6ll3fmrlw98ykrylv";
|
||||
};
|
||||
|
||||
buildInputs = [ libX11 libXrandr libXxf86vm libxcb pkgconfig python
|
||||
|
@ -1,48 +1,31 @@
|
||||
x@{builderDefsPackage
|
||||
, ncurses
|
||||
, ...}:
|
||||
builderDefsPackage
|
||||
(a :
|
||||
let
|
||||
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
|
||||
[];
|
||||
{ pkgs, fetchurl, stdenv, ncurses, utillinux, file, libX11 }:
|
||||
|
||||
buildInputs = map (n: builtins.getAttr n x)
|
||||
(builtins.attrNames (builtins.removeAttrs x helperArgNames));
|
||||
sourceInfo = rec {
|
||||
baseName="vifm";
|
||||
version="0.6.3";
|
||||
name="${baseName}-${version}";
|
||||
url="mirror://sourceforge/project/${baseName}/${baseName}/${name}.tar.bz2";
|
||||
hash="1v5kiifjk7iyqrzjd94wn6a5dz4j3krl06pbp1ps9g3zdq2w2skv";
|
||||
};
|
||||
in
|
||||
rec {
|
||||
src = a.fetchurl {
|
||||
url = sourceInfo.url;
|
||||
sha256 = sourceInfo.hash;
|
||||
let
|
||||
name = "vifm-${version}";
|
||||
version = "0.7.5";
|
||||
|
||||
in stdenv.mkDerivation {
|
||||
inherit name;
|
||||
|
||||
src = fetchurl {
|
||||
url="mirror://sourceforge/project/vifm/vifm/${name}.tar.bz2";
|
||||
sha256 ="1r1d92zrff94rfx011dw2qsgdwd2ksqlz15la74d6h7sfcsnyd01";
|
||||
};
|
||||
|
||||
inherit (sourceInfo) name version;
|
||||
inherit buildInputs;
|
||||
#phaseNames = ["doConfigure" "doMakeInstall"];
|
||||
buildInputs = [ utillinux ncurses file libX11 ];
|
||||
|
||||
/* doConfigure should be removed if not needed */
|
||||
phaseNames = ["doConfigure" "doMakeInstall"];
|
||||
|
||||
meta = {
|
||||
description = "A vi-like file manager";
|
||||
maintainers = with a.lib.maintainers;
|
||||
[
|
||||
raskin
|
||||
];
|
||||
platforms = with a.lib.platforms;
|
||||
linux;
|
||||
license = a.lib.licenses.gpl2;
|
||||
maintainers = with pkgs.lib.maintainers; [ raskin garbas ];
|
||||
platforms = pkgs.lib.platforms.linux;
|
||||
license = pkgs.lib.licenses.gpl2;
|
||||
};
|
||||
|
||||
passthru = {
|
||||
updateInfo = {
|
||||
downloadPage = "http://vifm.sf.net";
|
||||
};
|
||||
};
|
||||
}) x
|
||||
}
|
||||
|
||||
|
@ -35,7 +35,7 @@ stdenv.mkDerivation {
|
||||
|
||||
homepage = http://wordnet.princeton.edu/;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ cabal, filepath, libXrandr, mtl, parsec, regexCompat, stm, time
|
||||
, utf8String, wirelesstools, X11, X11Xft
|
||||
, utf8String, X11, X11Xft
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
@ -11,8 +11,8 @@ cabal.mkDerivation (self: {
|
||||
buildDepends = [
|
||||
filepath mtl parsec regexCompat stm time utf8String X11 X11Xft
|
||||
];
|
||||
extraLibraries = [ libXrandr wirelesstools ];
|
||||
configureFlags = "-fwith_xft -fwith_iwlib";
|
||||
extraLibraries = [ libXrandr ];
|
||||
configureFlags = "-fwith_xft";
|
||||
meta = {
|
||||
homepage = "http://projects.haskell.org/xmobar/";
|
||||
description = "A Minimalistic Text Based Status Bar";
|
||||
|
@ -1,14 +0,0 @@
|
||||
diff --git a/printing/printing.gyp b/printing/printing.gyp
|
||||
index 19fa1b2..f11d76e 100644
|
||||
--- a/printing/printing.gyp
|
||||
+++ b/printing/printing.gyp
|
||||
@@ -26,6 +26,9 @@
|
||||
'include_dirs': [
|
||||
'..',
|
||||
],
|
||||
+ 'cflags': [
|
||||
+ '-Wno-deprecated-declarations',
|
||||
+ ],
|
||||
'sources': [
|
||||
'backend/print_backend.cc',
|
||||
'backend/print_backend.h',
|
@ -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}";
|
||||
@ -127,14 +125,18 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
prePatch = "patchShebangs .";
|
||||
|
||||
patches = [ userns_patch ]
|
||||
++ optional cupsSupport ./cups_allow_deprecated.patch;
|
||||
patches = [ userns_patch ];
|
||||
|
||||
postPatch = ''
|
||||
sed -i -r -e 's/-f(stack-protector)(-all)?/-fno-\1/' build/common.gypi
|
||||
sed -i -e 's|/usr/bin/gcc|gcc|' third_party/WebKit/Source/core/core.gypi
|
||||
'' + optionalString useOpenSSL ''
|
||||
cat $opensslPatches | patch -p1 -d third_party/openssl/openssl
|
||||
'' + 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 // {
|
||||
@ -213,7 +215,7 @@ in stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Chromium, an open source web browser";
|
||||
description = "An open source web browser from Google";
|
||||
homepage = http://www.chromium.org/;
|
||||
maintainers = with maintainers; [ goibhniu chaoflow aszlig ];
|
||||
license = licenses.bsd3;
|
||||
|
@ -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.1573.2";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1573.2.tar.xz";
|
||||
sha256 = "1pbph4jz0svaawk06zajq73x0xm73f9kdiflhad2709f4y23gzjz";
|
||||
version = "30.0.1599.10";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.10.tar.xz";
|
||||
sha256 = "1h6wak2sy0cawsk63gdbg7ggq8lg7cahs1v8i0hvzwm9k6apwphs";
|
||||
};
|
||||
beta = {
|
||||
version = "29.0.1547.32";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.32.tar.xz";
|
||||
sha256 = "14p5s1xn15mdrlf87hv4y9kczw5r8s461a56kkdzb5xzyq25ph8w";
|
||||
version = "29.0.1547.57";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.57.tar.xz";
|
||||
sha256 = "0xl595fng7qzlc8vh73lslzchr6ayd4vlmz2mpqppb8pai520xxf";
|
||||
};
|
||||
stable = {
|
||||
version = "28.0.1500.71";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-28.0.1500.71.tar.xz";
|
||||
sha256 = "1w8hkbb17bwq9myhj7fig27pn50qlwdfrqs04xjvam4ah3w6qb0r";
|
||||
version = "29.0.1547.57";
|
||||
url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.57.tar.xz";
|
||||
sha256 = "0xl595fng7qzlc8vh73lslzchr6ayd4vlmz2mpqppb8pai520xxf";
|
||||
};
|
||||
}
|
||||
|
@ -1,15 +1,16 @@
|
||||
{ stdenv, fetchurl, unzip, xulrunner, makeWrapper }:
|
||||
{ stdenv, fetchgit, unzip, xulrunner, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "conkeror-1.0pre-20130401";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://repo.or.cz/w/conkeror.git/snapshot/0341e791c78653a2f5bbbff9a1dac04bf898dd65.zip;
|
||||
sha256 = "11v7p40lcz6r5z0w54f8pk6hyn9mqjcw44fqszjyz25rkhx951ry";
|
||||
name = "conkeror-1.0pre-20130817-1";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://repo.or.cz/conkeror.git;
|
||||
rev = "refs/tags/debian-1.0--pre+git130817-1";
|
||||
sha256 = "aef3c782ac98c031e7b99852f42538e225e151cd226cde3094823a5cae015fcf";
|
||||
};
|
||||
|
||||
|
||||
buildInputs = [ unzip makeWrapper ];
|
||||
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/libexec/conkeror
|
||||
cp -r * $out/libexec/conkeror
|
||||
|
@ -19,9 +19,9 @@ assert useSystemCairo -> cairo != null;
|
||||
let optional = stdenv.lib.optional;
|
||||
in rec {
|
||||
|
||||
firefoxVersion = "22.0";
|
||||
firefoxVersion = "23.0";
|
||||
|
||||
xulVersion = "22.0"; # this attribute is used by other packages
|
||||
xulVersion = "23.0"; # this attribute is used by other packages
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
@ -31,7 +31,7 @@ in rec {
|
||||
# Fall back to this url for versions not available at releases.mozilla.org.
|
||||
"ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
|
||||
];
|
||||
sha1 = "db2d5b028b6ea95b5f006b46e153f50f7a52bf80";
|
||||
sha1 = "31936d2ddb727640c96a3ae697bf145c42a2a20e";
|
||||
};
|
||||
|
||||
commonConfigureFlags =
|
||||
|
@ -107,7 +107,7 @@ stdenv.mkDerivation {
|
||||
homepage = http://www.gnu.org/software/gnuzilla/;
|
||||
licenses = [ "GPLv2+" "LGPLv2+" "MPLv1+" ];
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
|
||||
|
@ -12,6 +12,7 @@ let
|
||||
gtksourceview pkgconfig which gettext makeWrapper
|
||||
file libidn sqlite docutils libnotify libsoup vala
|
||||
kbproto xproto scrnsaverproto libXScrnSaver dbus_glib
|
||||
glib_networking
|
||||
];
|
||||
in
|
||||
rec {
|
||||
@ -34,7 +35,11 @@ rec {
|
||||
|
||||
shebangsHere = (doPatchShebangs ".");
|
||||
shebangsInstalled = (doPatchShebangs "$out/bin");
|
||||
wrapWK = (makeManyWrappers "$out/bin/*" "--set WEBKIT_IGNORE_SSL_ERRORS 1");
|
||||
wrapWK = (makeManyWrappers "$out/bin/*"
|
||||
''
|
||||
--set WEBKIT_IGNORE_SSL_ERRORS 1 \
|
||||
--prefix GIO_EXTRA_MODULES : "${args.glib_networking}/lib/gio/modules"
|
||||
'');
|
||||
|
||||
name = "midori-${version}.${release}";
|
||||
meta = {
|
||||
|
@ -44,9 +44,9 @@ let
|
||||
throw "no x86_64 debugging version available"
|
||||
else rec {
|
||||
# -> http://labs.adobe.com/downloads/flashplayer10.html
|
||||
version = "11.2.202.273";
|
||||
version = "11.2.202.297";
|
||||
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
|
||||
sha256 = "0c15nszgg7zsv00n2qxha5zf8hmyf8i6byvhalnh5x46mr0rkbv9";
|
||||
sha256 = "0jfigq56p6zp61pmc4jl12p8gv2jhfmim18j1b30iikw3iv26lh8";
|
||||
}
|
||||
else if stdenv.system == "i686-linux" then
|
||||
if debug then {
|
||||
@ -55,9 +55,9 @@ let
|
||||
url = http://fpdownload.macromedia.com/pub/flashplayer/updaters/11/flashplayer_11_plugin_debug.i386.tar.gz;
|
||||
sha256 = "1z3649lv9sh7jnwl8d90a293nkaswagj2ynhsr4xmwiy7c0jz2lk";
|
||||
} else rec {
|
||||
version = "11.2.202.273";
|
||||
version = "11.2.202.297";
|
||||
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
|
||||
sha256 = "1gb14xv7gbq57qg1hxmrnryaw6xgmkg54ql5hr7q6szplj65wvmd";
|
||||
sha256 = "0mpj25b2ar7gccqmw5lffdzlr3yyfalphpgwnl18s05wy1fx484y";
|
||||
}
|
||||
else throw "Flash Player is not supported on this platform";
|
||||
|
||||
|
@ -12,17 +12,17 @@
|
||||
enableOfficialBranding ? false
|
||||
}:
|
||||
|
||||
let version = "17.0.7"; in
|
||||
let version = "17.0.8"; in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "thunderbird-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.bz2";
|
||||
sha1 = "d6dca3e1cc4293f2e15d6b35056bd8dc319014ee";
|
||||
sha1 = "4bcbb33f0b3ea050e805723680b5669d80438812";
|
||||
};
|
||||
|
||||
enableParallelBuilding = false;
|
||||
enableParallelBuilding = true;
|
||||
|
||||
buildInputs =
|
||||
[ pkgconfig perl python zip unzip bzip2 gtk dbus_glib alsaLib libIDL nspr
|
||||
|
@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
homepage = http://www.gnucash.org/;
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.simons stdenv.lib.maintainers.iElectric ];
|
||||
maintainers = [ stdenv.lib.maintainers.simons stdenv.lib.maintainers.iElectric ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
};
|
||||
}
|
||||
|
@ -36,9 +36,15 @@ stdenv.mkDerivation rec {
|
||||
--with-system-pcre
|
||||
--with-system-xz
|
||||
--with-ICU
|
||||
R_SHELL="${stdenv.shell}"
|
||||
AR=$(type -p ar)
|
||||
AWK=$(type -p gawk)
|
||||
CC=$(type -p gcc)
|
||||
CXX=$(type -p g++)
|
||||
FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran"
|
||||
JAVA_HOME="${jdk}"
|
||||
LDFLAGS="-L${gfortran.gcc}/lib"
|
||||
RANLIB=$(type -p ranlib)
|
||||
R_SHELL="${stdenv.shell}"
|
||||
)
|
||||
echo "TCLLIBPATH=${tk}/lib" >>etc/Renviron.in
|
||||
'';
|
||||
|
@ -73,7 +73,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "LGPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
};
|
||||
}
|
||||
|
@ -15,11 +15,11 @@ cabal.mkDerivation (self: {
|
||||
utf8String vector zlib
|
||||
];
|
||||
extraLibraries = [ curl ];
|
||||
doCheck = false;
|
||||
postInstall = ''
|
||||
mkdir -p $out/etc/bash_completion.d
|
||||
mv contrib/darcs_completion $out/etc/bash_completion.d/darcs
|
||||
'';
|
||||
doCheck = false;
|
||||
meta = {
|
||||
homepage = "http://darcs.net/";
|
||||
description = "a distributed, interactive, smart revision control system";
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ cabal, aeson, async, blazeBuilder, bloomfilter, bup
|
||||
, caseInsensitive, clientsession, cryptoApi, curl, dataDefault
|
||||
, dataenc, DAV, dbus, dlist, dns, editDistance
|
||||
, extensibleExceptions, filepath, git, gnupg1, gnutls, hamlet
|
||||
, extensibleExceptions, feed, filepath, git, gnupg1, gnutls, hamlet
|
||||
, hinotify, hS3, hslogger, HTTP, httpConduit, httpTypes, HUnit
|
||||
, IfElse, json, lsof, MissingH, MonadCatchIOTransformers
|
||||
, monadControl, mtl, network, networkInfo, networkMulticast
|
||||
@ -14,15 +14,15 @@
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "git-annex";
|
||||
version = "4.20130723";
|
||||
sha256 = "1fc8kz4n2g4x9fzvdx4bz4d8gkbajdnqphldcglwl23g97vyrn6i";
|
||||
version = "4.20130815";
|
||||
sha256 = "0c4fvqmnvyrncmiz0dxwax2rnb4yrqw1y54q2zkqiifzrihcyi71";
|
||||
isLibrary = false;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
aeson async blazeBuilder bloomfilter caseInsensitive clientsession
|
||||
cryptoApi dataDefault dataenc DAV dbus dlist dns editDistance
|
||||
extensibleExceptions filepath gnutls hamlet hinotify hS3 hslogger
|
||||
HTTP httpConduit httpTypes HUnit IfElse json MissingH
|
||||
extensibleExceptions feed filepath gnutls hamlet hinotify hS3
|
||||
hslogger HTTP httpConduit httpTypes HUnit IfElse json MissingH
|
||||
MonadCatchIOTransformers monadControl mtl network networkInfo
|
||||
networkMulticast networkProtocolXmpp QuickCheck random regexTdfa
|
||||
SafeSemaphore SHA stm text time transformers unixCompat utf8String
|
||||
|
@ -140,6 +140,6 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.simons ];
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
};
|
||||
}
|
||||
|
@ -1,18 +1,18 @@
|
||||
{stdenv, fetchurl, qt, libXext, libX11}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qgit-2.3";
|
||||
name = "qgit-2.5";
|
||||
meta =
|
||||
{
|
||||
license = "GPLv2";
|
||||
homepage = "http://digilander.libero.it/mcostalba/";
|
||||
homepage = "http://libre.tibirna.org/projects/qgit/wiki/QGit";
|
||||
description = "Graphical front-end to Git";
|
||||
inherit (qt.meta) platforms;
|
||||
};
|
||||
src = fetchurl
|
||||
{
|
||||
url = "mirror://sourceforge/qgit/${name}.tar.bz2";
|
||||
sha256 = "a5fdd7e27fea376790eed787e22f4863eb9d2fe0217fd98b9fdbcf47a45bdc64";
|
||||
url = "http://libre.tibirna.org/attachments/download/9/${name}.tar.gz";
|
||||
sha256 = "25f1ca2860d840d87b9919d34fc3a1b05d4163671ed87d29c3e4a8a09e0b2499";
|
||||
};
|
||||
buildInputs = [qt libXext libX11];
|
||||
configurePhase = "qmake PREFIX=$out";
|
||||
|
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
license = "GPLv3+";
|
||||
maintainers = with stdenv.lib.maintainers; [ eelco simons ludo ];
|
||||
maintainers = with stdenv.lib.maintainers; [ eelco simons ];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
@ -21,13 +21,13 @@ assert compressionSupport -> neon.compressionSupport;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
version = "1.7.10";
|
||||
version = "1.7.11";
|
||||
|
||||
name = "subversion-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://apache/subversion//${name}.tar.bz2";
|
||||
sha1 = "a4f3de0a13b034b0eab4d35512c6c91a4abcf4f5";
|
||||
sha1 = "d82e187803043b74c072cd5a861ac02e4a027684";
|
||||
};
|
||||
|
||||
buildInputs = [ zlib apr aprutil sqlite ]
|
||||
|
@ -10,18 +10,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vlc-${version}";
|
||||
version = "2.0.7";
|
||||
version = "2.0.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.videolan.org/pub/videolan/vlc/${version}/${name}.tar.xz";
|
||||
sha256 = "052kfkpd0r2fwkyz97qhz2a368xqxa905qacrd1bkl2bkvahfc94";
|
||||
sha256 = "00hpbm0v424yhfzqyxrvrvfjkbvf3f43yqk6h1qhwmnl8n1z4am0";
|
||||
};
|
||||
|
||||
postPatch = /* flac 1.3.0 fix */ ''
|
||||
sed -i -e 's:stream_decoder.h:FLAC/stream_decoder.h:' modules/codec/flac.c
|
||||
sed -i -e 's:stream_encoder.h:FLAC/stream_encoder.h:' modules/codec/flac.c
|
||||
'';
|
||||
|
||||
buildInputs =
|
||||
[ xz bzip2 perl zlib a52dec libmad faad2 ffmpeg alsaLib libdvdnav libdvdnav.libdvdread
|
||||
libbluray dbus fribidi qt4 libvorbis libtheora speex lua5 libgcrypt
|
||||
|
@ -11,7 +11,7 @@ with stdenv.lib;
|
||||
|
||||
let
|
||||
|
||||
version = "4.2.14"; # changes ./guest-additions as well
|
||||
version = "4.2.16"; # changes ./guest-additions as well
|
||||
|
||||
forEachModule = action: ''
|
||||
for mod in \
|
||||
@ -31,11 +31,13 @@ let
|
||||
'';
|
||||
|
||||
# See https://github.com/NixOS/nixpkgs/issues/672 for details
|
||||
extpackRevision = "86644";
|
||||
extpackRevision = "86992";
|
||||
extensionPack = requireFile rec {
|
||||
name = "Oracle_VM_VirtualBox_Extension_Pack-${version}-${extpackRevision}.vbox-extpack";
|
||||
# Has to be base16 because it's used as an input to VBoxExtPackHelperApp!
|
||||
sha256 = "5813cae72790de4893cadb839ffbd148290a44ec6913d901d84c9b3740ab1b1e";
|
||||
# IMPORTANT: Hash must be base16 encoded because it's used as an input to
|
||||
# VBoxExtPackHelperApp!
|
||||
# Tip: nix-hash --type sha256 --to-base16 "hash from nix-prefetch-url"
|
||||
sha256 = "8f88b1ebe69b770103e9151bebf6681c5e049eb5fac45ae8d52c43440aa0fa0d";
|
||||
message = ''
|
||||
In order to use the extension pack, you need to comply with the VirtualBox Personal Use
|
||||
and Evaluation License (PUEL) by downloading the related binaries from:
|
||||
@ -54,7 +56,7 @@ in stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
|
||||
sha256 = "038k65cdvr80da5nfan5r3rjrnxqab2fbf2pr2jq8g1gc4cxrxpq";
|
||||
sha256 = "0nnl8qh8j4sk5zn78hrp6ccidmk332p7qg6pv5a0a4irs0b8j3zz";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
|
@ -12,7 +12,7 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
|
||||
sha256 = "9f08f13bbd818fb3ef9916658542ad0999c35e11afc1f6e8ff0b944405486e8a";
|
||||
sha256 = "1id0rb2sdnn34rvjl2v3hp3z9g9c4s4f4kl1lx0myjlqv8i0fayg";
|
||||
};
|
||||
|
||||
KERN_DIR = "${kernelDev}/lib/modules/*/build";
|
||||
|
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
|
||||
cripples Emacs and other quality pieces of software.
|
||||
'';
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo stdenv.lib.maintainers.simons ];
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
|
20
pkgs/applications/window-managers/windowmaker/default.nix
Normal file
20
pkgs/applications/window-managers/windowmaker/default.nix
Normal file
@ -0,0 +1,20 @@
|
||||
{ stdenv, fetchurl, pkgconfig, libX11, libXft, libXmu }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "windowmaker-${version}";
|
||||
version = "0.95.4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://windowmaker.org/pub/source/release/"
|
||||
+ "WindowMaker-${version}.tar.gz";
|
||||
sha256 = "0icffqnmkkjjf412m27wljbf9vxb2ry4aiyi2pqmzw3h0pq9gsib";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig libX11 libXft libXmu ];
|
||||
|
||||
meta = {
|
||||
homepage = "http://windowmaker.org/";
|
||||
description = "NeXTSTEP-like window manager";
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
};
|
||||
}
|
@ -24,7 +24,7 @@ for source in $dbs; do
|
||||
echo "selector $selector does not match any revision";
|
||||
fi
|
||||
else
|
||||
echo "pulling branch $branch wasn't succesfull";
|
||||
echo "pulling branch $branch wasn't successful";
|
||||
fi;
|
||||
if test -n "$done"; then
|
||||
break;
|
||||
|
@ -4,12 +4,12 @@
|
||||
# Also generate an appropriate modules.dep.
|
||||
|
||||
{ stdenv, kernel, nukeReferences, rootModules
|
||||
, module_init_tools, allowMissing ? false }:
|
||||
, kmod, allowMissing ? false }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = kernel.name + "-shrunk";
|
||||
builder = ./modules-closure.sh;
|
||||
buildInputs = [nukeReferences];
|
||||
inherit kernel rootModules module_init_tools allowMissing;
|
||||
inherit kernel rootModules kmod allowMissing;
|
||||
allowedReferences = ["out"];
|
||||
}
|
||||
|
@ -2,24 +2,20 @@ source $stdenv/setup
|
||||
|
||||
set -o pipefail
|
||||
|
||||
PATH=$module_init_tools/sbin:$PATH
|
||||
PATH=$kmod/sbin:$PATH
|
||||
|
||||
version=$(cd $kernel/lib/modules && ls -d *)
|
||||
|
||||
echo "kernel version is $version"
|
||||
|
||||
export MODULE_DIR=$(readlink -f $kernel/lib/modules/)
|
||||
|
||||
# Determine the dependencies of each root module.
|
||||
closure=
|
||||
for module in $rootModules; do
|
||||
echo "root module: $module"
|
||||
deps=$(modprobe --config /dev/null --set-version "$version" --show-depends "$module" \
|
||||
deps=$(modprobe --config no-config -d $kernel --set-version "$version" --show-depends "$module" \
|
||||
| sed 's/^insmod //') \
|
||||
|| if test -z "$allowMissing"; then exit 1; fi
|
||||
#for i in $deps; do echo $i; done
|
||||
if [[ "$deps" != builtin* ]]
|
||||
then
|
||||
if [[ "$deps" != builtin* ]]; then
|
||||
closure="$closure $deps"
|
||||
fi
|
||||
done
|
||||
@ -41,4 +37,4 @@ for module in $closure; do
|
||||
echo $target >> $out/insmod-list
|
||||
done
|
||||
|
||||
MODULE_DIR=$out/lib/modules/ depmod -a $version
|
||||
depmod -b $out -a $version
|
||||
|
@ -40,13 +40,23 @@ rec {
|
||||
} // args);
|
||||
|
||||
aggregate =
|
||||
{ name, members, meta ? { } }:
|
||||
{ name, constituents, meta ? { } }:
|
||||
pkgs.runCommand name
|
||||
{ inherit members meta;
|
||||
{ inherit constituents meta;
|
||||
preferLocalBuild = true;
|
||||
_hydraAggregate = true;
|
||||
}
|
||||
''
|
||||
echo $members > $out
|
||||
mkdir -p $out/nix-support
|
||||
touch $out/nix-support/hydra-build-products
|
||||
echo $constituents > $out/nix-support/hydra-aggregate-constituents
|
||||
|
||||
# Propagate build failures.
|
||||
for i in $constituents; do
|
||||
if [ -e $i/nix-support/failed ]; then
|
||||
touch $out/nix-support/failed
|
||||
fi
|
||||
done
|
||||
'';
|
||||
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ pkgs
|
||||
, kernel ? pkgs.linux
|
||||
, kernel ? pkgs.linux_3_10
|
||||
, img ? "bzImage"
|
||||
, rootModules ?
|
||||
[ "virtio_pci" "virtio_blk" "virtio_balloon" "ext4" "unix" "9p" "9pnet_virtio" ]
|
||||
|
@ -1,11 +1,11 @@
|
||||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "man-pages-3.50";
|
||||
name = "man-pages-3.53";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kernel/linux/docs/man-pages/${name}.tar.xz";
|
||||
sha256 = "04fn7zzi75y79rkg57nkync3hf14m8708iw33s03f0x8ays6fajz";
|
||||
sha256 = "0kzkjfrw65f7bv6laz3jism4yqajmfh3vdq2jb5d6gyp4n14sxnl";
|
||||
};
|
||||
|
||||
preBuild =
|
||||
|
@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
|
||||
license = "GPLv3+";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
22
pkgs/data/icons/tango-icon-theme/default.nix
Normal file
22
pkgs/data/icons/tango-icon-theme/default.nix
Normal file
@ -0,0 +1,22 @@
|
||||
{ stdenv, fetchurl, intltool, pkgconfig, iconnamingutils, imagemagick, librsvg }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tango-icon-theme-0.8.90";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://tango.freedesktop.org/releases/${name}.tar.gz";
|
||||
sha256 = "13n8cpml71w6zfm2jz5fa7r1z18qlzk4gv07r6n1in2p5l1xi63f";
|
||||
};
|
||||
|
||||
patches = [ ./rsvg-convert.patch ];
|
||||
|
||||
buildInputs = [ intltool pkgconfig iconnamingutils imagemagick librsvg ];
|
||||
|
||||
configureFlags = "--enable-png-creation";
|
||||
|
||||
meta = {
|
||||
description = "A basic set of icons";
|
||||
homepage = http://tango.freedesktop.org/Tango_Icon_Library;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
34
pkgs/data/icons/tango-icon-theme/rsvg-convert.patch
Normal file
34
pkgs/data/icons/tango-icon-theme/rsvg-convert.patch
Normal file
@ -0,0 +1,34 @@
|
||||
Based on https://build.opensuse.org/package/view_file?file=tango-icon-theme-rsvg-2_35_2.patch&package=tango-icon-theme&project=openSUSE%3A12.2&rev=faf71bf8278d5df6ec8a31726e5b8542
|
||||
|
||||
diff -ru -x '*~' tango-icon-theme-0.8.90/configure tango-icon-theme-0.8.90-new/configure
|
||||
--- tango-icon-theme-0.8.90/configure 2009-02-26 04:08:00.000000000 +0100
|
||||
+++ tango-icon-theme-0.8.90-new/configure 2013-08-15 17:54:24.167065399 +0200
|
||||
@@ -6554,7 +6554,7 @@
|
||||
enable_large_bitmaps=no
|
||||
fi
|
||||
if test "x$enable_large_bitmaps" = "xyes"; then
|
||||
- svgconvert_prog="rsvg"
|
||||
+ svgconvert_prog="rsvg-convert"
|
||||
else
|
||||
svgconvert_prog="ksvgtopng"
|
||||
fi
|
||||
diff -ru -x '*~' tango-icon-theme-0.8.90/svg2png.sh.in tango-icon-theme-0.8.90-new/svg2png.sh.in
|
||||
--- tango-icon-theme-0.8.90/svg2png.sh.in 2007-02-16 21:04:29.000000000 +0100
|
||||
+++ tango-icon-theme-0.8.90-new/svg2png.sh.in 2013-08-15 17:54:08.275084837 +0200
|
||||
@@ -9,12 +9,14 @@
|
||||
|
||||
ICONFILE=`basename ${3}`
|
||||
ICONNAME=`echo ${ICONFILE} | sed -e "s/.svg//"`
|
||||
-if test `basename $SVGCONVERT` = "rsvg"; then
|
||||
+if test `basename $SVGCONVERT` = "rsvg-convert"; then
|
||||
OPTIONS="-w ${1} -h ${1}"
|
||||
+ OUTPUT="-o"
|
||||
else
|
||||
OPTIONS="${1} ${1}"
|
||||
+ OUTPUT=""
|
||||
fi
|
||||
|
||||
echo "${SVGCONVERT} ${OPTIONS} ${3} ${2}/${ICONNAME}.png"
|
||||
-${SVGCONVERT} ${OPTIONS} ${3} ${2}/${ICONNAME}.png
|
||||
+${SVGCONVERT} ${OPTIONS} ${3} ${OUTPUT} ${2}/${ICONNAME}.png
|
||||
|
@ -30,6 +30,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
license = "LGPLv2+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
@ -1,19 +0,0 @@
|
||||
commit 48b92b74bc6fd270c33a726257e2879203cf5064
|
||||
Author: Yury G. Kudryashov [diff odt] <urkud.urkud@gmail.com>
|
||||
Date: Wed Mar 21 00:47:43 2012 +0400
|
||||
|
||||
Include SMOKE_QTCORE_INCLUDE_DIR
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 48020a1..2263a73 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -14,7 +14,7 @@ find_package(Smoke COMPONENTS QtCore QtGui QtNetwork Qt3Support QtDeclarative Qt
|
||||
QtOpenGl QtScript QtSql QtSvg QtTest QtUiTools QtWebKit QtXml QtXmlPatterns
|
||||
Phonon Qwt QSci QImageBlitz)
|
||||
|
||||
-include_directories(${SMOKE_INCLUDE_DIR} ${QT_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
+include_directories(${SMOKE_INCLUDE_DIR} ${SMOKE_QTCORE_INCLUDE_DIR} ${QT_INCLUDES} ${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake ${SMOKE_CMAKE_MODULE_DIR})
|
||||
include(MacroOptionalFindPackage)
|
||||
include(MacroOptionalAddBindings)
|
@ -1,118 +0,0 @@
|
||||
commit e702abfd16f610e773fb0310d8c6512991794c63
|
||||
Author: Yury G. Kudryashov [diff odt] <urkud.urkud@gmail.com>
|
||||
Date: Wed Mar 21 00:50:02 2012 +0400
|
||||
|
||||
Rewrite FindPerlMore.cmake
|
||||
|
||||
* Ask perl for expanded paths
|
||||
* Move execute_process to a macro
|
||||
* Add PERL_*_INSTALL_DIR variables that point to CMAKE_INSTALL_PREFIX
|
||||
|
||||
The last change makes it easy to install a file into CMAKE_INSTALL_PREFIX
|
||||
instead of perl install prefix.Add debug message
|
||||
|
||||
diff --git a/cmake/FindPerlMore.cmake b/cmake/FindPerlMore.cmake
|
||||
index 6412a47..cc8faf8 100644
|
||||
--- a/cmake/FindPerlMore.cmake
|
||||
+++ b/cmake/FindPerlMore.cmake
|
||||
@@ -5,54 +5,52 @@
|
||||
#
|
||||
# PERL_INCLUDE_PATH = path to where perl.h can be found
|
||||
|
||||
-if(PERL_INCLUDE_PATH)
|
||||
- # Already in cache, be silent
|
||||
- SET(PERL_HEADERS_FOUND TRUE)
|
||||
-endif (PERL_INCLUDE_PATH)
|
||||
-
|
||||
-IF(PERL_EXECUTABLE)
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{archlib}"
|
||||
- OUTPUT_VARIABLE PERL_ARCH_LIB_DIR)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{sitearch}"
|
||||
- OUTPUT_VARIABLE PERL_SITE_ARCH_DIR)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{vendorarch}"
|
||||
- OUTPUT_VARIABLE PERL_VENDOR_ARCH_DIR)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{sitelib}"
|
||||
- OUTPUT_VARIABLE PERL_SITE_LIB_DIR)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{vendorlib}"
|
||||
- OUTPUT_VARIABLE PERL_VENDOR_LIB_DIR)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{version}"
|
||||
- OUTPUT_VARIABLE PERL_VERSION)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{ccflags}"
|
||||
- OUTPUT_VARIABLE PERL_CXX_FLAGS)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{ccdlflags}"
|
||||
- OUTPUT_VARIABLE PERL_CCDL_FLAGS)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -MFile::Spec -e "print '-L' . File::Spec->catdir(\$Config{archlibexp}, 'CORE')"
|
||||
- OUTPUT_VARIABLE PERL_EXTRA_LIB_PATHS)
|
||||
-
|
||||
- EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{perllibs}"
|
||||
- OUTPUT_VARIABLE PERL_LIBS)
|
||||
-
|
||||
- FIND_PATH(PERL_INCLUDE_PATH
|
||||
- NAMES perl.h
|
||||
- PATHS ${PERL_ARCH_LIB_DIR}/CORE
|
||||
- )
|
||||
-
|
||||
- if(PERL_INCLUDE_PATH)
|
||||
- SET(PERL_HEADERS_FOUND TRUE)
|
||||
- endif (PERL_INCLUDE_PATH)
|
||||
-
|
||||
- MARK_AS_ADVANCED(
|
||||
- PERL_INCLUDE_PATH
|
||||
- )
|
||||
+if(FIND_PERLMORE_REQUIRED)
|
||||
+ find_package(Perl REQUIRED)
|
||||
+else()
|
||||
+ find_package(Perl)
|
||||
+endif()
|
||||
+
|
||||
+macro(_perl_get_config_var name output)
|
||||
+ execute_process(COMMAND ${PERL_EXECUTABLE} -MConfig -e "print \$Config{${name}}"
|
||||
+ OUTPUT_VARIABLE PERL_${output})
|
||||
+endmacro()
|
||||
+
|
||||
+macro(_perl_get_config_dir name)
|
||||
+ string(TOLOWER ${name} _tmp)
|
||||
+ string(REPLACE "_" "" _tmp ${_tmp})
|
||||
+ _perl_get_config_var(${_tmp}exp ${name}_DIR)
|
||||
+ string(REPLACE "${PERL_ROOT_DIR}" "${CMAKE_INSTALL_PREFIX}" PERL_${name}_INSTALL_DIR "${PERL_${name}_DIR}")
|
||||
+endmacro()
|
||||
+
|
||||
+if(PERL_EXECUTABLE)
|
||||
+ _perl_get_config_var(prefixexp ROOT_DIR)
|
||||
+
|
||||
+ _perl_get_config_dir(ARCH_LIB)
|
||||
+ _perl_get_config_dir(SITE_ARCH)
|
||||
+ _perl_get_config_dir(VENDOR_ARCH)
|
||||
+ _perl_get_config_dir(SITE_LIB)
|
||||
+ _perl_get_config_dir(VENDOR_LIB)
|
||||
+
|
||||
+ _perl_get_config_var(version VERSION)
|
||||
+ _perl_get_config_var(ccflags CXX_FLAGS)
|
||||
+ _perl_get_config_var(ccdlflags CCDL_FLAGS)
|
||||
+
|
||||
+ EXECUTE_PROCESS(COMMAND ${PERL_EXECUTABLE} -MConfig -MFile::Spec -e "print '-L' . File::Spec->catdir(\$Config{archlibexp}, 'CORE')"
|
||||
+ OUTPUT_VARIABLE PERL_EXTRA_LIB_PATHS)
|
||||
+
|
||||
+ _perl_get_config_var(perllibs LIBS)
|
||||
+
|
||||
+ FIND_PATH(PERL_INCLUDE_PATH
|
||||
+ NAMES perl.h
|
||||
+ HINTS ${PERL_ARCH_LIB_DIR}/CORE
|
||||
+ )
|
||||
+
|
||||
+ if(PERL_INCLUDE_PATH)
|
||||
+ SET(PERL_HEADERS_FOUND TRUE)
|
||||
+ endif (PERL_INCLUDE_PATH)
|
||||
+
|
||||
+ MARK_AS_ADVANCED(PERL_INCLUDE_PATH)
|
||||
ENDIF(PERL_EXECUTABLE)
|
||||
|
||||
IF(PERL_HEADERS_FOUND)
|
@ -1,454 +0,0 @@
|
||||
commit c78779fcaff587818ee37bec3ded5e0617625b95
|
||||
Author: Yury G. Kudryashov [diff odt] <urkud.urkud@gmail.com>
|
||||
Date: Wed Mar 21 01:01:27 2012 +0400
|
||||
|
||||
Install to PERL_SITE_ARCH_INSTALL_DIR
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 48020a1..16188df 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -36,7 +36,6 @@ macro_log_feature(Qwt5_Qt4_FOUND "Qwt5 for Qt4" "Qwt5 libraries for Qt4" "http:/
|
||||
add_definitions(-DDEBUG)
|
||||
|
||||
include (FindPerlMore)
|
||||
-set(CUSTOM_PERL_SITE_ARCH_DIR ${PERL_SITE_ARCH_DIR} CACHE DIR "Custom installation directory for perl binary extension")
|
||||
|
||||
# the RPATH to be used when installing, but only if it's not a system directory
|
||||
GET_FILENAME_COMPONENT(SMOKE_LIB_DIR ${SMOKE_BASE_LIBRARY} PATH)
|
||||
diff --git a/INSTALL b/INSTALL
|
||||
index d19f97e..97cc9f1 100644
|
||||
--- a/INSTALL
|
||||
+++ b/INSTALL
|
||||
@@ -36,7 +36,6 @@ ccmake step.
|
||||
The standard options are:
|
||||
CMAKE_BUILD_TYPE = The type of build ('Debug', 'Release', etc)
|
||||
CMAKE_INSTALL_PREFIX = The location for any executables ( e.g. puic4 )
|
||||
- CUSTOM_PERL_SITE_ARCH_DIR = The location for the perl modules themselves.
|
||||
QT_QMAKE_EXECUTABLE = The path to your system's qmake.
|
||||
|
||||
cmake looks in your path for a qmake executable. If it can't find it, it will
|
||||
diff --git a/Makefile.PL b/Makefile.PL
|
||||
index df9a13c..31dd912 100755
|
||||
--- a/Makefile.PL
|
||||
+++ b/Makefile.PL
|
||||
@@ -3,7 +3,7 @@
|
||||
use strict;
|
||||
use Config;
|
||||
|
||||
-my ($prefix, $sitearch, $qmake) = ($Config{prefix}, $Config{sitearch});
|
||||
+my ($prefix, $qmake) = ($Config{prefix});
|
||||
my @cmakeArgs;
|
||||
foreach my $arg (@ARGV) {
|
||||
my $key = $arg;
|
||||
@@ -12,7 +12,6 @@ foreach my $arg (@ARGV) {
|
||||
$value =~ s/^[^=]*=//g;
|
||||
if ($key eq 'PREFIX' or $key eq 'INSTALL_BASE') {
|
||||
$prefix = $value;
|
||||
- $sitearch = "$prefix";
|
||||
}
|
||||
elsif ($key eq 'QMAKE') {
|
||||
$qmake = $value;
|
||||
@@ -34,7 +33,6 @@ if($^O =~ /win/i){
|
||||
}
|
||||
push @args, "-DCMAKE_INSTALL_PREFIX=$prefix" if $prefix;
|
||||
push @args, "-DQT_QMAKE_EXECUTABLE=$qmake" if $qmake;
|
||||
-push @args, "-DCUSTOM_PERL_SITE_ARCH_DIR=$sitearch" if $sitearch;
|
||||
push @args, @cmakeArgs;
|
||||
|
||||
if ( eval "require Alien::SmokeQt" ) {
|
||||
diff --git a/phonon/lib/CMakeLists.txt b/phonon/lib/CMakeLists.txt
|
||||
index f2857c3..78674ea 100644
|
||||
--- a/phonon/lib/CMakeLists.txt
|
||||
+++ b/phonon/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(phononpm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/Phonon.pm ${CMAKE_BINARY_DIR}/blib/lib/Phonon.pm)
|
||||
-install(FILES Phonon.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES Phonon.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/phonon/src/CMakeLists.txt b/phonon/src/CMakeLists.txt
|
||||
index a04db11..9933dfd 100644
|
||||
--- a/phonon/src/CMakeLists.txt
|
||||
+++ b/phonon/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_phonon
|
||||
set_target_properties(perl_phonon PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_phonon PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_phonon DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_phonon DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qimageblitz/lib/CMakeLists.txt b/qimageblitz/lib/CMakeLists.txt
|
||||
index 0809ba8..22fc1c0 100644
|
||||
--- a/qimageblitz/lib/CMakeLists.txt
|
||||
+++ b/qimageblitz/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qimageblitzpm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QImageBlitz.pm ${CMAKE_BINARY_DIR}/blib/lib/QImageBlitz.pm)
|
||||
-install(FILES QImageBlitz.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QImageBlitz.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qimageblitz/src/CMakeLists.txt b/qimageblitz/src/CMakeLists.txt
|
||||
index 02ef494..4f02c1b 100644
|
||||
--- a/qimageblitz/src/CMakeLists.txt
|
||||
+++ b/qimageblitz/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qimageblitz
|
||||
set_target_properties(perl_qimageblitz PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qimageblitz PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qimageblitz DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qimageblitz DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qsci/lib/CMakeLists.txt b/qsci/lib/CMakeLists.txt
|
||||
index 63b451f..d22869f 100644
|
||||
--- a/qsci/lib/CMakeLists.txt
|
||||
+++ b/qsci/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qscipm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/Qsci.pm ${CMAKE_BINARY_DIR}/blib/lib/Qsci.pm)
|
||||
-install(FILES Qsci.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES Qsci.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qsci/src/CMakeLists.txt b/qsci/src/CMakeLists.txt
|
||||
index 8c1659b..bdcb5a8 100644
|
||||
--- a/qsci/src/CMakeLists.txt
|
||||
+++ b/qsci/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qsci
|
||||
set_target_properties(perl_qsci PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qsci PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qsci DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qsci DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qt3support/lib/CMakeLists.txt b/qt3support/lib/CMakeLists.txt
|
||||
index 2f04cfa..dda5afa 100644
|
||||
--- a/qt3support/lib/CMakeLists.txt
|
||||
+++ b/qt3support/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qt3support4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/Qt3Support4.pm ${CMAKE_BINARY_DIR}/blib/lib/Qt3Support4.pm)
|
||||
-install(FILES Qt3Support4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES Qt3Support4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qt3support/src/CMakeLists.txt b/qt3support/src/CMakeLists.txt
|
||||
index b24532e..bed99aa 100644
|
||||
--- a/qt3support/src/CMakeLists.txt
|
||||
+++ b/qt3support/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qt3support4
|
||||
set_target_properties(perl_qt3support4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qt3support4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qt3support4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qt3support4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtcore/lib/CMakeLists.txt b/qtcore/lib/CMakeLists.txt
|
||||
index ef07d10..1d78196 100644
|
||||
--- a/qtcore/lib/CMakeLists.txt
|
||||
+++ b/qtcore/lib/CMakeLists.txt
|
||||
@@ -1,3 +1,3 @@
|
||||
add_subdirectory( QtCore4 )
|
||||
add_custom_target(perlqtcore4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtCore4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtCore4.pm)
|
||||
-install( FILES QtCore4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR} )
|
||||
+install( FILES QtCore4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR} )
|
||||
diff --git a/qtcore/lib/QtCore4/CMakeLists.txt b/qtcore/lib/QtCore4/CMakeLists.txt
|
||||
index 44c7893..06aef20 100644
|
||||
--- a/qtcore/lib/QtCore4/CMakeLists.txt
|
||||
+++ b/qtcore/lib/QtCore4/CMakeLists.txt
|
||||
@@ -1,3 +1,3 @@
|
||||
-install( FILES signals.pm slots.pm isa.pm debug.pm classinfo.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/QtCore4 )
|
||||
+install( FILES signals.pm slots.pm isa.pm debug.pm classinfo.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/QtCore4 )
|
||||
add_custom_target(perlqt4pmlibmkdir ALL ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/blib/lib/QtCore4)
|
||||
add_custom_target(perlqt4pmlibsubdir ALL ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_BINARY_DIR}/blib/lib/QtCore4)
|
||||
diff --git a/qtcore/src/CMakeLists.txt b/qtcore/src/CMakeLists.txt
|
||||
index 3910636..b5e645c 100644
|
||||
--- a/qtcore/src/CMakeLists.txt
|
||||
+++ b/qtcore/src/CMakeLists.txt
|
||||
@@ -53,10 +53,10 @@ target_link_libraries(perlqtcore4
|
||||
set_target_properties(perlqtcore4 PROPERTIES
|
||||
OUTPUT_NAME ${libraryName}
|
||||
PREFIX ""
|
||||
- INSTALL_NAME_DIR ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/
|
||||
+ INSTALL_NAME_DIR ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/
|
||||
)
|
||||
|
||||
-install(TARGETS perlqtcore4 EXPORT PerlQtExport DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perlqtcore4 EXPORT PerlQtExport DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
install(FILES binding.h handlers.h listclass_macros.h marshall_basetypes.h marshall_complex.h
|
||||
marshall.h marshall_macros.h marshall_primitives.h marshall_types.h perlqt.h ppport.h
|
||||
QtCore4.h smokehelp.h smokeperl.h util.h
|
||||
diff --git a/qtdbus/lib/CMakeLists.txt b/qtdbus/lib/CMakeLists.txt
|
||||
index d03a672..a60d603 100644
|
||||
--- a/qtdbus/lib/CMakeLists.txt
|
||||
+++ b/qtdbus/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtdbus4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtDBus4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtDBus4.pm)
|
||||
-install(FILES QtDBus4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtDBus4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtdbus/src/CMakeLists.txt b/qtdbus/src/CMakeLists.txt
|
||||
index 9aa05a0..5786ea2 100644
|
||||
--- a/qtdbus/src/CMakeLists.txt
|
||||
+++ b/qtdbus/src/CMakeLists.txt
|
||||
@@ -31,4 +31,4 @@ target_link_libraries(perl_qtdbus4
|
||||
set_target_properties(perl_qtdbus4 PROPERTIES OUTPUT_NAME "QtDBus4")
|
||||
set_target_properties(perl_qtdbus4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtdbus4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/QtDBus4/)
|
||||
+install(TARGETS perl_qtdbus4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/QtDBus4/)
|
||||
diff --git a/qtdeclarative/lib/CMakeLists.txt b/qtdeclarative/lib/CMakeLists.txt
|
||||
index e8d2847..b458858 100644
|
||||
--- a/qtdeclarative/lib/CMakeLists.txt
|
||||
+++ b/qtdeclarative/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtdeclarative4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtDeclarative4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtDeclarative4.pm)
|
||||
-install(FILES QtDeclarative4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtDeclarative4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtdeclarative/src/CMakeLists.txt b/qtdeclarative/src/CMakeLists.txt
|
||||
index 1662167..ec2a8fc 100644
|
||||
--- a/qtdeclarative/src/CMakeLists.txt
|
||||
+++ b/qtdeclarative/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtdeclarative4
|
||||
set_target_properties(perl_qtdeclarative4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtdeclarative4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtdeclarative4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtdeclarative4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtgui/lib/CMakeLists.txt b/qtgui/lib/CMakeLists.txt
|
||||
index 82626c8..e62a4ac 100644
|
||||
--- a/qtgui/lib/CMakeLists.txt
|
||||
+++ b/qtgui/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtgui4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtGui4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtGui4.pm)
|
||||
-install(FILES QtGui4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtGui4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtgui/src/CMakeLists.txt b/qtgui/src/CMakeLists.txt
|
||||
index 4cc8b36..44041b6 100644
|
||||
--- a/qtgui/src/CMakeLists.txt
|
||||
+++ b/qtgui/src/CMakeLists.txt
|
||||
@@ -38,4 +38,4 @@ target_link_libraries(perl_qtgui4
|
||||
set_target_properties(perl_qtgui4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtgui4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtgui4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtgui4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qthelp/lib/CMakeLists.txt b/qthelp/lib/CMakeLists.txt
|
||||
index dcf5ebe..da817d4 100644
|
||||
--- a/qthelp/lib/CMakeLists.txt
|
||||
+++ b/qthelp/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qthelp4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtHelp4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtHelp4.pm)
|
||||
-install(FILES QtHelp4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtHelp4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qthelp/src/CMakeLists.txt b/qthelp/src/CMakeLists.txt
|
||||
index c00359d..689cb29 100644
|
||||
--- a/qthelp/src/CMakeLists.txt
|
||||
+++ b/qthelp/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qthelp4
|
||||
set_target_properties(perl_qthelp4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qthelp4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qthelp4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qthelp4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtmultimedia/lib/CMakeLists.txt b/qtmultimedia/lib/CMakeLists.txt
|
||||
index e55f697..5384539 100644
|
||||
--- a/qtmultimedia/lib/CMakeLists.txt
|
||||
+++ b/qtmultimedia/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtmultimedia4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtMultimedia4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtMultimedia4.pm)
|
||||
-install(FILES QtMultimedia4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtMultimedia4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtmultimedia/src/CMakeLists.txt b/qtmultimedia/src/CMakeLists.txt
|
||||
index 0728aba..df8e552 100644
|
||||
--- a/qtmultimedia/src/CMakeLists.txt
|
||||
+++ b/qtmultimedia/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtmultimedia4
|
||||
set_target_properties(perl_qtmultimedia4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtmultimedia4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtmultimedia4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtmultimedia4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtnetwork/lib/CMakeLists.txt b/qtnetwork/lib/CMakeLists.txt
|
||||
index 12cd5dd..d1fb0e6 100644
|
||||
--- a/qtnetwork/lib/CMakeLists.txt
|
||||
+++ b/qtnetwork/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtnetwork4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtNetwork4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtNetwork4.pm)
|
||||
-install(FILES QtNetwork4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtNetwork4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtnetwork/src/CMakeLists.txt b/qtnetwork/src/CMakeLists.txt
|
||||
index caf8327..0994d57 100644
|
||||
--- a/qtnetwork/src/CMakeLists.txt
|
||||
+++ b/qtnetwork/src/CMakeLists.txt
|
||||
@@ -39,4 +39,4 @@ target_link_libraries(perl_qtnetwork4
|
||||
set_target_properties(perl_qtnetwork4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtnetwork4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtnetwork4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtnetwork4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtopengl/lib/CMakeLists.txt b/qtopengl/lib/CMakeLists.txt
|
||||
index f3b5640..d8dc9e4 100644
|
||||
--- a/qtopengl/lib/CMakeLists.txt
|
||||
+++ b/qtopengl/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtopengl4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtOpenGL4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtOpenGL4.pm)
|
||||
-install(FILES QtOpenGL4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtOpenGL4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtopengl/src/CMakeLists.txt b/qtopengl/src/CMakeLists.txt
|
||||
index 20493a9..777af89 100644
|
||||
--- a/qtopengl/src/CMakeLists.txt
|
||||
+++ b/qtopengl/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtopengl4
|
||||
set_target_properties(perl_qtopengl4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtopengl4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtopengl4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtopengl4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtscript/lib/CMakeLists.txt b/qtscript/lib/CMakeLists.txt
|
||||
index d21dbe5..320ff93 100644
|
||||
--- a/qtscript/lib/CMakeLists.txt
|
||||
+++ b/qtscript/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtscript4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtScript4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtScript4.pm)
|
||||
-install(FILES QtScript4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtScript4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtscript/src/CMakeLists.txt b/qtscript/src/CMakeLists.txt
|
||||
index dd395be..6ff47d8 100644
|
||||
--- a/qtscript/src/CMakeLists.txt
|
||||
+++ b/qtscript/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtscript4
|
||||
set_target_properties(perl_qtscript4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtscript4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtscript4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtscript4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtsql/lib/CMakeLists.txt b/qtsql/lib/CMakeLists.txt
|
||||
index 59336d3..d9dd4d5 100644
|
||||
--- a/qtsql/lib/CMakeLists.txt
|
||||
+++ b/qtsql/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtsql4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtSql4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtSql4.pm)
|
||||
-install(FILES QtSql4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtSql4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtsql/src/CMakeLists.txt b/qtsql/src/CMakeLists.txt
|
||||
index 3ec2028..59096ba 100644
|
||||
--- a/qtsql/src/CMakeLists.txt
|
||||
+++ b/qtsql/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtsql4
|
||||
set_target_properties(perl_qtsql4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtsql4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtsql4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtsql4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtsvg/lib/CMakeLists.txt b/qtsvg/lib/CMakeLists.txt
|
||||
index 33f6deb..bf1dc1f 100644
|
||||
--- a/qtsvg/lib/CMakeLists.txt
|
||||
+++ b/qtsvg/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtsvg4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtSvg4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtSvg4.pm)
|
||||
-install(FILES QtSvg4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtSvg4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtsvg/src/CMakeLists.txt b/qtsvg/src/CMakeLists.txt
|
||||
index 11eccd2..449bf0f 100644
|
||||
--- a/qtsvg/src/CMakeLists.txt
|
||||
+++ b/qtsvg/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtsvg4
|
||||
set_target_properties(perl_qtsvg4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtsvg4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtsvg4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtsvg4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qttest/lib/CMakeLists.txt b/qttest/lib/CMakeLists.txt
|
||||
index 3bfa78c..5a8d8da 100644
|
||||
--- a/qttest/lib/CMakeLists.txt
|
||||
+++ b/qttest/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qttest4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtTest4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtTest4.pm)
|
||||
-install(FILES QtTest4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtTest4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qttest/src/CMakeLists.txt b/qttest/src/CMakeLists.txt
|
||||
index 5492e55..d4662b1 100644
|
||||
--- a/qttest/src/CMakeLists.txt
|
||||
+++ b/qttest/src/CMakeLists.txt
|
||||
@@ -38,4 +38,4 @@ target_link_libraries(perl_qttest4
|
||||
set_target_properties(perl_qttest4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qttest4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qttest4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qttest4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtuitools/lib/CMakeLists.txt b/qtuitools/lib/CMakeLists.txt
|
||||
index 119e40e..3a5f472 100644
|
||||
--- a/qtuitools/lib/CMakeLists.txt
|
||||
+++ b/qtuitools/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtuitools4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtUiTools4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtUiTools4.pm)
|
||||
-install(FILES QtUiTools4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtUiTools4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtuitools/src/CMakeLists.txt b/qtuitools/src/CMakeLists.txt
|
||||
index a8ae4a2..ecc079f 100644
|
||||
--- a/qtuitools/src/CMakeLists.txt
|
||||
+++ b/qtuitools/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtuitools4
|
||||
set_target_properties(perl_qtuitools4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtuitools4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtuitools4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtuitools4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtwebkit/lib/CMakeLists.txt b/qtwebkit/lib/CMakeLists.txt
|
||||
index a02f7ee..3846227 100644
|
||||
--- a/qtwebkit/lib/CMakeLists.txt
|
||||
+++ b/qtwebkit/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtwebkit4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtWebKit4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtWebKit4.pm)
|
||||
-install(FILES QtWebKit4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtWebKit4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtwebkit/src/CMakeLists.txt b/qtwebkit/src/CMakeLists.txt
|
||||
index a6e00f8..dbebc44 100644
|
||||
--- a/qtwebkit/src/CMakeLists.txt
|
||||
+++ b/qtwebkit/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtwebkit4
|
||||
set_target_properties(perl_qtwebkit4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtwebkit4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtwebkit4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtwebkit4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtxml/lib/CMakeLists.txt b/qtxml/lib/CMakeLists.txt
|
||||
index 5505bc4..7db743c 100644
|
||||
--- a/qtxml/lib/CMakeLists.txt
|
||||
+++ b/qtxml/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtxml4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtXml4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtXml4.pm)
|
||||
-install(FILES QtXml4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtXml4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtxml/src/CMakeLists.txt b/qtxml/src/CMakeLists.txt
|
||||
index 018508c..a351609 100644
|
||||
--- a/qtxml/src/CMakeLists.txt
|
||||
+++ b/qtxml/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtxml4
|
||||
set_target_properties(perl_qtxml4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtxml4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtxml4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtxml4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qtxmlpatterns/lib/CMakeLists.txt b/qtxmlpatterns/lib/CMakeLists.txt
|
||||
index a35f3df..3d86103 100644
|
||||
--- a/qtxmlpatterns/lib/CMakeLists.txt
|
||||
+++ b/qtxmlpatterns/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qtxmlpatterns4pm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/QtXmlPatterns4.pm ${CMAKE_BINARY_DIR}/blib/lib/QtXmlPatterns4.pm)
|
||||
-install(FILES QtXmlPatterns4.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES QtXmlPatterns4.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qtxmlpatterns/src/CMakeLists.txt b/qtxmlpatterns/src/CMakeLists.txt
|
||||
index 9970a98..563e922 100644
|
||||
--- a/qtxmlpatterns/src/CMakeLists.txt
|
||||
+++ b/qtxmlpatterns/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qtxmlpatterns4
|
||||
set_target_properties(perl_qtxmlpatterns4 PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qtxmlpatterns4 PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qtxmlpatterns4 DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qtxmlpatterns4 DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
||||
diff --git a/qwt/lib/CMakeLists.txt b/qwt/lib/CMakeLists.txt
|
||||
index 0013c4d..d67ffbf 100644
|
||||
--- a/qwt/lib/CMakeLists.txt
|
||||
+++ b/qwt/lib/CMakeLists.txt
|
||||
@@ -1,2 +1,2 @@
|
||||
add_custom_target(qwtpm ALL ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/Qwt.pm ${CMAKE_BINARY_DIR}/blib/lib/Qwt.pm)
|
||||
-install(FILES Qwt.pm DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/)
|
||||
+install(FILES Qwt.pm DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/)
|
||||
diff --git a/qwt/src/CMakeLists.txt b/qwt/src/CMakeLists.txt
|
||||
index 869d818..b644e80 100644
|
||||
--- a/qwt/src/CMakeLists.txt
|
||||
+++ b/qwt/src/CMakeLists.txt
|
||||
@@ -37,4 +37,4 @@ target_link_libraries(perl_qwt
|
||||
set_target_properties(perl_qwt PROPERTIES OUTPUT_NAME ${libraryName})
|
||||
set_target_properties(perl_qwt PROPERTIES PREFIX "")
|
||||
|
||||
-install(TARGETS perl_qwt DESTINATION ${CUSTOM_PERL_SITE_ARCH_DIR}/auto/${libraryName}/)
|
||||
+install(TARGETS perl_qwt DESTINATION ${PERL_SITE_ARCH_INSTALL_DIR}/auto/${libraryName}/)
|
@ -5,12 +5,6 @@ kde {
|
||||
buildInputs = [ smokeqt perl ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
patches =
|
||||
# The order is important
|
||||
[ ./perlqt-include-smokeqt.patch ./perlqt-rewrite-FindPerlMore.patch
|
||||
./perlqt-use-site-arch-install-dir.patch
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Perl bindings for Qt library";
|
||||
};
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 33078b4..1a6ad2e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -5,7 +5,7 @@ set(COMPILE_RUBY FALSE CACHE INTERNAL "")
|
||||
find_package(Ruby REQUIRED)
|
||||
find_package(Qt4 REQUIRED)
|
||||
find_package(Smoke COMPONENTS QtCore QtGui QtXml QtOpenGl QtSql QtNetwork QtDbus QtSvg Phonon QSci QtDeclarative QtScript QtWebkit QtUiTools QtTest Qwt)
|
||||
-include_directories(${SMOKE_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/src ${QT_INCLUDES})
|
||||
+include_directories(${SMOKE_INCLUDE_DIR} ${SMOKE_QTCORE_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/src ${QT_INCLUDES})
|
||||
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${SMOKE_CMAKE_MODULE_DIR})
|
||||
include(MacroOptionalFindPackage)
|
@ -5,9 +5,7 @@ kde {
|
||||
buildInputs = [ smokeqt ruby ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
# The second patch is not ready for upstream submmission. I should add an
|
||||
# option() instead.
|
||||
patches = [ ./qtruby-include-smokeqt.patch ./qtruby-install-prefix.patch ];
|
||||
patches = [ ./qtruby-install-prefix.patch ];
|
||||
|
||||
cmakeFlags="-DRUBY_ROOT_DIR=${ruby}";
|
||||
|
||||
|
@ -0,0 +1,14 @@
|
||||
--- 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})
|
||||
|
@ -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)
|
@ -1,46 +0,0 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 79945c4..a244d0f 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -32,10 +32,6 @@ set(generator_SRC
|
||||
type.cpp
|
||||
)
|
||||
|
||||
-# force RPATH so that the binary is usable from within the build tree
|
||||
-set (CMAKE_SKIP_BUILD_RPATH FALSE)
|
||||
-set (CMAKE_SKIP_RPATH FALSE)
|
||||
-
|
||||
configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/config.h.in config.h @ONLY )
|
||||
|
||||
add_executable(smokegen ${generator_SRC})
|
||||
diff --git a/cmake/SmokeConfig.cmake.in b/cmake/SmokeConfig.cmake.in
|
||||
index 947315c..de8d66c 100644
|
||||
--- a/cmake/SmokeConfig.cmake.in
|
||||
+++ b/cmake/SmokeConfig.cmake.in
|
||||
@@ -44,21 +44,19 @@ macro (find_smoke_component name)
|
||||
set (SMOKE_${uppercase}_FOUND FALSE CACHE INTERNAL "")
|
||||
|
||||
find_path(SMOKE_${uppercase}_INCLUDE_DIR
|
||||
- ${lowercase}_smoke.h
|
||||
- PATH ${SMOKE_INCLUDE_DIR}
|
||||
- NO_DEFAULT_PATH
|
||||
+ ${lowercase}_smoke.h
|
||||
+ HINTS ${SMOKE_INCLUDE_DIR}
|
||||
+ PATH_SUFFIXES smoke
|
||||
)
|
||||
if(WIN32)
|
||||
# DLLs are in the bin directory.
|
||||
find_library(SMOKE_${uppercase}_LIBRARY
|
||||
smoke${lowercase}
|
||||
- PATHS "@CMAKE_INSTALL_PREFIX@/bin"
|
||||
- NO_DEFAULT_PATH)
|
||||
+ PATHS "@CMAKE_INSTALL_PREFIX@/bin")
|
||||
else(WIN32)
|
||||
find_library(SMOKE_${uppercase}_LIBRARY
|
||||
smoke${lowercase}
|
||||
- PATHS "@SMOKE_LIBRARY_PREFIX@"
|
||||
- NO_DEFAULT_PATH)
|
||||
+ PATHS "@SMOKE_LIBRARY_PREFIX@")
|
||||
endif(WIN32)
|
||||
|
||||
if (NOT SMOKE_${uppercase}_INCLUDE_DIR OR NOT SMOKE_${uppercase}_LIBRARY)
|
@ -4,7 +4,7 @@ kde {
|
||||
buildInputs = [ qt4 ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
patches = [ ./smokegen-nix.patch ];
|
||||
patches = [ ./smokegen-SmokeConfig.cmake.in-nix.patch ./smokegen-CMakeLists.txt-nix.patch ];
|
||||
|
||||
meta = {
|
||||
description = "C++ parser used to generate language bindings for Qt/KDE";
|
||||
|
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;}
|
||||
];
|
||||
}
|
127
pkgs/desktops/kde-4.11/kde-package/default.nix
Normal file
127
pkgs/desktops/kde-4.11/kde-package/default.nix
Normal file
@ -0,0 +1,127 @@
|
||||
{ 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;
|
||||
inherit (qt4.meta) platforms 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";
|
||||
};
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user