Assim como o FreeBSD, o OpenBSD vem com o comando pkg_add. Ele é usado para instalar pacotes binários ou de atualização de um espelho HTTP ou FTP. Se você comprou o DVD/CD do OpenBSD, você pode instalar pacotes usando o próprio CD. O comando pkg_add também é usado para atualizar pacotes existentes. Por favor, note que você não pode mais comprar o DVD OpenBSD.
Você pode conferir como instalar o ports tree no artigo OpenBSD Instalando O Ports Tree Collection.
Adicionar pacote via ftp ou http
Use sempre o local mais próximo do mirror do OpenBSD, por exemplo:
ftp://ftp.openbsd.org/pub/OpenBSD/4.0/packages/i386/ https://mirror.esc7.net/pub/OpenBSD/6.2/packages/amd64/
Observe que o número da versão está configurado para 6.0 e a arquitetura da máquina está configurada para amd64. Você pode encontrar uma lista completa de espelhos do OpenBSD aqui.
Como configurar o PKG_PATH
Primeiro, você precisa configurar a variável PKG_PATH para que você não precise digitar o caminho do espelho completo todas as vezes. Você precisa adicionar PKG_PATH ao seu arquivo de inicialização de shell, como ~ / .bashrc ou ~ / .bash_profile. A variável PKG_PATH DEVE terminar em uma barra:
$ export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/4.0/packages/amd64/
Ou:
# export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/4.0/packages/$(machine -a)/
Observação sobre o arquivo /etc/installurl
O arquivo /etc/installurl contém uma única linha especificando uma URL do servidor espelho do OpenBSD, como no exemplo:
https://ftp.openbsd.org/pub/OpenBSD
Edite/Crie um arquivo de configuração chamado /etc/installurl. Esta é uma maneira recomendada de configurar a versão mais recente do OpenBSD:
# vim /etc/installurl
Anexe/edite da seguinte maneira:
https://mirror.esc7.net/pub/OpenBSD/
Salve e feche o arquivo em vim / vi.
Como instalar o pacote de links
Execute o seguinte comando:
$ sudo pkg_add -v links
Pode-se usar doas que é padrão no OpenBSD:
$ doas pkg_add links
Outra opção é tornar-se root usando ‘doas’ ou ‘su’ e digite:
# pkg_add -v -i links
Onde:
- -v: modo Verbose (exibe mais informações)
- -i: instalação interativa. Pode fazer-lhe uma pergunta, como a versão que deseja instalar e assim por diante.
Você pode ignorar a opção -v e -i. Por exemplo, instale o pacote bash, digite:
# pkg_add bash
Deve retornar algo semelhante a isto:
Aqui está outro exemplo com a opção -i:
# pkg_add lighttpd
Deve retornar algo semelhante a isto:
quirks-2.241 signed on 2016-07-26T16:56:10Z Ambiguous: choose package for lighttpd a 0: 1: lighttpd-1.4.38p1 2: lighttpd-1.4.38p1-ldap 3: lighttpd-1.4.38p1-ldap-mysql 4: lighttpd-1.4.38p1-mysql Your choice: <strong>1</strong> lighttpd-1.4.38p1:pcre-8.38p0: ok lighttpd-1.4.38p1:spawn-fcgi-1.6.3p0: ok lighttpd-1.4.38p1:lua-5.1.5p6: ok lighttpd-1.4.38p1: ok The following new rcscripts were installed: /etc/rc.d/lighttpd See rcctl(8) for details.
Observe que pkg_add solicitou a versão do lighttpd, que deseja instalar.
Como exibir ou listar pacotes instalados do OpenBSD
Use o comando pkg_info:
$ pkg_info
Deve retornar algo semelhante a isto:
Como atualizar o pacotes existentes
Para instalar ou atualizar o pacote de links. Digite o seguinte comando pkg_add:
# pkg_add -u links
Como atualizar todos os pacotes no OpenBSD
pkg_add atualizará todos os pacotes instalados se nenhum nome do pacote for fornecido:
# pkg_add -u
Leia também: Como aplicar patches no OpenBSD system/kernel e pacotes facilmente
Como procurar pacotes
Digite os seguintes comandos (veja como instalar o ports tree no OpenBSD) para procurar o pacote php-gd-7:
$ cd /usr/ports $ make search key=php-gd-7
Deve retornar algo semelhante a isto:
Port: php-gd-7.0.23 Path: lang/php/7.0,-gd Info: image manipulation extensions for php5 Maint: Robert Nagy <robert@openbsd.org> Index: lang www L-deps: graphics/jpeg graphics/png B-deps: archivers/bzip2 devel/autoconf/2.69 devel/bison devel/metaauto www/apache-httpd R-deps: php-7.0.23:lang/php/7.0 Archs: any
Um outro exemplo seria:
$ make search key=php-mysqli-7
Como remover/excluir um pacote no OpenBSD
Você pode remover ou excluir um pacote, digite:
# pkg_delete pkgNameHere # pkg_delete bash
Deve retornar algo semelhante a isto:
bash-4.4.12p0: ok Read shared items: ok
Como configurar o modo ativo ou passivo para os espelhos ftp
Se você estiver atrás do firewall, talvez seja necessário configurar o modo ativo ou passivo com a variável FTPMODE (o padrão é passivo).
$ export FTPMODE=active
Referencias
Sugiro a leitura de alguns tópicos para melhor compreensão: