Ambiente de nó de área de trabalho
Editar páginaO HagiCode Desktop é fornecido com um conjunto de ferramentas Node gerenciado por Desktop. Ele não assume a instalação global do Node em seu computador. Seu objetivo é fornecer aos fluxos relacionados ao tempo de execução e à inicialização do Desktop uma base de tempo de execução estável e verificável.
Leia este FAQ se você ver portable-fixed/toolchain em diagnósticos, preciso saber quais node O Desktop está usando ou está se perguntando por que a versão do Node do seu sistema não define diretamente o comportamento do tempo de execução do Desktop.
Por que o Desktop agrupa o Node
Seção intitulada “Por que o Desktop agrupa o Node”O desktop precisa executar os mesmos fluxos de suporte em sistemas operacionais, canais de instalação e ambientes de usuário. Se dependesse apenas da instalação existente do Node do usuário, o suporte teria que lidar com versões desatualizadas, npm ausentes, ordem de caminho incorreta, pacotes globais poluídos e políticas de registro específicas da organização, tudo de uma vez.
Desktop descreve isso mais especificamente como um tempo de execução Node/npm isolado para CLIs gerenciadas, em vez de reutilizar o ambiente de todo o sistema. Este design tem estes benefícios principais:
- Versões consistentes: o Desktop usa um contrato de tempo de execução fixo do Node 22 em vez de adivinhar a versão principal local do usuário.
- Fluxos de inicialização controlados: comandos gerenciados por desktop podem preferir o pacote
nodeenpmentradas. - Limites de configuração claros: a configuração relacionada à CLI é mantida separada da configuração global de todo o host, portanto, atualizações, comutação e recuperação têm menos probabilidade de serem interrompidas por diferenças no ambiente do sistema.
- Conflitos reduzidos: Os caminhos agrupados se aplicam a ambientes de comando criados pelo Desktop e não substituem o nó global do usuário em seu terminal.
- Comportamento de host não intrusivo: esse isolamento evita gravar o estado do conjunto de ferramentas no ambiente Node/npm existente do usuário, e a desinstalação do Desktop não perturba o Node, o npm ou a configuração já presente na máquina.
Como o Desktop seleciona o caminho do nó
Seção intitulada “Como o Desktop seleciona o caminho do nó”Quando você executa o Desktop normalmente, o Desktop prefere o conjunto de ferramentas do Node instalado com o aplicativo em vez de primeiro ler a instalação do Node em seu sistema. Isso mantém a versão do Node em seu terminal separada da versão do Node que o Desktop espera enquanto é executado.
Quando o conjunto de ferramentas incluído está ativado, os ambientes de comando criados pelo Desktop colocam os caminhos do conjunto de ferramentas incluído na frente do PATH. Como resultado, mesmo que seu sistema tenha outra versão do Node instalada, os fluxos gerenciados pelo Desktop são resolvidos primeiro para o Node e o npm do Desktop.
Isso afeta apenas ambientes de tempo de execução criados pelo Desktop. Se você correr node, npm, ou outros comandos diretamente no terminal do sistema, eles continuarão a usar o ambiente normal do sistema e a configuração do shell.
Em ambientes de diagnóstico ou de processos filhos iniciados pelo Desktop, você poderá ver uma variável como esta:
HAGICODE_PORTABLE_TOOLCHAIN_ROOT=/path/to/portable-fixed/toolchainEsta variável significa que o ambiente de tempo de execução gerenciado pelo Desktop reconheceu a raiz do conjunto de ferramentas empacotado. Ver esse caminho não significa que o Desktop mudou o nó do sistema; significa apenas que o Desktop está usando o ambiente Node fornecido com o aplicativo dentro de seu próprio escopo de tempo de execução.
Onde o Desktop instala pacotes npm gerenciados
Seção intitulada “Onde o Desktop instala pacotes npm gerenciados”O Desktop mantém arquivos de tempo de execução e arquivos de pacotes npm mutáveis em locais diferentes. O caminho do conjunto de ferramentas incluído, como portable-fixed/toolchain/node é a fonte imutável para o gerenciado por desktop node e npm comandos. Em vez disso, os pacotes globais gerenciados são instalados no diretório de dados do usuário Electron:
userData/node22/npmGlobalSe o Desktop for posteriormente movido para o Nó 24, ele usará uma árvore de pacotes separada, como userData/node24/npmGlobal. Os pacotes instalados para o Nó 22 permanecem no disco, mas não são tratados como instalados para o Nó 24 até que sejam reinstalados no novo prefixo Node-major.
O status de dependência da área de trabalho verifica apenas o ativo userData/node<major>/npmGlobal prefixo. Os arquivos de pacote fora desse prefixo são ignorados pelo gerenciamento de dependências.