]> git.phdru.name Git - dotfiles.git/blobdiff - .profile
.profile: copy some code and comments from Debian /etc/skel
[dotfiles.git] / .profile
index 97a6624a1016279052b3df431edec910c8f38237..1f6b720860d1330c82bcbfd213f7d5204bcaa2a1 100644 (file)
--- a/.profile
+++ b/.profile
@@ -2,6 +2,12 @@
 # $HOME/.profile (works with sh, ksh and bash)
 #
 
+# ~/.profile: executed by the command interpreter for login shells.
+# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
+# exists.
+# see /usr/share/doc/bash/examples/startup-files for examples.
+# the files are located in the bash-doc package.
+
 case "$SHELL" in
    */*csh) SHELL=/bin/bash
    ;;
@@ -15,9 +21,13 @@ if [ -z "$USER" ]; then
    USER="$LOGNAME"; export USER
 fi
 
+# the default umask is set in /etc/profile; for setting the umask
+# for ssh logins, install and configure the libpam-umask package.
+#umask 022
+
 ### umask sets a mask for the default file permissions,
 ### umask 022 is less restrictive, 077 more paranoid
-umask 027
+umask 077
 
 PATH="$HOME"/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 MANPATH="$HOME"/man:/usr/local/man:/usr/share/man:/usr/man
@@ -60,31 +70,50 @@ if [ -t 0 ] ; then
 
    stty sane erase ^H
 
+   if [ -n "`which less 2>/dev/null`" ]; then
+      HAS_LESS=true
+   fi
+
    case "$TERM" in
       linux)
-         # mutt, vim and python
+         # mutt, python and vim
          BACKGROUND=DARK
          export BACKGROUND
+         [ -n "$HAS_LESS" ] && . "$HOME"/lib/config/less/dark_bg
       ;;
 
       *rxvt*|screen*|*term*|vt100)
          BACKGROUND=LIGHT
          export BACKGROUND
+         [ -n "$HAS_LESS" ] && . "$HOME"/lib/config/less/light_bg
       ;;
    esac
 
-   PAGER=less
-   LESS="-gimq"
-   case "$LC_CTYPE" in
-      *UTF-8) LESSCHARSET=utf-8
-      ;;
+   if [ -x /usr/bin/dircolors ]; then
+       test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
+   fi
 
-      *) LESSCHARSET=koi8-r
-      ;;
-   esac
-   #LESSCHARDEF=32c.
-   LESSEDIT='vim ?lm+%lm -- %f'
-   export PAGER LESS LESSCHARSET LESSEDIT # LESSCHARDEF
+   if [ -n "$HAS_LESS" ]; then
+      PAGER=less
+      LESS="Rgimq"
+      case "$LC_CTYPE" in
+         *UTF-8) LESSCHARSET=utf-8
+         ;;
+
+         *) LESSCHARSET=koi8-r
+         ;;
+      esac
+      #LESSCHARDEF=32c.
+      LESSEDIT='vim ?lt+%lt. -- %f'
+      export LESS LESSCHARSET LESSEDIT # LESSCHARDEF
+
+      # make less more friendly for non-text input files, see lesspipe(1)
+      #[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
+
+   else
+      PAGER=more
+   fi
+   export PAGER
 
    EDITOR="$HOME"/.vim/vim.sh
    VISUAL="$EDITOR"
@@ -94,7 +123,7 @@ if [ -t 0 ] ; then
    HISTCONTROL=ignoreboth
    HISTIGNORE='&: *:x:X:[bf]g'
    HISTFILE="$HOME/.sh_history"
-   HISTFILESIZE=1000
+   HISTFILESIZE=2000
    HISTSIZE=1000
    export HISTCONTROL HISTIGNORE HISTFILE HISTFILESIZE HISTSIZE
 
@@ -130,27 +159,40 @@ if [ -t 0 ] ; then
    ENV="$HOME/.shellrc"
    export ENV
 
+   # set variable identifying the chroot you work in (used in the prompt below)
+   if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
+       debian_chroot="`cat /etc/debian_chroot`"
+   fi
+
    case "$SHELL" in
       */bash)
-         shopt -s checkwinsize
-         OPS1='\u@\h '
+         # display the user, host and current working directory
+         # in the terminal title
+         case "$TERM" in
+            *rxvt*|screen*|*term*|vt100)
+               OPS1="\[\033]0;${debian_chroot:+($debian_chroot)}\u@\h:\w\007\]"
+               case "$TERM" in
+                  screen*)
+                     OPS1=${OPS1}"\[\033k${debian_chroot:+($debian_chroot)}\u@\h:\w\033\\\\\]" # Set screen/tmux caption
+                  ;;
+               esac
+            ;;
+
+            *)
+               OPS1=""
+            ;;
+         esac
+
+         OPS1=${OPS1}"${debian_chroot:+($debian_chroot)}\u@\h \W "
          . "$ENV"
          ;;
       *)
-         OPS1="`/usr/bin/whoami`@`/bin/hostname -s` "
+         OPS1="${debian_chroot:+($debian_chroot)}`/usr/bin/whoami`@`/bin/hostname -s` "
          ;;
    esac
 
-   export OPS1
-
-   case "$TERM" in
-      *rxvt*|screen*|*term*|vt100)
-         if [ -x "`which xtitle 2>/dev/null`" ]; then
-            PROMPT_COMMAND=xtitle
-            export PROMPT_COMMAND
-         fi
-      ;;
-   esac
+   #PROMPT_DIRTRIM=2
+   export OPS1 # PROMPT_DIRTRIM
 
    ### biff controls new mail notification
    #biff n
@@ -175,6 +217,10 @@ if [ -t 0 ] ; then
    export HGUSER
 
    unset name email
+
+   if test -f .hushlogin && ! cmp -s .motd /etc/motd; then
+      tee $HOME/.motd < /etc/motd
+   fi
 fi
 
 # No need to set DISPLAY - ssh sets DISPLAY and calls xauth
@@ -182,12 +228,13 @@ fi
 #export DISPLAY
 
 if [ -n "$DISPLAY" ]; then
-   # mutt, vim and python
+   # mutt, python and vim
    BACKGROUND=LIGHT
    export BACKGROUND
+   [ -n "$HAS_LESS" ] && . "$HOME"/lib/config/less/light_bg
 
    # BROWSERs
-   BROWSER="firefox:seamonkey:google-chrome:opera:xlinks2:$BROWSER"
+   BROWSER="firefox:seamonkey:chromium:google-chrome:opera:xlinks2:$BROWSER"
 
    ### X Window System Configuration
    #XAPPLRESDIR="$HOME/lib/X11/app-defaults/"; export XAPPLRESDIR
@@ -214,6 +261,8 @@ if [ -n "$DISPLAY" ]; then
    #export __GL_FSAA_MODE
 fi
 
+[ -n "$HAS_LESS" ] && unset HAS_LESS
+
 #
 # read in usepkg function
 # . "$HOME"/lib/config/usepkg.sh