All pastes #752810 Raw Edit

Miscellany

public text v1 · immutable
#752810 ·published 2007-10-28 19:17 UTC
rendered paste body
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines in the history. See bash(1) for more options
export HISTCONTROL=ignoredups
# ... and ignore same sucessive entries.
export HISTCONTROL=ignoreboth

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"

# 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

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
    ;;
*)
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac

# Comment in the above and uncomment this below for a color prompt
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
    ;;
*)
    ;;
esac

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

#if [ -f ~/.bash_aliases ]; then
#    . ~/.bash_aliases
#fi

# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
    eval "`dircolors -b`"
    alias ls='ls --color=auto'
    #alias dir='ls --color=auto --format=vertical'
    #alias vdir='ls --color=auto --format=long'
fi

# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
fi

###
## A script to setup some needed variables and functions for KDE 4 
development.
## This should normally go in the ~/.bashrc file of your kde-devel user, 
so
## that it is executed when a session for that user is started.
##
## Example:
##   su - kde-devel
##   kwrite ~/.bashrc
##   (then paste this file)
##   exit
##   su - kde-devel
##
## If you don't use a separate user, the first section with the 
## environment variables should go into a separate file of course.
 
# KDE
export KDEDIR=$HOME/kde
export KDEHOME=$HOME/.kde4
export KDETMP=/tmp/$USER-kde4
mkdir -p $KDETMP
export KDEVARTMP=/var/tmp/$USER-kde4
export KDEDIRS=$KDEDIR
export PKG_CONFIG_PATH=$KDEDIR/lib/pkgconfig:$PKG_CONFIG_PATH
# Qt
# only set Qt related variables if you compiled Qt on your own
# (which is discouraged). if you use the distro provided Qt, skip
# this section. Uncomment it if neccessary.
#export QTDIR=$HOME/qt-copy
#export QT_PLUGINS_DIR=$KDEDIR/lib/kde4/plugins:$QT_PLUGINS_DIR
#export PKG_CONFIG_PATH=$QTDIR/lib/pkgconfig:$PKG_CONFIG_PATH
# DBus
# only set DBUS related variables if you compiled dbus on your own
# (which is really discouraged). if you use the distro provided dbus,
# skip this variable. Uncomment it if neccessary.
#export DBUSDIR=$KDEDIR
#export PKG_CONFIG_PATH=$DBUSDIR/lib/pkgconfig:$PKG_CONFIG_PATH
# Other
# you might want to remove $PATH from the end of this line and add any
# essential items from your path - to make sure the your kde3 path isn't
# in here. Use the commented versions if you defined QTDIR above.
#export PATH=$QTDIR/bin:$KDEDIR/bin:/usr/local/bin:$PATH
#export LD_LIBRARY_PATH=$QTDIR/lib:$KDEDIR/lib:$LD_LIBRARY_PATH
export PATH=$KDEDIR/bin:/usr/local/bin:$PATH
export LD_LIBRARY_PATH=$KDEDIR/lib:$LD_LIBRARY_PATH
# only needed on some strange systems for compiling Qt. do not set
# it unless you have to.
#export YACC='byacc -d'
# XDG
unset XDG_DATA_DIRS # to avoid seeing kde3 files from /usr
unset XDG_CONFIG_DIRS
 
# build and src folders
# you might want to change these!
export KDE_BUILD=$HOME/kde/build
export KDE_SRC=$HOME/kde/src
 
# This will make the debug output prettier
export KDE_COLOR_DEBUG=1
export QTEST_COLORED=1
 
# Make
# Tell many scripts how to switch from source dir to build dir:
export OBJ_REPLACEMENT="s#$KDE_SRC#$KDE_BUILD#"
# Use makeobj instead of make, to automatically switch to the build dir.
# If you don't have makeobj, install the package named kdesdk-scripts or 
# kdesdk, or check out kdesdk/scripts from svn, or just don't set the 
alias
# yet.
alias make=makeobj
 
##
# IMPORTANT!  Uncomment the following lines if DBus does not work. DBus 
is not
# working if, when you run `dbus-uuidgen --ensure && qdbus`, you get an 
error.
#
# alias dbusstart="eval `PATH=$DBUSDIR/bin \
#  $DBUSDIR/bin/dbus-launch --auto-syntax`"
 
##
# A function to easily build the current directory of KDE.
#
# This builds only the sources in the current ~/{src,build}/KDE 
subdirectory.
# Usage: cs KDE/kdebase && cmakekde
#   will build/rebuild the sources in ~/src/KDE/kdebase
#
function cmakekde {
        if test -n "$1"; then
                # srcFolder is defined via command line argument
                srcFolder=$1
        else
                # get srcFolder for current dir
                srcFolder=`pwd | sed -e s,$KDE_BUILD,$KDE_SRC,`
        fi
        # we are in the src folder, change to build directory
        # Alternatively, we could just use makeobj in the commands 
below...
        if [ "$srcFolder" = `pwd` ]; then
                cb
        fi
        # to enable tests, add -DKDE4_BUILD_TESTS=TRUE to the next line.
        # you can also change "debugfull" to "debug" to save disk space.
        # added "nice make..." to allow the user to work on the box 
while
        # compiling
        # Note: To speed up compiling, change 'make -j2' to 'make -jx',
        #   where x is your number of processors +1
        cmake $srcFolder -GKDevelop3 -DCMAKE_INSTALL_PREFIX=$KDEDIR \
                -DCMAKE_BUILD_TYPE=debugfull&& \
        nice make -j2 && \
        make install;
}
##
# for the lazy ones, add/comment other directories 
function cmakekdeall {
        cs kdesupport && svn up && cmakekde
        cs KDE/kdelibs && svn up && cmakekde
        cs KDE/kdepimlibs && svn up && cmakekde
        cs KDE/kdebase && svn up && cmakekde
        cs KDE/kdepim && svn up && cmakekde
        cs KDE/kdegraphics && svn up && cmakekde
        cs KDE/kdemultimedia && svn up && cmakekde
        cs KDE/kdenetwork && svn up && cmakekde
        cs KDE/kdeutils && svn up && cmakekde
}
 
##
# A function to easily change to the build directory.
# Usage: cb KDE/kdebase
#   will change to $KDE_BUILD/KDE/kdebase
# Usage: cb
#   will simply go to the build folder if you are currently in a src 
folder
#   Example:
#     $ pwd
#     /home/user/src/KDE/kdebase
#     $ cb && pwd
#     /home/user/build/KDE/kdebase
#
function cb {
        # Make sure build directory exists.
        mkdir -p $KDE_BUILD
 
        # command line argument
        if test -n "$1"; then
                cd $KDE_BUILD/$1
                return
        fi
        # substitute src dir with build dir
        dest=`pwd | sed -e s,$KDE_SRC,$KDE_BUILD,`
        if test ! -d $dest; then
                # build directory does not exist, create
                mkdir -p $dest
        fi
        cd $dest
}
 
##
# Change to the source directory.  Same as cb, except this
# switches to $KDE_SRC instead of $KDE_BUILD.
# Usage: cs KDE/kdebase
#       will change to $KDE_SRC/KDE/kdebase
# Usage: cs
#   will simply go to the source folder if you are currently in a build 
folder
#   Example:
#     $ pwd
#     /home/user/build/KDE/kdebase
#     $ cs && pwd
#     /home/user/src/KDE/kdebase
#
function cs {
        # Make sure source directory exists.
        mkdir -p $KDE_SRC
 
        # command line argument
        if test -n "$1"; then
                cd $KDE_SRC/$1
        else
                # substitute build dir with src dir
                dest=`pwd | sed -e s,$KDE_BUILD,$KDE_SRC,`
                if [ $dest = `pwd` ]; then
                cd $KDE_SRC
                else
                cd $dest
                fi
        fi
}
 
##
# Add autocompletion to cs function
#
function _cs_scandir
{
        base=$1
        ext=$2
        if [ -d $base ]; then
                for d in `ls $base`; do
                        if [ -d $base/$d ]; then
                                dirs="$dirs $ext$d/"
                        fi
                done
        fi
}
 
function _cs()
{
        local cur dirs
        _cs_scandir "$KDE_SRC"
        _cs_scandir "$KDE_SRC/KDE" "KDE/"
        COMPREPLY=()
        cur="${COMP_WORDS[COMP_CWORD]}"
        COMPREPLY=( $(compgen -W "${dirs}" -- ${cur}) )
}
 
# Remove comment on next line to enable cs autocompletion
#complete -F _cs cs
 
function start3app {
  mkdir -p /tmp/$USER-kde
  export 
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11:/usr/games 
  export LD_LIBRARY_PATH= 
  export KDETMP=/tmp/$USER-kde 
  export KDEVARTMP=/var/tmp/$USER-kde 
  export KDEHOME=$HOME/.kde 
  export KDEDIR=/usr 
  export KDEDIRS=$KDEDIR 
  export DISPLAY=:0 
  eval "$@"
  source $HOME/.bashrc   #Reset environment variables again
}