1
1
Fork 0
mirror of https://github.com/pbatard/rufus.git synced 2024-08-14 23:57:05 +00:00
Commit graph

122 commits

Author SHA1 Message Date
Pete Batard
032d4413c8 [togo] Add Windows To Go support - part 2
* Closes #126
* Only supported on Windows 8 or later for now
* Also fix MinGW and WDK compilation issues
2015-01-16 01:53:24 +00:00
Pete Batard
295650a8b4 [togo] Add Windows To Go support - part 1
* Add apply support to WIM image handling
* Requires Windows 8 or later (Windows 7+ for WIM API support but Windows 8+ for ISO mount)
* Also fix an issue for Windows 7 x64 EFI mode
2015-01-15 01:45:10 +00:00
Pete Batard
99c24d6c88 [iso] add ISO mounting capabilities for Windows 8 or later 2015-01-14 00:51:41 +00:00
Pete Batard
3444a48fce [ui] display ToGo radio selection according to ISO content
* Also simplify EFI detection and reporting
2015-01-13 02:11:57 +00:00
Pete Batard
2e817ae944 [misc] pocketful of enhancement and fixes - part 1
* Add a cheat mode for VMWare disk detection
* Add a cheat mode to delete the rufus_files directory
* Don't attempt a grub2 download in case we couldn't read the version
* Don't use a shared message buffer between info and status and also
  use a more logical handling of low pri/high pri and timeout
* Also fix unwanted selection of info text on restore from minimize
* Also fix the localization generation and add more messages
2015-01-08 00:22:56 +00:00
Pete Batard
a327bb114c [ui] Remove the separate progress dialog
* Closes #125
* Also provide more intuitive info for bad blocks check
* Also update Bled to latest to enable cancelling
2015-01-01 23:39:28 +00:00
Pete Batard
e90eaa4abc [grub] add GRUB 2.0 versioning and enable external core.img download
* Closes #419
* Also updated Bled to latest
2014-12-30 19:46:13 +00:00
Pete Batard
2faf36ffb4 [core] add FreeNAS support
* And reverted grub2 to the one from b3947fc026 (reverts commit 8b47e95eb5)
  since FreeNAS doesn't work with the older one.
  Sorry "Super Grub2 Disk" and other older GRUB2 based tools, but you'll need to
  update the Grub version you use if you want to be compatible with Rufus.
* Closes #244
2014-12-16 23:28:07 +00:00
Pete Batard
6b433c7fc0 [iso] fix sanitization of paths during ISO during extraction
* Also add sanitization for Syslinux downloaded content
* Also factorize printout of extracted file
* Closes #397
2014-11-20 23:00:59 +00:00
Pete Batard
b3947fc026 [grub] add Grub 2.0 support
* Also moves secondary Grub boot record as a resource
* Also fix a typo in README.txt and update signtool path
* Closes #340
2014-11-17 23:41:46 +00:00
Pete Batard
306191fb85 [grub] add Grub4DOS support
* Also adds some stubs for Grub 2.0
* Also add a note about VS2013 CE in the readme
* Addresses the first part of #340
2014-11-14 23:46:56 +00:00
Pete Batard
c6fee8709e v1.4.12 (build 535)
* Also address a memory leak in fix_syslinux()
2014-11-09 19:56:40 +00:00
Pete Batard
55a5eb07e7 [iso] fix handling of label-based ISOs
* Linux has a MAJOR quirk in that labels such as "Contains Space"
  get converted to "/dev/disk/by-label/Contains\x20Space".
* While Rufus already had smart label Syslinux handling (by replacing
  the ones found in isolinux.cfg to their more limited FAT32 version)
  there was absolutely NO WAY of guessing this quirk until ISOs
  such as Red Hat 7 or CentOS 7 started to use spaces in their ISO
  labels and people reported breakage!
* This commit also fixes an issue where psz_fullpath was modified when
  it shouldn't, which broke Debian 7.7.0, and most likely any ISO
  containing a subdirectory in the directory where a syslinux/isolinux
  config file is located.
* Closes #396
* Closes #394
* Closes #388
* Closes #380
2014-11-07 23:57:17 +00:00
Pete Batard
0c9c7a9569 [syslinux] fix dual EFI+BIOS support for tails and other ISOs
* Closes #381
2014-10-29 02:00:46 +00:00
Pete Batard
0fceb38433 [syslinux] fix tails breakage and add support for fine grained versions
* With that obscene an amount of pre-releases of 6.03 (seriously, how
  many more YEARS pre-release of the same version do you actually need?),
  of course the syslinux people have managed to break the last remnants
  of compatibility they had between a single major version, so we are now
  forced to provide a smorgasbord of pre-release and out of band syslinux
  binaries on our server, and make sure we detect and handle incompatible
  syslinux versions clientside...
  For instance, even after fixing the EFI vs isolinux issue, we find
  that tails 1.1 is incompatible with 'pre19'. But it also uses its own
  '20131220' extended identifier, instead of 'pre1', its closest
  relative. So we have to multiply files and symbolic links to try to
  keep everybody happy.
  Talk about a MAJOR LETDOWN from the syslinux project...
* Closes #363
2014-08-06 01:52:36 +01:00
Pete Batard
9df63b3b2a [loc] update translation base to v1.0.12
* Also change UM_ISO_ constants to the more generic UM_PROGRESS_
2014-05-19 23:25:00 +01:00
Pete Batard
b6bc17b7f4 [core] add KolibriOS support
* Closes #331
2014-05-15 21:17:12 +01:00
Pete Batard
266599e6fd [misc] fix various Coverity issues
* update DLL load/unload
* fix resources not being freed and potentially unsafe calls
* add extra checks
2014-05-10 22:20:22 +01:00
Pete Batard
f78eb4de99 [misc] fix FAT32 cluster boundaries and add cheat mode to force DD
* Closes #310
* Alt-I can now be used to disable ISO support. This is meant to be
  used for dual ISO/DD images so that DD (disk image) mode will be used
* Also issue a message in the log to indicate whether slow or quick format is used
* Also change the cheat mode keys for force update and proper unit to C and U
2014-04-13 16:13:59 +01:00
Pete Batard
94ce19d11f [ui] display size in the dropdown entry
* Also remove the "(Default)" from the FS selected, in the log messages
2014-03-01 00:09:40 +00:00
Pete Batard
b83b087b52 [misc] factorize SizeToHumanReadable() and ensure log sizes are in English
* Also use an allocated buffer for DD operations
2014-02-17 23:15:09 +00:00
Pete Batard
1757e6f081 [iso] fix a libcdio memleak for RR symlinks
* Also handle symlinks more gracefully by telling the user that they are ignored
* Also tell the user which extensions will be used on extraction
2014-02-13 21:25:34 +00:00
Pete Batard
cd4dd3cc47 [img] add a retry for DD Images
* Also try to ignore autorun.inf issues from idiotic antivirus solutions, when writing ISOs
* Also remove the columns in the English labels (improves high DPI display)
* Also update additional ISO related messages to make them more generic
2014-02-09 23:38:16 +00:00
Pete Batard
89a7a3deb1 [core] add uncompressed DD image support
* Also fix an issue with hotplug due to WM_DEVICECHANGE being filtered out
* Also improve AnalyzeMBR() and prevent failure on WriteMBR
* Also fix a couple issues with ISO and Syslinux handling
* Also remove "smart" uncheck of disabled checkboxes - not worth it
2014-02-09 02:54:07 +00:00
Pete Batard
7d1a3d82cc [syslinux] improve handling of 4.x C32 files
* Download the files from files/syslinux-4.07 on the server
* Save local copy in rufus_files/syslinux-4.07
* Move menu.c32/vesamenu.c32 check to BootCheck()
2014-02-04 20:01:28 +00:00
Pete Batard
2577337dec [misc] right-to-left and version handling improvements
* Improve right-to-left consistency and handling
* Drop 'v' from version indicators
* Also update version to 1.4.4
* Also fix French translation typos
2014-01-24 20:02:52 +00:00
Pete Batard
3c2873bbdc [syslinux] fix missing syslinux.cfg creation
* Issue was introduced with 299506056a
* Also improve StrArray definition
2014-01-22 01:28:25 +00:00
Pete Batard
3ae7ec4af5 [core] detect, report and warn when multiple partitions are in use
* Closes #191
* Also fix various minor warnings
2014-01-21 23:09:30 +00:00
Pete Batard
299506056a [syslinux] fix support for recent Syslinux versions
* Detect Syslinux version from isolinux.bin (Closes #272)
* Download required Syslinux v5+ files where needed (Closes #165)
* Also fix an issue where using a Syslinux based ISO didn't switch to ISO mode
* Also alter DownloadFile and ExtractISOFile to return a size
2014-01-21 21:59:09 +00:00
Pete Batard
e9e27d7034 [core] add ReactOS support
* Use Syslinux v4 and mboot.c32 to chainload setupldr.sys
* Closes #266
2014-01-02 23:21:30 +00:00
Pete Batard
24e73c5e10 [efi] set UEFI mode when a pure EFI ISO is selected
* Closes #168
* Also fix various VS Code Analysis warnings
2013-12-22 20:48:57 +00:00
Pete Batard
56c6b15feb [core] (re)add a retry when writing ISO files
* Fixes the issue that caused a revert of 0206e2036e
  (in c93798b877). The issue was that an active index
  was being reused and modified, for ISO9660 images, which could wreck havoc when
  writing the data blocks.
* Closes #176 (again)
2013-12-06 23:31:41 +00:00
Pete Batard
c93798b877 [oops] revert write retry as it breaks Syslinux
* This reverts 0206e2036e
* Closes #240
2013-12-05 11:43:49 +00:00
Pete Batard
0206e2036e [core] add a retry when writing ISO files
* Closes #176
* Also fix a crash when displaying an error message (MSG_043 requires a parameter)
* Also display an informative message on interfering security solutions when writing an autorun.inf
* Also revert x64 MSVC target to non-XP so that it can be used for Code Analysis
2013-11-17 22:24:50 +00:00
Pete Batard
7d2519675c [iso] ignore extra nameless files on some UDF images
* Closes #155
2013-10-30 20:29:55 +00:00
Pete Batard
5354d2f6ca [iso] sanitize invalid FAT & NFTS filenames
* Also fix support for labels containing double quotes
* Closes #135
* Closes #193
2013-10-27 00:05:54 +01:00
Pete Batard
df06727416 [loc] add localization support
* This is a merge up to commit bd319269aa of the localization branch
* Also fixes Clang warnings
2013-10-15 23:25:54 +01:00
Pete Batard
3c438db3fd [iso] add smart testing for Rock Ridge over Joliet
* Some ISO9660 images (such as Ubuntu) use both Joliet and Rock Ridge,
  so we have to make a choice which should be preferred.
* Since Rock Ridge allows a greater filename length compared to Joliet,
  we perform our scan pass with Joliet disabled, to find out if RR is
  being used and if a filename longer than 64 chars exist. If that is
  the case, we'll perform the extraction using RR, else we'll use Joliet.
* Also add Alt-J and Alt-K to toggle Joliet/Rock Ridge
* Closes #178
2013-10-14 00:02:32 +01:00
Pete Batard
0e1c474ca0 [syslinux] add detection for Syslinux/Isolinux v5.0
* This is not full Syslinux v5.0 support, but only to prevent the (vesa)menu.c32 message from displaying
* Uses the mandatory inclusion of ldlinux.c32 in Isolinux v5.x for the detection
* Part of a fix for #142
2013-06-13 23:46:52 +01:00
Pete Batard
26f807530d [iso] fix broken bootmgr detection
* Closes #144
* Also fix broken WDK compilation
2013-05-19 23:02:16 +01:00
Pete Batard
c51bf5ce45 [misc] set rufus-next to 1.3.3, update copyright
* update copyright year
* switch relevant files to UTF-8 (without signature).
  It's 2013 for crying out loud:  if your file editor or file viewer
  can't handle plain UTF-8, go back to the 1980s!
* also rename autogen.sh to bootstrap.sh
2013-02-02 15:47:56 +00:00
Pete Batard
84e4aecfcd [efi] add support for Windows 7 UEFI boot
* Add WIM file handling in vhd.c to extract bootx64.efi
* x64 only, since Microsoft does not provide Win7 x86 EFI support
2013-01-19 04:04:54 +00:00
Pete Batard
997c0a0f28 [gpt] add support for GPT partitioning and EFI boot
* Contains the bulk of the code required to address #11
* Tested with Windows 8 Pro x64 (en-gb_windows_8_x64_dvd_915412.iso)
  and Arch Linux (archlinux-2013.01.04-dual.iso) against an UEFI 2.1 BIOS
* Also fixes missing status report beta versions check
2013-01-18 01:39:24 +00:00
Pete Batard
97576d79cb [iso] re-fix support for Arch Linux
* Can't these guys just use Joliet like everyone else?
* Closes #90 (again!)
2013-01-13 00:41:21 +00:00
Pete Batard
c4cb9d03c1 [misc] fix VS2012 Code Analysis warnings
* Only for files that aren't part of external dependencies
* Also update copyright date
2013-01-09 21:54:28 +00:00
Pete Batard
13a6b6b751 [iso] add support for VMWare ESXi 5.1
* Closes #98
* Also closes #113
* Also improves on the ISO analysis report
2012-12-15 03:27:14 +00:00
Pete Batard
5a53cb3b9c [updates] add "Check Now" button
* Also reword update policy and adjust timings
* Also fix ISO extraction window title
2012-12-09 20:36:29 +00:00
Pete Batard
4251e78fcd [net] Check for application update (part 5)
* Add dialog for new release notification
* Do not check for updates during format or ISO ops
* Add RTF support for parser and security improvements
* Also improve init and exit of progress dialog
2012-12-04 02:09:41 +00:00
Pete Batard
b3ed23647f [net] Check for application update (part 2)
* factorized token parser and added update file parsing
2012-11-12 01:53:34 +00:00
Pete Batard
bf98a552da [iso] update libcdio to v0.90 2012-11-04 01:33:54 +00:00
Pete Batard
a352ad019d [sl] update to syslinux 4.06
* Also fixes MSVC 64 bit warnings in format.c and iso.c
2012-11-04 00:29:24 +00:00
Pete Batard
94851dec7d [misc] fix a potential WinPE 1.0 bug and improve ISO labels
* WinPE 1.x patch used rdisk(!) instead of rdisk(1)
* Remove trailing spaces on ISO labels
* Remove unnecessary comment during format
2012-05-31 00:49:28 +01:00
Pete Batard
bb76f1f636 [ui] report ISO progress in main/icon progressbar
* Also improve granularity for ISO progress
* Also fixes an issue with badblocks report
2012-03-29 20:27:53 +01:00
Pete Batard
b397889ab6 v1.1.6 (#161)
* Add cheat mode for MBR selection (Alt-M)
* fix NTFS default for WinPE
* fix Clang warnings
2012-03-27 23:31:58 +01:00
Pete Batard
db76e396fd [pe] Improve PE and add Windows 2003 support
* Use \i386 always through SetupSourceDevice in txtsetup.sif
  and prevent deletion of install directory
* Removed setupdd.sy_ patch. Now, none of the files in \i386 are modified
* Better /minint detection for MBR setup
* Also fixed an issue where mbr.bin resources would not be included
2012-03-27 20:31:15 +01:00
Pete Batard
4bd017ff07 [pe] initial WinPE support (BartPE, XP install disc)
* also switched MBR to Win7 one
* also switched version to rufus-next
2012-03-16 18:30:44 +00:00
Pete Batard
7426573dc1 [iso] add download & replace of obsolete vesamenu.c32
* adds http/https download capabilities
* closes #46
2012-03-11 01:55:25 +00:00
Pete Batard
7ee5b35551 v1.1.4 (#150)
* closes #49
* closes #60
* closes #64
* should address #59
* set default doe ISOs with bot bootmgr and isolinux to syslinux
* other improvements
2012-03-03 23:12:48 +00:00
Pete Batard
3721b0a570 [misc] improved label and config handling
* add readout and display of extended autorun.inf label if available
* use improved isolinux config parsing
* also fix an issue that could leave drive unmounted on forced removal
* also add Alt-F cheatmode to toggle detection of fixed USB disks
2012-03-01 19:19:12 +00:00
Pete Batard
7e7c75169c [ui] enable setting of icon and extended label
* Creates an UTF-16 autoconf.inf with label, as well as autoconf.ico
* also fixed extended labels not displaying - closes #48
* also bumped version to rufus-next
* also factorized iso props analysis
* additional fixes
2012-02-21 19:46:28 +00:00
Pete Batard
f5939d18ab [iso] Syslinux support improvements
* Allow the use of vanilla Syslinux by creating a /syslinux.cfg
  that references isolinux.cfg
* Fix #40 and #42
* Workaround for #44 by search and replace of ISO label in .cfg
* ISO9660 Joliet fixes
2012-02-21 00:08:31 +00:00
Pete Batard
ce499c95d7 [ui] remember last selected device
* Closes #35
* Also update syslinux resources
2012-02-16 23:43:03 +00:00
Pete Batard
a851d66e7c [iso] libcdio Joliet and UDF fixes
* Fix for broken UDF access with MSVC on some images
  (eg. Arch Linux)
* Fix for broken Joliet access on ISO9660 images and
  proper Joliet support in iso.c
2012-02-16 20:44:16 +00:00
Pete Batard
3cd83869c4 [iso] fixes for Joliet and > 4GB ISO9660 images
* scan would fail on lowercase vs mixed case dir name comparison
  due to Joliet (eg. using Slackware 13.37 ISO)
* extraction would fail for 4 GB ISO9660 ISOs
* also fixes cases issue when checking for isolinux/bootmgr
* also don't restrict NTFS labels
2012-02-15 21:55:41 +00:00
Pete Batard
f4ed6e4650 [misc] fix broken DOS, fix invalid labels and UI improvements
* DOS creation was broken due to missing unlock + close
* added label validation to prevent errors
* added ellipsis to status bar
* also bumped version to rufus next and fixed f/non-f
2012-02-15 00:52:40 +00:00
Pete Batard
e17de3312f [iso] Set drive label according to the one from ISO
* required for Linux distros such as Arch Linux
* also added udf_get_logical_volume_id to libcdio and other fixes
* also prevents overwrite of ldlinux.sys from ISO
* closes #36
2012-02-14 20:52:39 +00:00
Pete Batard
36be65ed23 [iso] add support for isolinux/syslinux ISO images
* use a modified syslinux that can use isolinux config files
* update syslinux to git version
* remove embedding of chain.c32 for the time being
2012-02-14 01:23:42 +00:00
Pete Batard
7753c017d6 v1.1.0 (#131)
* first release with ISO support (bootmgr ISO only)
* fix ISO9660 extraction and error reports
2012-02-08 00:26:37 +00:00
Pete Batard
5d58b83ed8 [iso] cancellation improvements
* remove threaded cancellation, detect blocking and warn instead
* also add hidden shortcut to disable ISO size check
2012-02-07 16:17:14 +00:00
Pete Batard
472db8b592 [iso] bootable NTFS from ISO image [EXPERIMENTAL]
* bootmgr ISOs only
* extraction and ISO support UI improvements
* UTF8 support through CreateFileU
* cancellation on ISO file extraction
* switch to using CreateThread
2012-02-07 02:05:58 +00:00
Pete Batard
fd0e6d4b3b [iso] UI ISO support improvements
* add ISO scan and extract progress dialog
* compute sizes and set properties
* allow cancellation
* minor other updates
2012-02-01 14:26:36 +00:00
Pete Batard
5bd86bc743 [iso] initial ISO image support (EXPERIMENTAL)
* from libcdio: http://www.gnu.org/software/libcdio/
2012-01-31 01:40:22 +00:00