Jump to content











Photo
- - - - -

[project] ReactOS Live CD


  • Please log in to reply
18 replies to this topic

#1 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 01 December 2006 - 07:42 PM

This project will create a boot disk ISO image based on a ReactOS Live CD.

More informations about ReactOS can be found here along with some screenshots.

At this moment the goal is to demonstrate how to automate the process of extracting all files from the ISO that is automatically downloaded onto a folder, apply scripts to tweak user settings and add programs - followed by the recompilation of this folder into ISO format again.


RosProject.PNG
Attached File  ReactOS_ScriptProject.zip   358.63KB   1411 downloads version 002

The resulting ISO is not tweaked yet, but should be a good starting ground to make improvements or just to try out other options. I really like the idea of using a free operative system and perhaps this way more people can get to know and use it..


How to install?

- If you're using Winbuilder 052 or smaller, follow the minimum requirements
- Download the above file and extract all contents as a sub folder on the Projects folder inside WinBuilder
- Add the project on winbuilder - how to..
- Press the run button



Minimum Requirements:

If you're using WinBuilder 052 you'll need to add cdmake inside your Tools folder on winbuilder - download link

As an alternative you don't need to use cdmake and can always use mkisofs to produce your ISO, just place it inside the ReactOS\Create folder and remove or disable "CDMake.Script"
Attached File  MkISOfs.zip   6.05KB   864 downloads

It's also adviced to use WinBuilder 053 beta 4, otherwise it will still work but you won't see the download progress..



Hope you have fun and enjoy this OS.. :P

Edited by Nuno Brito, 04 December 2006 - 01:34 PM.


#2 edborg

edborg

    Frequent Member

  • .script developer
  • 387 posts
  •  
    Italy

Posted 04 December 2006 - 10:02 AM

I've downloaded the project and run it in WB053 beta5 with no changes, and got the attached error. :P
I haven't looked into it yet, to try and see what's wrong. :P
edborg

ADDED: I've run it againg, and it works!!!
One has to be quick enough to hit a key when in qEmu, to have it boot from CD...

Attached Thumbnails

  • error.jpg


#3 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 04 December 2006 - 10:14 AM

Still need to figure where to remove the option to "Press any key.." :P

#4 TheHive

TheHive

    Platinum Member

  • .script developer
  • 4199 posts

Posted 04 December 2006 - 12:21 PM

THe process to download seems to occur but when it goes to running it in qemu nothing happens. Qemu doesnt come up. Using Winbuilder 53 build 5 and added cdmake inside Tools folder.

Directory structure in Wuilbuilder projects.
ReactOS.7z
script.project
Build
Create


Log


#5 edborg

edborg

    Frequent Member

  • .script developer
  • 387 posts
  •  
    Italy

Posted 04 December 2006 - 12:57 PM

@Nuno

The mistery goes on! :P :P :P
I thought everything had been made clear, as reported here, but now, working with the files in the folder generated by the project, I can't make a bootable ISO with MkISOfs. :P

As you succeeded re-creating an ISO with CDMake and MkISOfs, could you add a script which uses MkISOfs to create it?
I'd like to examine it to definitely understand what happens.
This is not a top priority, of course! :P
edborg

Attached Thumbnails

  • error.jpg


#6 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 04 December 2006 - 01:08 PM

Looking at your log I see that the files were not extracted to reactos\ReactOS-liveCD, on the project folder unpack ReactOS.7z into a folder called ReactOS-LiveCD. Keep the the 7zip file to avoid downloading a new one.

This should get your ISO built - but doesn't explain the reason why the files aren't expanded from 7z.exe in the first place. Anyone has any more ideas?

Directory structure in ReactOS project:
ReactOS.7z
script.project
Build
Create
ReactOS-LiveCD



btw: Looking better at reactOS, the hive files are simple INF files wich can be compiled whenever we wish, this is very usefull to avoid all the hassle of loading/unloading hives, I include a sample of my files - it really has potential.. :P

Attached File  Tools.zip   52.06KB   787 downloads


I'll post some ISO's when I get more familiar with this OS, ROS has the advantage of being open source so we're free to publish them as well.. :P

#7 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 04 December 2006 - 01:18 PM

@Nuno

The mistery goes on! :P :P :P
I thought everything had been made clear, as reported here, but now, working with the files in the folder generated by the project, I can't make a bootable ISO with MkISOfs. :P

As you succeeded re-creating an ISO with CDMake and MkISOfs, could you add a script which uses MkISOfs to create it?
I'd like to examine it to definitely understand what happens.
This is not a top priority, of course! :P
edborg


It really seems that your files are not being extracted as necessary, inside ReactOS.7z is the whole file structure - I've noticed that a few unzip program will ignore empty folders, but we need those empty folders to be placed inside the ISO otherwise an error like this will occur.

The syntax I've used for mkisofs was:
mkisofs -v -J -R -D -A "LiveCD" -V "LiveCD" -no-emul-boot -b isoboot.o -c isoboot.boot -o ros.iso ReactOS-LiveCD

Please note that I'm using isoboot.o as boot sector placed inside the root of target folder.

I haven't yet scripted this syntax, but you should be able to do it yourself using the command line to see what goes wrong - I'm guessing your troubles are actually coming from the folder structure.

I hope this helps, good luck with ROS.. :P

#8 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 04 December 2006 - 01:36 PM

Added a mkisofs.script for ROS on the first post.. :P

#9 edborg

edborg

    Frequent Member

  • .script developer
  • 387 posts
  •  
    Italy

Posted 04 December 2006 - 05:42 PM

It really seems that your files are not being extracted as necessary, inside ReactOS.7z is the whole file structure - I've noticed that a few unzip program will ignore empty folders, but we need those empty folders to be placed inside the ISO otherwise an error like this will occur.

The syntax I've used for mkisofs was:

mkisofs -v -J -R -D -A "LiveCD" -V "LiveCD" -no-emul-boot -b isoboot.o -c isoboot.boot -o ros.iso ReactOS-LiveCD

Please note that I'm using isoboot.o as boot sector placed inside the root of target folder.

I've finally found the reason of the mistery that was making me crazy! :P
The problem was neither with the extraction, nor with the bootsector, everything was right.

The problem was MkISOfs syntax.
In the script, you haven't used the one posted above, but the following:
mkisofs -iso-level 4-force-uppercase -volid LiveCD -b isoboot.o -no-emul-boot -boot-load-size 4 -hide isoboot.o -hide boot.catalog -duplicates-once -o ros.iso ReactOS-LiveCD
and this way it works. :P

edborg

#10 edborg

edborg

    Frequent Member

  • .script developer
  • 387 posts
  •  
    Italy

Posted 04 December 2006 - 05:49 PM

Still need to figure where to remove the option to "Press any key.." :P

This also is a matter of syntax, which is solved with this change:

[process]
if,%pCheckBox1%,equal,True,set,%usb%,"#$s-usb"
if,%pCheckBox2%,equal,False,set,%kqemu%,"#$s-no-kqemu"
if,%pCheckBox2%,equal,True,set,%kqemu%,"#$s-kernel-kqemu"
if,%pCheckBox3%,equal,True,set,%fullscreen%,"#$s-full-screen"
if,%pCheckBox4%,equal,True,set,%uselocaltime%,"#$s-localtime"
if,%pCheckBox5%,equal,True,set,%audio%,"#$s-soundhw#$ses1370"
echo,"Running %burnISO% in qEmu.."
ShellExecute,"hide",#$q%Tools%\qEMU\qEmu.exe#$q," -boot d -m %pNumberBox1% -hda #$q%Tools%\qEMU\hdd.img#$q -L #$q%Tools%\qEMU#$q -cdrom #$q%ISOfile%#$q%usb%%fullscreen%%uselocaltime%%kqemu%%audio%"

edborg

#11 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 04 December 2006 - 05:49 PM

Sorry for the mixup... :P



Glad you've solved it! :P

#12 TheHive

TheHive

    Platinum Member

  • .script developer
  • 4199 posts

Posted 04 December 2006 - 06:18 PM

After manually extracting to ReactOS-LiveCD folder and running the Project again. ReactOS boots up.

#13 Yorn

Yorn

    Frequent Member

  • Advanced user
  • 178 posts
  • Location:United States

Posted 04 December 2006 - 10:01 PM

qEmu doesn't seem to be running for me...

Attached Files

  • Attached File  log.html   2.73KB   647 downloads


#14 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 04 December 2006 - 10:33 PM

This script seems to be running fine, the reason for this problem can likely be found on the rest of the project - can you please completely delete your folder reactOS project and then unpack it again?

I think it might likely be a corrupted download - need to add some MD5 checking to downloaded files, perhaps inside the webget command.

This way will repeat the download of reactOS.7z into your project folder.

Please repeat the process from the begining and then if this persists, place the log for the whole project, this will help to understand what is going wrong.


To work:

makeISO will use a Target folder sized in 62,9Mb with 473 files and 17 folders.

Might also be worth to check on a path without spaces.


Good luck! :P

#15 edborg

edborg

    Frequent Member

  • .script developer
  • 387 posts
  •  
    Italy

Posted 05 December 2006 - 08:14 AM

This script seems to be running fine ...........

To work:

makeISO will use a Target folder sized in 62,9Mb with 473 files and 17 folders.

That's right! :P
Now that we (finally! :P ) can extract the ReactOSLiveCD.ISO to a folder, recreate a booting ISO from there and run it in qEmu, how can we add programs to the OS or otherwise tweak it without losing changes?

edborg

#16 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 05 December 2006 - 10:51 AM

...how can we add programs to the OS or otherwise tweak it without losing changes?


ReactOS allows to recreate their registry hives in INF format - they are made using a tool called mkhive, meaning that we can write all registry values onto inf files and then just recompile the hives ready for deployment..

In the link below are all the necessary tools for this task:
http://www.boot-land...?...post&p=6013
(they were also posted previously, but I forgot to futher explain this feature)


I think we've learnt enough from the standard and picoXP projects to understand how to make things work more efficiently, so the next step could be adapting the buildmodel from psc to be used both for PE and ROS based boot CD's.. :P

#17 edborg

edborg

    Frequent Member

  • .script developer
  • 387 posts
  •  
    Italy

Posted 05 December 2006 - 12:01 PM

ReactOS allows to recreate their registry hives in INF format - they are made using a tool called mkhive, meaning that we can write all registry values onto inf files and then just recompile the hives ready for deployment..

In the link below are all the necessary tools for this task:
http://www.boot-land...?...post&p=6013
(they were also posted previously, but I forgot to futher explain this feature)

Thanks, I had missed that post, sorry for asking again. :P
edborg

#18 Yorn

Yorn

    Frequent Member

  • Advanced user
  • 178 posts
  • Location:United States

Posted 05 December 2006 - 02:02 PM

ok that could be it. none of the scripts that use wget have been working for me lately. I think it's because i have an older version already installed maybe.

#19 Brito

Brito

    Platinum Member

  • .script developer
  • 10616 posts
  • Location:boot.wim
  • Interests:I'm just a quiet simple person with a very quiet simple life living one day at a time..
  •  
    European Union

Posted 05 December 2006 - 02:21 PM

ok that could be it. none of the scripts that use wget have been working for me lately. I think it's because i have an older version already installed maybe.


Your post was really usefull to understand that it is necessary to add MD5 validation, thank you! :P




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users