Install conky & conky theme seamod-mix on linux

Conky is a free software system monitor for the X Window System. It is available for Linux, FreeBSD, and OpenBSD.Conky is highly configurable and is able to monitor many system variables including the status of the CPU, memory, swap space, disk storage, temperatures, processes, network interfaces, battery power, system messages etc.

Install conky on Linux machine:

For ubuntu,mint,debian:
using apt-get or the Synaptic GUI.

sudo apt-get install conky-all

For fedora,opensuse,centos etc rpm base:

sudo yum install conky-all

For ArchLinux:

pacman conky-all

Now install conky theme seamod-mix.But to get all things work we need to install couple more packages(lm-sensors,hddtemp,dmidecode). you can install it via your package manager. OR visit below links.




After installing above packages you need to change permission of following packages

sudo chmod u+s /usr/sbin/hddtemp
sudo chmod u+s /usr/sbin/dmidecode

*other wise hdd temperature & main board info & temperature won’t work.

Now for pretty look we need to install 2 fonts STYLBCC.ttf and Poky.ttf. if don’t know how to install it,then follow this link.

Now go to and search you city
you will get a zip code of your city like ‘1915035’ into urls.
Now copy the zip code and open ‘weather’ file from downloads.
file the line ‘’
replace code numbers with yours & save the file.

Then open file and replace below line with ur conky files location

cd “/home/penguin/mybin/conky”

save the add the ‘’ to start up application.

Enjoy 🙂

Screenshot from 2014-01-03 00:33:55

conky-seamod-mix theme download link: here

HOW TO Setup Samba on Ubuntu[File sharing between Linux and windows]

1. Prerequisites

– Your Linux box should have an static ip-address.
In case you’re getting your ip from a router/server via DHCP make sure it’s configured to provide
a fixed dhcp-lease.

if that’s no valid option you cannot use WINS … more on this way down.

– You need to have samba installed.
If you haven’t done so already open a terminal and type:

sudo apt-get install samba

2. Getting samba configured
First, let us make sure samba isn’t running:

sudo /etc/init.d/samba stop

Since the installation of samba just installed a rather useless template file we’re going to rename it –
we keep the file just in case.

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.template

Next we create a new empty file

sudo touch /etc/samba/smb.conf

And finally we need to open the file inside an editor

sudo gedit /etc/samba/smb.conf

NOTE: If you’re on KDE replace “gedit” with “kate”

Copy / Paste the contents of the code-section below into your editor and read on …

{code section start}

; General server settings
netbios name = YOUR_HOSTNAME
server string =
workgroup = YOUR_WORKGROUP
announce version = 5.0

passdb backend = tdbsam
security = user
null passwords = true
username map = /etc/samba/smbusers
name resolve order = hosts wins bcast

wins support = yes

printing = CUPS
printcap name = CUPS

syslog = 1
syslog only = yes

; NOTE: If you need access to the user home directories uncomment the
; lines below and adjust the settings to your hearts content.
;valid users = %S
;create mode = 0600
;directory mode = 0755
;browseable = no
;read only = no
;veto files = /*.{*}/.*/mail/bin/

; NOTE: Only needed if you run samba as a primary domain controller.
; Not needed as this config doesn’t cover that matter.
;path = /var/lib/samba/netlogon
;admin users = Administrator
;valid users = %U
;read only = no

; NOTE: Again – only needed if you’re running a primary domain controller.
;path = /var/lib/samba/profiles
;valid users = %U
;create mode = 0600
;directory mode = 0700
;writeable = yes
;browseable = no

; NOTE: Inside this place you may build a printer driver repository for
; Windows – I’ll cover this topic in another HOWTO.
path = /var/lib/samba/printers
browseable = yes
guest ok = yes
read only = yes
write list = root
create mask = 0664
directory mask = 0775

path = /tmp
printable = yes
guest ok = yes
browseable = no

; Uncomment if you need to share your CD-/DVD-ROM Drive
;[DVD-ROM Drive]
;path = /media/cdrom
;browseable = yes
;read only = yes
;guest ok = yes

path = /media/samba/
browseable = yes
read only = no
guest ok = no
create mask = 0644
directory mask = 0755
force user = YOUR_USERNAME
force group = YOUR_USERGROUP

{code section end}

Ok,Now there is a few simple things you may need to tweak; so here they are:
-> netbios name = YOUR_HOSTNAME Replace “YOUR_HOSTNAME” with your desired hostname (don’t use spaces!).
Best pratice would be to use the same name you configured upon installation.

netbios name = CRAZICODER
-> workgroup = YOUR_WORKGROUP Replace “YOUR_WORKGROUP” with the name of your workgroup,
but make sure you’re using the same as configured in Windows. To find out the Workgroup name in Windows
follow these steps:

– Click “START”
– Click “Control Panel”
– Click “System” – Click the 2nd Tab entitled “Computername” and find the name of the Workgroup there.

workgroup = MSHOME
-> wins support = yes
If your box doesn’t have a static ip-address, or you cannot configure your router/server to provide you with a
fixed dhcp-lease, change this configuration parameter to “no”. In this case you cannot use the benefits of WINS.

-> [MyFiles]

This is the name of the share. Leave it as it is or adjust it to whatever you prefer. Don’t use more than 31
characters and try to avoid spaces! -> path = /media/samba/ This suggests that you’ve mounted an hard drive or
partition on /media/samba where all the shared files will be stored. In case you don’t have an extra hard drive/partition
you may also create folder.I assume you’ve been wise enough to put /home onto a separate partition having an reasonable
amount of storage space. To create the folder type (inside a new terminal) …

sudo mkdir /home/samba

… and adjust “path =” to read … path = /home/samba/ Remember that this is just an
example – you are free to put things wherever you like.

-> force user = YOUR_USERNAME –
> force group = YOUR_USERNAME

Well, this should say it all. Replace “YOUR_USERNAME” with the name you use for login (no spaces!).

force user = crazicoder
force group = crazicoder
Now we completed the part of editing smb.conf Save the file and close gedit. Since we are going to share the folder
with other users we should now make sure that the permissions are set. Type:

sudo chmod 0777 /media/samba

NOTE: Don’t forget to correct the path to the location you chose above! That’s it – now we need to start samba.

1.1 Starting samba and setting up user accounts Let us fire up samba for the first time. Type:

sudo /etc/init.d/samba start

There shouldn’t be any errors – if you are presented with an error message make sure everything is correct
(search for typos and/or invalid paths). Time to add yourself as an samba user. NOTE: You will be asked for a password
– make sure you use the same as you use for login!

sudo smbpasswd -L -a your_username
sudo smbpasswd -L -e your_username

Now that we configured samba and created the user accounts we are done with the Linux-part – there’s one more thing to do
in Windows.

2. Changing network settings in Windows Now we should let Windows know that there’s a WINS server active in the network.
If you had to change “wins support” to “no” above skip this step!

– Click “START”
– Click “Control Panel”
– Click “Network Connections”
– Find your “LAN Connection”
– Right-click the icon and select “Properties”
– Select the “TCP/IP” Protocol and click the “Properties” button
– Click “Advanced” – Select the third Tab entitled “WINS”
– Click “Add” – Type in the ip-address of your Linux box
– Click “Add” – Select “Use NetBIOS over TCP/IP”
– Click “OK” – Click “OK”
– Click “OK”

– Reboot Windows Upon reboot you may now map the network drive within Windows.

With WINS enabled: –

Click “START”
– Right-click “My Computer”
– Select “Map network drive”
– Choose the drive letter

NOTE: Adjust this to the hostname and sharename you chose above!

– Click “Finish”

With WINS disabled:

– Click “START”
– Right-click “My Computer”
– Select “Map network drive”
– Choose the drive letter
– Type \<ip-address>MyFiles

NOTE: To find out the ip-address of your Linux box type “ifconfig” inside a terminal and find the ip
for the correct interface (i.e. eth0). Don’t forget to adjust the sharename to the name you chose above.

– Click “Finish”
That’s it – samba is up and running now.

3. Security consideration This is the right time to think about security right away. In case your computer
has more than one network connection (i.e. wired and wireless ethernet) you may want to restrict access to samba.
If not especially configured samba will bind its service to all available network interfaces. So,
let us assume you only want your wired network to have access and that the network card is called eth0.
Add the following lines to the [general] section of your smb.conf to achieve that goal:

interfaces = lo, eth0
bind interfaces only = true

If you did it correctly it should look similar to this:

[CODE Start]
; General server settings
netbios name = YOUR_HOSTNAME
server string =
workgroup = YOUR_WORKGROUP
announce version = 5.0
interfaces = lo, eth0
bind interfaces only = true

[CODE End]

Now only the local loopback interface (dubbed “lo”) and eth0 are able to access samba – there’s no need to
fear that someone might break into your system by wireless as the interface isn’t bound to the service.

[Main Source]

Ekushey Fonts for Ubuntu

I’ve been using the Unicode based Bengali fonts of Ekushey for a long time, specially SolaimanLipi which I use almost everywhere. To make these fine fonts easily available on Ubuntu, I’ve made a package of all of them called ttf-ekushey. Users of Ubuntu derivatives such as Linux Mint can use this package too.

Font list:

  1. SolaimanLipi
  2. Rupali
  3. Ekushey Lohit
  4. Ekushey Sharifa
  5. Ekushey Punarbhaba
  6. Ekushey Sumit
  7. Ekushey Durga
  8. Ekushey Saraswati
  9. Ekushey Puja
  10. Ekushey Azad
  11. Ekushey Godhuli
  12. Ekushey Mohua

(Twelve for now, but whenever they releases a new font I’ll update my package too.)

Ekushey Fonts for Ubuntu


To install this package, you can either download the binary file (MD5: a6cbc1dae63c1cf62c1ff4ef4ab73068) from our Launchpad PPA, or install it via apt-get or your graphical package manager. This method is recommended, as you’ll get notification when an update is available. Here’s how to do it via apt-get:

1. Open the apt sources.list file from the run command dialogue box (ALT+F2):

gksudo gedit /etc/apt/sources.list (Ubuntu)

kdesudo kate /etc/apt/sources.list (Kubuntu)

gksudo mousepad /etc/apt/sources.list (Xubuntu)

2. Add the following line on the bottom of the file:

deb intrepid main

3. Open a shell window and type:

sudo apt-get update

4. When the update is completed, type:

sudo apt-get install ttf-ekushey

When you see the warning message “The following packages cannot be authenticated!”, press y to continue.

5. Done, now you can use the Ekushey fonts on your system!

I’ll try to get this package into the Ubuntu repository, and possibly into the Debian repository as well.

Hope this is helpful to you guys.

Run two dropbox account at a time on Ubuntu

I started from a position of having a working first account (mine).

First step is to move the existing account, and get it working …

So you can probably replace “me” and “other” in the commands below with “personal” and “business” or whatever you want to call them.

1] Stop the existing dropbox daemon running.

2] rename existing account .dropbox folder

mv ~/.dropbox ~/.dropbox-me

3] create a new bash script ‘’, containing the following:

HOME=/home/me/.dropbox-me /home/me/.dropbox-dist/dropbox start -i

Note that I found that pointing to /home/me/.dropbox-dist/dropbox made the difference – using the one in /usr/bin caused the same error you are seeing. I’m not really sure why, I was just experimenting and it worked.

4] and make it runnable:

chmod 775

5] use “system->preferences->startup applications” to add this script as a startup application. (actually, I edited the existing dropbox startup application to point at this script).

I now had a running dropbox after restart (or just running the bash script).

Second step is to configure the new account (for “other”):

6] create a new bash script ‘’, containing the following:

HOME=/home/me/.dropbox-other /home/me/.dropbox-dist/dropbox start -i

7] and make it runnable:

chmod 775

8] run this script, and follow usual registration (or existing account) process, to get it configured. Using a different location that the first account.

[at this point I had two working dropbox accounts]

9] use “system->preferences->startup applications” to add this other script as a startup application.

Restarted the PC and it all came back with the two dropbox Icons on the panel, etc.

Hope this works for you.

How to Cross Compiling with codeblocks using linux

The following is how I did this on Ubuntu ‘Precise Pangolin’ Linux:

Step 1:

Install MingW32 for linux

# sudo apt-get install mingw32

Step 2:

Settings->Compiler and debugger settings

 Select GNU GCC Compiler and click the Copy button.
 Name this: MingW32 Compiler

Step 3:

Click the Compiler tab and then click the #defines tab.
Add the following:


Click the Linker tab and the following under “Other Linker Options”:


*Note: Not all of these are REQUIRED… As I have been recently messing with compiling apps for windows with ogl and dx9 support I have realized that there are some additions I have needed to add here… I will update accordingly when I know more.

Step 4:

Click the Directories tab and the Compiler tab.

 Modify the path to read the following (where ix86 is your architecture type):

Click the Directories tab and the Linker tab:

 Modify the path to read the following (where ix86 is your architecture type):

Click the Directories tab and the Resource Compiler tab:

 Modify the path to read the following (where ix86 is your architecture type):

Step 5:

Click the Programs tab:

 C compiler: i586-mingw32msvc-gcc
 C++ compiler: i586-mingw32msvc-g++
 Linker for dynamic libs: i586-mingw32msvc-g++
 Linker for static libs: i586-mingw32msvc-ar
 Debugger: i586-mingw32msvc-gdb    **** MORE ON THIS LATER ****

Click OK and save your changes.

Step 6:

Ubuntu’s mingw32 package and from what I can tell, MingW32 in general doesnt really have a solid gdb option for debugging natively in linux so we’re going to work around this using wine and mingw32’s latest insight build for windows

Install Wine


# sudo apt-get install wine

Step 7:

Download Insight here:


Step 8:

Once you download insight.exe, extract the archive using wine:

wine insight.exe

I extracted this to my desktop

Step 9:

Move the insight folder to /opt

the path should now look like


Step 10:

create a shell script in /usr/bin:

(note: shell scripts should start with a hash (#) bang (!), ie: “# ! / bin / sh ” [with no spaces] but when I add that the forum post tanks)

# sudo gedit /usr/bin/i586-mingw32msvc-gdb

and add the following:

wine /opt/insight/bin/gdb.exe "$@"

Save the file and quit gedit

Step 11:

# sudo chmod +x /usr/bin/i586-mingw32msvc-gdb

Now we have a way to execute the windows version of mingw32’s gdb for windows in linux using our shell script wrapper

Step 12:

Create a new console application project in Codeblocks…

Using the wizard select the MingW32 Compiler option.

Step 13:

Right click the project and go to properties. Click the Targets tab and set the Output Filename to be whatever you want with a .exe file extension. Make sure the Type is a Console Application.

Step 14:

Hit F9 in codeblocks and the hello world application runs!! YAY!

Set a breakpoint on line 5 and hit F8 and the application breaks in the debugger!! Woot!

Now you can successfully compile, execute, and debug windows applications in linux using codeblocks!!!

Source post:  Click here

(C/C++) How to make windows executable file(.exe) from GNU/Linux

To make windows executable file(.exe) from GNU/Linux you need a Cross-Compiler named ” mingw32

  • Installation

If you using Ubuntu  then install “mingw32".You can install it many ways but if you are lazy as like me then you can use terminal.Give this command on terminal.

sudo  apt-get  install  mingw32

Replace “apt-get” with “yum” or whatever your linux distro uses.


To compile C  source code give below command on terminal

i586-mingw32msvc-cc  main.c  -o  main.exe

here main.c is your c source file and main.exe is you desire .exe file name.

To compile C ++  source code give below command on terminal

i586-mingw32msvc-c++  clock.cpp  -o  clock.exe

here clock.cpp  is your c++ source file and clock.exe is you desire .exe file name.

Now you can run those main.exe and clock.exe on Windows OS. if you want to run those .exe file on linux you need wine or  other software that can run windows executable file. I prefer to use wine its  free.

to install wine on Ubuntu give this command on terminal

sudo  apt-get  install  wine

Replace “apt-get” with “yum” or whatever your linux distro uses.

now type on terminal

wine  main.exe


Reinstall / Recover GRUB from Ubuntu live CD / USB

After installing Windows / Fedora your Ubuntu will not boot anymore and its grub may be wiped out. To restore it follow the steps below.

To Reinstall Grub

You need to have Ubuntu Live CD or Live USB. Normal session can be used to repair the grub. Boot using your Ubuntu Live CD or Live USB, while booting choose Try Ubuntu.

Once booted then open a terminal, and run the following command one by one to install the boot repair.

To add boot-repair to the repository,just add below two lines to “/etc/apt/sources.list”  according to your Ubuntu version:

Ubuntu 13.04:

deb raring main
deb-src raring main

Ubuntu 12.10:
deb quantal main
deb-src quantal main

Ubuntu 12.04:

deb precise main
deb-src precise main

To Update your repository

$ sudo apt-get update

To install boot-repair

$ sudo apt-get install -y boot-repair

Once Installation complete run boot-repair on terminal by typing the following command or select it by

System->Aministration->Boot Repair.

$ boot-repair

NOTE: Update the Boot Repair if its newer version is available.

It will scan the System for few seconds and will show you the options Recommended repair and Create a BootInfo summary. By clicking the Recommended Repair it will start repair the grub. Check the screen shots below.

Once done click ok and restart your system, your grub should work now. If not run the boot-repair again using live cd / usb. Then follow the steps below.

Select the Advanced options, In Main options tab check whether the following options are selected or not. If not select it, the options are Reinstall Grub and unhide boot menu for 10 seconds. Check the screen shot below

Then select the GRUB locations tab and check the following options are selected or not. The options are OS to boot by default and place grub into, In “OS to boot by default” option choose the OS which you want to be default on boot. Then select the drive where you need to reinstall the grub in “place grub into” option and click apply. Check the screen shots below

Click ok and restart your System.

How To Create an ISO Image from a CD or DVD on ubuntu


1. Insert the CD or DVD that you want to make an ISO image of.

2. Open a terminal window.

3. Execute the following command:

cat /dev/scd0 > /home/DCR007/test.iso

where /dev/scd0 is the device name for your drive (to find this, go to the System Monitor open it. Click the File Systems tab. The device name will be listed in the Device column). Also make sure to change the path and iso filename to the desired path and filename.

The disc will begin to spin and the ISO image will start being constructed. Once it has completed, you have an ISO image of your CD. To verify that the image was properly created, mount the ISO file and check the contents.