Cenário: ambiente corporativo, máquinas Windows XP e usuário sem permissão de administração.
Observação: embora o cenário descrito seja o Windows XP, os passos para o Windows 7 são bem parecidos.
--
TODO: observar Yeoman behind a (corporate) proxy
Versão Portavél - Portable Node.js
Basta descompactar a respectiva versão compatível com seu Windows em um diretório que você possua direito de escrita.
Por exemplo: D:/dev/nodejs
Feito isso, para facilitar o uso do Node.js pelo terminal de comandos, crie uma variável de ambiente NODE_PATH e aponte para o diretório onde você descompactou o Node.js, então adicione o NODE_PATH ao final da variável PATH.
Caminho:
Iniciar > Configurações > Painel de Controle > Sistema
ou
Windows Key (tecla com simbolo do Windows) + Pause
- Atalho para Sistema
Na janela do Sistema, selecione a aba: Avançado, no final de janela, clique no botão : "Variáveis de ambiente"
Feito isso o Node.js irá funcionar no terminal de comando através do comando: node
Observação: o npm (Node Packaged Modules), como está no mesmo diretório do node, também estará disponível no terminal de comando, porém será necessário algumas configurações para seu funcionamento correto.
O diretório dos pacotes globais do npm está apontando por padrão para o diretório de dados de aplicações do usuário no Windows, ou seja, em outro diretório, diferente do local onde está o Node.js e o NPM. Com isso, será necessário atualizar o diretório dos pacotes globais utilizados pelo npm.
Para isso via, terminal de comando utilize o comando:
npm config set prefix {Diretório do Node.js e NPM}
Feito isto, o Node.js e o NPM estão prontos para uso.
Lembrando que estamos em um ambiente corporativo, neste temos um PROXY entre o computador e a internet, e normalmente as redes corporativas utilizam PROXY NTLM, o npm não conseguirá acessar o repositório na internet. Com isto, será necessário o uso de um recurso auxiliar para passar pelo PROXY.
Conforme GitHub NPM ISSUE 2119 o NPM não possui suporte para acessar o repositório na internet através de um Proxy NTLM. Segundo a dica disponível na própria issue, será necessário utilizar uma alternativa local para passar pelo Proxy NTLM.
Dentre as alternativas apresentadas, foi utilizado:
NtlmMaps - NTLM Authorization Proxy Server (Python) | GitHub Code
NtlmMaps - é um proxy local onde se configura o proxy da empresa, definindo as configurações de acesso.
Como esta implementação é em Python, será necessário ter o Python 2.x no computador. (Recomendado instalar a versão 2.7.3 ou superior | Estou utilizando a versão 2.7.3)
Download : Python 2.x.x Windows Installer
Durante o processo de instalação, indique o diretório onde você possua acesso para escrita.
Por exemplo: D:/dev/python
Feito isso, para facilitar o uso do python pelo terminal de comandos, crie uma variável de ambiente PYTHON_PATH e aponte para o diretório onde você descompactou o Python, então adicione o PYTHON_PATH ao final da variável PATH.
caminho:
Iniciar > Configurações > Painel de Controle > Sistema
ou
Windows Key (tecla com simbolo do Windows) + Pause
- Atalho para Sistema
Na janela do Sistema, selecione a aba: Avançado, no final de janela, clique no botão : "Variáveis de ambiente"
Descompacte o arquivo do ntlmmaps em um diretório que possua acesso para escrita.
Por exemplo: D:/dev/ntlmmaps
Configurando o NtlmMaps:
- edite o arquivo server.cfg, os items abaixo (mantive a ordem em que aparece no arquivo):
PARENT_PROXY : host do proxy da empresa, sem o "http://"
PARENT_PROXY_PORT : respectiva porta utilizada pelo proxy da empresa
NT_DOMAIN : nome do domínio de rede que a sua empresa utiliza
USER : seu login de rede
PASSWORD : sua senha de rede, porém caso não queria preencher é possível, então quando for executar a aplicação lhe será solicitado a sua senha da rede
NT_PART : o valor padrão deste atributo é 0, porém em algumas redes NTLM precisam dessa informação como no meu caso, então este atributo foi alterado para 1
- edite o arquivo : runserver.bat
inicialmente ele possui um caminho predefinido do local de instalação do Python, porém como foi feito anteriormenteadicionado o Python ao PATH do Windows, basta alterar essa string por: python >> onde a linha ficará:
python main.py
Uma vez configurado, execute o runserver.bat
Pelo terminal de comando execute os respectivos comandos para configurar o NPM.
npm config set proxy http://localhost:5865
npm config set registry "http://registry.npmjs.org/"
Aponta o NPM para o proxy local e altera a URL do repositório de pacotes do Node.js do https para o http.
Feito as respectivas configurações, agora o seu ambiente de desenvolvimento Node.js e NPM irá funcionar corretamente via linha de comando.
Uma boa ferramenta que pode ser utilizada neste ambiente, é o Sublime Text 2, a qual possui versão portável.
Mas aqui configurações avançadas do sistema pede senha adm, aí não consigo variáveis de ambiente :(