Toughts on additional ports.

Some ports should be easily created.
For instance glrnvim, you only have to do "git clone" & "cargo build". That's all.
But i lack the knowledge of creating a port. (read it's over my head).
 
Some ports should be easily created.
For instance glrnvim, you only have to do "git clone" & "cargo build". That's all.
But i lack the knowledge of creating a port. (read it's over my head).
Most C and C++ programs you can just do "git clone" & "make" too. Unfortunately there is more to it than that. For example:
  • git is not in base
  • cargo is not in base
  • Its a Rust program so probably has 50+ dependencies, also not in base
  • Dependencies can't be fetched at the correct stage before building of cargo
These are similar issues to node.js / NPM (they share the same sloppy approach to dependency management). A port of i.e Emscripten was awkward due to this unreasonable number of NPM dependencies.

Edit: 50 was a good guess (Cargo.lock). Quite grim.
 
Windows has a dll-hell. But here we enter a dependency-hell. If you would create a dependency tree. And then traverse it ?
One can not ignore x11/kde5 has also a lot of dependencies.
 
you only have to do "git clone"
Github?

& "cargo build". That's all.
So, it's rust?

(read it's over my head).
It's not even that difficult. Most of the heavy lifting is done through various macros. You just have to tell it which macros you want to execute and the ports system will take care of the rest. You managed to enter the commands to get the sources, extract them and execute cargo. The port will do all that for you if you give it the right instructions.
 
I think making a port is easy on FreeBSD, thanks to people who wrote these USES macros and portclippy/portlint. I have created 3 port that use golang and 1 port that use C.
 
One can not ignore x11/kde5 has also a lot of dependencies.
I wouldn't call dependency hell. The more complex a software is, the more deps will need. Isn't like it's possible to make a complex software from ground without using many libs unless you bundle them with the software, which in turn would be a complete disaster for the security management perspective. x11/kde5 specifically is a bundle, a big one.
 
Back
Top