mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 10:22:45 +00:00 
			
		
		
		
	 7a8953a833
			
		
	
	
		7a8953a833
		
	
	
	
	
		
			
			This adds a new application PartitionEditor which will eventually be used to create and edit partition tables. Since LibPartition does not know how to write partition tables yet, it is currently read-only. Devices are discovered by scanning /dev for block device files. Since block devices are chmod 600, PartitionEditor be must run as root. By default Serenity uses the entire disk for the ext2 filesystem without a partition table. This isn't useful for testing as the partition list for the default disk will be empty. To test properly, I created a few disk images using various partitioning schemes (MBR, EBR, and GPT) and attached them using the following command: export SERENITY_EXTRA_QEMU_ARGS=" -drive file=/path/to/mbr.img,format=raw,index=1,media=disk -drive file=/path/to/ebr.img,format=raw,index=2,media=disk -drive file=/path/to/gpt.img,format=raw,index=3,media=disk"
		
			
				
	
	
		
			15 lines
		
	
	
	
		
			369 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			15 lines
		
	
	
	
		
			369 B
		
	
	
	
		
			CMake
		
	
	
	
	
	
| serenity_component(
 | |
|     PartitionEditor
 | |
|     TARGETS PartitionEditor
 | |
| )
 | |
| 
 | |
| compile_gml(PartitionEditorWindow.gml PartitionEditorWindowGML.h partition_editor_window_gml)
 | |
| 
 | |
| set(SOURCES
 | |
|     main.cpp
 | |
|     PartitionEditorWindowGML.h
 | |
|     PartitionModel.cpp
 | |
| )
 | |
| 
 | |
| serenity_app(PartitionEditor ICON app-space-analyzer)
 | |
| target_link_libraries(PartitionEditor LibMain LibGUI LibPartition)
 |