Installing Ubuntu packages into Devuan

Someone called Pali got as frustrated with KMail 2 and Akonadi as I have, and decided the solution was to take the most recent version of KMail which did not use Akonadi and rebuild it to replace the version which does.

KDEpim-NoAkonadi is the result.

However, Pali did this for Ubuntu, and it's not a trivial (or necessarily advisable) matter to install Ubuntu binary packages onto a Debian (and therefore Devuan) system - I tried, but every version available from Pali's repository fails to install because of dependency version conflicts:

# aptitude install kdepim=5:4.4.11.8-0ubuntu1~vivid
The following NEW packages will be installed:
  kdepim-groupware{a} kdepim-strigi-plugins{a} kdepim-wizards{a} libdbusmenu-glib4{a} libindicate-qt1{a} libindicate5{a} libkabcommon4{a} libkimproxy4{a} libmimelib4{a} pinentry-qt4{a} 
The following packages will be upgraded:
  akregator{b} kaddressbook{b} kalarm{b} kdepim kdepim-kresources kjots{b} kleopatra kmail{b} knode{b} knotes{b} kontact{b} korganizer{b} ktimetracker{b} libkdepim4 libkleo4{b} libkpgp4 libksieve4 libmessagecore4 libmessagelist4 
19 packages upgraded, 10 newly installed, 0 to remove and 2 not upgraded.
Need to get 11.1 MB/11.2 MB of archives. After unpacking 2,889 kB will be used.
The following packages have unmet dependencies:
 kmail : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 knode : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 libmessagecomposer4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                       Depends: libkleo4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                       Depends: libmessagecore4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 libksieveui4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                Depends: libksieve4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 libeventviews4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 akonadiconsole : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 libmailcommon4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                  Depends: libmessagecore4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 kaddressbook : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 libmessageviewer4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                     Depends: libkleo4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                     Depends: libkpgp4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
                     Depends: libmessagecore4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 knotes : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 libincidenceeditorsng4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 akregator : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 kalarm : Conflicts: kde-l10n which is a virtual package.
 korganizer : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 kontact : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 libmailimporter4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 libnoteshared4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 ktimetracker : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 libtemplateparser4 : Depends: libmessagecore4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.
 libkleo4 : Conflicts: kde-l10n which is a virtual package.
 kjots : Depends: libkontactinterface4 (>= 4:4.12.80) but it is not installable.
 libpimcommon4 : Depends: libkdepim4 (= 4:4.14.1-1) but 5:4.4.11.8-0ubuntu1~vivid is to be installed.

I then found this interesting-looking page on Debian's wiki about how to rebuild Ubuntu PPAs into cleanly-installable Debian packages.

So, that's what I'm trying now.

After installing build-essential and devscripts, and adding Pali's source repository to sources.list, I get the following from the build attempt:

$ apt-get source --build kdepim
Reading package lists... Done
Building dependency tree       
Reading state information... Done
NOTICE: 'kdepim' packaging is maintained in the 'Git' version control system at:
git://git.debian.org/pkg-kde/kde-sc/kdepim.git
Need to get 11.2 MB of source archives.
Get:1 http://ppa.launchpad.net/pali/kdepim-noakonadi/ubuntu/ vivid/main kdepim 5:4.4.11.8-0ubuntu1~vivid (tar) [11.1 MB]
Get:2 http://ppa.launchpad.net/pali/kdepim-noakonadi/ubuntu/ vivid/main kdepim 5:4.4.11.8-0ubuntu1~vivid (diff) [64.5 kB]                                                                                                                                                                                                                                               
Get:3 http://ppa.launchpad.net/pali/kdepim-noakonadi/ubuntu/ vivid/main kdepim 5:4.4.11.8-0ubuntu1~vivid (dsc) [3,414 B]                                                                                                                                                                                                                                                
Fetched 11.2 MB in 12s (904 kB/s)                                                                                                                                                                                                                                                                                                                                       
gpgv: keyblock resource `/home/antony/.gnupg/trustedkeys.gpg': file open error
gpgv: Signature made Sun 17 Jan 2016 16:05:27 CET using DSA key ID 03E44352
gpgv: Can't check signature: public key not found
dpkg-source: warning: failed to verify signature on ./kdepim_4.4.11.8-0ubuntu1~vivid.dsc
dpkg-source: info: extracting kdepim in kdepim-4.4.11.8
dpkg-source: info: unpacking kdepim_4.4.11.8.orig.tar.gz
dpkg-source: info: unpacking kdepim_4.4.11.8-0ubuntu1~vivid.debian.tar.gz
dpkg-source: info: applying kubuntu_debianize_akregator_default.diff
dpkg-source: info: applying kubuntu_install_headers.diff
dpkg-buildpackage: source package kdepim
dpkg-buildpackage: source version 5:4.4.11.8-0ubuntu1~vivid
dpkg-buildpackage: source distribution vivid
dpkg-buildpackage: source changed by Pali Rohár <pali.rohar@gmail.com>
dpkg-buildpackage: host architecture amd64
 dpkg-source --before-build kdepim-4.4.11.8
dpkg-checkbuilddeps: Unmet build dependencies: kde-sc-dev-latest (>= 4:4.6.3) cmake pkg-kde-tools (>= 0.12) kdelibs5-dev (>= 4:4.6) kdepimlibs5-dev (>= 4:4.6) libphonon-dev (>= 4:4.6.0really4.3.80) libgpgme11-dev libboost-dev libboost-graph-dev libsasl2-dev xsltproc libxss-dev libqca2-dev (>= 2.0.0) libassuan-dev libstreams-dev (>= 0.6.3) libstreamanalyzer-dev (>= 0.6.3) libsearchclient-dev (>= 0.6.3) libstrigihtmlgui-dev (>= 0.6.3) libstrigiqtdbusclient-dev (>= 0.6.3) libpisock-dev shared-desktop-ontologies (>= 0.2) libindicate-qt-dev (>= 0.2.5.91) libxml2-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
Build command 'cd kdepim-4.4.11.8 && dpkg-buildpackage -b -uc' failed.
E: Child process failed

So, there are clearly some dependency problems still to be resolved.

Simply asking for all the packages mentioned in that list to be installed results in rather a lot of things I'm not sure I want to add to my standard desktop computer:

# aptitude install kde-sc-dev-latest cmake pkg-kde-tools kdelibs5-dev kdepimlibs5-dev libphonon-dev libgpgme11-dev libboost-dev libboost-graph-dev libsasl2-dev xsltproc libxss-dev libqca2-dev libassuan-dev libstreams-dev libstreamanalyzer-dev libsearchclient-dev libstrigihtmlgui-dev libstrigiqtdbusclient-dev libpisock-dev shared-desktop-ontologies libindicate-qt-dev libxml2-dev
The following NEW packages will be installed:
  automoc{a} cmake cmake-data{a} kde-sc-dev-latest kdelibs5-dev kdepimlibs5-dev libakonadi-socialutils4{a} libakonadi-xml4{a} libassuan-dev libboost-dev libboost-graph-dev libboost-graph1.55-dev{a} libboost-graph1.55.0{a} libboost-serialization1.55-dev{a} libboost-serialization1.55.0{a} libboost-test1.55-dev{a} libboost-test1.55.0{a} libboost1.55-dev{a} 
  libdbusmenu-glib4{a} libdrm-dev{a} libgl1-mesa-dev{a} libglu1-mesa-dev{a} libgpg-error-dev{a} libgpgme11-dev libindicate-qt-dev libindicate-qt1{a} libindicate5{a} libkimproxy4{a} libphonon-dev libpisock-dev libpisock9{a} libpisync1{a} libpth-dev{a} libqca2-dev libqt4-dev{a} libqt4-dev-bin{a} libqt4-opengl-dev{a} libqtwebkit-dev{a} libsasl2-dev 
  libsearchclient-dev libsearchclient0{a} libsoprano-dev{a} libstreamanalyzer-dev libstreams-dev libstrigihtmlgui-dev libstrigihtmlgui0{a} libstrigiqtdbusclient-dev libstrigiqtdbusclient0{a} libusb-dev{a} libx11-xcb-dev{a} libxcb-dri2-0-dev{a} libxcb-dri3-dev{a} libxcb-glx0-dev{a} libxcb-present-dev{a} libxcb-randr0-dev{a} libxcb-shape0-dev{a} 
  libxcb-sync-dev{a} libxcb-xfixes0-dev{a} libxml2-dev libxshmfence-dev{a} libxss-dev libxxf86vm-dev{a} mesa-common-dev{a} pkg-kde-tools qt4-linguist-tools{a} qt4-qmake{a} shared-desktop-ontologies x11proto-dri2-dev{a} x11proto-gl-dev{a} x11proto-scrnsaver-dev{a} x11proto-xf86vidmode-dev{a} xsltproc 
0 packages upgraded, 72 newly installed, 0 to remove and 21 not upgraded.
Need to get 21.6 MB/21.8 MB of archives. After unpacking 181 MB will be used.
Do you want to continue? [Y/n/?] n
Abort.

Therefore I've just installed a Devuan Jessie VM from scratch, and I'll install all those packes on it and then see whether KDEpim will build…

First of all, asking to install all the missing things reported by apt-get source --build kdepim (which is this case was 26 packages) resulted in 543 packages being added to the machine (including X11).

After doing that, the build command worked a lot more encouragingly (although it produced so much output that I'm not going to post it here). Suffice to say that the last section of output was:

# "binary" target is done
-- SUCCESS making standard target 'binary'.
 dpkg-genchanges -b >../kdepim_4.4.11.8-0ubuntu1~vivid_amd64.changes
dpkg-genchanges: binary-only upload (no source code included)
 dpkg-source --after-build kdepim-4.4.11.8
dpkg-buildpackage: binary-only upload (no source included)

So, time to install all the .debs which this process has created for me…

Hm, nice idea, but too many conflicts :(

(Amongst others, it doesn't like the fact that I have kde-localisation installed for my preferred language - how uncommon is that…?)

So, some things installed, others didn't - and because this was done with dpkg -i, it's not an entirely simple process to undo it.

The best solution to sorting this out seems to be:

aptitude install kdepim=4:4.14.1-1

...snip...

The following actions will resolve these dependencies:

      Remove the following packages:                                              
1)      kdepim-groupware                                                          
2)      kdepim-wizards                                                            
3)      libkabcommon4                                                             
4)      libmessageviewer0                                                         

      Downgrade the following packages:                                           
5)      akregator [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]        
6)      kaddressbook [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]     
7)      kdepim-kresources [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]
8)      kleopatra [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]        
9)      kmail [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]            
10)     knode [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]            
11)     knotes [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]           
12)     kontact [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]          
13)     korganizer [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]       
14)     ktimetracker [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]     
15)     libkdepim4 [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]       
16)     libkpgp4 [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]         
17)     libksieve4 [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]       
18)     libmessagecore4 [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]  
19)     libmessagelist4 [5:4.4.11.8-0ubuntu1~vivid (now) -> 4:4.14.1-1 (stable)]  

      Leave the following dependencies unresolved:                                
20)     kdepim-groupware recommends kdepim-wizards

That resulted in:

Current status: 0 broken [-18], 9 updates [-4].

I always like "0 broken" :)

Even more so when it was previously 18…

Anyway, a few more re-installations (and removals of remaining Ubuntu packages) has hopefully sorted this out:

aptitude install {blogilo,kjots,konsolekalendar}=4:4.14.1-1
aptitude purge kdepim-strigi-plugins libmimelib4

Now I can try restarting KMail and see if it's at least no worse than before…

First attempt:

  • Good news: it starts, and the version number is 4.14.
  • Bad news: all the folders are red, and it won't let me view the body of any emails
  • Good news: I know what to do about this now, so I stopped Akonadi, restarted it, and all the folders turned black once again
  • Bad news: I'm back to having a system running KMail 2 :(

Go up
Return to main index.