This repository hosts the development of the FreeBSD port for the Wifibox project to provide proper packaging. Changes here are downstreamed to the FreeBSD ports tree time to time.
This is the development version of the port, use it only if the
net/wifibox
port
from the FreeBSD Ports
Collection
does not work for some reason. Please report issues at the Wifibox
project directly.
Before trying to build the net/wifibox-alpine
port, it might be
easier if the dependencies are installed beforehand via packages.
# pkg install gtar patchelf squashfs-tools-ng
Also, make sure that the Linuxulator is activated, for example, by loading the corresponding kernel module. There is no need to install a full Linux base system (this is going to be done for the port itself), but if that is already there it will not cause a problem either.
# kldload linux64
Sometimes the build may crash with an Abort trap
message, which
results in Error 134
for make
. This happens when trying to run
Linux binaries atop FreeBSD, such as the APK package manager for
installing the components. This usually happens on systems that have
not had the Linuxulator used before and may not have the
/compat/linux
directory created, which is expected to be present.
This issue can be fixed as follows, for example.
# mkdir -p /compat/linux
For net/wifibox-core
, the default dependencies are follows, which
could be also installed via packages. The socat
package is only
required if the Unix Domain Socket pass-through is going to be
activated.
# pkg install grub2-bhyve socat
Once this repository is cloned and the necessary preparations are made, the ports can be easily installed in the standard way.
# make -C net/wifibox-alpine install clean
# make -C net/wifibox-core install clean
# make -C net/wifibox install clean
The net/wifibox
is only a metaport, it is created only to make it
easier to install the other two ports, which are required on the other
hand. There are also flavors available, which can be learned by the
following command.
# make -C net/wifibox -V FLAVORS
Flavors matter only for the wifibox
and wifibox-alpine
ports and
they refer to the set of firmware files to be included in the guest
disk image. For example, if ports should be built with the iwlwifi
firmware files only, just use the corresponding flavor.
# make -C net/wifibox-alpine \
FLAVOR=iwlwifi \
install \
clean
If there are many unused firmware files installed still, the
FIRMWARE_FILES
variable can be used to cut down on their number to
list only the ones to be used. This may produce a significantly
smaller guest disk image.
# make -C net/wifibox-alpine \
FLAVOR=iwlwifi \
FIRMWARE_FILES=iwlwifi-8000C-36.ucode \
install \
clean