Will Backman speaks with Andy Ritger and Christian Zander from NVIDIA about the NVIDIA FreeBSD graphics driver. The interview gives an overview of the drivers current features, plans for future improvements, and a brief discussion about licensing and NVIDIA’s open source efforts. Thanks to the FreeBSD guys themselves for this summary.
I am one among many who are have been keen to try out & compare a BSD to Linux on the same hardware.
For me, a big bugbear of Linux is the failure to date to properly address the problem of dependency hell. This is compounded by the fact that at last count there was over 500 flavours of Linux each with its own adhoc layout.
Hopefully BSD’s will not succomb to this madness.
It’s quite possible that PC-BSD with nbi installable packages will take off up become very popular even if it is not the most technically elegant solution but because it satisfies needs users are crying out for!
Edited 2006-07-16 11:04
I’ll start off by saying that the interview was excellent. I prefer Linux for my needs. But I am delighted to see NVidia working with the FreeBSD guys to polish the x86 driver and move forward on x86_64. While I would prefer to see a FOSS driver, NVidia is really showing that they care about their customers. Not just Windows customers, or Mac customers, or Solaris customers, or Linux customers. but customers, period. Kudos to them.
However, in response to amavida:
> For me, a big bugbear of Linux is the failure to date to properly address the problem of dependency hell. This is compounded by the fact that at last count there was over 500 flavours of Linux each with its own adhoc layout.
Nonesense. The Linux Filesystem Hierarchy Standard ( http://tinyurl.com/jzxo8 ) is followed by most all distros these days and effectively unifies the ‘layout’ of their filessytems.
But that is not why I am calling this nonsense. Layout has little to do with dependencies so you don’t have to.
May I ask with what distros and versions you have experienced this “dependency hell”?
For the last several years, all major distros have had excellent package management systems. The RedHat familly has yum. The Debian family has apt. Suse has yast2. Etc.
So installing a package with a lot of compilcated dependencies looks something like:
# yum install frankenstein-programming-framework
or
# apt-get install frankenstein-programming-framework
The package manager handles all the gory details involving dependencies.
It is true that if you are installing a 3rd party package that is not included in a repository, you may have to initiate the installation of a set of packages yourself. E.g. if you download and try to install the rpm for nomachine’s proprietary NX client, it will likely complain about a particular version of libstdc++ not being installed. So you have to:
# yum install compat-libstdc++-296
and then
# rpm -i nxclient-1.5.0.rpm
and you’re done. It involves dependencies, but is hardly “hellish”.
It may be that there are distros which do not do this as well. Which is why I would be interested in where you have had these problems.
Thanks,
Steve Bergman
Edited 2006-07-16 16:58
> Layout has little to do with dependencies so you don’t have to.
—
> The package manager handles all the gory details involving dependencies.
Oops.
That first should read simply: “Layout has little to do with dependencies.”
The second should read: “The package manager handles all the gory details involving dependencies so you don’t have to.”
Not sure how I did that and it is too late to edit the original post. Sorry for any confusion.
You can put whatever geeky gloss on it you like, but the fact is, every one of the 503 known versions of Linux require software to be repackaged specifically for it.
This massive fragmentation is _not_ a good thing.
I’m really tired of Linux zealots sticking their heads in the sand about this!
Even Linus has acknowleged this issue but to date people keep reinventing the wheel by devising yet another Linux distro with it’s own from scratch installer, it’s own unique kernel, it’s own version of GCC, it’s own unique dependencies… God it makes me sick!
An example? You want to install K3b the dvd burner software? Go look at the download page, se all the different versions prepackaged for multiple different versions of Linux. Yours ain’t there? Then you’re sweet out of luck sonny boy!! Unless you want to geek around for hours trying to complile it yourself – lot’s of luck on that one!
Seems that there is a clique of Linux zealots who expect everybody to have the skills of a software developer & the unlimited time of a 15 year old teenager!!
Personnaly I gave up chasing rpms & debs etc & just use Slackware but am investigating moving to a desktop BSD like PC-BSD to escape this insane fragmentation.
Edited 2006-07-17 00:16
> You can put whatever geeky gloss on it you like, but the fact is, every one of the 503 known versions of Linux require software to be repackaged specifically for it.
False. You’ve been reading too much disinformation. 😉 (And yes, I know it’s out there.)
First of all, “500+ Linux distros” is a red herring. I mean, come on, how many people actually *use* Mediain Linux, TinySofa Linux, and Kurumin Linux put together? And *those* are in the top 100.
In reality, there are only a few families of distros to worry about. Supporting the RedHat family, the Debian family, and the Suse family would cover the vast majority of users. If smaller distros do things in such a way as to be incompatible… well, that’s a problem for them and their users. But most distros are derivatives of either Fedora or Debian/Knoppix and are mostly compatible.
Actually, upcoming multiformat package managers like ‘Smart’, plus continued standardization should further tighten up the situation.
The plethora of Linux distros out there are simply testimony to how trivially easy it is, these days, to:
a. Create a derivative distro.
b. Get it listed somewhere.
Making it popular? That’s a *lot* harder.
As to your k3b example, I just installed it on my Ubuntu system, as an excercise, using the following command:
# apt-get install k3b
Since you chose a KDE application for your example, and I prefer Gnome, this is actually a sort of “worst case scenario”. The dependency list was, indeed, long and it took over 4 minutes to complete the installation. In fact, I had time to go to the coke machine around the corner and grab a diet 7UP while it was downloading and installing. If I’d been after, say, Gnome Toaster instead of K3b, it would have taken about 20 seconds and would likely have had 0-3 dependencies.
I suspected that you were using Slackware. Not to trash Slack or anything (it was my first distro in 1996), but it is the one semi-popular distro that has opted not to do a sophisticated package manager. (Slack fans please correct me if my info is outdated.)
I hate to put it this way, but it sounds like you could really benefit from looking around at the tools that come with modern distros and start using them. Many, many complete Unix/Linux newbies are doing this quite painlessly under Ubuntu using its gui front end to apt. See for yourself at http://www.ubuntuforums.org .
If they can do it, I *know* you can, too.
None of this is intended to reflect negatively on the *BSD’s. But do note that I had to say *BSD’s there, and not just BSD. Because there is no one true BSD. There is a family of BSD’s.
HTH,
Steve Bergman
Edited 2006-07-17 01:19
You keep repeating yourelf about all the different package management solutions that have been developed to _try_ to deal with the situation of dependency hell.
As a computer user (with decades of experience) who has done _a_lot_ of research I can comfirm that none of them are as effective as promised.
No one wants to waste hours re-installing a borked system beause the pm solution dejour has crapped itself but that’s the problem we face.
No one wants to go looking for specially packaged software but that’s the problem we face.
Hell even BSD has developed the pbi format to simplify software installation.
You have your head stuck firmly in the sand friend.
> As a computer user (with decades of experience) who has done _a_lot_ of research I can comfirm that none of them are as effective as promised.
Amavida,
Then present the evidence you have gained over the decades with your extensive research instead of spouting vague, unverifiable assertions that don’t jibe with my real world experience. That is not too much to ask.
You have not come up with a single valid exmaple of the problems you are talking about. Just present a verifiable example and we will then have something concrete to discuss.
If this problem exists, and surely if it is as bad as you say it is, then giving an example can’t be that difficult, right?
Until then, *my* decades of experience (since 1979 for computing, 1988 for Unix, 1996 for Linux) tells me you are making this stuff up.
No sand involved, here. Though I suspect you are tilting at windmills, there.
BTW, I would also be curious now, as to an example of a packaging system getting “borked” as you put it, beyond repair. This has never happened to any of my clients, and certainly never to me. I’ve done the occassional
# rpm –rebuilddb
sure.
(You did know you could do that, right?)
But corrupted beyond repair? Never.
I’m not discouraging you from trying out the BSD’s. I’ve used a couple of them for various projects. Good solid OSes. I’m not sure I’ve ever heard anyone suggest switching to them for better applications availability as you are doing. But thery are good and solid.
Steve Bergman
Edited 2006-07-17 12:43
Well you can put all your faith & energy into rpm that’s your choice.
I think we have both had our say.
I’ll take it then, that indeed you are unable to produce a single valid example of the problems you have insisted exist and are rampant.
In that case, I would agree that we have both had our say.
Have a nice day! 🙂
Steve Bergman
Edited 2006-07-17 14:43
Troll on
Sugar toots, there are 504 known versions of Linux, but 499 aren’t worth a pitch of shit in the grand scheme of things; the big players are Fedora/Red Hat, SuSE, Debian/Ubuntu and Slackware.
Companies target those distributions – people who wish to sit on the fringes of the distributors, are quite welcome to change the installation script and create work arounds for ‘ism’s that occur.
This ‘fragmentation’ is the biggest load of crap since people claimed that UNIX was fragmented; considering that there were only 2 versions for x86, and the rest were proprietary versions running on different architectures, it would be as stupid a saying that there is fragmentation in the operating system market because there is Linux, FreeBSD, OpenBSD, NetBSD, Solaris, etc. etc.
Edited 2006-07-17 08:38
“This ‘fragmentation’ is the biggest load of crap since people claimed that UNIX was fragmented”
You may think it’s crap, but a certain non unix OS made one geek the richest man in the world while Unix lost ground like crazy.
You may think it’s crap, but a certain non unix OS made one geek the richest man in the world while Unix lost ground like crazy.
Then obviously you’re clueless to history; Windows won not because it solved the ‘fragmentation problem’ but because it was cheap, it was good enough technology, and 9 times out of 10, it got the job done.
16 years ago, if you wanted to purchase a SCO UNIX licence, you paid a base fee of around a grand, then you paid for each component; wanted mirroring, that’ll cost you extra, want the TCP/IP stack, that’ll cost you extra, want clustering support, that’ll cost you extra, want a web server, that’ll cost you extra.
I’m sorry, but it came down to pure economics, who delivered the best bang for the buck, and at that time, Microsoft offered the best bang for the buck, Windows NT might not have set the world alight in terms of ruggedness and uptime equaling to that of a mainframe, but by enlarge, for most companies, it did a pretty damn good job for what it was designed to do.
I don’t understand how all these details add to the discussion.
But thanks for putting me down with the clueless thing!
Seems these threads are dominated by a few very self opinionated people like you.
Have a nice life.
Compared to you, who spouts shit on threads, which you’re completely clueless about; here is a hint sunshine, whilst your mummy was wiping your ass and changing your nappies, I was programming in some god awful low level language.
So sonny, you sit back, and listen to your elders for once in your life, it might actually serve you some good listening to those who have a f–king clue about what they’re talking about.
Edited 2006-07-18 04:57
How little you know….
BTW your behavior as a Linux zealot is on show to the world… ahem…
“Nonesense. The Linux Filesystem Hierarchy Standard ( http://tinyurl.com/jzxo8 ) is followed by most all distros these days and effectively unifies the ‘layout’ of their filessytems.”
While most distros *do* adhere to something like this, IMO, the structure doesn’t make sense, standardized or not. For example, take the /etc directory, which is generally used to store configuration files that are systemwide. That’s all well and good, but WHY “etc?” Give the meaning of et cetera (“and the rest,”) That would imply that the configuration files are some kind of extra accessory, that aren’t really necessary. Personally, I think the only directory name that makes sense in the standard is /home.
“The package manager handles all the gory details involving dependencies.”
Package managers tend to cover up the situation nicely, but the problem remains. Also, package managers require maintainers for each specific distro.
> While most distros *do* adhere to something like this, IMO, the structure doesn’t make sense, standardized or not.
Well, I’m not going to defend the names that the various system directories were given. That is simply something that we are stuck with. Names are not really a strong suit for POSIX-like OSes. Not from a marketting perspective, anyway. Ideally, the user should not have to care that much about the names, though. We’re not quite there yet. But working on it.
> Package managers tend to cover up the situation nicely, but the problem remains. Also, package managers require maintainers for each specific distro.
True. Well… partly true. E.g., Debian’s repos service a variety of distros in the Debian family. Dag’s repo sevices a variety of rpm based distros. So it’s not necessarily distro specific work. But, as long as the work gets done… and it *is* being done… why should the user care?
I’m all for more standardization. But I’m pretty content with where we are at this point in time. I’ve been following Linux’s progress for 10 years now, and things are definitely moving in the right direction. It takes longer than it would if it were just one company standardizing internally. “The Bazaar” is like that. But it is definitely happening.
I’ve listened to BSDTalk from day one. Will always has a great program, and this episode is no exception.
First, Kudos to BSDTalk!!! Still pushing up great news and stuff (mostly podcasts).
Now, I was wondering if I’d willing to buy a new card to run on a GNU/Linux OR FreeBSD Workstation, from the point of view from someone that doesn’t care about games, which one would it be?.. Is there any choice of having a great GPU + software transparent HW vendor????
The problem isn’t that every operating system in existence isn’t compatible with eachother with regards to component installation.
The problem is that the current set of sollutions to handle this doesn’t scale very well.
I think it is very important for the health of the bazaar system to minimize the cost of beeing different. That means that the focus should be on technology to facilitate this, not on standards as an end in it self.
I think the way forward is to try some sollutions that isn’t based on a central authority with a set of skilled package maintainers.
Conary[1] is interesting in this regards but there room for more experiments. It will be interesting to see if Canonical manage to do something along these lines with bazaar-ng.
[1] http://wiki.rpath.com/wiki/Conary
“””I think it is very important for the health of the bazaar system to minimize the cost of beeing different.”””
John,
I’m all for new and better ways to do things. I almost mentioned Conary along side Smart as a new and better way. But edited it out because I was not familiar enough with it to back up the assertion if called on. It does look interesting, though.
I was unaware of bazaar-ng. I’ll have a closer look. Thanks for the tip!
-Steve