First time (trying) to create a port I need guidance

Hi guys,

I'd like to create a port for this software:


I read all the manual about ports and I was convinced it was about Poudriere, but it is not.

I installed Poudriere and see about the configuration file and it has been a bit overwhelming.
Unfortunately I am quite slow at grasping this stuff, I would feel more comfortable using some boiling plate with just the essential pieces required.

Regarding the software I was able to compile it until 5.2 stable, then the developer introduced Rust and it started to become complicated.
This software is available as stable and development, I think I will start from the development version which now is 5.3 series, it becomes stable when Patrick will start to work on 5.4.

I guess the first step is to create a Poudriere environment where to learn how to compile it.

Thanks in advance!
 
I read all the manual about ports and I was convinced it was about Poudriere, but it is not.
Poudriere is "just" an automated wrapper around the ports system to build packages. Focus on the port itself, poudriere-testport(8) is useful when you're finalizing things. It does a whole bunch of automated checks to see if the port (and the resulting package) is good (dependency chain, pkg-plist, even the formatting of the Makefile).
 
Thank you guys, perhaps I should start doing some compiling test on a jail or vm to know exactly what dependencies are required, so far I might have some of them already installed... 🤔
 
then the developer introduced Rust and it started to become complicated.
Had a quick look but it's already complicated. It uses rake (Rakefile) to build an 'sphelper' (written in Go). That 'sphelper' builds various components, some written in Lua, some C, and some more Go. That's going to be royal PITA to convert to a decent port.
 
I know how to compile the old version that doesn't use Rust but only go.

The new version requires extra piece from GO and now even from Rust (cargo); this really annoying me quite a lot, because I don't like when an app require extra pieces outside from the regular repository.

I will start to document every step as soon as possible, I think I'll spin up a vm for this task...
 
Back
Top