Como posso informar ao Spotlight para indexar meus bundles .dSYM?

Hoje foi a primeira vez que tentei - e falhei - para simbolizar um log de travamento em um MacBook recém-comprado (vamos chamar essa máquina de MB1). O MB1 veio com o Mac OS X 10.9 pré-instalado. Eu acompanhei o problema da falta de simbolização até o Spotlight não indexando nenhum dos meus.dSYM pacotes (sem o índice Spotlight, o da Applesymbolicatecrash script não consegue localizar o.dSYM pacote que corresponde ao log de falha). Eu cheguei a minha conclusão porque

mdfind "com_apple_xcode_dsym_uuids == *"

não imprime nada, embora eu tenha vários.xcarchive pacotes no meu~/Library/Developer/Xcode/Archives pasta, e eles definitivamente contêm.dSYM sub-pacotes cujo UUID eu posso imprimir comdwarfdump --uuid. Eu também tenho um par de.dSYM pacotes dentro da pasta de compilação do meu projeto (DerivedData), mas nenhum deles é indexado.

A pergunta curta e fácil, portanto, é: Como posso dizer ao Spotlight para indexar meus pacotes .dSYM?

Caso não haja uma resposta fácil para essa pergunta fácil, aqui está o que eu já experimentei no MB1:

Verifique as permissões de arquivos e pastas em~/Library/Developer/Xcode/Archives (todos estão OK, 755 para pastas, 644 para arquivos)Corremdimport ~/Library/Developer/Xcode/Archives (não tem efeito)Em "Preferências do Sistema> Spotlight> Privacidade", primeiro adicione e remova~/Library/Developer/Xcode/Archives pasta (também não tem efeito)Verificar commdutil -s / essa indexação está ativada para o volume (é)Apagar e reconstruir o índice inteiromdutil -E / (leva talvez 10-15 minutos, mas ainda não tem efeito)

Para entrar em mais detalhes: Eu tenho um MacBook antigo (vamos chamar essa máquina MB2) que era minha máquina dev antes de eu mudar para o MB1. No MB2 nunca tive problemas em simbolizar. O MB2 tinha o Mac OS X 10.8 instalado enquanto eu ainda estava ativamente desenvolvendo nele, mas recentemente atualizei o MB2 para o Mac OS X 10.9.

Hoje, correndomdfind no MB2 ainda me dá um monte de.dSYM feixes, ambos doArchives pasta e do projetoDerivedData criar pasta. Estes são todos arquivos antigos do Mac OS X 10.8 dias, mas aparentemente o Spotlight mantém seu índice através de upgrades de sistema operacional. Eu pensei que seria interessante ver como o Spotlight se comporta quando novos arquivos são criados, então eu fiz o seguinte:

Inicie o Xcode no MB2, crie um novo arquivo e executemdfind. Isso encontra o intermediário.dSYM pacote dentro doDerivedData criar pasta.Excluir o intermediário.dSYM empacotar e executarmdfind novamente. Não há resultados desta vez, ou seja, o.dSYM pacote dentro doArchives pasta NÃO é encontrada!Faça uma cópia do.xcarchive pacote criado na etapa 1 e coloque a cópia na raiz do diretório inicial do usuário. Corremdfind. Isso encontra o.dSYM sub-pacote dentro do copiado.xcarchive agrupar!

Neste ponto, eu pulei para a conclusão de que, porque~/Library é uma pasta oculta, isto é o que impede que o Spotlight indexe coisas dentro dele. Isso pode ser facilmente confirmado, criando um arquivo regular dentro~/Library e procurando por ele (sem ocorrências), em seguida, movendo o arquivo para fora de~/Library e pesquisando novamente (1 hit). Infelizmente, esta teoria cai de cara por causa de dois motivos:

~/Library já estava oculto nas versões do Mac OS X anteriores a 10.9, mas isso nunca impediu a indexação do Spotlight.dSYM arquivosO sinalizador "oculto" não é tudo o que impede o Spotlight de indexar~/Library: Se eu mostrar a pasta comchflags nohidden ~/Library, isso não torna o arquivo regular visível para o Spotlight.

De volta ao MB1: tentei repetir o passo 3 acima, ou seja, fazer uma cópia do.xcarchive pacote na raiz do diretório inicial do usuário, em seguida, executemdfind. Surpreendentemente, no MB1, o resultado é diferente do MB2:mdfind ainda não encontra.dSYM pacotes, seja qual for!

Neste momento, desisto e espero sua ajuda. Minha conclusão é que o Mac OS X 10.9 é de alguma forma responsável por meus problemas, mas pela minha vida não consigo entender por que isso acontece. Caso isso ajude, aqui estão alguns detalhes adicionais de configuração:

MB1: Xcode 5.0.2 e Xcode 4.6 estão instalados, 5.0.2 é o padrão (configurado comxcode-select). Também instalado é o Homebrew. O sistema é uma instalação limpa do Mac OS X 10.9.MB2: Xcode 4.5, 4.6 e 5.0 são instalados, 4.6 é o padrão. Também está instalado o MacPorts. O sistema é uma instalação de atualização do Mac OS X 10.9 (instalada anteriormente.

questionAnswers(1)

yourAnswerToTheQuestion