Provavelmente mais próximo de um instalador MSI do que um setup.exe
, um pacote .deb
inclui uma árvore de arquivos para copiar no sistema de arquivos, bem como uma coleção de ganchos pré e pós-instalação para executar (entre outras coisas ). Os ganchos podem efetivamente fazer qualquer coisa no sistema, incluindo algo que eu acho que nunca vi no Windows: adicionar usuários para um serviço de sistema. Uma coisa que eles não podem fazer é instalar outro pacote .deb
- o banco de dados é bloqueado durante a instalação, então isso só pode ser alcançado por meio de dependências. A instalação de um pacote .deb
produz entradas em um banco de dados central de pacotes instalados para facilitar a manutenção.
O pacote ttf-mscorefonts
é interessante porque o próprio pacote contém apenas um script para baixar e instalar as fontes. Este script é executado em um desses ganchos.
Mais perto de setup.exe
pode estar baixando o código-fonte de um programa da página inicial do projeto, executando ./configure && make && sudo make install
ou qualquer outro método que os autores decidam usar. Como esse método não adiciona o pacote ao banco de dados de programas instalados, removê-lo posteriormente pode ser muito mais difícil.
Outra diferença é que .deb
especifica suas dependências, portanto, a instalação adequada pode ser garantida. Tanto quanto sei, no mundo do Windows, um MSI não pode causar a instalação de outro MSI, portanto setup.exe
é normalmente usado para esse tipo de rastreamento de dependência. Vários comentários observam que os MSIs podem nomear dependências, mas como não há banco de dados central de MSIs como há para .deb
packages, perder uma dependência causará uma falha na instalação.
Assim, um .deb
é uma espécie de entre um instalador MSI e um setup.exe
. O pacote pode fazer o que quiser durante seus ganchos de pré e pós-instalação, pode nomear e geralmente encontrar suas próprias dependências, e deixa um registro de sua instalação em um local central para facilitar a manutenção.