Hi all,
I’m writing a short mail to explain the recent USETUP improvements I’m doing in the https://svn.reactos.org/svn/reactos/branches/setup_improvements/base/setup/ branch.
The aim is three-fold:
- To improve multi-OSes / bootloaders detection and solve https://jira.reactos.org/browse/CORE-4870 , https://jira.reactos.org/browse/CORE-12672 , https://jira.reactos.org/browse/CORE-13188 , https://jira.reactos.org/browse/CORE-13226 in a consistent & reliable way, and possibly having a look at https://jira.reactos.org/browse/CORE-13205 and https://jira.reactos.org/browse/CORE-10898 (low priority for me at the moment).
- A bit related to the previous point, have the possibility to automatically detect existing installations of ReactOS (and of Windows) to allow simple upgrade. For this latter part I have code that almost works: it browses all the available partitions on all the disks, and for each, attempts to see whether either freeldr or ntldr is installed, and if so, open their respective configuration files, browse the latter, and from that, deduce the candidate NT installations. On the following screenshot : http://i.imgur.com/Nq67J1o.png , a Windows installation actually exists on “partition(1)” but is not listed because it happens to be on an NTFS partition. Then there is a ReactOS installation on a FAT “partition(2)”, and finally a Windows installation on another FAT “partition(4)” (all on the same disk). The installation detector has respectively parsed freeldr.ini, and boot.ini, to deduce the installations, and have removed installations having the same disk and partition numbers and SystemRoot (otherwise you would have seen many “ReactOS (xxx)” entries).
- To facilitate the future implementation of the 1st-stage GUI setup by someone, all the code that can be made common between USETUP and this future GUI setup, is placed into a library. At the time of writing, this concerns the so-called “generic lists” functionality as well as the partition lists & some file-system-related routines. It will certainly grow up later.
Cheers,
Hermès
P.S.: Using a 8x8 font for the installer quickly hurts the eyes (and it has been like that since ages). It would be great to use a more readable resolution / font size…