26 Feb 2009, 12:38

KDE4.2 and Nepomuk on Debian


Since the features of KDE4 were announced I was eager to try out the promised semantik desktop. Since I’ve been working on onologies once, I know that it is a great idea, but sometimes difficult to implement. So I wanted to see how the KDE guys did implement this. Sadly it didn’t work on Debian very well since the Debian packagers, did not - for some very good reasons - package the sesame2 backend for nepomuk which is required to get the most out of strigi/nepomuk. Today I was thinking about nepomuk again and was lucky to find a very good explaination how to get sesame2 for nepomuk running on Debian sid with KDE4.2 form experimental. The post I found is in german, so I’ll give a quick summary of what I’ve done here:

  • First you should get your system up-to-date: apt-get update && apt-get upgrade
  • Then install the required packages: apt-get install libqt4-dev build-essential cmake subversion qmake strigi-utils sun-java6-jdk sun-java6-jre
  • I prefer sun-java6, but you could also use openjdk-6-jre and openjdk-6-jdk instead.
  • Now checkout the kdesupport sources: svn co svn://anonsvn.kde.org/home/kde/tags/kdesupport-for-4.2/kdesupport
  • Change to the source directory: cd kdesupport/soprano
  • Create the build directory for cmake: mkdir build
  • Go into the build dir: cd build
  • Now you have to properly set JAVA_HOME: export JAVA_HOME=/usr/lib/jvm/java-6-sun, use /usr/lib/jvm/java-6-openjdk for openjdk
  • Create the makefiles: cmake ..
  • This should emit something like this:
    – Soprano Components that will be built:
       * Sesame2 storage backend (java-based)

    – Soprano Components that will NOT be built: * Redland storage backend * Raptor RDF parser * Raptor RDF serializer

    * The CLucene-based full-text search index library

    – Configuring done – Generating done

  • Now compile using make: make
  • And install: sudo make install. Please note that this will install the backend into /usr/local.
  • Then you should (re-)move your old redland repository: rm -rf ~/.kde4/share/apps/nepomuk. You’ll loose all your existing metadata (tags, ratings, etc.) this way. So maybe you want to backup this information instead.
  • You should stop strigi and nepomuk now in the system settings dialog of KDE.
  • Then edit the configuration file in ~/.kde4/share/config/nepomukserverrc with your favourite editor and change it like this:
    [Basic Settings]
    Configured repositories=main
    Start Nepomuk=true

    [Service-nepomukmigration1] autostart=false

    [Service-nepomukstrigiservice] autostart=true

    [main Settings] Storage Dir[$e]=$HOME/.kde4/share/apps/nepomuk/repository/main/ Used Soprano Backend=sesame2 rebuilt index for type indexing=true

  • Now you can enabled nepomuk and strigi again. Strigi should display an icon in the system area and you should see /usr/bin/nepomukservicestub nepomukstorage eating up a lot ressources.
Of course you can use aptitude instead of apt-get if you like.