Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock Wiki From BZR
The latest stable release is the *3.4.0* : How to install it here.
Note: We just switched from BZR to Git on Github! (only to host the code and your future pull requests)
Information : The version displayed on this page is not the latest available.
History View code

Glx-Dock / Cairo-Dock

Home

History

Support Us

Flattr this

Cairo-Dockon

From BZR

Caution: this version is regarded as unstable and can present some bugs : Use at your own risk
And stay updated

Don't forget to remove other releases of CD before install it by BZR

If you have any bugs : please and don't be shy and open a new thread on BZR forum



With BZR on Launchpad, you can help us easily !

If you can code in C (or in another language using the DBus applet), it's very easy to propose your modifications on a personal branch on lp

For more informations, read this : Help us with BZR




Autoconf is now remplaced by CMake (Cairo-Dock versions >= 2.2.0) !



Adress of bazaar
For more informations about the adress or to browse sources files, go there : https://code.launchpad.net/cairo-dock



Latest revision
BZR rev



Generic Method

If you aren't on Debian, Ubuntu and other forks, Fedora or ArchLinux, this section is made for you ! For the others, go to the next sections.
    • Install all dependencies. Caution : naming may vary depending on your distribution (dev can be called devel, etc.) Here are the Debian names.
      cmake make pkg-config gcc g++ gettext # for compiling
      libxxf86vm-dev libxtst-dev libx11-dev libgtkglext1-dev libcurl4-gnutls-dev libcairo2-dev libgtk2.0-dev librsvg2-dev libdbus-glib-1-dev # for the core
      libdbusmenu-gtk-dev libasound2-dev libgnome-menu-dev libetpan-dev libxklavier-dev libwebkit-dev libexif-dev libvte-dev curl libzeitgeist-dev libido-0.1-dev libsensors4-dev # for the plug-ins
Add libthunar-vfs-1-dev for old XCFE (< 4.6) or libgnomevfs2-dev for very old Gnome (< 2.20).
GNote is nice for the Notes applet, and Zeitgeist is needed for the Recent-Events applet.

    • Download the latest source code with bzr in a directory of your choice :
      bzr checkout --lightweight lp:cairo-dock-core
      bzr checkout --lightweight lp:cairo-dock-plug-ins
      If you don't have the launchpad plug-in of bzr, the complete addresses are :
      bzr://bazaar.launchpad.net/~cairo-dock-team/cairo-dock-core/
      bzr://bazaar.launchpad.net/~cairo-dock-team/cairo-dock-plug-ins/
    • Compile Cairo-Dock and after its plug-ins:
      cd cairo-dock-core
      mkdir build && cd build
      cmake .. -DCMAKE_INSTALL_PREFIX=/usr ## if you want to have debug symbols, simply add this flag : "-DCMAKE_BUILD_TYPE=Debug"
      make -j $(grep -c ^processor /proc/cpuinfo) ## if you have an error, see if you have install all dependences and/or post a new thread on our forum
      # make install ## on root mode
      cd ../../cairo-dock-plug-ins/
      mkdir build && cd build
      cmake .. -DCMAKE_INSTALL_PREFIX=/usr ## if you want to have debug symbols, simply add this flag : "-DCMAKE_BUILD_TYPE=Debug"
      make -j $(grep -c ^processor /proc/cpuinfo)
      # make install ## as root and if you had no errors
      • Tips: with "make -j $(grep -c ^processor /proc/cpuinfo)" the compilation uses all core of your processor.
      • Rem: For 64bits (x86_64) architectures, the libraries are installed in a 'lib/' directory by default but it seems it can be a problem for some distributions (e.g.: OpenSUSE) but not on the other (those which have a symbolic link: lib64 -> lib). If you have a problem by launching Cairo-Dock and after having uninstall it with this command launched as root from the both 'build' dir
        make uninstall
        you can compile it (core and its plug-ins) with the flag "FORCE_LIB64":
        cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DFORCE_LIB64=yes
        You can also force another prefix for this librairy directory with "LIB_SUFFIX" flag, e.g. for 'lib32' directory:
        cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DLIB_SUFFIX=32

    • Update with this command in the two directories (cairo-dock-core and cairo-dock-plug-ins)
      bzr up
      Remove the content of build directories and recompile Cairo-Dock and its plug-ins with the same commands as the previous box.
    • Tips : If you want to know which rev you are :
      bzr log -l1 --line



Debian / Ubuntu

Mav (with the help of matttbe ) wrote a script for Debian/Ubuntu users (cairo-dock_bzr.sh) which allows the installation and the update via BZR and avoids the tiresome steps for the recovery of the sources and the installation. Moreover, the script will automatically install all the packages necessary for the compilation (the same ones as those described in the part "By compilation").

If you are on Debian or Ubuntu (or Linux Mint) you can also install Cairo-Dock with DEB packages from our 'Weekly Build' PPA.
You can also add this PPA to your sources.list with Mav' script. Or look there : ppa Weekly


First installation

Open a Terminal, start by creating a specific directory (for example /opt/cairo-dock_bzr) and use it without administrator right:

sudo mkdir /opt/cairo-dock_bzr
sudo chown $USER:$USER /opt/cairo-dock_bzr
cd /opt/cairo-dock_bzr


Then get the script, make it executable and launch it:

wget http://bzr.glx-dock.org/cairo-dock_bzr.sh
chmod u+x cairo-dock_bzr.sh
./cairo-dock_bzr.sh
REM: For Debian users, you need to install the 'sudo' package.

You'll have this information
    1 --> Install the current version of Cairo-Dock from BZR server for the first time (Install)
    2 --> Install weekly ppa instead of BZR
    3 --> About this script
Press "1" + "Enter" to start the update.
Enter your own password when the script requires it (it's fully transparency when you'll write something) in order to proceed to the installation.
Then you'll have something like after having installed all needed dependences:
Is it the first time that you install Cairo-Dock from BZR sources files?

With BZR you can download these sources files in two ways:
    * By downloading all the content (it's interesting to have a copy of the server branch if you want to make some modifications in this branch) or only the latest revision (if you just want to compile sources)

    1 --> Download the complete branch (~150Mo - for dev.)
    2 --> Download only the last rev. (~20Mo - for all users)
Press "2" (in most cases) + "Enter" to start the download.

A message is posted with each installation of modules and the final message indicates if everything went well. If not please post in our forum the error messages (or consult the log.txt). It can be helpful !

Update it

Open a Terminal, in the specific file which you had created with the first installation (in our /opt/cairo-dock_bzr example) and start the script again:

cd /opt/cairo-dock_bzr
./cairo-dock_bzr.sh
And this is what you'll have:
    1 --> Update Cairo-Dock to the latest BZR revision
    2 --> Reinstall the current version
    3 --> Uninstall the current version
    4 --> Install weekly ppa instead of BZR
    5 --> Display the current installed revision
    6 --> About this script


Press "1" + "Enter" to start the update.

If an update is found, enter your own password, otherwise the message “No update available” will appear and the script will exit.

Note: Mav's script “auto-updates”, therefore each time you launch it, it will seek the last version of script available…



Tips

You can create a launcher in Cairo-Dock to execute the script… For that, create a new launcher (Right Click on the dock and select “Add a launcher”). Click on “New” and Enter this:

- Name of the launcher (example) : Cairo BZR Update

- Command to execute at the click :
gnome-terminal --working-directory=/opt/cairo-dock_bzr/ -e "./cairo-dock_bzr.sh"

(change your "working-directory" if necessary

- Directory of the picture :
(your most beautiful icon !)

Validate!!! and just click on your new icon to update your BZR version.



ArchLinux

It's easy with Yaourt !
On root mode, add arlinuxfr repositories in your file /etc/pacman.conf

[archlinuxfr]
Server = http://repo.archlinux.fr/i686/

or
[archlinuxfr]
Server = http://repo.archlinux.fr/x86_64/


Install yaourt if you have do that before.

sudo pacman -S yaourt
yaourt -Syu


Now, install cairo-dock and its plug-ins !
yaourt -S cairo-dock-bzr cairo-dock-plug-ins-bzr

Remember to check the plugins' PGKBUILD and remove the plugins you want from the blacklist line.


Fedora

  • Install this kit
    su -
    yum -y groupinstall buildsys-build

  • After that, install all dependences with yum install:
    yum install bzr alsa-lib-devel cmake dbus-glib-devel desktop-file-utils gettext gnome-menus-devel gnome-vfs2-devel gtk2-devel gtkglext-devel intltool libXcomposite-devel libXinerama-devel libXrender-devel libXtst-devel libXxf86vm-devel libetpan-devel libexif-devel libgnomeui-devel librsvg2-devel libtool libxklavier-devel libxml2-devel vte-devel perl WebKit-gtk-devel libsensors4-devel curl
    Install Thunar-devel instead of gnome-vfs2-devel if you uses XFCE
(and also something like libcurl4-gnutls-dev)

  • After that go to a new repertory to download sources (for example /opt/ with user right)
    bzr checkout --lightweight lp:cairo-dock-core
    bzr checkout --lightweight lp:cairo-dock-plug-ins

  • Compile Cairo-Dock and its plug-ins:
    cd cairo-dock-core
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=/usr ## if you want to have debug symbols, simply add this flag : "-DCMAKE_BUILD_TYPE=Debug"
    make -j $(grep -c ^processor /proc/cpuinfo)
    su -
    make install # If you haven't any error before that
    exit
    cd ../../cairo-dock-plug-ins/
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=/usr ## if you want to have debug symbols, simply add this flag : "-DCMAKE_BUILD_TYPE=Debug"
    make -j $(grep -c ^processor /proc/cpuinfo)
    su -
    make install # If you haven't any error before that
    exit

  • Update with this command in the two repertories (cairo-dock-core and cairo-dock-plug-ins)
    bzr up
    Remove the content of build directories and recompile Cairo-Dock and its plug-ins with the same commands as the previous box.



Gentoo

For more precision go here.

OpenSUSE KDE

  • This is an almost exhaustive list of the required dependencies. Install before compiling:
    cmake libtool m4 pkg-config intltool gettext cairo and possibly cairo-devel gtk2-devel librsvg-devel dbus-1-glib-devel vte-devel xorg-x11-libx11-devel libasound2 xorg-x11-libs gnome-menus-devel libgnome-menu2 libgnomeui-devel gtkglext gtkglext-devel freeglut-devel libetpan-devel libxklavier-devel libwebkit-devel libexif-devel curl libcurl-devel libgnomevfsmm-2_6-1 libical-devel libgnutls-devel libsensors4-devel
    + the equivalent of libcurl4-gnutls-dev. It's also possible other dependencies are required. If the compilation asks for it, verify the following (names might differ, they come from Fedora):
    alsa-lib-devel libXcomposite-devel libXinerama-devel libXrender-devel libXtst-devel libxml2-devel perl
    They should be already included in xorg-x11, alsa and xml packages.

  • After go to a new repertory to download sources (with user right):
    bzr checkout --lightweight lp:cairo-dock-core
    bzr checkout --lightweight lp:cairo-dock-plug-ins

  • Compile Cairo-Dock and its plug-ins:
    cd cairo-dock-core
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=/usr ## if you want to have debug symbols, simply add this flag : "-DCMAKE_BUILD_TYPE=Debug"
    ### Please use this command instead for 64bits (x86_64) architectures: cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DFORCE_LIB64=yes
    make -j $(grep -c ^processor /proc/cpuinfo) ## if you have an error, see if you have install all dependences and/or post a new thread on our forum
    # sudo make install ## on root mode
    cd ../../cairo-dock-plug-ins/
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=/usr ## if you want to have debug symbols, simply add this flag : "-DCMAKE_BUILD_TYPE=Debug"
    ### Please use this command instead for 64bits (x86_64) architectures: cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DFORCE_LIB64=yes
    make -j $(grep -c ^processor /proc/cpuinfo)
    # sudo make install ## as root and if you had no errors
    Tips : with "make -j $(grep -c ^processor /proc/cpuinfo)" the compilation uses all core of your processor.

  • Update with this command in the two repertories (cairo-dock-core and cairo-dock-plug-ins)
    bzr up
    Remove the content of build directories and recompile Cairo-Dock and its plug-ins with the same commands as the previous box.

Rem.
  • It seems the version of libgtkglext of OpenSUSE 11.3 is a bit buggy. So if you've this error at the end of the compilation process:
    /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../lib64/libgtkglext-x11-1.0.so: undefined reference to `GTK_WIDGET_REALIZED'
    /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../lib64/libgtkglext-x11-1.0.so: undefined reference to `GTK_WIDGET_NO_WINDOW'
    collect2: ld returned 1 exit status
    make[2]: *** [src/cairo-dock] Error 1
    You can install the version 1.2.0-186 (or newer) of gtkglext. This version is available in this repository here but you can also find a copy of these packages here.
  • It's seems that the librairies has to be installed into a lib64/ directory for 64bits (x86_64) architectures. So you have to use this CMake flag: -DFORCE_LIB64=yes


Tips

ATOM Feed

An atom feed is available in order to know when there is an update (every day ) .

http://bazaar.launchpad.net/%7Ecairo-dock-team/cairo-dock-core/cairo-dock/atom
http://bazaar.launchpad.net/%7Ecairo-dock-team/cairo-dock-plug-ins/plug-ins/atom

Conky

You can use the Atom feed on conky with a script.
  • You need curl :
    sudo apt-get install curl
    (or yum install curl, sudo pacman -S yaourt, emerge -av net-misc/curl, etc. depending of your distribution)
  • Save these line on your computer (for example '~/.conky-rss' ; a file hidden in your home)
    #!/bin/bash
    # RSS Display Script by Bill Woodford (admin@sdesign.us) v1.0
    #
    # This script is designed to output story titles for most any RSS Feed.
    #
    # This script depends on curl. Please ensure it is installed and in your $PATH
    # Gentoo: emerge -av net-misc/curl
    # Debian: apt-get install curl
    # Homepage: http://curl.haxx.se/
    #
    # Usage:
    # .conkyrc:    ${execi [time] /path/to/script/conky-rss.sh URI LINES TITLENUM}
    #    URI = Location of feed, ex. http://www.gentoo.org/rdf/en/glsa-index.rdf
    #    LINES = How many titles to display (default 5)
    #    TITLENUM = How many times the title of the feed itself is specified, usually 1 or 2 (default 2)
    #
    # Usage Example        
    #        ${execi 300 /home/youruser/scripts/conky-rss.sh http://www.foxnews.com/xmlfeed/rss/0,4313,1,00.rss 4 2}

    #RSS Setup - Don't change unless you want these values hard-coded!
    uri=$1                            #URI of RSS Feed
    lines=$2                        #Number of headlines
    titlenum=$3                        #Number of extra titles

    #Script start
    #Require a uri, as a minimum
    if [[ "$uri" == "" ]]; then
        echo "No URI specified, cannot continue!" >&2
        echo "Please read script for more information" >&2
    else
        #Set defaults if none specified
        if [[ $lines == "" ]]; then lines=5 ; fi
        if [[ $titlenum == "" ]]; then titlenum=2 ; fi

        #The actual work
        curl -s --connect-timeout 30 $uri |\
        sed -e 's/<\/title>/\n/g' |\
        grep -o '.*'</span> |\ <br/>    sed -e <span class="sntx_bash_string">'s/<title>//'</span> |\ <br/>    head -n <span class="sntx_bash_var">$</span>((<span class="sntx_bash_var">$lines</span> + <span class="sntx_bash_var">$titlenum</span>)) |\ <br/>    tail -n <span class="sntx_bash_var">$</span>((<span class="sntx_bash_var">$lines</span>)) <br/>fi</span></div></div> </li><li>This script needs +x right <div class='sntx_code'><div class='sntx_code_inner'><span class="sntx_bash_default">chmod u+x CHEMIN/NAME_OF_YOUR_FILE.sh</span></div></div> (~/.conky-rss.sh) </li><li>Modify your ~/.conkyrc with, for example<div class='sntx_code'><div class='sntx_code_inner'>${color white}Cairo-Dock${color} ${hr 2} <br/>${color lightgrey}Core : ${execi 900 ~/.conky-rss.sh http://bazaar.launchpad.net/%7Ecairo-dock-team/cairo-dock-core/cairo-dock/atom 2 1} <br/>Plug-ins : ${execi 900 ~/.conky-rss.sh http://bazaar.launchpad.net/%7Ecairo-dock-team/cairo-dock-plug-ins/plug-ins/atom 2 1}</div></div> (modify every <span class="sntx_italic">2</span> in order to have more or less lines and change the path of the script (~/.conky-rss.sh)</li></ul></td> </tr> </table> </div> <br/> </td> </table> <br/> <table width="100%"><tr> <td id="hdrPlus"> <a href="index.php">Glx-Dock / Cairo-Dock</a> <a href="ww_page.php">Wiki</a> <b>From BZR</b> </td> <td id="hdrPlus" class="small" align="right"><a href="#top">Top</a></td> </tr> </table> <hr/> <div class="small"> <img src="templates/bluecloud/images/elementspeak.png" align="right"/> Online users : <span style="color:#f0f0f0;"> <br/> </span> </div> </div> <br/> <div align="center" class="small"> Powered by ElementSpeak © 2007 Adrien Pilleboue, 2009-2013 Matthieu Baerts. <br /> <font color="grey">Dock based on CSS Dock Menu (Ndesign) with jQuery. Icons by zgegball</font> <br/>Cairo-Dock is a free software under GNU-GPL3 licence. First stable version created by Fabounet.<br />Many thanks to TuxFamily for the web Hosting and Mav for the domain name. </div> </body> </html>