id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,field_blocks,field_dependson,field_seealso 185,HelenOS installer,Jakub Jermář,,"Create a set of applications that would install HelenOS on a hard disk from within HelenOS. Details:: The installation should consist of several independent steps such as installing the boot loader, editing the partition table and creating and populating the target file system. The installer should interactively guide the user through the installation process and ask the user for details whenever more installation options emerge such as when there are more potential target disks detected or when the user might want to choose the type of or edit the partition table on the target disk or when there are more file systems to choose from. The installer can be a command line utility or it can use text pseudo graphics. Even though the installer currently makes the biggest sense for the amd64 and ia32 platforms, the installer should anticipate future extending to other platforms supported by HelenOS. This basically means the installer architecture should allow for other installation methods, other partition table types and/or other file system creators to be added later. This project is closely related to the following tickets that should be considered its integral parts: #127 Partition editor #129 Bootloader install The installer should be able to install HelenOS on a system without any other operating system installed on it or add itself to some spare disk partition or disk and coexist with some other operating system installation. The idea is that after the installation it is possible to boot into the new HelenOS system created by the installer. What Gains and Benefits will this bring?:: Traditionally, HelenOS is run in the form of a live CD image or a net-boot image or can even boot off a hard disk, but one cannot easily install it at the moment. Now that HelenOS has supported permanent storage, it makes sense to make another step towards to the long-term goal of becoming self-hosting. Difficulty:: medium Required skills:: A successful applicant will have good skills of programming in the C language and the ability to survive in a non-standard non-POSIX application environment. Documentation:: The various partition types supported by HelenOS are described here. The non-standard string library is documented in this knowledge article. See the '''mkfat''' application for an example of a file system creator. See the '''mbr_part''' and '''g_part''' servers for example of code that deals with various partition types.",task,new,major,0.5.0,unspecified,mainline,,gsoc,,,,