On 11/11/2015 20:09, Jerome E. Shidel Jr. wrote: >> What do you mean by "time consuming" ? FDINST REMOVE won't do anything >> if the package is not installed - it will execute only a check >> determining whether or not said package is already installed. This is >> something that needs to be done anyway. > > Mostly, I mean going through all of the lists in batch logic.
No need to do any batch logic - when installing a package, simply call: FDINST REMOVE %PKGNAME% FDINST INSTALL %PKGNAME%.ZIP > Without going through a package list comparison and removal. Simply, removing > all installed packages would dump files the user may have installed to a > different > directory that are not included in the FreeDOS release. The user would see it > as > having trashed there install of blahblah package installed in C:\MYTHING\. This is the bit I don't understand. If the user copied some files around (as opposed to having them "installed" using FDNPKG or FDINST), then the REMOVE action won't touch them, because FDINST will simply be unaware it their existence. If you are worried about packages that user installed, but that are not present in the FreeDOS v1.2 distro, then worry not - these will be left unharmed. FDI shouldn't try to remove "every possible package installed in the system" - only the packages that it wants to install (ie. only BASE, or whatever else is being installed). > An install or upgrade if installed option would be nice. It isn’t a conflict > if it is > upgrading a earlier version. :) I agree. And that's why I keep suggesting using a combo REMOVE+INSTALL for every package that the distro is trying to install. If a package doesn't exist, it will be installed. If a package was existing, it will be upgraded. Any other pre-existing package will be left untouched. Mateusz ------------------------------------------------------------------------------ _______________________________________________ Freedos-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freedos-devel
