[misc] add support for a 'test' release channel

* This gets enabled only for TEST builds
* Also flesh out the sample rufus.ini
This commit is contained in:
Pete Batard 2016-02-03 17:41:27 +00:00
parent 4474642863
commit 92cb7d68fa
4 changed files with 38 additions and 15 deletions

View File

@ -15,9 +15,26 @@ LastUpdateCheck = 13068056756
UpdateCheckInterval = 86400
; Whether the check for updates should also include new BETA releases
CheckForBetas = 1
; Use this to increases the log verbosity, for the update checks
VerboseUpdateCheck = 0
; Use this to increase the log verbosity for the updates check (0-2)
; VerboseUpdateCheck = 2
; If you are paranoid about apps writing to the registry, you can uncomment the
; following. It will disable the Local Group Policy calls that Rufus issues, to
; temporarily prevent the *annoying* notices Windows issues about new drives.
; DisableLGP = 1
; DisableLGP = 1
; Start with the 'Advanced Options' panel displayed
; AdvancedMode = 1
; Have Rufus to preserve timestamps when copying files (Alt-T)
; PreserveTimestamps = 1
; Disable the whole Kibi/Gibi nonsense (Alt-U)
; UseProperSizeUnits = 1
; Display extended information duringh USB enumeration (Alt-.)
; EnableUsbDebug = 1
; Don't perform a fake drive test during bad blocks check (Alt-B)
; DisableFakeDrivesCheck = 1
; Allow the creation of dual UEFI+BIOS bootable drives for Windows (Alt-E)
; EnableWindowsDualUefiBiosMode = 1
; Also use RidgeCrop's Large FAT32 format algorithm when formatting smaller drives (Alt-L)
; ForceLargeFat32Formatting = 1
; Enable listing of VMWare's VMDK drives when used in a virtual machine (Alt-W)
; EnableVmdkDetection = 1

View File

@ -1,7 +1,7 @@
/*
* Rufus: The Reliable USB Formatting Utility
* Networking functionality (web file download, check for update, etc.)
* Copyright © 2012-2015 Pete Batard <pete@akeo.ie>
* Copyright © 2012-2016 Pete Batard <pete@akeo.ie>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -80,7 +80,7 @@ static BOOL force_update_check = FALSE;
/*
* FormatMessage does not handle internet errors
* http://support.microsoft.com/kb/193625
* https://msdn.microsoft.com/en-us/library/windows/desktop/aa385465.aspx
*/
const char* WinInetErrorString(void)
{
@ -429,9 +429,9 @@ static DWORD WINAPI CheckForUpdatesThread(LPVOID param)
BOOL releases_only, found_new_version = FALSE;
int status = 0;
const char* server_url = RUFUS_URL "/";
int i, j, k, verbose = 0, verpos[4];
int i, j, k, max_channel, verbose = 0, verpos[4];
static const char* archname[] = {"win_x86", "win_x64"};
static const char* channel[] = {"release", "beta"}; // release channel
static const char* channel[] = {"release", "beta", "test"}; // release channel
const char* accept_types[] = {"*/*\0", NULL};
DWORD dwFlags, dwSize, dwDownloaded, dwTotalSize, dwStatus;
char* buf = NULL;
@ -504,7 +504,13 @@ static DWORD WINAPI CheckForUpdatesThread(LPVOID param)
status++; // 2
releases_only = !ReadSettingBool(SETTING_INCLUDE_BETAS);
for (k=0; (k<(releases_only?1:(int)ARRAYSIZE(channel))) && (!found_new_version); k++) {
// Test releases get their own distribution channel (and also force beta checks)
#if defined(TEST)
max_channel = (int)ARRAYSIZE(channel);
#else
max_channel = releases_only ? 1 : (int)ARRAYSIZE(channel) - 1;
#endif
for (k=0; (k<max_channel) && (!found_new_version); k++) {
uprintf("Checking %s channel...\n", channel[k]);
// At this stage we can query the server for various update version files.
// We first try to lookup for "<appname>_<os_arch>_<os_version_major>_<os_version_minor>.ver"

View File

@ -33,7 +33,7 @@ LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
IDD_DIALOG DIALOGEX 12, 12, 242, 376
STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_ACCEPTFILES
CAPTION "Rufus 2.7.841"
CAPTION "Rufus 2.7.842"
FONT 8, "Segoe UI Symbol", 400, 0, 0x0
BEGIN
LTEXT "Device",IDS_DEVICE_TXT,9,6,200,8
@ -320,8 +320,8 @@ END
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 2,7,841,0
PRODUCTVERSION 2,7,841,0
FILEVERSION 2,7,842,0
PRODUCTVERSION 2,7,842,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@ -338,13 +338,13 @@ BEGIN
BEGIN
VALUE "CompanyName", "Akeo Consulting (http://akeo.ie)"
VALUE "FileDescription", "Rufus"
VALUE "FileVersion", "2.7.841"
VALUE "FileVersion", "2.7.842"
VALUE "InternalName", "Rufus"
VALUE "LegalCopyright", "© 2011-2016 Pete Batard (GPL v3)"
VALUE "LegalTrademarks", "http://www.gnu.org/copyleft/gpl.html"
VALUE "OriginalFilename", "rufus.exe"
VALUE "ProductName", "Rufus"
VALUE "ProductVersion", "2.7.841"
VALUE "ProductVersion", "2.7.842"
END
END
BLOCK "VarFileInfo"

View File

@ -1,7 +1,7 @@
/*
* Rufus: The Reliable USB Formatting Utility
* Settings access, through either registry or INI file
* Copyright © 2015 Pete Batard <pete@akeo.ie>
* Copyright © 2015-2016 Pete Batard <pete@akeo.ie>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -27,7 +27,7 @@ extern char* ini_file;
/*
* List of setting names used by this application
*/
#define SETTING_VERBOSE_UPDATES "VerboseUpdateCheck"
#define SETTING_VERBOSE_UPDATES "VerboseUpdateCheck"
#define SETTING_LAST_UPDATE "LastUpdateCheck"
#define SETTING_UPDATE_INTERVAL "UpdateCheckInterval"
#define SETTING_INCLUDE_BETAS "CheckForBetas"