This tool is designed for creating bootable USB flash disks with ROSA Linux installator by dumping the distribution ISO image file contents to the flash disk. It might also work the same way for other Linux (or non-Linux) distributions, but there is no guarantee since the image must be prepared for such use.
The tool is distributed under the GPL v3 license which terms and conditions you can find in the file LICENSE.html.
Copyright © 2015 ROSA
Developed by: Konstantin Vlasov <konstantin.vlasov@rosalab.ru>, NTC IT ROSA LLC
Warning! This tool deletes all the data on the selected USB device, including the partition table (if any), so please be careful and check your actions twice!
The application requires direct access to the physical device, so when you start it, automatical request for Administrator/root privileges will appear. The application's main window looks like follows:
You need to select the source image file and the target USB flash disk where this image will be written. Press the Open button, and the Open file dialog will be shown where you can choose the appropriate image file. (Alternatively, you can specify the path to the ISO file as command-line argument.) The target device can be selected from the corresponding drop-down list. The list should update automatically when you insert or remove some device, but if it doesn't just press the
Refresh button.
Now you can press the Write button and after additional confirmation the writing will start, displaying the progress bar and the Cancel button for stopping the operation if you decided to abort it. Please, remember that even if you cancel writing, the files on the target device will be lost anyway, because the partition table and file system structures are located at the very beginning of the disk, and therefore become overwritten first.
Due to special structure of ROSA installation images, you may find it impossible to use the USB flash drive for storing data afterwards: the disk will be displayed as a very small device (like 5 MB or so). To clear you USB device and make it full-size again, press the Clear button. It will remove the partitioning data from the disk, and you will be able to format it to full capacity using any formatting tool you prefer. Actually, what's happening is this: for booting from UEFI firmware, there is a small EFI partition in the ROSA installation image. No other partitions are present, so operating system will display just this only partition as if it was the whole device. You can simply remove it using diskdrake, gparted, or any other partitioning tool, and then OS will see the disk's full capacity. However, many users find this confusing, and we decided to implement the clearing function right in the ImageWriter.
The project source code is publshed on the ROSA ABF server: https://abf.rosalinux.ru/captainflint/rosa-image-writer. You may either clone the repository or download the latest snapshot as tarball or ZIP archive.
For building ROSA Image Writer from sources, you will need Qt5 development environment for your operating system (download the binary package from Qt Project Downloads). Additional requirements (other configurations might also work, but were not tested):
If you plan to deploy the application, it is recommended to build static version of Qt from sources (see Qt documentation), otherwise you'll need to distribute the application with its dependent shared libraries and Qt plugins, which would increase the total size of the package.
Building the application is simple and straight-forward:
Just open the project file RosaImageWriter.pro
in the IDE, configure to use the correct Qt kit and build the program.
Open the Windows SDK command prompt. If your Qt installation is not in the PATH
environmebt variable add it there:
set PATH=%PATH%;C:\Programs\Qt\qtbase\bin
Go to the source directory of the project and run:
qmake
nmake Release
Open the MinGW command prompt, go to the source directory of the project and run:
qmake
mingw32-make Release
Go to the source directory of the project and run:
qmake
make
To build localizations, you will need to run lrelease
for each of the ts
file and put the resulting qm
files into the lang
subdirectory near the application executable. You may use the script build-translations to generate all the translation binaries at once. Usage (supposing the current directory is the project directory):
lang
subdirectory, simply use the lrelease
tool:$ lrelease RosaImageWriter.pro
> lrelease RosaImageWriter.pro
build-translations
script, specifying the target directory as the first argument (the lang
subdirectory will be created there); example:$ ./lang/build-translations ../RosaImageWriter-Desktop-Release
> lang\build-translations ..\RosaImageWriter-Desktop-Release
Minor bug fixes and improvements:
xdg-su
and beesu
.kdesu
could not always be found in KDE environments.kdesu
in KDE).libstdc++
(to avoid version mismatches).Minor bug fixes and improvements:
Minor bug fixes and improvements:
Starting with this version, Mac OS X is also supported (version 10.7 and higher). More detailed list of changes:
The major improvement of this version is complete Linux support. More detailed list of changes:
This version was rewritten from scratch using C++/Qt5 framework. Main differences from the previous version are:
Introduced minor UI improvements:
Copyright © 2015 NTC IT ROSA LLC