GRUB disc & in Windows installer.

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

Post Reply
JacobBrown1000
Posts: 5
Joined: Thu Jun 14, 2012 9:43 pm

GRUB disc & in Windows installer.

Post by JacobBrown1000 »

I have two suggestions for ReactOS that I think you could help me with:

First: I have had some trouble with Freeloader in the past and I don't quite understand why it's not in it's own project page. My idea is to offer a separate ISO for GRUB for those with issues using Freeloader or are committed to a dual boot with GRUB. I don't think it would be to hard to make the transition to an ISO using GRUB and this would free Freeloader to pursue a life as an alternative to GRUB outside of ReactOS as well.

Second: Windows discs have the option to run the installer within other editions, they can install Windows in another partition or offer an upgrade to an existing install. I would to investigate a similar option for ReactOS. I don't really know where to start but if you could give me a clue, I would get started on it. I think the upgrade option could be called (Upgrade to open source), and operate as a way to migrate Windows to ReactOS and as much as possible.

It has been a long time since I called myself a programmer and even longer since I worked in the PE format, so I will have to read up a bit for the last one. But I think it's doable.
PascalDragon
Posts: 123
Joined: Wed Aug 04, 2010 7:34 pm

Re: GRUB disc & in Windows installer.

Post by PascalDragon »

JacobBrown1000 wrote:First: I have had some trouble with Freeloader in the past and I don't quite understand why it's not in it's own project page. My idea is to offer a separate ISO for GRUB for those with issues using Freeloader or are committed to a dual boot with GRUB. I don't think it would be to hard to make the transition to an ISO using GRUB and this would free Freeloader to pursue a life as an alternative to GRUB outside of ReactOS as well.
Freeloader is an integral part of ReactOS like NTLdr is an integral part of any Windows NT system (or the newer counterpart in Vista+). So you can not simply replace it with a different bootloader, because Freeloader is responsible for loading the drivers which are marked as "start at boot" in the registry into the memory (examples of these are the disk and filesystem drivers). GRUB (or any other bootloader) can not do this.

What you can do though is simply boot Freeloader from GRUB. This is very easy as Freeloader (unlike its Windows counterpart) is Multiboot compliant. For instructions on booting Freeloader this way from GRUB you can look at the ReactOS Wiki
JacobBrown1000 wrote:Second: Windows discs have the option to run the installer within other editions, they can install Windows in another partition or offer an upgrade to an existing install. I would to investigate a similar option for ReactOS. I don't really know where to start but if you could give me a clue, I would get started on it. I think the upgrade option could be called (Upgrade to open source), and operate as a way to migrate Windows to ReactOS and as much as possible.
Once ReactOS has a GUI installer (which is more or less being worked on) it might be possible to extend this to support the installation from an existing Windows or ReactOS installation. "Upgrading" from a Windows to ReactOS is a far more tricky thing and also maybe not so often asked for, so I don't know how likely it is that this feature will be implemented.

Regards,
Sven
Free Pascal compiler developer
rembrandt
Posts: 88
Joined: Thu Oct 08, 2009 9:58 am

Re: GRUB disc & in Windows installer.

Post by rembrandt »

JacobBrown1000 wrote:...
Second: Windows discs have the option to run the installer within other editions, they can install Windows in another partition or offer an upgrade to an existing install. ...
The w32 installer of Windows basically is "just" a wizard which prepares an unattended installation. then the computer reboots, and the actual installation begins.
If the mechanism is implemented to do unattended installations, this installer could be built on top of that.
milon
Posts: 969
Joined: Sat Sep 05, 2009 9:26 pm

Re: GRUB disc & in Windows installer.

Post by milon »

I'm cautious by nature, so I have to ask: Would it be stepping on MS's toes to have a ROS Wizard that can scan a Windows build and migrate installed software/settings to a new ROS installation? I can't quite put my finger on why, but I feel like that could open a door to litigation.
SomeGuy
Posts: 586
Joined: Mon Nov 29, 2004 9:48 am
Location: Marietta, GA

Re: GRUB disc & in Windows installer.

Post by SomeGuy »

milon wrote:Would it be stepping on MS's toes to have a ROS Wizard that can scan a Windows build and migrate installed software/settings to a new ROS installation?
Not at all.

There are already tools out there for migrating settings between Windows, and some applications even have their own built in settings import/export tools for portability. They might even work under ReactOS eventually.

Well, Microsoft doesn't have to like it, but tough for them. :D

It is not an easy task though, and would require a lot of application compatibility testing. Even Microsoft has to tweak settings for compatibility, and even sometimes upgrade third party software behind the scenes for it to work (common with driver) It would only be feasible for ReactOS to do once it reaches a truly stable point.
JacobBrown1000
Posts: 5
Joined: Thu Jun 14, 2012 9:43 pm

Re: GRUB disc & in Windows installer.

Post by JacobBrown1000 »

Freeloader is an integral part of ReactOS like NTLdr is an integral part of any Windows NT system (or the newer counterpart in Vista+). So you can not simply replace it with a different bootloader, because Freeloader is responsible for loading the drivers which are marked as "start at boot" in the registry into the memory (examples of these are the disk and filesystem drivers). GRUB (or any other bootloader) can not do this.
I thought you had Freeloader to load some NTLDR close, so sorry for my confusion. NTLDR can operate as a simple program/system loader initialized bu GRUB, in other words GRUB can boot the NT kernel and start a shell then load NTLDR to finish things up. Freeloader seems to act more like a stage two bootloader in the example you give. This would not solve any errors caused by the immaturity of Freeloader. I have seen replacements for NTLDR, but no open source ones. So unless Freeloader can be altered to mimic NDLDR's reduced state, I don't see a way around thees issues. If you could tell me where the configuration file for Freeloader is and give me a list of the stages that it goes through, I can compare it with what I have in my NTLDR documentation and make better recommendations.

AS for my second idea, I think it might be better to create a script to replace as many Windows applications/components with ReactOS ones. My guess is that much of the core Windows system could be replaced using a fake Windows update script. This might be made more simple if we take a look at the tools used to install some malicious content, just for reference.

As for a graphical open source NT installer, take a look at: http://nsis.sourceforge.net/Main_Page http://nsis.sourceforge.net/Features It looks as though this could be of use to ROS as well.
JacobBrown1000
Posts: 5
Joined: Thu Jun 14, 2012 9:43 pm

Re: GRUB disc & in Windows installer.

Post by JacobBrown1000 »

NSIS also works as an application under other operating systems like Linux and Windows it's self.
PascalDragon
Posts: 123
Joined: Wed Aug 04, 2010 7:34 pm

Re: GRUB disc & in Windows installer.

Post by PascalDragon »

JacobBrown1000 wrote:
Freeloader is an integral part of ReactOS like NTLdr is an integral part of any Windows NT system (or the newer counterpart in Vista+). So you can not simply replace it with a different bootloader, because Freeloader is responsible for loading the drivers which are marked as "start at boot" in the registry into the memory (examples of these are the disk and filesystem drivers). GRUB (or any other bootloader) can not do this.
I thought you had Freeloader to load some NTLDR close, so sorry for my confusion. NTLDR can operate as a simple program/system loader initialized bu GRUB, in other words GRUB can boot the NT kernel and start a shell then load NTLDR to finish things up. Freeloader seems to act more like a stage two bootloader in the example you give. This would not solve any errors caused by the immaturity of Freeloader. I have seen replacements for NTLDR, but no open source ones. So unless Freeloader can be altered to mimic NDLDR's reduced state, I don't see a way around thees issues. If you could tell me where the configuration file for Freeloader is and give me a list of the stages that it goes through, I can compare it with what I have in my NTLDR documentation and make better recommendations.
This is not correct. When you boot Windows NT based OS with GRUB you basically tell GRUB to pass control to the bootloader of the partition where Windows is installed ("chainloading"). GRUB does NOT load ntoskrnl (the NT kernel) by itself. It's ALWAYS NTLDR that does this which also is the one responsible for loading all boottime drivers from the disk to RAM. GRUB is not able to boot a NT OS by itself.
Please note that you can boot ReactOS the same way as you boot a Windows by chainloading the partition where FreeLdr is installed. It's a feature of ReactOS' FreeLdr that it can also be booted using the multiboot approach. So FreeLdr can even be considered superier to NTLDR.

Regards,
Sven
Free Pascal compiler developer
JacobBrown1000
Posts: 5
Joined: Thu Jun 14, 2012 9:43 pm

Re: GRUB disc & in Windows installer.

Post by JacobBrown1000 »

Well I don't know, my degree was in UNIX back when NT was in bata testing. All that said it looks like I will have to do all my testing on the one and only computer I was able to load ReactOS on. All the rest fail in one way or another during boot. Unless it's possible to use my Windows install to boot ROS directly with NTLDR and not Freeloader.

So any one look at the installer NSIS?
SomeGuy
Posts: 586
Joined: Mon Nov 29, 2004 9:48 am
Location: Marietta, GA

Re: GRUB disc & in Windows installer.

Post by SomeGuy »

Most of the issues booting ReactOS come well after the freeldr stage, usually when loading drivers. The only freeloader issue I know of is a problem reading boot files above 4 gigabytes in a drive (not sure if that has been fixed, haven't checked lately).

Common boot issues come from UniATA not recognizing an ever increasing number of newer disk controllers. Make sure IDE emulation is enabled. Trunk may currently hang during boot if a USB flash drive is attached on certain controllers, so unplug flash drives or disable USB in BIOS. The VESA VBE video controller may crash if the video card is not VESA compatible, check compatibility or select VGA during setup. ACPI seems fairly stable these days but it is also an option during setup.
Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: GRUB disc & in Windows installer.

Post by Z98 »

What relevance is NSIS in booting or installing an OS?
JacobBrown1000
Posts: 5
Joined: Thu Jun 14, 2012 9:43 pm

Re: GRUB disc & in Windows installer.

Post by JacobBrown1000 »

Installation, you can build a graphical install script based on it. It worked for me, the only issue is you have to make a new script for each install. It works from within Windows and Linux to.
Z98
Release Engineer
Posts: 3379
Joined: Tue May 02, 2006 8:16 pm
Contact:

Re: GRUB disc & in Windows installer.

Post by Z98 »

An application installer and an OS installer are two very different things.
Post Reply

Who is online

Users browsing this forum: Bing [Bot] and 43 guests