colorgcc – Color your compiler output on Fedora

2012-07-11 2 min read C Programs Fedora

Lets start with installing colorgcc :

sudo yum install colorgcc

Now once that is done, you will need to ensure that the call to g++, gcc and others that you want to use, you will need to create a link in the “~/bin” directory, like so:

for i in g++ gcc c++ cc 
do
    ln -s $(which colorgcc) ~/bin/$i
done

The one liner above will create the links for colorgcc as **** your favourite compiler in your homedir. Don’t forget to add the bin diretory to your PATH variable:

Continue reading

Creating a chroot environment – the script.

2011-09-23 2 min read Bash Fedora Learning Linux

Here is the script, very simple and effective 🙂

#!/bin/bash -
#===============================================================================
#
#          FILE:  mkchroot.sh
#
#         USAGE:  ./mkchroot.sh
#
#   DESCRIPTION:  Make a  chroot environ and cd to it
#
#       OPTIONS:  ---
#  REQUIREMENTS:  ---
#          BUGS:  ---
#         NOTES:  ---
#        AUTHOR: Amit Agarwal (aka), 
#       CREATED: 09/03/2011 02:53:37 PM IST
# Last modified: Sat Sep 03, 2011  03:11PM
#      REVISION:  ---
#===============================================================================

 binaries=( bash2 ls cat vi vim sudo)
#===  FUNCTION  ================================================================
#          NAME:  copy_binary
#   DESCRIPTION:  copy binary to chroot
#    PARAMETERS:
#       RETURNS:
#===============================================================================

copy_binary ()
{
   cmd=`which $1`
   echo $cmd
   cp $cmd bin/
   ldd $cmd
   while read line
   do
      while read ld
      do
         if [[ -f $ld ]]
         then
            echo copy $ld
            cp $ld lib/
            if [[ -L $ld ]]
            then
               ld1=$( ls -l $ld |sed 's/.*> //')
               echo "  copy $ld1"
               cp  /lib/$ld1 lib/
            fi
         fi
      done < <(echo $line|sed 's/.*> //'|sed 's/ .*//')
   done < <(ldd $cmd)
}	# ----------  end of function copy_binary  ----------

#===  FUNCTION  ================================================================
#          NAME:  init
#   DESCRIPTION:  Do the required initialization
#    PARAMETERS:
#       RETURNS:
#===============================================================================
init()
{
   mkdir -p {root,home,dev,etc,lib,usr,bin}
   mkdir -p usr/bin
   mkdir -p libexec/openssh



   mknod -m 666 dev/null c 1 3

   cd etc
   cp /etc/ld.so.cache .
   cp -avr /etc/ld.so.cache.d/ .
   cp -avr /etc/ld.so.conf.d/ .
   cp /etc/ld.so.conf .
   cp /etc/nsswitch.conf .
   cp /etc/passwd .
   cp /etc/group .
   cp /etc/hosts .
   cp /etc/resolv.conf .
   cd -
}
cd $1
if [[ -f .status ]]
then
   cat .status
   echo "Not running now"
else
   init
   for i in ${binaries[*]}
   do
       copy_binary $i
       cp -avr /etc/${i}* etc/
   done
   ln bin/bash2 bin/bash
   echo "complete" > .status
fi
cp -avr ~/bin/automation root/automation
sudo chroot .

.

Continue reading

Installing Full Blin g theme on N900

2011-08-03 1 min read Maemo N900

I was going through the post : http://talk.maemo.org/showthread.php?t=46739
and found the theme quite intruging but not complete to the point where I can download the deb file and install it in /usr/share/theme/ dir with simple commands “apt-get” or at max just use mkdir command to create the dir and dump everything in that dir. So, I wrote this couple of bash one liners to copy the required files to my N900.

Continue reading

Installing Bling Theme on N900

2011-06-18 2 min read Maemo N900

Nokia N900 communicator/internet tablet
Image via Wikipedia

There is a very nice theme for N900 and it is called Bling theme. There is a problem though with the theme, the theme still does not have a installable .deb file, and thus the files need to be directly copied to “/usr/share/icons” and you have to manually do the mkdir and all such command in the terminal in a N900, which does not seem familiar to quite a lot of people using N900. So here, is for the benefit of  all, I am posting a script that can do the job. The one lines can be run from any bash script (Linus/Windows with cygwin/Mac or even N900). Though the one liners should be self explanatory, if you have a doubt, feel free to ping me.

Continue reading