BSD Version Of Gentoo's Portage 155
eugene ts wong writes "Here is some good news for BSD users. Gentoo Weekly Newsletter has an article that says that there is a BSD version of portage. It's still in a developmental stage, but it's definitely making progress."
Re:Ease of Use for Package Management (Score:5, Informative)
The cool thing about ports in relation to freebsd, and prolyl the other bsd's.. is that they integrate with the package systems used. SO if you want, you can download the tbz (vs tgz) package or use
Re:Portage versus Ports? (Score:2, Informative)
Re:Portage versus Ports? -- IMHO/IMOE (Score:3, Informative)
The FreeBSD's ports' Makefile basically sets a load of build/package organization variables, almost the same as a portage "ebuild" does. An ebuild is a script though. I've submitted a few when I was trying out Gentoo a while ago.
Portage just happens to be written in python (good choice BTW IMHO) whereas the traditional pkg-tools for FreeBSD are C based and the portupgrade utility is written in Ruby.
Portage was inspired by NetBSD's pkgsrc which was derived from FreeBSD ports. Flags like PROVIDES are similar to USE and somewhat comparable to FreeBSD's make options for ports e.g. "NO_GUI"=true and stuff like that. I do like the USE idea though.
The interesting thing about portage as a FreeBSD user is two sided really: the pro would be that the functionality of portupgrade would be part of the portmanager tool (portage) itself, the con is that *BSD (even Net) are not a kernel with packaged userland, it is a full (perhaps small though) OS and the hard thing is always where to draw the line and whether or not the base system can and should be put into packages/ports/ebuilds also. Like any OS Gentoo Linux needs a bootstrap and a chaintool too to build the rest. LFS'ish (quite easy though, they have good docs).
The Gentoo "rc scripts" are also very NetBSD inspired and recently FreeBSD has followed this approach, e.g. using PROVIDES, and BEFORE, etc.
My (rather short) experience with portage was that I liked it, but it's definately more geared towards a linux (kernel+tools+pkgs) system. It also broke quite frequently though. And of course, python is always nice, if only to unbreak little things easily (I'm not much of a C person).
Re:Shortcoming #1: (Score:5, Informative)
There already are "USE" flags of a sort, but they're more specific than the general purpose flags that Gentoo uses. Adding some new flags should be a piece of cake, if you can convince the committers of their need.
Re:Shortcoming #1: (Score:3, Informative)
Re:Changes to ports (Score:3, Informative)
The only problem is finding the options you can use. The best approach is currently to simply examine the port's makefile, say by grepping for "^\.if", but that doesn't always work (for example, the postfix ports use a different mechanism). So learning to read and understand makefiles is a good idea, and reading the porter's handbook also pays off. A standardized mechanism to query a port for all available options would be definitly a Good Thing (it would also make writing graphical frontends for the ports tree way easier, for example) - there have been some ideas how this could be done, but nothing has worked good enough yet, and of course, switching ~8000 ports to a new system would be a lot of work.
Re:What they don't want you to hear... (Score:1, Informative)
Re:What I know about *BSD (Score:1, Informative)