diff options
author | K900 <me@0upti.me> | 2024-02-05 18:43:41 +0300 |
---|---|---|
committer | K900 <me@0upti.me> | 2024-02-28 18:49:23 +0300 |
commit | ce77225e21f9cf8726d197897ad9a6882a3daecc (patch) | |
tree | 64d68e597c2a1875962305608ec42e3b02016b8a /pkgs/kde/frameworks | |
parent | fc40d637fe78d717b7909e710ccb310458c2410f (diff) |
pkgs/kde: init at 6.0.0 / 24.02.0, the Nix bits
This is the thing you want to look at.
Diffstat (limited to 'pkgs/kde/frameworks')
82 files changed, 1079 insertions, 0 deletions
diff --git a/pkgs/kde/frameworks/attica/default.nix b/pkgs/kde/frameworks/attica/default.nix new file mode 100644 index 000000000000..05b5c1e59be9 --- /dev/null +++ b/pkgs/kde/frameworks/attica/default.nix @@ -0,0 +1,4 @@ +{mkKdeDerivation}: +mkKdeDerivation { + pname = "attica"; +} diff --git a/pkgs/kde/frameworks/baloo/default.nix b/pkgs/kde/frameworks/baloo/default.nix new file mode 100644 index 000000000000..517e5285a4e0 --- /dev/null +++ b/pkgs/kde/frameworks/baloo/default.nix @@ -0,0 +1,10 @@ +{ + mkKdeDerivation, + qtdeclarative, + lmdb, +}: +mkKdeDerivation { + pname = "baloo"; + + extraBuildInputs = [qtdeclarative lmdb]; +} diff --git a/pkgs/kde/frameworks/bluez-qt/default.nix b/pkgs/kde/frameworks/bluez-qt/default.nix new file mode 100644 index 000000000000..3bccb4309af7 --- /dev/null +++ b/pkgs/kde/frameworks/bluez-qt/default.nix @@ -0,0 +1,9 @@ +{ + mkKdeDerivation, + qtdeclarative, +}: +mkKdeDerivation { + pname = "bluez-qt"; + + extraBuildInputs = [qtdeclarative]; +} diff --git a/pkgs/kde/frameworks/breeze-icons/default.nix b/pkgs/kde/frameworks/breeze-icons/default.nix new file mode 100644 index 000000000000..103903c04cb4 --- /dev/null +++ b/pkgs/kde/frameworks/breeze-icons/default.nix @@ -0,0 +1,16 @@ +{ + mkKdeDerivation, + python3, + libxml2, +}: +mkKdeDerivation { + pname = "breeze-icons"; + + extraNativeBuildInputs = [ + (python3.withPackages (ps: [ps.lxml])) + libxml2 + ]; + + # lots of icons, takes forever, does absolutely nothing + dontStrip = true; +} diff --git a/pkgs/kde/frameworks/default.nix b/pkgs/kde/frameworks/default.nix new file mode 100644 index 000000000000..302be8ad3eba --- /dev/null +++ b/pkgs/kde/frameworks/default.nix @@ -0,0 +1,74 @@ +{callPackage}: { + attica = callPackage ./attica {}; + baloo = callPackage ./baloo {}; + bluez-qt = callPackage ./bluez-qt {}; + breeze-icons = callPackage ./breeze-icons {}; + extra-cmake-modules = callPackage ./extra-cmake-modules {}; + frameworkintegration = callPackage ./frameworkintegration {}; + kapidox = callPackage ./kapidox {}; + karchive = callPackage ./karchive {}; + kauth = callPackage ./kauth {}; + kbookmarks = callPackage ./kbookmarks {}; + kcalendarcore = callPackage ./kcalendarcore {}; + kcmutils = callPackage ./kcmutils {}; + kcodecs = callPackage ./kcodecs {}; + kcolorscheme = callPackage ./kcolorscheme {}; + kcompletion = callPackage ./kcompletion {}; + kconfig = callPackage ./kconfig {}; + kconfigwidgets = callPackage ./kconfigwidgets {}; + kcontacts = callPackage ./kcontacts {}; + kcoreaddons = callPackage ./kcoreaddons {}; + kcrash = callPackage ./kcrash {}; + kdav = callPackage ./kdav {}; + kdbusaddons = callPackage ./kdbusaddons {}; + kdeclarative = callPackage ./kdeclarative {}; + kded = callPackage ./kded {}; + kdesu = callPackage ./kdesu {}; + kdnssd = callPackage ./kdnssd {}; + kdoctools = callPackage ./kdoctools {}; + kfilemetadata = callPackage ./kfilemetadata {}; + kglobalaccel = callPackage ./kglobalaccel {}; + kguiaddons = callPackage ./kguiaddons {}; + kholidays = callPackage ./kholidays {}; + ki18n = callPackage ./ki18n {}; + kiconthemes = callPackage ./kiconthemes {}; + kidletime = callPackage ./kidletime {}; + kimageformats = callPackage ./kimageformats {}; + kio = callPackage ./kio {}; + kirigami = callPackage ./kirigami {}; + kitemmodels = callPackage ./kitemmodels {}; + kitemviews = callPackage ./kitemviews {}; + kjobwidgets = callPackage ./kjobwidgets {}; + knewstuff = callPackage ./knewstuff {}; + knotifications = callPackage ./knotifications {}; + knotifyconfig = callPackage ./knotifyconfig {}; + kpackage = callPackage ./kpackage {}; + kparts = callPackage ./kparts {}; + kpeople = callPackage ./kpeople {}; + kplotting = callPackage ./kplotting {}; + kpty = callPackage ./kpty {}; + kquickcharts = callPackage ./kquickcharts {}; + krunner = callPackage ./krunner {}; + kservice = callPackage ./kservice {}; + kstatusnotifieritem = callPackage ./kstatusnotifieritem {}; + ksvg = callPackage ./ksvg {}; + ktexteditor = callPackage ./ktexteditor {}; + ktexttemplate = callPackage ./ktexttemplate {}; + ktextwidgets = callPackage ./ktextwidgets {}; + kunitconversion = callPackage ./kunitconversion {}; + kuserfeedback = callPackage ./kuserfeedback {}; + kwallet = callPackage ./kwallet {}; + kwidgetsaddons = callPackage ./kwidgetsaddons {}; + kwindowsystem = callPackage ./kwindowsystem {}; + kxmlgui = callPackage ./kxmlgui {}; + modemmanager-qt = callPackage ./modemmanager-qt {}; + networkmanager-qt = callPackage ./networkmanager-qt {}; + prison = callPackage ./prison {}; + purpose = callPackage ./purpose {}; + qqc2-desktop-style = callPackage ./qqc2-desktop-style {}; + solid = callPackage ./solid {}; + sonnet = callPackage ./sonnet {}; + syndication = callPackage ./syndication {}; + syntax-highlighting = callPackage ./syntax-highlighting {}; + threadweaver = callPackage ./threadweaver {}; +} diff --git a/pkgs/kde/frameworks/extra-cmake-modules/default.nix b/pkgs/kde/frameworks/extra-cmake-modules/default.nix new file mode 100644 index 000000000000..0a06cf4a8772 --- /dev/null +++ b/pkgs/kde/frameworks/extra-cmake-modules/default.nix @@ -0,0 +1,8 @@ +{mkKdeDerivation}: +mkKdeDerivation { + pname = "extra-cmake-modules"; + + outputs = ["out"]; + + setupHook = ./ecm-hook.sh; +} diff --git a/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh b/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh new file mode 100644 index 000000000000..b6c50059868f --- /dev/null +++ b/pkgs/kde/frameworks/extra-cmake-modules/ecm-hook.sh @@ -0,0 +1,128 @@ +# shellcheck shell=bash +# Variables we use here are set by the stdenv, no use complaining about them +# shellcheck disable=SC2164 + +ecmEnvHook() { + addToSearchPath XDG_DATA_DIRS "$1/share" + addToSearchPath XDG_CONFIG_DIRS "$1/etc/xdg" +} +addEnvHooks "$targetOffset" ecmEnvHook + +ecmPostHook() { + # Because we need to use absolute paths here, we must set *all* the paths. + # Keep this in sync with https://github.com/KDE/extra-cmake-modules/blob/master/kde-modules/KDEInstallDirs6.cmake + if [ "$(uname)" = "Darwin" ]; then + cmakeFlags+=" -DKDE_INSTALL_BUNDLEDIR=${!outputBin}/Applications/KDE" + fi + + cmakeFlags+=" -DKDE_INSTALL_EXECROOTDIR=${!outputBin}" + cmakeFlags+=" -DKDE_INSTALL_BINDIR=${!outputBin}/bin" + cmakeFlags+=" -DKDE_INSTALL_SBINDIR=${!outputBin}/sbin" + cmakeFlags+=" -DKDE_INSTALL_LIBDIR=${!outputLib}/lib" + cmakeFlags+=" -DKDE_INSTALL_LIBEXECDIR=${!outputLib}/libexec" + cmakeFlags+=" -DKDE_INSTALL_CMAKEPACKAGEDIR=${!outputDev}/lib/cmake" + + if [ -n "${qtPluginPrefix-}" ]; then + cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputBin}/$qtPluginPrefix" + cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputBin}/$qtPluginPrefix" + fi + + if [ -n "${qtQmlPrefix-}" ]; then + cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputBin}/$qtQmlPrefix" + fi + + cmakeFlags+=" -DKDE_INSTALL_INCLUDEDIR=${!outputInclude}/include" + cmakeFlags+=" -DKDE_INSTALL_LOCALSTATEDIR=/var" + cmakeFlags+=" -DKDE_INSTALL_SHAREDSTATEDIR=/com" # ??? + cmakeFlags+=" -DKDE_INSTALL_DATAROOTDIR=${!outputBin}/share" + cmakeFlags+=" -DKDE_INSTALL_DATADIR=${!outputBin}/share" + cmakeFlags+=" -DKDE_INSTALL_DOCBUNDLEDIR=${!outputBin}/share/doc/HTML" + cmakeFlags+=" -DKDE_INSTALL_KCFGDIR=${!outputBin}/share/config.kcfg" + cmakeFlags+=" -DKDE_INSTALL_KCONFUPDATEDIR=${!outputBin}/share/kconf_update" + cmakeFlags+=" -DKDE_INSTALL_KAPPTEMPLATESDIR=${!outputDev}/share/kdevappwizard/templates" + cmakeFlags+=" -DKDE_INSTALL_KFILETEMPLATESDIR=${!outputDev}/share/kdevfiletemplates/templates" + cmakeFlags+=" -DKDE_INSTALL_KXMLGUIDIR=${!outputBin}/share/kxmlgui6" + cmakeFlags+=" -DKDE_INSTALL_KNOTIFYRCDIR=${!outputBin}/share/knotifications6" + cmakeFlags+=" -DKDE_INSTALL_ICONDIR=${!outputBin}/share/icons" + cmakeFlags+=" -DKDE_INSTALL_LOCALEDIR=${!outputLib}/share/locale" + cmakeFlags+=" -DKDE_INSTALL_SOUNDDIR=${!outputBin}/share/sounds" + cmakeFlags+=" -DKDE_INSTALL_TEMPLATEDIR=${!outputBin}/share/templates" + cmakeFlags+=" -DKDE_INSTALL_WALLPAPERDIR=${!outputBin}/share/wallpapers" + cmakeFlags+=" -DKDE_INSTALL_APPDIR=${!outputBin}/share/applications" + cmakeFlags+=" -DKDE_INSTALL_DESKTOPDIR=${!outputBin}/share/desktop-directories" + cmakeFlags+=" -DKDE_INSTALL_MIMEDIR=${!outputBin}/share/mime/packages" + cmakeFlags+=" -DKDE_INSTALL_METAINFODIR=${!outputBin}/share/appdata" + cmakeFlags+=" -DKDE_INSTALL_QTQCHDIR=${!outputLib}/share/doc/qch" + cmakeFlags+=" -DKDE_INSTALL_QCHDIR=${!outputLib}/share/doc/qch" + cmakeFlags+=" -DKDE_INSTALL_MANDIR=${!outputBin}/share/man" + cmakeFlags+=" -DKDE_INSTALL_INFODIR=${!outputBin}/share/info" + cmakeFlags+=" -DKDE_INSTALL_DBUSDIR=${!outputBin}/share/dbus-1" + cmakeFlags+=" -DKDE_INSTALL_DBUSINTERFACEDIR=${!outputBin}/share/dbus-1/interfaces" + cmakeFlags+=" -DKDE_INSTALL_DBUSSERVICEDIR=${!outputBin}/share/dbus-1/services" + cmakeFlags+=" -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=${!outputBin}/share/dbus-1/system-services" + cmakeFlags+=" -DKDE_INSTALL_SYSCONFDIR=${!outputBin}/etc" + cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputBin}/etc/xdg" + cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputBin}/etc/xdg/autostart" + cmakeFlags+=" -DKDE_INSTALL_LOGGINGCATEGORIESDIR=${!outputLib}/share/qlogging-categories6" + cmakeFlags+=" -DKDE_INSTALL_SYSTEMDUNITDIR=${!outputBin}/lib/systemd" + cmakeFlags+=" -DKDE_INSTALL_SYSTEMDUSERUNITDIR=${!outputBin}/share/systemd/user" +} +postHooks+=(ecmPostHook) + +xdgDataSubdirs=( \ + "config.kcfg" "kconf_update" "knotifications6" "icons" "locale" "sounds" "templates" \ + "wallpapers" "applications" "desktop-directories" "mime" "appdata" "dbus-1" \ +) + +# ecmHostPathsSeen is an associative array of the paths that have already been +# seen by ecmHostPathHook. +declare -gA ecmHostPathsSeen + +ecmHostPathIsNotSeen() { + if [[ -n "${ecmHostPathsSeen["$1"]:-}" ]]; then + # The path has been seen before. + return 1 + else + # The path has not been seen before. + # Now it is seen, so record it. + ecmHostPathsSeen["$1"]=1 + return 0 + fi +} + +ecmHostPathHook() { + ecmHostPathIsNotSeen "$1" || return 0 + + local xdgConfigDir="$1/etc/xdg" + if [ -d "$xdgConfigDir" ] + then + qtWrapperArgs+=(--prefix XDG_CONFIG_DIRS : "$xdgConfigDir") + fi + + for xdgDataSubdir in "${xdgDataSubdirs[@]}" + do + if [ -d "$1/share/$xdgDataSubdir" ] + then + qtWrapperArgs+=(--prefix XDG_DATA_DIRS : "$1/share") + break + fi + done + + local manDir="$1/man" + if [ -d "$manDir" ] + then + qtWrapperArgs+=(--prefix MANPATH : "$manDir") + fi + + local infoDir="$1/info" + if [ -d "$infoDir" ] + then + qtWrapperArgs+=(--prefix INFOPATH : "$infoDir") + fi + + if [ -d "$1/dbus-1" ] + then + propagatedUserEnvPkgs+=" $1" + fi +} +addEnvHooks "$targetOffset" ecmHostPathHook diff --git a/pkgs/kde/frameworks/frameworkintegration/default.nix b/pkgs/kde/frameworks/frameworkintegration/default.nix new file mode 100644 index 000000000000..3607c115c301 --- /dev/null +++ b/pkgs/kde/frameworks/frameworkintegration/default.nix @@ -0,0 +1,11 @@ +{ + mkKdeDerivation, + pkg-config, + packagekit-qt, +}: +mkKdeDerivation { + pname = "frameworkintegration"; + + extraNativeBuildInputs = [pkg-config]; + extraBuildInputs = [packagekit-qt]; +} diff --git a/pkgs/kde/frameworks/kapidox/default.nix b/pkgs/kde/frameworks/kapidox/default.nix new file mode 100644 index 000000000000..2544e7921f87 --- /dev/null +++ b/pkgs/kde/frameworks/kapidox/default.nix @@ -0,0 +1,4 @@ +{mkKdeDerivation}: +mkKdeDerivation { + pname = "kapidox"; +} diff --git a/pkgs/kde/frameworks/karchive/default.nix b/pkgs/kde/frameworks/karchive/default.nix new file mode 100644 index 000000000000..fe124e1187d1 --- /dev/null +++ b/pkgs/kde/frameworks/karchive/default.nix @@ -0,0 +1,12 @@ +{ + mkKdeDerivation, + qttools, + pkg-config, + xz, +}: +mkKdeDerivation { + pname = "karchive"; + + extraNativeBuildInputs = [qttools pkg-config]; + extraBuildInputs = [xz]; |