Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
W Artykułach jest tekst: http://dug.net.pl/tekst/224/zastapienie_ekranu_logowania___autostart_x_i_autologowanie/
@mati75 opisuje w nim jak plik .xinitrc może uruchamiać kilka środowisk:
#!/bin/sh if [ -d /etc/X11/xinit/xinitrc.d ]; then for f in /etc/X11/xinit/xinitrc.d/*; do [ -x "$f" ] && . "$f" done unset f fi if [[ $1 == "fluxbox" ]] then exec startfluxbox elif [[ $1 == "spectrwm" ]] then exec spectrwm else echo "Choose a window manager" fi
Mam więc 2 pytania:
1) Jak przekazuje się mu zmienną? Czyżby tak: $startx fluxbox
2) Jak dostosować go do powłoki bash i debiana sid w mojej sytuacji, bo to co poniżej nie działa:
if [ -d /etc/X11/xinit/xinitrc ]; then for f in /etc/X11/xinit/xinitrc/*; do [ -x "$f" ] && . "$f" done unset f fi if [[ $1 == "openbox" ]] then exec ck-launch-session dbus-launch --sh-syntax --exit-with-session openbox-session elif [[ $1 == "i3" ]] then exec ck-launch-session dbus-launch --sh-syntax --exit-with-session i3 -c ~/.config/i3/config elif [[ $1 == "awesome" ]] then exec ck-launch-session dbus-launch --sh-syntax --exit-with-session awesome else echo "Choose a window manager" fi
Edit -------------------------------------------------
bash wskazywał na błędy z [[ i == sprawdzałem więc rózne wersje skryptu...
Ostatnio edytowany przez jacekz (2014-04-13 13:16:42)
Offline
Rzuć okiem (tylko celnie, żebyś oka bez potrzeby nie marnował) :D
http://forums.gentoo.org/viewtopic-t-950196.html
Może się przyda. ;)
Ostatnio edytowany przez Jacekalex (2014-04-13 14:18:35)
Offline
Spasiba, przydało się :)
Skrypt w .xinitrc:
session=${1:-openbox} case $session in openbox) exec ck-launch-session dbus-launch --sh-syntax --exit-with-session openbox-session;; i3) exec ck-launch-session dbus-launch --sh-syntax --exit-with-session i3 -c ~/.config/i3/config;; awesome) exec ck-launch-session dbus-launch --sh-syntax --exit-with-session awesome;; # No known session, try to run it as command *) exec $1;; esac
Wyboru dokonuje się np. tak: startx ~/.xinitrc i3
W celu "pełnej automatyki" w .profile umieściłem:
if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then TMOUT=3 # Prompt times out at three seconds. read -p " StartX (3 sec): (o)penbox (i)3 (a)wesome (n)oX " -n 1 s case "$s" in "o") exec startx ~/.xinitrc openbox &> /tmp/.xsession-errors ;; "i") exec startx ~/.xinitrc i3 &> /tmp/.xsession-errors ;; "a") exec startx ~/.xinitrc awesome &> /tmp/.xsession-errors ;; "n") echo "no X!" ;; *) exec startx ~/.xinitrc openbox &> /tmp/.xsession-errors esac fi
Ostatnio edytowany przez jacekz (2014-04-13 15:04:03)
Offline
U mnie w skrypcie się wykonywało ./skrypt fluxbox. Ja mam na stałe w wrzucone do .xinitrc:
export GTK2_RC_FILES="$HOME/.gtkrc-2.0" exec dbus-launch --sh-syntax --exit-with-session openbox-session
i dziala.
Offline
@mati75
podobnie wygladało to u mnie, gdy nie chciałem uruchamiać niczego poza openboxem.
Testując skrypty okazało się że mam problem z "zaborczymi" X-ami:
przy starcie wybierając "n" skrypt z .profile powinien jedynie wyswietlić "no X!" i pozostać w konsoli tty1. Jednak nadal stara sie uruchomić X-sy (i jesli nic nie zrobie to uruchamia openbox)
Dlaczego? Jak to zmienić?
Autologowanie mam wykonane tak:
/etc/inittab:
1:2345:respawn:/bin/login -f jacek tty1 </dev/tty1 >/dev/tty1 2>&1
Ostatnio edytowany przez jacekz (2014-04-13 18:45:55)
Offline
Strony: 1
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00007 | SET NAMES latin2 |
0.00175 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.145.59.165' WHERE u.id=1 |
0.00118 | UPDATE punbb_online SET logged=1716062025 WHERE ident='3.145.59.165' |
0.00065 | SELECT * FROM punbb_online WHERE logged<1716061725 |
0.00088 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=25607 AND t.moved_to IS NULL |
0.00007 | SELECT search_for, replace_with FROM punbb_censoring |
0.00119 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=25607 ORDER BY p.id LIMIT 0,25 |
0.00097 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=25607 |
Total query time: 0.00686 s |