mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
Only try to launch tnc binary if it exists.
This commit is contained in:
parent
fed4727a6c
commit
1ac9a1449d
1 changed files with 60 additions and 91 deletions
89
gui/main.js
89
gui/main.js
|
@ -316,74 +316,42 @@ app.whenReady().then(() => {
|
||||||
win.show();
|
win.show();
|
||||||
}, 3000);
|
}, 3000);
|
||||||
|
|
||||||
// start daemon by checking os
|
//Generate daemon binary path
|
||||||
|
var daemonPath = "";
|
||||||
|
switch (os.platform().toLowerCase()){
|
||||||
|
case "darwin":
|
||||||
|
case "linux":
|
||||||
|
daemonPath = path.join(process.resourcesPath, 'tnc', 'freedata-daemon')
|
||||||
|
|
||||||
|
break;
|
||||||
|
case "win32":
|
||||||
|
case "win64":
|
||||||
|
daemonPath = path.join(process.resourcesPath, 'tnc', 'freedata-daemon.exe')
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Start daemon binary if it exists
|
||||||
|
if (fs.existsSync(daemonPath)){
|
||||||
mainLog.info('Starting freedata-daemon binary');
|
mainLog.info('Starting freedata-daemon binary');
|
||||||
|
daemonProcess = spawn(daemonPath,[],
|
||||||
if(os.platform()=='darwin'){
|
|
||||||
daemonProcess = spawn(path.join(process.resourcesPath, 'tnc', 'freedata-daemon'), [],
|
|
||||||
{
|
{
|
||||||
cwd: path.join(process.resourcesPath, 'tnc'),
|
cwd: path.join(daemonPath,".."),
|
||||||
});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
process.resourcesPath -->
|
|
||||||
/tmp/.mount_FreeDAUQYfKb/resources
|
|
||||||
|
|
||||||
__dirname -->
|
|
||||||
/tmp/.mount_FreeDAUQYfKb/resources/app.asar
|
|
||||||
*/
|
|
||||||
|
|
||||||
if(os.platform()=='linux'){
|
|
||||||
|
|
||||||
/*
|
|
||||||
var folder = path.join(process.resourcesPath, 'tnc');
|
|
||||||
//var folder = path.join(__dirname, 'extraResources', 'tnc');
|
|
||||||
console.log(folder);
|
|
||||||
fs.readdir(folder, (err, files) => {
|
|
||||||
console.log(files);
|
|
||||||
});
|
|
||||||
*/
|
|
||||||
|
|
||||||
daemonProcess = spawn(path.join(process.resourcesPath, 'tnc', 'freedata-daemon'), [],
|
|
||||||
{
|
|
||||||
cwd: path.join(process.resourcesPath, 'tnc'),
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if(os.platform()=='win32' || os.platform()=='win64'){
|
|
||||||
// for windows the relative path via path.join(__dirname) is not needed for some reason
|
|
||||||
//daemonProcess = exec('\\tnc\\daemon.exe', [])
|
|
||||||
|
|
||||||
daemonProcess = spawn(path.join(process.resourcesPath, 'tnc', 'freedata-daemon.exe'), [],
|
|
||||||
{
|
|
||||||
cwd: path.join(process.resourcesPath, 'tnc'),
|
|
||||||
});
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// return process messages
|
// return process messages
|
||||||
|
|
||||||
daemonProcess.on('error', (err) => {
|
daemonProcess.on('error', (err) => {
|
||||||
daemonProcessLog.error(`error when starting daemon: ${err}`);
|
daemonProcessLog.error(`error when starting daemon: ${err}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
daemonProcess.on('message', (data) => {
|
daemonProcess.on('message', (data) => {
|
||||||
daemonProcessLog.info(`${data}`);
|
daemonProcessLog.info(`${data}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
daemonProcess.stdout.on('data', (data) => {
|
daemonProcess.stdout.on('data', (data) => {
|
||||||
daemonProcessLog.info(`${data}`);
|
daemonProcessLog.info(`${data}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
daemonProcess.stderr.on('data', (data) => {
|
daemonProcess.stderr.on('data', (data) => {
|
||||||
daemonProcessLog.info(`${data}`);
|
daemonProcessLog.info(`${data}`);
|
||||||
|
|
||||||
let arg = {
|
let arg = {
|
||||||
entry: `${data}`
|
entry: `${data}`
|
||||||
};
|
};
|
||||||
|
@ -398,23 +366,23 @@ app.whenReady().then(() => {
|
||||||
// an logging information will be pushed to the logger
|
// an logging information will be pushed to the logger
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
daemonProcess.on('close', (code) => {
|
daemonProcess.on('close', (code) => {
|
||||||
daemonProcessLog.warn(`daemonProcess exited with code ${code}`);
|
daemonProcessLog.warn(`daemonProcess exited with code ${code}`);
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
daemonProcess=null;
|
||||||
|
daemonPath=null;
|
||||||
|
mainLog.info("Daemon binary doesn't exist--normal for dev environments.")
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
app.on('activate', () => {
|
||||||
|
|
||||||
app.on('activate', () => {
|
|
||||||
if (BrowserWindow.getAllWindows().length === 0) {
|
if (BrowserWindow.getAllWindows().length === 0) {
|
||||||
createWindow();
|
createWindow();
|
||||||
}
|
}
|
||||||
})
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
app.on('window-all-closed', () => {
|
app.on('window-all-closed', () => {
|
||||||
close_all();
|
close_all();
|
||||||
|
|
||||||
|
@ -782,6 +750,7 @@ function close_sub_processes(){
|
||||||
|
|
||||||
// closing the tnc binary if not closed when closing application and also our daemon which has been started by the gui
|
// closing the tnc binary if not closed when closing application and also our daemon which has been started by the gui
|
||||||
try {
|
try {
|
||||||
|
if (daemonProcess != null)
|
||||||
daemonProcess.kill();
|
daemonProcess.kill();
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
mainLog.error(e)
|
mainLog.error(e)
|
||||||
|
|
Loading…
Reference in a new issue