Copy kde-4.7->kde-4.8

svn path=/nixpkgs/trunk/; revision=31380
This commit is contained in:
Yury G. Kudryashov 2012-01-06 21:50:10 +00:00
parent 11f55d273b
commit b9c72433cc
146 changed files with 2806 additions and 0 deletions

View File

@ -0,0 +1,56 @@
{ callPackage, callPackageOrig, stdenv, qt47 }:
let
release = "4.7.4";
# Need callPackageOrig to avoid infinite cycle
kde = callPackageOrig ./kde-package {
inherit release ignoreList extraSubpkgs callPackage;
};
# The list of igored individual modules
ignoreList = {
# kdeadmin/strigi-analyzer has no real code
kdeadmin = [ "strigi-analyzer" ];
# kdesdk/kioslave is splitted into kioslave-svn and kioslave-git
kdesdk = [ "kioslave" ];
# Most of kdebindings do not compile due to a bug in the buildsystem
kdebindings = [ "kimono" "korundum" "kross-interpreters" "perlkde" "perlqt"
"qtruby" "qyoto" "smokekde" ];
};
# Extra subpackages in the manifest format
extraSubpkgs = {
kdesdk =
[
{
name = "kioslave-svn";
sane = "kioslave_svn";
subdir = "kioslave";
}
{
name = "kioslave-perldoc";
sane = "kioslave_perldoc";
subdir = "kioslave";
}
];
};
in
kde.modules // kde.individual //
{
inherit (kde) manifest modules individual splittedModuleList;
akonadi = callPackage ./support/akonadi { };
qt4 = qt47;
kdebase_workspace = kde.modules.kde_workspace;
inherit release;
full = stdenv.lib.attrValues kde.modules;
l10n = callPackage ./l10n { inherit release; };
}

View 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)

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Kate, the KDE Advanced Text Editor, as well as KWrite";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, shared_desktop_ontologies, glib, htmlTidy }:
kde {
buildInputs = [ kdelibs shared_desktop_ontologies glib htmlTidy ];
meta = {
description = "Base KDE applications, including the Dolphin file manager and Konqueror web browser";
license = "GPLv2";
};
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Konsole, the KDE terminal emulator";
license = "GPLv2";
};
}

View File

@ -0,0 +1,273 @@
{stable=true;
hashes=builtins.listToAttrs[
{name="blinken";value="16daqg0bbkci305qrcrvpv66cvshjfni5rf5gakblcn8qqlmwsi6";}
{name="cantor";value="0wgm0j9bl632bk94fi0hzp5s392xpyz0d524ahhi8q33bqkl06ra";}
{name="gwenview";value="1dhpb7q0myr9rl4bjsajq0kslvhxcddv1ddplqad63j619wk8gfj";}
{name="kalgebra";value="04g07syrk14kpr15f9kgfkkmkjgdvcwmrykmy56jwm8sfb6ncli9";}
{name="kalzium";value="0k25cinwp6yjp8q9irmwcb1ahf98ck3mw706jfpybpa7ds8ym5z1";}
{name="kamera";value="0airyhxzpnvpzag4w0q1h0pc1lwwplglki5max1mj5miaxg93r34";}
{name="kanagram";value="0271aq39dbs92rhc83m19pmm7rx5c573k27931sf3j3pw3x2q0nm";}
{name="kate";value="0pfddi7g99apqipnqv62i86ld11vl4igqv65xprqqf0a5a1413my";}
{name="kbruch";value="1dhhk55d3bs474l2w0xma89pq74gklq5faskrvd1lvvl853z3zib";}
{name="kcolorchooser";value="1gb861f1fy0fvmkg30l1gza998gyhjwj4gcyyv266wp5v7d01xda";}
{name="kdeaccessibility";value="12mvs1hy5ygnbbz14hg2fvs7mpvlamkfbz7g7kcvzp0fkjb524h3";}
{name="kdeadmin";value="16y73zpdgh72cf8yz8zn246i4d8nh4k6mbz9cbc4ggjblgjcn3pr";}
{name="kdeartwork";value="0vfz9mzpm8yy6fysmhcavd8l1fjcld36p0x9qymi4l072b7dkgyv";}
{name="kde-baseapps";value="075m3nn407di2mx8w5lv7va3ij0yd7yb575wmf05vfqr01xyhn8a";}
{name="kdegames";value="0c42wyk2mq3hz99zg4f9i2dbc9vyaa5l2301j0859pwvnp9zgafz";}
{name="kdegraphics-strigi-analyzer";value="1j7chf76mlwrq7z1dgm525f5srx1h30czm8dnw2f0yxfn18lvnl9";}
{name="kdegraphics-thumbnailers";value="1ny51jc8fm4gldrlmrfmslpfpn5pahlyws3jzaj6nkd3hdw3krnr";}
{name="kdelibs";value="0fdgl8qvpyb9pmb26b3yjfm9ib75mxayw75qm5kyzncmrvn427gy";}
{name="kdemultimedia";value="0a0vp1pq159lzgd0x817p9mf6al99w1dwnlyhs9zfpspgz8nw8y1";}
{name="kdenetwork";value="0zwqbyl5vw5nnzlilc4khlisjj1xjpziw9ahgvw8cbszscmv68b5";}
{name="kdepim";value="0s38qxks58dmwyi3fnvprpq5q9kr17v31n808j33d50rw62y398p";}
{name="kdepimlibs";value="0rpfkc0pxvfkaz8pb3yx21dm3ixw8gfrcdny1aqzbn3f7f8abhip";}
{name="kdepim-runtime";value="14p5bxrhqjnmz303hxlrdj4vxlmiv8j04qni33ljbgib0hnllva3";}
{name="kdeplasma-addons";value="068m2jpyprrscyk3f4nk9qix5smka5pq59sdwdan9996sh256py5";}
{name="kde-runtime";value="06nxv46s7ff5n3kmzq3mdc16b0ck0411lj0gf3scdyd85iqx06wd";}
{name="kdesdk";value="0v3gwml9rvqz96q8jk8myqvl6gjw3q37js2jn24yawli3sjjw552";}
{name="kdetoys";value="17fk1bmabgj9nz0m4j248f48m2xfscql43wmzkqnr7y6zghqfhfh";}
{name="kdeutils";value="0s1whgg59xnc6ny609s3vjzvpxak02f2y6v7zw72i808k03aal5v";}
{name="kde-wallpapers";value="133amrhhca4xi0gbmajcc6rw1c1ai5x29265fqp45588kyycbgvz";}
{name="kdewebdev";value="1nqp2j09nr3jhmfvjydwp86jz4nn5pxwcfi6ww9krfd1hyg4aqjc";}
{name="kde-workspace";value="1dj39nndpws9grinz287ypn5lj3zjh96gl4zhl7kp6z8f9mdqp0p";}
{name="kgamma";value="05vk5b40w0i75nx5lqn9qax10m604jkjxyxynm0i0b8gyksv78h9";}
{name="kgeography";value="1a49zqz8zb9kn7m4m5fsm5ibvn9m5pzq89isrd1yy9q7zlv3qfqc";}
{name="khangman";value="1bmzrc5jzbw9q9gxw9pzad37zj4h89rh3k4smycif6ky2jy72x6d";}
{name="kig";value="1s0mwnj2riam811l0nfk08ja43f0nibqaqchy2ff7627w22yr5m0";}
{name="kimono";value="1cbbchdj4x5sn6ldkmzrx5alhvgzgbprvyjpg1rcsfnyc6whp2p9";}
{name="kiten";value="13bcw1r39h0g75vwbyrsh8sb27vmqsbrmx2ay621ily4iy3jn5az";}
{name="klettres";value="1wczh41wq3w5ccy2yi4pqr3zk4v0wiy4slcn54a8bfi1b5s1267j";}
{name="kmplot";value="0dx5gnya008q7smf74fvygwfsa0hc2ajiznvdmf4qmm3s5bxpbrr";}
{name="kolourpaint";value="14zrh321av5f5i8a4bjj7xb1sqfcphzhc5qyg2w54cywaiswy8nx";}
{name="konsole";value="1wq2k8g6in86x72jzhz4ar8ba5lyjp0pia969wxa6b1vsj148ipy";}
{name="korundum";value="024daf05c9l83whcy0cfgxb3s24ci038kg1pnxlzz4z9sk39432r";}
{name="kross-interpreters";value="1kkg4w3id2g7nr89kjdgyy9hik75dnxlm6jmn3g8ilqdvw5ip1qx";}
{name="kruler";value="0wd805w2k1ask9l44z50jcd033zkbaxs3xd3w21qrwdvs52x8m41";}
{name="ksaneplugin";value="1rxpl6f5b0ld5ap6aag892rjd7r74szbzd6lqw8q8gzm6jmk34gq";}
{name="ksnapshot";value="0dn99b6qr4b4hc3c88m26axmb3jim836ig3mfgqpban9r7k15xci";}
{name="kstars";value="0zrw4rlfm5cwfbj884zn50sdp90zjg7inl9k2zj450dpvh7i6q3q";}
{name="ktouch";value="0vbzr69jbci058bcphf9i3fh40hwgrmcyj1n4gj90gwr4x2ha5hp";}
{name="kturtle";value="0mhg2b1jbywafnj93274yimvnaxivycqj98pvld3hppaq32f7vzp";}
{name="kwordquiz";value="0kfa83a91w8z39r55456i1vn85pb4dqrbav40sx5fhjb03iyrsdk";}
{name="libkdcraw";value="14y8ni9w441zx1k2fhcbnzpa1vcmpvk58mjdqrqvn8n630cy0hzn";}
{name="libkdeedu";value="1ga88g5s8mq1m8xwmhl09ylrnl8sw639cpah6wi8wwnqslj2zj0a";}
{name="libkexiv2";value="0w8mpjsiw2sr8ya7ffnvnprbsbi8ngpxrcxylgw617zcxpxky6ha";}
{name="libkipi";value="01fivyyg5jhnkn9r7bh96ygxvnh7a99h11wh228wk8nzx3i63lsc";}
{name="libksane";value="0bb26ajfmknxf4hdy513zx1q9j0hzrs0dr98vxmrwfxxbza67fbm";}
{name="marble";value="02yljp6lmqs753zkqpaz58zlrjjxydx9pizppzwjvjx8xk63b9z6";}
{name="mobipocket";value="0m08j4cdj2sr1xw3hi0zy651c2ap0q8y9s913r6ccm0f292n0856";}
{name="okular";value="03x1fgdnz0s17wj3pkdp77rqrbbb6ssgq0ly493pbi1x4lx768ib";}
{name="oxygen-icons";value="0ayx0y2swdcgz4wd1idkhm3gbixkn4mw89f1hrhrdvc6j7wdn2dj";}
{name="parley";value="0wgps4adiwaq3l471ig9j56vm7p2xf37779nlhfzavby622lyv8q";}
{name="perlkde";value="1psa8ca2ynmavhmbh5p8bgxiljiqj6figi3cmvkaa7ksnmg2p9a3";}
{name="perlqt";value="1v12vx46kmg9cgld7krphcqp97y0py1bc3s2gd6jbz5j48g1wznb";}
{name="pykde4";value="07c7rzi0rzafrh92m57ldz3v66v8996zqpgcqn351jfycwccg7pz";}
{name="qtruby";value="05j08dfqbqnj92k9n70x8yiiaxyk6p9sk3lwm8w8nhsxdciq8yny";}
{name="qyoto";value="1maq0c6qb618jiqrdfp4imq3x7x5rdgf80wbrsf8wmaz3iwg18jz";}
{name="rocs";value="0qqzfxas64jz95v8i0birbcp0azk01jx5ic6pny7szngwrms6k34";}
{name="smokegen";value="0rdaxss113l80gmzp71ngp1l07nn2ip5nhk0a3mmjkvd08i507i8";}
{name="smokekde";value="0cxd5y1i672wc295m2czvp5jry1lmvv88dkipd97368gxsqzd3q8";}
{name="smokeqt";value="0ll1q87y1sdmna4iac61cm6sn7imsfvcfq573cj7f5raqn08gbpf";}
{name="step";value="000a0hc45znshwrjsydrf05f5rwn7lmaiqbk65py827fgk67qkyb";}
{name="svgpart";value="056h2ynbl6ylfpf5a2l0qjasnicwx2yzizgd21pprzl9n7708zcw";}
];
modules=[
{
module="kdegraphics";
split=true;
pkgs=[
{ name="gwenview"; }
{ name="kamera"; }
{ name="kcolorchooser"; }
{ 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="mobipocket"; }
{ name="okular"; }
{ name="svgpart"; }
];
}
{
module="kdeedu";
split=true;
pkgs=[
{ 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="parley"; }
{ name="rocs"; }
{ name="step"; }
];
}
{
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="kde-baseapps";
sane="kde_baseapps"; split=true;
pkgs=[
{ name="kate"; }
{ name="kde-baseapps"; sane="kde_baseapps"; }
{ name="konsole"; }
];
}
{ module="kdeaccessibility"; split=false;
pkgs=[
{ name="kaccessible"; }
{ name="kmag"; }
{ name="kmouth"; }
{ name="kmousetool"; }
{ name="jovie"; }
];
}
{ module="kdeadmin"; split=false;
pkgs=[
{ name="strigi-analyzer"; sane="strigi_analyzer";}
{ name="kuser"; }
{ name="kcron"; }
{ name="ksystemlog"; }
{ name="system-config-printer-kde"; sane="system_config_printer_kde";}
];
}
{ 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"; }
{ name="aurorae"; }
];
}
{ module="kdegames"; split=false;}
{ module="kdelibs"; split=false;}
{ module="kdemultimedia"; split=false;}
{ module="kdenetwork"; split=false;
pkgs=[
{ name="kfile-plugins"; sane="kfile_plugins";}
{ name="kget"; }
{ name="kopete"; }
{ name="krdc"; }
{ name="kppp"; }
{ name="krfb"; }
{ name="kdnssd"; }
{ name="filesharing"; }
];
}
{ 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="kdesdk"; split=false;
pkgs=[
{ name="cervisia"; }
{ name="lokalize"; }
{ name="kdeaccounts-plugin"; sane="kdeaccounts_plugin";}
{ name="dolphin-plugins-svn"; sane="dolphin_plugins_svn";subdir="dolphin-plugins/svn"; }
{ name="dolphin-plugins-git"; sane="dolphin_plugins_git";subdir="dolphin-plugins/git"; }
{ name="kcachegrind"; }
{ name="kapptemplate"; }
{ name="kpartloader"; }
{ name="strigi-analyzer"; sane="strigi_analyzer";}
{ name="kioslave"; }
{ name="okteta"; }
{ name="kmtrace"; }
{ name="kompare"; }
{ name="kprofilemethod"; }
{ name="kstartperf"; }
{ name="kuiviewer"; }
{ name="poxml"; }
{ name="scripts"; }
{ name="umbrello"; }
];
}
{ module="kdetoys"; split=false;
pkgs=[
{ name="kteatime"; }
{ name="ktux"; }
{ name="amor"; }
];
}
{ module="kdeutils"; split=false;
pkgs=[
{ name="ark"; }
{ name="kcalc"; }
{ name="kremotecontrol"; }
{ name="kdf"; }
{ name="kfloppy"; }
{ name="printer-applet"; sane="printer_applet";}
{ name="filelight"; }
{ name="kcharselect"; }
{ name="kgpg"; }
{ name="ktimer"; }
{ name="kwallet"; }
{ name="sweeper"; }
{ name="superkaramba"; }
];
}
{ 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;}
];
}

View 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.bz2";
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.bz2
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 = 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;
}

View File

@ -0,0 +1,145 @@
#! /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.bz2 | \
sed -e 's/.*kdelibs-//' -e 's/\.tar\.bz2//')
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
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.bz2`; do
package=${i%-${release}.tar.bz2}
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.bz2" "$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 "}"

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- xslt file for http://projects.kde.org/kde_projects.xml -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" />
<xsl:template match="/">
<xsl:for-each select="kdeprojects/component[@identifier='kde']">
<xsl:text>declare -A module </xsl:text>
<xsl:for-each select="module">
<xsl:variable name="module" select='@identifier' />
<xsl:for-each select=".//project[repo]">
<xsl:text>module["</xsl:text>
<xsl:value-of select='@identifier' />
<xsl:text>"]="</xsl:text>
<xsl:value-of select="$module" />
<xsl:text>" </xsl:text>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

View File

@ -0,0 +1,16 @@
{ kde, kdelibs, shared_desktop_ontologies, bzip2, xz, libssh, exiv2, attica
, libcanberra, virtuoso, samba, ntrack
}:
kde {
buildInputs =
[ kdelibs shared_desktop_ontologies bzip2 xz libssh exiv2 attica
samba (libcanberra.override { gtk = null; }) ntrack
];
passthru.propagatedUserEnvPackages = [ virtuoso ];
meta = {
license = "LGPL";
};
}

View File

@ -0,0 +1,14 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
outputHashAlgo = "sha256";
outputHashMode = "recursive";
outputHash = "29f4e8b24435ee8c64affdc6250f59ed9f78445118fe0a4e216d89969dd2006b";
meta = {
description = "Wallpapers for KDE";
};
}

View File

@ -0,0 +1,32 @@
{ kde, kdelibs, qimageblitz, libdbusmenu_qt, xorg, shared_desktop_ontologies,
lm_sensors, pciutils, libraw1394, libusb, libxklavier, python, libqalculate,
consolekit, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison, akonadi,
pykde4
}:
kde {
buildInputs =
[ kdelibs qimageblitz libdbusmenu_qt pykde4
xorg.libxkbfile xorg.libXcomposite xorg.libXScrnSaver xorg.libXtst
xorg.libXcomposite xorg.libXdamage xorg.libXau xorg.libXdmcp
xorg.libpthreadstubs
boost gpsd shared_desktop_ontologies lm_sensors pciutils libraw1394
libusb python libqalculate consolekit kdepimlibs pam prison akonadi
];
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
'';
meta = {
description = "KDE workspace components such as Plasma, Kwin and System Settings";
license = "GPLv2";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, speechd }:
kde {
buildInputs = [ kdelibs speechd ];
meta = {
description = "Text-to-speech synthesis daemon";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, speechd }:
kde {
buildInputs = [ kdelibs speechd ];
meta = {
description = "Bridge that provides accessibility services to applications";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Screen magnifier for KDE";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, libXtst }:
kde {
buildInputs = [ kdelibs libXtst ];
meta = {
description = "A program that clicks the mouse for you";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "A type-and-say front end for speech synthesizers";
};
}

View File

@ -0,0 +1,5 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
}

View File

@ -0,0 +1,5 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
}

View File

@ -0,0 +1,5 @@
{ kde, kdelibs, kdepimlibs }:
kde {
buildInputs = [ kdelibs kdepimlibs ];
}

View File

@ -0,0 +1,33 @@
{ kde, pkgconfig, pythonPackages, sip, pycups, pygobject, system_config_printer,
kdelibs, kdepimlibs, pykde4, cups, nettools }:
let s_c_p = system_config_printer.override { withGUI = false; }; in
kde {
buildInputs = [ kdelibs kdepimlibs pythonPackages.python pycups pykde4 sip
pygobject s_c_p ];
passthru = { system_config_printer = s_c_p; };
preConfigure =
''
for i in system-config-printer-kde/cmake-modules/FindSystemConfigPrinter.py system-config-printer-kde/system-config-printer-kde.py; do
substituteInPlace $i \
--replace /usr/share/system-config-printer ${s_c_p}/share/system-config-printer \
--replace /usr/bin/cupstestppd ${cups}/bin/cupstestppd \
--replace /bin/hostname ${nettools}/bin/hostname
done
'';
postInstall =
''
# Bake the required Python path into the printer configuration program.
res=
for i in $(IFS=:; echo $PYTHONPATH); do res="$res''${res:+,} '$i'"; done
sed -i $out/share/apps/system-config-printer-kde/system-config-printer-kde.py \
-e "1 a import sys\nsys.path = [$res] + sys.path"
mkdir -p $out/nix-support
echo ${pykde4} > $out/nix-support/propagated-user-env-packages
'';
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde {
name = "kde-color-schemes";
buildInputs = [ kdelibs ];
meta = {
description = "Additional KDE color schemes";
};
}

View File

@ -0,0 +1,73 @@
#Macro to find xscreensaver directory
# Copyright (c) 2006, Laurent Montel, <montel@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
if (NOT XSCREENSAVER_FOUND)
FIND_PATH(XSCREENSAVER_DIR deco
HINTS
${KDE4_INCLUDE_DIR}
PATHS
/usr
/usr/local
/opt/local
/usr/X11R6
/opt/kde
/opt/kde3
/usr/kde
/usr/local/kde
/usr/local/xscreensaver
/usr/openwin/lib/xscreensaver
/etc
PATH_SUFFIXES
lib${LIB_SUFFIX}/xscreensaver
lib${LIB_SUFFIX}/misc/xscreensaver
lib/xscreensaver
lib64/xscreensaver
lib/misc/xscreensaver
libexec/xscreensaver
bin/xscreensaver-hacks
hacks)
message(STATUS "XSCREENSAVER_DIR <${XSCREENSAVER_DIR}>")
FIND_PATH(XSCREENSAVER_CONFIG_DIR deco.xml
PATHS
${KDE4_INCLUDE_DIR}
/usr/
/usr/local/
/opt/local/
/usr/X11R6/
/opt/kde/
/opt/kde3/
/usr/kde/
/usr/local/kde/
/usr/openwin/lib/xscreensaver/
/etc/
PATH_SUFFIXES xscreensaver xscreensaver/config share/xscreensaver/config
)
MESSAGE(STATUS "XSCREENSAVER_CONFIG_DIR :<${XSCREENSAVER_CONFIG_DIR}>")
endif(NOT XSCREENSAVER_FOUND)
#MESSAGE(STATUS "XSCREENSAVER_CONFIG_DIR :<${XSCREENSAVER_CONFIG_DIR}>")
#MESSAGE(STATUS "XSCREENSAVER_DIR :<${XSCREENSAVER_DIR}>")
# Need to fix hack
if(XSCREENSAVER_DIR AND XSCREENSAVER_CONFIG_DIR)
set(XSCREENSAVER_FOUND TRUE)
endif(XSCREENSAVER_DIR AND XSCREENSAVER_CONFIG_DIR)
if (XSCREENSAVER_FOUND)
if (NOT Xscreensaver_FIND_QUIETLY)
message(STATUS "Found XSCREENSAVER_CONFIG_DIR <${XSCREENSAVER_CONFIG_DIR}>")
endif (NOT Xscreensaver_FIND_QUIETLY)
else (XSCREENSAVER_FOUND)
if (Xscreensaver_FIND_REQUIRED)
message(FATAL_ERROR "XScreenSaver not found")
endif (Xscreensaver_FIND_REQUIRED)
endif (XSCREENSAVER_FOUND)
MARK_AS_ADVANCED(XSCREENSAVER_DIR XSCREENSAVER_CONFIG_DIR)

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde rec {
name = "kde-wallpapers-high-resolution";
buildInputs = [ kdelibs ];
meta = {
description = "KDE wallpapers in high resolution";
};
}

View File

@ -0,0 +1,13 @@
{ kde, kdelibs }:
kde {
name = "kdeartwork-icon-themes";
# Sources contain primary and kdeclassic as well but they're not installed
buildInputs = [ kdelibs ];
meta = {
description = "KDE nuvola and mono icon themes";
};
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde rec {
name = "kde-weather-wallpapers";
buildInputs = [ kdelibs ];
meta = {
description = "Additional KDE wallpapers (weather)";
};
}

View File

@ -0,0 +1,7 @@
{ kde, kdelibs }:
kde {
name = "aurorae-themes";
buildInputs = [ kdelibs ];
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde {
name = "kde-desktop-themes";
buildInputs = [ kdelibs ];
meta = {
description = "Additional KDE desktop themes";
};
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde {
name = "kde-emotion-icons";
buildInputs = [ kdelibs ];
meta = {
description = "Additional KDE emotion icons (smiles)";
};
}

View File

@ -0,0 +1,13 @@
{ kde, kdelibs, xscreensaver, kde_workspace, eigen, libkexiv2 }:
kde {
buildInputs = [ kdelibs xscreensaver kde_workspace eigen libkexiv2 ];
preConfigure = "cp -v ${./FindXscreensaver.cmake} cmake/modules/FindXscreensaver.cmake";
cmakeFlags = [ "-DBUILD_asciiquarium:BOOL=ON" ];
meta = {
description = "KDE screensavers";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, kde_workspace }:
kde {
buildInputs = [ kdelibs kde_workspace ];
meta = {
description = "Styles for KWin";
};
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde rec {
name = "kde-sounds";
buildInputs = [ kdelibs ];
meta = {
description = "New login/logout sounds";
};
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde rec {
name = "kde-style-phase";
buildInputs = [ kdelibs ];
meta = {
description = "Phase, a widget style for KDE";
};
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs }:
kde rec {
name = "kde-wallpapers";
buildInputs = [ kdelibs ];
meta = {
description = "Additional KDE wallpapers";
};
}

View File

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

View File

@ -0,0 +1,49 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c853e38..5df3253 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -73,7 +73,7 @@ INCLUDE_DIRECTORIES(
${QT_QTWEBKIT_INCLUDE_DIR}
${KDE4_INCLUDE_DIR}
${KDE4_INCLUDE_DIR}/solid
- ${KDE4_INCLUDE_DIR}/phonon
+ ${PHONON_INCLUDE_DIR}/phonon
${KDE4_INCLUDE_DIR}/kio
${KDE4_INCLUDE_DIR}/kdeprint
${KDE4_INCLUDE_DIR}/kdeprint/lpr
@@ -232,7 +232,7 @@ _pkg_config = {
'pykde_kde_sip_flags': '${_SIP_TAGS} ${_SIP_X} ${SIP_EXTRA_OPTIONS}',
'pykde_mod_dir': '${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyKDE4',
'pykde_modules': '${PYKDE_MODULES}',
- 'pykde_sip_dir': '${SIP_DEFAULT_SIP_DIR}/PyKDE4',
+ 'pykde_sip_dir': '${CMAKE_INSTALL_PREFIX}/share/sip/PyKDE4',
'pykde_version': kde_version_hex,
'pykde_version_str': '${KDE_VERSION}'
}
@@ -244,7 +244,7 @@ PYTHON_INSTALL(${CMAKE_CURRENT_BINARY_DIR}/pykdeconfig.py ${PYTHON_SITE_PACKAGES
# Install the .sip files for anyone that wants to build bindings on top of PyKDE4.
# (Don't forget the / at the end of sip/.)
-INSTALL(DIRECTORY sip/ DESTINATION ${SIP_DEFAULT_SIP_DIR}/PyKDE4
+INSTALL(DIRECTORY sip/ DESTINATION ${CMAKE_INSTALL_PREFIX}/share/sip/PyKDE4
PATTERN "*~" EXCLUDE # This sucks, why can't I just whitelist what I _do_ want?
PATTERN ".svn" EXCLUDE
PATTERN "*.in" EXCLUDE)
diff --git a/kpythonpluginfactory/CMakeLists.txt b/kpythonpluginfactory/CMakeLists.txt
index 41fa0fe..642d867 100644
--- a/kpythonpluginfactory/CMakeLists.txt
+++ b/kpythonpluginfactory/CMakeLists.txt
@@ -3,7 +3,12 @@
set(kpythonpluginfactory_SRCS
kpythonpluginfactory.cpp)
-GET_FILENAME_COMPONENT(LIB_PYTHON ${PYTHON_LIBRARY} NAME)
+option(HARDCODE_LIB_PYTHON_PATH "Whether the path to libpython.so should be hardcoded" OFF)
+if(HARDCODE_LIB_PYTHON_PATH)
+ get_filename_component(LIB_PYTHON ${PYTHON_LIBRARY} REALPATH)
+else(HARDCODE_LIB_PYTHON_PATH)
+ get_filename_component(LIB_PYTHON ${PYTHON_LIBRARY} NAME)
+endif(HARDCODE_LIB_PYTHON_PATH)
ADD_DEFINITIONS(-DLIB_PYTHON=\\"${LIB_PYTHON}\\")
ADD_DEFINITIONS(-DKDE_DEFAULT_DEBUG_AREA=15000)

View File

@ -0,0 +1,30 @@
{ kde, kdelibs, python, sip, pyqt4, kdepimlibs, shared_desktop_ontologies,
boost, lndir }:
let pydir = "lib/python${python.majorVersion}"; in
kde {
buildInputs = [ python kdepimlibs shared_desktop_ontologies boost ];
propagatedBuildInputs = [ pyqt4 sip ];
#NIX_CFLAGS_COMPILE = "-I${phonon}/include/phonon";
patches = [ ./pykde-purity.patch ];
cmakeFlags = "-DHARDCODE_LIB_PYTHON_PATH=ON";
preConfigure =
''
# Symlink PyQt into PyKDE. This is necessary because PyQt looks
# in its PyQt4/uic/widget-plugins directory for plugins, and KDE
# needs to install a plugin.
mkdir -pv $out/${pydir}
${lndir}/bin/lndir ${pyqt4}/${pydir} $out/${pydir}
'';
meta = {
description = "Python bindings for KDE";
kde.name = "pykde4";
};
}

View File

@ -0,0 +1,13 @@
{ kde, qt4, cmake }:
kde {
buildInputs = [ qt4 ];
buildNativeInputs = [ cmake ];
patchPhase = "sed -e /RPATH/d -i CMakeLists.txt";
meta = {
description = "C++ parser used to generate language bindings for Qt/KDE";
license = "GPLv2";
};
}

View File

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

View File

@ -0,0 +1,12 @@
{ kde, qt4, cmake, phonon, qimageblitz, smokegen }:
kde {
propagatedBuildInputs = [ qt4 phonon qimageblitz ];
buildNativeInputs = [ cmake ];
propagatedBuildNativeInputs = [ smokegen ];
meta = {
description = "C++ parser used to generate language bindings for Qt/KDE";
license = "GPLv2";
};
}

View File

@ -0,0 +1,32 @@
# - Try to find Libfacile
# Once done this will define
#
# LIBFACILE_FOUND - system has Libfacile
# LIBFACILE_INCLUDE_DIR - the Libfacile include directory
# LIBFACILE_LIBRARIES - Link these to use Libfacile
#
# Copyright (c) 2006, Carsten Niehaus, <cniehaus@gmx.de>
# Copyright (c) 2006, Montel Laurent, <montel@kde.org>
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
find_package(OCaml)
if( OCAML_FOUND )
find_library(LIBFACILE_LIBRARIES NAMES facile.a
HINTS ${OCAMLC_DIR}
PATH_SUFFIXES facile ocaml/facile
)
find_path(LIBFACILE_INCLUDE_DIR NAMES facile.cmi
HINTS ${OCAMLC_DIR}
PATH_SUFFIXES facile lib/ocaml/facile
)
endif(OCAML_FOUND)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Libfacile DEFAULT_MSG LIBFACILE_INCLUDE_DIR
LIBFACILE_LIBRARIES OCAML_FOUND)
# show the LIBFACILE_INCLUDE_DIR and LIBFACILE_LIBRARIES variables only in the advanced view
mark_as_advanced(LIBFACILE_INCLUDE_DIR LIBFACILE_LIBRARIES )

View File

@ -0,0 +1,8 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Memory Enhancement Game";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs, libspectre }:
kde {
buildInputs = [ kdelibs libspectre ];
meta = {
description = "KDE Frontend to Mathematical Software";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs, libkdeedu, readline }:
kde {
buildInputs = [ kdelibs libkdeedu readline ];
meta = {
description = "2D and 3D Graph Calculator";
};
}

View File

@ -0,0 +1,15 @@
commit d96c6e70400dcd4e3514065e607388b80f96d6a1
Author: Yury G. Kudryashov <urkud.urkud@gmail.com>
Date: Mon Aug 15 00:53:16 2011 +0400
Display feature log
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 132934c..eec6942 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -47,3 +47,4 @@ add_subdirectory(src)
add_subdirectory(data)
add_subdirectory(plasmoid)
add_subdirectory(libscience)
+macro_display_feature_log()

View File

@ -0,0 +1,15 @@
{ kde, kdelibs, facile, ocaml, eigen, openbabel, avogadro }:
kde {
buildInputs = [ kdelibs facile ocaml eigen openbabel avogadro ];
prePatch = ''
cp -v ${./FindLibfacile.cmake} cmake/modules/FindLibfacile.cmake
sed -e 's/\+facile/''${LIBFACILE_INCLUDE_DIR}/' -i src/CMakeOCamlInstructions.cmake
'';
patches = [ ./kalzium-feature-log.patch ];
meta = {
description = "Periodic Table of Elements";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs, libkdeedu }:
kde {
buildInputs = [ kdelibs libkdeedu ];
meta = {
description = "Letter Order Game";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Practice Fractions";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Geography Trainer";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs, libkdeedu }:
kde {
buildInputs = [ kdelibs libkdeedu ];
meta = {
description = "KDE hangman game";
};
}

View File

@ -0,0 +1,12 @@
{ kde, kdelibs, boost, python}:
kde {
buildInputs = [ kdelibs boost python ];
cmakeFlags = ''
-DBOOST_PYTHON_INCLUDES:PATH=${boost}/include;${python}/include/${python.libPrefix}
-DBOOST_PYTHON_LIBS=boost_python;${python.libPrefix} -DKIG_ENABLE_PYTHON_SCRIPTING=1
'';
meta = {
description = "KDE Interactive Geometry";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Japanese Reference/Study Tool";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "A KDE alphabet tutorial";
};
}

View File

@ -0,0 +1,12 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "A KDE mathematical function plotter";
kde = {
name = "kmplot";
};
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, eigen, xplanet, indilib }:
kde {
buildInputs = [ kdelibs eigen xplanet indilib ];
meta = {
description = "A KDE graphical desktop planetarium";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Touch Typing Tutor";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Educational Programming Environment";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, libkdeedu }:
kde {
buildInputs = [ kdelibs libkdeedu ];
meta = {
description = "Flash Card Trainer";
};
}

View File

@ -0,0 +1,8 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Libraries used by KDE Education applications";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, gpsd }:
kde {
buildInputs = [ kdelibs gpsd ];
meta = {
description = "Marble Virtual Globe";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs, libkdeedu, libxml2, attica }:
kde {
buildInputs = [ kdelibs libkdeedu libxml2 attica ];
meta = {
description = "Vocabulary Trainer";
};
}

View File

@ -0,0 +1,14 @@
{ kde, kdelibs, boost }:
kde {
buildInputs = [ kdelibs (boost.override { enableExceptions = true; }) ];
NIX_CFLAGS_COMPILE = "-fexceptions";
meta = {
description = "A KDE graph theory viewer";
kde = {
name = "rocs";
};
};
}

View File

@ -0,0 +1,12 @@
{ kde, kdelibs, gsl, libqalculate, eigen }:
kde {
buildInputs = [ kdelibs gsl libqalculate eigen ];
meta = {
description = "A KDE interactive physical simulator";
kde = {
name = "step";
};
};
}

View File

@ -0,0 +1,18 @@
{ kde, kdelibs, qca2, twisted, pythonPackages, sip, makeWrapper, pykde4,
openal, libsndfile, qhull }:
kde rec {
buildInputs = [ kdelibs qca2 pythonPackages.python pythonPackages.wrapPython
openal libsndfile qhull ] ++ pythonPath;
pythonPath = [ pythonPackages.twisted pykde4 ];
# TODO: ggz
postInstall = "wrapPythonPrograms";
meta = {
description = "KDE Games";
license = "GPL";
};
}

View File

@ -0,0 +1,12 @@
{ kde, kdelibs, exiv2, shared_desktop_ontologies, kde_baseapps, libkipi }:
kde {
buildInputs =
[ kdelibs exiv2 shared_desktop_ontologies kde_baseapps libkipi ];
meta = {
description = "Gwenview, the KDE image viewer";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, libgphoto2 }:
kde {
buildInputs = [ kdelibs libgphoto2 ];
meta = {
description = "KDE camera interface library";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "A small utility to select a color";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Strigi analyzers for various graphics file formats";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, libkexiv2, libkdcraw }:
kde {
buildInputs = [ kdelibs libkexiv2 libkdcraw ];
meta = {
description = "Thumbnailers for various graphics file formats";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, libXxf86vm }:
kde {
buildInputs = [ kdelibs libXxf86vm ];
meta = {
description = "KDE monitor calibration tool";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, qimageblitz }:
kde {
buildInputs = [ kdelibs qimageblitz ];
meta = {
description = "KDE paint program";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "KDE screen ruler";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, libksane }:
kde {
buildInputs = [ kdelibs libksane ];
meta = {
description = "A KScan plugin that implements the scanning through libksane";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, libkipi }:
kde {
buildInputs = [ kdelibs libkipi ];
meta = {
description = "KDE screenshot utility";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Library for decoding RAW images";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, exiv2 }:
kde {
buildInputs = [ kdelibs exiv2 ];
meta = {
description = "Exiv2 support library";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "Interface library to kipi-plugins";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, saneBackends }:
kde {
buildInputs = [ kdelibs saneBackends ];
meta = {
description = "An image scanning library that provides a QWidget that contains all the logic needed to interface a sacanner";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, okular }:
kde {
buildInputs = [ kdelibs okular ];
meta = {
description = "A collection of plugins to handle mobipocket files";
license = "GPLv2";
};
}

View File

@ -0,0 +1,12 @@
{ chmlib, djvulibre, ebook_tools, kde, kdelibs, libspectre, popplerQt4, qca2
, qimageblitz }:
kde {
buildInputs =
[ chmlib djvulibre ebook_tools kdelibs libspectre popplerQt4 qca2 qimageblitz ];
meta = {
description = "Okular, the KDE document viewer";
license = "GPLv2";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "SVG KPart";
license = "GPLv2";
};
}

View File

@ -0,0 +1,39 @@
{ kde, gcc, cmake, perl
, qt4, bzip2, pcre, fam, libxml2, libxslt, shared_mime_info, giflib, jasper
, xz, openexr, avahi, kerberos, acl, attr, shared_desktop_ontologies, libXScrnSaver
, automoc4, strigi, soprano, qca2, attica, enchant, libdbusmenu_qt
, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1
, getopt, udev, herqq, phonon, libjpeg
}:
kde {
buildInputs =
[
acl attr attica avahi bzip2 enchant fam getopt giflib herqq jasper
libdbusmenu_qt libXScrnSaver libxslt pcre polkit_qt_1 qca2
shared_desktop_ontologies udev xz libxml2 libjpeg
];
propagatedBuildInputs = [ qt4 soprano strigi phonon ];
propagatedBuildNativeInputs = [ automoc4 cmake perl shared_mime_info ];
# TODO: make sonnet plugins (dictionaries) really work.
# There are a few hardcoded paths.
# Let kdelibs find openexr
# Split plugins from libs?
patches = [ ./files/polkit-install.patch ];
# cmake fails to find acl.h because of C++-style comment
# TODO: OpenEXR
cmakeFlags = [
"-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook"
"-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
];
meta = {
description = "KDE libraries";
license = "LGPL";
};
}

View File

@ -0,0 +1,16 @@
{ kde, alsaLib, libvorbis, taglib, flac, cdparanoia, lame, kdelibs, ffmpeg,
libmusicbrainz3, libtunepimp }:
kde {
buildInputs =
# Note: kdemultimedia can use xine-lib, but it doesn't seem useful
# without the Phonon Xine backend.
[ kdelibs cdparanoia taglib libvorbis libmusicbrainz3 libtunepimp ffmpeg
flac lame ];
meta = {
description = "KDE multimedia programs such as a movie player and volume utility";
license = "GPL";
};
}

View File

@ -0,0 +1,19 @@
# cmake macro to test msiLBC
# Copyright (c) 2009-2010 Pali Rohár <pali.rohar@gmail.com>
#
# MSILBC_FOUND
# MSILBC_LIBRARY
include ( FindPackageHandleStandardArgs )
if ( MSILBC_LIBRARY )
set ( MSILBC_FOUND true )
set ( msiLBC_FIND_QUIETLY true )
else ( MSILBC_LIBRARY )
find_library ( MSILBC_LIBRARY NAMES msilbc
PATH_SUFFIXES mediastreamer/plugins)
endif ( MSILBC_LIBRARY )
find_package_handle_standard_args ( msiLBC DEFAULT_MSG MSILBC_LIBRARY )
mark_as_advanced ( MSILBC_LIBRARY )

View File

@ -0,0 +1,7 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
patches = [ ./kdenetwork.patch ];
}

View File

@ -0,0 +1,24 @@
diff -r -u kdenetwork-4.7.1.orig/CMakeLists.txt kdenetwork-4.7.1/CMakeLists.txt
--- kdenetwork-4.7.1.orig/CMakeLists.txt 2011-03-29 15:25:42.174521812 +0400
+++ kdenetwork-4.7.1/CMakeLists.txt 2011-03-29 15:27:43.268140322 +0400
@@ -28,7 +28,8 @@
set(CMAKE_REQUIRED_INCLUDES ${KDEWIN_INCLUDES} )
endif (WIN32)
-find_package(KdepimLibs REQUIRED)
+macro_optional_find_package(KdepimLibs)
+macro_log_feature(KDEPIMLIBS_FOUND "KDEPimLibs" "KDE pim-related libraries" "http://pim.kde.org.org/" FALSE "" "Required for Kopete")
# find_package(X11VidMode) not used at this time
# NX support is not ready for KDE 4.2; disabled (uwolfer)
@@ -79,7 +80,9 @@
macro_optional_add_subdirectory(kfile-plugins)
macro_optional_add_subdirectory(kget)
-macro_optional_add_subdirectory(kopete)
+if(KDEPIMLIBS_FOUND)
+ macro_optional_add_subdirectory(kopete)
+endif(KDEPIMLIBS_FOUND)
if(Q_WS_X11)
macro_optional_add_subdirectory(krdc)

View File

@ -0,0 +1,7 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
patches = [ ./kdenetwork.patch ];
}

View File

@ -0,0 +1,11 @@
{ kde, kdelibs, boost }:
kde {
name = "strigi-analyzer-torrent";
buildInputs = [ kdelibs boost ];
preConfigure = "mv -v strigi-analyzer kfile-plugins";
patches = [ ./kdenetwork.patch ];
}

View File

@ -0,0 +1,13 @@
{ kde, kdelibs, libktorrent, kde_workspace, kdepimlibs,
shared_desktop_ontologies, kde_baseapps, gpgme, boost, libmms, qca2 }:
kde {
buildInputs =
[ kdelibs libktorrent kde_workspace shared_desktop_ontologies kdepimlibs
kde_baseapps gpgme boost libmms qca2
];
KDEDIRS = libktorrent;
patches = [ ./kdenetwork.patch ];
}

View File

@ -0,0 +1,21 @@
{ kde, kdelibs, speex, libmsn, libotr, kdepimlibs, qimageblitz, libktorrent,
jasper, libidn, mediastreamer, msilbc, pkgconfig, libxml2, libxslt, giflib,
libgadu, boost, qca2, gpgme }:
kde {
buildInputs = [ kdelibs speex libmsn libotr kdepimlibs qimageblitz libktorrent
jasper libidn mediastreamer msilbc libxml2 libxslt giflib libgadu boost qca2
gpgme ];
buildNativeInputs = [ pkgconfig ];
KDEDIRS = libktorrent;
patchPhase = "cp -v ${./FindmsiLBC.cmake} kopete/cmake/modules/FindmsiLBC.cmake";
cmakeFlags = [ "-DBUILD_skypebuttons=TRUE" ];
meta = {
description = "A KDE multi-protocol IM client";
};
}

View File

@ -0,0 +1,7 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
patches = [ ./kdenetwork.patch ];
}

View File

@ -0,0 +1,7 @@
{ kde, kdelibs, libvncserver }:
kde {
buildInputs = [ kdelibs libvncserver ];
patches = [ ./kdenetwork.patch ];
}

View File

@ -0,0 +1,7 @@
{ kde, kdelibs, libvncserver, libXdamage, libXtst }:
kde {
buildInputs = [ kdelibs libvncserver libXdamage libXtst];
patches = [ ./kdenetwork.patch ];
}

View File

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

View File

@ -0,0 +1,12 @@
{ kde, fetchurl, cmake, kdelibs, libxml2, libxslt, boost, kdepimlibs, akonadi
, shared_desktop_ontologies }:
kde {
buildInputs = [ kdepimlibs akonadi boost shared_desktop_ontologies libxml2
libxslt ];
meta = {
description = "KDE PIM runtime";
license = "GPL";
};
}

View File

@ -0,0 +1,21 @@
{ kde, boost, gpgme, libassuan, libxml2, libxslt, kdepimlibs, kdepim_runtime
, akonadi, shared_desktop_ontologies, cyrus_sasl, grantlee }:
kde {
buildInputs =
[ kdepimlibs boost akonadi shared_desktop_ontologies libxml2
libxslt cyrus_sasl gpgme libassuan grantlee
];
passthru.propagatedUserEnvPackages = [ akonadi kdepimlibs kdepim_runtime ];
meta = {
description = "KDE PIM tools";
longDescription = ''
Contains various personal information management tools for KDE, such as an organizer.
'';
license = "GPL";
homepage = http://pim.kde.org;
};
}

View File

@ -0,0 +1,16 @@
{ kde, boost, cyrus_sasl, gpgme, libical, openldap, shared_mime_info
, kdelibs, akonadi, shared_desktop_ontologies, libxml2, libxslt, prison }:
kde {
buildInputs =
[ boost gpgme shared_desktop_ontologies libical libxml2 libxslt
openldap cyrus_sasl akonadi prison
];
propagatedBuildInputs = [ kdelibs ];
meta = {
description = "KDE PIM libraries";
license = "LGPL";
};
}

View File

@ -0,0 +1,18 @@
{ kde, kdelibs, marble, shared_desktop_ontologies
, boost, eigen, kde_workspace, attica, python, qca2, qimageblitz
, kdepimlibs, libkexiv2, libqalculate, libXtst }:
# TODO: qwt, scim
kde {
KDEDIRS=marble;
buildInputs = [ kdelibs boost eigen kde_workspace
attica python qca2 qimageblitz kdepimlibs
libqalculate libXtst shared_desktop_ontologies marble libkexiv2];
meta = {
description = "KDE Plasma Addons";
license = "GPL";
};
}

View File

@ -0,0 +1,9 @@
{ kde, kdelibs }:
kde {
buildInputs = [ kdelibs ];
meta = {
description = "A KDE CVS frontend";
};
}

View File

@ -0,0 +1,10 @@
{ kde, kdelibs, kde_baseapps }:
kde {
# Needs kdebase for libkonq
buildInputs = [ kdelibs kde_baseapps ];
meta = {
description = "Git plugin for dolphin";
};
}

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