-------------------------------------------------- »»» DeInstaller v1.1a ««« "The only way to keep your harddisk clean!" Beetware © 1994-1995 The Beet Research written by Grzegorz Calkowski ----------------------------------------------------------------- Disclaimer ---------- The program executable and information above is provided "as is". No representations or warranties are made with respect to the accuracy, reliability, performance, currentness, or operation of this software and information, and all use is at your own risk. The author doesn't assume any responsibility or liability whatsoever with respect to your use of the program and information. Copying ------- DeInstaller is published under "BeetWare" conception. It's very special sort of GiftWare. It means you should send a beet to the author (but not a rotten one! 8). Well, if you run short on beets send a disk or a small donation or anything else. (Have a hint: a bottle of beer would be excellent... :) This program can be freely distributed under following conditions: 1. Everything in this distribution must be kept together and unaltered. Applies to: DeInstaller (the program itself) DeInstaller.info (its icon) DeInstaller.doc (plain-ascii doc) DeInstaller.doc.info DeInstaller.guide (AmigaGuide®'ed doc) DeInstaller.guide.info MWB-Icons/DeInstaller.info (program icon in MagicWB style :) MWB-Icons/DeInstaller_alt.info (an alternate MWB icon) MWB-Icons.info 2. Copyright notices are not removed from executable and documentation. 3. No more than a nominal fee is charged to cover cost of magnetic media. DeInstaller is Copyright (C) 1994 The Beet Research. All rights reserved. The program uses: MultiGUI Copyright (C) TBR (it's linked together with program should be available as a shared library soon... :-) ReqTools library Copyright (C) Nico François. Introduction ------------ Every time you tried to install to your system a complex program spreading its stuff all over your harddisk (fonts, libs, scripts, locales, prefs, ARexx scripts and other accompaning files) you wondered "How will I be able to restore previous state of my harddisk?". How many times you removed a program you couldn't figure out what file belongs to? How many times you found a file in deep nookes of harddisk and you said "WHAT THE HELL IS IT?" and finally you didn't delete it??? Well, no more... DeInstaller should be used during installation. It looks for all write attempts (including creating subdirectories) and creates an AmigaDOS script which, when executed, will throw out all the mess the installer did. It also looks for all overwrite attempts giving you possibility to backup existing files (extension '.old' will be added). Features -------- o Ability to deinstall everything you've installed. Doesn't matter what you've used to install (orginal Installer by Commodore, other custom installers, install scripts or even you did it by hand... :) o Font-sensitive GUI, fully keyboard controlled, just Commodore's user interface style guide compliant (maybe except locale, sorry). But... not only. I followed Nico François standards, what means when you press a key assigned to a gadget it will be visualised and you can cancel it by pressing a SHIFT key. Even more. There is a keypress timeout (very useful when your other hand holds a cake, cup of coffee, bottle of beer or even a girlie ;-). o MultiGUI'ed what means internal multitasking. It's not so usable in such a program but, for example, while DeInstaller is tracing you can execute a script. Or even you can contemplate 20 "Abouts" simultaneously. Moreover it gives you proper (one pixel lower) underscore char even if you use the ugly topaz (another great Nico's idea - but mine is smarter, if you use a proportional font, underscore won't be placed too low... :). o 100% legal (well, almost :) & 100% assembly code (well, the last one is not really a feature, though >) o Thoroughly tested with Enforcer & Mungwall. Requirements ------------ DeInstaller requires an Amiga (surprise?) with at least Kickstart 2.04 (NOTE: tested only on 3.0/3.1!, sorry :). It is completely useless without harddisk. It has no special memory requirements, should run even on 0.5MB machines. DeInstaller requires reqtools.library V38+ installed in your LIBS: (it's included in this archive). Installation ------------ Copy the main program file and its icon whatever you want. There are supplied two alternate icons in MagicWB style (Thanks, Dixan :). Copy (if you haven't) reqtools.library to your LIBS: directory. Usage from Shell ---------------- Bad news... Although DeInstaller can be launched from Shell no options can be specified (only when launching from Workbench - via tooltypes). But don't cry - for your convenience DeInstaller automatically detaches from Shell. Usage from Workbench -------------------- When launched from WB DeInstaller looks for following tooltypes: SCRIPTDIR= Sets the default directory for generated "deinstall scripts". If not specified, S: will appear in "Script" gadget. Examples: SCRIPTDIR S:deinstall SCRIPTDIR=WORKS:scripts NOREQUESTCHOICE Sets "ask" mode instead of "requestchoice" mode. By default DeInstaller generates scripts which use RequestChoice command. As it is not available up to 2.1 Kickstart specifying this tooltype forces it to generate script which use ask command instead. Program's gadgets ----------------- The program window contains following gadgets: Program Specifies the name of a program to install and, indirectly, to deinstall. You can type here whatever you want, but it is wise to note here program name and version. Program name doesn't mean a script name! Script Specifies the script name to generate. Req As above, but pops up a file requester. Trace Begins the tracing for "newcomers" on your harddisk. If you didn't specify the program name you are kindly informed about. Message "DeInstaller on duty" should appear. Stop Quite self-explanating... finishes the operation. Then you get a deinstall script, executable from Shell or directly from DeInstaller using Launch gadget. (For your convenience it has the script bit set, so you can omit Execute command, when launching from Shell). Launch Executes selected script(s). It's for people who really don't like shell :-). Delete Delete selected file(s). It's intended for deleting deinstaller scripts but, of course, you can delete what you want with this. About Well, what to say about... Quit I bet you have seen something like this before, haven't you? There is also an information (read-only) gadget. Shows current program status (eg. info about caught files and dirs). Examplary usage --------------- I want to install program Mess-on-harddisk v8.71 which I've just pirated. It occupies 7 floppies and I'm really afraid it can fill my drive with hundreds of "don't-know-what-the-hell-it-is-for" files. So I... - start DeInstaller - type "Mess-on-hardisk v8.71" in the »Program« gadget - press »Req« gadget - it will bring you a file requester in S: directory (by default) and then type filespec (example: "S:deinstall/messonhd-remove") for the "deinstall script" to generate - press »Trace« what brings the file requester ("Deinstaller on duty" should appear) NOW, I INSTALL THE PROGRAM! (with installer, if supplied or by hand) (during the installation DeInstaller shows how many files and dirs were created on my harddisk) - press »Stop« button when installation is done. - press »Quit« to leave the program. Now I have program Mess-on-harddisk v8.71 installed. It filled my drive with hundreds of "don't-know-what-the-hell-it-is-for" files. And as I've figured out that this program is completly useless I want to flush all that stuff out of my precious harddisk space. - start DeInstaller again. - press »Launch« gadget - select the script (in this case it is "S:deinstall/messonhd-remove") - confirm the deinstallation process! After some flashings of harddisk led the harddisk is as BEFORE! --------------------------------------------------------------- So, now I can install program Mess-on-harddisk-bigger-than-ever-before which fills my drive with even more hundreds of "still-don't-know-what- the-hell-it-is-for" files. So I... To Do ----- Well, in previous release (1.1) I enumerated here some things to add in future (BTW: it was over half a year ago !). Yeah, but I decided to not use assembler anymore (at least for utilities), so DeInstaller wouldn't be updated. Believe me, I haven't enough motivation to rewrite it in, for example, C. And, to be honest, there are much more exciting projects on the way. Contacting the author --------------------- Any ideas, bug reports, donations, etc. will be sincerely welcomed. Just drop me a piece of paper. My addy: Grzegorz Calkowski Rzedowice ul.Dobrodzienska 8 42-780 Dobrodzien POLAND phone: +48(0)34-575875 E-mail: calkowsk@us.edu.pl Always remember: ---------------- Beeting is beliving... and Amiga is best computer ever! Acknowledgements ---------------- Thanks should go to: - Michal Prochownik for really constructive help with writting this doc and for those awfully pretty icons. - my brand new A4000 which seems to be faaaar more reliable than the damned A1200 I had before (and at least it looks faaaar better...:^). - Commodore for resurrection... Any greetings expected? Well, press some keys in the program window... 8) PROGRAM HISTORY: v1.0ß (16.10.94) o First BETA release. =========================================================================== v1.0 (25.10.94) o Ooopps... it worked only on my A4000 due to a damned bug causing an Enforcer hit in MultiGUI stuff. o Another Enforcer hit found in CreateDir() patch. Fixed. o Some Mungwall hits found. Fixed. o Startup code was broken - DeInstaller crashed immediately when launched from Shell. Fixed. o Small optimizations. =========================================================================== v1.1 (23.11.94) o AmigaGuide®'ed documentation included. o Important feature added: attempts to overwrite existing files are intercepted - user can let overwrite, reject or backup existing file (appends ".old" extension). o »Script« and »Req« gadgets added (instead of poping-up requester when »Go« was pressed.. o New gadgets added: »Launch« (allows to execute scripts), »Delete« (allows to delete scripts) o »Go« renamed to »Trace«. o Now window can be zipped (zoomed). o Version string was incorrect. o A plenty of internal optimizations. =========================================================================== v1.1a (09.07.95) <-- sic! o Some nasty mungwall hits found & cured. o Hope it will finally work on anything else than my A4000... ;] =========================================================================== (23.10.95) o Not really an update (no version change). o Reqtools.library removed from archive. Is there anybody without it? o Uploaded to Aminet (and my E-mail address included).