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

Compare commits

..

No commits in common. "65f05f4d580920a9bd3b1ab23c310253d37ce4a6" and "a25af06b3c7b3fcd0b1570555938ef94cf2dea3c" have entirely different histories.

7 changed files with 29 additions and 111 deletions

View file

@ -1,19 +1,3 @@
o Version 3.19 (2022.07.??)
Add a new selection dialog for Windows 11 setup customization:
- Secure Boot and TPM bypass have now been moved to this dialog
- Also allows to bypass the mandatory requirement for a Microsoft account on Windows 11 22H2
(NB: Network *MUST* be temporarily disabled for the local account creation to be proposed)
- Also add an option to skip all collection questions (Sets all answers to "Don't allow")
- Also add an option for setting internal drives offline with Windows To Go
Note: These customization options are only be proposed when using a Windows 11 image.
Add support for distros using a nonstandard GRUB 2.0 prefix directory (openSUSE Live, GeckoLinux)
Add the ability to ignore USBs (See https://github.com/pbatard/rufus/blob/master/res/rufus.ini)
Change drive listing to always list in increasing order of size
Update exceptions needed by Red Hat and derivatives for latest versions
Update UEFI:NTFS drivers to latest
Reassign a letter for drives written in DD mode that don't have an ESP (CoreELEC)
Fix Windows refusing to mount Linux MBR partitions on FIXED drives
o Version 3.18 (2022.03.11)
Fix DLL sideloading vulnerabilities
Fix ISO → ESP creation when running on Windows 11

View file

@ -6,8 +6,6 @@ https://github.com/pbatard/rufus/wiki/Localization#Editing_an_existing_translati
Or simply download https://rufus-web.akeo.ie/locale/pollock.exe and follow its directions.
o v3.20 (2022.??.??)
IMPORTANT: The translation changes below are *NOT* finalized and may evolve further...
Please avoid sending a translation update before I send a request for it, thank you!
- *NEW* MSG_323 "Unable to open or read '%s'"
- *NEW* MSG_325 "Applying Windows customization: %s"
- *NEW* MSG_326 "Windows User Experience"
@ -16,7 +14,6 @@ o v3.20 (2022.??.??)
- *NEW* MSG_329 "Remove requirement for 4GB+ RAM and 64GB+ disk"
- *NEW* MSG_330 "Remove requirement for an online Microsoft account"
- *NEW* MSG_331 "Disable data collection (Skip privacy questions)"
- *NEW* MSG_332 "Prevent Windows To Go from accessing internal disks"
o v3.14 (2021.03.31)
- *UPDATED* MSG_068 "Error while partitioning drive." -> "Could not partition drive."

View file

@ -2,10 +2,8 @@ msgid ""
msgstr ""
"Project-Id-Version: 3.14\n"
"Report-Msgid-Bugs-To: pete@akeo.ie\n"
"POT-Creation-Date: 2022-06-24 17:34+0100\n"
"PO-Revision-Date: 2022-06-24 17:36+0100\n"
"Last-Translator: \n"
"Language-Team: \n"
"POT-Creation-Date: 2021-10-23 12:51+0100\n"
"PO-Revision-Date: 2021-10-23 13:00+0100\n"
"Language: fr_FR\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -13,7 +11,9 @@ msgstr ""
"X-Poedit-SourceCharset: UTF-8\n"
"X-Rufus-LanguageName: French (Français)\n"
"X-Rufus-LCID: 0x040c, 0x080c, 0x0c0c, 0x100c, 0x140c, 0x180c, 0x1c0c, 0x200c, 0x240c, 0x280c, 0x2c0c, 0x300c, 0x340c, 0x380c, 0xe40c\n"
"X-Generator: Poedit 3.1\n"
"Last-Translator: \n"
"Language-Team: \n"
"X-Generator: Poedit 3.0\n"
#. • IDD_DIALOG → IDS_DRIVE_PROPERTIES_TXT
msgid "Drive Properties"
@ -1709,8 +1709,12 @@ msgid "Create a disk image of the selected device"
msgstr "Crée une image disque à partir du périphérique sélectionné"
#. • MSG_305
msgid "Use this option to indicate if you plan to install Windows to a different disk, or if you want to run Windows directly from this drive (Windows To Go)."
msgstr "Utilisez cette option pour indiquer si vous voulez installer Windows sur un autre disque, ou bien exécuter Windows directement depuis ce périphérique (Windows To Go)."
msgid ""
"Use this option to indicate if you plan to install Windows to a different disk, or if you want to run Windows directly from this drive (Windows To Go).\r\n"
"In 'Extended Windows 11 Installation' mode, Rufus will patch the media so that Windows 11 can be installed on platforms that don't meet the TPM 2.0 or Secure Boot requirements."
msgstr ""
"Utilisez cette option pour indiquer si vous voulez installer Windows sur un autre disque, ou bien exécuter Windows directement depuis ce périphérique (Windows To Go).\r\n"
"En mode 'Installation Windows 11 étendue', Rufus modifiera le périphérique de manière à ce que Windows 11 puisse être installé sur les plateformes qui ne sont pas compatibles avec les exigences matérielles TPM 2.0 ou Secure Boot."
#. • MSG_306
#.
@ -1789,37 +1793,13 @@ msgstr ""
"A cause de cela, seule lécriture en mode DD est applicable."
#. • MSG_322
msgid "Unable to open or read '%s'"
msgstr "Impossible d'ouvrir ou de lire '%s'"
msgid "Standard Windows 11 Installation (TPM 2.0 + Secure Boot)"
msgstr "Installation standard de Windows 11 (TPM 2.0 + Secure Boot)"
#. • MSG_325
msgid "Applying Windows customization: %s"
msgstr "Application des options de personalisation de Windows: %s"
#. • MSG_323
msgid "Extended Windows 11 Installation (no TPM / no Secure Boot)"
msgstr "Installation Windows 11 étendue (sans TPM / sans Secure Boot)"
#. • MSG_326
msgid "Windows User Experience"
msgstr "Experience de l'utilisateur Windows"
#. • MSG_327
msgid "Customize Windows installation?"
msgstr "Personnaliser l'installation de Windows ?"
#. • MSG_328
msgid "Remove requirement for Secure Boot and TPM 2.0"
msgstr "Supprimer la nécessité d'avoir Secure Boot et TPM 2.0"
#. • MSG_329
msgid "Remove requirement for 4GB+ RAM and 64GB+ disk"
msgstr "Supprimer la nécessité d'avoir 4Go+ de RAM et 64Go+ de disque"
#. • MSG_330
msgid "Remove requirement for an online Microsoft account"
msgstr "Désactiver la collecte de données (Élimine les questions sur la vie-privée)"
#. • MSG_331
msgid "Disable data collection (Skip privacy questions)"
msgstr "Supprimer la nécessité d'utiliser un compte Microsoft en ligne"
#. • MSG_332
msgid "Prevent Windows To Go from accessing internal disks"
msgstr "Empêcher Windows To Go d'accéder aux disques internes"
#. • MSG_324
msgid "Removing Windows 11 installation restrictions: %s"
msgstr "Elimination des restrictions dinstallation de Windows 11: %s"

View file

@ -589,7 +589,6 @@ t MSG_328 "Remove requirement for Secure Boot and TPM 2.0"
t MSG_329 "Remove requirement for 4GB+ RAM and 64GB+ disk"
t MSG_330 "Remove requirement for an online Microsoft account"
t MSG_331 "Disable data collection (Skip privacy questions)"
t MSG_332 "Prevent Windows To Go from accessing internal disks"
#########################################################################
l "ar-SA" "Arabic (العربية)" 0x0401, 0x0801, 0x0c01, 0x1001, 0x1401, 0x1801, 0x1c01, 0x2001, 0x2401, 0x2801, 0x2c01, 0x3001, 0x3401, 0x3801, 0x3c01, 0x4001
@ -4302,15 +4301,6 @@ t MSG_318 "Priorité de thread part default : %d"
t MSG_319 "Ignorer le marqueur de démarrage"
t MSG_320 "Rafraichissement du schéma de partition (%s)..."
t MSG_321 "Limage que vous avez sélectionnée est de type ISOHybrid, mais ses créateurs ne lont pas rendue compatible avec le mode ISO (i.e. copie de fichier).\nA cause de cela, seule lécriture en mode DD est applicable."
t MSG_322 "Impossible d'ouvrir ou de lire '%s'"
t MSG_325 "Application des options de personalisation de Windows: %s"
t MSG_326 "Experience de l'utilisateur Windows"
t MSG_327 "Personnaliser l'installation de Windows ?"
t MSG_328 "Supprimer la nécessité d'avoir Secure Boot et TPM 2.0"
t MSG_329 "Supprimer la nécessité d'avoir 4Go+ de RAM et 64Go+ de disque"
t MSG_330 "Désactiver la collecte de données (Élimine les questions sur la vie-privée)"
t MSG_331 "Supprimer la nécessité d'utiliser un compte Microsoft en ligne"
t MSG_332 "Empêcher Windows To Go d'accéder aux disques internes"
#########################################################################
l "de-DE" "German (Deutsch)" 0x0407, 0x0807, 0x0c07, 0x1007, 0x1407

View file

@ -72,7 +72,7 @@ extern uint32_t dur_mins, dur_secs;
extern uint32_t wim_nb_files, wim_proc_files, wim_extra_files;
static int actual_fs_type, wintogo_index = -1, wininst_index = 0;
extern BOOL force_large_fat32, enable_ntfs_compression, lock_drive, zero_drive, fast_zeroing, enable_file_indexing;
extern BOOL write_as_image, use_vds, write_as_esp, is_vds_available, enable_inplace, set_drives_offline;
extern BOOL write_as_image, use_vds, write_as_esp, is_vds_available, enable_inplace;
extern const grub_patch_t grub_patch[2];
extern char* unattend_xml_path;
uint8_t *grub2_buf = NULL, *sec_buf = NULL;
@ -1465,19 +1465,6 @@ static BOOL SetupWinToGo(DWORD DriveIndex, const char* drive_name, BOOL use_esp)
UpdateProgressWithInfo(OP_FILE_COPY, MSG_267, wim_proc_files + 2 * wim_extra_files, wim_nb_files);
// Setting internal drives offline for Windows To Go is crucial if, for instance, you are using ReFS
// on Windows 10 (therefore ReFS v3.4) and don't want a Windows 11 To Go boot to automatically
// "upgrade" the ReFS version on all drives to v3.7, thereby preventing you from being able to mount
// those volumes back on Windows 10 ever again. Yes, I have been stung by this Microsoft bullshit!
// See: https://gist.github.com/0xbadfca11/da0598e47dd643d933dc#Mountability
if (set_drives_offline) {
uprintf("Setting the target's internal drives offline using command:");
// This applies the "offlineServicing" section of the unattend.xml (while ignoring the other sections)
static_sprintf(cmd, "dism /Image:%s\\ /Apply-Unattend:%s", drive_name, unattend_xml_path);
uprintf(cmd);
RunCommand(cmd, NULL, usb_debug);
}
uprintf("Disabling use of the Windows Recovery Environment using command:");
static_sprintf(cmd, "%s\\bcdedit.exe /store %s\\EFI\\Microsoft\\Boot\\BCD /set {default} recoveryenabled no",
sysnative_dir, (use_esp) ? ms_efi : drive_name);

View file

@ -64,12 +64,10 @@ enum bootcheck_return {
#define UNATTEND_MINRAM_MINDISK_MASK 0x02
#define UNATTEND_NO_ONLINE_ACCOUNT_MASK 0x04
#define UNATTEND_NO_DATA_COLLECTION_MASK 0x08
#define UNATTEND_OFFLINE_INTERNAL_DRIVES 0x10
#define UNATTEND_WINPE_SETUP_MASK (UNATTEND_SECUREBOOT_TPM_MASK | UNATTEND_MINRAM_MINDISK_MASK)
#define UNATTEND_SPECIALIZE_DEPLOYMENT_MASK (UNATTEND_NO_ONLINE_ACCOUNT_MASK)
#define UNATTEND_OOBE_SHELL_SETUP (UNATTEND_NO_DATA_COLLECTION_MASK)
#define UNATTEND_OFFLINE_SERVICING (UNATTEND_OFFLINE_INTERNAL_DRIVES)
static const char* cmdline_hogger = "rufus.com";
static const char* ep_reg = "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\Explorer";
@ -90,8 +88,7 @@ static BOOL allowed_filesystem[FS_MAX] = { 0 };
static int64_t last_iso_blocking_status;
static int selected_pt = -1, selected_fs = FS_UNKNOWN, preselected_fs = FS_UNKNOWN;
static int image_index = 0, select_index = 0;
static int unattend_xml_mask = (UNATTEND_SECUREBOOT_TPM_MASK | UNATTEND_NO_ONLINE_ACCOUNT_MASK |
UNATTEND_OFFLINE_INTERNAL_DRIVES);
static int unattend_xml_mask = (UNATTEND_SECUREBOOT_TPM_MASK | UNATTEND_NO_ONLINE_ACCOUNT_MASK);
static RECT relaunch_rc = { -65536, -65536, 0, 0};
static UINT uMBRChecked = BST_UNCHECKED;
static HANDLE format_thread = NULL;
@ -129,13 +126,13 @@ HWND hDeviceList, hPartitionScheme, hTargetSystem, hFileSystem, hClusterSize, hL
HWND hImageOption, hLogDialog = NULL, hProgress = NULL, hDiskID;
HANDLE dialog_handle = NULL;
BOOL is_x86_32, use_own_c32[NB_OLD_C32] = { FALSE, FALSE }, mbr_selected_by_user = FALSE;
BOOL op_in_progress = TRUE, right_to_left_mode = FALSE, has_uefi_csm = FALSE, its_a_me_mario = FALSE, enable_inplace = FALSE;
BOOL op_in_progress = TRUE, right_to_left_mode = FALSE, has_uefi_csm = FALSE, its_a_me_mario = FALSE, enable_inplace;
BOOL enable_HDDs = FALSE, enable_VHDs = TRUE, enable_ntfs_compression = FALSE, no_confirmation_on_cancel = FALSE, lock_drive = TRUE;
BOOL advanced_mode_device, advanced_mode_format, allow_dual_uefi_bios, detect_fakes, enable_vmdk, force_large_fat32, usb_debug;
BOOL use_fake_units, preserve_timestamps = FALSE, fast_zeroing = FALSE, app_changed_size = FALSE;
BOOL zero_drive = FALSE, list_non_usb_removable_drives = FALSE, enable_file_indexing, large_drive = FALSE;
BOOL write_as_image = FALSE, write_as_esp = FALSE, use_vds = FALSE, ignore_boot_marker = FALSE;
BOOL appstore_version = FALSE, is_vds_available = TRUE, set_drives_offline = FALSE;
BOOL appstore_version = FALSE, is_vds_available = TRUE;
float fScale = 1.0f;
int dialog_showing = 0, selection_default = BT_IMAGE, persistence_unit_selection = -1, imop_win_sel = 0;
int default_fs, fs_type, boot_type, partition_type, target_type;
@ -1278,6 +1275,7 @@ static char* CreateUnattendXml(int arch, int mask)
fd = fopen(path, "w");
if (fd == NULL)
return NULL;
enable_inplace = mask & UNATTEND_WINPE_SETUP_MASK;
fprintf(fd, "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n");
fprintf(fd, "<unattend xmlns=\"urn:schemas-microsoft-com:unattend\">\n");
@ -1285,7 +1283,6 @@ static char* CreateUnattendXml(int arch, int mask)
// This part produces the unbecoming display of a command prompt window during initial setup, which
// may scare users... But the Windows Store version doesn't allow us to edit an offline registry...
if (mask & UNATTEND_WINPE_SETUP_MASK) {
enable_inplace = TRUE;
order = 1;
fprintf(fd, " <settings pass=\"windowsPE\">\n");
fprintf(fd, " <component name=\"Microsoft-Windows-Setup\" processorArchitecture=\"%s\" language=\"neutral\" "
@ -1348,19 +1345,6 @@ static char* CreateUnattendXml(int arch, int mask)
fprintf(fd, " </settings>\n");
}
if (mask & UNATTEND_OFFLINE_SERVICING) {
fprintf(fd, " <settings pass=\"offlineServicing\">\n");
if (mask & UNATTEND_OFFLINE_INTERNAL_DRIVES) {
set_drives_offline = TRUE;
fprintf(fd, " <component name=\"Microsoft-Windows-PartitionManager\" processorArchitecture=\"%s\" language=\"neutral\" "
"xmlns:wcm=\"http://schemas.microsoft.com/WMIConfig/2002/State\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" "
"publicKeyToken=\"31bf3856ad364e35\" versionScope=\"nonSxS\">\n", xml_arch_names[arch]);
fprintf(fd, " <SanPolicy>4</SanPolicy>\n");
fprintf(fd, " </component>\n");
}
fprintf(fd, " </settings>\n");
}
fprintf(fd, "</unattend>\n");
fclose(fd);
return path;
@ -1625,8 +1609,6 @@ static DWORD WINAPI BootCheckThread(LPVOID param)
}
StrArrayAdd(&options, lmprintf(MSG_331), TRUE);
MAP_BIT(UNATTEND_NO_DATA_COLLECTION_MASK);
StrArrayAdd(&options, lmprintf(MSG_332), TRUE);
MAP_BIT(UNATTEND_OFFLINE_INTERNAL_DRIVES);
i = SelectionDialog(BS_AUTOCHECKBOX, lmprintf(MSG_326), lmprintf(MSG_327),
options.String, options.Index, remap8(unattend_xml_mask, map, FALSE));
StrArrayDestroy(&options);
@ -2765,8 +2747,6 @@ static INT_PTR CALLBACK MainCallback(HWND hDlg, UINT message, WPARAM wParam, LPA
fs_type = (int)ComboBox_GetCurItemData(hFileSystem);
write_as_image = FALSE;
write_as_esp = FALSE;
enable_inplace = FALSE;
set_drives_offline = FALSE;
// Disable all controls except Cancel
EnableControls(FALSE, FALSE);
FormatStatus = 0;

View file

@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
IDD_DIALOG DIALOGEX 12, 12, 232, 326
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_ACCEPTFILES
CAPTION "Rufus 3.19.1906"
CAPTION "Rufus 3.19.1904"
FONT 9, "Segoe UI Symbol", 400, 0, 0x0
BEGIN
LTEXT "Drive Properties",IDS_DRIVE_PROPERTIES_TXT,8,6,53,12,NOT WS_GROUP
@ -395,8 +395,8 @@ END
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,19,1906,0
PRODUCTVERSION 3,19,1906,0
FILEVERSION 3,19,1904,0
PRODUCTVERSION 3,19,1904,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@ -414,13 +414,13 @@ BEGIN
VALUE "Comments", "https://rufus.ie"
VALUE "CompanyName", "Akeo Consulting"
VALUE "FileDescription", "Rufus"
VALUE "FileVersion", "3.19.1906"
VALUE "FileVersion", "3.19.1904"
VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "© 2011-2022 Pete Batard (GPL v3)"
VALUE "LegalTrademarks", "https://www.gnu.org/licenses/gpl-3.0.html"
VALUE "OriginalFilename", "rufus-3.19.exe"
VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "3.19.1906"
VALUE "ProductVersion", "3.19.1904"
END
END
BLOCK "VarFileInfo"