On Thu, Apr 19, 2012 at 7:56 PM, Jo-Erlend Schinstad
<joerlend.schins...@ubuntu.com> wrote:
> Den 18. april 2012 09:14, skrev Martin Pitt:
>> Hello Desktop fans,
>>
>> We have had Jockey for quite a while now to perform the installation
>> of proprietary (e. g. NVidia), alternative (e. g. fglrx vs.
>> fglrx-updates), third-party (e. g. from openprinting.org) drivers.
>
> Hardware! Yes, that's an area where large improvements can be made.
>
> The ability to easily install third-party drivers is obviously quite
> valuable. But how do people actually look at drivers? I don't think most
> people understands the difference between open drivers and proprietary
> third-party drivers. Nor do I think they care. And why should they? What
> they want, is for their hardware to work properly.

Hmm. I think you should be careful not to jump to conclusions here.
You may run into a lot of trouble coming to consensus among the
community, or even among the Ubuntu developers, regarding this point.
Don't take it for granted that everyone will turn a blind eye to
proprietary software running on their system. A lot of people think it
is important to remind our users that the *reason* why their OS runs
so well is because the vast preponderance of its software is free and
open source software. Licensing matters -- whether or not you agree
with that point, licensing nonetheless matters to a lot of people, and
whitewashing the subject will not be an easy sell. All I'm saying is
that you're touching on a very controversial issue here, and
regardless of what I personally believe or how convinced you may be of
your own opinion, realize that you can expect resistance from various
people if you're going to say "why should users care whether their
drivers are open source or proprietary?". People will give you reasons
why -- reasons that they feel very passionately about. Just be
prepared. ;)

Instead, a good compromise would be to provide the user a summary of
the pros and cons of using proprietary drivers without making it
overly complex. You almost have to take it on a per-driver basis,
because it really does vary (aside from the fact that Ubuntu
developers can't directly support or enhance or fix bugs on
proprietary drivers; this point is going to be the same for all
proprietary drivers). But for other drivers like fglrx, there are
issues such as whether kernel mode setting is supported, the expected
2D performance, the expected 3D performance, the expected stability,
and so on.

If we could somehow capture these points in a user-accessible way and
allow the user to make an informed decision, that would be better than
trying to *over-*simplify and make a decision for them, whether that
decision is in favor of open drivers or proprietary ones. Because
remember, it's hardly a foregone conclusion that proprietary drivers
are always going to work better or be more stable. It really depends
on the use case. For instance, there was an EIGHT MONTH period where I
could get a solid 60 fps with 100% stability from the radeon open
drivers playing my favorite game (Savage 2), but it would crash on
startup with the proprietary fglrx. This continued, as I said, for
eight successive monthly releases of fglrx. But on the flip side,
there were many applications that would lock up the whole system if
started with the open drivers, but fglrx would render them decently
well. We're going to be shipping drivers with really nasty tradeoffs
like this for years and years to come, and if we don't deal with the
complexity, the users will deal with it the only way they can: they
will ignorantly claim, "Ubuntu sucks!" as soon as their system or some
program crashes for *any* reason. Complex problems require complex
reasoning, even with licensing itself completely out of the picture
(and the licensing debate will open a whole new can of worms by
itself).


>
> If this was going to be redesigned, I would rather see it as a "Hardware
> manager". Ubuntu is currently promoting drivers as an optional extra.
> But that's not true; drivers are always necessary for all hardware. One
> problem with doing that, is that when you're missing an important driver
> and it's not available in Jockey, then you get the impression that
> Ubuntu has no drivers for your system. Reality is that Ubuntu has nearly
> all of your drivers, but missing one. Users should see that. Otherwise,
> we're always reinforcing the negative without showing anything positive.
> The moon looks smaller when it's near the horizon, because you have
> something to compare it to. So let's compare the one thing that doesn't
> work with the huge number of things that does.

Are you basically suggesting a shameless clone of the Windows Device Manager?

Not a terrible idea, if it can be executed well. And I mean *well*.
Linspire had a similar thing a few years back, but it was abysmal: you
couldn't get any real information from it, and the information that
*was* there was very technical and inscrutable to end users. It also
didn't tell you whether your hardware was operating correctly, or if
alternative drivers were available. Basically it was just a GUIfied
printout of lspci. We need far, far more robust support if we are
serious about this.

I think it would be a great idea to do something like what you
suggested, but what about if the drivers that are missing are critical
to the functionality of this hardware manager application? It sounds
like this component would depend on Internet access and a working Xorg
environment at a minimum. Unfortunately, two of the biggest driver
problem areas are with network drivers (WiFi and cellular data is more
problematic than ethernet) and with graphics drivers. If the fallback
or auto-detected drivers don't work well enough, and you either can't
get a graphical interface or can't get a network connection, then
we've implemented a whole ton of work for nothing. It's kind of a
chicken and the egg problem. I suffered through this for many years
with previous hardware that required proprietary network drivers: I'd
have to download the latest drivers with another computer or another
operating system, put them on a USB hard drive and transfer them over
to Linux. And sometimes I'd be unlucky and the required compile
dependencies wouldn't be installed on the distro, and I'd have to go
out and fetch the deb packages manually from the download repositories
(including *manual* dependency tracking as packages failed to install
for missing deps) until I got enough installed. And then, half the
time, you run into compile problems. And then, the other half of the
time, you run into runtime problems, like the proprietary driver
*hardlocking your kernel* (hello, Ralink!). Do you see where I'm going
with this?

Ah, and I should mention that Ubuntu Server is a *pretty* popular
thing nowadays (I use it myself on a dedicated server), but typically
no desktop environment or Xorg is available on a headless server. So
we'd need a console version of it. I think we could even borrow some
of OpenSUSE's YaST code, because they have perfect support for both
the console and the GUI with the same functionality, due to a bunch of
useful middleware libraries.

Anyway, just my two cents: you have a great idea to make a device
manager / hardware manager, but you'd probably have to ship all the
suitable alternative drivers on the installation CD so that they can't
be missed if the problematic component is the network. And we'd have
to make sure that we have an absolutely rock-solid fallback graphics
stack so that it's never the case that you get "no X". Unfortunately,
some custom HDMI / DisplayPort drivers are sometimes needed to enter
graphics mode even using the VESA fallback interface to a graphics
card, so it's becoming increasingly difficult to ensure that the user
gets X out of the box with the new generation of hardware. The other
problem, of course, is actually fitting all this stuff on a 700 MB CD.
You really need to move to DVD format if you're starting to look at
piling proprietary drivers on the CD with all the existing stuff. It
barely fits as it is.

And I wonder if 12.04 will boot X on my HD7970... I should probably
try it... unless it installs fglrx by default, I won't get X, because
the open source RadeonSI code is currently non-functional. And since I
use HDMI, I may have a perfect example of hardware that lacks X in my
new video card. I will try it out.

>
> If changes are to be made, I would propose that it displayed all your
> hardware, what drivers it is currently using and then make it easy to
> install other drivers. From this application, you should be able to
> export your hardware info so that you can easily provide this to
> support. (System Info > Hardware Manager > Send To: pastebin | email |
> IM | etc).
>
> That is to say, even if your computer doesn't require any proprietary
> drivers, the application should still be useful. It would then display
> the drivers, the developer being listed as Linux. If there are
> alternatives, or third-party drivers are required, then you should be
> able to easily install them. As a service to the user, this application
> should also provide links to the manufacturers website for further
> support. This would both be helpful to the user, and show who's
> responsible. In other words; "We have installed all your drivers for you
> automatically, except that one."
>
> Perhaps this application could also be used to try and find out which
> computer model you have, and provide some kind of forum where you can
> connect to other users with the same hardware? That way, people can
> share their experiences, and support would be able to help a large
> number of people at the same time, instead of each user having to begin
> with a Google search and go from there. That would enable automatic
> detection of some troublesome hardware as well, because it would
> automatically get many posts.
>
> This wouldn't have to be fully automatic, but it should be possible to
> limit the number of possible models based on the hardware. Then you can
> look through a photo album to make it easier to spot your model. If you
> can't find it, then you can upload an image of your own, and then people
> could help identify that computer, enabling you to more easily get
> support – improving Ubuntus database of models at the same time.
>
> Right now, driver support seems bad in Ubuntu. It's actually awesome. We
> need to display it as such. When drivers can't be provided at all, it
> must be obvious to the user who is responsible for that and preferably
> how to contact them.
>
> Don't you think?
>
> Jo-Erlend Schinstad
>
>
>
>
>
>
>
>
> --
> ubuntu-desktop mailing list
> ubuntu-desktop@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Reply via email to