\input texinfo @c -*-texinfo-*- @c %**start of header @setfilename kite.inf @settitle KITE Manual @c %**end of header @titlepage @title KITE Manual @subtitle Copyright @copyright{} 2001, 2002 Laurynas Biveinis @page @end titlepage @ifinfo @dircategory DJGPP Package Management @direntry * KITE: (KITE). KITE, a friendly tool for installing DJGPP @end direntry @end ifinfo @node Top, Introduction, , (dir) @top @ifnottex KITE Manual Copyright @copyright{} 2001 Laurynas Biveinis @menu * Introduction:: The purpose of @acronym{KITE} * Basic Usage:: How to install @acronym{DJGPP} with @acronym{KITE} in the easiest way * Advanced Usage:: Using @acronym{KITE} for automated installations * Changes:: Differences between @acronym{KITE} versions * Development Info:: Building @acronym{KITE} from sources * Contact Info:: How to reach me * Thanks:: Acknowledgements * Licence:: The licence of this manual @end menu @end ifnottex @node Introduction @chapter Introduction @acronym{KITE} is a tool for doing @acronym{DJGPP} installations. Its main target audience are novices, which feel uncomfortable with command line tools or don't bother reading @acronym{DJGPP} installation instructions. However, @acronym{KITE} can be controlled using command line options too, so it might be an useful tool for doing automated installations too. Following chapters describe both modes in detail. @node Basic Usage @chapter Basic Usage Below are step-by-step instructions for doing @acronym{DJGPP} installation with @acronym{KITE}. They assume that user already has got zips with wanted packages, if not, go to @uref{http://www.delorie.com/djgpp/zip-picker.html} first. @enumerate @item Put all of the downloaded DJGPP packages (those zip files) into single directory. @item Run @command{install.exe}. This will create required installation files. @item One of those new files will be @command{kite.exe}, the actual installer. Run it. @item You will be presented with the introduction dialog. You may read it if you care and press "Next" button to continue. @item If you are running Windows 95/98/ME you will be asked if you want to update Windows registry to disable numeric tails like ~1, ~2, ... in short versions of long file names. This is @strong{neccesary} if you want to use @acronym{DJGPP} in @acronym{DOS} box and in plain @acronym{DOS} (See the @acronym{DJGPP FAQ} chapter 22.19 for details). It does not apply to Windows NT. Answering "Yes" to this question will require reboot, so if you are going to use @acronym{DJGPP} just in @acronym{DOS} box @strong{or} just in plain DOS, you may answer "No" there. If you do not see this dialog at all, it means that you already have numeric tails disabled. @item You will be prompted to enter the @acronym{DJGPP} installation directory. The default @file{c:/djgpp} is suggested so you may just press @key{Enter} here. If you do not like the default installation directory, you can enter it by hand or choose it from dialog box. @c FIXME: expand. @item Now you will have to enter the path to downloaded zips---@acronym{DJGPP} packages. @c FIXME: update. @item All packages will be installed into specified directory. Depending on the number of packages, it can take some time. @item If you have previously disabled numeric tails, you will be asked if you want to reenable them again. This was necessarry for installation, but later disabled tails may cause data loss in few obscure cases. @item Now you will be presented with @file{autoexec.bat} update dialog. At the left is your current untouched @file{autoexec.bat} file and at the right is @file{autoexec.bat} file with proposed updates. In most cases, it will be OK to accept new version. However, if you have multiple configurations or call some shell from @file{autoexec.bat}, you will have to adjust new version. When you're done, press "Save changes" button if you want to have your current @file{autoexec.bat} to be replaced with the new one. The old version will be saved as @file{c:/autoexec.djg}. If you are careful, you may press "Save as backup" - then your old @file{autoexec.bat} will be left unaltered, and the new version will be saved as @file{c:/autoexec.djg}. @item @acronym{KITE} quits, now you have to restart computer for changes in @file{autoexec.bat} to take effect. @item Start using @acronym{DJGPP}! ;-) @end enumerate @node Advanced Usage @chapter Advanced Usage @c FIXME: write me up @menu * Command Line:: Controlling of @acronym{KITE} from command line. * Exit Codes:: Values and meanings of @acronym{KITE} exit codes. @end menu @node Command Line @section Command line parameters @c FIXME: write me up @c In progress... @acronym{KITE} supports following command line options. Each option, if provided, makes @acronym{KITE} do not bother user with that question. @table @code @item --disable-logging Do not log installation actions. @item --log-file [PATH] Log installation actions into specified file. @item --pkg-dir [PATH] Use specified directory to find @acronym{DJGPP} packages. @item --djgpp-dir [PATH] Use specified directory to install @acronym{DJGPP} to. @item --disable-tails Automatically disable numeric tails in Windows Registry, if required. @item --keep-tails Do not disable numeric tails in Windows Registry, even if it seems required. @item --restore-tails Reenable numeric tails after installation. @item --no-restore-tailas Leave numeric tails disabled after installation. @end table @node Exit Codes @section Exit codes and their meanings @table @asis @item 0 Installation finished successfully @item 1 Windows Registry has been updated, reboot and re-run of installer required @item 2 Installation canceled by the user @item 3 An error has occurred @end table @node Changes @chapter Changes Here are noteworthy changes between @acronym{KITE} versions: @table @samp @item v0.x (WIP), ~2000 LOC. Various text files converted to unified Texinfo documentation. Renamed to @acronym{KITE}. It means (KITE Is The (DJGPP) Installer). Source repository merged with pakke public CVS archive at cvs.delorie.com. Now configures and installs pakke. @c FIXE: dependencies. Writes installation log. Reverted from using GNU Automake. Experiment failed. Build system hardened: added automatic source/binary distribution creation, manifest file generation. LFN support is no more required. Added support for command line options (for automated installations). @item v0.4.1 (2000.04.29), about 1050 LOC. Binary distribution was missing unzip.exe. Doh. Corrected readme.txt Fixed keyboard controls in file dialog boxes. Fixed registry key checks. @item v0.4 (2000.03.25), about 1050 LOC. Rewrite from scratch: Uses Turbo Vision for user's interface. That forced moving from C to C++. Added interactive autoexec.bat update / editing ability. Build process made more GNUish with autoconf and automake. @item v0.3 (dead), about 400 LOC. Never released. Why? Because Richard Dawe introduced new program, pakke, which drastically changed the purpose and implementation of pakke. For curious - v0.3 had to handle packages and dependencies, current pakke work. @item v0.2 (1999.04.02), about 250 LOC. If user wants it, registry is updated to disable numeric tails in SFN. Added check if LBInstDJ is running under DOS 7 but not in DOS box under Windows 9x. Optionally LBInstDJ now updates autoexec.bat if it does not find FPU. (Controled by #define INCLUDE_FPU) Added check against installing to "/dev" directory Changed DPMI server from CWSDPMI to PMODE/DJ so LBInstDJ.exe now is a standalone program Added autoexec.bat update failure check Bugfix : LBInstDj tried to append "\" even there was a "/" present @item v0.1 (1999.03.29), about 150 LOC. First public release. @end table @node Development Info @chapter Development Info Currently this chapter contains information on how to build @acronym{KITE} from sources. It might be expanded in future. @menu * Requirements:: Necessarry compiler, tools, libraries... * Building:: Building @acronym{KITE} from sources. * Packaging:: Creating source and binary archives. @end menu @node Requirements @section Requirements These are packages you should have installed before you start. Later versions of these tools should work fine too, unless stated otherwise. @itemize @bullet @item DJGPP 2.03 @item GNU C++ 2.95.2 @item GNU Binutils 2.10 @item Turbo Vision 1.0.10. It is available from your Simtel mirror in @file{v2tk/tv1010s.zip}. @item GNU Bash 2.03 @item GNU Fileutils 3.16 @item GNU Make 3.79 @item GNU Texinfo 4.0 @item Pakke. Nowadays it shares single source tree with @acronym{KITE}. @item Popt 1.2. @item GNU Gettext 0.10.32, if your Turbo Vision copy wants to be i18n'ed. Otherwise it is not necessarry. @item GNU Libiconv 0.16.1, if your Gettext copy is 0.10.37 or later. @item GNU Autoconf 2.50, if you change @file{configure.ac} or @file{aclocal.m4}. @item Memory Supervision System 1.2, from Simtel (@file{v2tk/mss12.zip}), if you want to debug memory leaks. @end itemize @node Building @section Building @c FIXME: describe how to get sources (CVS, zips,...) Once you have the sources ready and helper libraries installed, do following: @enumerate @item Configure sources. Go to the top level directory of @acronym{KITE} and type @samp{sh configure [additional-args]}. In addition to standard configure script arguments (like --prefix), you can specify @samp{--enable-mss} to link with Memory Supervision System for memory debugging. This option is off by default. @item Build it. Just do @code{make}. @end enumerate @node Packaging @section Packaging @c FIXME: write me up @node Contact Info @chapter Contact Info My email is @email{lauras@@softhome.net}. Send your bug reports, suggestions, flames, thanks there. If you want to help with development, note that @acronym{KITE} is built on the top of @dfn{libpakke} library. To reach its developers, use @email{pakke-workers@@yahoogroups.com}. @node Thanks @chapter Thanks There are quite a few people which have helped me at one or another point with ideas, suggestions, help and testing. I'd like to thank to: @itemize @bullet @item Folks at @uref{news://comp.os.msdos.djgpp} for inspiration. @item @email{djgpp-workers@@delorie.com, DJGPP team} for @acronym{DJGPP} and help with ideas. @item @email{pavenis@@lanet.lv, Andris Pavenis} for help. @item @email{rjvdboon@@europe.com, Boon van der RJ} for help. @item @email{dj@@delorie.com, DJ Delorie} for help. @item @email{ams@@ludd.luth.se, Martin Stroemberg} for help. @item @email{salvador@@inti.gov.ar, Salvador Eduardo Tropea} for help and Turbo Vision. @item @email{richdawe@@bigfoot.com, Richard Dawe} for help, libpakke, pakke, build system suggestions, and brainstorming. @item @email{celco@@texoma.net, J.W. Mays} for support. @end itemize @acronym{KITE} uses following third-party tools (mainly for binary distribution) which require mentioning following copyright info: @itemize @bullet @item UnZip by InfoZip. I do not include its source code due its size, but it can be freely downloaded from @uref{http://www.cdrom.com/pub/infozip/} or @uref{ftp://ftp.cdrom.com/pub/infozip/}. @item PMODE/DJ @acronym{DPMI} server. It is copyright @copyright{} 1994 by Tran AKA Thomas Pytel and copyright @copyright{} 1996 by Matthias Grimrath. @end itemize @node Licence @chapter GNU Free Documentation Licence @include fdl.txi @contents @bye