arquivos .desktop
Os aplicativos instalados globalmente têm seu arquivo .desktop em /usr/share/applications . Se existir um arquivo .desktop com nome semelhante em ~/.local/share/applications , ele "ignorará" o global (após o logout / in após sua criação). Os arquivos locais .desktop são usados para alterações específicas do usuário da funcionalidade do iniciador, para adicionar itens à lista rápida (no Unity), por exemplo, ou para aplicativos instalados localmente.
O terceiro diretório que você mencionou, /usr/share/app-install/desktop é usado por Software Center , conforme explicado aqui . Muitos aplicativos não usam este.
Ícones
tecnicamente pode ser armazenado em qualquer lugar. Pequenos aplicativos podem ter seus arquivos (incluindo ícone) armazenado em um diretório auto-contido em /opt/<application_name> , mas a maioria deles será encontrada em /usr/share/icons/ .
Uma excelente combinação de Pergunta / Resposta (s) nos ícones pode ser encontrada aqui .