Merge pull request #24205 from ttuegel/sddm-closure-size

SDDM closure size
This commit is contained in:
Thomas Tuegel 2017-03-22 07:50:06 -05:00 committed by GitHub
commit acd9c5ace3
8 changed files with 46 additions and 19 deletions

View File

@ -202,5 +202,7 @@ with lib;
"See the 16.09 release notes for more information.") "See the 16.09 release notes for more information.")
(mkRemovedOptionModule [ "services" "phpfpm" "phpIni" ] "") (mkRemovedOptionModule [ "services" "phpfpm" "phpIni" ] "")
(mkRemovedOptionModule [ "services" "dovecot2" "package" ] "") (mkRemovedOptionModule [ "services" "dovecot2" "package" ] "")
(mkRemovedOptionModule [ "services" "xserver" "displayManager" "sddm" "themes" ]
"Set the option `services.xserver.displayManager.sddm.package' instead.")
]; ];
} }

View File

@ -208,11 +208,7 @@ in
services.xserver.displayManager.sddm = { services.xserver.displayManager.sddm = {
theme = "breeze"; theme = "breeze";
themes = [ package = pkgs.sddmPlasma5;
pkgs.extra-cmake-modules # for the setup-hook
plasma5.plasma-workspace
pkgs.breeze-icons
];
}; };
security.pam.services.kde = { allowNullPassword = true; }; security.pam.services.kde = { allowNullPassword = true; };

View File

@ -9,7 +9,7 @@ let
cfg = dmcfg.sddm; cfg = dmcfg.sddm;
xEnv = config.systemd.services."display-manager".environment; xEnv = config.systemd.services."display-manager".environment;
sddm = pkgs.sddm.override { inherit (cfg) themes; }; sddm = cfg.package;
xserverWrapper = pkgs.writeScript "xserver-wrapper" '' xserverWrapper = pkgs.writeScript "xserver-wrapper" ''
#!/bin/sh #!/bin/sh
@ -105,11 +105,12 @@ in
''; '';
}; };
themes = mkOption { package = mkOption {
type = types.listOf types.package; type = types.package;
default = []; default = pkgs.sddm;
description = '' description = ''
Extra packages providing themes. The SDDM package to install.
The default package can be overridden to provide extra themes.
''; '';
}; };

View File

@ -1,4 +1,4 @@
{ stdenv, makeQtWrapper, fetchFromGitHub, fetchpatch { stdenv, lib, makeQtWrapper, fetchFromGitHub, fetchpatch
, cmake, extra-cmake-modules, pkgconfig, libxcb, libpthreadstubs, lndir , cmake, extra-cmake-modules, pkgconfig, libxcb, libpthreadstubs, lndir
, libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam, systemd , libXdmcp, libXau, qtbase, qtdeclarative, qttools, pam, systemd
, themes , themes
@ -28,10 +28,13 @@ let
nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig qttools ]; nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig qttools ];
buildInputs = [ buildInputs = [
libxcb libpthreadstubs libXdmcp libXau qtbase pam systemd libxcb libpthreadstubs libXdmcp libXau pam systemd
qtbase qtdeclarative
]; ];
propagatedBuildInputs = [ qtdeclarative ]; propagatedUserEnvPkgs = builtins.map lib.getBin [
qtbase qtdeclarative
];
cmakeFlags = [ cmakeFlags = [
"-DCONFIG_FILE=/etc/sddm.conf" "-DCONFIG_FILE=/etc/sddm.conf"
@ -80,6 +83,21 @@ stdenv.mkDerivation {
installPhase = '' installPhase = ''
runHook preInstall 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
makeQtWrapper "$unwrapped/bin/sddm" "$out/bin/sddm" makeQtWrapper "$unwrapped/bin/sddm" "$out/bin/sddm"
mkdir -p "$out/share/sddm" mkdir -p "$out/share/sddm"

View File

@ -17,12 +17,15 @@ plasmaPackage {
nativeBuildInputs = [ extra-cmake-modules kdoctools ]; nativeBuildInputs = [ extra-cmake-modules kdoctools ];
buildInputs = [ buildInputs = [
isocodes libdbusmenu libSM libXcursor pam wayland
];
propagatedBuildInputs = [
baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative
kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
knotifyconfig kpackage krunner ktexteditor ktextwidgets kwallet kwayland knotifyconfig kpackage krunner ktexteditor ktextwidgets kwallet kwayland
kwin kxmlrpcclient libkscreen libksysguard networkmanager-qt phonon kwin kxmlrpcclient libkscreen libksysguard networkmanager-qt phonon
plasma-framework qtgraphicaleffects qtquickcontrols qtquickcontrols2 plasma-framework solid qtgraphicaleffects qtquickcontrols qtquickcontrols2
qtscript qtx11extras solid isocodes libdbusmenu libSM libXcursor pam wayland qtscript qtx11extras
]; ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series); patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);

View File

@ -31,8 +31,8 @@ _makeQtWrapperSetup() {
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins" export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins"
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports" export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports"
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml" export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml"
export RUNTIME_XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputBin}/share" export RUNTIME_XDG_DATA_DIRS="$RUNTIME_XDG_DATA_DIRS${RUNTIME_XDG_DATA_DIRS:+:}${!outputBin}/share"
export RUNTIME_XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg" export RUNTIME_XDG_CONFIG_DIRS="$RUNTIME_XDG_CONFIG_DIRS${RUNTIME_XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg"
} }
prePhases+=(_makeQtWrapperSetup) prePhases+=(_makeQtWrapperSetup)

View File

@ -29,8 +29,8 @@ _makeQtWrapperSetup() {
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins" export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins"
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports" export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports"
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml" export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml"
export RUNTIME_XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputBin}/share" export RUNTIME_XDG_DATA_DIRS="$RUNTIME_XDG_DATA_DIRS${RUNTIME_XDG_DATA_DIRS:+:}${!outputBin}/share"
export RUNTIME_XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg" export RUNTIME_XDG_CONFIG_DIRS="$RUNTIME_XDG_CONFIG_DIRS${RUNTIME_XDG_CONFIG_DIRS:+:}${!outputBin}/etc/xdg"
} }
prePhases+=(_makeQtWrapperSetup) prePhases+=(_makeQtWrapperSetup)

View File

@ -15470,6 +15470,13 @@ with pkgs;
themes = []; # extra themes, etc. themes = []; # extra themes, etc.
}; };
sddmPlasma5 = sddm.override {
themes = [
plasma5.plasma-workspace
pkgs.breeze-icons
];
};
skrooge = libsForQt5.callPackage ../applications/office/skrooge {}; skrooge = libsForQt5.callPackage ../applications/office/skrooge {};
slim = callPackage ../applications/display-managers/slim { slim = callPackage ../applications/display-managers/slim {