Opened 10 years ago

Closed 9 years ago

#4425 closed enhancement (fixed)

Bootman needs to be accessible from the installer

Reported by: myob Owned by: stippi
Priority: normal Milestone: R1/alpha2
Component: Applications/Installer Version: R1/pre-alpha1
Keywords: Cc: prognathous@…, beos344@…
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Currently the installer doesn't let you install Bootman - and you can't get the Terminal or Tracker up by shortcut keys / team monitor... if you want to use bootman you need to reboot in to LiveCD mode to install it.

This could prove problematic / needlessly complicated for new users who use Windows or another OS with a not particularly easy/sensible bootloader.

Attachments (4)

InstallerFinish.diff (705 bytes) - added by BeSman 9 years ago.
This is a patch to InstallerFinish script which allow ask to install our boot manager after installation
Installer.diff (3.2 KB) - added by BeSman 9 years ago.
This is a patch which allow access to Bootman directly from installer
InstallerExhance.diff (7.0 KB) - added by BeSman 9 years ago.
This patch add Installer features asked by stippi
bootman.dff (540 bytes) - added by BeSman 9 years ago.
Patch for bootman makes it not minimizable. I did that for reason if user double-click it when deskbar not launched bootman dissapear and not restore

Download all attachments as: .zip

Change History (18)

comment:1 Changed 10 years ago by mmadia

Component: - GeneralApplications/Installer
Milestone: R1R1/alpha1
Owner: changed from axeld to korli

comment:2 Changed 10 years ago by scottmc

Milestone: R1/alpha1R1/alpha2

comment:3 Changed 10 years ago by Prognathous

Cc: prognathous@… added

Changed 9 years ago by BeSman

Attachment: InstallerFinish.diff added

This is a patch to InstallerFinish script which allow ask to install our boot manager after installation

comment:4 Changed 9 years ago by stippi

As I've already tried to explain on the mailing list, I would rather see this solved in the Installer application. If for no other reasons: 1) Installer is already localized, it isn't nice to run a localized Installer and then have the alert pop up in English. 2) I would really like to be able to boot from a Haiku CD, and from within Installer, install the boot menu, *without* performing an installation. Also a note on the patch: Never use Yes/No in any alert. Always use descriptive labels, in this case it would be "Install boot menu" and "Skip this step".

comment:5 Changed 9 years ago by stippi

BTW, to add the boot menu installation to the Installer isn't actually hard at all. The main reason why I haven't done that yet is that our boot manager will not install on any machines I own, and it didn't install on a friends notebook either. It always claims there is not enough room after the MBR. Even when I specifically instructed my friend to create the first partition with an offset to leave room for the boot menu. I don't see the value in adding this option to Installer, when the boot manager itself appears to be not usable yet.

comment:6 Changed 9 years ago by BeSman

Cc: beos344@… added

Our bootman works well, problems exists if we make an partition with DriveSetup incorrectly. After many tests (Vmware 7, new clean virtual disk, Haiku 35654) I found the right sequence: 1) Launch DriveSetup for Installer and choose device like /dev/disk...raw 2) Chose Partition->Initialise->Intel Partition map. Write Changes on the disk 3) Now we have an empty partition entry. Select it first and then Partition->Create... Dont forget to make it Active. Write Change on the disk 4) Select created partition which looks like /dev/disk.../0 and Partition->Initialise->Be File System...Write Changes on the disk Now install Haiku and try to launch bootman.

Changed 9 years ago by BeSman

Attachment: Installer.diff added

This is a patch which allow access to Bootman directly from installer

comment:7 Changed 9 years ago by stippi

Owner: changed from korli to stippi
Status: newin-progress

Thanks, this is what I meant. You could still improve the patch:[BR]

  • Find out if Bootman doesn't have an application signature, as a graphical application, it should have one.
  • Launch Bootman by signature, just like DriveSetup.
  • Maintain a state of whether Bootman is running, and enable the button accordingly. Also prevent quitting the Installer as long as Bootman is running, same as with DriveSetup.
  • Look into Bootman source, and modify the minimizability of the window according to whether Deskbar is running. Otherwise if the user double clicks the window tab, the window will be gone with no way to retrieve it. Both Installer and DriveSetup should have code for how to do this.
  • Modify the Welcome Installer text, to mention that Bootman will be offered. Currently, it says that there will be no steps taken to integrate Haiku into an existing boot menu.
  • Last but not least, display an alert warning the user that Bootman is experimental and may not work.

This list looks like a lot, but it's actually only details, with examples of how to do it in the existing code. If you don't have time to work on this, just say, I will then try to take care of it.

comment:8 Changed 9 years ago by BeSman

Hi stippi, Im already working on improvments what you requested and hope provide new patch in evening, but I have a couple questions.1) We really need to check a deskbar state in bootman, maybe best to do it simply not minimizable...2) Alert warning that Bootman is experimental, and may not work...As I said before bootman works well, but creating partitions with our DriveSetup is bit tricky, and if you do it incorrectly, any bootman will fail, BeOS boot managet fails too for example

Changed 9 years ago by BeSman

Attachment: InstallerExhance.diff added

This patch add Installer features asked by stippi

Changed 9 years ago by BeSman

Attachment: bootman.dff added

Patch for bootman makes it not minimizable. I did that for reason if user double-click it when deskbar not launched bootman dissapear and not restore

comment:9 Changed 9 years ago by stippi

Thanks for the new patch, but I don't agree with the changes how you detect what applications are running. If for example Bootman or DriveSetup are aready running when Installer starts, this situation will now be broken. Also, since the B_SOME_APP_LAUNCHED messages arrive totally independent of what Installer itself does, you cannot match these messages to what you did before. The code as it was before was correct, you just need to "duplicate" it for Bootman.

comment:10 Changed 9 years ago by BeSman

Cc: beos344@… removed

Previous code was not correct, and that a reason why I changed it. In the case when DriveSetup signature is incorrect or not avalible, all your launch-checking code will not work (change DRIVESETUP_SIG to something for test that case)

comment:11 Changed 9 years ago by BeSman

Cc: beos344@… added

comment:12 Changed 9 years ago by stippi

The signatures are supposed to match, and then the code should work. At least I remember it working. Once an application has a signature assigned, it's not supposed to change. Also note that if the signature is wrong, then launching the app by signature wouldn't have worked in the first place.

comment:13 Changed 9 years ago by stippi

Working on this now.

comment:14 Changed 9 years ago by stippi

Resolution: fixed
Status: in-progressclosed

Implemented in hrev36482. I did not end up using the supplied patches, some reasons are given above. BeSman, you can also compare the commit patch to see the differences which I thought were necessary. Thanks for your work, though, I hope you are not discouraged and sorry it took me so long to finally integrate the changes into trunk. Your patches were certainly a good help along the way.

Note: See TracTickets for help on using tickets.