Terminal: Investigar mecanismos de implantação alternativos para o Windows Terminal

Criado em 22 jun. 2019  ·  114Comentários  ·  Fonte: microsoft/terminal

Ter uma versão portátil do terminal facilita copiar e colar em máquinas algumas vezes em servidores. Ter que instalar da loja não é conveniente.

Area-Build Issue-Feature Product-Terminal

Comentários muito úteis

@methodbox você não precisa ser indelicado com isso ☹️. Nós ouvimos você alto e claro. Estamos cientes de que precisamos de alguns modelos de distribuição diferentes.

Todos 114 comentários

Deixe-me saber se/quando alguém está olhando para isso. Estamos seguindo esse caminho para o WinDbg Preview, então provavelmente teremos alguma orientação sobre quais opções analisamos e prós/contras.

Este é um recurso interessante.

  1. Instale o Visual C++ redistribuível

    https://aka.ms/vs/16/release/vc_redist.x64.exe

  2. Visite https://dev.azure.com/ms/Terminal/_build

  3. Selecione a compilação master mais recente
  4. Clique em Artefatos
  5. Clique em appx-Release
  6. Extrair appx-Release.zip
  7. Extrair CascadiaPackage_0.0.1.0_x64.msix
  8. Abrir WindowsTerminal.exe

Observe que isso não funciona para mim, o Terminal não abre.
No entanto, talvez alguém possa encontrar a peça que falta aqui.

O que está faltando é uma cópia local dos tempos de execução do contêiner de aplicativos vcruntime140_app e msvcp???_app . Caso contrário, o Terminal do Windows deve ser ativado com um clique duplo.

Por que exatamente a MS lançou um aplicativo Terminal que não pode ser usado em servidores?

Você realmente acha que seu usuário principal está usando apenas o Windows 10?

Eu sei que vocês estão tentando abraçar os mundos de desenvolvimento e de código aberto, mas talvez pergunte a seus usuários o que eles querem antes de lançar o que seria uma ótima ferramenta em um ambiente que é menos provável de ser o usuário principal.

Estou assistindo este tópico na esperança de que alguém descubra como fazer isso; Eu poderia compilá-lo, mas infelizmente instalar uma pilha de compilação C++ no trabalho não vai acontecer.

@methodbox você não precisa ser indelicado com isso ☹️. Nós ouvimos você alto e claro. Estamos cientes de que precisamos de alguns modelos de distribuição diferentes.

Mais uma vez, eu ouço você. O negócio é o seguinte: _esta é uma versão de pré-lançamento_ e, devido aos nossos recursos disponíveis, temos que nos certificar de que os estamos investindo com sabedoria. Permitir que outra pessoa faça a distribuição e instalação libera um mês inteiro de tempo de engenharia gasto construindo e testando um instalador em todas as nossas configurações suportadas. É por isso que está em nosso _backlog_. Reconhecemos que é extremamente importante para um grande subconjunto de nossos usuários em potencial, mas estamos priorizando recursos, desempenho e correções de bugs primeiro.

Mais uma vez, eu ouço você. O negócio é o seguinte: _esta é uma versão de pré-lançamento_ e, devido aos nossos recursos disponíveis, temos que nos certificar de que os estamos investindo com sabedoria. Permitir que outra pessoa faça a distribuição e instalação libera um mês inteiro de tempo de engenharia gasto construindo e testando um instalador em todas as nossas configurações suportadas. É por isso que está em nosso _backlog_. Reconhecemos que é extremamente importante para um grande subconjunto de nossos usuários em potencial, mas estamos priorizando recursos, desempenho e correções de bugs primeiro.

Acho que estou confuso com isso. Você diz que deixar alguém distribuí-lo economizaria tempo e esforço (alguém mais sendo o GitHub?) mas não foi isso que foi feito primeiro ?

Eu também não estava sendo indelicado; Eu estava fazendo uma pergunta séria, e fazendo algumas declarações sérias.

Não tenho tempo no trabalho para instalar todas as necessidades do VS para compilar isso e tentar usá-lo no Windows Server ou faria, e também não entendo o público-alvo do Windows 10 e fiquei legitimamente curioso se há algo Não sei se isso os tornaria os primeiros alvos.

Lamento que as críticas pareçam indelicadas, mas essas são preocupações legítimas.

  • um exe capaz de xcopy é o que é necessário. Ferramentas elétricas como console não precisam de instalador. Um instalador é um exagero e, por favor, evite-o. Portanto, você não precisa gastar meses de testes. Da última vez que verifiquei, o visual studio tinha a capacidade de produzir exe no modo de lançamento que está devidamente assinado.

  • como usuários avançados, não estamos impressionados com a decisão de escolher a loja como modelo de distribuição primária. Pois, ontem tentei instalar este console na minha máquina de trabalho e adivinhem, a loja está configurada com minha conta do Hotmail porque precisa de uma conta da Microsoft que não é minha conta de trabalho e tive a opção de instalar o console no meu PC pessoal que estava em casa. Eu precisava do console na minha máquina de trabalho, não na minha máquina pessoal.

  • em resumo, simplesmente isso. Facilite o acesso a esta ferramenta para que possamos usá-la. Caso contrário, estou feliz com o ConEmu, que uso há muitos anos.

A versão portátil é obrigatória para nosso ambiente de desenvolvimento empresarial cada vez mais restritivo.
Nós não temos os direitos de administrador em nossos desktops, espero que tenhamos vscode, pwsh, python, git, conemu, etc. em uma versão zip, então eu realmente gostaria de ver a mesma coisa para o Terminal.

  1. Instale o Visual C++ redistribuível
    https://aka.ms/vs/16/release/vc_redist.x64.exe
  2. Visite https://dev.azure.com/ms/Terminal/_build
  3. Selecione a compilação master mais recente
  4. Clique em Artefatos
  5. Clique em appx-Release
  6. Extrair appx-Release.zip
  7. Extrair CascadiaPackage_0.0.1.0_x64.msix
  8. Abrir WindowsTerminal.exe

Observe que isso não funciona para mim, o Terminal não abre.
No entanto, talvez alguém possa encontrar a peça que falta aqui.

Em vez de executar o WindowsTerminal.exe, você deve registrar o aplicativo no PowerShell:
Add-AppxPackage .\AppxManifest.xml -Register

Em seguida, ele aparece no menu Iniciar e, a partir daí, você pode iniciá-lo.
Observe que você pode precisar habilitar o modo de desenvolvedor no menu de configurações primeiro, eu já o habilitei, então não tenho certeza se funciona sem ele.

Obrigado por atender à necessidade da comunidade de desenvolvedores de um terminal melhor. Este é um aplicativo que eu queria ver no Windows há anos e espero experimentá-lo em breve. Fico feliz em pegar uma compilação do mestre, mas atualmente estou no Windows Server 2019 Datacenter LTSC.

PERGUNTAR:

  • Suporte para Windows Server 2019 LTSC, Microsoft Windows NT 10.0.17763.0

  • Instruções de instalação ou um link para tais instruções em README.md:

  1. Instale o Visual C++ Redistributable (consulte https://aka.ms/vs/16/release/vc_redist.x64.exe)
  2. Visite https://dev.azure.com/ms/Terminal/_build
  3. Selecione a compilação mestre mais recente
  4. Clique em Artefatos
  5. Clique em appx-Release
  6. Extraia appx-Release.zip
  7. Extrair CascadiaPackage_0.0.1.0_x64.msix
  8. Abra o WindowsTerminal.exe

O que está faltando é uma cópia local dos tempos de execução do contêiner de aplicativos vcruntime140_app e msvcp???_app . Caso contrário, o Terminal do Windows deve ser ativado com um clique duplo.

@DHowett-MSFT Você poderia nos dar alguma orientação sobre como instalá-los?

Eu adoraria testá-lo no trabalho, mas sem chance de usar a Windows Store lá. Tentei construí-lo sozinho em uma versão anterior e até consegui fazê-lo, mas como demorou quase 40 GB entre os requisitos do Visual Studio e o próprio repositório após as compilações, rapidamente se tornou incontrolável no meu espaço SSD limitado.

E não se importe com os comentários negativos, a propósito. O terminal está saindo muito bem (realmente eu testei em casa com o WSL 2 e nunca tive uma experiência de terminal tão suave no Windows antes). Algumas pessoas não entendem o objetivo de uma prévia, mas isso é porque elas também estão ansiosas por isso.

Com o tempo, ele ficará fora de visualização e todos (ou pelo menos a maioria dos usuários) ficarão felizes.

2. Visite https://dev.azure.com/ms/Terminal/_build

Pessoas não-MSFT não têm permissões para os artefatos

Baixei os artefatos, mas não consegui instalar o .msix clicando duas vezes porque dizia que não foi assinado por um certificado confiável.

Consegui fazê-lo funcionar baixando o artefato, extraindo o .msix para uma pasta e executando Add-AppxPackage AppxManifest.xml -Register do Powershell dentro da pasta. Agora posso executá-lo abrindo se no menu Iniciar como "Windows Terminal (Dev Build)".

Um processo bastante hacky, mas funcionou por enquanto.

A loja do Windows é um pedaço de software quebrado. É como o bebê chorão que sempre precisa de sua atenção e nunca faz nada que você espera que faça. Confiar nele é o mesmo que dizer _por favor, não instale nossas coisas_.

Acabei de ser redirecionado aqui do #1757 e é bom ver tanta tração nisso.

E por que complicar uma coisa simples? Baixe, instale e pronto.

Aqui está o negócio: esta é uma versão de pré-visualização

Sim, e as pessoas já estão animadas com isso. A dor de lidar com o bloco de notas de linhas de comando (também conhecido como cmd.exe) deve ser enlouquecedora para levar as pessoas a experimentar um terminal melhor, mesmo que seja pré-lançamento. Além disso, há hype no twitter.

Por favor, não veja nossos comentários como desabafos. Nós _queremos_ colocar nossas mãos nele o mais rápido possível. Mandar-nos para a Loja é bater a porta na nossa cara. Queremos investir nosso tempo com sabedoria também. Gastá-los corrigindo problemas de armazenamento do Windows definitivamente não é um uso produtivo do tempo de ninguém. Eu espero que você entenda!

Estou MUITO frustrado com essa experiência de "instalação". Coloquei install entre aspas porque não consigo instalar. A Loja me dá uma lista de algumas das minhas máquinas para a instalação... mas não aquela em que estou realmente. E mesmo se eu escolher uma das máquinas listadas, ele me diz que está tentando instalar, mas aparentemente nada é instalado. E não há feedback para eu usar como ponto de partida para solução de problemas - nenhuma mensagem de erro ou informações de log, apenas silêncio.

Estou incomodado que não haja apenas um instalador normal, como estamos usando há décadas. E estou incomodado que a Windows Store parece não ser capaz de direcionar a máquina em que estou realmente (isso não deveria ser um dado?). Com todo o respeito, não quero gastar tempo solucionando problemas do meu ambiente da Windows Store para descobrir por que ele não reconhece meu sistema (e sim... definitivamente atende aos requisitos) ou por que o processo de instalação parece fazer absolutamente nada. Eu não uso a Loja com frequência, mas não me lembro de alguma vez ter que selecionar um sistema de destino para a instalação. Este é um novo recurso? De qualquer forma, esta experiência foi terrível.

Sou desenvolvedor há mais de 20 anos. Mas mesmo eu não quero baixar a fonte para isso e compilá-lo. Eu só queria um executável compilado que eu pudesse instalar e executar.

@drullo Verifique as informações do seu sistema operacional. Não é tão óbvio, mas se você rolar um pouco para baixo, ele mostrará sua configuração atual versus necessária. Se for esse o caso, você terá que decidir se deseja arriscar atualizar para a versão atual do sistema operacional ou viver sem usar o terminal.

Nada disso é ruim em teoria, mas a forma como é implementado (loja do Windows) é muito feio (instável, muitas coisas podem e vão dar errado) e honestamente, não vale a pena gastar tempo apenas para instalar um aplicativo (não apenas terminal mas qualquer aplicativo da loja).

Infelizmente, a loja de aplicativos e as atualizações do sistema operacional no Mac são uma experiência muito mais suave. Ele tem seus próprios problemas, mas nenhum que esteja em um nível primitivo e básico.

Por favor, aumente a prioridade neste... Provavelmente é o recurso mais solicitado...

Como primeiro passo para a distribuição alternativa, publiquei os pacotes MSIX (assinados, atualizáveis ​​para armazenamento) na página de lançamentos . Eles devem ser instaláveis ​​com um clique duplo no 1903+, mas pode haver alguns pacotes de dependência que precisam ser instalados. Estamos trabalhando para tornar esse processo um pouco melhor. Por favor, tenha paciência conosco.

No momento, precisamos de um contexto de instalação MSIX/appx para pesquisa de recursos (ícones, strings, etc.) e ativação de componentes (para que possamos carregar nossas DLLs constituintes), mas o progresso está sendo feito para tornar esse requisito um pouco mais relaxado, pois Nós vamos.

Na verdade, gosto da ideia de usar a implantação do msix. Msix tem suporte até mesmo para Windows 7, então uma instalação com duplo clique usando msix seria ótima.

@DHowett-MSFT este é um bom começo!

  • Eu ainda gostaria de uma versão portátil no futuro (como os aplicativos sysinternals)
  • Atualize o arquivo leia-me fornecendo links para a página de lançamentos para que as pessoas possam realmente perceber que está disponível fora da Loja.

@amithegde Atualizamos o ReadMe - obrigado por sua sugestão.

https://github.com/microsoft/terminal#installation

Tentando instalar offline usando o MSIX da página de lançamento, e receber a mensagem de erro, ao iniciar o WindowsTerminal.exe A licença do dispositivo CLiP não foi encontrada. Não tenho certeza de como corrigir isso

O instalador off-line é urgentemente necessário para ter o WT instalado em nossos servidores.

Encontrei esse problema após várias tentativas malsucedidas de instalar o Windows Terminal. O problema aqui é que o Windows 10 LTSC (versão de suporte de longo prazo) usado em muitos ambientes profissionais é a versão 1809 (compilação 17763), enquanto o Windows Terminal é empacotado como um pacote MSIX de arquivos MSIX instaláveis ​​apenas em versões mais recentes do Windows 10.

Isso torna o Windows Terminal inutilizável em ambientes profissionais em seu estado atual. Embora, conforme declarado pela Microsoft, o próximo LTSC não seja lançado até 2021. Se outro mecanismo de implantação não for fornecido, o Windows Terminal permanecerá inutilizável em ambientes profissionais por mais dois anos.

Eu não sou um desenvolvedor centrado no Windows, então não sei qual é o custo / fardo de liberar um arquivo exe vinculado estaticamente como uma solução temporária rápida e suja, mas se isso for possível, seria ótimo. Qualquer forma de versão autônoma/portátil seria muito apreciada (como sublinhado por todos os comentários anteriores ;) ).

Editar:

Alguns pensamentos adicionais,

  • em ambiente profissional a Windows Store normalmente está desabilitada (assim ativando o modo de desenvolvedor e usando add-appxpackage pode precisar de uma documentação clara no README na minha opinião);
  • seria bom esclarecer os requisitos de compatibilidade no README (em termos de versão do Windows 10 necessária/compatível).

@NBardelot Em "ambientes profissionais", não há como você precisar da versão LTSC do Windows e do Windows Terminal juntos, bah, você não precisará do LTSC, a menos que esteja executando sistemas muito críticos, o que duvido.
Em "ambientes profissionais" se for necessário ter um aplicativo que esteja disponível na Microsoft Store, é possível passar pelo processo padrão de solicitação de coisas normalmente presentes em sua empresa (ITIL).
O Windows Terminal visa desenvolvedores que estão perfeitamente bem em ter a versão Insider do Windows - não entendo o argumento de tê-lo em LTSC, especialmente quando está em PREVIEW , o que contradiz o propósito do LTSC.
Está muito claro o que você precisa ter para executá-lo: Requisitos & e Microsoft Store.

@gh4chris Não é urgentemente necessário, o CMD e o PowerShell estão disponíveis no Windows Server - não há argumento razoável para que você precise.

A suposição deve ser para qualquer adoção corporativa, que o uso fora da loja seja necessário. A maioria dos ambientes de produção bem construídos não tem acesso à Internet e usa ferramentas de implantação.

Por que há resistência em torno da conveniência?

Portanto, para registro, fornecemos mecanismos de instalação que não são da loja - consulte nossa página de lançamentos . No entanto, não podemos mudar o requisito de versão de compilação do Windows. Dependemos de alguns recursos do sistema operacional que só foram lançados na versão mais recente do Windows 10. Essa é a verdadeira razão pela qual não poderemos trabalhar no LTSC.

@zadjii-msft isso é perfeitamente compreensível, embora eu deva sublinhar novamente que, infelizmente, isso significa que não há Terminal do Windows até 2021 para muitos casos de uso interessantes (e ampla adoção, quando você estiver no modo de lançamento). Se houver alguma maneira de contornar essas limitações de que você fala, espero que você leve isso em consideração :)

@CatTheHacker Obrigado por seus insights. Por favor, entenda também que dizer a outras pessoas que você sabe melhor o que elas precisam ou não é meio rude, já que você não tem todas as informações disponíveis e pode entender mal as restrições. Dito isso, ilustrarei com prazer meu caso de uso, já que seu mal-entendido também é minha falta de explicação.

Atualmente trabalho em um ambiente bastante seguro, para uma grande empresa. Os desktops executam o Windows 10 LTSC por motivos de segurança e manutenção (e não tenho liberdade para alterar isso). Não estou falando de máquinas/servidores críticos, mas de estações de trabalho dev & ops. Um dos nossos objetivos é prototipar e testar ferramentas que ainda não estão otimizadas em ITIL/repositórios etc., e explorar o que pode ser feito para facilitar a vida dos desenvolvedores e operações. Isso até nos leva a comparar SO vs ferramentas de SO, o que é uma verdadeira mudança de paradigma para esse tipo de empresa. Nesse cenário, executar uma versão prévia do Windows Terminal e começar a mostrar às pessoas como trabalhar bem com terminais (porque Powershell, docker, kubernetes/openshift...) é uma necessidade.

Seria ótimo ter uma maneira de automatizar a instalação do aplicativo Windows Terminal a partir da linha de comando.

@NBardelot - Obrigado por suas informações e pensamentos aqui.

MSIX

No momento, estamos criando o Terminal em pacotes MSIX, pois esse é o caminho estratégico para empacotar aplicativos no Windows. Não somos avessos a considerar outros formatos de embalagem se houver demandas suficientes para isso, mas por enquanto estamos focando em cenários convencionais para lidar com a maioria das necessidades da comunidade.

Dito isso, estou investigando os planos da equipe MSIX. SKUs LTS. Avisarei quando tiver notícias deles.

LTS

Observe que os SKUs LTS são, por definição, mais restritos e atualizados com menos frequência do que os SKUs de versão geral. Por causa disso, há uma boa chance de que produtos e recursos mais novos demorem mais para chegar e/ou não sejam compatíveis com LTS SKUs. Em suma, se você deseja executar as melhores e mais recentes ferramentas e tecnologia logo após o lançamento, PODE ser necessário considerar SKUs não LTS.

As empresas que precisam de maior controle sobre a configuração de suas plataformas, ao mesmo tempo em que permitem que os usuários implantem aplicativos aprovados automaticamente e/ou implantem aplicativos gerenciados conhecidos, podem explorar a Windows Store For Business, que pode se integrar ao SCCM e ao InTune para implantação automatizada, etc. . de aplicativos aprovados.

Atualizaremos nossos documentos v. em breve e definitivamente incorporaremos alguns de seus comentários e solicitações para tornar esta área mais fácil de entender.

Para sua informação, agora existe um pacote de chocolate , então é possível executar choco install microsoft-windows-terminal para instalar o aplicativo.

Muito obrigado a @mkevenaar que parece ter juntado isso! 🎉

@SeanKilleen Absolutamente - sou um ENORME fã de Chocolatey e agradeço @mkevenaar por criar o pacote Chocolatey para se referir ao nosso último lançamento :)

https://github.com/mkevenaar/chocolatey-packages/blob/master/automatic/microsoft-windows-terminal/update.ps1#L8

@SeanKilleen Absolutamente - sou um ENORME fã de Chocolatey e agradeço @mkevenaar por criar o pacote Chocolatey para se referir ao nosso último lançamento :)

https://github.com/mkevenaar/chocolatey-packages/blob/master/automatic/microsoft-windows-terminal/update.ps1#L8

@bitcrazed Seja muito bem-vindo! Ele executa o script de atualização a cada 6 horas e geralmente leva menos de 1 hora para ser processado pelo site chocolate!

[Atualização: links anteriores substituídos]:

Se você estiver instalando o Windows Terminal manualmente e não tiver o VC Redist instalado, o Terminal falhará ao instalar e/ou executar.

Baixe e instale o pacote de estrutura C++ Runtime v14 para Desktop Bridge:
https://www.microsoft.com/en-us/download/details.aspx?id=53175

Os pacotes da estrutura do C++ Runtime serão copiados para uma pasta em %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits10\ExtensionSDKs\Microsoft.VCLibs.Desktop.

👉 Observação: você também pode instalar os pacotes manualmente usando o cmdlet Add-AppxPackage PowerShell.

(Relacionado a #2369)

^ Ainda falha para mim. Ele tenta instalar Visual C++ run-time for UWP da Loja e, infelizmente, a loja não pode acessar a Internet devido a restrições.

Evento após a instalação do choco esta mensagem aparece:
Capture

Ei @mubaidr : atualizei minha resposta acima para vincular à ponte de desktop VC++ Runtime redist. Por favor, tente isso e deixe-me saber se isso resolve o seu problema.

Continua a mesma mensagem de erro :(
Capture

Nosso SysAdmin desativou a Windows Store e não temos conectividade aberta com a Internet. Então, precisamos de um pacote de instalação.

@rfresow - publicamos todas as compilações do Terminal lançadas publicamente na loja e nas versões neste repositório: https://github.com/microsoft/terminal/releases

⚠ Observação: como você está instalando manualmente, certifique-se de atualizar manualmente regularmente - nosso objetivo é publicar uma vez por mês.

@mubaidr - desculpe, você está tendo problemas aqui. Posso pedir que você desinstale o Terminal, reinicie sua máquina, reinstale? Temo que algo incomum esteja acontecendo com a configuração da sua máquina.

^ @bitcrazed Estou começando a pensar o mesmo. Planejamento para nova configuração. Desinstalar e reiniciar também não ajudou. Então vou começar com uma configuração limpa.

FWIW, tenho me deparado com os mesmos requisitos de VC. Nós também temos o acesso à Windows Store desativado por vários motivos (redes offline, etc.)

Seria bom ter o terminal disponível para instalar conforme necessário em coisas como hosts de salto, etc.

Ei @mubaidr : atualizei minha resposta acima para vincular à ponte de desktop VC++ Runtime redist. Por favor, tente isso e deixe-me saber se isso resolve o seu problema.

@bitcrazed Acredito que o download acima não é novo o suficiente para o que o terminal é construído. O meu reclama das versões...

Depois de instalar o UWP VCLibs do seu link, é a versão 14.24222.0 (de Programas e recursos); mas se eu fizer Get-AppXPackage:

Microsoft.VCLibs.140.00.UWPDesktop_14.0.27810.0_x64__8wekyb3d8bbwe
Microsoft.VCLibs.140.00.UWPDesktop_14.0.27810.0_x86__8wekyb3d8bbwe

O link acima é de 2016...

O mesmo problema - o arquivo vc_uwpdesktop.140.exe do link contém versões antigas do Microsoft.VCLibs - depois de instalá-lo em C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0\Appx\ você pode encontrar:

  • 14.0.24217.0 na pasta "Varejo"
  • versão 14.0.24222.0 na pasta "Debug"

O Terminal do Windows requer a versão mínima 14.0.27323.0 . Existe alguma maneira de instalá-lo sem o Store ativado?

Eu construí (e tenho usado, yay) Terminal da fonte há alguns meses com VS2019 e W10 1903. No entanto, não consigo executar o novo msixbundle , não tenho permissões para acessar os artefatos do Azure e, quando fiz um git pull e tentei reconstruir no VS, recebi vários erros mesmo depois de obter as atualizações recomendadas do NuGet e instalar o Dot Net 4.7.2.

Tristeza :(

O Windows Server 2019 não tem suporte de qualquer maneira. E sim, usamos apenas lançamentos LTSB não porque somos "reacionários". Mas porque trabalhamos em empresas reais com mais de 5.000 servidores e até mesmo tentar atualizá-los todos os anos é um inferno.

Vincular todos esses outros itens a esse bug é ótimo - mas está perdendo tempo para muitas pessoas que desejam instalar isso no sistema operacional do servidor. Por favor, adicione uma linha ao readme do projeto que diz:

"Procurando instalar o Windows Terminal no Windows Server 2019? - Ainda não chegamos lá, volte mais tarde!..."

Vincular todos esses outros itens a esse bug é ótimo - mas está perdendo tempo para muitas pessoas que desejam instalar isso no sistema operacional do servidor. Por favor, adicione uma linha ao readme do projeto que diz:

"Procurando instalar o Windows Terminal no Windows Server 2019? - Ainda não chegamos lá, volte mais tarde!..."

readme já afirma:

Note: Windows Terminal requires Windows 10 1903 (build 18362) or later

O mesmo problema - o arquivo vc_uwpdesktop.140.exe do link contém versões antigas do Microsoft.VCLibs - depois de instalá-lo em C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0\Appx\ você pode encontrar:

  • 14.0.24217.0 na pasta "Varejo"
  • versão 14.0.24222.0 na pasta "Debug"

O Terminal do Windows requer a versão mínima 14.0.27323.0 . Existe alguma maneira de instalá-lo sem o Store ativado?

Estou em um ambiente sem acesso à Microsoft Store e também tive esse problema. Parece que a versão que instalei é 14.0.26905.0. A versão que você obtém através do download manual é 14.0.24217.0. Não vejo nenhuma maneira de instalar o 14.0.27323.0 sem a MS Store.

  • 14.0.24217.0 na pasta "Varejo"
  • versão 14.0.24222.0 na pasta "Debug"

Eu tenho essas versões instaladas e o Terminal 0.6.2951.0 está funcionando ok.

Talvez o VC 14.0.27323.0 esteja instalado em outro lugar do meu sistema, mas acho que não. Onde esse requisito é mencionado?

  • 14.0.24217.0 na pasta "Varejo"
  • versão 14.0.24222.0 na pasta "Debug"

Eu tenho essas versões instaladas e o Terminal 0.6.2951.0 está funcionando ok.

Talvez o VC 14.0.27323.0 esteja instalado em outro lugar do meu sistema, mas acho que não. Onde esse requisito é mencionado?

Seu computador tem acesso à MS Store? O meu não. Recentemente, atualizei para 1909, que pode ser de onde veio minha versão 14.0.26905.0, mas não tenho certeza.

Este é o erro que recebo ao tentar instalar:

PS C:\> Add-AppPackage -path "C:\Microsoft.WindowsTerminal_0.6.2951.0_8wekyb3d8bbwe.msixbundle"
Add-AppPackage : Deployment failed with HRESULT: 0x80073CF3, Package failed updates, dependency or conflict validation.
Windows cannot install package Microsoft.WindowsTerminal_0.6.2951.0_x64__8wekyb3d8bbwe because this package depends on
a framework that could not be found. Provide the framework "Microsoft.VCLibs.140.00.UWPDesktop" published by
"CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US", with neutral or x64 processor
architecture and minimum version 14.0.27323.0, along with this package to install. The frameworks with name
"Microsoft.VCLibs.140.00.UWPDesktop" currently installed are:
Windows cannot install package Microsoft.WindowsTerminal_0.6.2951.0_x64__8wekyb3d8bbwe because this package depends on
a framework that could not be found. Provide the framework "Microsoft.VCLibs.140.00.UWPDesktop" published by
"CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US", with neutral or x64 processor
architecture and minimum version 14.0.27323.0, along with this package to install. The frameworks with name
"Microsoft.VCLibs.140.00.UWPDesktop" currently installed are:
{Microsoft.VCLibs.140.00.UWPDesktop_14.0.26905.0_x86__8wekyb3d8bbwe
Microsoft.VCLibs.140.00.UWPDesktop_14.0.26905.0_x64__8wekyb3d8bbwe}
NOTE: For additional information, look for [ActivityId] edfb45f8-a09f-0003-a403-fced9fa0d501 in the Event Log or use
the command line Get-AppPackageLog -ActivityID edfb45f8-a09f-0003-a403-fced9fa0d501
At line:1 char:1
+ Add-AppPackage -path "C:\Microsoft.WindowsTerminal_0.6.2951.0_8wekyb3 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (C:\Microsoft.Wi...bbwe.msixbundle:String) [Add-AppxPackage], IOException
    + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand

  • 14.0.24217.0 na pasta "Varejo"
  • versão 14.0.24222.0 na pasta "Debug"

Eu tenho essas versões instaladas e o Terminal 0.6.2951.0 está funcionando ok.
Talvez o VC 14.0.27323.0 esteja instalado em outro lugar do meu sistema, mas acho que não. Onde esse requisito é mencionado?

Seu computador tem acesso à MS Store? O meu não. Recentemente, atualizei para 1909, que pode ser de onde veio minha versão 14.0.26905.0, mas não tenho certeza.

Este é o erro que recebo ao tentar instalar:

PS C:\> Add-AppPackage -path "C:\Microsoft.WindowsTerminal_0.6.2951.0_8wekyb3d8bbwe.msixbundle"
Add-AppPackage : Deployment failed with HRESULT: 0x80073CF3, Package failed updates, dependency or conflict validation.
Windows cannot install package Microsoft.WindowsTerminal_0.6.2951.0_x64__8wekyb3d8bbwe because this package depends on
a framework that could not be found. Provide the framework "Microsoft.VCLibs.140.00.UWPDesktop" published by
"CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US", with neutral or x64 processor
architecture and minimum version 14.0.27323.0, along with this package to install. The frameworks with name
"Microsoft.VCLibs.140.00.UWPDesktop" currently installed are:
Windows cannot install package Microsoft.WindowsTerminal_0.6.2951.0_x64__8wekyb3d8bbwe because this package depends on
a framework that could not be found. Provide the framework "Microsoft.VCLibs.140.00.UWPDesktop" published by
"CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US", with neutral or x64 processor
architecture and minimum version 14.0.27323.0, along with this package to install. The frameworks with name
"Microsoft.VCLibs.140.00.UWPDesktop" currently installed are:
{Microsoft.VCLibs.140.00.UWPDesktop_14.0.26905.0_x86__8wekyb3d8bbwe
Microsoft.VCLibs.140.00.UWPDesktop_14.0.26905.0_x64__8wekyb3d8bbwe}
NOTE: For additional information, look for [ActivityId] edfb45f8-a09f-0003-a403-fced9fa0d501 in the Event Log or use
the command line Get-AppPackageLog -ActivityID edfb45f8-a09f-0003-a403-fced9fa0d501
At line:1 char:1
+ Add-AppPackage -path "C:\Microsoft.WindowsTerminal_0.6.2951.0_8wekyb3 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (C:\Microsoft.Wi...bbwe.msixbundle:String) [Add-AppxPackage], IOException
    + FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand

Recentemente, atualizei outro PC neste mesmo ambiente para 1909. Consegui instalar o Windows Terminal 0.6.2951.0 mais recente. Acontece que esta máquina possui UWPDesktop v 14.0.27810.0. Não tenho 100% de certeza de onde, quando ou como foi instalado, embora ache que pode ser porque esta máquina tem o VS2017 e o VS2019 instalados.

Parece que o que precisa acontecer é ter esse download
https://www.microsoft.com/en-us/download/details.aspx?id=53175
atualizado para a versão 14.0.27810.0 (ou posterior). Não sei por que esse download estagnou desde 2016.

Atualização: estamos conversando internamente para resolver esse problema. Fique ligado.

FWIW, eu trabalho em ambientes que nunca estarão conectados à internet. As certificações que o Azure, M365, etc. receberam, dane-se. Eles simplesmente nunca terão conectividade com a Internet.

O Windows Terminal está disponível no Scoop . O Scoop extrai arquivos do msix com 7zip e funciona bem. Então eu acho que o Windows Terminal já é portátil? Parece que nem todo instalador msix pode funcionar assim.

É verdade hoje que o Terminal funciona desempacotado, mas atualmente não garantimos que sempre funcionará.

Usando chocolatey falha no servidor Windows 2019:

choco install microsoft-windows-terminal
ERRO: Este pacote requer pelo menos o Windows 10 versão 1903/SO build 18362.x.
A instalação do microsoft-windows-terminal NÃO foi bem sucedida.
image

Existem versões diferentes do servidor Windows ou todas elas são muito antigas?

@ArgTang Acredito que nenhuma das versões do servidor esteja disponível: https://github.com/microsoft/terminal/issues/2312#issuecomment -519318609

De fato! /dup #2312.

Oi! Identificamos este problema como uma duplicata de outro que já existe neste Issue Tracker. Esta instância específica está sendo fechada em favor do rastreamento da preocupação no segmento referenciado. Obrigado pelo seu relato!

No momento, o Server não está disponível nas versões 1903 ou 1909. Me desculpe por isso!

Eu absolutamente não queria fechar esse bug de rastreamento mestre. Desculpe a todos!

Até agora, não encontrei absolutamente nenhuma solução alternativa no trabalho
como a edição anterior foi encerrada, estou atualizando aqui com a última versão lançada:
(copie e cole a edição anterior aqui para não perder o controle do #4424, desculpe @DHowett , acho que isso é útil para ver o comportamento de cada versão lançada, mudou de tempos em tempos)

o resultado está aqui: https://github.com/microsoft/terminal/issues/4424 o problema foi encerrado em favor deste

A única versão que eu tenho é 0.6xxxx que eu construí manualmente, eu tenho mdmerge.exe crash ao tentar construir 0.8.x em 19041 slow ring ou em 1909 stable


Copie e cole do problema encerrado:

O último WindowsTerminal_0.8.10261.0_x64__8wekyb3d8bbwe msixbundle é instalado, mas o aplicativo trava, mesmo se eu instalar de chocolatey

@DHowett

Thx pela melhoria sobre o msixbundle pois não instala e começa a rodar.
Você pode me dizer como posso obter informações sobre por que ele trava ao executar para que eu possa criar um problema adequado para potencialmente resolvê-lo em uma versão posterior?

Eu posso ver a borda aparecer por meio segundo, depois travar e isso:

image

se eu abrir rápido o suficiente Start Menu , posso ver que provavelmente há algum tipo de MS Store Post Action (a barra de progresso):
image

Como posso ajudar ?
Gostaria de saber onde estão os Logs para diagnosticar isso.
Não tenho certeza de onde procurar no EventViewer (tentei verificar, mas não encontrei nada que se pareça com o travamento)

[Window Title]
Network Error

[Main Instruction]
Windows cannot access C:\Program Files\WindowsApps\Microsoft.WindowsTerminal_0.8.10261.0_x64__8wekyb3d8bbwe\WindowsTerminal.exe

[Content]
Check the spelling of the name. Otherwise, there might be a problem with your network. To try to identify and resolve network problems, click Diagnose.

[^] Hide details  [Diagnose] [Cancel]

[Expanded Information]
Error code: 0x800704cf
The network location cannot be reached. For information about network troubleshooting, see Windows Help.

Se de alguma forma o estado atual da instalação puder ajudar, me avise.

Ainda não encontrei uma maneira de obter logs/diag/trace no que não foi encontrado, para que possa ajudar a dar feedback sobre esse comportamento específico para ver se e como ele poderia ser corrigido ^^

Eu não me importo de não ter "Atualização da loja" já que ... A corporação bloqueou a loja.
é por isso que por enquanto eu tento usar o msixbundle pelo menos uma vez ;)
Eu apenas reinstalaria o próximo msixbundle quando eu precisar atualizar

Obrigado a todos pela paciência com este assunto.

Nós entendemos completamente o que está acontecendo aqui, mas não queremos entregar uma solução hacky.

Estamos trabalhando ativamente com várias equipes internamente para fornecer uma solução com suporte de longo prazo para esse problema e relataremos aqui assim que soubermos o que pode ser feito e quando. Na verdade, fiz uma solicitação formal há cerca de 20 minutos para que outra equipe fizesse um pequeno trabalho para nós.

Fique ligado.

Desculpe @iamdeskoh - excluindo este comentário, pois recomenda o download de pacotes de uma fonte não verificada e não confiável. Tais práticas não são absolutamente recomendadas. Nós odiaríamos que alguém inadvertidamente se infectasse com algo desagradável ao fazê-lo.

Tenha certeza de que estamos investigando internamente para corrigir esse problema. Por favor, seja paciente conosco.

@bitcrazed

não, não vai clicar nesse link

por que eu tentaria clicar em um domínio desconhecido/não confiável?
especialmente para instalar binários de uma fonte não oficial

você pode primeiro explicar qual é o propósito do site antes de enviar um link e pedir ao usuário que clique nele. também suponho que o que ele faz por trás do site é de código aberto para que possa ser confiável ^^ ?

eu não estou dizendo que não funciona, apenas que não há como você confiar em um terceiro enviando binários mágicos
Especialmente quando você pode primeiro perguntar aqui para a equipe windows/terminal se eles puderem resolver isso

Também não gosto muito dessa solução alternativa, mas os links de download vêm do domínio da Microsoft. Parece que o site @deskoh fornecido apenas fornece links para conteúdo não listado da Microsoft Store.
E se a equipe pudesse fornecer uma maneira de instalar as dependências necessárias para seu projeto, as pessoas não teriam que tentar a sorte com uma solução alternativa como esta...
Mas mesmo depois de instalar a versão suficientemente recente do Microsoft.VCLibs.140.00.UWPDesktop, a instalação ainda falha mais tarde devido a outro erro.

@clement-fischer quais erros você encontrou? Eu finalmente consegui executá-lo em um ambiente de entreferro. Você precisará do VC++ redistribuível. Eu também tenho que iniciar o terminal do diretório WindowsApp.

@deskoh Embora eu tenha tentado instalar via Powershell, o erro parece ser o mesmo do #3194.

Eu tentei vários métodos para instalar o msix e o appx manualmente, e as compilações do Windows Terminal parecem estar bloqueadas para as versões do Windows 10 mais recentes do que a compilação mais recente do Windows Server 2019.

Isso é bastante lamentável.

Infelizmente para todos nós, esse recurso não será apresentado na versão Terminal 1.0. Portanto, o Terminal ainda será inútil para profissionais de TI em ambientes de produção reais: https://github.com/microsoft/terminal/milestone/6

Se eles corrigirem a disponibilidade da dependência, será possível instalar manualmente. O problema nº 3097 está listado como um dos problemas necessários para a versão 1.0.

Eu não posso dizer para outros usuários, mas eu adoraria ter o msixbundle trabalhando em qualquer lugar, mesmo que isso signifique que eu mesmo tenha que atualizá-lo mais tarde.
É assim que eu uso Powershell Core 7.x no trabalho desde a primeira visualização.

Além disso, há uma bela mensagem informando você DENTRO do shell (portanto, não intrusivo) que você está perdendo uma atualização.
Eu acho que também há um opt-out nele

O que seria melhor do que extrair o msixbundle manualmente, por exemplo

funciona bem com furo, podemos usá-lo em ambiente profissional. (da nossa área de trabalho pro windows):
https://github.com/lukesampson/scoop-extras/blob/master/bucket/windows-terminal.json
scoop install windows-terminal

Obrigado por isso!

colher é a coisa mais legal que existe!
https://youtu.be/a85QLUJ0Wbs

É uma ferramenta tão agradável e útil, parece em casa

Am Fr., 24 de abril de 2020 às 12:03 Uhr schrieb Xiang ZHU <
[email protected]>:

Bem, ainda não utilizável para o ambiente Windows Server:

iwr -useb get.scoop.sh | iex
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
colher instalar git
balde colher adicionar balde extras
colher instalar windows-terminal
Instalando o 'terminal do Windows' (0.11.1121.0) [64bit]
Microsoft.WindowsTerminal_0.11.1121.0_8wekyb3d8bbwe.msixbundle (16,1 MB)[====================================] 100%
Verificando hash deMicrosoft.WindowsTerminal_0.11.1121.0_8wekyb3d8bbwe.msixbundle ... ok.
Extraindo dl.7z ... feito.
Executando script de pré-instalação...
Executando script de instalação...
*ERRO É necessário pelo menos o Windows 10 18362. *

@gh4chris
Mesmo na área de trabalho certo?
Como o terminal depende de um recurso específico do sistema operacional, ele requer um certo nível mínimo de versão

image

Você provavelmente quer atualizar para 1903 / 1909 (2004/20H1 deve chegar em menos de um mês)
image

Você vê? Isso é problemático em um ambiente profissional. As atualizações envolvem
muita verificação para não quebrar os setups existentes...

Duvido que o WT realmente precise de tais dependências. A TI faz todo o projeto
mais ou menos ridículo

Am Fr., 24 de abril de 2020 às 13:10 Uhr schrieb TeBeCo < [email protected]

Entendo que você tenha problemas para atualizar seus servidores em sua empresa, esse é um problema diferente não relacionado à implantação.
Você pode entrar em contato com as equipes do seu lado para atualizar sua imagem para obter pelo menos a de um ano atrás.

Isso é um pouco diferente de "Ainda não há alternativa para a loja"

Eu não diria que está bloqueando ou problemático. Você pode por exemplo usar Enter-PSSession ou ssh e então você estaria usando WT do seu computador enquanto você usa o Shell do Servidor
Você pode até atualizar para PSWS 7.x em seu servidor, se quiser, ou instalá-lo como dotnet tool

Você provavelmente quer abrir outro problema além de Investigate alternative deployment mechanisms for Windows Terminal

Eu realmente não quero entrar no argumento que está surgindo aqui sobre o que constitui um 'ambiente real'

Mas eu certamente gostaria que isso fosse executado no Windows Server (qualquer versão), e executá-lo no Windows 10 também não é útil na minha circunstância.

Eu diria apenas para atualizar para o Windows Server 2019
mas isso pode ser uma pílula difícil de engolir, pois mesmo o portal do Azure não oferece modelo para isso
(mas sim, suponho que "apenas atualize")

Além disso, como sou apenas um consumidor como você, você pode abrir um problema para isso, pois não está relacionado a este?
Talvez pergunte por que e detalhes sobre a versão mínima do sistema operacional
mas não está relacionado ao mecanismo de implantação

Ei @DHowett , seu commit (que eu sei que ainda não foi lançado) para agrupar os deps no terminal deve ajudar muito a ter um instalador offline do msixbundle.

Parece que depois disso, a principal peça que falta para um método de instalação offline é ter um URL estático aka.ms para baixar o msixbundle mais recente, em vez de manter seus scripts atualizados com a versão mais recente do github.com e URL de download.

É possível obter um link de download estático para este pacote?

É possível obter um link de download estático para este pacote?

Isso não é uma má ideia, e provavelmente é algo que precisaremos fazer mais cedo ou mais tarde.

Eu preferiria oferecer um appinstaller (que é praticamente um msixbundle com uma tag "onde eu encontro mais de você?" (para atualizações!)), mas isso realmente requer isso, então _shrug_.

*ERRO É necessário pelo menos o Windows 10 18362. *

Por que existe um requisito difícil tão estranho? A dependência disso não pode ser reduzida para que possa ser usada em versões LTSC?

@kein Isso é algo que discutimos longamente neste repositório antes .

#1643 (comentário)

Desculpe. No momento, há dois grandes bloqueadores para adoção em 1809.

* XAML islands was a technology preview and didn't support high-DPI, DPI changes, or accessibility in 1809. We rely on them heavily.

* 1903 added support for side-by-side WinRT component activation, something deep in the COM stack that lets us find our DLLs when they're right next to our EXE.

Não podemos voltar a 1809.

#1909 (comentário)

o Windows Terminal REQUER recursos da versão mais recente do Windows.

Infelizmente, não há soluções alternativas disponíveis para nós. Ilhas XAML é a tecnologia que usamos para hospedar nossa interface do usuário XAML em um processo Win32. Sem isso, não poderíamos exibir nada. Como as Ilhas XAML só estão completas a partir da versão mais recente do Windows 10, não há nada que possamos fazer a respeito.
Se você quiser usar o terminal, _precisará_ estar na versão mais recente do Windows 10.

#841 (comentário)

#498 (comentário)

Não há planos no momento.
Dependemos de C++/WinRT e Ilhas XAML (UWP XAML) para nossa interface do usuário. Também estamos usando DX/DWrite para o renderizador de texto. A menos que eles sejam portados para o linux em algum momento, então eu diria que há muito pouca chance de apoiarmos o linux.
Além disso, todo o nosso sistema de compilação é baseado em MsBuild, e posso estar errado, mas não acho que nosso sistema de compilação funcione no linux.

#1893 (comentário)

#2024 (comentário)

Isso explica por que o suporte é tão limitado, mas não invalida nenhum dos argumentos aqui levantados. A maioria dos usuários do Terminal são usuários do Servidor e LTSC. Qual é o objetivo do Terminal segmentar usuários domésticos? Eventualmente, ele desaparecerá sendo bloqueado em um ambiente muito específico. No momento, estou de volta a cmder e, a menos que o Terminal consiga superar esse problema e esteja disponível mais cedo em 2020, também o esquecerei.

A maioria dos usuários do Terminal são usuários do servidor e LTSC

Você tem alguma evidência para essa afirmação?

Esta questão pode ser dividida em 2 questões; mecanismo de implantação alternativo e versão mínima?

Há muitos outros tópicos sobre "versão mínima", então vou começar a marcar a discussão sobre a versão mínima neste tópico como "fora do tópico".

Nosso caso de uso: uma universidade que está executando uma ramificação de suporte de longo prazo em desktops Windows 10 de 3,5 mil, eles têm a loja do Windows habilitada para que possam obter o Terminal. Nossos administradores (os que realmente gostariam e se beneficiariam do Terminal) têm estações de trabalho Windows nas quais podem usá-lo, mas a maioria está usando o RDP em muitos servidores Windows heterogêneos executando principalmente o Server 2016 para usar o MMC e o PowerShell para configurar eles. Terminal seria ótimo ter tudo isso.

O outro padrão de uso é fazer RDP para um único bastião Windows Remote Desktop Server para interagir com os outros servidores via Enter-PSSession.

Temos muito poucos servidores Windows Core, pois as pilhas de aplicativos de terceiros e os consultores que os acompanham regularmente para a implantação inicial não o entendem ou os aplicativos não o suportam.

Temos uma plataforma de gerenciamento de configuração que usamos para enviar principalmente MSIs para o Windows 10 e o Server 2016, portanto, seria fácil enviá-lo para todos os lugares, se estivesse em um formato que funcionasse.

@carwyn mesmo aqui. Nosso ambiente tende a ter n-1, então o cliente que apoiamos acabou de atualizar para 2016.

Eu pré-visualizei o terminal do Windows em uma área de trabalho em minha própria máquina em casa e adorei. Eu adoraria usá-lo 'em produção' em nossas caixas de salto no trabalho para a equipe usar, mas com a única opção para o Windows Server 2019 significa que teremos que esperar muito mais, o que é um pouco decepcionante para um cliente incrível que Eu posso potencialmente usar para substituir meu powershell ise do Windows envelhecido.

Desculpe pessoal, não estou feliz com todas as limitações e dificuldades com
as instalações.
Acho que encontrei minha solução. Estou usando o mobaXterm agora. ficou quase tudo
recursos que eu preciso e só precisa executar o instalador.
A vida pode ser fácil

Am Do., 11 de junho de 2020 às 10:20 Uhr schrieb weiyentan <
[email protected]>:

Nenhuma das soluções mencionadas aqui funcionou para mim para instalar no Windows Server 2019. Mesmo com furo, ele falha com "ERRO Pelo menos o Windows 10 18362 é necessário".

Nenhuma das soluções mencionadas aqui funcionou para mim para instalar no Windows Server 2019. Mesmo com furo, ele falha com "ERRO Pelo menos o Windows 10 18362 é necessário".

Correto. Não funcionará no Server 2019. 2019 é baseado em 1809. E é necessário pelo menos 1903.

Nenhuma das soluções mencionadas aqui funcionou para mim para instalar no Windows Server 2019. Mesmo com furo, ele falha com "ERRO Pelo menos o Windows 10 18362 é necessário".

Além disso, você pode dar uma olhada no último comentário nesta edição:
https://github.com/microsoft/terminal/issues/1386#issuecomment -634933002

Oi @DHowett , sobre #6802
baixar e clicar duas vezes no pacote não instala o Microsoft Terminal se o acesso à loja da Microsoft for restrito. ele mostra o seguinte erro

image

Mesmo barco que Sanket. Nosso grupo de TI é (compreensivelmente) muito avesso ao risco e valoriza a estabilidade em relação aos novos recursos. E o acesso à Microsoft Store está bloqueado por motivos de segurança, então mesmo depois que conseguirmos uma compilação mais moderna (1903, 2004), parece que não conseguiremos instalar o Windows Terminal a partir de pacotes MSIX, a menos que o compilemos a partir da fonte (eu já fiz isso uma vez, mas levou muito tempo, não gostaria de fazer isso todas as vezes).

Pode entender o fato de que isso não é ignorado, mas apenas atrasado. Ainda assim, espero que em breve seja possível implantar isso via SCCM (para clientes) e por outros meios para máquinas Windows Server.

@JongleurNin @sanket-bhalerao

Isso funciona bem se você tiver recursos de "Download":
Paramos de fazer Build From source desde 0.9 ou 0.10, pois isso agora funciona:

Manualmente:

Automação:

  • crie uma função pwsh no seu $PROFILE para verificar os ativos da lista de lançamento
    aqui você quer isso https://api.github.com/repos/microsoft/terminal/releases/latest
  • você pode usar pwsh ConvertFrom-Json
  • obtenha a propriedade name que termina com msixbundle na lista de ativos
  • use Invoke-WebRequest no campo browser_download_url
  • Não se esqueça de usar Get-Proxy e ProxyUseDefaultCredentials se você tiver um proxy NTLM porque ... CORP ARE FUN
  • use a função Expand-Archive pwsh para descompactar (não tenho certeza se você precisa de uma renomeação explícita)
  • coloque isso em um Gist para seu companheiro de equipe;)
  • um exe capaz de xcopy é o que é necessário. Ferramentas elétricas como console não precisam de instalador. Um instalador é um exagero e, por favor, evite-o. Portanto, você não precisa gastar meses de testes. Da última vez que verifiquei, o visual studio tinha a capacidade de produzir exe no modo de lançamento que está devidamente assinado.
  • como usuários avançados, não estamos impressionados com a decisão de escolher a loja como modelo de distribuição primária. Pois, ontem tentei instalar este console na minha máquina de trabalho e adivinhem, a loja está configurada com minha conta do Hotmail porque precisa de uma conta da Microsoft que não é minha conta de trabalho e tive a opção de instalar o console no meu PC pessoal que estava em casa. Eu precisava do console na minha máquina de trabalho, não na minha máquina pessoal.
  • em resumo, simplesmente isso. Facilite o acesso a esta ferramenta para que possamos usá-la. Caso contrário, estou feliz com o ConEmu, que uso há muitos anos.

Bem, acho que a única explicação para tantas escolhas não razoáveis ​​em relação à instalação e dependências deve ser relacionada ao mercado/política. Acho que a MS quer que a loja de aplicativos seja a única fonte legítima de aplicativos (parecendo famintos e invejosos do modelo de negócios da Apple), acho que em algum momento faz sentido, mas também é um caminho perigoso. Os usuários do Windows não são usuários do Apply e não são tão tolerantes.
Tenho certeza de que a equipe do Win Terminal está de mãos atadas (bem, espero que sejam essas as razões, deixe-me colocar dessa maneira!)

@JongleurNin @sanket-bhalerao

Manualmente:

* https://github.com/microsoft/terminal/releases/latest

* download `msixbundle` (do not execute it)

* rename to zip

* extract it

* run `WindowsTerminal.exe`

* pin it

Isso deve funcionar com v1.1.2021.0?

Não há WindowsTerminal.exe no arquivo zip!?

você precisa descompactar o sub msix também
x86 / x64 / ARM
o pacote de música envia todos eles de uma vez
É isso que você estava se perguntando?

Isso não foi explícito eu concordo

você precisa descompactar o sub msix também

Eu resolvi isso logo depois de postar :) Em quais sistemas operacionais isso deve funcionar? Eu tentei o Windows Server 2012R2 e 2016, mas sem sorte. Não tem certeza se estou sendo muito ambicioso ou se há algo que preciso instalar?

Você não poderá fazer isso, está documentado e discutido em vários lugares neste repositório.
O WT conta com um recurso muito específico do próprio Windows, o que significa que há uma versão mínima

para pessoas dispostas a automatizar um pouco o download, aqui está um script MUITO INGÊNIO:

  • não teste totalmente
  • não suporta Hot Swap se o WT estiver em execução => usando o link simbólico poderia fazer a atualização azul/verde?
  • não define/atualiza $env:PATH
[CmdletBinding()]
param (

    [Parameter()]
    [string]
    $Version = "latest",

    [Parameter()]
    [string]
    $Destination = "C:/dev/tools/wt",

    [Parameter()]
    [ValidateSet("ARM64", "x64", "x86")]
    [string]
    $Architecture = "x64"
)

function Get-WtRelease {
    [CmdletBinding()]
    param (

        [Parameter()]
        [string]
        $Version = "latest"
    )

    $GithubApi = "https://api.github.com"
    $Owner = "microsoft"
    $Repo = "Terminal"
    $ReleasesPath = "/repos/$($Owner)/$($Repo)/releases"
    $ReleasesUrl = "$($GithubApi)$($ReleasesPath)/$(Version)"

    $params = @{
        Uri         = $ReleasesUrl
        Method      = 'GET'
        ContentType = 'application/json'
    }

    $releases = Invoke-RestMethod <strong i="11">@params</strong>

    $bundle = ($releases).assets | Where-Object { $_.name.EndsWith("msixbundle") }
    $MsixBundleDownloadUrl = $bundle.browser_download_url
    $DownloadDestination = "TEMP:\$($bundle.name).zip"

    Invoke-WebRequest -Uri $MsixBundleDownloadUrl -UseBasicParsing  -OutFile $DownloadDestination

    return $DownloadDestination
}

function Expand-WtMsixBundle {
    [CmdletBinding()]
    param (
        [Parameter(Mandatory = $true)]
        [string]
        $BundlePath,

        [Parameter(Mandatory = $true)]
        [string]
        $MsixPath,

        [Parameter()]
        [ValidateSet("ARM64", "x64", "x86")]
        [string]
        $Architecture = "x64"
    )

    # $BundlePath = "C:/dev/test_wt/bundle"
    $ExtractedBundlePath = "TEMP:\expandbundle"

    if (Test-Path -PathType Container $ExtractedBundlePath) {
        Remove-Item -Recurse -Force $ExtractedBundlePath
    }

    Expand-Archive $BundlePath -DestinationPath $ExtractedBundlePath

    Get-ChildItem $BundlePath

    $Msix = Get-ChildItem $ExtractedBundlePath `
    | Where-Object { $_.Extension -eq ".msix" } `
    | Where-Object { $_.Name.Contains($Architecture) }

    Expand-Archive $Msix.FullName -DestinationPath $MsixPath
}

if (
    ($PSVersionTable.PSVersion.Major -lt 7) -or `
    (($PSVersionTable.PSVersion.Major -eq 7) -and ($PSVersionTable.PSVersion.Minor -lt 0)) -or `
    (($PSVersionTable.PSVersion.Major -eq 7) -and ($PSVersionTable.PSVersion.Minor -eq 0) -and ($PSVersionTable.PSVersion.Patch -lt 2)) `
) {
    throw "Powershell 7.0.2 minimal is required to use 'TEMP:', edit this script or update here: https://github.com/powershell/powershell/releases/tag/v7.0.3"
}

$MsixBundlePath = Get-WtRelease -Version $Version
Expand-WtMsixBundle -BundlePath $MsixBundlePath -MsixPath $Destination -Architecture $Architecture

para pessoas dispostas a automatizar um pouco o download, aqui está um script MUITO INGÊNIO:

* not fully test

* does not support Hot Swap if WT is running => using symlink could do Blue/green update ?

* does not Set/Update `$env:PATH`
[CmdletBinding()]
param (

    [Parameter()]
    [string]
    $Version = "latest",

    [Parameter()]
    [string]
    $Destination = "C:/dev/tools/wt",

    [Parameter()]
    [ValidateSet("ARM64", "x64", "x86")]
    [string]
    $Architecture = "x64"
)

function Get-WtRelease {
    [CmdletBinding()]
    param (

        [Parameter()]
        [string]
        $Version = "latest"
    )

    $GithubApi = "https://api.github.com"
    $Owner = "microsoft"
    $Repo = "Terminal"
    $ReleasesPath = "/repos/$($Owner)/$($Repo)/releases"
    $ReleasesUrl = "$($GithubApi)$($ReleasesPath)/$(Version)"

    $params = @{
        Uri         = $ReleasesUrl
        Method      = 'GET'
        ContentType = 'application/json'
    }

    $releases = Invoke-RestMethod <strong i="9">@params</strong>

    $bundle = ($releases).assets | Where-Object { $_.name.EndsWith("msixbundle") }
    $MsixBundleDownloadUrl = $bundle.browser_download_url
    $DownloadDestination = "TEMP:\$($bundle.name).zip"

    Invoke-WebRequest -Uri $MsixBundleDownloadUrl -UseBasicParsing  -OutFile $DownloadDestination

    return $DownloadDestination
}

function Expand-WtMsixBundle {
    [CmdletBinding()]
    param (
        [Parameter(Mandatory = $true)]
        [string]
        $BundlePath,

        [Parameter(Mandatory = $true)]
        [string]
        $MsixPath,

        [Parameter()]
        [ValidateSet("ARM64", "x64", "x86")]
        [string]
        $Architecture = "x64"
    )

    # $BundlePath = "C:/dev/test_wt/bundle"
    $ExtractedBundlePath = "TEMP:\expandbundle"

    if (Test-Path -PathType Container $ExtractedBundlePath) {
        Remove-Item -Recurse -Force $ExtractedBundlePath
    }

    Expand-Archive $BundlePath -DestinationPath $ExtractedBundlePath

    Get-ChildItem $BundlePath

    $Msix = Get-ChildItem $ExtractedBundlePath `
    | Where-Object { $_.Extension -eq ".msix" } `
    | Where-Object { $_.Name.Contains($Architecture) }

    Expand-Archive $Msix.FullName -DestinationPath $MsixPath
}

if (
    ($PSVersionTable.PSVersion.Major -lt 7) -or `
    (($PSVersionTable.PSVersion.Major -eq 7) -and ($PSVersionTable.PSVersion.Minor -lt 0)) -or `
    (($PSVersionTable.PSVersion.Major -eq 7) -and ($PSVersionTable.PSVersion.Minor -eq 0) -and ($PSVersionTable.PSVersion.Patch -lt 2)) `
) {
    throw "Powershell 7.0.2 minimal is required to use 'TEMP:', edit this script or update here: https://github.com/powershell/powershell/releases/tag/v7.0.3"
}

$MsixBundlePath = Get-WtRelease -Version $Version
Expand-WtMsixBundle -BundlePath $MsixBundlePath -MsixPath $Destination -Architecture $Architecture

Por que forçar o uso do PowerShell 7? Isso torna o script menos útil.

Olá
Muito obrigado por notar
Você quer que eu atualize para você? ou você já tem ele funcionando na versão anterior?
(veja a seção Dev time abaixo)

Por quê ?

TL; DR ? porque eu sou preguiçoso e só uso coisas que existem fora da caixa

Um pouco de contexto, como eu tive tempo livre tentando ajudar, eu propositalmente teria tempo para tentar ajudar fornecendo um script não executável?
Se bem me lembro, o script usa uma API que foi adicionada em 7.0 e corrigida em ~7.0.2/3 para não incomodar ninguém
Veja aquela unidade TEMP:\

Ainda preso em powershell desatualizado?

Você pode fornecer o equivalente do que está fazendo a unidade TEMP:\ , como disse, sou preguiçoso e tentei ajudar rapidamente no tempo livre
powershell é enviado apenas no Windows e é/será limitado a 5.0 e não evolui
Provavelmente faz ~ 1 ano desde que corri powershell TBH
O que nos leva ao LTS

Usando LTS

em January 2018 , a primeira edição do pwsh (PowerShell Core) foi lançada => 6.0.0
_ pwsh 7.0 é o LTS atual _ (foi enviado em 4 de março de 2020)

Além disso, como você já deve saber WT requer uma versão mínima do Windows, então eu poderia ter assumido (muito rapidamente) que o consumidor disposto a usar wt poderia saber sobre pwsh (powershell core) desde a v6.0 (por volta de janeiro de 2018)

Tempo de desenvolvimento

Bem, como costumo ter certeza de que as ferramentas que uso estão atualizadas para evitar bugs, não notei que a unidade TEMP:\ não existia na versão anterior de pwsh ou nem tentou powershell .
Esse script foi usado por vários colegas de equipe (pode não ser exatamente o mesmo script) e acho que um deles percebeu o problema / atualizou e levantou o ponto.
Então adicionamos um Guard para estarmos devidamente informados sobre os requisitos.

Eu poderia ter adicionado parâmetros de entrada sobre a pasta temp ou pressionar CSharp API para obter uma pasta Temp etc ...
Como dito, sou preguiçoso e um simples "if() / throw" parece a maneira mais rápida de fornecer uma solução aqui

Pontos bônus

Observe também que pwsh 7+ está sendo executado em tempo de execução dotnet core , portanto, é multiplataforma
Isso torna mais útil se você precisar de script para executar em Win/Linux/MacOs
(mesmo que WT seja apenas vitória)

Atualizando / Instalando

Você tentou atualizar seu computador ou teve algum problema para fazê-lo? Como posso ajudar quanto a isso?

Administrador certo? ou não

Você não precisa do direito de administrador para instalá-lo

Várias maneiras

Se você precisar de ajuda sobre como atualizar seu computador de qualquer

  • msix (duplo clique)
  • msixbundle (duplo clique)
  • zip (clique com o botão direito > extrair)
  • dotnet tool instal -g (copiar/colar)

Github oficial

se você está tendo problemas para encontrá-lo, aqui está o repositório oficial
https://github.com/powershell/powershell/releases/latest

Documentos oficiais

Caso prefira a documentação para implantação e maiores informações detalhadas:
https://github.com/powershell/powershell/releases/tag/v7.0.3

@tebeco se você precisar de uma alternativa para temp:/ , use $Env:TEMP .

PS7> set-content temp:/file "hello"
PS7> powershell
WinPS> get-content "$Env:TEMP\file"
hello

obrigado pela informação

Você acha que aceitaria um PR neste repositório para enviá-lo como um ativo?
assim como a equipe dotnet lançou dotnet-install.ps1|sh e criou um link curto aka.ms

Eu ficaria feliz em fazer o PR se estiver tudo bem com você

que corrigirá o problema msixbundle , pois não é utilizável até agora em todos os ambientes corporativos que têm a loja bloqueada

eu provavelmente vou perguntar

  • em qual pasta adiciona o arquivo
  • nome da variável env para que possamos OU NÃO usar como padrão esses var se os argumentos inout não forem fornecidos
  • onde alterar o pipeline de compilação para que seja individual

Não desculpe! Isso implicaria um nível de suporte oficial para essa solução com o qual ainda não estamos prontos para concordar. Obrigado mesmo assim :smile:

Posso estar errado nisso, entendi que o pb não seria corrigido no curto prazo, pois envolve outra equipe da Loja e assim por diante, quão preciso é isso você acha (~ 6 meses / ~ 12 talvez) ?
Além disso, as empresas bloquearam Store em primeiro lugar para evitar a instalação de terceiros, portanto, provavelmente não desejam alterar sua "imagem base do Windows" para instalar uma terceira parte adicional (sim, o Windows Terminal é um terceira parte, a menos que seja enviado dentro da instalação padrão do Windows, o que leva a próxima edição da Empresa a não atualizar a "imagem principal" rapidamente (~ 1,5 ano de GAP)

Para adicionar mais dor ao problema, ~70% do tempo é feito (atualização da imagem base) em uma parte da empresa que é muito difícil de encontrar/contatar/discutir e que sempre encontrará "boas" razões para não fazer o que qualquer outra pessoa peça para eles fazerem, porque eles querem ter certeza de que são donos de tudo para estar no controle (... do que está instalado).

Quando as pessoas tentam instalar WT , provavelmente abandonam, ou tentam ver aqui, e procuram solução
Eles provavelmente não conseguirão encontrar um Gist/Repo em outro lugar, pois não saberão que ele existe

É meio estranho estar no meio disso

  • Não é possível discutir com o bloqueio de segurança da loja / terceira parte / instalação do Windows
  • Tentando ajudar aqui para obter um script fazendo uma solução adequada, mas entendo que esse não é o seu objetivo de longo prazo (digamos, daqui a 2 anos)

Se for possível ter uma solução alternativa a partir de hoje, até aquele "alvo de longo prazo" que será lançado nos próximos anos

Até onde você iria para promover uma solução que resolvesse até que algo ideal fosse e "suportável" fosse lançado?
Você alteraria o README deste repositório para um/ambos apontar para um Gist/Repo que hospeda o script?
Você por padrão enviaria um problema aberto sobre este assunto para este script repo/gist toda vez que de alguma forma tivesse o mesmo problema?

Estou procurando um "meio-termo" que seria promovido do time Windows Terminal , mesmo assim você não é obrigado a ter um "suporte oficial" na fonte

Esta página foi útil?
0 / 5 - 0 avaliações