Em uma nova máquina FreeBSD 11.2, minha /usr/ports
pasta está vazia.
Corrida:
portsnap fetch extract
…conforme discutido no Manual resulta em preencher o meu /usr/ports
com um show de conteúdo.
Se eu quiser apenas uma coisa do Ports Collection , como o servidor de banco de dados Postgres , esse enorme download é um desperdício desnecessário de tráfego de rede, espaço em disco e tempo.
➥ Existe uma maneira de baixar apenas uma única porta para instalar?
Se não, existe uma maneira de baixar apenas um subconjunto da Coleção de Ports? Por exemplo, obtenha apenas a databases
subcoleção para que eu acabe com apenas um /usr/ports/databases
?
extract
Você não pode fazer isso com
portsnap
. Se você já tem um snapshot (você já baixou) você podeextract
apenas partes da árvore de ports (portsnap extract databases/postgresql11-server
), vejaman portsnap
:svn
Se você não quiser buscar esses arquivos grandes, você pode usar
svn
em vez deportsnap
:Consulte a parte relevante do manual .
O
svn
é parte do sistema básico (/usr/bin/svnlite
- você pode usar um alias ou substituirsvn
porsvnlite
) para que você não precise instalar devel/subversion .Sim, e é simples. É no próprio capítulo do Manual que você está olhando.
Você precisará da árvore de portes instalada, o que o Manual explica como fazer. Ele oferece duas maneiras,
portsnap
e verificar a árvore (ou mesmo parte dela, embora as dependências entre pacotes militam contra isso) a partir do controle de origem. (Usuários de PC-BSD/TrueOS usam git em vez de subversion.)Mude para o diretório individual da porta/pacote desejado, execute
make fetch
para buscar o(s) arquivo(s) de origem e executemake extract
para extrair o conteúdo. Você acaba com o esqueleto da árvore de portas e apenas os arquivos para essa porta presentes.Uma busca também pode ser realizada em um nível superior, como
/usr/ports/databases
, como o Manual explica em §4.5.1.1.