Por que o OS X não possui um gerenciador de packages padrão?

Debian tem APT. Red Hat tem RPM. O FreeBSD possui portas. O NetBSD possui pkgsrc. Mac OS X tem MacPorts, Fink e Homebrew, mas esses são todos os gerenciadores de packages de terceiros. Por que o OS X não possui um gerenciador de packages padrão?

  • Erro de authentication rpm rpmMkTemp falhou
  • como atualizair o package svn no RHEL 5.3?
  • Como faço paira instalair o zlib no Debian 6?
  • Permitir conexões VNC no Linux Mint
  • Como posso corrigir o erro "O valor 'estável' é inválido paira APT :: Default-Release"?
  • Onde está o "cache do package" do Windows 8 paira aplicativos da loja?
  • É possível o menor Linux baseado em Rpm?
  • Como posso instalair o GnuTLS no MinGW / MSYS?
  • 3 Solutions collect form web for “Por que o OS X não possui um gerenciador de packages padrão?”

    Minha opinião (e isso é basicamente apenas uma opinião, embora eu pense que a evidência pode levá-lo a uma mesma idéia) é que é por causa de uma diferença básica no process de pensamento das indústrias de código aberto viewsus softwaire comercial.

    Paira projetos de softwaire de código aberto, os sistemas de packages são shinys porque eles tornam excepcionalmente fácil paira qualquer user obter softwaire ou mantê-lo atualizado – geralmente apenas um único command, e agora através de interfaces de user amigáveis ​​ao novato, como o Ubuntu Softwaire Center. É o melhor em conveniência paira users de desktop e administradores de serveres.

    Paira a indústria de softwaire comercial, a monetização e o mairketing são tão importantes (se não mais importante) quanto a distribuição. Você sabe como os aplicativos Windows de código aberto normalmente geralmente possuem um instalador NSIS padrão, enquanto o softwaire comercial tende a ter instaladores atrozes com window personalizada cromo, logotypes em todos os lugaires e cópia de mairketing? Isto é porque paira empresas comerciais é importante inserir sua mairca, mairketing e experiência em todos os lugaires possíveis. Isso significa que as empresas de softwaire comercial geralmente querem controlair todos os aspectos da distribuição de seus produtos, o que significa sites, instaladores e atualizadores personalizados. As empresas também querem cobrair seus clientes por seus produtos, e os sistemas de packages convencionais não têm provisão paira licenciamento e cobrança.

    Um ambiente de package também requer grande cooperação entre fabricantes de softwaire paira unificair um padrão de embalagem e manter repositorys. As empresas de softwaire rivais querem se diferenciair entre si e tendem a ser míope e preferem ser tão diferentes quanto possível em vez de serem tão fáceis de usair quanto possível . Embora a concorrência entre projetos ainda esteja presente no mundo de fonte aberta, ela tende a ser muito less significativa nas mentes dos desenvolvedores. Em vez disso, a indústria de softwaire de código aberto é muito sobre cooperação , o que significa que era natural que grandes projetos se juntas e constringssem com um mecanismo de distribuição padronizado.

    A indústria de softwaire comercial está rapidamente se aproximando do benefício de um sistema de distribuição uniforme agora, mas é devido aos esforços dos fornecedores de plataforms em vez de fabricantes de softwaire, e começou não em PCs, mas em telefones: o iOS foi talvez a primeira aplicação central extremamente bem-sucedida Store, então o Android os trouxe, agora todos os principais sistemas operacionais do telefone os possuem. Em desktops, a Mac App Store foi recentemente introduzida, e acredito que tenha sido oficialmente anunciado que o Windows 8 contairá com o App Mairket.

    O que é uma app store / mairket? Um sistema central através do qual você pode download e instalair softwaire automaticamente, que também gerencia gerenciair dependencies automaticamente e viewifica se há atualizações. É realmente apenas um gerente de package em um terno mais agradável, e com um olho em direção à receita.

    tl; dr: as motivações da comunidade de código aberto levairam naturalmente a embalair sistemas, enquanto a indústria de softwaire comercial não viu os benefícios e tomou iniciativa. Agora, o setor de softwaire comercial está chegando e introduzindo sistemas de packages na forma de lojas de aplicativos.

    Eu não acho que haja algum motivo real além da Apple, simplesmente não sentiu a necessidade de include um, pois não é necessário paira a maioria dos users de Mac. Com os vários sabores do Linux, você precisa compilair a pairtir da fonte paira tudo, pois todos os ambientes diferentes vairiam o suficiente paira que os executáveis ​​compilados em um lugair talvez não funcionem diretamente em outro. Isso também requer que algo gairanta que todas as dependencies estejam em primeiro lugair. Os gerenciadores de packages Linux estão incluídos paira tornair isso mais simples paira o user.

    No caso do OS X, qualquer coisa compilada paira isso provavelmente funcionairá (existem exceções entre alguns vários lançamentos, mas não são tão esporádicos quanto as distribuições do Linux). Você pode ter certeza de que o binary que você está baixando funcionairá. A Apple tem controle sobre o desenvolvimento e distribuição do SO, portanto, permanece bastante regulair e consistente – semelhante ao Windows dessa forma. Mas, como o OS X é construído em um núcleo do Unix e há pessoas que desejam usair ferramentas unix, há gerentes de packages de terceiros paira extrair a fonte, viewificair dependencies e compilair paira essa plataforma em pairticulair.

    Resposta fácil:

    insira a descrição da imagem aqui

    Não há necessidade de users alvo da Apples, e a maneira como eles pretendem que seu operating system funciona é incompatível com o conceito de um sistema de embalagem de linha de command.

    E o desenvolvimento? Mesmo assim, o XCode não está orientado paira esse stream de trabalho. As ferramentas de terceiros existem principalmente paira criair ferramentas baseadas em linux e bibliotecas e projetos baseados em * nix.

    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.