windows PATH

This commit is contained in:
dmc
2024-02-14 19:12:01 +01:00
parent a4d631e047
commit 8d730127ee

View File

@@ -174,24 +174,15 @@ customElements.define('system-status', class extends HTMLElement {
fs.writeFileSync(cmdtmp, `@echo off\n"${runtime}" %*`)
fs.renameSync(cmdtmp, path.join(BIN, 'pear.cmd'))
return new Promise((resolve, reject) => {
spawn('cmd', ['/c', `setx PATH "${BIN};%PATH%"`]).on('exit', (code) => {
const codes = [code]
spawn('powershell', ['-Command', `$env:PATH = "${BIN};$env:PATH"`]).on('exit', (code) => {
codes.push(code)
if (codes[0] + codes[1] !== 0) {
reject(new Error(
'Failed to set PATH in' + [
codes[0] ? ' cmd - exit code: ' + codes[0] : '',
codes[1] ? ' powershell - exit code:' + codes[1] : ''
].filter(Boolean)
))
spawn('powershell', ['-Command', `[System.Environment]::SetEnvironmentVariables("PATH", "${BIN};${process.env.PATH}", "User")`]).on('exit', (code) => {
if (code !== 0) {
reject(new Error('Failed to set PATH'))
return
}
process.env.PATH = `${BIN};${process.env.PATH}`
resolve()
})
})
})
}
const comment = '# Added by Pear Runtime, configures system with Pear CLI\n'
const profiles = Object.values(this.shellProfiles)