Jeszcze raz poprawka do profile .. i pewna poszlaka

Tomasz Kłoczko kloczek w rudy.mif.pg.gda.pl
Śro, 24 Lut 1999, 22:27:16 CET


Tym razem wrzuciłem już poprawkę do CVS. Różnica między tym co było
poprzednio a tym co jest obecnie jest taka, że upodobniłem prompta ksh do
tego jaki był dotyczczasowo w bash (kosmetyka).

Na razie zauważyłem, że na konsoli nie działają mi w linii poleceń
prawidłowo home, end.

W cvs jest także spec do ostatniego pdksh. Na razie nie ma tam jeszcze
modyfikacji robiącej linka ksh -> sh.

Inna sprawa jaka mi się w tej chwili fokładnie nasuneła włąsnie na czoło
to pewne spostrzeżenie związane ze zgodnością obecnych skryptów %pre{un},
%post{un}
Patrząc na zmiany jakie już weszły so rc-scripts typu:

-if [ $UTC = "true" ]; then
+if [ "$UTC" = "true" ]; then

zauważam, że większość obecnych sekcji nie ma obu arbumentów w if ujętych
w "". Jeżeli to jest coś na czym się sh wyłoży to już jest jedna
konsekwencja, że za wszesne wykonanie modyfikacji z linkiem ksh -> sh
rozwali całkiem sporą ilość upgradewó.
Co prawda prawie wszystkie te skrypty mają Prereq i  przy masowym
wykonywaniu upgradeu  ksh zleci na koniec listy pakietów lub przynajmniej
za stefę gdzie  taka podmniana bedzie newralgiczna. Niemniej jak ktoś
bedzie wykonywał upgrade w kawałkach i dość wcześnie wykona upgrade na ksh
z linkiem na sh (czy też z tą zmianą z nazwą shella ustawianą w
rc-scripts) to spora ilość skryptów %post pzrechowywanych w bazie rpm-a na
ewentuaslność upgradeu poprostu rozkraczy się. O ile powyższe się
potwierdzi to ostateczne przejście na czyste sh w /bin/sh będzie trzeba
mocno opóźnić, a dla osób przechodzących z RH na PLD wykonanie
newralgicznej zmiany z /bin/sh trzeba będzie przenieść na sam koniec
procedury. W każym bąć razie o ile dotą nie było podejrzeń o wielkie dołki
przy takim przejściu to teraz włąśnie może mamy pierwszy taki i ciężko
będzie go obeść (na razie nie widzę jakiegoś szybkiego rozwiązania).

i jeszcze patch z poprawką na profile:
Index: profile
===================================================================
RCS file: /cvsroot/setup/etc/profile,v
retrieving revision 1.4
diff -u -r1.4 profile
--- profile     1999/02/05 23:55:19     1.4
+++ profile     1999/02/24 21:10:07
@@ -1,10 +1,9 @@
 # /etc/profile
 
 # System wide environment and startup programs
-# Functions and aliases go in /etc/bashrc
+# Functions and aliases go into the shells dependent startup files
 
 PATH="$PATH:/usr/X11R6/bin"
-PS1="\u@\h \W\\$ "
 
 if [ `id -gn` = `id -un` -a `id -u` -gt 14 ]; then
        umask 007
@@ -19,7 +18,49 @@
 HOSTNAME=`/bin/hostname`
 HISTSIZE=1000
 HISTFILESIZE=1000
-export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL
+
+#
+# Setup the environment for varius shells
+#
+
+case "${0#\-}" in
+  ash)
+       PS1="${HOSTNAME}\$ "
+       ;;
+  bash)
+       PS1="\u@\h \W\\$ "
+       ;;
+  ksh|pdksh)
+       PS1='[${LOGNAME-$USER}@${HOSTNAME}`
+               if [ "$PWD" = "${PWD##$HOME}" ]; then
+                       echo $PWD;
+                else
+                        echo '~'${PWD##$HOME};
+       fi`] '$PS1
+       PS2='> '
+       set -o emacs
+       bind '^I'=complete
+       #
+       # Setup some of the most basic editing functions
+       # to work properly under different termnal emulators.
+       #
+       case $TERM in
+       nxterm|xterm|xterm-color|rxvt)
+               bind '^[[H'=beginning-of-line
+               bind '^[[F'=end-of-line
+               ;;
+       linux)
+               bind '^[1~'=beginning-of-line
+               bind '^[4~'=end-of-line
+               ;;
+       esac
+       ;;
+  zsh)
+       PS1="%m:%~%# "
+       ;;
+esac
+
+export PATH PS1 PS2 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL
 
 for i in /etc/profile.d/*.sh ; do
        if [ -x $i ]; then

kloczek
-- 
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek w rudy.mif.pg.gda.pl*



Więcej informacji o liście dyskusyjnej pld-devel-pl