Projects/Kooka: Difference between revisions

    From KDE TechBase
    (Created page, for current Kooka information)
     
    (→‎Running the Development Version: removed Projects.kde.org link)
     
    (15 intermediate revisions by 4 users not shown)
    Line 6: Line 6:
    [http://dot.kde.org/1182124674/1182125431/ dot.kde.org 17 Jun 07]
    [http://dot.kde.org/1182124674/1182125431/ dot.kde.org 17 Jun 07]
    and
    and
    [http://dot.kde.org/1201910126/1201918220/ dot.kde.org 1 Feb 2008].
    [http://dot.kde.org/1201910126/1201918220/ dot.kde.org 1 Feb 08].


    Now would be a good time to introduce myself: Jonathan Marten, the current Kooka maintainer.  I was motivated to volunteer for this after having got a new networked scanner (an HP OfficeJet all-in-one) and finding that it didn't work with Kooka, although it did with SaneGetting it to work with Kooka was a fairly simple fix, but it was obvious that there was a lot more in the application that could be improved.
    {{note|Don't panic! Although Kooka is no longer present in KDE4, scanning is still available via the [[kolourpaint]] and [[KOffice]] applications among othersThese use the [[libksane]] library which is included as standard in kdegraphics.
    <br><br>There is also the scanning application [[Skanlite]] which is available in extragear.}}


    {{note|Don't panic! Although Kooka is no longer present in KDE4, scanning is still available via the [[kolorpaint]] and [[KOffice]] applications among othersThese use the [[libkscan]] library which is still present in kdegraphics.}}
    Now would be a good time to introduce myself: Jonathan&nbsp;Marten, the current Kooka maintainer.  I was motivated to volunteer for this after having got a new networked scanner (an HP&nbsp;OfficeJet all-in-one) and finding that it didn't work with Kooka, although it did with SANEGetting it to work with Kooka was a fairly simple fix, but it was obvious that there was a lot more in the application that could be improved.


    == Current Status ==
    == Current Status ==


    There is still a lot of documentation and other information on
    There is still a lot of documentation and other information on
    the [http://kooka.kde.org original Kooka web pages].  My intention is that content will eventually migrate to these TechBase wiki-based pages.  For the moment this page provides information on the current state of Kooka, and instructions for downloading and building the development (SVN) version.
    the [http://kooka.kde.org original Kooka web pages].  The intention is that that content will eventually migrate to these TechBase wiki-based pages.  For the moment this page provides information on the current state of Kooka, and instructions for downloading and building the development (Git) version.


    == Future Plans ==
    Kooka has been ported to KDE4.  Almost all of the original Kooka functionality is present and working, with the exception of printing (not yet addressed because the KDE4 printing system is still under development).  It uses [[Development/Architecture/KDE4/Sonnet|Sonnet]] for OCR spell checking. The dock widget interface ({{bug|71252}} and its many duplicates) has gone.


    A new KDE scanning application [[Glimpse]] is being developed by Kåre&nbsp;Särs. This includes a new library [[libksane]] which has a number of advantages over libkscan, including access to all scanner options and 16-bit scanner support.  In the long run my aim is to convert Kooka to use this new library.
    These are some of the bugs and popular wishes that have been addressed in the development version so far.  If you are affected by any of these, please try out that version (see the "Running the Development Version" section below) and update the bug if there is anything to report.


    In addition to that, obviously, the application needs to be ported to KDE4.  The dock widget user interface that it currently uses is not supported in KDE4, as well as being rather clumsy and unreliable (see {{bug|71252}} and its many duplicates). I'm currently considering changing the user interface to a task oriented system for the three main tasks ("Scan", "OCR" and "Gallery"), with a tab for each task. The panes used for each task will be arranged using splitters. All of the sizes and arrangements will be fully configurable, of course.
    * {{bug|139932}} USB or network scanner is not auto-detected
    * {{bug|68530}} "Scan Parameters" - Scan modes that let you change the whole...
    * {{bug|107390}} Display error message when scanner device inaccessible
    * {{bug|69454}} Gallery tree context menus should be context sensitive
    * {{bug|132701}} Deleting folders doesn't work properly
    * {{bug|109406}} Doesn't remember application to "open with"
    * {{bug|132699}} Images in nested folders are not shown
    * {{bug|70473}}  Deleting items from the Kooka Gallery does not decrement...
    * {{bug|141927}} Spelling settings not preserved for OCR in a single...


    [[libksane]] is for KDE4 only, so the port will have to be done before the conversion to that library.
    In the KDE4 port only:


    Having done all of these changes and ported to KDE4, Kooka may appear in extragear&nbsp;- or even an official KDE release&nbsp;- one day!
    * {{bug|71252}}  Docking widgets unintuitive, configuration can be badly messed up
    * {{bug|79245}} 3-pass scanner not working
    * {{bug|146874}} Support for saned user authentication
     
    [http://bugs.kde.org/buglist.cgi?product=kooka&bug_status=ASSIGNED This Bugzilla query]
    will list all of the bugs that have been addressed in the development version.
     
    == Future Development ==
     
    Any contributions that you can make to Kooka&nbsp;- code, documentation, translation, or artwork&nbsp;-
    will be greatly appreciated!  You are welcome to push any changes or additions that you make to the main Git repository.
     
    New features needed include configurability for the user interface layout.
     
    There are some discussion threads ([http://lists.kde.org/?t=125570944700004&r=1&w=2 1],
    [http://lists.kde.org/?l=kde-devel&m=125594709527004&w=2 2],
    [http://lists.kde.org/?t=125603251000002&r=1&w=2 3]) regarding the KDE4 port and possible future changes.  One of these possibilities is the new KDE scanning library [[libksane]], part of [[Skanlite]], being developed by  Kåre&nbsp;Särs.  libksane has a number of advantages over libkscan, including access to all scanner options and 16-bit scanner support.  In the long run the aim is to convert Kooka to use this new library.
     
    When the port is complete, Kooka may appear in extragear&nbsp;- or even an official KDE release&nbsp;- one day!


    == Running the Development Version ==
    == Running the Development Version ==


    If you want to try running the latest development version of Kooka, it is available from KDE SVN.  If you are not familiar with SVN then instructions are below;  you do not need an SVN account unless you will be contributing code yourself, although you should be familiar with compiling and installing from source.  See the TechBase articles
    If you want to try running the latest development version of Kooka, it is available from KDE Git.  If you are not familiar with Git then instructions are below;  you do not need an [http://identity.kde.org identity.kde.org] account unless you will be contributing code yourself, although you should be familiar with compiling and installing from source.  See the TechBase  
    [[Getting_Started/Sources/Anonymous SVN|Anonymous SVN Quickstart Guide]]
    [[Development/Git]] page for more information on Git.
    and
    [[Getting_Started/Sources/Using Subversion with KDE|Using Subversion with KDE]] for more information on SVN.


    The development version is at <tt>branches/work/kooka-kde3</tt>, if you just want to browse the files you can do so using the
    The current KDE4 development version is at <tt>playground/graphics/kooka</tt>, if you just want to browse the files you can do so using [http://quickgit.kde.org/?p=kooka.git KDE QuickGit].
    [http://websvn.kde.org/branches/work/kooka-kde3/ KDE WebSVN].
    To check out a copy of the current sources, do the following:
    To check out a copy of the current sources, do the following:


       cd [to a suitable place, e.g. your home directory]
       cd [to a suitable place, e.g. your home directory]
       svn co svn://anonsvn.kde.org/home/kde/branches/work/kooka-kde3
       git clone git://anongit.kde.org/kooka


    This will download the current sources to a subdirectory
    This will download the current sources to a subdirectory
    {{path|kooka-kde3}}.
    {{path|kooka}}.
    To compile and install them, do the following:
    To compile and install them, do the following:


       cd kooka-kde3
       mkdir kooka-build
       make -f Makefile.cvs
       cd kooka-build
       ./configure [with any options needed, you should not need to use any]
       cmake ../kooka [with any options needed, you should not need to use any]
       make
       make


    Line 54: Line 78:
       su root -c 'make install'
       su root -c 'make install'


    This will overwrite your existing Kooka application, its UI file and iconsHowever, it will not overwrite the original version of the libkscan library so as not to break any other applications which may use it.  The new libkscan library will get installed with a new version number.  After doing the install, you can run the new Kooka application with the command:
    This will install the new Kooka application and its support files in the KDE4 install locationThere is no Kooka included as standard in KDE4, so nothing will get overwritten.  After doing the install, you can run the new Kooka application with the command:


       kooka
       kooka
    Line 60: Line 84:
    or from the desktop or K-menu in the usual way.
    or from the desktop or K-menu in the usual way.


    {{tip|You may need to install some additional software or packages (your distro may call them "development" packages) to obtain SVN, and the autoconf/automake framework that <tt>Makefile.cvs</tt> uses.}}
    {{tip|You may need to install some additional software or packages (your distro may call them "development" packages) to obtain Git and cmake, or the autotools needed for the KDE3 version.}}
     
    The KDE3 development version is no longer being updated - any bug fixes or improvements will appear in the KDE4 version only.  This version is available as branch 'master-kde3' in Git.
     
    To check out and build/install this version, do:
     
      cd kooka
      git checkout master-kde3
      make -f Makefile.cvs
      ./configure [with any options needed]
      make
      su root -c 'make install'
     
    == Reporting Bugs or Wishes ==
     
    Please continue to report bugs or problems with the Kooka application or the libkscan library using [http://bugs.kde.org bugs.kde.org] as usual.  This is also the place to submit wishes or new feature requests.
     
    [http://bugs.kde.org/buglist.cgi?product=kooka&bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED This Bugzilla query] will list all of the existing bugs.


    If your problem is a crash, please try to include a meaningful backtrace&nbsp;- this will be displayed by DrKonqi when the application crashes.
    See the TechBase article [[Development/Tutorials/Debugging/How_to_create_useful_crash_reports|How to create useful crash reports]] for information on how to create and submit useful reports.


    == Reporting Bugs Or Problems ==
    Please be aware that a crash may not be a problem with Kooka or anywhere in KDE, it may be caused by the SANE libraries or even the kernel.  Unfortunately, it may not be possible to reproduce the problem for investigation unless a developer has the same scanner hardware as you do&nbsp;- even then it may not be possible.  You should ensure that you are using a reasonably up-to-date kernel (especially if your scanner is connected via USB) and the latest SANE package.  Check the [http://www.sane-project.org/bugs.html SANE bug tracker] if you suspect that the problem may involve SANE.

    Latest revision as of 23:22, 17 May 2016

    Warning
    This page needs to be migrated. You can find the original page and its subpages at http://kooka.kde.org. Please make use of subpages to structure the wiki, e.g. Policies/Packaging Policy. Read Help:Contents for further details. If in doubt, join #kde-www on irc.kde.org.


    Kooka, a KDE Scanning/OCR Application

    Kooka has been removed from the kdegraphics module for KDE4 (since mid-2007), this is because it had had little active development or maintenance for some time before that. But there is still interest from users, see for example dot.kde.org 17 Jun 07 and dot.kde.org 1 Feb 08.

    Note
    Don't panic! Although Kooka is no longer present in KDE4, scanning is still available via the kolourpaint and KOffice applications among others. These use the libksane library which is included as standard in kdegraphics.

    There is also the scanning application Skanlite which is available in extragear.


    Now would be a good time to introduce myself: Jonathan Marten, the current Kooka maintainer. I was motivated to volunteer for this after having got a new networked scanner (an HP OfficeJet all-in-one) and finding that it didn't work with Kooka, although it did with SANE. Getting it to work with Kooka was a fairly simple fix, but it was obvious that there was a lot more in the application that could be improved.

    Current Status

    There is still a lot of documentation and other information on the original Kooka web pages. The intention is that that content will eventually migrate to these TechBase wiki-based pages. For the moment this page provides information on the current state of Kooka, and instructions for downloading and building the development (Git) version.

    Kooka has been ported to KDE4. Almost all of the original Kooka functionality is present and working, with the exception of printing (not yet addressed because the KDE4 printing system is still under development). It uses Sonnet for OCR spell checking. The dock widget interface (bug #71252 and its many duplicates) has gone.

    These are some of the bugs and popular wishes that have been addressed in the development version so far. If you are affected by any of these, please try out that version (see the "Running the Development Version" section below) and update the bug if there is anything to report.

    • bug #139932 USB or network scanner is not auto-detected
    • bug #68530 "Scan Parameters" - Scan modes that let you change the whole...
    • bug #107390 Display error message when scanner device inaccessible
    • bug #69454 Gallery tree context menus should be context sensitive
    • bug #132701 Deleting folders doesn't work properly
    • bug #109406 Doesn't remember application to "open with"
    • bug #132699 Images in nested folders are not shown
    • bug #70473 Deleting items from the Kooka Gallery does not decrement...
    • bug #141927 Spelling settings not preserved for OCR in a single...

    In the KDE4 port only:

    • bug #71252 Docking widgets unintuitive, configuration can be badly messed up
    • bug #79245 3-pass scanner not working
    • bug #146874 Support for saned user authentication

    This Bugzilla query will list all of the bugs that have been addressed in the development version.

    Future Development

    Any contributions that you can make to Kooka - code, documentation, translation, or artwork - will be greatly appreciated! You are welcome to push any changes or additions that you make to the main Git repository.

    New features needed include configurability for the user interface layout.

    There are some discussion threads (1, 2, 3) regarding the KDE4 port and possible future changes. One of these possibilities is the new KDE scanning library libksane, part of Skanlite, being developed by Kåre Särs. libksane has a number of advantages over libkscan, including access to all scanner options and 16-bit scanner support. In the long run the aim is to convert Kooka to use this new library.

    When the port is complete, Kooka may appear in extragear - or even an official KDE release - one day!

    Running the Development Version

    If you want to try running the latest development version of Kooka, it is available from KDE Git. If you are not familiar with Git then instructions are below; you do not need an identity.kde.org account unless you will be contributing code yourself, although you should be familiar with compiling and installing from source. See the TechBase Development/Git page for more information on Git.

    The current KDE4 development version is at playground/graphics/kooka, if you just want to browse the files you can do so using KDE QuickGit. To check out a copy of the current sources, do the following:

     cd [to a suitable place, e.g. your home directory]
     git clone git://anongit.kde.org/kooka
    

    This will download the current sources to a subdirectory kooka. To compile and install them, do the following:

     mkdir kooka-build
     cd kooka-build
     cmake ../kooka [with any options needed, you should not need to use any]
     make
    

    If this is all successful, you can install the Kooka application and libkscan library by doing:

     su root -c 'make install'
    

    This will install the new Kooka application and its support files in the KDE4 install location. There is no Kooka included as standard in KDE4, so nothing will get overwritten. After doing the install, you can run the new Kooka application with the command:

     kooka
    

    or from the desktop or K-menu in the usual way.

    Tip
    You may need to install some additional software or packages (your distro may call them "development" packages) to obtain Git and cmake, or the autotools needed for the KDE3 version.


    The KDE3 development version is no longer being updated - any bug fixes or improvements will appear in the KDE4 version only. This version is available as branch 'master-kde3' in Git.

    To check out and build/install this version, do:

     cd kooka
     git checkout master-kde3
     make -f Makefile.cvs
     ./configure [with any options needed]
     make
     su root -c 'make install'
    

    Reporting Bugs or Wishes

    Please continue to report bugs or problems with the Kooka application or the libkscan library using bugs.kde.org as usual. This is also the place to submit wishes or new feature requests.

    This Bugzilla query will list all of the existing bugs.

    If your problem is a crash, please try to include a meaningful backtrace - this will be displayed by DrKonqi when the application crashes. See the TechBase article How to create useful crash reports for information on how to create and submit useful reports.

    Please be aware that a crash may not be a problem with Kooka or anywhere in KDE, it may be caused by the SANE libraries or even the kernel. Unfortunately, it may not be possible to reproduce the problem for investigation unless a developer has the same scanner hardware as you do - even then it may not be possible. You should ensure that you are using a reasonably up-to-date kernel (especially if your scanner is connected via USB) and the latest SANE package. Check the SANE bug tracker if you suspect that the problem may involve SANE.