Como o Xcode 8 beta está disponível para download, vejo que é distribuído com um .xip
extensão, Xcode_8_beta.xip
.
Qual é o formato .xip? Qual é a diferença entre o formato .dmg anterior?
Resposta
De acordo com a xip
página do manual:
Um arquivo XIP é análogo ao zip (1), mas permite que uma assinatura digital seja aplicada e verificada no sistema receptor, antes que o arquivo seja expandido. Quando um arquivo XIP é aberto (clicando duas vezes), o Archive Utility o expande automaticamente (mas apenas se a assinatura digital estiver intacta).
Essencialmente , um .xip
arquivo é apenas um .zip
com uma assinatura para verificar se o arquivo não foi alterado desde que seu criador o salvou. Isso protege contra danos de um erro de disco e de terceiros adulterando o arquivo.
Resposta
O .xip
formato de arquivo contém um arquivo (xar
contendo um gzip
arquivo e metadados) e uma assinatura de o arquivo.
Para decodificar um arquivo .xip
, use os seguintes comandos:
pkgutil --check-signature <xip-file> xar -xf <xip-file> tar -zxvf <xar-file>
Veja os links a seguir onde os desenvolvedores discutem este formato e suas implicações:
- Sparkle issue # 821 – Adicionar
xip
suporte para atualizações de aplicativos assinadas e compactadas - “Assinatura de fim de diretório central não encontrada.” ao instalar o arquivo xip beta do Xcode 8
- Código-fonte do TheUnarchiver: “Suporte Kludge para arquivos XIP para analisador XAR”
Não para uso público
A Apple removeu xip
do uso público desde então. O formato foi reservado para uso exclusivo da Apple no futuro, consulte TN2206 :
Importante: A partir do macOS Sierra, apenas os arquivos XIP assinados pela Apple serão expandidos. Desenvolvedores que têm usado o XIP os arquivos precisarão passar a usar pacotes de instalação assinados ou imagens de disco.
Comentários
Resposta
Até onde sei, xip é um derivado de xar usando compactação gzip, com um cabeçalho de toc xml contendo checksum, carimbo de data / hora, certificados, id / nome do usuário, data de criação / modificação / acesso & tempo etc.
Resposta
Os utilitários Unarchiver e linha de comando (xar, tar) não funcionaram para mim no MacOS 10.12 .6. O que funcionou foi clicar com o botão direito no arquivo .xip e selecionar “Archive Utility”, ele foi capaz de expandir o arquivo .xip com sucesso.
Comentários
- Você conseguiu instalar o xcode usando o arquivo .xip?
- Sim, clicar duas vezes no arquivo .xip extrai o aplicativo XCode. Ele não ' o copia para os aplicativos pasta, então você terá que fazer essa parte sozinho.
- Se eu tiver um Xcode 10 e depois de clicar em .xip Xcode 11, ele substituirá o anterior? E devo copiá-lo para a pasta de aplicativos?
- @OliverD é possível instalar versões lado a lado do XCode caso você queira executar o XCode 10 e o XCode 11, basta dar-lhes nomes diferentes em seu Pasta de aplicativos. Caso contrário, se você não ' não precisar mais do XCode 10, provavelmente recomendaria arrastar o antigo XCode.app para o lixo.
- @mbonness Bem, eu não ' não preciso do Xcode 10, então deve arrastar o XCode 10 antes de configurar o Xcode 11, ou não importa?
Resposta
Para referência futura, o comando shell
xip --expand /path/to/Xcode_x.y.xip
também funciona e extrai o Xcode para o diretório atual do shell, então cd /Applications
(ou qualquer outro lugar) primeiro.
Eu também recomendo fortemente remover ou ou renomear quaisquer cópias existentes de Xcode.app (ou Xcode-beta.app ) do local de destino antes de usar este comando †.
Até agora como eu sei, isso funcionou desde que a Apple distribuiu o Xcode no formato .xip, e funcionou apenas agora no 10.15.6 para expandir Xcode_11.7.xip baixado do site do desenvolvedor da Apple .
† Embora eu não tenha testado pessoalmente a substituição com xip
, se ferramentas de linha de comando semelhantes servirem de indicação, poderia potencialmente evitará confusão se usado para sobrescrever um diretório existente com o mesmo nome, deixando para trás arquivos existentes que não existem no arquivo que está sendo extraído, ou pior.
xip
puder ser expandido, os arquivos estarão na mesma pasta que o original . De acordo com @AntonTropashko, é provável que nenhum arquivo seja produzido.Metadata
file indica a compressão usada para os dados brutos. Visto que a Apple reapropriou o formato para uso privado, eles podem alterá-lo sem documentação pública.