Differences between revisions 4 and 5
Revision 4 as of 2022-05-11 14:29:58
Size: 2005
Comment:
Revision 5 as of 2022-05-17 01:30:08
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.


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.


CategoryRicottone

BSD/FreeBSD (last edited 2023-01-08 23:16:03 by DominicRicottone)