Question (fwd)

Polytropon freebsd at
Wed Apr 8 18:01:54 UTC 2020

On Wed, 8 Apr 2020 15:43:27 +0000 (UTC), Viktor Madarasz wrote:
> Very nicely written article I liked it ... I also saw there is a FreeBSD 
> Porting Manual/Handbook

Yes, that is the "FreeBSD Porter's Handbook":

It contains a general description of the framework and tools
you will be using when porting an application to FreeBSD.

> By the look of it with my untrained eye it looked a lot like shell 
> scripting and following a given syntax and cheking builds and update 
> dependencies ---> this with my eyes without having a clue so dont judge me 
> on that :)

You are basically right. The ports infrastructure uses both
shell scripts and Makefile (with BSD make) to accomplish a
wide set of goals. See the ports collection itself as a
"collection of recipes on how to obtain, build, install,
update, remove, or modify applications". THere are also
some files with specific content that act as a "port
description". An outline of how this works can be found
in the porter's handbook mentioned above.

> I always thought porting would mean to bring something over which does not 
> exist .. from zero .. like SecureCRT (has it open thats why, its a closed 
> source SSH/Terminal emulator has windows/mac os / linux versions ) and 
> figure out how to make it work on FreeBSD ** without it existing in any 
> form of port or binary for FreeBSD **

That's not fully correct. In some cases, ports are unique to
FreeBSD - a comparable program does not exist anywhere else.
A port can also be a program originally written for Linux,
with patches, now available on FreeBSD. But a port can also
be a device driver, released by the manufacturer, in binary
form - no sources involved.

Whenever you build a port, the end result typically is a
pkg-style package. This package can then be installed. Don't
be fooled by "make install" maybe suggesting something else -
no, it exactly does that: build a package to be installed.
In many cases, it compiles some source, maybe installs
required dependencies (build dependencies and runtime
dependencies), but sometimes it just fetches a binary blob
from a specified source.

> Where can I go to get some more step by step and training materials on 
> this Porting thing? IRC? other mail list? Telegram chat?

>From the " Mailing Lists" directory, the
list "freebsd-ports - Porting software to FreeBSD" sounds
quite suitable.

Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...

More information about the freebsd-questions mailing list