Size: 2005
Comment:
|
Size: 2730
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 19: | Line 19: |
---- | |
Line 21: | Line 22: |
---- | |
Line 25: | Line 25: |
=== Software Installation === | |
Line 27: | Line 26: |
Official repositories are managed with the '''pkg''' package manager. To update installed packages, use `pkg update && pkg upgrade`. To add a package such as HAProxy, use `pkg install haproxy`. | |
Line 29: | Line 27: |
The '''ports''' project maintains a hierarchy of Makefiles to compile a much larger variety of packages on FreeBSD. To initialize the ports hierarchy locally to `/usr/ports`, run `portsnap fetch && portsnap extract`. Subsequently, to update the hierarchy, run `portsnap fetch && portsnap update`. | === Packages === |
Line 31: | Line 29: |
Alternatively, clone the Subversion repository of the ports project. | '''Binary packages''' are managed with the `pkg(8)` package manager. To update installed packages, use `pkg update && pkg upgrade`. To add a package such as HAProxy, use `pkg install haproxy`. === Ports === The '''ports project''' maintains a hierarchy of Makefiles to compile a much larger variety of software on FreeBSD. ==== Portsnap ==== The `portsnap(8)` exists to aid in maintaining ports. First, run `portsnap fetch && portsnap extract`. This downloads the hierarchy locally to `/usr/ports`. To update the hierarchy, run `portsnap fetch && portsnap update`. ==== Git ==== Alternatively, clone the `git(1)` repository of the project. {{{ pkg install git git clone https://git.FreeBSD.org/ports.git /usr/ports # or, clone a quarterly release git clone https://git.FreeBSD.org/ports.git -b 2020Q3 /usr/ports }}} Subsequently, to update the repository, run: {{{ # if using a quarterly branch, switch to the updated one git -C /usr/ports switch 2020Q4 git -C /usr/ports pull }}} ==== Subversion ==== Historically the project used a `svn(1)` repository. The process was: |
Line 38: | Line 83: |
Use `pkg version -l "<"` to list ports packages that are out of date. | ==== Querying Software ==== Use `pkg version -l "<"` to list software that is out of date. Use `pkg query --all '%o %n-%v %R' | grep -e 'unknown-repository'` to list software that was installed via the ports project. |
FreeBSD
FreeBSD is one of the most popular branches of the BSD project, and one of the oldest open-source branches. It emphasizes security through design and offers a featureful packaging toolchain.
Contents
Installation
Grab an image from the official repositories. You likely will want either the -memstick.img or the mini-memstick.img images. The former is larger, the latter requires an internet conection during installation.
While ARM's aarch64 (a.k.a. armv8) is not a Tier 1 supported platform, pre-built images are available for all major versions of the Raspberry Pi. Just keep in mind that it isn't possible to upgrade the release in-place.
dd the image onto your device, and the rest will explain itself.
Administration
Packages
Binary packages are managed with the pkg(8) package manager.
To update installed packages, use pkg update && pkg upgrade.
To add a package such as HAProxy, use pkg install haproxy.
Ports
The ports project maintains a hierarchy of Makefiles to compile a much larger variety of software on FreeBSD.
Portsnap
The portsnap(8) exists to aid in maintaining ports. First, run portsnap fetch && portsnap extract. This downloads the hierarchy locally to /usr/ports.
To update the hierarchy, run portsnap fetch && portsnap update.
Git
Alternatively, clone the git(1) repository of the project.
pkg install git git clone https://git.FreeBSD.org/ports.git /usr/ports # or, clone a quarterly release git clone https://git.FreeBSD.org/ports.git -b 2020Q3 /usr/ports
Subsequently, to update the repository, run:
# if using a quarterly branch, switch to the updated one git -C /usr/ports switch 2020Q4 git -C /usr/ports pull
Subversion
Historically the project used a svn(1) repository. The process was:
pkg install subversion svn checkout https://svn.FreeBSD.org/ports/head /usr/ports
Querying Software
Use pkg version -l "<" to list software that is out of date.
Use pkg query --all '%o %n-%v %R' | grep -e 'unknown-repository' to list software that was installed via the ports project.
Services
FreeBSD uses BSD init for services. To enable SSH, edit /etc/rc.conf with:
sshd_enable="YES"
This enables the service. To start it immediately, run service sshd start.