Fix konsole super user sessions with sudo or su

This resolves Bug 853
pull/2/head
Slávek Banko 11 years ago
parent 266a2501df
commit 7d6186b592

@ -77,6 +77,7 @@ option( WITH_LIBART "Enable libart support (for SVG icons and wallpapers)" ${WIT
option( WITH_LIBUSB "Enable control of some mouse models through libusb" ${WITH_ALL_OPTIONS} )
option( WITH_LIBRAW1394 "Enable visualization of ieee1394 devices through libraw1394" ${WITH_ALL_OPTIONS} )
option( WITH_SUDO_TDESU_BACKEND "Use sudo as backend for tdesu (default is su)" OFF )
option( WITH_SUDO_KONSOLE_SUPER_USER_COMMAND "Use sudo when launching Konsole super user sessions (default is su)" OFF )
option( WITH_PAM "tdm should use PAM" ${WITH_ALL_OPTIONS} )
option( WITH_SHADOW "tdm should use shadow passwords" ${WITH_ALL_OPTIONS} )
option( WITH_XDMCP "xdmcp support for tdm" ${WITH_ALL_OPTIONS} )
@ -123,6 +124,7 @@ option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden"
# WITH_SHADOW affects tdm kcheckpass
# WITH_UPOWER affects ksmserver
# WITH_SUDO_TDESU_BACKEND affects tdesu
# WITH_SUDO_KONSOLE_SUPER_USER_COMMAND affects launching Konsole super user sessions
# NOTE: WITH_SHADOW and WITH_PAM shouldn't be set concurrently
# WITH_PAM will override WITH_SHADOW

@ -3421,9 +3421,7 @@ void Konsole::addSessionCommand(const TQString &path)
// try to locate the binary
TQString exec= co->readPathEntry("Exec");
if (exec.startsWith("sudo su -c \'")) {
exec = exec.mid(12,exec.length()-13);
}
exec.remove(TQRegExp("^(sudo )?su (- )?-c ?\'"));
exec = KRun::binaryName(exec, false);
exec = KShell::tildeExpand(exec);

@ -14,6 +14,15 @@ add_subdirectory( wallpapers )
tde_install_icons( )
if( WITH_SUDO_KONSOLE_SUPER_USER_COMMAND )
set( KONSOLE_SUPER_USER_COMMAND "sudo su" CACHE INTERNAL "" FORCE )
else()
set( KONSOLE_SUPER_USER_COMMAND su CACHE INTERNAL "" FORCE )
endif()
configure_file( su.desktop.cmake su.desktop @ONLY )
configure_file( sumc.desktop.cmake sumc.desktop @ONLY )
install( FILES
BlackOnLightColor.schema BlackOnLightYellow.schema
BlackOnWhite.schema Example.Schema GreenOnBlack.schema
@ -22,7 +31,9 @@ install( FILES
LightPicture.schema Transparent.schema GreenTint.schema
Transparent_MC.schema GreenTint_MC.schema Transparent_lightbg.schema
Transparent_darkbg.schema LightPaper.schema linux.desktop
mc.desktop shell.desktop su.desktop sumc.desktop
mc.desktop shell.desktop
${CMAKE_CURRENT_BINARY_DIR}/su.desktop
${CMAKE_CURRENT_BINARY_DIR}/sumc.desktop
linux.keytab vt100.keytab vt420pc.keytab x11r5.keytab
solaris.keytab README.Schema README.KeyTab README.default.Keytab
screen.desktop

@ -123,7 +123,7 @@ Comment[vi]=Mở một Trình giao diện Gốc mới
Comment[wa]=Novea shell root
Comment[zh_CN]= Root Shell
Comment[zh_TW]= Root Shell
Exec=sudo su -
Exec=@KONSOLE_SUPER_USER_COMMAND@ -
Schema=BlackOnLightYellow.schema
#Schema=Linux.schema
#VGA

@ -139,7 +139,7 @@ Comment[wa]=Novea «Midnight Commander» e môde root
Comment[zh_CN]= Root Midnight Commander
Comment[zh_TW]= Root Midnight Commander
Comment[zu]=Umyaleli Waphakathi nobusuku Wempande Entsha
Exec=sudo su -c 'mc -c'
Exec=@KONSOLE_SUPER_USER_COMMAND@ - -c 'mc -c'
Schema=BlackOnLightYellow.schema
#VGA
#Font=6
Loading…
Cancel
Save