from http://ktown.kde.org/~nolden/kde/README
=============================================================
KDE 3.1 for Debian GNU/Linux 3.0 (woody)
========================================
Ralf Nolden <nolden@kde.org>
Documentation for the KDE/Linux Woody repository
on ktown.kde.org
NB: Corrections and updates are always welcome!
-------------------------------------------------------------------------------
Table of Contents
-----------------
1. Preface
2. Reasons
3. What this repository contains
4. Installation of KDE 3.1
5. Language specifics
6. Fine-tuning your KDE installation
7. Programs for specific tasks
8. Development for KDE with Debian Woody
9. The Aegypten Project - S/MIME and OpenPGP for KMail
10. The Kroupware Project - Groupware for KDE
-------------------------------------------------------------------------------
1. Preface
===========
This site contains a whole set of KDE packages for Debian GNU/Linux
Woody, which by its' release only contained KDE 2.2.2 and an according
packages that work with Qt 2 and KDE 2 libraries (which are applications
developed outside the KDE project). The lack of KDE 3.x on Woody systems
and the according packages seem to be a real need, especially due to the
fact that neither testing nor unstable have KDE 3.x yet.
2. Reasons
===========
The main reason to set up this repository is, amongst others, that I'm
working at credativ GmbH, located in Juelich, Germany since September
2002. We are contracted to set up KDE 3.1 together with the Aegypten
project (http://www.gnupg.org/aegypten/) on Debian GNU/Linux 3.0 (woody)
by the BSI (Bundesamt fuer Sicherheit in der Informationstechnik), the
german governmental agency for security in IT-technology. The Aegypten
project itself is a development effort contracted by the BSI to enable
governmental authorities to use S/MIME certifications for email
communications with KMail and Mutt as email clients. The graphical user
interface for Desktop use is the primary goal behind the project. The
same is valid for the Kroupware (http://www.kroupware.org) project, wich
implements a groupware solution for KDE with two components, the kolab
server as the group- ware server component and KMail, KAddressbook and
KOrganizer as client-side components. The Kroupware project is currently
under development by the according companies and will be merged into
KDE 3.2.
In addition to the work that already needed to be done, porting KDE 3.1
to woody, I'm personally interested into turning as many KDE 3
applications into debian packages to prepare them for inclusion into
Debian itself and to provide them for the users of Debian. The whole set
of packages does work on unstable also, with the exception of problems
with the libvorbis libraries which differ in their major version number
and the aegypten project packages. In order to use aegypten on unstable
or testing, you need to pin my versions of the backports.
3. What this repository contains
=================================
The repository consists of:
- README : this file (if you have any additions, mail me)
- ChangeLog : I'm trying to keep this up-to-date and add the packages
with daily entries that I update and add
- md5sum.txt : This file contains an md5sum for every file in the
repository. The md5sums are calculated on my build machine
to ensure that you have the md5sums of my original packages
and sourcefiles on the build machine. If they differ with the
exact packages and sources, notify me.
- i386: Directory containing the packages compiled for i386. The
Packages.gz file is located there to be used for your
/etc/apt/sources.list file with the following line:
deb http://ktown.kde.org/~nolden/kde stable main
- source: Directory containing the whole sources to all packages except
packages that are build as regular snapshots from the KDE CVS such
as kopete, k3b, gwenview and gideon (kdevelop3). The sources to the
respective backports from unstable are also included so you can
rebuild them with the necessary changes already applied to make them
work on woody. The /etc/apt/sources.list line for retrieving
sourcepackages with apt-get source:
deb-src http://ktown.kde.org/~nolden/kde stable main
Directory structure:
binary-i386/
applications/ <- Contains all third-party applications.
backports/ <- Contains the backports needed for the third party apps
aegypten/ <- Contains the aegypten libraries and programs for S/MIME
and OpenPGP to work in kmail
backports/ <- Contains the backports from unstable where needed
development/ <- Contains packages needed for developing applications
such as KDevelop
applications/ <- Contains other third party KDE apps useful for
development (kdbg,kprof,kcachegrind)
backports/ <- Contains backports needed for the development
applications like automake1.6,1.7
kdevelop/ <- Contains the latest stable KDevelop 2.1
gideon/ <- Contains the latest KDevelop 3 snapshot from CVS
compiled for KDE 3.1
kde/ <- contains KDE 3.1
backports/ <- contains the necessary backports: qt-3.1.1, directfb,
xine-lib, xine-ui (for compat reasons), bash-2.0b
(for Home/End keys to work in konsole), imlib2 (for
kuickshow in kdegraphics)
koffice/
koffice/ <- contains the latest stable koffice compiled with KDE 3.1
koffice-i18n/ <- contains the internationalization files for koffice
4. Installation of KDE 3.1
============================
4.1 Installation on Debian GNU/Linux 3.0 (woody)
------------------------------------------------
There are certain things to watch out for installing the packages of
this repository on Woody currently. One is that a) Woody contained KDE
2.2.2, so this is a major upgrade to your system and b) if you already
did an upgrade from 2.2.2 to unofficial 3.0.x packages, there is more
trouble ahead.
The Debian way of upgrading from one system to another version is
supposed to be clean and neat, it should work without any problems. This
is usually the case when you directly obtain packages out of the Debian
repositories, which move their packages by upgrades to newer versions in
their development trees, testing and unstable, while the stable tree
doesn't change at all except security updates where Debian provides a
security repository for stable (in this case, woody). The fact that KDE
3.0 wasn't included in Debian woody but 2.2.2 instead made it very
difficult for people to use KDE 3 on their final woody version, which
came out even after KDE 3.0 was released. Many people were arguing about
this move to only include KDE 2.2.2, especially because newer programs
were only to be expected for KDE 3.0 systems which had a slightly
changed API (Application Programming Interface) and those new
applications wouldn't work on KDE 2.2.x systems any more.
During the time of KDE 3.0 to KDE 3.0.4, KDE packages for woody were
only available quite poorly and not through the KDE ftp servers. This
changed when we started with our work and KDE 3.0.4 was about to be
released. This was the point where I started the first set of KDE 3.0.x
packages for woody, which are distributed through my parent project,
KDE, over their FTP servers and mirrors. The following upgrades included
KDE 3.0.5 and the latest for KDE 3.0.x, KDE 3.0.5a as a security
release.
The fact that 3.0 never has been imported to unstable and various
changes in the maintainership of the KDE packages from Debian package
maintainers in addition to a restructuring of the arts package, which
got reverted now for KDE 3.1, left the Debian packaging in a very
sluggish state, especially the conflicts with older versions. The same
applies for upgrades from 3.0.x to 3.1.
The currently known conflicts are only for KDE 3.0.4 to KDE 3.1. If you
have a set of conflicts from the original Woody version 2.2.2 to KDE
3.1, let me know so this can be inserted here. I hope that we can fix
the debian directories in the KDE 3.1 branch so that minor updates don't
cause such a hassle.
Updating from 2.2.2 to 3.1:
---------------------------
<needs to be filled out with contents here>
Updating from 3.0.x to 3.1:
---------------------------
You need to purge with --force-all the following packages which are
known to cause conflicts:
Qt: The current Qt packages in unstable don't have their conflicts
resolved to the comparing woody packages, so libqt3-helper can't be
installed due to libqt3-dev (from 3.0.x):
dpkg --purge --force-all libqt3-dev
a) arts packages:
dpkg --purge --force-all libarts1 libarts1-bin libarts1-glib libarts1-qt
b) kdebase packages:
dpkg --purge --force-all kcontrol kscreensaver kdebugdialog khotkeys \
kxkb kdcop kioslave
c) kdenetwork packages:
dpkg --purge --force-all lisa
d) kdemultimedia packages:
dpkg --purge --force-all kfile-audio-plugins
e) kdegraphics packages:
dpkg --purge --force-all kfile-graphics-plugins
f) kdeaddons packages:
Unfortunately I didn't know about epochs when I built KDE 3.0.4
packages. Therefore I just used the same way like other packages are
built for KDE, with the 4: epoch. The mistake was that kdeaddons has
never been in woody, so it didn't ever need an epoch. Now, with my epoch
in those packages, you won't be able to upgrade to the 3.1 kdeaddons
package; therefore you need to remove all your kdeaddons packages (which
also have a dependency on libarts1-qt from arts in KDE 3.0.x, so you
will get stuck if one package from kdeaddons-3.0.x is left installed)
dpkg --purge --force-all kdeaddons konq-plugins noatun-plugins \
kicker-applets knewsticker-scripts kate-plugins
g) kdeartwork packages:
dpkg --purge --force-all kdeartwork-screensaver
If you have libwine-arts installed for using sound with WINE, you need
to uninstall that, too because it depends on arts packages from KDE 2.x
Removed Packages but can still be used
--------------------------------------
During the restructuring and cleanup phase in the time between KDE 3.0.x
and 3.1, some applications got removed irreversibly but which can still
be used with KDE 3.1 if you require them. The removed packages that KDE
doesn't ship any more are:
(kdegraphics)
kfract
(kdeutils)
kljtool
klpq
klprfax
(kdeadmin)
kwuftpd
As we don't have an up-to-date metapackage for KDE itself, you need to
install KDE manually, that means the packages that you desire. The
different main packages of KDE are provided as meta-packages however.
The easiest way to install KDE 3.1 is to make sure that there are no
conflicts any more above. Then make sure that you have
/etc/apt/sources.list
deb http://ktown.kde.org/~nolden/kde stable main
included. You may also include the usual deb-line for KDE on KDE's
ftp/http mirrors but I try to keep the repository in sync with the ftp
server so that only one deb line should last.
Perform an apt-get update. Then do:
apt-get install kdebase kdm
This will install the base desktop environment and the login manager KDM
and all their binary dependencies such as Qt and kdelibs.
The other KDE main packages are (which you can install with apt-get to
have the full set):
kdenetwork
kdepim
kdegraphics
kdemultimedia
kdeaddons
kdeadmin
kdeutils
kdeedu
kdeartwork
kdegames
kdetoys
kdebindings
kdesdk
If you want to install the latest stable KOffice working with that set, do
apt-get install koffice
Have fun and enjoy your new Desktop
4.2 Installation on Debian GNU/Linux Sarge and Sid (testing and unstable)
-------------------------------------------------------------------------
On Sarge and Sid the main difference is that the backports that are
included in the repository will update your system on Sarge, but not on
sid where the original packages from Sid will be taken automatically. As
Sid is currently in the GCC 2.95 to 3.2 transition, things will stop to
work as soon as Qt has been recompiled with GCC 3.2. That is also when
KDE 3.1 is able to enter Sid officially. Until then the only conflicts
known to cause problems are the libvorbis libraries. You may monitor
your syslog or console output to see which version is required and make
a symlink in /usr/lib to the version you have installed on Sarge/Sid.
Also note that the Aegypten packages won't work because the backports
that I recompiled are compiled in a different order to support S/MIME.
Therefore only OpenPGP will work with the original packages from Sid.
Sarge's packages currently have version numbers below the packages found
here, so you should be able to use Aegypten on Sarge.
For general information how to install KDE, look in section 4.1; the
procedure is the same for all systems.
5. Language specifics
========================
If your native language is not english, you obviously want to have KDE
display its programs in your language. This is supported for the KDE
core modules themselves in a very vast way, over 40 languages are
currently supported. With KOffice things are similar, but the language
support may vary from the activity of the translation team. If you
encounter missing translations in the documentation or the translation
of any program, you may want to visit
http://i18n.kde.org
and contact your language coordinator and volunteer to help finish up
and extend the internationalization of KDE. If your language is not
supported, please try to organize an internationalization team to
translate KDE into your language. You may even get official support from
your local government for this task. For example, the south african
government is supporting the translation of KDE into all 12 official
languages of south africa and they started with Zulu.
With third party programs things differ from package to package. You
will in most cases encounter that the program you are using is not
internationalized into your language. In this case, contact the author
of the program and ask him for a file <program>.pot (PO-Template) that
you can translate into your language using KBabel and language catalogs
for your language where in many cases strings are already translated.
This may also help the author of the program to fix errors in his
program as far as the programming is concerned and will enhance the
quality of free software immensely. After translating, send the finished
<lang-code>.po file to the original author of the program so that he can
include it in his next release and all people speaking your language
will be able to make use of the work you once did for yourself. This is
how it works. In cases of problems you may turn to the various
mailinglists at KDE, see http://www.kde.org for the kde-i18n-doc@kde.org
mailinglist.
For installing the language support, you basically need to install a
package kde-i18n-<lang> and koffice-i18n-<lang> with apt-get install,
where lang is your language code. If you're unsure about your language
code, have a look at http://i18n.kde.org for the list of language codes.
Example: German is de, Netherlands is nl, so a german user would
apt-get install kde-i18n-de koffice-i18n-de
to have native german language support in his programs and documentation
throughout KDE and KOffice (KDevelop ships with translation of the
program only, included in the kdevelop package)
6. Fine-tuning your KDE installation
======================================
You may want to regard some tips for fine-tuning your system. In this
section I'm collecting various tips to enhance your experience of KDE on
Debian where specific knowledge is required how to do that. In most
cases it requires minor modifications to the configuration files in
/etc/kde3 to enable certain features.
6.1 KDM feature enhancement
---------------------------
The KDE Display Manager (KDM), which is the program that lets you log
into your X-Session, has the one or the other useful feature and under
debian certain animosities that are thought of as a more secure default
setting. Other settings are just purely disabled by default.
The configuration file to change most KDM settings is located among
other KDM files in /etc/kde3/kdm, mainly: kdmrc, Xservers and Xaccess.
6.1.1. Fonts are too big with -dpi 100
--------------------------------------
Debian starts the X-Server with -dpi 100 by default. If you happen to
drive your display at a lower resolution, the fonts will be too big.
To adapt KDM (which also affects your X-Session), edit
/etc/kde3/kdm/Xservers:
:0 local@tty1 /etc/X11/X -dpi 100 -nolisten tcp vt7
Change this to
:0 local@tty1 /etc/X11/X -dpi <your-resolution> -nolisten tcp vt7
In most cases you can simply remove the -dpi switch, as most of today's
displays are DDC-capable, so they can communicate their resolution to the
X-Server themselves, provided you use a VGA connector and not BNC
cables:
:0 local@tty1 /etc/X11/X -nolisten tcp vt7
6.1.2. Remote X-Server managing KDM
------------------------------------
When installing KDM, the first message tells you that KDM does not
listen to UDP ports by default. This is ok as long as you don't want to
use XDMCP to requests a login window.
To be able to use KDM with XDMCP broadcasts and queries, you should edit
two files, Xaccess and kdmrc.
a) /etc/kde3/kdm/kdmrc:
[Xdmcp]
# Whether KDM should listen to XDMCP requests. Default is true.
Enable=false
(Note that the comment line won't be there any more if you used kcontrol
to change some KDM settings.)
The default on Debian is obviously false. Change Enable=false to Enable=true.
b) /etc/kde3/kdm/Xaccess:
[...]
#* #any host can get a login window
[...]
#* CHOOSER BROADCAST #any indirect host can get a chooser
[...]
Remove the leading hashes:
[...]
* #any host can get a login window
[...]
* CHOOSER BROADCAST #any indirect host can get a chooser
[...]
A stricter access policy might be desirable, though.
After restarting KDM with "/etc/init.d/kdm restart" you should have fonts
ok and you can get a login from any other host to your machine with
you@xdmcp-client:~$ X -query <xdmcp-server (kdm)>
6.1.3. X-Console Window in KDM
------------------------------
To have a permanent xconsole sitting in the bottom-left corner of your
KDM, you need to change:
/etc/kde3/debian/kdm.options
# configuration options for kdm
no-run-xconsole
Modify no-run-xconsole to run-xconsole. This will enable the xconsole on
the login screen.
6.1.4. The XP-Multi-Session feature
-----------------------------------
KDM is also able to provide you a feature that is currently widespread
by Windows XP, the multi-session feature. You were always able to do that
more or less by changing to a console and startx -- :1 or -- :2 to start
a new X-Server on the next vt (vt8 if vt7 is the default for the first
one where your KDM runs on), but not from *within* KDE. This has changed
lately, but you need to add the configuration lines necessary to
/etc/kde3/kdm/Xservers:
# Examples for multiple local X displays:
# :0 local /usr/X11R6/bin/X :0 vt9 -bpp 16
# :1 local /usr/X11R6/bin/X :1 vt10 -bpp 8
:0 local@tty1 /etc/X11/X :0 vt7
:1 local reserve /usr/bin/X11/X :1 vt8
:2 local reserve /usr/bin/X11/X :2 vt9
:3 local reserve /usr/bin/X11/X :3 vt10
the displays :1, :2, :3 are marked as reserve and will be started only if
requested. If those lines are present, you can start a new session login
on the next vt with KDM through either
a) the K Menu - above the "lock screen" entry you will see an entry
"Start new session"
b) when the screen is locked you will see a big button next to the
password input field "Start new session"
This is extremely useful if one computer is shared with your family
members, kids and wife (or husband) alike so you don't have to close
your session but just lock the screen.
As a side note, each newly opened KDM login (and X-server) will consume
the amount of graphics memory required, which is usually
width*height*colordepth.
Also, don't forget any sessions that a lingering in the background when
you shut down the machine.
7. Programs for specific tasks
================================
In the applications section you will encounter many programs for KDE 3
that are curently available. The necessary backports for dependencies
are also included so you should be able to run all of these programs out
of the box. Examples are famous programs such as kopete (multi-protocol
messenger) or k3b (CD burning program) and many more for everyday tasks.
If you don't find the program that you favor for your every day use and
you know there is a version available for KDE3 or Qt3, notify me and
send me the URL so I can build a package and add it to the repository.
8. Development for KDE with Debian Woody
==========================================
You should be provided to participate on the KDE movement by developing
programs for KDE by yourself or by contributing to KDE, either by fixing
programs or bugs in the libraries or by helping to translate KDE. All
necessary means should be there, especially the translation tools and
development environment.
The basic requirements for KDE development currently are (all
apt-gettable in my repository and from Debian woody):
- automake1.6
- autoconf (2.53)
- make
- gcc-2.95 and g++-2.95
library header files:
- xlibs-dev
- libqt3-mt-dev
- kdelibs4-dev
development tools:
- kdevelop-2.1.5
- qt-designer (in qt3-tools)
- kdbg (optional for your liking, debugger already integrated in kdevelop)
- kcachegrind (object inspector working with valgrind, valgrind available
in the repository)
- kprof (frontend for gprof profiler)
translation tools:
- kbabel (KDE programs)
- qt-linguist (Qt programs)
- gettext (debian woody)
For packaging KDE applications, you should have kdelibs4-dev installed
as well as dh-make. In an untar'ed source directory of an application,
run
dh_make -t /usr/share/doc/kdelibs4-dev/dh-make -e <email> \
-c (gpl|lgpl|bsd|artistic) -s (single) -l (library) -m (multiple)
After fixing the debian/changelog to have the revision number
<programversion>-0woody1 instead of <programversion>-1 use "debuild" to
build the package.
The list of necessary debian packages for building packages are:
dh-make
debhelper
devscripts
fakeroot
That way, application developers are able to provide packages themselves.
If you would like me to add your package to the repository on ktown,
please send me a message.
9. The Aegypten Project - S/MIME and OpenPGP for KMail
========================================================
Not written yet. Please look at http://www.gnupg.org/aegypten and
http://kmail.kde.org/kmail-pgpmime-howto.html for a first intro.
For using either, S/MIME or OpenPGP, you need the packages from the
aegypten subdirectory:
apt-get install libgcrypt1 libksba0 libgpgme6 gnupg gpgsm cryptplug pinentry-qt
For smartcard support, install scdaemon, it should require libopensc0
and libpcsclite0 automatically. The pcscd package contains the smart
card daemon from the pcsc-lite package which you shouldn't need,
scdaemon is taking over that job for you in conjunction with the gpgsm
package (gpg-agent).
10. The Kroupware Project - Groupware for KDE
==============================================
Not written yet, no packages built from the kroupware_branch yet