Merge pull request #26336 from ttuegel/qt--unwrap

Unwrap Qt 5 packages
This commit is contained in:
Thomas Tuegel 2017-06-18 08:45:17 -05:00 committed by GitHub
commit f2a651a168
362 changed files with 3307 additions and 3292 deletions

View File

@ -2,31 +2,55 @@
xmlns:xlink="http://www.w3.org/1999/xlink"
xml:id="sec-language-qt">
<title>Qt and KDE</title>
<title>Qt</title>
<para>Qt is a comprehensive desktop and mobile application development toolkit for C++. Legacy support is available for Qt 3 and Qt 4, but all current development uses Qt 5. The Qt 5 packages in Nixpkgs are updated frequently to take advantage of new features, but older versions are typically retained to support packages that may not be compatible with the latest version. When packaging applications and libraries for Nixpkgs, it is important to ensure that compatible versions of Qt 5 are used throughout; this consideration motivates the tools described below.</para>
<para>
Qt is a comprehensive desktop and mobile application development toolkit for C++.
Legacy support is available for Qt 3 and Qt 4, but all current development uses Qt 5.
The Qt 5 packages in Nixpkgs are updated frequently to take advantage of new features,
but older versions are typically retained until their support window ends.
The most important consideration in packaging Qt-based software is ensuring that each package and all its dependencies use the same version of Qt 5;
this consideration motivates most of the tools described below.
</para>
<section xml:id="ssec-qt-libraries"><title>Libraries</title>
<section xml:id="ssec-qt-libraries"><title>Packaging Libraries for Nixpkgs</title>
<para>Libraries that depend on Qt 5 should be built with each available version to avoid linking a dependent package against incompatible versions of Qt 5. (Although Qt 5 maintains backward ABI compatibility, linking against multiple versions at once is generally not possible; at best it will lead to runtime faults.) Packages that provide libraries should be added to the top-level function <varname>mkLibsForQt5</varname>, which is used to build a set of libraries for every Qt 5 version. The <varname>callPackage</varname> provided in this scope will ensure that only one Qt version will be used throughout the dependency tree. Dependencies should be imported unqualified, i.e. <literal>qtbase</literal> not <literal>qt5.qtbase</literal>, so that <varname>callPackage</varname> can do its work. <emphasis>Do not</emphasis> import a package set such as <literal>qt5</literal> or <literal>libsForQt5</literal> into your package; although it may work fine in the moment, it could well break at the next Qt update.</para>
<para>
Whenever possible, libraries that use Qt 5 should be built with each available version.
Packages providing libraries should be added to the top-level function <varname>mkLibsForQt5</varname>,
which is used to build a set of libraries for every Qt 5 version.
A special <varname>callPackage</varname> function is used in this scope to ensure that the entire dependency tree uses the same Qt 5 version.
Import dependencies unqualified, i.e., <literal>qtbase</literal> not <literal>qt5.qtbase</literal>.
<emphasis>Do not</emphasis> import a package set such as <literal>qt5</literal> or <literal>libsForQt5</literal>.
</para>
<para>If a library does not support a particular version of Qt 5, it is best to mark it as broken by setting its <literal>meta.broken</literal> attribute. A package may be marked broken for certain versions by testing the <literal>qtbase.version</literal> attribute, which will always give the current Qt 5 version.</para>
<para>
If a library does not support a particular version of Qt 5, it is best to mark it as broken by setting its <literal>meta.broken</literal> attribute.
A package may be marked broken for certain versions by testing the <literal>qtbase.version</literal> attribute, which will always give the current Qt 5 version.
</para>
</section>
<section xml:id="ssec-qt-applications"><title>Applications</title>
<section xml:id="ssec-qt-applications"><title>Packaging Applications for Nixpkgs</title>
<para>Applications generally do not need to be built with every Qt version because they do not provide any libraries for dependent packages to link against. The primary consideration is merely ensuring that the application itself and its dependencies are linked against only one version of Qt. To call your application expression, use <literal>libsForQt5.callPackage</literal> instead of <literal>callPackage</literal>. Dependencies should be imported unqualified, i.e. <literal>qtbase</literal> not <literal>qt5.qtbase</literal>. <emphasis>Do not</emphasis> import a package set such as <literal>qt5</literal> or <literal>libsForQt5</literal> into your package; although it may work fine in the moment, it could well break at the next Qt update.</para>
<para>
Call your application expression using <literal>libsForQt5.callPackage</literal> instead of <literal>callPackage</literal>.
Import dependencies unqualified, i.e., <literal>qtbase</literal> not <literal>qt5.qtbase</literal>.
<emphasis>Do not</emphasis> import a package set such as <literal>qt5</literal> or <literal>libsForQt5</literal>.
</para>
<para>It is generally best to build an application package against the <varname>libsForQt5</varname> library set. In case a package does not build with the latest Qt version, it is possible to pick a set pinned to a particular version, e.g. <varname>libsForQt55</varname> for Qt 5.5, if that is the latest version the package supports.</para>
<para>
Qt 5 maintains strict backward compatibility, so it is generally best to build an application package against the latest version using the <varname>libsForQt5</varname> library set.
In case a package does not build with the latest Qt version, it is possible to pick a set pinned to a particular version, e.g. <varname>libsForQt55</varname> for Qt 5.5, if that is the latest version the package supports.
If a package must be pinned to an older Qt version, be sure to file a bug upstream;
because Qt is strictly backwards-compatible, any incompatibility is by definition a bug in the application.
</para>
<para>Qt-based applications require that several paths be set at runtime. This is accomplished by wrapping the provided executables in a package with <literal>wrapQtProgram</literal> or <literal>makeQtWrapper</literal> during the <literal>postFixup</literal> phase. To use the wrapper generators, add <literal>makeQtWrapper</literal> to <literal>nativeBuildInputs</literal>. The wrapper generators support the same options as <literal>wrapProgram</literal> and <literal>makeWrapper</literal> respectively. It is usually only necessary to generate wrappers for programs intended to be invoked by the user.</para>
</section>
<section xml:id="ssec-qt-kde"><title>KDE</title>
<para>The KDE Frameworks are a set of libraries for Qt 5 which form the basis of the Plasma desktop environment and the KDE Applications suite. Packaging a Frameworks-based library does not require any steps beyond those described above for general Qt-based libraries. Frameworks-based applications should not use <literal>makeQtWrapper</literal>; instead, use <literal>kdeWrapper</literal> to create the necessary wrappers: <literal>kdeWrapper { unwrapped = <replaceable>expr</replaceable>; targets = <replaceable>exes</replaceable>; }</literal>, where <replaceable>expr</replaceable> is the un-wrapped package expression and <replaceable>exes</replaceable> is a list of strings giving the relative paths to programs in the package which should be wrapped.</para>
<para>
When testing applications in Nixpkgs, it is a common practice to build the package with <literal>nix-build</literal> and run it using the created symbolic link.
This will not work with Qt applications, however, because they have many hard runtime requirements that can only be guaranteed if the package is actually installed.
To test a Qt application, install it with <literal>nix-env</literal> or run it inside <literal>nix-shell</literal>.
</para>
</section>

View File

@ -7,7 +7,7 @@ let
xcfg = config.services.xserver;
cfg = xcfg.desktopManager.plasma5;
inherit (pkgs) kdeWrapper kdeApplications plasma5 libsForQt5 qt5 xorg;
inherit (pkgs) kdeApplications plasma5 libsForQt5 qt5 xorg;
in
@ -30,24 +30,12 @@ in
'';
};
extraPackages = mkOption {
type = types.listOf types.package;
default = [];
description = ''
KDE packages that need to be installed system-wide.
'';
};
};
};
config = mkMerge [
(mkIf (cfg.extraPackages != []) {
environment.systemPackages = [ (kdeWrapper cfg.extraPackages) ];
})
(mkIf (xcfg.enable && cfg.enable) {
services.xserver.desktopManager.session = singleton {
name = "plasma5";
@ -64,8 +52,8 @@ in
};
security.wrappers = {
kcheckpass.source = "${plasma5.plasma-workspace.out}/lib/libexec/kcheckpass";
"start_kdeinit".source = "${pkgs.kinit.out}/lib/libexec/kf5/start_kdeinit";
kcheckpass.source = "${lib.getBin plasma5.plasma-workspace}/lib/libexec/kcheckpass";
"start_kdeinit".source = "${lib.getBin pkgs.kinit}/lib/libexec/kf5/start_kdeinit";
};
environment.systemPackages = with pkgs; with qt5; with libsForQt5; with plasma5; with kdeApplications;
@ -139,10 +127,14 @@ in
plasma-workspace
plasma-workspace-wallpapers
dolphin
dolphin-plugins
ffmpegthumbs
kdegraphics-thumbnailers
khelpcenter
kio-extras
konsole
oxygen
print-manager
breeze-icons
@ -163,16 +155,6 @@ in
++ lib.optional config.services.colord.enable colord-kde
++ lib.optionals config.services.samba.enable [ kdenetwork-filesharing pkgs.samba ];
services.xserver.desktopManager.plasma5.extraPackages =
with kdeApplications; with plasma5;
[
khelpcenter
oxygen
dolphin
konsole
];
environment.pathsToLink = [ "/share" ];
environment.etc = singleton {
@ -183,7 +165,6 @@ in
environment.variables = {
# Enable GTK applications to load SVG icons
GDK_PIXBUF_MODULE_FILE = "${pkgs.librsvg.out}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache";
QT_PLUGIN_PATH = "/run/current-system/sw/lib/qt5/plugins";
};
fonts.fonts = with pkgs; [ noto-fonts hack-font ];
@ -209,7 +190,6 @@ in
services.xserver.displayManager.sddm = {
theme = "breeze";
package = pkgs.sddmPlasma5;
};
security.pam.services.kde = { allowNullPassword = true; };

View File

@ -9,7 +9,7 @@ let
cfg = dmcfg.sddm;
xEnv = config.systemd.services."display-manager".environment;
sddm = cfg.package;
inherit (pkgs) sddm;
xserverWrapper = pkgs.writeScript "xserver-wrapper" ''
#!/bin/sh
@ -37,8 +37,8 @@ let
[Theme]
Current=${cfg.theme}
ThemeDir=${sddm}/share/sddm/themes
FacesDir=${sddm}/share/sddm/faces
ThemeDir=/run/current-system/sw/share/sddm/themes
FacesDir=/run/current-system/sw/share/sddm/faces
[Users]
MaximumUid=${toString config.ids.uids.nixbld}
@ -105,15 +105,6 @@ in
'';
};
package = mkOption {
type = types.package;
default = pkgs.sddm;
description = ''
The SDDM package to install.
The default package can be overridden to provide extra themes.
'';
};
autoNumlock = mkOption {
type = types.bool;
default = false;
@ -205,7 +196,15 @@ in
services.xserver.displayManager.job = {
logsXsession = true;
execCmd = "exec ${sddm}/bin/sddm";
environment = {
# Load themes from system environment
QT_PLUGIN_PATH = "/run/current-system/sw/" + pkgs.qt5.qtbase.qtPluginPrefix;
QML2_IMPORT_PATH = "/run/current-system/sw/" + pkgs.qt5.qtbase.qtQmlPrefix;
XDG_DATA_DIRS = "/run/current-system/sw/share";
};
execCmd = "exec /run/current-system/sw/bin/sddm";
};
security.pam.services = {
@ -254,7 +253,8 @@ in
users.extraGroups.sddm.gid = config.ids.gids.sddm;
services.dbus.packages = [ sddm.unwrapped ];
environment.systemPackages = [ sddm ];
services.dbus.packages = [ sddm ];
# To enable user switching, allow sddm to allocate TTYs/displays dynamically.
services.xserver.tty = null;

View File

@ -1,6 +1,6 @@
{
stdenv, lib, fetchurl,
gettext, makeQtWrapper, pkgconfig,
mkDerivation, lib, fetchurl,
gettext, pkgconfig,
qtbase,
alsaLib, curl, faad2, ffmpeg, flac, fluidsynth, gdk_pixbuf, lame, libbs2b,
libcddb, libcdio082, libcue, libjack2, libmad, libmcs, libmms, libmodplug,
@ -24,16 +24,14 @@ let
};
in
stdenv.mkDerivation {
mkDerivation {
inherit version;
name = "audacious-qt5-${version}";
sourceFiles = lib.attrValues sources;
sourceRoots = lib.attrNames sources;
nativeBuildInputs = [
gettext makeQtWrapper pkgconfig
];
nativeBuildInputs = [ gettext pkgconfig ];
buildInputs = [
# Core dependencies
@ -68,15 +66,9 @@ stdenv.mkDerivation {
fi
done
source $stdenv/setup
wrapQtProgram $out/bin/audacious
wrapQtProgram $out/bin/audtool
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
meta = with lib; {
description = "Audio player";
homepage = http://audacious-media-player.org/;
maintainers = with maintainers; [ ttuegel ];

View File

@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, cmake, vlc
, withQt4 ? false, qt4
, withQt5 ? true, qtbase, qtsvg, qttools, makeQtWrapper
, withQt5 ? true, qtbase, qtsvg, qttools
# Cantata doesn't build with cdparanoia enabled so we disable that
# default for now until I (or someone else) figure it out.
@ -63,8 +63,6 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional withMusicbrainz libmusicbrainz5
++ stdenv.lib.optional (withTaglib && withDevices) udisks2;
nativeBuildInputs = stdenv.lib.optional withQt5 makeQtWrapper;
cmakeFlags = stdenv.lib.flatten [
(fstat withQt5 "QT5")
(fstats withTaglib [ "TAGLIB" "TAGLIB_EXTRAS" ])
@ -88,10 +86,6 @@ stdenv.mkDerivation rec {
sed -i -e 's/STRLESS/VERSION_LESS/g' cmake/FindTaglib.cmake
'';
postInstall = stdenv.lib.optionalString withQt5 ''
wrapQtProgram "$out/bin/cantata"
'';
meta = with stdenv.lib; {
homepage = https://github.com/cdrummond/cantata;
description = "A graphical client for MPD";

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fftw, libsndfile, qtbase, qtmultimedia, qmakeHook, makeQtWrapper }:
{ stdenv, fetchFromGitHub, fftw, libsndfile, qtbase, qtmultimedia, qmake }:
let
@ -37,9 +37,9 @@ in stdenv.mkDerivation rec {
owner = "gillesdegottex";
};
buildInputs = [ fftw libsndfile qtbase qtmultimedia qmakeHook ];
buildInputs = [ fftw libsndfile qtbase qtmultimedia ];
nativeBuildInputs = [ makeQtWrapper ];
nativeBuildInputs = [ qmake ];
postPatch = ''
substituteInPlace dfasma.pro --replace '$$DFASMAVERSIONGITPRO' '${version}'
@ -53,10 +53,6 @@ in stdenv.mkDerivation rec {
enableParallelBuilding = true;
postInstall = ''
wrapQtProgram "$out/bin/dfasma"
'';
meta = with stdenv.lib; {
description = "Analyse and compare audio files in time and frequency";
longDescription = ''

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, fftw, freeglut, mesa_glu, qtbase, qtmultimedia, qmakeHook
{ stdenv, fetchFromGitHub, fftw, freeglut, mesa_glu, qtbase, qtmultimedia, qmake
, alsaSupport ? true, alsaLib ? null
, jackSupport ? false, libjack2 ? null
, portaudioSupport ? false, portaudio ? null }:
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
owner = "gillesdegottex";
};
nativeBuildInputs = [ qmakeHook ];
nativeBuildInputs = [ qmake ];
buildInputs = [ fftw qtbase qtmultimedia ]
++ optionals alsaSupport [ alsaLib ]
++ optionals jackSupport [ libjack2 ]

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, alsaLib, pkgconfig, qtbase, qtscript, qmakeHook
{ stdenv, fetchFromGitHub, alsaLib, pkgconfig, qtbase, qtscript, qmake
}:
stdenv.mkDerivation rec {
@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
sha256 = "184ydb9f1303v332k5k3f1ki7cb6nkxhh6ij0yn72v7dp7figrgj";
};
buildInputs = [ alsaLib pkgconfig qtbase qtscript qmakeHook ];
nativeBuildInputs = [ qmake ];
buildInputs = [ alsaLib pkgconfig qtbase qtscript ];
qmakeFlags = [ "PREFIX=/" ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, libav_0_8, libkeyfinder, qtbase, qtxmlpatterns, qmakeHook, taglib }:
{ stdenv, fetchFromGitHub, libav_0_8, libkeyfinder, qtbase, qtxmlpatterns, qmake, taglib }:
stdenv.mkDerivation rec {
name = "keyfinder-${version}";
@ -11,7 +11,8 @@ stdenv.mkDerivation rec {
owner = "ibsh";
};
buildInputs = [ libav_0_8 libkeyfinder qtbase qtxmlpatterns qmakeHook taglib ];
nativeBuildInputs = [ qmake ];
buildInputs = [ libav_0_8 libkeyfinder qtbase qtxmlpatterns taglib ];
postPatch = ''
substituteInPlace is_KeyFinder.pro \

View File

@ -2,8 +2,8 @@
{ stdenv, fetchurl, alsaLib, bzip2, fftw, libjack2, libX11, liblo
, libmad, libogg, librdf, librdf_raptor, librdf_rasqal, libsamplerate
, libsndfile, pkgconfig, libpulseaudio, makeQtWrapper, qtbase, redland
, qmakeHook, rubberband, serd, sord, vampSDK, fftwFloat
, libsndfile, pkgconfig, libpulseaudio, qtbase, redland
, qmake, rubberband, serd, sord, vampSDK, fftwFloat
}:
stdenv.mkDerivation rec {
@ -16,11 +16,10 @@ stdenv.mkDerivation rec {
};
buildInputs =
[ libsndfile qtbase qmakeHook fftw fftwFloat bzip2 librdf rubberband
[ libsndfile qtbase fftw fftwFloat bzip2 librdf rubberband
libsamplerate vampSDK alsaLib librdf_raptor librdf_rasqal redland
serd
sord
pkgconfig
# optional
libjack2
# portaudio
@ -32,7 +31,7 @@ stdenv.mkDerivation rec {
libX11
];
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
nativeBuildInputs = [ pkgconfig qmake ];
configurePhase = ''
for i in sonic-visualiser svapp svcore svgui;
@ -44,7 +43,6 @@ stdenv.mkDerivation rec {
mkdir -p $out/{bin,share/sonic-visualiser}
cp sonic-visualiser $out/bin/
cp -r samples $out/share/sonic-visualiser/
wrapQtProgram "$out/bin/sonic-visualiser"
'';
meta = with stdenv.lib; {

View File

@ -1,13 +1,19 @@
{ stdenv, lib, makeQtWrapper, fetchFromGitHub, fetchpatch
{ mkDerivation, lib, copyPathsToStore, fetchFromGitHub, fetchpatch
, cmake, extra-cmake-modules, pkgconfig, libxcb, libpthreadstubs, lndir
, libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam, systemd
, themes
}:
let
version = "0.14.0";
unwrapped = stdenv.mkDerivation rec {
/* Fix display of user avatars. */
patchFixUserAvatars = fetchpatch {
url = https://github.com/sddm/sddm/commit/ecb903e48822bd90650bdd64fe80754e3e9664cb.patch;
sha256 = "0zm88944pwdad8grmv0xwnxl23xml85ryc71x2xac233jxdyx6ms";
};
in mkDerivation rec {
name = "sddm-unwrapped-${version}";
src = fetchFromGitHub {
@ -17,13 +23,9 @@ let
sha256 = "0wwid23kw0725zpw67zchalg9mmharr7sn4yzhijq7wqpsczjfxj";
};
patches = [
./0001-ignore-config-mtime.patch
(fetchpatch { /* Fix display of user avatars. */
url = https://github.com/sddm/sddm/commit/ecb903e48822bd90650bdd64fe80754e3e9664cb.patch;
sha256 = "0zm88944pwdad8grmv0xwnxl23xml85ryc71x2xac233jxdyx6ms";
})
];
patches =
copyPathsToStore (lib.readPathsFromFile ./. ./series)
++ [ patchFixUserAvatars ];
postPatch =
# Module Qt5::Test must be included in `find_package` before it is used.
@ -53,69 +55,18 @@ let
];
preConfigure = ''
export cmakeFlags="$cmakeFlags -DQT_IMPORTS_DIR=$out/lib/qt5/qml -DCMAKE_INSTALL_SYSCONFDIR=$out/etc -DSYSTEMD_SYSTEM_UNIT_DIR=$out/lib/systemd/system"
export cmakeFlags="$cmakeFlags -DQT_IMPORTS_DIR=$out/$qtQmlPrefix -DCMAKE_INSTALL_SYSCONFDIR=$out/etc -DSYSTEMD_SYSTEM_UNIT_DIR=$out/lib/systemd/system"
'';
enableParallelBuilding = true;
postInstall = ''
# remove empty scripts
rm "$out/share/sddm/scripts/Xsetup" "$out/share/sddm/scripts/Xstop"
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "QML based X11 display manager";
homepage = "https://github.com/sddm/sddm";
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar ttuegel ];
};
};
in
stdenv.mkDerivation {
name = "sddm-${version}";
nativeBuildInputs = [ lndir makeQtWrapper ];
buildInputs = [ unwrapped ] ++ themes;
themes = map (pkg: pkg.out or pkg) themes;
inherit unwrapped;
unpackPhase = "true";
configurePhase = "runHook preConfigure; runHook postConfigure";
buildPhase = "runHook preBuild; runHook postBuild";
installPhase = ''
runHook preInstall
propagated=
for i in $unwrapped $themes; do
findInputs $i propagated propagated-user-env-packages
if [ -z "$crossConfig" ]; then
findInputs $i propagated propagated-native-build-inputs
else
findInputs $i propagated propagated-build-inputs
fi
done
for pkg in $propagated; do
addToSearchPath RUNTIME_XDG_DATA_DIRS "$pkg/share"
addToSearchPath RUNTIME_XDG_CONFIG_DIRS "$pkg/etc/xdg"
done
mkdir -p "$out/bin"
makeQtWrapper "$unwrapped/bin/sddm" "$out/bin/sddm"
mkdir -p "$out/share/sddm"
for pkg in $unwrapped $themes; do
local sddmDir="$pkg/share/sddm"
if [ -d "$sddmDir" ]; then
lndir -silent "$sddmDir" "$out/share/sddm"
fi
done
runHook postInstall
'';
inherit (unwrapped) meta;
}

View File

@ -0,0 +1 @@
sddm-ignore-config-mtime.patch

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, gettext, pkgconfig, extra-cmake-modules, makeQtWrapper
{ mkDerivation, lib, fetchurl, cmake, gettext, pkgconfig, extra-cmake-modules
, qtquickcontrols, qtwebkit, qttools, kde-cli-tools
, kconfig, kdeclarative, kdoctools, kiconthemes, ki18n, kitemmodels, kitemviews
, kjobwidgets, kcmutils, kio, knewstuff, knotifyconfig, kparts, ktexteditor
@ -12,7 +12,7 @@ let
version = "5.1.1";
in
stdenv.mkDerivation rec {
mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
@ -21,21 +21,23 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [
cmake gettext pkgconfig extra-cmake-modules makeWrapper makeQtWrapper
cmake gettext pkgconfig extra-cmake-modules makeWrapper
];
buildInputs = [
kdevelop-pg-qt
llvmPackages.llvm llvmPackages.clang-unwrapped
];
propagatedBuildInputs = [
qtquickcontrols qtwebkit
kconfig kdeclarative kdoctools kiconthemes ki18n kitemmodels kitemviews
kjobwidgets kcmutils kio knewstuff knotifyconfig kparts ktexteditor
threadweaver kxmlgui kwindowsystem grantlee plasma-framework krunner
kdevplatform kdevelop-pg-qt shared_mime_info libksysguard konsole.unwrapped
llvmPackages.llvm llvmPackages.clang-unwrapped
kdevplatform shared_mime_info libksysguard konsole
];
postInstall = ''
wrapQtProgram "$out/bin/kdevelop"
# The kdevelop! script (shell environment) needs qdbus and kioclient5 in PATH.
wrapProgram "$out/bin/kdevelop!" --prefix PATH ":" "${qttools}/bin:${kde-cli-tools}/bin"
@ -47,7 +49,7 @@ stdenv.mkDerivation rec {
sed -E -i "$kdev_fixup_sed" "$out/bin/.kdevelop!-wrapped"
'';
meta = with stdenv.lib; {
meta = with lib; {
maintainers = [ maintainers.ambrop72 ];
platforms = platforms.linux;
description = "KDE official IDE";
@ -60,6 +62,6 @@ stdenv.mkDerivation rec {
libraries and is under development since 1998.
'';
homepage = https://www.kdevelop.org;
license = with stdenv.lib.licenses; [ gpl2Plus lgpl2Plus ];
license = with licenses; [ gpl2Plus lgpl2Plus ];
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, cmake, gettext, pkgconfig, extra-cmake-modules, makeQtWrapper
{ stdenv, fetchurl, fetchpatch, cmake, gettext, pkgconfig, extra-cmake-modules
, boost, subversion, apr, aprutil
, qtscript, qtwebkit, grantlee, karchive, kconfig, kcoreaddons, kguiaddons, kiconthemes, ki18n
, kitemmodels, kitemviews, kio, kparts, sonnet, kcmutils, knewstuff, knotifications
@ -25,9 +25,8 @@ stdenv.mkDerivation rec {
})
];
nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules makeQtWrapper ];
nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules ];
propagatedBuildInputs = [ ];
buildInputs = [
boost subversion apr aprutil
qtscript qtwebkit grantlee karchive kconfig kcoreaddons kguiaddons kiconthemes

View File

@ -1,9 +1,9 @@
{ kdeDerivation
{ mkDerivation
, lib
, fetchgit
, extra-cmake-modules
, kdoctools
, kdeWrapper
, wrapGAppsHook
, qtscript
, kconfig
, kcrash
@ -21,9 +21,7 @@
, poppler
}:
let
unwrapped =
kdeDerivation rec {
mkDerivation rec {
name = "kile-${version}";
version = "2017-02-09";
@ -34,9 +32,9 @@ let
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
nativeBuildInputs = [ extra-cmake-modules wrapGAppsHook ];
buildInputs = [
propagatedBuildInputs = [
kconfig
kcrash
kdbusaddons
@ -49,22 +47,17 @@ let
kparts
ktexteditor
kwindowsystem
okular.unwrapped
okular
poppler
qtscript
];
propagatedUserEnvPkgs = [ konsole ];
meta = {
description = "Kile is a user friendly TeX/LaTeX authoring tool for the KDE desktop environment";
homepage = https://www.kde.org/applications/office/kile/;
maintainers = with lib.maintainers; [ fridh ];
license = lib.licenses.gpl2Plus;
};
};
in
kdeWrapper
{
inherit unwrapped;
targets = [ "bin/kile" ];
paths = [ konsole.unwrapped okular.unwrapped ];
}

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, cmake, doxygen
, libmsgpack, makeQtWrapper, neovim, pythonPackages, qtbase }:
{ stdenv, fetchFromGitHub, cmake, doxygen, makeWrapper
, libmsgpack, neovim, pythonPackages, qtbase }:
stdenv.mkDerivation rec {
name = "neovim-qt-${version}";
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
jinja2 msgpack python
]);
nativeBuildInputs = [ cmake doxygen makeQtWrapper ];
nativeBuildInputs = [ cmake doxygen makeWrapper ];
enableParallelBuilding = true;
@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
'';
postInstall = ''
wrapQtProgram "$out/bin/nvim-qt" \
wrapProgram "$out/bin/nvim-qt" \
--prefix PATH : "${neovim}/bin"
'';

View File

@ -10,7 +10,8 @@ in
stdenv.mkDerivation rec {
name = "RStudio-${version}";
buildInputs = [ cmake boost163 zlib openssl R qt5.full qt5.qtwebkit qt5.qmakeHook libuuid unzip ant jdk makeWrapper pandoc ];
buildInputs = [ cmake boost163 zlib openssl R qt5.full qt5.qtwebkit libuuid unzip ant jdk makeWrapper pandoc ];
nativeBuildInputs = [ qt5.qmake ];
src = fetchurl {
url = "https://github.com/rstudio/rstudio/archive/v${version}.tar.gz";
@ -90,7 +91,7 @@ stdenv.mkDerivation rec {
cp ${pandoc}/bin/pandoc dependencies/common/pandoc/
'';
cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" "-DQT_QMAKE_EXECUTABLE=${qt5.qmakeHook}/bin/qmake" ];
cmakeFlags = [ "-DRSTUDIO_TARGET=Desktop" "-DQT_QMAKE_EXECUTABLE=${qt5.qmake}/bin/qmake" ];
desktopItem = makeDesktopItem {
name = name;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, pkgconfig, qmakeHook
{ stdenv, fetchFromGitHub, pkgconfig, qmake
, python, qtbase, qttools, zlib }:
let
@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
sha256 = "087jl36g6w2g5l70gz573iwyvx3r7i8fijl3y4mmmf8pyqdyq1n2";
};
nativeBuildInputs = [ pkgconfig qmakeHook ];
nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [ python qtbase qttools ];
enableParallelBuilding = true;

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, qtbase, qmakeHook, makeWrapper }:
{ lib, stdenv, fetchurl, qtbase, qmake, makeWrapper }:
stdenv.mkDerivation {
name = "awesomebump-4.0";
@ -10,7 +10,8 @@ stdenv.mkDerivation {
setSourceRoot = "sourceRoot=$(echo */Sources)";
buildInputs = [ qtbase qmakeHook makeWrapper ];
nativeBuildInputs = [ makeWrapper qmake ];
buildInputs = [ qtbase ];
enableParallelBuilding = true;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, extra-cmake-modules, makeQtWrapper
{ mkDerivation, lib, fetchurl, cmake, extra-cmake-modules, wrapGAppsHook
# For `digitaglinktree`
, perl, sqlite
@ -44,7 +44,7 @@
, oxygen
}:
stdenv.mkDerivation rec {
mkDerivation rec {
name = "digikam-${version}";
version = "5.4.0";
@ -53,26 +53,11 @@ stdenv.mkDerivation rec {
sha256 = "0dgsgji14l5zvxny36hrfsp889fsfrsbbn9bg57m18404xp903kg";
};
nativeBuildInputs = [ cmake extra-cmake-modules makeQtWrapper ];
nativeBuildInputs = [ cmake extra-cmake-modules kdoctools wrapGAppsHook ];
patches = [ ./0001-Disable-fno-operator-names.patch ];
buildInputs = [
qtbase
qtxmlpatterns
qtsvg
qtwebkit
kconfigwidgets
kcoreaddons
kdoctools
kfilemetadata
knotifications
knotifyconfig
ktextwidgets
kwidgetsaddons
kxmlgui
bison
boost
eigen
@ -86,12 +71,28 @@ stdenv.mkDerivation rec {
liblqr1
libqtav
libusb1
marble.unwrapped
mysql
opencv
threadweaver
];
propagatedBuildInputs = [
qtbase
qtxmlpatterns
qtsvg
qtwebkit
kconfigwidgets
kcoreaddons
kfilemetadata
knotifications
knotifyconfig
ktextwidgets
kwidgetsaddons
kxmlgui
marble
oxygen
threadweaver
];
enableParallelBuilding = true;
@ -104,22 +105,18 @@ stdenv.mkDerivation rec {
"-DENABLE_MEDIAPLAYER=1"
];
fixupPhase = ''
preFixup = ''
gappsWrapperArgs+=(--prefix PATH : ${lib.makeBinPath [ gnumake hugin enblend-enfuse ]})
substituteInPlace $out/bin/digitaglinktree \
--replace "/usr/bin/perl" "${perl}/bin/perl" \
--replace "/usr/bin/sqlite3" "${sqlite}/bin/sqlite3"
wrapQtProgram $out/bin/digikam \
--prefix PATH : "${gnumake}/bin:${hugin}/bin:${enblend-enfuse}/bin"
wrapQtProgram $out/bin/showfoto
'';
meta = {
meta = with lib; {
description = "Photo Management Program";
license = stdenv.lib.licenses.gpl2;
license = licenses.gpl2;
homepage = http://www.digikam.org;
maintainers = with stdenv.lib.maintainers; [ the-kenny ];
platforms = stdenv.lib.platforms.linux;
maintainers = with maintainers; [ the-kenny ];
platforms = platforms.linux;
};
}

View File

@ -1,6 +1,5 @@
{ stdenv, fetchurl, pkgconfig, zlib, freetype, cairo, lua5, texlive, ghostscript
{ stdenv, fetchurl, makeWrapper, pkgconfig, zlib, freetype, cairo, lua5, texlive, ghostscript
, libjpeg, qtbase
, makeQtWrapper
}:
stdenv.mkDerivation rec {
@ -28,14 +27,14 @@ stdenv.mkDerivation rec {
LUA_PACKAGE = "lua";
buildInputs = [
libjpeg pkgconfig zlib qtbase freetype cairo lua5 texlive ghostscript
libjpeg zlib qtbase freetype cairo lua5 texlive ghostscript
];
nativeBuildInputs = [ makeQtWrapper ];
nativeBuildInputs = [ makeWrapper pkgconfig ];
postFixup = ''
for prog in $out/bin/*; do
wrapQtProgram "$prog" --prefix PATH : "${texlive}/bin"
wrapProgram "$prog" --prefix PATH : "${texlive}/bin"
done
'';

View File

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, cmake, extra-cmake-modules, makeQtWrapper
{ mkDerivation, lib, fetchurl, cmake, extra-cmake-modules
, karchive, kconfig, kwidgetsaddons, kcompletion, kcoreaddons
, kguiaddons, ki18n, kitemmodels, kitemviews, kwindowsystem
, kio, kcrash
@ -6,7 +6,7 @@
, openjpeg, opencolorio, vc, poppler_qt5, curl, ilmbase
}:
stdenv.mkDerivation rec {
mkDerivation rec {
name = "krita-${version}";
ver_min = "3.1.3";
version = "${ver_min}";
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
sha256 = "125js6c8aw4bqhs28pwnl3rbgqx5yx4zsklw7bfdhy3vf6lrysw1";
};
nativeBuildInputs = [ cmake extra-cmake-modules makeQtWrapper ];
nativeBuildInputs = [ cmake extra-cmake-modules ];
buildInputs = [
karchive kconfig kwidgetsaddons kcompletion kcoreaddons kguiaddons
@ -27,15 +27,7 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = [ "-I${ilmbase.dev}/include/OpenEXR" ];
enableParallelBuilding = true;
postInstall = ''
for i in $out/bin/*; do
wrapQtProgram "$i"
done
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "A free an open source painting application";
homepage = "https://krita.org/";
maintainers = with maintainers; [ abbradar ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, makeQtWrapper, exiv2, graphicsmagick
{ stdenv, fetchurl, cmake, exiv2, graphicsmagick
, qtbase, qtdeclarative, qtmultimedia, qtquickcontrols, qttools
}:
@ -12,8 +12,9 @@ stdenv.mkDerivation rec {
sha256 = "0j2kvxfb5pd9abciv161nkcsyam6n8kfqs8ymwj2mxiqflwbmfl1";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
cmake makeQtWrapper qtbase qtquickcontrols qttools exiv2 graphicsmagick
qtbase qtquickcontrols qttools exiv2 graphicsmagick
qtmultimedia qtdeclarative
];
@ -21,10 +22,6 @@ stdenv.mkDerivation rec {
export MAGICK_LOCATION="${graphicsmagick}/include/GraphicsMagick"
'';
postInstall = ''
wrapQtProgram $out/bin/photoqt
'';
meta = {
homepage = "http://photoqt.org/";
description = "Simple, yet powerful and good looking image viewer";

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, qtbase, qmakeHook, exiv2 }:
{ stdenv, fetchFromGitHub, qtbase, qmake, exiv2 }:
stdenv.mkDerivation rec {
name = "phototonic-${version}";
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ qtbase exiv2 ];
nativeBuildInputs = [ qmakeHook ];
nativeBuildInputs = [ qmake ];
preConfigure = ''
sed -i 's;/usr;$$PREFIX/;g' phototonic.pro

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, fetchurl, cgal, boost, gmp, mpfr, flex, bison, dxflib, readline
, qtbase, qmakeHook, mesa_glu
, qtbase, qmake, mesa_glu
}:
stdenv.mkDerivation rec {
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
})
];
nativeBuildInputs = [ qmakeHook ];
nativeBuildInputs = [ qmake ];
buildInputs = [ qtbase cgal boost gmp mpfr flex bison dxflib readline mesa_glu ];
meta = with stdenv.lib; {

View File

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, cmake, qtbase, qtx11extras
, pkgconfig, xorg, makeQtWrapper, vulkan-loader
{ stdenv, fetchFromGitHub, cmake, makeWrapper, pkgconfig
, qtbase, qtx11extras, vulkan-loader, xorg
}:
stdenv.mkDerivation rec {
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
buildInputs = [
qtbase xorg.libpthreadstubs xorg.libXdmcp qtx11extras vulkan-loader
];
nativeBuildInputs = [ cmake makeQtWrapper pkgconfig ];
nativeBuildInputs = [ cmake makeWrapper pkgconfig ];
cmakeFlags = [
"-DBUILD_VERSION_HASH=${src.rev}-distro-nix"
@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
mkdir $out/bin/.bin
mv $out/bin/qrenderdoc $out/bin/.bin/qrenderdoc
ln -s $out/bin/.bin/qrenderdoc $out/bin/qrenderdoc
wrapQtProgram $out/bin/qrenderdoc --suffix LD_LIBRARY_PATH : $out/lib --suffix LD_LIBRARY_PATH : ${vulkan-loader}/lib
wrapProgram $out/bin/qrenderdoc --suffix LD_LIBRARY_PATH : $out/lib --suffix LD_LIBRARY_PATH : ${vulkan-loader}/lib
mv $out/bin/renderdoccmd $out/bin/.bin/renderdoccmd
ln -s $out/bin/.bin/renderdoccmd $out/bin/renderdoccmd
wrapProgram $out/bin/renderdoccmd --suffix LD_LIBRARY_PATH : $out/lib --suffix LD_LIBRARY_PATH : ${vulkan-loader}/lib

View File

@ -1,11 +1,11 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules,
akonadi-mime, grantlee, kcontacts, kio, kitemmodels, kmime, qtwebengine,
akonadi
akonadi, akonadi-mime, grantlee, kcontacts, kdbusaddons, ki18n, kiconthemes,
kio, kitemmodels, kmime, ktextwidgets, qtwebengine,
}:
kdeApp {
mkDerivation {
name = "akonadi-contacts";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 ];
@ -13,7 +13,9 @@ kdeApp {
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
akonadi-mime grantlee kcontacts kio kitemmodels kmime qtwebengine
akonadi-mime grantlee kcontacts kdbusaddons ki18n kiconthemes kio
kitemmodels kmime ktextwidgets qtwebengine
];
propagatedBuildInputs = [ akonadi ];
outputs = [ "out" "dev" ];
}

View File

@ -1,15 +1,16 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules,
akonadi, kdbusaddons, kio, kitemmodels, kmime
akonadi, kdbusaddons, ki18n, kio, kitemmodels, kmime
}:
kdeApp {
mkDerivation {
name = "akonadi-mime";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ akonadi kdbusaddons kio kitemmodels kmime ];
buildInputs = [ akonadi kdbusaddons ki18n kio kitemmodels kmime ];
outputs = [ "out" "dev" ];
}

View File

@ -1,20 +0,0 @@
{
kdeApp, lib,
extra-cmake-modules,
kcompletion, kconfigwidgets, kdbusaddons, kdesignerplugin, kiconthemes,
kio,
boost, kitemmodels
}:
kdeApp {
name = "akonadi";
meta = {
license = [ lib.licenses.lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcompletion kconfigwidgets kdbusaddons kdesignerplugin kiconthemes kio
];
propagatedBuildInputs = [ boost kitemmodels ];
}

View File

@ -0,0 +1,191 @@
Index: akonadi-17.04.0/src/server/storage/dbconfigmysql.cpp
===================================================================
--- akonadi-17.04.0.orig/src/server/storage/dbconfigmysql.cpp
+++ akonadi-17.04.0/src/server/storage/dbconfigmysql.cpp
@@ -63,7 +63,6 @@ bool DbConfigMysql::init(QSettings &sett
// determine default settings depending on the driver
QString defaultHostName;
QString defaultOptions;
- QString defaultServerPath;
QString defaultCleanShutdownCommand;
#ifndef Q_OS_WIN
@@ -71,25 +70,8 @@ bool DbConfigMysql::init(QSettings &sett
#endif
const bool defaultInternalServer = true;
-#ifdef MYSQLD_EXECUTABLE
- if (QFile::exists(QStringLiteral(MYSQLD_EXECUTABLE))) {
- defaultServerPath = QStringLiteral(MYSQLD_EXECUTABLE);
- }
-#endif
- const QStringList mysqldSearchPath = QStringList()
- << QStringLiteral("/usr/bin")
- << QStringLiteral("/usr/sbin")
- << QStringLiteral("/usr/local/sbin")
- << QStringLiteral("/usr/local/libexec")
- << QStringLiteral("/usr/libexec")
- << QStringLiteral("/opt/mysql/libexec")
- << QStringLiteral("/opt/local/lib/mysql5/bin")
- << QStringLiteral("/opt/mysql/sbin");
- if (defaultServerPath.isEmpty()) {
- defaultServerPath = XdgBaseDirs::findExecutableFile(QStringLiteral("mysqld"), mysqldSearchPath);
- }
- const QString mysqladminPath = XdgBaseDirs::findExecutableFile(QStringLiteral("mysqladmin"), mysqldSearchPath);
+ const QString mysqladminPath = QStringLiteral(NIXPKGS_MYSQL_MYSQLADMIN);
if (!mysqladminPath.isEmpty()) {
#ifndef Q_OS_WIN
defaultCleanShutdownCommand = QStringLiteral("%1 --defaults-file=%2/mysql.conf --socket=%3/mysql.socket shutdown")
@@ -99,10 +81,10 @@ bool DbConfigMysql::init(QSettings &sett
#endif
}
- mMysqlInstallDbPath = XdgBaseDirs::findExecutableFile(QStringLiteral("mysql_install_db"), mysqldSearchPath);
+ mMysqlInstallDbPath = QStringLiteral(NIXPKGS_MYSQL_MYSQL_INSTALL_DB);
qCDebug(AKONADISERVER_LOG) << "Found mysql_install_db: " << mMysqlInstallDbPath;
- mMysqlCheckPath = XdgBaseDirs::findExecutableFile(QStringLiteral("mysqlcheck"), mysqldSearchPath);
+ mMysqlCheckPath = QStringLiteral(NIXPKGS_MYSQL_MYSQLCHECK);
qCDebug(AKONADISERVER_LOG) << "Found mysqlcheck: " << mMysqlCheckPath;
mInternalServer = settings.value(QStringLiteral("QMYSQL/StartServer"), defaultInternalServer).toBool();
@@ -119,7 +101,7 @@ bool DbConfigMysql::init(QSettings &sett
mUserName = settings.value(QStringLiteral("User")).toString();
mPassword = settings.value(QStringLiteral("Password")).toString();
mConnectionOptions = settings.value(QStringLiteral("Options"), defaultOptions).toString();
- mMysqldPath = settings.value(QStringLiteral("ServerPath"), defaultServerPath).toString();
+ mMysqldPath = QStringLiteral(NIXPKGS_MYSQL_MYSQLD);
mCleanServerShutdownCommand = settings.value(QStringLiteral("CleanServerShutdownCommand"), defaultCleanShutdownCommand).toString();
settings.endGroup();
@@ -129,9 +111,6 @@ bool DbConfigMysql::init(QSettings &sett
// intentionally not namespaced as we are the only one in this db instance when using internal mode
mDatabaseName = QStringLiteral("akonadi");
}
- if (mInternalServer && (mMysqldPath.isEmpty() || !QFile::exists(mMysqldPath))) {
- mMysqldPath = defaultServerPath;
- }
qCDebug(AKONADISERVER_LOG) << "Using mysqld:" << mMysqldPath;
@@ -140,9 +119,6 @@ bool DbConfigMysql::init(QSettings &sett
settings.setValue(QStringLiteral("Name"), mDatabaseName);
settings.setValue(QStringLiteral("Host"), mHostName);
settings.setValue(QStringLiteral("Options"), mConnectionOptions);
- if (!mMysqldPath.isEmpty()) {
- settings.setValue(QStringLiteral("ServerPath"), mMysqldPath);
- }
settings.setValue(QStringLiteral("StartServer"), mInternalServer);
settings.endGroup();
settings.sync();
@@ -196,7 +172,7 @@ bool DbConfigMysql::startInternalServer(
#endif
// generate config file
- const QString globalConfig = XdgBaseDirs::findResourceFile("config", QStringLiteral("akonadi/mysql-global.conf"));
+ const QString globalConfig = QStringLiteral(NIX_OUT "/etc/xdg/akonadi/mysql-global.conf");
const QString localConfig = XdgBaseDirs::findResourceFile("config", QStringLiteral("akonadi/mysql-local.conf"));
const QString actualConfig = StandardDirs::saveDir("data") + QLatin1String("/mysql.conf");
if (globalConfig.isEmpty()) {
Index: akonadi-17.04.0/src/server/storage/dbconfigpostgresql.cpp
===================================================================
--- akonadi-17.04.0.orig/src/server/storage/dbconfigpostgresql.cpp
+++ akonadi-17.04.0/src/server/storage/dbconfigpostgresql.cpp
@@ -58,7 +58,6 @@ bool DbConfigPostgresql::init(QSettings
// determine default settings depending on the driver
QString defaultHostName;
QString defaultOptions;
- QString defaultServerPath;
QString defaultInitDbPath;
QString defaultPgData;
@@ -70,35 +69,7 @@ bool DbConfigPostgresql::init(QSettings
mInternalServer = settings.value(QStringLiteral("QPSQL/StartServer"), defaultInternalServer).toBool();
if (mInternalServer) {
- QStringList postgresSearchPath;
-
-#ifdef POSTGRES_PATH
- const QString dir(QStringLiteral(POSTGRES_PATH));
- if (QDir(dir).exists()) {
- postgresSearchPath << QStringLiteral(POSTGRES_PATH);
- }
-#endif
- postgresSearchPath << QStringLiteral("/usr/sbin")
- << QStringLiteral("/usr/local/sbin");
- // Locale all versions in /usr/lib/postgresql (i.e. /usr/lib/postgresql/X.Y) in reversed
- // sorted order, so we search from the newest one to the oldest.
- QStringList postgresVersionedSearchPaths;
- QDir versionedDir(QStringLiteral("/usr/lib/postgresql"));
- if (versionedDir.exists()) {
- const auto versionedDirs = versionedDir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot, QDir::Name | QDir::Reversed);
- for (const auto &path : versionedDirs) {
- // Don't break once PostgreSQL 10 is released, but something more future-proof will be needed
- if (path.fileName().startsWith(QLatin1String("10."))) {
- postgresVersionedSearchPaths.prepend(path.absoluteFilePath() + QStringLiteral("/bin"));
- } else {
- postgresVersionedSearchPaths.append(path.absoluteFilePath() + QStringLiteral("/bin"));
- }
- }
- }
- postgresSearchPath.append(postgresVersionedSearchPaths);
-
- defaultServerPath = XdgBaseDirs::findExecutableFile(QStringLiteral("pg_ctl"), postgresSearchPath);
- defaultInitDbPath = XdgBaseDirs::findExecutableFile(QStringLiteral("initdb"), postgresSearchPath);
+ defaultInitDbPath = QStringLiteral(NIXPKGS_POSTGRES_INITDB);
defaultHostName = Utils::preferredSocketDirectory(StandardDirs::saveDir("data", QStringLiteral("db_misc")));
defaultPgData = StandardDirs::saveDir("data", QStringLiteral("db_data"));
}
@@ -118,10 +89,7 @@ bool DbConfigPostgresql::init(QSettings
mUserName = settings.value(QStringLiteral("User")).toString();
mPassword = settings.value(QStringLiteral("Password")).toString();
mConnectionOptions = settings.value(QStringLiteral("Options"), defaultOptions).toString();
- mServerPath = settings.value(QStringLiteral("ServerPath"), defaultServerPath).toString();
- if (mInternalServer && mServerPath.isEmpty()) {
- mServerPath = defaultServerPath;
- }
+ mServerPath = QStringLiteral(NIXPKGS_POSTGRES_PG_CTL);
qCDebug(AKONADISERVER_LOG) << "Found pg_ctl:" << mServerPath;
mInitDbPath = settings.value(QStringLiteral("InitDbPath"), defaultInitDbPath).toString();
if (mInternalServer && mInitDbPath.isEmpty()) {
@@ -142,7 +110,6 @@ bool DbConfigPostgresql::init(QSettings
settings.setValue(QStringLiteral("Port"), mHostPort);
}
settings.setValue(QStringLiteral("Options"), mConnectionOptions);
- settings.setValue(QStringLiteral("ServerPath"), mServerPath);
settings.setValue(QStringLiteral("InitDbPath"), mInitDbPath);
settings.setValue(QStringLiteral("StartServer"), mInternalServer);
settings.endGroup();
Index: akonadi-17.04.0/src/akonadicontrol/agentprocessinstance.cpp
===================================================================
--- akonadi-17.04.0.orig/src/akonadicontrol/agentprocessinstance.cpp
+++ akonadi-17.04.0/src/akonadicontrol/agentprocessinstance.cpp
@@ -62,7 +62,7 @@ bool AgentProcessInstance::start(const A
} else {
Q_ASSERT(agentInfo.launchMethod == AgentType::Launcher);
const QStringList arguments = QStringList() << executable << identifier();
- const QString agentLauncherExec = XdgBaseDirs::findExecutableFile(QStringLiteral("akonadi_agent_launcher"));
+ const QString agentLauncherExec = QStringLiteral(NIX_OUT "/bin/akonadi_agent_launcher");
mController->start(agentLauncherExec, arguments);
}
return true;
Index: akonadi-17.04.0/src/akonadicontrol/agentmanager.cpp
===================================================================
--- akonadi-17.04.0.orig/src/akonadicontrol/agentmanager.cpp
+++ akonadi-17.04.0/src/akonadicontrol/agentmanager.cpp
@@ -102,12 +102,12 @@ AgentManager::AgentManager(bool verbose,
mStorageController = new Akonadi::ProcessControl;
mStorageController->setShutdownTimeout(15 * 1000); // the server needs more time for shutdown if we are using an internal mysqld
connect(mStorageController, &Akonadi::ProcessControl::unableToStart, this, &AgentManager::serverFailure);
- mStorageController->start(QStringLiteral("akonadiserver"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
+ mStorageController->start(QStringLiteral(NIX_OUT "/bin/akonadiserver"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
if (mAgentServerEnabled) {
mAgentServer = new Akonadi::ProcessControl;
connect(mAgentServer, &Akonadi::ProcessControl::unableToStart, this, &AgentManager::agentServerFailure);
- mAgentServer->start(QStringLiteral("akonadi_agent_server"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
+ mAgentServer->start(QStringLiteral(NIX_OUT "/bin/akonadi_agent_server"), serviceArgs, Akonadi::ProcessControl::RestartOnCrash);
}
#ifndef QT_NO_DEBUG

View File

@ -0,0 +1,14 @@
Index: akonadi-17.04.0/src/server/storage/dbconfigmysql.cpp
===================================================================
--- akonadi-17.04.0.orig/src/server/storage/dbconfigmysql.cpp
+++ akonadi-17.04.0/src/server/storage/dbconfigmysql.cpp
@@ -229,8 +229,7 @@ bool DbConfigMysql::startInternalServer(
bool confUpdate = false;
QFile actualFile(actualConfig);
// update conf only if either global (or local) is newer than actual
- if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified()) ||
- (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) {
+ if (true) {
QFile globalFile(globalConfig);
QFile localFile(localConfig);
if (globalFile.open(QFile::ReadOnly) && actualFile.open(QFile::WriteOnly)) {

View File

@ -0,0 +1,36 @@
{
mkDerivation, copyPathsToStore, lib,
extra-cmake-modules,
kcompletion, kconfigwidgets, kdbusaddons, kdesignerplugin, kiconthemes,
kio,
boost, kitemmodels,
mysql
}:
mkDerivation {
name = "akonadi";
meta = {
license = [ lib.licenses.lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [
kcompletion kconfigwidgets kdbusaddons kdesignerplugin kiconthemes kio
];
propagatedBuildInputs = [ boost kitemmodels ];
cmakeFlags = [
"-DMYSQLD_EXECUTABLE=${lib.getBin mysql}/bin/mysqld"
];
NIX_CFLAGS_COMPILE = [
''-DNIXPKGS_MYSQL_MYSQLD="${lib.getBin mysql}/bin/mysqld"''
''-DNIXPKGS_MYSQL_MYSQLADMIN="${lib.getBin mysql}/bin/mysqladmin"''
''-DNIXPKGS_MYSQL_MYSQL_INSTALL_DB="${lib.getBin mysql}/bin/mysql_install_db"''
''-DNIXPKGS_MYSQL_MYSQLCHECK="${lib.getBin mysql}/bin/mysqlcheck"''
''-DNIXPKGS_POSTGRES_PG_CTL=""''
''-DNIXPKGS_POSTGRES_INITDB=""''
];
preConfigure = ''
NIX_CFLAGS_COMPILE+=" -DNIX_OUT=\"$out\""
'';
}

View File

@ -0,0 +1,2 @@
akonadi-paths.patch
akonadi-timestamps.patch

View File

@ -1,10 +1,10 @@
{
kdeApp, lib, config, kdeWrapper,
mkDerivation, lib, config, makeWrapper,
extra-cmake-modules, kdoctools, makeWrapper,
extra-cmake-modules, kdoctools,
karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, khtml, kio,
kservice, kpty, kwidgetsaddons, libarchive, kitemmodels,
karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, kitemmodels,
khtml, kio, kparts, kpty, kservice, kwidgetsaddons, libarchive,
# Archive tools
p7zip, unzipNLS, zip,
@ -13,35 +13,25 @@
unfreeEnableUnrar ? false, unrar,
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "ark";
nativeBuildInputs = [
extra-cmake-modules kdoctools makeWrapper
];
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
propagatedBuildInputs = [
khtml ki18n kio karchive kconfig kcrash kdbusaddons kiconthemes kservice
kpty kwidgetsaddons libarchive kitemmodels
karchive kconfig kcrash kdbusaddons khtml ki18n kiconthemes kio kitemmodels
kparts kpty kservice kwidgetsaddons libarchive
];
postInstall =
outputs = [ "out" "dev" ];
postFixup =
let
PATH =
lib.makeBinPath
([ p7zip unzipNLS zip ] ++ lib.optional unfreeEnableUnrar unrar);
in ''
wrapProgram "$out/bin/ark" \
--prefix PATH : "${PATH}"
wrapProgram "$out/bin/ark" --prefix PATH: "${PATH}"
'';
meta = {
license = with lib.licenses;
[ gpl2 lgpl3 ] ++ lib.optional unfreeEnableUnrar unfree;
maintainers = [ lib.maintainers.ttuegel ];
};
};
in
kdeWrapper
{
inherit unwrapped;
targets = [ "bin/ark" ];
}

View File

@ -1,10 +1,10 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
baloo, kconfig, kdelibs4support, kfilemetadata, ki18n, kio, kservice
}:
kdeApp {
mkDerivation {
name = "baloo-widgets";
meta = {
license = [ lib.licenses.lgpl21 ];
@ -14,4 +14,5 @@ kdeApp {
propagatedBuildInputs = [
baloo kconfig kdelibs4support kfilemetadata ki18n kio kservice
];
outputs = [ "out" "dev" ];
}

View File

@ -1,4 +1,4 @@
{ kdeDerivation, lib, debug, srcs }:
{ mkDerivation, lib, srcs }:
args:
@ -7,14 +7,11 @@ let
sname = args.sname or name;
inherit (srcs."${sname}") src version;
in
kdeDerivation (args // {
mkDerivation (args // {
name = "${name}-${version}";
inherit src;
cmakeFlags =
(args.cmakeFlags or [])
++ [ "-DBUILD_TESTING=OFF" ]
++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
outputs = args.outputs or [ "out" "dev" ];
meta = {
platforms = lib.platforms.linux;

View File

@ -27,9 +27,7 @@ still shows most of the available features is in `./gwenview.nix`.
{
stdenv, lib, libsForQt5, fetchurl, recurseIntoAttrs,
kdeDerivation, plasma5,
attica, phonon,
debug ? false,
plasma5, attica, phonon,
}:
let
@ -42,14 +40,15 @@ let
packages = self: with self;
let
callPackage = self.newScope {
kdeApp = import ./build-support/application.nix {
inherit lib kdeDerivation;
inherit debug srcs;
mkDerivation = import ./build-support/application.nix {
inherit lib;
inherit srcs;
mkDerivation = libsForQt5.callPackage ({ mkDerivation }: mkDerivation) {};
};
};
in {
kdelibs = callPackage ./kdelibs { inherit attica phonon; };
akonadi = callPackage ./akonadi.nix {};
akonadi = callPackage ./akonadi {};
akonadi-contacts = callPackage ./akonadi-contacts.nix {};
akonadi-mime = callPackage ./akonadi-mime.nix {};
ark = callPackage ./ark/default.nix {};

View File

@ -1,10 +1,10 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
dolphin, kdelibs4support, ki18n, kio, kxmlgui
}:
kdeApp {
mkDerivation {
name = "dolphin-plugins";
meta = {
license = [ lib.licenses.gpl2 ];
@ -12,6 +12,6 @@ kdeApp {
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
dolphin.unwrapped kdelibs4support ki18n kio kxmlgui
dolphin kdelibs4support ki18n kio kxmlgui
];
}

View File

@ -1,32 +1,24 @@
{
kdeApp, lib, kdeWrapper,
extra-cmake-modules, kdoctools, makeQtWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
baloo, baloo-widgets, dolphin-plugins, kactivities, kbookmarks, kcmutils,
kcompletion, kconfig, kcoreaddons, kdelibs4support, kdbusaddons,
kfilemetadata, ki18n, kiconthemes, kinit, kio, knewstuff, knotifications,
konsole, kparts, ktexteditor, kwindowsystem, phonon, solid
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "dolphin";
meta = {
license = with lib.licenses; [ gpl2 fdl12 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
baloo baloo-widgets kactivities kbookmarks kcmutils kcompletion kconfig
kcoreaddons kdelibs4support kdbusaddons kfilemetadata ki18n kiconthemes
kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem
phonon solid
];
};
in
kdeWrapper
{
inherit unwrapped;
targets = [ "bin/dolphin" ];
paths = [ dolphin-plugins konsole.unwrapped ];
outputs = [ "out" "dev" ];
}

View File

@ -1,10 +1,10 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules,
ffmpeg, kio
}:
kdeApp {
mkDerivation {
name = "ffmpegthumbs";
meta = {
license = with lib.licenses; [ gpl2 bsd3 ];

View File

@ -1,12 +1,10 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kio, kparts, kxmlgui, qtscript, solid
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "filelight";
meta = {
license = with lib.licenses; [ gpl2 ];
@ -16,9 +14,4 @@ let
propagatedBuildInputs = [
kio kparts kxmlgui qtscript solid
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/filelight" ];
}

View File

@ -1,27 +1,21 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
baloo, exiv2, kactivities, kdelibs4support, kio, kipi-plugins, lcms2,
libkdcraw, libkipi, phonon, qtimageformats, qtsvg, qtx11extras
exiv2, lcms2,
baloo, kactivities, kdelibs4support, kio, kipi-plugins, libkdcraw, libkipi,
phonon, qtimageformats, qtsvg, qtx11extras
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "gwenview";
meta = {
license = with lib.licenses; [ gpl2 fdl12 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
baloo kactivities kdelibs4support kio exiv2 lcms2 libkdcraw
libkipi phonon qtimageformats qtsvg qtx11extras
buildInputs = [
baloo exiv2 kactivities kdelibs4support kio libkdcraw lcms2 libkipi phonon
qtimageformats qtsvg qtx11extras
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/gwenview" ];
paths = [ kipi-plugins ];
propagatedUserEnvPkgs = [ kipi-plugins ];
}

View File

@ -1,22 +1,21 @@
{ kdeApp, lib, kdeWrapper, extra-cmake-modules
{ mkDerivation, lib
, extra-cmake-modules, kdoctools, makeWrapper
, qtwebkit
, libkcddb, kcmutils, kdoctools, kfilemetadata, knewstuff, knotifyconfig, solid, kxmlgui
, libkcddb, kcmutils, kfilemetadata, knewstuff, knotifyconfig, solid, kxmlgui
, flac, lame, libmad, libmpcdec, libvorbis
, libsamplerate, libsndfile, taglib
, cdparanoia, cdrdao, cdrtools, dvdplusrwtools, libburn, libdvdcss, libdvdread, vcdimager
, ffmpeg, libmusicbrainz2, normalize, sox, transcode
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "k3b";
meta = with lib; {
license = with licenses; [ gpl2Plus ];
maintainers = with maintainers; [ sander phreedom ];
platforms = platforms.linux;
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
propagatedBuildInputs = [
# qt
qtwebkit
@ -31,11 +30,12 @@ let
# others
ffmpeg libmusicbrainz2
];
enableParallelBuilding = true;
};
in kdeWrapper {
inherit unwrapped;
targets = [ "bin/k3b" ];
paths = [ cdrdao cdrtools dvdplusrwtools libburn normalize sox transcode vcdimager ];
postFixup =
let k3bPath = lib.makeBinPath [
cdrdao cdrtools dvdplusrwtools libburn normalize sox transcode
vcdimager
];
in ''
wrapProgram "$out/bin/k3b" --prefix PATH : "${k3bPath}"
'';
}

View File

@ -1,5 +1,5 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kactivities, kconfig, kcrash, kdbusaddons, kguiaddons, kiconthemes, ki18n,
kinit, kio, kitemmodels, kjobwidgets, knewstuff, knotifications, konsole,
@ -7,26 +7,19 @@
plasma-framework, qtscript, threadweaver
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kate";
meta = {
license = with lib.licenses; [ gpl3 lgpl3 lgpl2 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ libgit2 ];
propagatedBuildInputs = [
kactivities ki18n kio ktexteditor kwindowsystem plasma-framework
qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts
kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver
knewstuff libgit2
knewstuff
];
};
in
kdeWrapper
{
inherit unwrapped;
targets = [ "bin/kate" "bin/kwrite" ];
paths = [ konsole.unwrapped ];
propagatedUserEnvPkgs = [ konsole ];
}

View File

@ -1,28 +1,17 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kio, ki18n,
perl, python, php
}:
kdeWrapper {
unwrapped = kdeApp {
mkDerivation {
name = "kcachegrind";
meta = {
license = with lib.licenses; [ gpl2 ];
maintainers = with lib.maintainers; [ orivej ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ perl python php kio ki18n ];
enableParallelBuilding = true;
};
targets = [
"bin/kcachegrind"
"bin/dprof2calltree" # perl
"bin/hotshot2calltree" # python
"bin/memprof2calltree" # perl
"bin/op2calltree" # perl
"bin/pprof2calltree" # php
];
propagatedBuildInputs = [ kio ];
buildInputs = [ perl python php ki18n ];
}

View File

@ -1,24 +1,18 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kconfig, kconfigwidgets, kguiaddons, kinit, knotifications, gmp
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kcalc";
meta = {
license = with lib.licenses; [ gpl2 ];
maintainers = [ lib.maintainers.fridh ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ gmp ];
propagatedBuildInputs = [
gmp kconfig kconfigwidgets kguiaddons kinit knotifications
kconfig kconfigwidgets kguiaddons kinit knotifications
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/kcalc" ];
}

View File

@ -1,21 +1,16 @@
{
kdeApp, lib, kdeWrapper,
extra-cmake-modules, ki18n, kwidgetsaddons, kxmlgui
mkDerivation, lib,
extra-cmake-modules,
ki18n, kwidgetsaddons, kxmlgui
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kcolorchooser";
meta = {
license = with lib.licenses; [ mit ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/kcolorchooser" ];
buildInputs = [ ki18n ];
propagatedBuildInputs = [ kwidgetsaddons kxmlgui ];
}

View File

@ -1,15 +1,15 @@
{
kdeApp, lib,
extra-cmake-modules, ki18n,
kcoreaddons, kconfig, kcodecs
mkDerivation, lib,
extra-cmake-modules,
kcoreaddons, kconfig, kcodecs, ki18n, qtbase,
}:
kdeApp {
mkDerivation {
name = "kcontacts";
meta = {
license = [ lib.licenses.lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ki18n ];
buildInputs = [ kcoreaddons kconfig kcodecs ];
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ kcoreaddons kconfig kcodecs ki18n qtbase ];
}

View File

@ -1,8 +1,8 @@
name: args:
{ kdeApp, automoc4, cmake, gettext, kdelibs, perl }:
{ mkDerivation, automoc4, cmake, gettext, kdelibs, perl }:
kdeApp (args // {
mkDerivation (args // {
sname = "kde-l10n-${name}";
name = "kde-l10n-${name}-qt4";

View File

@ -1,8 +1,8 @@
name: args:
{ kdeApp, cmake, extra-cmake-modules, gettext, kdoctools }:
{ mkDerivation, cmake, extra-cmake-modules, gettext, kdoctools }:
kdeApp (args // {
mkDerivation (args // {
sname = "kde-l10n-${name}";
name = "kde-l10n-${name}-qt5";

View File

@ -1,10 +1,10 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules,
kio
}:
kdeApp {
mkDerivation {
name = "kdegraphics-mobipocket";
meta = {
license = [ lib.licenses.gpl2Plus ];

View File

@ -1,9 +1,9 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules, kio, libkexiv2, libkdcraw
}:
kdeApp {
mkDerivation {
name = "kdegraphics-thumbnailers";
meta = {
license = [ lib.licenses.lgpl21 ];

View File

@ -1,12 +1,12 @@
{
kdeApp, lib,
mkDerivation, lib,
automoc4, bison, cmake, flex, libxslt, perl, pkgconfig, shared_mime_info,
attica, attr, avahi, docbook_xml_dtd_42, docbook_xsl, giflib, ilmbase,
libdbusmenu_qt, libjpeg, libxml2, phonon, polkit_qt4, qca2, qt4,
shared_desktop_ontologies, soprano, strigi, udev, xz, pcre, fetchpatch
}:
kdeApp {
mkDerivation {
name = "kdelibs";
outputs = [ "out" "dev" ];

View File

@ -1,10 +1,10 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kcoreaddons, ki18n, kio, kwidgetsaddons, samba
}:
kdeApp {
mkDerivation {
name = "kdenetwork-filesharing";
meta = {
license = [ lib.licenses.gpl2 lib.licenses.lgpl21 ];

View File

@ -1,5 +1,4 @@
{ kdeApp
, kdeWrapper
{ mkDerivation
, lib
, extra-cmake-modules
, kdoctools
@ -31,8 +30,7 @@
, qtquickcontrols
}:
let
unwrapped = kdeApp {
mkDerivation {
name = "kdenlive";
patches = [
./kdenlive-cmake-concurrent-module.patch
@ -42,13 +40,14 @@ unwrapped = kdeApp {
kdoctools
];
buildInputs = [
qtscript
kconfig
kcrash
kdbusaddons
kfilemetadata
kguiaddons
ki18n
kiconthemes
kinit
kdbusaddons
knotifications
knewstuff
karchive
@ -56,30 +55,19 @@ unwrapped = kdeApp {
kplotting
ktextwidgets
mlt
phonon-backend-gstreamer
qtquickcontrols
qtscript
shared_mime_info
libv4l
ffmpeg
];
propagatedBuildInputs = [
kactivities
ki18n
kio
kio-extras
kwindowsystem
kfilemetadata
plasma-framework
phonon-backend-gstreamer
qtquickcontrols
];
enableParallelBuilding = true;
postPatch =
# Module Qt5::Concurrent must be included in `find_package` before it is used.
''
sed -i CMakeLists.txt -e '/find_package(Qt5 REQUIRED/ s|)| Concurrent)|'
'';
meta = {
license = with lib.licenses; [ gpl2Plus ];
};
};
in
kdeWrapper
{
inherit unwrapped;
targets = [ "bin/kdenlive" ];
paths = [ kinit ];
}

View File

@ -1,24 +1,15 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kcmutils
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kdf";
meta = {
license = with lib.licenses; [ gpl2 ];
maintainers = [ lib.maintainers.peterhoeg ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kcmutils
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/kdf" ];
propagatedBuildInputs = [ kcmutils ];
}

View File

@ -1,21 +1,22 @@
{
kdeApp, lib, makeQtWrapper,
extra-cmake-modules, kdoctools, ki18n,
akonadi-contacts, gnupg1, gpgme, karchive, kcodecs, kcontacts, kcoreaddons, kcrash,
kdbusaddons, kiconthemes, kjobwidgets, kio, knotifications, kservice,
mkDerivation, lib,
extra-cmake-modules, kdoctools, ki18n, makeWrapper,
akonadi-contacts, gnupg1, gpgme, karchive, kcodecs, kcontacts, kcoreaddons,
kcrash, kdbusaddons, kiconthemes, kjobwidgets, kio, knotifications, kservice,
ktextwidgets, kxmlgui, kwidgetsaddons, kwindowsystem
}:
kdeApp {
mkDerivation {
name = "kgpg";
nativeBuildInputs = [ extra-cmake-modules kdoctools ki18n ];
buildInputs = [
akonadi-contacts gnupg1 gpgme karchive kcodecs kcontacts kcoreaddons kcrash kdbusaddons
nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
buildInputs = [ gnupg1 gpgme ki18n ];
propagatedBuildInputs = [
akonadi-contacts karchive kcodecs kcontacts kcoreaddons kcrash kdbusaddons
kiconthemes kjobwidgets kio knotifications kservice ktextwidgets kxmlgui
kwidgetsaddons kwindowsystem makeQtWrapper
kwidgetsaddons kwindowsystem
];
postInstall = ''
wrapQtProgram $out/bin/kgpg --suffix PATH : ${lib.makeBinPath [ gnupg1 ]}
postFixup = ''
wrapProgram "$out/bin/kgpg" --prefix PATH : "${lib.makeBinPath [ gnupg1 ]}"
'';
meta = {
license = [ lib.licenses.gpl2 ];

View File

@ -1,22 +1,16 @@
{
kdeApp, kdeWrapper,
mkDerivation,
extra-cmake-modules, kdoctools,
grantlee, kconfig, kcoreaddons, kdbusaddons, ki18n, kinit, kcmutils,
kdelibs4support, khtml, kservice, xapian
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "khelpcenter";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
grantlee kdelibs4support khtml ki18n kconfig kcoreaddons kdbusaddons
kinit kcmutils kservice xapian
buildInputs = [ ki18n xapian ];
propagatedBuildInputs = [
grantlee kdelibs4support khtml kconfig kcoreaddons kdbusaddons
kinit kcmutils kservice
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/khelpcenter" ];
}

View File

@ -1,26 +1,19 @@
{
kdeApp, lib, kdeWrapper
, extra-cmake-modules, kdoctools, kparts
, qtsvg, qtxmlpatterns, ktexteditor, boost
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kparts, qtsvg, qtxmlpatterns, ktexteditor, boost
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kig";
meta = {
license = with lib.licenses; [ gpl2 ];
maintainers = with lib.maintainers; [ raskin ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [
kparts qtsvg qtxmlpatterns ktexteditor boost
buildInputs = [ boost ];
propagatedBuildInputs = [
kparts qtsvg qtxmlpatterns ktexteditor
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/kig" ];
}

View File

@ -1,12 +1,12 @@
{
kdeApp, lib, extra-cmake-modules, kdoctools, shared_mime_info,
mkDerivation, lib, extra-cmake-modules, kdoctools, shared_mime_info,
exiv2, kactivities, karchive, kbookmarks, kconfig, kconfigwidgets,
kcoreaddons, kdbusaddons, kguiaddons, kdnssd, kiconthemes, ki18n, kio, khtml,
kdelibs4support, kpty, libmtp, libssh, openexr, ilmbase, openslp, phonon,
qtsvg, samba, solid
}:
kdeApp {
mkDerivation {
name = "kio-extras";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 ];

View File

@ -1,15 +1,15 @@
{
kdeApp, lib,
mkDerivation, lib,
extra-cmake-modules, ki18n,
kcodecs
kcodecs, qtbase,
}:
kdeApp {
mkDerivation {
name = "kmime";
meta = {
license = [ lib.licenses.lgpl21 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ki18n ];
buildInputs = [ kcodecs ];
buildInputs = [ kcodecs qtbase ];
}

View File

@ -1,13 +1,11 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kglobalaccel, kxmlgui, kcoreaddons, kdelibs4support,
plasma-framework, libpulseaudio, alsaLib, libcanberra_kde
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kmix";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
@ -22,9 +20,4 @@ let
cmakeFlags = [
"-DKMIX_KF5_BUILD=1"
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/kmix" ];
}

View File

@ -1,28 +1,17 @@
{ lib
, kdeApp
, kdeWrapper
, mkDerivation
, extra-cmake-modules
, kdoctools
, kdelibs4support
, libkexiv2
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kolourpaint";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kdelibs4support
libkexiv2
];
propagatedBuildInputs = [ kdelibs4support libkexiv2 ];
meta = {
maintainers = [ lib.maintainers.fridh ];
license = with lib.licenses; [ gpl2 ];
};
};
in kdeWrapper {
inherit unwrapped;
targets = ["bin/kolourpaint"];
}

View File

@ -1,21 +1,14 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kparts, ktexteditor, kwidgetsaddons, libkomparediff2
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "kompare";
meta = { license = with lib.licenses; [ gpl2 ]; };
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kparts ktexteditor kwidgetsaddons libkomparediff2
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/kompare" ];
}

View File

@ -1,5 +1,5 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons,
ki18n, kiconthemes, kinit, kdelibs4support, kio, knotifications,
@ -7,24 +7,17 @@
kwindowsystem, kxmlgui, qtscript
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "konsole";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ ki18n ];
propagatedBuildInputs = [
kdelibs4support ki18n kwindowsystem qtscript kbookmarks kcompletion
kconfig kconfigwidgets kcoreaddons kguiaddons kiconthemes kinit kio
knotifications knotifyconfig kparts kpty kservice ktextwidgets
kwidgetsaddons kxmlgui
kbookmarks kcompletion kconfig kconfigwidgets kcoreaddons kdelibs4support
kguiaddons kiconthemes kinit kio knotifications knotifyconfig kparts kpty
kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/konsole" ];
}

View File

@ -1,22 +1,16 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kdelibs4support, kdnssd, libvncserver, libXtst
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "krfb";
meta = {
license = with lib.licenses; [ gpl2 fdl12 ];
maintainers = with lib.maintainers; [ jerith666 ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [ kdelibs4support kdnssd libvncserver libXtst ];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/krfb" ];
buildInputs = [ libvncserver libXtst ];
propagatedBuildInputs = [ kdelibs4support kdnssd ];
}

View File

@ -1,6 +1,5 @@
{ lib
, kdeApp
, kdeWrapper
, mkDerivation
, extra-cmake-modules
, kdoctools
, kauth
@ -9,28 +8,19 @@
, kcoreaddons
, kdbusaddons
, kdelibs4support
, kwallet
, kxmlgui
}:
let
unwrapped = kdeApp {
mkDerivation {
name = "kwalletmanager";
meta = {
license = with lib.licenses; [ gpl2 ];
maintainers = with lib.maintainers; [ fridh ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kauth
kcmutils
kconfigwidgets
kcoreaddons
kdbusaddons
kdelibs4support
kxmlgui
buildInputs = [
kauth kcmutils kconfigwidgets kcoreaddons kdbusaddons kdelibs4support
kwallet kxmlgui
];
};
in kdeWrapper {
inherit unwrapped;
targets = ["bin/kwalletmanager5"];
}

View File

@ -1,8 +1,8 @@
{ kdeApp, lib, extra-cmake-modules, qtbase, kdoctools
{ mkDerivation, lib, extra-cmake-modules, qtbase, kdoctools
, kcodecs, ki18n, kio, kwidgetsaddons
, libmusicbrainz5 }:
kdeApp {
mkDerivation {
name = "libkcddb";
meta = with lib; {
license = with licenses; [ gpl2 lgpl21 bsd3 ];
@ -14,5 +14,4 @@ kdeApp {
kcodecs ki18n kio kwidgetsaddons
libmusicbrainz5
];
enableParallelBuilding = true;
}

View File

@ -1,6 +1,6 @@
{ kdeApp, lib, extra-cmake-modules, libraw, qtbase }:
{ mkDerivation, lib, extra-cmake-modules, libraw, qtbase }:
kdeApp {
mkDerivation {
name = "libkdcraw";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];

View File

@ -1,6 +1,6 @@
{ kdeApp, lib, exiv2, extra-cmake-modules, qtbase }:
{ mkDerivation, lib, exiv2, extra-cmake-modules, qtbase }:
kdeApp {
mkDerivation {
name = "libkexiv2";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];

View File

@ -1,6 +1,6 @@
{ kdeApp, lib, extra-cmake-modules, kconfig, ki18n, kservice, kxmlgui }:
{ mkDerivation, lib, extra-cmake-modules, kconfig, ki18n, kservice, kxmlgui }:
kdeApp {
mkDerivation {
name = "libkipi";
meta = {
license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];

View File

@ -1,6 +1,6 @@
{ kdeApp, lib, extra-cmake-modules, ki18n, kxmlgui, kcodecs, kio }:
{ mkDerivation, lib, extra-cmake-modules, ki18n, kxmlgui, kcodecs, kio }:
kdeApp {
mkDerivation {
name = "libkomparediff2";
nativeBuildInputs = [ extra-cmake-modules ];
propagatedBuildInputs = [ kcodecs ki18n kxmlgui kio ];

View File

@ -1,28 +1,16 @@
{ kdeApp, lib, kdeWrapper
{ mkDerivation, lib
, extra-cmake-modules, kdoctools
, qtscript, qtsvg, qtquickcontrols, qtwebkit
, krunner, shared_mime_info, kparts, knewstuff
, gpsd, perl
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "marble";
meta.license = with lib.licenses; [ lgpl21 gpl3 ];
nativeBuildInputs = [ extra-cmake-modules kdoctools perl ];
propagatedBuildInputs = [
qtscript qtsvg qtquickcontrols qtwebkit shared_mime_info
krunner kparts knewstuff
gpsd
qtscript qtsvg qtquickcontrols qtwebkit shared_mime_info krunner kparts
knewstuff gpsd
];
enableParallelBuilding = true;
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/marble-qt" "bin/marble" ];
paths = [ unwrapped ];
}

View File

@ -1,13 +1,11 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kconfig, kinit,
kcmutils, kconfigwidgets, knewstuff, kparts, qca-qt5
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "okteta";
meta = {
license = with lib.licenses; [ gpl2 ];
@ -15,12 +13,6 @@ let
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
kconfig kinit
kcmutils kconfigwidgets knewstuff kparts qca-qt5
kconfig kinit kcmutils kconfigwidgets knewstuff kparts qca-qt5
];
};
in kdeWrapper {
inherit unwrapped;
targets = [ "bin/okteta" ];
}

View File

@ -1,20 +1,19 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
djvulibre, ebook_tools, kactivities, karchive, kbookmarks, kcompletion,
kconfig, kconfigwidgets, kcoreaddons, kdbusaddons, kdegraphics-mobipocket,
kiconthemes, kjs, khtml, kio, kparts, kpty, kwallet, kwindowsystem, libkexiv2,
libspectre, poppler, qca-qt5, qtdeclarative, qtsvg, threadweaver
libspectre, phonon, poppler, qca-qt5, qtdeclarative, qtsvg, threadweaver
}:
let
unwrapped = kdeApp {
mkDerivation {
name = "okular";
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
propagatedBuildInputs = [
djvulibre ebook_tools kactivities karchive kbookmarks kcompletion kconfig
kconfigwidgets kcoreaddons kdbusaddons kdegraphics-mobipocket kiconthemes
kjs khtml kio kparts kpty kwallet kwindowsystem libkexiv2 libspectre poppler
buildInputs = [
djvulibre ebook_tools kactivities karchive kbookmarks kcompletion kconfig kconfigwidgets
kcoreaddons kdbusaddons kdegraphics-mobipocket kiconthemes kjs khtml kio
kparts kpty kwallet kwindowsystem libkexiv2 libspectre phonon poppler
qca-qt5 qtdeclarative qtsvg threadweaver
];
meta = {
@ -23,9 +22,4 @@ let
license = with lib.licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
maintainers = [ lib.maintainers.ttuegel ];
};
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/okular" ];
}

View File

@ -1,20 +1,22 @@
{
kdeApp, lib, extra-cmake-modules,
cups, kconfig, kconfigwidgets, kdbusaddons, kiconthemes, ki18n, kcmutils, kio,
mkDerivation, lib,
extra-cmake-modules,
cups, ki18n,
kconfig, kconfigwidgets, kdbusaddons, kiconthemes, kcmutils, kio,
knotifications, kwidgetsaddons, kwindowsystem, kitemviews, plasma-framework,
qtdeclarative
}:
kdeApp {
mkDerivation {
name = "print-manager";
meta = {
license = [ lib.licenses.gpl2 ];
maintainers = [ lib.maintainers.ttuegel ];
};
nativeBuildInputs = [ extra-cmake-modules ];
buildInputs = [ cups ki18n ];
propagatedBuildInputs = [
cups kconfig kconfigwidgets kdbusaddons kiconthemes kcmutils knotifications
kwidgetsaddons kitemviews ki18n kio kwindowsystem plasma-framework
qtdeclarative
kconfig kconfigwidgets kdbusaddons kiconthemes kcmutils knotifications
kwidgetsaddons kitemviews kio kwindowsystem plasma-framework qtdeclarative
];
}

View File

@ -1,25 +1,20 @@
{
kdeApp, lib, kdeWrapper,
mkDerivation, lib,
extra-cmake-modules, kdoctools,
kconfig, kcoreaddons, kdbusaddons, kdeclarative, ki18n, kio, kipi-plugins,
ki18n, xcb-util-cursor,
kconfig, kcoreaddons, kdbusaddons, kdeclarative, kio, kipi-plugins,
knotifications, kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi,
xcb-util-cursor
qtx11extras
}:
let
unwrapped =
kdeApp {
mkDerivation {
name = "spectacle";
meta = with lib; { maintainers = with maintainers; [ ttuegel ]; };
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ ki18n xcb-util-cursor ];
propagatedBuildInputs = [
kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi xcb-util-cursor
kconfig kcoreaddons kdbusaddons kdeclarative kio knotifications
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras
];
};
in
kdeWrapper {
inherit unwrapped;
targets = [ "bin/spectacle" ];
paths = [ kipi-plugins ];
propagatedUserEnvPkgs = [ kipi-plugins ];
}

View File

@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, qtbase, qtsvg, qtx11extras, makeQtWrapper, muparser, cmake }:
{ mkDerivation, lib, fetchFromGitHub, qtbase, qtsvg, qtx11extras, muparser, cmake }:
stdenv.mkDerivation rec {
mkDerivation rec {
name = "albert-${version}";
version = "0.11.3";
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "0ddz6h1334b9kqy1lfi7qa21znm3l0b9h0d4s62llxdasv103jh5";
};
nativeBuildInputs = [ cmake makeQtWrapper ];
nativeBuildInputs = [ cmake ];
buildInputs = [ qtbase qtsvg qtx11extras muparser ];
@ -31,11 +31,7 @@ stdenv.mkDerivation rec {
rm "$out/lib"
'';
fixupPhase = ''
wrapQtProgram $out/bin/albert
'';
meta = with stdenv.lib; {
meta = with lib; {
homepage = https://albertlauncher.github.io/;
description = "Desktop agnostic launcher";
license = licenses.gpl3Plus;

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, fetchpatch, poppler_utils, pkgconfig, libpng
, imagemagick, libjpeg, fontconfig, podofo, qtbase, qmakeHook, icu, sqlite
, imagemagick, libjpeg, fontconfig, podofo, qtbase, qmake, icu, sqlite
, makeWrapper, unrarSupport ? false, chmlib, python2Packages, xz, libusb1, libmtp
, xdg_utils, makeDesktopItem, wrapGAppsHook
}:
@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
nativeBuildInputs = [ makeWrapper pkgconfig qmakeHook ];
nativeBuildInputs = [ makeWrapper pkgconfig qmake ];
buildInputs = [
poppler_utils libpng imagemagick libjpeg

View File

@ -1,5 +1,5 @@
{ stdenv, fetchgit, makeQtWrapper, qtbase, qtquick1, qmltermwidget,
qtquickcontrols, qtgraphicaleffects, qmakeHook }:
{ stdenv, fetchgit, qtbase, qtquick1, qmltermwidget,
qtquickcontrols, qtgraphicaleffects, qmake }:
stdenv.mkDerivation rec {
version = "1.0.0";
@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
'';
buildInputs = [ qtbase qtquick1 qmltermwidget qtquickcontrols qtgraphicaleffects ];
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
nativeBuildInputs = [ qmake ];
installFlags = [ "INSTALL_ROOT=$(out)" ];
@ -25,8 +25,6 @@ stdenv.mkDerivation rec {
mv $out/usr/share $out/share
mv $out/usr/bin $out/bin
rmdir $out/usr
wrapQtProgram $out/bin/cool-retro-term
'';
enableParallelBuilding = true;

View File

@ -1,6 +1,6 @@
{ stdenv, lib, fetchFromGitHub, cmake, python3, qtbase, makeQtWrapper, curaengine }:
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, curaengine }:
stdenv.mkDerivation rec {
mkDerivation rec {
name = "cura-${version}";
version = "2.4.0";
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
buildInputs = [ qtbase ];
propagatedBuildInputs = with python3.pkgs; [ uranium zeroconf pyserial ];
nativeBuildInputs = [ cmake python3.pkgs.wrapPython makeQtWrapper ];
nativeBuildInputs = [ cmake python3.pkgs.wrapPython ];
cmakeFlags = [ "-DCMAKE_MODULE_PATH=${python3.pkgs.uranium}/share/cmake-${cmake.majorVersion}/Modules" ];
@ -24,11 +24,9 @@ stdenv.mkDerivation rec {
postFixup = ''
wrapPythonPrograms
mv $out/bin/cura $out/bin/.cura-noqtpath
makeQtWrapper $out/bin/.cura-noqtpath $out/bin/cura
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "3D printer / slicing GUI built on top of the Uranium framework";
homepage = "https://github.com/Ultimaker/Cura";
license = licenses.agpl3;

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl
, qtbase, qtsvg, qtserialport, qtwebkit, qtmultimedia, qttools, qtconnectivity
, yacc, flex, zlib, config, qmakeHook, makeQtWrapper
, yacc, flex, zlib, config, qmake, makeWrapper
}:
stdenv.mkDerivation rec {
name = "golden-cheetah-${version}";
@ -10,11 +10,11 @@ stdenv.mkDerivation rec {
url = "https://github.com/GoldenCheetah/GoldenCheetah/archive/V${version}.tar.gz";
sha256 = "0fiz2pj155cd357kph50lc6rjyzwp045glfv4y68qls9j7m9ayaf";
};
qtInputs = [
qtbase qtsvg qtserialport qtwebkit qtmultimedia qttools yacc flex zlib
buildInputs = [
qtbase qtsvg qtserialport qtwebkit qtmultimedia qttools zlib
qtconnectivity
];
nativeBuildInputs = [ makeQtWrapper qmakeHook ] ++ qtInputs;
nativeBuildInputs = [ flex makeWrapper qmake yacc ];
preConfigure = ''
cp src/gcconfig.pri.in src/gcconfig.pri
cp qwt/qwtconfig.pri.in qwt/qwtconfig.pri
@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
mkdir -p $out/bin
cp src/GoldenCheetah $out/bin
wrapQtProgram $out/bin/GoldenCheetah --set LD_LIBRARY_PATH "${zlib.out}/lib"
wrapProgram $out/bin/GoldenCheetah --set LD_LIBRARY_PATH "${zlib.out}/lib"
runHook postInstall
'';

View File

@ -1,7 +1,8 @@
{ stdenv, fetchurl, pkgconfig, libXtst, libvorbis, hunspell
, libao, ffmpeg, libeb, lzo, xz, libtiff
, qtbase, qtsvg, qtwebkit, qtx11extras, qttools, qmakeHook }:
, qtbase, qtsvg, qtwebkit, qtx11extras, qttools, qmake }:
stdenv.mkDerivation rec {
name = "goldendict-1.5.0.rc2";
src = fetchurl {
url = "https://github.com/goldendict/goldendict/archive/1.5.0-RC2.tar.gz";
@ -9,10 +10,12 @@ stdenv.mkDerivation rec {
};
buildInputs = [
pkgconfig qtbase qtsvg qtwebkit qtx11extras qttools libXtst libvorbis hunspell libao ffmpeg libeb
lzo xz libtiff qmakeHook
pkgconfig qtbase qtsvg qtwebkit qtx11extras qttools
libXtst libvorbis hunspell libao ffmpeg libeb lzo xz libtiff
];
nativeBuildInputs = [ qmake ];
qmakeFlags = [ "CONFIG+=zim_support" ];
meta = {

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, qmakeHook, qtbase, qttools, makeQtWrapper }:
{ stdenv, fetchFromGitHub, qmake, qtbase, qttools }:
stdenv.mkDerivation rec {
name = "gpxsee-${version}";
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "17s1v6b1j7pi0yj554bd0cg14bl854gssp5gj2pl51rxji6zr0wp";
};
nativeBuildInputs = [ qmakeHook qttools makeQtWrapper ];
nativeBuildInputs = [ qmake qttools ];
preConfigure = ''
substituteInPlace src/config.h --replace /usr/share/gpxsee $out/share/gpxsee
@ -20,7 +20,6 @@ stdenv.mkDerivation rec {
preFixup = ''
install -Dm755 GPXSee $out/bin/GPXSee
wrapQtProgram $out/bin/GPXSee
mkdir -p $out/share/gpxsee
cp pkg/maps.txt $out/share/gpxsee

View File

@ -2,7 +2,6 @@
, lib
, fetchurl
, extra-cmake-modules
, makeQtWrapper
, kcmutils
, kconfigwidgets
, kdbusaddons
@ -35,14 +34,7 @@ stdenv.mkDerivation rec {
libXtst
];
nativeBuildInputs = [
extra-cmake-modules
makeQtWrapper
];
postInstall = ''
wrapQtProgram "$out/bin/kdeconnect-cli"
'';
nativeBuildInputs = [ extra-cmake-modules ];
meta = {
description = "KDE Connect provides several features to integrate your phone and your computer";

View File

@ -1,13 +1,13 @@
{
kdeDerivation, kdeWrapper, fetchFromGitHub, lib,
extra-cmake-modules, kdoctools, kconfig, kinit, kjsembed,
taglib, exiv2, podofo
mkDerivation, fetchFromGitHub, lib,
extra-cmake-modules, kdoctools, wrapGAppsHook,
kconfig, kinit, kjsembed, taglib, exiv2, podofo
}:
let
pname = "krename";
version = "20170610";
unwrapped = kdeDerivation rec {
in mkDerivation rec {
name = "${pname}-${version}";
src = fetchFromGitHub {
@ -25,11 +25,6 @@ let
};
buildInputs = [ taglib exiv2 podofo ];
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
propagatedBuildInputs = [ kconfig kinit kjsembed ];
};
in kdeWrapper {
inherit unwrapped;
targets = [ "bin/krename" ];
}

View File

@ -1,13 +1,13 @@
{
kdeDerivation, kdeWrapper, fetchurl, lib,
extra-cmake-modules, kdoctools,
mkDerivation, fetchurl, lib,
extra-cmake-modules, kdoctools, wrapGAppsHook,
kconfig, kinit, kparts
}:
let
pname = "krusader";
version = "2.6.0";
unwrapped = kdeDerivation rec {
in mkDerivation rec {
name = "krusader-${version}";
src = fetchurl {
@ -22,12 +22,6 @@ let
maintainers = with maintainers; [ sander ];
};
nativeBuildInputs = [ extra-cmake-modules kdoctools ];
nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
propagatedBuildInputs = [ kconfig kinit kparts ];
enableParallelBuilding = true;
};
in kdeWrapper {
inherit unwrapped;
targets = [ "bin/krusader" ];
}

View File

@ -1,8 +1,8 @@
{ stdenv, lib, cmake, xorg, plasma-framework, fetchFromGitHub, kdeWrapper }:
{ mkDerivation, lib, cmake, xorg, plasma-framework, fetchFromGitHub }:
let version = "0.6.0";
let version = "0.6.0"; in
unwrapped = stdenv.mkDerivation {
mkDerivation {
name = "latte-dock-${version}";
src = fetchFromGitHub {
@ -16,18 +16,11 @@ let version = "0.6.0";
nativeBuildInputs = [ cmake ];
enableParallelBuilding = true;
meta = with stdenv.lib; {
meta = with lib; {
description = "Dock-style app launcher based on Plasma frameworks";
homepage = https://github.com/psifidotos/Latte-Dock;
license = licenses.gpl2;
platforms = platforms.unix;
maintainers = [ maintainers.benley ];
};
};
in kdeWrapper {
inherit unwrapped;
targets = [ "bin/latte-dock" ];
}

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, qtbase, vcg, glew, qmakeHook, makeQtWrapper, mesa }:
{ stdenv, fetchFromGitHub, qtbase, vcg, glew, qmake, mesa }:
stdenv.mkDerivation {
@ -12,9 +12,9 @@ stdenv.mkDerivation {
};
buildInputs = [ qtbase vcg glew ];
nativeBuildInputs = [ qmakeHook makeQtWrapper ];
enableParallelBuilding = true;
nativeBuildInputs = [ qmake ];
qmakeFlags = [ "openBrf.pro" ];
@ -31,7 +31,7 @@ stdenv.mkDerivation {
--set-rpath "${stdenv.lib.makeLibraryPath [ qtbase glew stdenv.cc.cc mesa ]}" \
$out/share/openBrf/openBrf
makeQtWrapper "$out/share/openBrf/openBrf" "$out/bin/openBrf"
ln -s "$out/share/openBrf/openBrf" "$out/bin/openBrf"
'';
dontPatchELF = true;

View File

@ -1,10 +1,10 @@
{ stdenv, lib, fetchFromGitHub, procps ? null
{ mkDerivation, stdenv, lib, fetchFromGitHub, procps ? null
, qtbase, qtwebengine, qtwebkit
, cmake, makeQtWrapper
, cmake
, syncthing, syncthing-inotify ? null
, preferQWebView ? false }:
stdenv.mkDerivation rec {
mkDerivation rec {
version = "0.5.7";
name = "qsyncthingtray-${version}";
@ -16,8 +16,7 @@ stdenv.mkDerivation rec {
};
buildInputs = [ qtbase qtwebengine ] ++ lib.optional preferQWebView qtwebkit;
nativeBuildInputs = [ cmake makeQtWrapper ];
enableParallelBuilding = true;
nativeBuildInputs = [ cmake ];
cmakeFlags = lib.optional preferQWebView "-DQST_BUILD_WEBKIT=1";
@ -41,12 +40,11 @@ stdenv.mkDerivation rec {
mkdir -p $out/bin
install -m755 QSyncthingTray $out/bin/${qst}
ln -s $out/bin/${qst} $out/bin/QSyncthingTray
wrapQtProgram $out/bin/qsyncthingtray
runHook postInstall
'';
meta = with stdenv.lib; {
meta = with lib; {
homepage = https://github.com/sieren/QSyncthingTray/;
description = "A Traybar Application for Syncthing written in C++";
longDescription = ''

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, git, gnupg, makeQtWrapper, pass, qtbase, qtsvg, qttools, qmakeHook }:
{ stdenv, fetchFromGitHub, git, gnupg, pass, qtbase, qtsvg, qttools, qmake, makeWrapper }:
stdenv.mkDerivation rec {
name = "qtpass-${version}";
@ -13,10 +13,10 @@ stdenv.mkDerivation rec {
buildInputs = [ git gnupg pass qtbase qtsvg qttools ];
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
nativeBuildInputs = [ makeWrapper qmake ];
preConfigure = ''
qmakeFlags="$qmakeFlags CONFIG+=release DESTDIR=$out"
qmakeFlags="$qmakeFlags DESTDIR=$out"
'';
installPhase = ''
@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
'';
postInstall = ''
wrapQtProgram $out/bin/qtpass \
wrapProgram $out/bin/qtpass \
--suffix PATH : ${git}/bin \
--suffix PATH : ${gnupg}/bin \
--suffix PATH : ${pass}/bin

View File

@ -1,7 +1,7 @@
{ stdenv, lib, fetchgit, pkgconfig , libssh2
, qtbase, qtdeclarative, qtgraphicaleffects, qtimageformats, qtquickcontrols
, qtsvg, qttools, qtquick1
, makeQtWrapper, qmakeHook
, qmake
}:
let
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
sha256 = "0a7xa39qp1q32zkypw32mm3wi8wbhxhvrm6l3xsa3k1jzih7hzxr";
};
nativeBuildInputs = [ makeQtWrapper qmakeHook ];
nativeBuildInputs = [ qmake ];
buildInputs = [
pkgconfig libssh2 qtbase qtdeclarative qtgraphicaleffects qtimageformats
@ -68,7 +68,6 @@ EOF
mkdir -p $out/bin
instdir="$srcdir/bin/linux/release"
cp $instdir/rdm $out/bin
wrapQtProgram $out/bin/rdm
'';
meta = with lib; {

View File

@ -1,4 +1,4 @@
{ fetchurl, stdenv, fetchgit, qtbase, qtx11extras, qmakeHook, pkgconfig, boost }:
{ fetchurl, stdenv, fetchgit, qtbase, qtx11extras, qmake, pkgconfig, boost }:
stdenv.mkDerivation rec {
name = "twmn-git-2014-09-23";
@ -9,7 +9,8 @@ stdenv.mkDerivation rec {
sha256 = "1a68gka9gyxyzhc9rn8df59rzcdwkjw90cxp1kk0rdfp6svhxhsa";
};
buildInputs = [ qtbase qtx11extras pkgconfig boost qmakeHook ];
nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [ qtbase qtx11extras boost ];
postPatch = ''
sed -i s/-Werror// twmnd/twmnd.pro

View File

@ -1,9 +1,9 @@
{ stdenv, fetchurl, pkgconfig, which, makeQtWrapper,
libtool, openssl, qtbase, qttools }:
{ mkDerivation, lib, fetchurl, pkgconfig, which
, libtool, openssl, qtbase, qttools }:
with stdenv.lib;
with lib;
stdenv.mkDerivation rec {
mkDerivation rec {
name = "xca-${version}";
version = "1.3.2";
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libtool openssl qtbase qttools ];
nativeBuildInputs = [ makeQtWrapper pkgconfig which ];
nativeBuildInputs = [ pkgconfig which ];
configureFlags = [ "CXXFLAGS=-std=c++11" ];
@ -26,12 +26,7 @@ stdenv.mkDerivation rec {
--replace ${qtbase}/bin/uic ${qtbase.dev}/bin/uic
'';
postInstall = ''
wrapQtProgram "$out/bin/xca"
wrapQtProgram "$out/bin/xca_db_stat"
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "Interface for managing asymetric keys like RSA or DSA";
homepage = http://xca.sourceforge.net/;
platforms = platforms.all;

View File

@ -1,8 +1,8 @@
{ kdeDerivation
{ mkDerivation
, lib
, fetchurl
, kdoctools
, kdeWrapper
, wrapGAppsHook
, extra-cmake-modules
, karchive
, kcrash
@ -18,10 +18,9 @@
}:
let
unwrapped = let
pname = "yakuake";
version = "3.0.3";
in kdeDerivation rec {
in mkDerivation rec {
name = "${pname}-${version}";
src = fetchurl {
@ -42,8 +41,23 @@ let
kwindowsystem
];
propagatedBuildInputs = [
karchive
kcrash
kdbusaddons
ki18n
kiconthemes
knewstuff
knotifications
knotifyconfig
kparts
kwindowsystem
];
propagatedUserEnvPkgs = [ konsole ];
nativeBuildInputs = [
extra-cmake-modules kdoctools
extra-cmake-modules kdoctools wrapGAppsHook
];
meta = {
@ -51,13 +65,4 @@ let
description = "Quad-style terminal emulator for KDE";
maintainers = with lib.maintainers; [ fridh ];
};
};
in
kdeWrapper
{
inherit unwrapped;
targets = [ "bin/yakuake" ];
paths = [ konsole.unwrapped ];
}

View File

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, unzip, buildPythonApplication, makeQtWrapper, wrapGAppsHook
{ stdenv, lib, fetchurl, unzip, buildPythonApplication, makeWrapper, wrapGAppsHook
, qtbase, pyqt5, jinja2, pygments, pyyaml, pypeg2, cssutils, glib_networking
, asciidoc, docbook_xml_dtd_45, docbook_xsl, libxml2, libxslt
, gst-plugins-base, gst-plugins-good, gst-plugins-bad, gst-plugins-ugly, gst-libav
@ -44,7 +44,7 @@ in buildPythonApplication rec {
];
nativeBuildInputs = [
makeQtWrapper wrapGAppsHook asciidoc docbook_xml_dtd_45 docbook_xsl libxml2 libxslt
makeWrapper wrapGAppsHook asciidoc docbook_xml_dtd_45 docbook_xsl libxml2 libxslt
];
propagatedBuildInputs = [
@ -73,9 +73,8 @@ in buildPythonApplication rec {
install -Dm755 -t "$out/share/qutebrowser/userscripts/" misc/userscripts/*
'';
postFixup = ''
wrapQtProgram $out/bin/qutebrowser \
${lib.optionalString withWebEngineDefault ''--add-flags "--backend webengine"''}
postFixup = lib.optionalString withWebEngineDefault ''
wrapProgram $out/bin/qutebrowser --add-flags "--backend webengine"
'';
meta = {

View File

@ -1,4 +1,5 @@
{ stdenv, fetchurl, makeDesktopItem, patchelf, makeWrapper, makeQtWrapper
{ mkDerivation, stdenv, lib, fetchurl, makeDesktopItem
, makeWrapper, patchelf
, dbus_libs, fontconfig, freetype, gcc, glib
, libdrm, libffi, libICE, libSM
, libX11, libXcomposite, libXext, libXmu, libXrender, libxcb
@ -58,7 +59,7 @@ let
startupNotify = "false";
};
in stdenv.mkDerivation {
in mkDerivation {
name = "dropbox-${version}";
src = fetchurl {
name = "dropbox-${version}.tar.gz";
@ -68,7 +69,7 @@ in stdenv.mkDerivation {
sourceRoot = ".dropbox-dist";
nativeBuildInputs = [ makeQtWrapper patchelf ];
nativeBuildInputs = [ makeWrapper patchelf ];
dontStrip = true; # already done
installPhase = ''
@ -94,7 +95,7 @@ in stdenv.mkDerivation {
mkdir -p "$out/bin"
RPATH="${ldpath}:$out/${appdir}"
makeQtWrapper "$out/${appdir}/dropbox" "$out/bin/dropbox" \
makeWrapper "$out/${appdir}/dropbox" "$out/bin/dropbox" \
--prefix LD_LIBRARY_PATH : "$RPATH"
chmod 755 $out/${appdir}/dropbox
@ -137,8 +138,8 @@ in stdenv.mkDerivation {
meta = {
homepage = "http://www.dropbox.com";
description = "Online stored folders (daemon version)";
maintainers = with stdenv.lib.maintainers; [ ttuegel ];
maintainers = with lib.maintainers; [ ttuegel ];
platforms = [ "i686-linux" "x86_64-linux" ];
license = stdenv.lib.licenses.unfree;
license = lib.licenses.unfree;
};
}

View File

@ -1,10 +1,10 @@
{ stdenv, fetchFromGitHub, cmake, pkgconfig, openal, opencv,
{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig, openal, opencv,
libtoxcore, libsodium, libXScrnSaver, glib, gdk_pixbuf, gtk2, cairo, xorg,
pango, atk, qrencode, ffmpeg, filter-audio, makeQtWrapper,
pango, atk, qrencode, ffmpeg, filter-audio,
qtbase, qtsvg, qttools, qttranslations, sqlcipher,
libvpx, libopus }:
stdenv.mkDerivation rec {
mkDerivation rec {
name = "qtox-${version}";
version = "1.10.2";
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
libpthreadstubs libXdmcp
]);
nativeBuildInputs = [ cmake makeQtWrapper pkgconfig ];
nativeBuildInputs = [ cmake pkgconfig ];
cmakeFlags = [
"-DGIT_DESCRIBE=${version}"
@ -35,14 +35,11 @@ stdenv.mkDerivation rec {
runHook preInstall
install -Dm755 qtox $out/bin/qtox
wrapQtProgram $out/bin/qtox
runHook postInstall
'';
enableParallelBuilding = true;
meta = with stdenv.lib; {
meta = with lib; {
description = "Qt Tox client";
license = licenses.gpl3;
maintainers = with maintainers; [ viric jgeerds akaWolf peterhoeg ];

View File

@ -1,6 +1,6 @@
{ stdenv, fetchgit, qtbase, qtquickcontrols, cmake, makeQtWrapper }:
{ mkDerivation, lib, fetchgit, qtbase, qtquickcontrols, cmake }:
stdenv.mkDerivation rec {
mkDerivation rec {
name = "quaternion-git-${version}";
version = "2017-04-15";
@ -18,25 +18,21 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
enableParallelBuilding = true;
buildInputs = [ qtbase qtquickcontrols ];
nativeBuildInputs = [ cmake makeQtWrapper ];
nativeBuildInputs = [ cmake ];
cmakeFlags = [
"-Wno-dev"
];
postInstall = ''
wrapQtProgram $out/bin/quaternion
substituteInPlace $out/share/applications/quaternion.desktop \
--replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
rm $out/share/icons/hicolor/icon-theme.cache
'';
meta = with stdenv.lib; {
meta = with lib; {
homepage = https://matrix.org/docs/projects/client/quaternion.html;
description = "Cross-platform desktop IM client for the Matrix protocol";
license = licenses.gpl3;

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