Replies: 11 comments 1 reply
-
|
this is out of scope of cosmos it self, but i would support a 1st party package that makes this easy |
Beta Was this translation helpful? Give feedback.
-
|
If you want to boot from .vmdk or other disk image, you can find info about convertation .iso image to virtual disk image. Also in this repository has UsbDeployer, but it's not working for some reasons. Maybe in next gen developers fix that trouble. |
Beta Was this translation helpful? Give feedback.
-
|
I didn't work much with Cosmos, but if the Cosmos iso file is bootable on the hard drive, then another independent operating system can be written as an installer (I think it should be written with assembly, because if I'm not mistaken, Cosmos doesn't have that much access on the hard drive) to install the operating system files on the hard drive so that they can be loaded from the hard drive later. It means something like installing an operating system. However, this method works when Cosmos has full authority over system files and disks. |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the help! However adding a bit more control over the drive with Cosmos while adding this function would be honestly a great idea! This might be pretty complex tho, and I can't implement that since I am way more experienced with native C# high-level stuff |
Beta Was this translation helpful? Give feedback.
-
cosmos Gen 2 and 3 have the low level apis that allow this |
Beta Was this translation helpful? Give feedback.
-
|
@zarlo I know there are low level APIs, what I want is a function that easily does this and installs the OS to the drive safely, like "VFSManager.DeployOS()" or "InstallOS()" |
Beta Was this translation helpful? Give feedback.
-
Of course, assembly may not be needed. When I was using Cosmos (I don't remember the version), it had a problem, it only read files, which means it couldn't write. Maybe not like this now. Can you make a trial version and boot it on the flash drive and check that you can change the files on the hard drive through the commands you defined for it? Or delete and add? Did you search the directories? If this is possible, then you can write a separate operating system as an installer that will format your hard drive and copy your operating system files to it. |
Beta Was this translation helpful? Give feedback.
-
|
It is possible to do so actually, you have to create a new partition and write all the ISO bytes directly there (Be aware that you can't use that partition to access files as it gets turned into "Read-Only", so you'll need another one to store configuration files and more) If the system doesn't have UEFI you might need to install something like Limine in the MBR so it can run the 2nd stage loader from the new partition. I have a tool for it if you want to see how the concept looks like in code (Cosmares) but i don't recommend it if you have different disk types (e.g. IDE for the disk drive and SATA for the hard disk), In Gen 3 the disk drivers might work better tho |
Beta Was this translation helpful? Give feedback.
-
|
So what I want is an easy way to get Limine installed on the drive. I think I can probably handle the file copy and everything else myself. Copying the essential stuff to the file system is enough once you install Limine, since it will find the files and boot from the BIN file. |
Beta Was this translation helpful? Give feedback.
-
|
Is anyone gonna reply or what? Or it's time to close the topic? |
Beta Was this translation helpful? Give feedback.
-
|
Nevermind I realized we should use discussions for this kind of stuff. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Cosmos is great. Like in my opinion, Cosmos is almost perfect for developing your own OS easily and painlessly. But there's still one more feature missing: ACTUALLY installing the OS.
I know you can make an installer that puts your config files on the file system, but no, it doesn't ACTUALLY install the OS on the hard drive. You still need to boot from ISO to actually use the OS.
So what I want is a method like "VFSManager.DeployOS()" or "InstallOS()" that will put the "HerbOS.bin" (HerbOS is my Cosmos OS) or "MyGreatOS.bin" (or whatever your OS is called) file on the hard drive and sew the Limine bootloader onto the MBR.
It would really help with development, but you don't have to make the method mandatory. And I am very well aware of Gen3, but I am not planning to switch because x86 support is deeply important for me and I am already OK with Gen2.
Beta Was this translation helpful? Give feedback.
All reactions