Титла: Gnome+kde Публикувано от: hack_man в Jul 02, 2007, 18:36 Кажете как, къде и какво да препипам за да мога с командата "startx" да мога да избирам какво да ползвам .. KDE или GNOME или каквато гарафична среда да ползвам.
не искам графични Login-и като gdm или kdm ..... искам всичко да минава през startx или друг скрипт. Машината е Gentoo .... Титла: Gnome+kde Публикувано от: loxs в Jul 02, 2007, 18:49 малко ми е трудно да повярвам, че един Gentoo потребител не може да си напише едно елементарно скриптче като примерно:
echo "exec startkde" > ~/.xinitrc startx След това си именуваш файла примерно kdestart, даваш му права за изпълнение, слагаш си го в главната директория и пееш. Съответно си правиш подобни и за gnomestart и за каквото ти скимне. Ако правилно съм разбрал какво искаш да направиш, това би трябвало да ти помогне. Титла: Gnome+kde Публикувано от: hack_man в Jul 02, 2007, 20:08 да ..
така би станало ... ![]() ![]() ![]() чудно ми беше дали няма накой по-......вграден ... системен начин ![]() 10х Титла: Gnome+kde Публикувано от: neter в Jul 02, 2007, 20:17 Ами bash си е "вграден системен начин", само трябва да го накараш да работи за теб
![]() Титла: Gnome+kde Публикувано от: c2h5oh в Jul 03, 2007, 00:47 Аз съм с Fedora 7 Има си команда switchdesk която се изпълнявя от конзола еднократно Например switchdesk GNOME или switchdesk KDE След това startx ще ти зарежда GNOME или KDE в зависимост параметъра на switchdesk Ето кода на switchdesk
#! /bin/bash echo "Red Hat Linux `basename $0` 4.0" echo "Copyright © 1999-2004 Red Hat, Inc" echo "Redistributable under the terms of the GNU General Public License" if [ -n "$DISPLAY" -a -z "$1" ] ; then if [ -x /usr/share/switchdesk/switchdesk-gui.py ] ; then exec /usr/share/switchdesk/switchdesk-gui.py else echo "Desktop Switcher GUI is unavailable." echo "Please install the switchdesk-gui package or use" echo "switchdesk desktopname." exit 1 fi fi И на switchdesk-helper #! /bin/bash # Desktop Switching Tool # © 1999-2004 Red Hat, Inc. NotFound() { echo "ERROR: $1 is not installed on your machine! to install $1, please type" echo "yum $2 \"$3\"" exit 1 } XSESSION="$HOME/.xsession" XINITRC="$HOME/.xinitrc" DATADIR="/usr/share/switchdesk/" if [ "$1" = "" ]; then echo "Please specify one of either KDE, GNOME, XFCE, FVWM or WindowMaker." exit 1 fi # set up the .Xclients variable on a per-display basis if [ "$DISPLAY" != "" -a "$2" = "local" ]; then if [ `echo $DISPLAY | cut -c 1` = ':' ]; then SUB_XCLIENTS="$HOME/.Xclients-$HOSTNAME${DISPLAY%.*}" else SUB_XCLIENTS="$HOME/.Xclients-${DISPLAY%.*}" fi else SUB_XCLIENTS="$HOME/.Xclients-default" fi XCLIENTS="$HOME/.Xclients" # first off, check to see if they want to revert their settings if [ "$1" = "revert" ]; then mv -f $XCLIENTS.switchdesk $XCLIENTS echo "Desktop reverted to your personal settings." exit 0 fi DESKTOP=`echo $1 |tr a-z A-Z` case $DESKTOP in KDE|KDE2) [ ! -x /usr/bin/startkde ] && NotFound KDE groupinstall "KDE Software Development" DNAME="KDE" NEW_XCLIENTS="$DATADIR/Xclients.kde" ;; GNOME) [ ! -x /usr/bin/gnome-session ] && NotFound GNOME groupinstall "GNOME Desktop Environment" DNAME="GNOME" NEW_XCLIENTS="$DATADIR/Xclients.gnome" ;; ENLIGHTENMENT|E) [ ! -x /usr/bin/enlightenment ] && NotFound Enlightenment install enlightenment DNAME="Enlightenment" NEW_XCLIENTS="$DATADIR/Xclients.enlightenment" ;; FVWM) [ ! -x /usr/X11R6/bin/fvwm2 -a ! -x /usr/bin/fvwm2 ] && NotFound FVWM install fvwm DNAME="fvwm" NEW_XCLIENTS="$DATADIR/Xclients.fvwm" ;; WINDOWMAKER|WMAKER) [ ! -x /usr/bin/wmaker ] && NotFound WindowMaker install WindowMaker DNAME="WindowMaker" NEW_XCLIENTS="$DATADIR/Xclients.wmaker" ;; TWM) [ ! -x /usr/X11R6/bin/twm -a ! -x /usr/bin/twm ] && NotFound TWM install xorg-x11-twm DNAME="twm" NEW_XCLIENTS="$DATADIR/Xclients.twm" ;; XFCE) [ ! -x /usr/bin/startxfce4 ] && NotFound XFCE groupinstall XFCE DNAME="xfce" NEW_XCLIENTS="$DATADIR/Xclients.xfce" ;; FLUXBOX) [ ! -x /usr/X11R6/bin/fluxbox -a ! -x /usr/bin/fluxbox ] && NotFound FLUXBOX install fluxbox DNAME="fluxbox" NEW_XCLIENTS="$DATADIR/Xclients.fluxbox" ;; ICEWM) [ ! -x /usr/bin/icewm ] && NotFound ICEWM install icewm DNAME="icewm" NEW_XCLIENTS="$DATADIR/Xclients.icewm" ;; SYSTEM) DNAME="System defaults" ;; *) if [ -x "$DATADIR/Xclients.$DESKTOP" ] ; then DNAME="$DESKTOP" NEW_XCLIENTS="$DATADIR/Xclients.$DESKTOP" else echo "Unknown desktop requested: $1" exit 1 fi ;; esac if [ "$DNAME" = "System defaults" ] ; then rm -rf $HOME/.Xclients $HOME/.Xclients-default else # otherwise, do the normal stuff. if [ -e "$XSESSION" ]; then echo "warning: moving $XSESSION to $XSESSION.switchdesk" mv -f $XSESSION $XSESSION.switchdesk fi if [ -e "$XINITRC" ]; then echo "warning: moving $XINITRC to $XINITRC.switchdesk" mv -f $XINITRC $XINITRC.switchdesk fi if [ -e "$HOME/.Xclients" ]; then TEST_DIFF=`diff $DATADIR/Xclients.toplevel $XCLIENTS` if [ -n "$TEST_DIFF" ]; then echo "saving $XCLIENTS as $XCLIENTS.switchdesk" mv -f $XCLIENTS $XCLIENTS.switchdesk install "$DATADIR/Xclients.toplevel" $XCLIENTS fi else # if they have no .Xclients, give them one install "$DATADIR/Xclients.toplevel" $XCLIENTS fi # no need to save per-display .Xclients, no other programs # could have touched them but us. install $NEW_XCLIENTS $SUB_XCLIENTS fi echo "Desktop now set up to run $DNAME." Надявам се да си преправиш нещо за свои нужди |