#36: Add ability to select Linux distribution type if OS is unsupported - partial

This commit is contained in:
2019-08-28 13:34:11 -05:00
parent 3dd3955846
commit 0671a39809
8 changed files with 90 additions and 17 deletions

View File

@@ -28,6 +28,7 @@ let expectedUnmount = {};
let launchHidden = false;
let firstMountCheck = true;
let manualMountDetection = {};
let platformOverride;
let isShutdown = false;
let isQuiting = false;
@@ -244,6 +245,7 @@ const loadUiSettings = () => {
if (fs.statSync(settingFile).isFile()) {
const settings = JSON.parse(fs.readFileSync(settingFile, 'utf8'));
launchHidden = settings.launch_hidden;
platformOverride = settings.platform_override;
}
} catch (e) {
}
@@ -659,13 +661,16 @@ ipcMain.on(Constants.IPC_Get_Platform, (event) => {
const platform = os.platform();
if (platform === 'linux') {
const scriptFile = path.join(os.tmpdir(), 'repertory_detect_linux.sh');
fs.writeFileSync(scriptFile, detectScript);
if (platformOverride && (platformOverride.trim().length > 0)) {
sendResponse(platformOverride, 'linux');
} else {
const scriptFile = path.join(os.tmpdir(), 'repertory_detect_linux.sh');
fs.writeFileSync(scriptFile, detectScript);
helpers
helpers
.executeScript(scriptFile)
.then(data => {
let appPlatform = data.replace(/(\r\n|\n|\r)/gm,"");
let appPlatform = data.replace(/(\r\n|\n|\r)/gm, "");
if (appPlatform === 'unknown') {
helpers
.downloadFile(Constants.LINUX_DETECT_SCRIPT_URL, scriptFile, null, err => {
@@ -673,14 +678,14 @@ ipcMain.on(Constants.IPC_Get_Platform, (event) => {
sendResponse(appPlatform, platform);
} else {
helpers
.executeScript(scriptFile)
.then(data => {
appPlatform = data.replace(/(\r\n|\n|\r)/gm, "");
sendResponse(appPlatform, platform);
})
.catch(() => {
sendResponse(appPlatform, platform);
});
.executeScript(scriptFile)
.then(data => {
appPlatform = data.replace(/(\r\n|\n|\r)/gm, "");
sendResponse(appPlatform, platform);
})
.catch(() => {
sendResponse(appPlatform, platform);
});
}
});
} else {
@@ -690,6 +695,7 @@ ipcMain.on(Constants.IPC_Get_Platform, (event) => {
.catch(() => {
sendResponse(platform, platform);
});
}
} else {
sendResponse(platform, platform);
}