scope of the port re-engineering project

Stephen Montgomery-Smith stephen at math.missouri.edu
Wed Dec 12 05:59:55 PST 2007


Aryeh M. Friedman wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Disclaimer:
> 
>     This does not commit me, anyone else and/or FreeBSD to an course
> of action nor does it imply such a commitment.
> 
> Assuming that the following is true:
> 
>     1. There is a "proven" need to re-engineer the ports system as
> demostrated by posts to -ports@ and the results of the survey on
> re-engineering the ports system
> 
>     2. Any system will correct your own personal "worst aspect" of the
> ports system but will not do so at the expense of breaking any high
> level functionality
> 
> Please answer the following questions:
> 
> 1. Using the items listed in the next section please select the best
> scope of the project assuming that 100% backwards compatibility with
> the current ports system is maintained?
> 
> 2. Using the items listed in the next section please select the best
> scope of the project assuming that 100% backwards compatibility with
> the current ports system is *NOT* maintained?
> 
> Possible project scopes:
> 
> a. Refactor the current system only
> b. Redesign and recoding of the current system
> c. Attempt to unify all methods of FreeBSD software installation into
> a single system
> d. Same as c but for all BSD like OS's

I'm not sure what the words "refactor" and "recode" mean here.

If I had lots of time on my hands, I think I would redo ports _without_ 
using "make" as its primary scripting tool.  Mind you, I'm not sure what 
I would use in its place - perhaps its own scripting tool written from 
scratch?

The difficulty with using "make" is that it isn't linear.  For example 
(and this was my bugbear), to figure out "make -V PKGNAME" the program 
has to read and process every single line of the makefile, including all 
of its ".includes".  And while perhaps this issue is a bit frivolous, 
nevertheless I bet that this is one of the reasons why people creating 
ports make mistakes setting up the dependencies.

Finally, I really do like the difference between ports and packages. 
Please keep both of the "build from source" and "install binaries" 
capabilities.

If you really do all the heavy lifting, it is something I will admire. 
Not least because you might do all this work and find people are too 
conservative to use it.

Stephen


More information about the freebsd-ports mailing list