I’ve been trying to build a package for this KDE theme (SDDM, KWin, Plasma, Kvantum, and a few more components) by following this install guide (for personal use). I’m having trouble with the compilation of the components (using either CMake or alternatively Ninja), and I can’t figure out what I’m doing wrong—I also can’t find any similar packages in Nixpkgs or documentation about this that would be helpful as a reference.
Here is what I have so far:
{
lib,
stdenv,
fetchFromGitLab,
cmake,
extra-cmake-modules,
ninja,
kdePackages,
}:
stdenv.mkDerivation rec {
pname = "aerothemeplasma";
version = "1.0.0"; # TODO: add actual version
src = fetchFromGitLab {
domain = "gitgud.io";
owner = "wackyideas";
repo = pname;
rev = "11fd4c740957accd2c81b3f8089997a59c004b3f";
sha256 = "sha256-cRpQVpXQTg3lDIvDuAAkOUiM6GgGLxqSEf9OI6We9Qg=";
};
nativeBuildInputs = [
cmake
extra-cmake-modules
ninja
kdePackages.wrapQtAppsHook # do I need this?
];
# extra libraries for compilation, some of these may be unessecary
buildInputs = [
kdePackages.kcmutils
kdePackages.qtstyleplugin-kvantum
kdePackages.qt6ct
kdePackages.kdecoration
kdePackages.qtbase
kdePackages.qtdeclarative
kdePackages.kconfigwidgets
kdePackages.kconfig
kdePackages.kcoreaddons
kdePackages.kcolorscheme
kdePackages.kwindowsystem
kdePackages.kwayland
kdePackages.kwin
kdePackages.plasma5support
];
postPatch =
/*
bash
*/
''
# Patch all `install.sh` scripts
find ./ -name "install.sh" | while read -r script; do
patchShebangs $script
substituteInPlace $script --replace-quiet /usr $out
done
'';
installPhase =
/*
bash
*/
''
runHook preInstall
mkdir -p $out/share/{color-schemes,icons,konsole,kwin,plasma,mime,sddm/themes,sounds}
# Run all `install.sh` scripts
find ./ -name "install.sh" | while read -r script; do
pushd "$(dirname $script)"
./install.sh
popd
done
# Plasma components
cp -a plasma/smod $out/share
cp -a plasma/{desktoptheme,look-and-feel,plasmoids,layout-templates,shells} $out/share/plasma
cp -a plasma/color_scheme/AeroColorScheme1.colors $out/share/color-schemes
cp -a plasma/sddm/sddm-theme-mod $out/share/sddm/themes
# KWin components
cp -a kwin/{effects,tabbox,outline,scripts} $out/share/kwin
# Misc components
cp -a misc/kvantum/Kvantum $out/share
cp - a misc/mimetype $out/share/mime/packages
tar -xzf misc/sounds/sounds.tar.gz -C $out/share/sounds
tar -xzf misc/icons/Windows 7 Aero.tar.gz -C $out/share/icons
tar -xzf misc/cursors/aero-drop.tar.gz -C $out/share/icons
runHook postInstall
'';
meta = with lib; {
license = licenses.agpl3Only;
platforms = platforms.linux;
};
}
and here is the log from trying to build that:
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking source archive /nix/store/pg8vch6sjya054d69qlnn0g1d3745hrc-source
source root is source
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "patchPhase" }
patching script interpreter paths in ./kwin/decoration/breeze-v5.93.0/install.sh
patching script interpreter paths in ./kwin/effects_cpp/kde-effects-aeroglassblur/install.sh
patching script interpreter paths in ./kwin/effects_cpp/kwin-effect-smodsnap-v2/install.sh
patching script interpreter paths in ./kwin/effects_cpp/smodglow/install.sh
patching script interpreter paths in ./misc/defaulttooltip/install.sh
patching script interpreter paths in ./plasma/plasmoids/src/sevenstart_src/install.sh
./plasma/plasmoids/src/sevenstart_src/install.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/p6k7xp1lsfmbdd731mlglrdj2d66mr82-bash-5.2p37/bin/bash"
patching script interpreter paths in ./plasma/plasmoids/src/seventasks_src/install.sh
./plasma/plasmoids/src/seventasks_src/install.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/p6k7xp1lsfmbdd731mlglrdj2d66mr82-bash-5.2p37/bin/bash"
patching script interpreter paths in ./plasma/sddm/sddm-theme-mod/extracter/install.sh
./plasma/sddm/sddm-theme-mod/extracter/install.sh: interpreter directive changed from "#!/bin/bash" to "/nix/store/p6k7xp1lsfmbdd731mlglrdj2d66mr82-bash-5.2p37/bin/bash"
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: configurePhase
@nix { "action": "setPhase", "phase": "configurePhase" }
fixing cmake files...
cmake flags: -GNinja -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF -DCMAKE_INSTALL_LOCALEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemepl
asma-1.0.0/share/locale -DCMAKE_INSTALL_LIBEXECDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/libexec -DCMAKE_INSTALL_LIBDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib -DCMAKE_INSTALL_DOCDIR=/nix/store/0rqxml6flrf56hrlli
b9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/aerothemeplasma -DCMAKE_INSTALL_INFODIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/info -DCMAKE_INSTALL_MANDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/man -DCMAKE
_INSTALL_OLDINCLUDEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/include -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/include -DCMAKE_INSTALL_SBINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aero
themeplasma-1.0.0/sbin -DCMAKE_INSTALL_BINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/bin -DCMAKE_INSTALL_NAME_DIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib -DCMAKE_POLICY_DEFAULT_CMP0025=NEW -DCMAKE_FIND_FRAMEWORK=L
AST -DCMAKE_STRIP=/nix/store/4apajimszc47rxwcpvc3g3rj2icinl71-gcc-wrapper-13.3.0/bin/strip -DCMAKE_RANLIB=/nix/store/4apajimszc47rxwcpvc3g3rj2icinl71-gcc-wrapper-13.3.0/bin/ranlib -DCMAKE_AR=/nix/store/4apajimszc47rxwcpvc3g3rj2icinl71-gcc-wrapper-13.3.0/bin/ar -DCMAKE_C
_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0 -DKDE_INSTALL_EXECROOTDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0 -DKDE_INSTALL_BINDIR=/nix/store/0rqxml6flrf56hrlli
b9k8j65pg9n5sw-aerothemeplasma-1.0.0/bin -DKDE_INSTALL_SBINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/sbin -DKDE_INSTALL_LIBDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib -DKDE_INSTALL_LIBEXECDIR=/nix/store/0rqxml6fl
rf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/libexec -DKDE_INSTALL_CMAKEPACKAGEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/cmake -DKDE_INSTALL_QTPLUGINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/qt-6/plugins -
DKDE_INSTALL_PLUGINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/qt-6/plugins -DKDE_INSTALL_QMLDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/qt-6/qml -DKDE_INSTALL_INCLUDEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9
n5sw-aerothemeplasma-1.0.0/include -DKDE_INSTALL_LOCALSTATEDIR=/var -DKDE_INSTALL_SHAREDSTATEDIR=/com -DKDE_INSTALL_DATAROOTDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share -DKDE_INSTALL_DATADIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aero
themeplasma-1.0.0/share -DKDE_INSTALL_DOCBUNDLEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/HTML -DKDE_INSTALL_KCFGDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/config.kcfg -DKDE_INSTALL_KCONFUPDATEDIR=/ni
x/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kconf_update -DKDE_INSTALL_KAPPTEMPLATESDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kdevappwizard/templates -DKDE_INSTALL_KFILETEMPLATESDIR=/nix/store/0rqxml6flrf56hrlli
b9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kdevfiletemplates/templates -DKDE_INSTALL_KXMLGUIDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kxmlgui5 -DKDE_INSTALL_KNOTIFYRCDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/
share/knotifications6 -DKDE_INSTALL_ICONDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/icons -DKDE_INSTALL_LOCALEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/locale -DKDE_INSTALL_SOUNDDIR=/nix/store/0rqxml6flrf
56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/soun
ds -DKDE_INSTALL_TEMPLATEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/templates -DKDE_INSTALL_WALLPAPERDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/wallpapers -DKDE_INSTALL_APPDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/applications -DKDE_INSTALL_DESKTOPDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/desktop-directories -DKDE_INSTALL_MIMEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/mime/packages -DKDE_INSTALL_METAINFODIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/appdata -DKDE_INSTALL_QTQCHDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/qch -DKDE_INSTALL_QCHDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/qch -DKDE_INSTALL_MANDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/man -DKDE_INSTALL_INFODIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/info -DKDE_INSTALL_DBUSDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1 -DKDE_INSTALL_DBUSINTERFACEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1/interfaces -DKDE_INSTALL_DBUSSERVICEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1/services -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1/system-services -DKDE_INSTALL_SYSCONFDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/etc -DKDE_INSTALL_CONFDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/etc/xdg -DKDE_INSTALL_AUTOSTARTDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/etc/xdg/autostart -DKDE_INSTALL_LOGGINGCATEGORIESDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/qlogging-categories6 -DKDE_INSTALL_SYSTEMDUNITDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/systemd -DKDE_INSTALL_SYSTEMDUSERUNITDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/systemd/user -DKDE_INSTALL_EXECROOTDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0 -DKDE_INSTALL_BINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/bin -DKDE_INSTALL_SBINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/sbin -DKDE_INSTALL_LIBDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib -DKDE_INSTALL_LIBEXECDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/libexec -DKDE_INSTALL_CMAKEPACKAGEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/cmake -DKDE_INSTALL_QTPLUGINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/qt-6/plugins -DKDE_INSTALL_PLUGINDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/qt-6/plugins -DKDE_INSTALL_QMLDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/qt-6/qml -DKDE_INSTALL_INCLUDEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/include -DKDE_INSTALL_LOCALSTATEDIR=/var -DKDE_INSTALL_SHAREDSTATEDIR=/com -DKDE_INSTALL_DATAROOTDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share -DKDE_INSTALL_DATADIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share -DKDE_INSTALL_DOCBUNDLEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/HTML -DKDE_INSTALL_KCFGDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/config.kcfg -DKDE_INSTALL_KCONFUPDATEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kconf_update -DKDE_INSTALL_KAPPTEMPLATESDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kdevappwizard/templates -DKDE_INSTALL_KFILETEMPLATESDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kdevfiletemplates/templates -DKDE_INSTALL_KXMLGUIDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/kxmlgui5 -DKDE_INSTALL_KNOTIFYRCDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/knotifications6 -DKDE_INSTALL_ICONDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/icons -DKDE_INSTALL_LOCALEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/locale -DKDE_INSTALL_SOUNDDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/sounds -DKDE_INSTALL_TEMPLATEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/templates -DKDE_INSTALL_WALLPAPERDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/wallpapers -DKDE_INSTALL_APPDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/applications -DKDE_INSTALL_DESKTOPDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/desktop-directories -DKDE_INSTALL_MIMEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/mime/packages -DKDE_INSTALL_METAINFODIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/appdata -DKDE_INSTALL_QTQCHDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/qch -DKDE_INSTALL_QCHDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/doc/qch -DKDE_INSTALL_MANDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/man -DKDE_INSTALL_INFODIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/info -DKDE_INSTALL_DBUSDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1 -DKDE_INSTALL_DBUSINTERFACEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1/interfaces -DKDE_INSTALL_DBUSSERVICEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1/services -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/dbus-1/system-services -DKDE_INSTALL_SYSCONFDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/etc -DKDE_INSTALL_CONFDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/etc/xdg -DKDE_INSTALL_AUTOSTARTDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/etc/xdg/autostart -DKDE_INSTALL_LOGGINGCATEGORIESDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/qlogging-categories6 -DKDE_INSTALL_SYSTEMDUNITDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/lib/systemd -DKDE_INSTALL_SYSTEMDUSERUNITDIR=/nix/store/0rqxml6flrf56hrllib9k8j65pg9n5sw-aerothemeplasma-1.0.0/share/systemd/user
CMake Warning:
Ignoring extra path from command line:
".."
CMake Error: The source directory "/build/source" does not appear to contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.
I’m quite new to nix, so if anyone with the know-how could explain what I’m doing wrong that would be great (: