O freebsd-update
e o pkg upgrade
fazem coisas muito diferentes.
O freebsd-update
irá (binário) atualizar seu sistema básico . O sistema básico contém tudo, exceto /usr/local
: verifique /{,s}bin
e /usr/{,s}bin
para quais programas são enviados com o sistema base. As partes do sistema base não aparecem no banco de dados de pacotes, é uma infraestrutura separada. Todo o sistema básico desenvolvido pelo FreeBSD.
O pkg upgrade
faz uma coisa diferente: atualiza os pacotes. Os pacotes estão em /usr/local
, são "3th-party-apps" - desenvolvidos por outras pessoas / empresas / ..., não pelo FreeBSD.
a) Atualização do sistema significa atualizar o sistema básico ( freebsd-upgrade
). A atualização do programa significa a atualização dos pacotes instalados (em /usr/local
, com pkg upgrade
ou com a árvore de ports).
b) Você pode construir seus pacotes a partir de portas com suas opções ("baseadas em fonte") ou você pode usar pacotes de repositórios ("baseados em binários").
É independente do sistema básico: você pode atualizar seu sistema básico com freebsd-update
("atualização binária") e pode construir seu sistema básico a partir do código-fonte.
Se você quiser construir pacotes a partir de portas, você deve ter a árvore de portes. Você pode fazer o checkout com portsnap .
Espero que esteja claro agora.
Update1 se você quiser criar o sistema básico a partir do código-fonte, deverá recriar todas as atualizações - consulte Rebuilding World . E deve sincronizar a fonte do curso.
Eu acho que se você quer um sistema baseado em fonte, é uma boa opção usar o sistema base binário (que contém um compilador (clang em 10.x)) e construir seus aplicativos desejados (servidor web , editor favorito, talvez gerenciadores de janela, navegadores, office suite, etc.) das portas.