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

72 commits

Author SHA1 Message Date
Pete Batard
3d1ec358b5
[core] improve protective MBR for GPT media
* Use the upgraded msg.bin MBR along with its more comprehensive message.
* Also fixes and issue in GetResource().
2020-02-19 19:51:32 +00:00
Pete Batard
e073fb47b0
[net] add Windows retail ISO downloads
* This is accomplished through Fido (https://github.com/pbatard/Fido), a *SIGNED*
  PowerShell script, that is downloaded from GitHub and that resides in memory for
  the duration of a session.
* The reason we use a downloaded PS script, rather than an embedded on, is because:
  - Microsoft have regularly been changing the deal with regards to how retail ISOs
    can be downloaded, and not for the better, so we can't simply embed a static
    means of downloading ISOs and expect that to work forever.
  - By using an external script, we can immediately respond to whatever new means of
    *ANNOYING* their legitimate users Microsoft will come up with next, as well as
    make sure that, the minute a new retail version of Windows becomes available, it
    also becomes available for download in Rufus.
* Note that if you are concerned about downloading a remote PS script that is being
  run at the same level as an elevated application, you should understand that:
  - Only scripts downloaded from GitHub, from an account that is protected with 2FA,
    are allowed to run (i.e. someone would first have to steal a *physical* 2FA key
    to be in a position to upload a malicious script).
  - On top of this, only scripts that are signed with a separate private key (RSA +
    AES-256), that is itself also protected with a strong unique password which only
    a single person knows (and must manually enter each time they want to make a new
    version of the script available for download), are allowed to run.
  The above means that there's about as much chance for someone to manage to upload
  a malicious script on the GitHub servers, that Rufus would allow to run, as there
  is for someone to upload a malicious version of Rufus itself.
  Still, if you are paranoid and have concerns that, even as you can validate from
  its source that Rufus does not attempt to execute any remote script unless a user
  actively selected and clicked the DOWNLOAD button, you can also completely disable
  the remote script download feature, if you just set the update check to disabled
  (which, by the way, Rufus *EXPLICITLY* asks you to choose whether you want to
  enable or not, the very first time you run the application).
* Also remove _unlinkU() which duplicates what DeleteFileU() already does.
2019-03-02 23:34:32 +00:00
Pete Batard
15806de646
[ui] display a notice about Secure Boot when UEFI:NTFS is applied 2018-11-20 12:33:12 +00:00
Pete Batard
a34cb1194e [ui] initial work for the display of a persistence option
* This doesn't mean we'll get persistence support any time soon, but any UI work
  on this needs to be carried out *MONTHS* in advance because of the translators.
2018-07-06 00:40:52 +01:00
Pete Batard
de7dde05c4 [ui] use fluent 2-colour scheme PNG icons
* Also switch save and hash to toolbar buttons
* Also fix centering of icons on toolbars
2018-05-01 18:10:48 +01:00
Pete Batard
a44518355f [ui] UI redesign
* Better guide the user through the flow of operations
* Also follow a concept design by Fahad Al-Riyami
* Closes #117
2018-03-22 23:14:21 +00:00
Pete Batard
903ac993f2 [misc] remove no longer needed XP workarounds 2017-11-13 14:30:25 +00:00
Pete Batard
35da381a11 [pki] check timestamp chronology during update validation
* Done to address the second "vulnerability" proposed in #1009, independently
  of the protocol used.
2017-09-02 15:27:56 +01:00
Ino-Bagaric
bf09842fd2 [misc] remove duplicate definition
* Closes #1011
2017-08-29 11:57:01 +01:00
Pete Batard
a528bb3d83 [ui] report process(es) that are preventing access on error
* Also revert loc file changes that were introduced in f53b22a077
2017-07-11 17:50:38 +01:00
Pete Batard
7d302d340f [togo] enable selection of Windows version
* Closes #847
* Also set rufus-next to 2.12
2016-12-13 14:26:27 +00:00
Pete Batard
5d3be6ca51 [misc] add a cheat mode to disable file indexing after format
* New cheat mode is Alt-Q, and gets preserved between sessions
* Only for file systems that support it (NTFS, UDF and ReFS)
2016-08-27 18:06:06 +01:00
Pete Batard
7b3b96cd9e [pki] add signature check on update downloads - part 2
* Closes #158
2015-10-13 23:29:30 +01:00
Pete Batard
af53d11718 [misc] add a cheat mode to not lock the physical drive during partitioning and formatting
* In some circumstances, this *might* help with the infamous #312 issue, though
  I will still recommend to figure out which application is keeping a lock instead
  of trying to cheat...
2015-10-01 22:22:20 +01:00
Pete Batard
c2293b5177 [misc] add SHA-256 checksum computation
* Closes #607
2015-09-30 00:00:55 +01:00
Pete Batard
67d143dbff [loc] set current translation scheme to v1.0.18
* Also make the menu_c32_test.iso an ISOHybrid
2015-09-03 13:13:26 +01:00
Pete Batard
fb09802c0f [ui] prompt users how they want to write ISOHybrid images
* Closes #543
* Also update localization messages and image analysis report
2015-08-22 15:21:48 +01:00
Pete Batard
c7c83a16ed [ui] use a toolbar button for the checksum
* Also fix tabbing order for controls
* Also provide the name of the image in the checksum report
2015-07-06 22:23:24 +01:00
Pete Batard
957bb9c495 [ui] add new dialog to display MD5 & SHA-1 2015-07-04 22:48:11 +01:00
Pete Batard
91e699d38a [ui] use a hidden button on the status bar to generate the hash
* Also add a tooltip for the language bar
* Also reduce the size of the icon in README.md
2015-07-03 17:23:00 +01:00
Pete Batard
f04167c51c [core] add enumeration debugging
* Alt-. to toggle
* Also add configure option for test releases
2015-06-26 22:49:32 +01:00
Quppa
3579c770a2 [ui] modernize the language button
* The language button is now a toolbar button with a dropdown arrow.
* Its icon is a globe for Windows XP to Windows 7 and a globe with characters
  on it for Windows 8 and above (same as the icon for the 'Languages' control
  panel).
* Closes #488
2015-04-19 01:52:39 +01:00
Pete Batard
66edd53b2c [core] add x86_32 boot for UEFI:NTFS
* NB: This increases the compressed executable size by 25K :(
* Also set rufus-next to 2.1
2015-03-16 20:34:04 +00:00
Pete Batard
eb9e5ab899 [loc] fix memory leak introduced by removal of separate progress dialog
* Commit a327bb114c
* Also fix typo in French translation
2015-01-22 23:09:44 +00:00
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
bca23cc676 [loc] add message for dual EFI/BIOS cheat mode
* Also update copyright year for about dialog
2015-01-12 00:53:09 +00:00
Pete Batard
817c026720 [ui] enable ToGo selection through a radio button
* Part of #126
2015-01-12 00:34:09 +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
d81f83c110 [core] enable UEFI NTFS support
* This allows no-sweat UEFI support of Windows installation ISOs
  that contain a >4GB file for instance
* This is done through UEFI:TOGO (https://github.com/pbatard/uefi-togo)
  and the efifs NTFS driver (http://efi.akeo.ie)
* Closes #414
* This will also be part of our implementation of #126
2014-12-20 00:22:00 +00:00
Pete Batard
8b47e95eb5 [grub] switch to the more compatible Grub 2.00-22
* Also enable Old BIOS fixes with Syslinux, Grub installation and fix related UI issues
* Also add a check to confirm that Grub SBR will fit
2014-11-18 23:49:29 +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
2be12ff3b6 [ui] use "Segoe UI" as default font on Vista and later
* Greatly improves the display of non western character sets, such as CJK.
* Note: Since I'm no longer willing to go the extra mile for XP, the way we
  handle the non availability of the Segoe font there is by doing the lazy
  thing and duplicating all our UI resources, in a similar way as what we do
  for RTL, and setting them with the old "MS Shell Dlg".
* Also update some Syslinux V5 refs to Syslinux V6.
* Closes #308
2014-11-12 02:39:12 +00:00
Pete Batard
6ca024ae3b [syslinux] update Syslinux to v6.03
* Also add experimental support for Syslinux/NTFS
* Closes #391
2014-11-11 19:54:05 +00:00
Pete Batard
ae08fe3ac2 [misc] fix an issue with Far Manager
* Closes #161
* Also fix a couple warnings from MinGW and VS
2014-05-27 02:02:50 +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
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
f424229e0f [misc] add NTFS compression support
* Only as a cheat mode (Alt-N)
* Also fixes inconsistent MBR partition numbering
* Also update a comment in vhd.c about callback progress (thanks to Erwan)
2014-01-31 02:51:28 +00:00
Pete Batard
8ae158ba22 [loc] add support for right-to-left languages
* Closes #192
2014-01-24 02:46:06 +00:00
Pete Batard
573ea45640 [core] add support for bare ReactOS boot record installation
* A new "ReactOS" is now available under "Create a bootable disk" when running in advanced mode.
* Using this option will install the ReactOS bootblocks (MBR & FAT PBR) _only_.
  You can then copy freeldr.sys and freeldr.ini to make the drive bootable.
* Also move Rufus MBR installation to ms-sys, and remove mbr.bin resource.
* Also add Rufus MBR detection, remove duplicate records and display MBR type on drive detection
* Also move PBR and MBR analysis calls to drive.c and add a drive.h header
* Also make extraction of embedded loc file more robust
2014-01-05 01:39:41 +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
f3cf32f8d8 [loc] use a direct table for the messages
* More efficient and also the first step for addressing #188
2013-12-18 01:20:44 +00:00
Pete Batard
df44b26342 [loc] add language selection menu 2013-10-24 22:59:20 +01:00
Pete Batard
310ed2fb53 [loc] add an option to force update
* This is meant to be used by translators for testing the UI
* Also fix the positioning and centering of boilerplate on the new version dialog
* French translation improvements
2013-10-22 22:46:59 +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
df5bce297d [syslinux] initial Syslinux v5 support
* Use .bss and .sys from Syslinux v5.10
* Advanced options allow you to choose between v4 and v5
* Rufus does not currently copy any ldlinux.c32 to the target
2013-06-14 01:55:48 +01:00
Pete Batard
a17acd1a22 [ui] add fixed disk detection to the advanced options
* Tie unpartitioned drive listing to the fixed disk option
* Also ensure that the log and main dialog windows are the same size
2013-06-03 21:32:22 +01:00
Pete Batard
bba1772940 [misc] refactoring and cleanup - part 1
* add stdfn.c and move the relevant standard calls there
* move most of GetDriveInfo() to drive.c
* rename IDC_DOS/hDos to IDC_BOOT/hBoot
2013-01-24 21:30:11 +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
0b53ddd8b3 [ui] indicate the partition scheme created by Rufus
* This is in anticipation of GPT support (#11)
2013-01-09 23:39:31 +00:00