mirror of
https://github.com/aljazceru/pear-docs.git
synced 2025-12-17 22:44:21 +01:00
windows PATH
This commit is contained in:
@@ -174,22 +174,13 @@ customElements.define('system-status', class extends HTMLElement {
|
|||||||
fs.writeFileSync(cmdtmp, `@echo off\n"${runtime}" %*`)
|
fs.writeFileSync(cmdtmp, `@echo off\n"${runtime}" %*`)
|
||||||
fs.renameSync(cmdtmp, path.join(BIN, 'pear.cmd'))
|
fs.renameSync(cmdtmp, path.join(BIN, 'pear.cmd'))
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
spawn('cmd', ['/c', `setx PATH "${BIN};%PATH%"`]).on('exit', (code) => {
|
spawn('powershell', ['-Command', `[System.Environment]::SetEnvironmentVariables("PATH", "${BIN};${process.env.PATH}", "User")`]).on('exit', (code) => {
|
||||||
const codes = [code]
|
if (code !== 0) {
|
||||||
spawn('powershell', ['-Command', `$env:PATH = "${BIN};$env:PATH"`]).on('exit', (code) => {
|
reject(new Error('Failed to set PATH'))
|
||||||
codes.push(code)
|
return
|
||||||
if (codes[0] + codes[1] !== 0) {
|
}
|
||||||
reject(new Error(
|
process.env.PATH = `${BIN};${process.env.PATH}`
|
||||||
'Failed to set PATH in' + [
|
resolve()
|
||||||
codes[0] ? ' cmd - exit code: ' + codes[0] : '',
|
|
||||||
codes[1] ? ' powershell - exit code:' + codes[1] : ''
|
|
||||||
].filter(Boolean)
|
|
||||||
))
|
|
||||||
return
|
|
||||||
}
|
|
||||||
process.env.PATH = `${BIN};${process.env.PATH}`
|
|
||||||
resolve()
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user