« on: June 03, 2008, 12:29:03 pm »
I would like to share with you what I consider LinuxMCE's biggest problem is at this moment:
1) Installation is very unstable
2) there is no good error handling
3) There is no fall back scenario when basic things like video card are not detected correctly
It's clear LinuxMCE is not ready for the average user. But it is not ready for the average IT skilled dude who has some minor linux knowledge either. Depending on luck with the hardware combination, it's only possible for Linux experts and developers. I consider myself a member of the last category so I have the skills to investigate what goes wrong and what causes trouble, but still it takes me a lot of time to diagnose and I find the installation experience terrible.
Main issues encountered:
1) AVWizard and Xorg detection:
Fails on via unichrome chipset (wrong detected monitor capabilities and Horiz/Vert refresh range)
Fails on NVidia GeForce4 (doesn't detect chipset, didn't load nvidia_legacy kernel module, tries to load orbiter in OpenGL mode where xorg.conf is still on vesa !)
In the first case the system keeps trying to start X forever. In the second case, Error message is displayed starting Orbiter in X but there is no fallback.
In both situations the end user gives up here. There is really nothing he can do.
I submitted a bug report with lots of technical documentation on the first issue - it got closed as non reproducible. Unbelievable - it is very reproducible; only the proposed fixes didn't work.
I submitted a bug report on the second issue, we'll see where this one gets.
2) AVWizard is way to intrusive. Rewriting your xorg.conf from a template every time throws away without warning any custom configuration you may have done. I have a touchscreen with my own .so and input device configuration in xorg.conf. IMO, AVWizard should leave detection up to kubuntu, take kubuntu's generated xorg.conf, generate a template out of that and put that one in /usr/pluto/templates. Also AVWizard should better handle all situations where things go wrong and use a last-known-good when X doesn't start, auto reboot happens, or Orbiter fails to load.
3) Running a default DHCP server on your LAN for a DVD based install renders anyone with a local home network and only one NIC with PC's in the house which can no longer access the internet. Default should be NO DHCP server, and get IP as a client, unless no DHCP server exists on the network. This is easy to implement, and will help the 90%(?) people who currently have a small lan behind a NAT router to the internet to keep using their regular PC's. Turn off by default !
4) Turn firewall off by default after installation ! Blocking all incoming traffic makes diagnosing, troubleshooting, remote login very hard, even for average Linux users. If your video card was not detected or AVWizard is stuck in an infinite loop you cannot access the box but through the constantly disappearing (due to X being started) console. Try to type some iptables commands while the display is flickering - awfull!! Firewall off by default - SSH Server on by default - and turn these things on later, e.g. after a question to the user "Is the system completely working as expected ?" .
5) Logging - with all these scripts running concurrently, pffff. They all have their own logfiles but it seems impossible to correlate events. We need a good debug logging system. The only reason I could find out what goes wrong was by diving into the scripts themselves. This is not encouraging.
Just to get the system up and running with all hardware working, it took me about 20 hours. My first installation with Via Unichrome chipset took about 50 hours. That's not quite what it should be like.
I guess these things really need to be addressed if LinuxMCE wants to build an active development community where progress is made fast. I would love to contribute because it theoretically has all the features I would love to have, but this project seems to set wrong priorities.