diff options
Diffstat (limited to 'system/csh/README_Slackware.txt')
-rw-r--r-- | system/csh/README_Slackware.txt | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/system/csh/README_Slackware.txt b/system/csh/README_Slackware.txt new file mode 100644 index 0000000000000..e3ebbcd0dc9bb --- /dev/null +++ b/system/csh/README_Slackware.txt @@ -0,0 +1,79 @@ + +Notes for using SlackBuilds.org csh package: + +This csh build conflicts slightly with Slackware's tcsh package. The +easiest way to use this is to "removepkg tcsh" before installing csh. If +you want to do this, you can skip the next section. + + +Installing csh and tcsh together +-------------------------------- + +It's possible for csh to coexist with tcsh, with a few caveats: + +The shell is installed as /usr/bin/csh to avoid conflicting with +Slackware's own tcsh package (which makes /bin/csh a symlink to tcsh). If +you want to make /bin/csh point to the real csh, you have two choices: + +1. remove the /bin/csh symlink before installing the csh package: + # rm -f /bin/csh + The /bin/csh symlink will get created when csh is installed. + +2. adjust the symlink manually after csh installation: + # rm -f /bin/csh + # ln -s ../usr/bin/csh /bin/csh + This works the same way as e.g. the /usr/bin/vi symlink, which points + to either elvis or vim. + +If you have both csh and Slackware's tcsh installed, and you remove csh, +you'll want to reinstall tcsh to clean up afterwards. + +Removing tcsh while csh is installed should be perfectly OK. + +Installing/upgrading tcsh when csh is already installed is probably a +bad idea. Remove csh first, install tcsh, then install csh. + +As far as I know, nothing in Slackware depends on tcsh, so if you +mess things up, you won't break your OS. You can always put things +back to Slackware's default state by removing both csh and tsch, then +reinstalling tcsh. + + +Using csh as a login shell +-------------------------- + +If you want to use csh as a login shell, be aware that Slackware's +shipped /etc/csh.login (from the etc package) contains tcsh-specific +code, which prevents the /etc/profile.d/*.csh scripts from running. This +won't prevent you from logging in, but your environment won't be set up +correctly, you'll see "[: No match." errors, and your prompt won't show +your username, hostname, current directory as tsch does. + +To fix this, you can replace /etc/csh.login with the /etc/csh.login.new +installed with the csh package. It behaves the same as the original, +for tcsh, and has conditional code to make csh behave correctly. + + # cp /etc/csh.login /etc/csh.login.orig # back up original just in case + # mv /etc/csh.login.new /etc/csh.login + +If you don't want to replace Slackware's csh.login, just rm +/etc/csh.login.new and forget about it. + + +Other notes +----------- + +You should read the man page for csh. Also +/usr/doc/csh-$VERSION/paper.(txt|pdf) is a good intro to the C shell for +beginning users. Also, if you're an experienced tcsh user, you might +re-read the NEW FEATURES section in tcsh's man page (it describes the +tcsh features you won't find in csh). + +NEVER make csh the default shell for the root account! In fact, it's +probably a bad idea to ever change root's default shell on any Linux or +UNIX system, especially a third-party one that isn't shipped with the OS. + +The man page for csh states that "Words can be no longer than 1024 +characters", but this build of csh increases the limit to 8192 (actually, +BUFSIZ as defined in stdio.h). This was done so Slackware's profile.d +scripts will work correctly (particularly coreutils-dircolor.sh). |