<chapter id="faq">

<chapterinfo>
<authorgroup>
<author
><firstname
>Daniel</firstname
> <surname
>Naber</surname
> <affiliation
><address
> <email
>daniel.naber@t-online.de</email>
</address
></affiliation>
</author>
<author
><firstname
>David</firstname
> <surname
>Rugge</surname
> <affiliation
><address
> <email
>davidrugge@mediaone.net</email>
</address
></affiliation>
</author>
<othercredit role="translator"
><firstname
>Andrew</firstname
><surname
>Coles</surname
><affiliation
><address
><email
>andrew_coles@yahoo.co.uk</email
></address
></affiliation
><contrib
>Conversion to British English</contrib
></othercredit
> 
</authorgroup>
<date
>2004-07-14</date
> <releaseinfo
>1.7</releaseinfo
> </chapterinfo>

<title
>Frequently Asked Questions (&FAQ;)</title>
<!-- TODO: split into categories? unfortunately this will produce several files, eg. with <section
> -->

<qandaset id="faq-set">

<!-- fixme: how to use old kmail mail data: copy files from
~/Mail (incl. hidden ones) to the new ~/Mail folder -->

<qandaentry>
<question
><para
>Why are my filters not applied to incoming messages of IMAP accounts?</para
></question>
<answer>
<para
>Normal IMAP mode does not support filtering, but the new disconnected IMAP account type does. You could try to use server-side filtering (ask your admin for how to install filters on the server and in which format), since IMAP is all about managing your email <emphasis
>on the server</emphasis
>. Unfortunately, although there exists a mail filter language (Sieve, defined in RFC3028), there is no standardised access protocol for installing or editing server-side Sieve scripts. If such a protocol becomes available in the future, &kmail; will most probably include support for it.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>Using <application
>PGP</application
> or <application
>GnuPG</application
> is very slow or it blocks &kmail;.</para
></question>
<answer>
<para
>&kmail; accesses <application
>PGP</application
>/<application
>GnuPG</application
> synchronously, &ie; it blocks while <application
>PGP</application
>/<application
>GnuPG</application
> works. This means that you might want to disable automatic retrieval of unknown keys from a keyserver to make &kmail; look more responsive. If you are using <application
>GnuPG</application
> 1.0.7 (or better) or upgraded from an earlier version, then make sure to run <command
>gpg <option
>--rebuild-keydb-caches</option
></command
> once and <command
>gpg <option
>--check-trustdb</option
></command
> after every import or refresh. Both will speed up <application
>GnuPG</application
> immensely.</para>
</answer>
</qandaentry>

<qandaentry id="pgp-faq">
<question
><para
>What should I know if I want to use <application
>PGP</application
>/<application
>GnuPG</application
> with &kmail;?</para
></question>

<answer
><para
>&kmail; provides a simple and easy-to-use interface for the basic functions of these programs; still you should understand how these programs work and what might make their use insecure. Some important issues:</para>

<itemizedlist>
<listitem>
<para
>You <emphasis
>really</emphasis
> should test if encryption works before you use it. &kmail; partly relies on <application
>PGP</application
>/<application
>GnuPG</application
>'s error strings, which often change between different versions.</para>
</listitem>
<listitem>
<para
>&kmail; will not encrypt messages with an untrusted (unsigned) public key: if you want to encrypt to such a key you should check the identity of the key owner and only then sign the key with your secret key; if you do not want to or cannot check the identity of the key owner but nevertheless want to encrypt the message then please sign the key locally with <userinput
><command
>gpg</command
> <option
>--lsign</option
> <replaceable
>keyID</replaceable
></userinput
>.</para>
</listitem>
<listitem>
<para
>Trusting a foreign public key without checking it is not a good idea.</para>
</listitem>
<listitem>
<para
>&kmail; cannot encrypt and sign attachments if you are using the built-in OpenPGP support. For encrypted and signed attachments you need to have <link linkend="configure-security-crypto-backends"
>crypto plugins</link
> installed and configured.</para>
</listitem>
<listitem>
<para
>Starting with GnuPG 1.0.7 you have to set your own key to ultimate ownertrust: it is no longer implicitly done for you.</para>
</listitem>
</itemizedlist>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>Where does &kmail; save my settings and my mail?</para
></question>
<answer>
<para
>Most &kmail; settings are stored in <filename
>$<envar
>KDEHOME</envar
>/share/config/kmailrc</filename
>, where $<envar
>KDEHOME</envar
> is typically <filename class="directory"
>~/.kde</filename
>; the identities are stored in <filename
>$<envar
>KDEHOME</envar
>/share/config/emailidentities</filename
> and your mail is saved in <filename class="directory"
>~/Mail</filename
>. Note that some of the files are hidden: remember to also copy those if you want to backup or archive your mails.</para>
</answer>
</qandaentry>

<qandaentry id="faq-index-regeneration">
<question
><para
>Why did &kmail; regenerate the index of a folder?</para
></question>
<answer>
<para
>&kmail; regenerates the index of a folder whenever the index appears to be out of date, &ie; whenever the contents of a folder are newer than the index. &kmail; regenerates the index in this case in order to prevent the loss or corruption of messages. Unfortunately, currently-deleted messages might reappear and message flags (like important, etc.) might be lost when the index is regenerated.</para>
<para
>An outdated index can have several causes; the two most important causes are: <itemizedlist>
<listitem
><para
>Some other program modified the contents of the folder: if you want to use &kmail; together with procmail then please read <link linkend="faq-procmail"
>this &FAQ;</link
>. If you want to use &kmail; together with another email client then please read <link linkend="faq-other-muas"
>this &FAQ;</link
>.</para
></listitem>
<listitem
><para
>If your mail folder (usually <filename class="directory"
>~/Mail</filename
>) is on a volume which is mounted via NFS and if the clock of the NFS server is ahead of the clock of your computer then the NFS server sometimes reports a wrong file date for the index file. In this case &kmail; assumes that the index is outdated although in reality it is not. To fix this problem you (or your system administrator) have to make sure that the clock of the NFS server and the clock of your computer are always in sync. One way to achieve this is the use of the ntp daemon.</para
></listitem>
</itemizedlist>
</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>I cannot add addresses to my address book after upgrading to KDE 3.x.</para
></question>
<answer>
<para
>You probably copied your old <filename
>kmailrc</filename
> file manually. That is not necessary, there is a script that will do such things when you run KDE 3.x for the first time. To fix the problem, remove the complete <quote
>[AddressBook]</quote
> group and the addressbook option in group <quote
>[General]</quote
> in your <filename
>kmailrc</filename
> file; however, chances are you will also encounter other problems that the config update script would have solved.</para>
</answer>
</qandaentry>

<qandaentry id="faq-other-muas">
<question
><para
>Can I use &kmail; together with a different email client, &eg; <application
>mutt</application
>?</para
></question>
<answer>
<para
>If you're using the mbox format for your folders it is not possible to use a different email client while &kmail; is running. With <application
>mutt</application
> there may also be problems even if both programs are not running at the same time. We recommend to use the maildir format in this case, this should solve all problems.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>How can I convert my mailboxes from mbox to maildir?</para
></question>
<answer>
<para
>There is no automatic way to do that. You will have to create a new folder in maildir format and copy the messages from the mbox folder into this new folder. Remember to adapt any filter rules connected with the old folder before you delete it.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>How can I use a browser other than &konqueror; to open links in messages?</para
></question>
<answer>
<para
>Change the <guilabel
>File Associations</guilabel
> for HTML files using &kcontrol;.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>How can I remove attachments from messages without removing the message itself?</para
></question>
<answer>
<para
>This is currently not supported. As a workaround, move the message to the drafts folder, double click on it in order to open it in the composer, remove the attachments, save the message again to the drafts folder, move it back to its folder. The disadvantage of this workaround is that the date will be changed to the current date. Some other headers might also be changed.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>How can I make &kmail; check for new messages at startup?</para
></question>
<answer>
<para
>If &kmail; should always check for new messages at startup then enable <guilabel
>Check mail on startup</guilabel
> on the <link linkend="configure-accounts-receiving"
>Accounts configuration page</link
>. Otherwise start &kmail; with <command
>kmail <option
>--check</option
></command
>.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>Why does &kmail; get slow / stop working when I try to send big attachments?</para
></question>
<answer>
<!-- fixme: update for 3.2 -->
<para
>&kmail; is known to have problems with large attachments. We are working on a solution for this problem for &kde; 3.2 but currently it temporarily consumes virtual memory of about 10-15 times the size of the attachment. That means that if you attach a 2MB file &kmail; might temporarily need about 20-30 MB of virtual memory (= RAM + swap space). If you do not have enough virtual memory this will lead to problems.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>Where can I get a list of changes between the versions of &kmail;?</para
></question>
<answer>
<para
>The welcome screen lists all important changes for your version. It is displayed when you select <menuchoice
><guimenu
>Help</guimenu
><guimenuitem
>&kmail; Introduction</guimenuitem
></menuchoice
>.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>Can I configure the location of my mail folder?</para
></question>
<answer>
<para
>Exit &kmail;, make a backup of <filename
>~/.kde/share/config/kmailrc</filename
>, then open it with an editor and add &eg; <userinput
>folders=/home/username/.mail</userinput
> to the <quote
>[General]</quote
> section. Then move all your existing folders (including the hidden index files) to the new location. The next time you start &kmail; will use <filename class="directory"
>/home/username/.mail</filename
> instead of <filename class="directory"
>/home/username/Mail</filename
>. Note that &kmail; will lose its filters if you change the mail folder's location but forget to move your existing folders.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>How can I use mail folders that are not in <filename class="directory"
>~/Mail/</filename
>?</para
></question>

<answer
><para
>To add a whole mbox mail folder use <userinput
><command
>ln</command
> <option
>-s</option
> <filename
>/somewhere/Mail/.remotedir.directory</filename
> <filename class="symlink"
>~/Mail/.mymailboxfile.directory</filename
></userinput
>. Note that it is not possible to use links to files, only links that point to folders will work.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>I'm one of those people whose mails consist of 100 quoted lines and one line written by myself. For some reason this annoys other people. Can &kmail; help me and make everyone's life better?</para
></question>
<answer
><para
>Sure. Just select a short relevant part of the original mail with the mouse before you reply. Only this part will then be quoted in your reply.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>For some messages the value in the <guilabel
>Date</guilabel
> field is <guilabel
>unknown</guilabel
> or it is not correct.</para
></question>
<answer
><para
>Probably the <quote
>Date:</quote
> header of these messages is broken and &kmail; cannot interpret it. That is not a bug in &kmail; but in the software that sent the mail.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>My signature has two dashes above it. What's up?</para
></question>
<answer>
<para
>Separating the signature from the message body with two dashes and a space on a single line is common usage. These symbols permit mail clients who recognise them to trim the signatures from a reply. If your signature does not already have this separator, &kmail; will automatically add it.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>&kmail; fetches the same messages over and over again.</para
></question>
<answer
><para
>This happens if you have enabled <guilabel
>Leave fetched messages on the server</guilabel
> and your POP3 server does not support the UIDL command. There is currently no workaround besides disabling <guilabel
>Leave fetched messages on the server</guilabel
>. A more detailed explanation can be found <ulink url="http://lists.kde.org/?l=kmail&amp;m=99220697415300&amp;w=2"
>in this mailing list post</ulink
>.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>Are there any known bugs in &kmail;?</para
></question>
<answer>
<para
>A list of submitted bugs is linked at <ulink url="http://kmail.kde.org/"
>the &kmail; homepage</ulink
>. Note that not all these bugs are valid. All in all we think that &kmail; is a very robust piece of software.</para>
<para
><warning
><para
>However, you should not run &kmail; while another email client is already accessing the files in <filename class="directory"
>~/Mail</filename
>; if you try to do so, you might lose messages. Note that you should make backups of your messages anyway.</para
></warning
></para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>&kmail; does not display <acronym
>HTML</acronym
> mail properly.</para
></question>
<answer
><para
>References to external content like images, are disabled by default, as they can be used to track whether and when you read a message. Loading external references can be activated in the <guilabel
>Security</guilabel
> tab in &kmail;'s configuration dialogue; also Plugins (like <trademark class="registered"
>Macromedia</trademark
> <application
>Flash</application
>), &Java; and JavaScript will not be displayed in &kmail; for security reasons and there is no way to activate them.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>Can I use two different versions of &kmail; at the same time? Can I go back from a current version of &kmail; to an older one?</para
></question>
<answer
><para
>You can only run one instance of &kmail; at once. We also recommend to stick to a certain version and not switch back and forth between different versions. Downgrading to an older version will probably cause problems, &eg; because the index file formats might have changed. Upgrading should never be a problem.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>Does &kmail; support uuencoded files?</para
></question>
<answer
><para
>Uuencoded attachments are supported, but inline uuencoded files are not.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>&kmail; crashed while I was writing a mail; is that mail is lost now?</para
></question>
<answer
><para
>&kmail; tries to save your mail to <filename
>~/dead.letter</filename
> in case of a crash. The next time you start &kmail; the mail composer should appear with your mail again; If it does not, try to open <filename
>~/dead.letter</filename
> with an editor. If it does not exist then the crash was so bad that &kmail; could not save your mail.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>When I try to set a folder to be mailing list-aware, it does not do anything when receiving an email from the list.</para
></question>
<answer
><para
>Associating a folder with a mailing list has nothing to do with filtering the mailing list messages &mdash; you have to add a new filter rule manually; however, once you associated a folder with a mailing list you can use <menuchoice
> <guimenu
>Message</guimenu
><guimenuitem
>Reply to Mailing-List...</guimenuitem
></menuchoice
> or <menuchoice
><guimenu
>Message</guimenu
><guimenuitem
>New Message to Mailing-List...</guimenuitem
></menuchoice
> and the mailing list address will be set in the <guilabel
>To:</guilabel
> field. </para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>My SMTP server requires authentication; Does &kmail; support this?</para
></question>
<answer
><para
>There are two common techniques used for <acronym
>SMTP</acronym
> authentication: <quote
>SMTP after POP3</quote
> and <quote
>SMTP Auth</quote
>. <quote
>SMTP Auth</quote
> can be set in the <guilabel
>General</guilabel
> tab of the SMTP configuration dialogue. To use <quote
>SMTP after POP3</quote
> you have to collect all your messages in the <guilabel
>outbox</guilabel
> and send them just after you have fetched new mail. You can make &kmail; send the queued messages automatically with the <guilabel
>Send messages in outbox folder</guilabel
> option on the <link linkend="configure-accounts-sending"
>Accounts configuration page</link
>. </para
></answer>
</qandaentry>

<qandaentry id="faq-procmail">
<question
><para
>Can I use &kmail; and <application
>procmail</application
>?</para
></question>
<answer
><para
>Yes, but it is important to do it the right way or you might lose mail. In order to use <application
>procmail</application
> and &kmail; you need to set up &kmail; so that it will fetch new mail from the spoolfiles in which <application
>procmail</application
> drops your mail. Do <emphasis
>not</emphasis
> set up procmail to deliver mail in a &kmail; folder, this cannot work.</para>
          
<para
>For each procmail spoolfile you then need to create an account from which &kmail; will fetch new mail; you also need to make sure you specify the right lockfile name for this account. When setting up an account, &kmail; will do some minimal parsing on your <filename
>.procmail</filename
> file, and will try to list every spoolfile it has found, and also the lockfiles next to the <guilabel
>procmail lockfile</guilabel
> item. procmail lets the user specify lockfiles in three different ways, so there is no way to establish a correspondence between the spoolfiles and lockfiles; so it's really up to you to make sure you specify the right lockfile for each spoolfile.</para>
</answer>
</qandaentry>

<qandaentry>
<question
><para
>Spellchecking does not recognize non-English characters.</para
></question>
<answer
><para
>Before you can use spellchecking the first time, you have to configure it. You can do so in the composer window's menu under <menuchoice
><guimenu
>Settings</guimenu
> <guimenuitem
>Spellchecker...</guimenuitem
></menuchoice
>. You can set the dictionary and the encoding there.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>How do I use my <application
>Eudora</application
>/&Netscape;/<application
>Outlook</application
>/... mail folders in &kmail;?</para
></question
> 
<answer
><para
>See the section <link linkend="importing"
>Using other Mailbox files With &kmail;</link
>.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>Can I use encryption with my normal (non-<acronym
>SSL</acronym
>) POP3 account?</para
></question>
<answer
><para
>If your POP3 server runs an <application
>ssh</application
> daemon, you can use ssh to tunnel your POP3 connection using the following command:</para>

<para
><userinput
><command
>ssh</command
> <option
>-L 11000:127.0.0.1:110 user@host</option
></userinput
></para>

<para
>Modify your &kmail; configuration to fetch the mail via POP3 from <userinput
>localhost</userinput
> and ssh will tunnel the connection for you. <note
><para
>If non-encrypted messages have already been sent via Internet, the only advantage of using <application
>ssh</application
> is that your <emphasis
>password</emphasis
> will be sent encrypted to the POP3 server.</para
></note>

<!-- fixme: add link to http://www.linuxdoc.org/HOWTO/mini/Secure-POP+SSH.html -->

</para>
</answer>
</qandaentry>

<qandaentry id="faq-file-locking">
<question
><para
>Does &kmail; lock the folders it uses?</para
></question>
<answer
><para
>&kmail; does not lock the files in <filename class="directory"
>~/Mail</filename
>.</para>
<para
>To avoid the risk of losing mail <emphasis
>if using a local account</emphasis
> it is necessary to ensure that &kmail; uses the same type of locking as your mail delivery agent.</para>

<para
>There are five different locking options you can use:</para>

<itemizedlist>
<listitem
><para
><guilabel
>Procmail lockfile</guilabel
></para
></listitem>
<listitem
><para
><guilabel
>Mutt dotlock</guilabel
></para
></listitem>
<listitem
><para
><guilabel
>Mutt dotlock privileged</guilabel
></para
></listitem>
<listitem
><para
><guilabel
>FCNTL</guilabel
> (default)</para
></listitem>
<listitem
><para
><guilabel
>none (use with care)</guilabel
></para
></listitem>
</itemizedlist>

<para
><guilabel
>Procmail lockfile</guilabel
> will use a small utility that comes with <application
>procmail</application
> called <command
>lockfile</command
>. You can use this if your mail folder is in a folder where you have write permission. This will not work on your <filename class="directory"
>/var/spool/mail/user</filename
> file in most cases. It will create <filename
>.lock</filename
> files on your account when &kmail; is checking for new mail. Please note that this will only work if <application
>procmail</application
> is installed on your system.</para>

<para
><guilabel
>Mutt dotlock</guilabel
> and <guilabel
>Mutt dotlock privileged</guilabel
> will both use a small utility that comes with <application
>mutt</application
> called <command
>mutt_dotlock</command
>. <guilabel
>Mutt dotlock</guilabel
> can be used in the same way as the <guilabel
>Procmail lockfile</guilabel
> option, with the same limitation with regards to the <filename class="directory"
>/var/spool/mail/</filename
> folders. However, the <guilabel
>Mutt dotlock privileged</guilabel
> option can create lock files in the <filename class="directory"
>/var/spool/mail</filename
> folder. <command
>mutt_dotlock</command
> is a setgid program and this option will run it in setgid mode. Please note that these options will only work if <application
>mutt</application
> is installed on your system.</para>

<para
><guilabel
>FCNTL</guilabel
> will use the <function
>fcntl()</function
> system call.</para>

<warning
><para
>Usage of FCNTL locking might cause system lockups when the mail spool file is on an NFS mounted device.</para
></warning>

<para
>If you do not want to use any locking, the <guilabel
>none</guilabel
> option is what you want. However, there are risks of losing mail when no locking is used.</para>

</answer>
</qandaentry>

<qandaentry>
<question
><para
>How do I leave messages on the server?</para
></question>
<answer
><para
>See the <link linkend="popfilters"
>Download filters</link
> chapter. If you want to leave all messages on the server: open up the <menuchoice
><guimenu
>Settings</guimenu
><guimenuitem
>Configure &kmail;...</guimenuitem
> </menuchoice
> window. Click on the <guilabel
>Network</guilabel
> page. Select your account from the account list and click the <guibutton
>Modify...</guibutton
> button. This dialogue contains the <guilabel
>Leave fetched messages on the server</guilabel
> setting which you must enable.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>How do I automatically insert a text footer within my messages?</para
></question>
<answer
><para
>The text footer is also called a signature (not to be confused with a cryptographic signature). Select <menuchoice
><guimenu
>Settings</guimenu
> <guimenuitem
>Configure &kmail;...</guimenuitem
></menuchoice
> Look in the <guilabel
>Identity</guilabel
> page for the <guilabel
>Signature</guilabel
> tab and add your signature there. Then go to the <guilabel
>General</guilabel
> tab on the <guilabel
>Composer</guilabel
> page and enable <xref linkend="configure-composer-general-append-signature"/></para
></answer
> 
</qandaentry>

<qandaentry>
<question
><para
>How do I set up &Sendmail; to work with &kmail; if I have a dial-up connection?</para
></question
> 

<answer
><para
>First you should check if your distribution can do this for you. It probably has already been set up during installation.</para>

<para
>If that is not the case, you may want to have a look at <ulink url="http://en.tldp.org/HOWTO/mini/Mail-Queue.html"
>the Mail Queue HOWTO</ulink
>.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>I've seen demonstrations of remote control behavior with &kmail;. Is there any documentation on the available interfaces?</para
></question>
<answer
><para
>You can get a list of functions by using this command in a shell: <userinput
><command
>dcop</command
> <option
>kmail KMailIface</option
></userinput
>. Some documentation is also available in <filename
>kdenetwork/kmail/kmailIface.h</filename
> and <filename
>kdenetwork/kmail/mailcomposerIface.h</filename
>.</para
></answer>
</qandaentry>

<qandaentry>
<question
><para
>When I reply to a message, only a part of the message is quoted. How come?</para
></question>
<answer
><para
>This can happen when the message contains two dashes and a space on a single line. This is seen as the start of the signature. The remaining part of the message will not be quoted, because when you reply to a message KMail strips the signature.</para
></answer>
</qandaentry>

</qandaset>

</chapter>
