Saturday, November 28, 2009

My Worst Experience with Fedora GUI

I have been upgrading my parents computer since Fedora 8 by using yum update options.

I decided that before moving to Fedora 12, I should cleanup some of the packages. I decided to use the gui - packagekit and opted for removal of development group and some language packages like arabic which my parents did not need.

Packagekit mentioned that packages depending on these will also be removed. I clicked ok. For a moment, it did seem to me that the number of packages meant for removal was larger than I had expected. Anyway, I could always fix the problem if some needed package was removed.

After 20 minutes or so, packagekit had done its job. I could find very few packages. I decided check what was installed and rpm was missing! yum was missing.

All the rpm packages were present in /var/cache but there was no way I could use them. The machine had no cd drive. Anyway, I found that I had no installation media for Fedora 11.

So, the only option which came to me - clean install Fedora 12. I downloaded the net installation cd. Removed a cd drive from another computer and installed it on my parents computer. The installation is in progress for the last 6 hours.

Dependencies - Shared libraries should be treated differently

I install a package and required dependencies are installed. The package manager may even ask me if that is OK for me. At least I agree without even looking except for the size of the download.

If I want the package, do I have a choice? How much information do I want?

I believe that shared libraries should be handled differently and should be translucent. Package management should highlight dependencies in packages other than shared libraries. We should be able to examine shared library dependencies provided we want to see details.

Treating shared libraries differently can have several advantages:
  • They could be implicitly removed if no package requires them
  • If a new package requires a different version of a shared library, it should be possible. It should not force an update of the existing library and a cascading upgrade of various packages.

Removing implicitly installed packages

It is easy to install a new package. Yum/synaptic will find the dependencies and install them.

How about removing a package?

It is hard to remove packages which were installed because of dependencies. E.g. install mplayer and dozens of packages get added. Now, remove mplayer but the packages installed implicitly remain installed.

On Fedora, package-cleanup provides some assistance but not enough.

Wednesday, November 25, 2009

Wanting to test a new version

Package management should make it easy to test some packages. E.g. I would like to try Firefox 3.6.

If I try to use the rawhide repository, it has a dependency problem. I skip packages with dependency problem. It offers to install 14 packages, upgrade 18 packages and skips installing Firefox!

I want to test Firefox, not upgrade Python from 3.6.2 to 3.6.4!

I can and do test the beta version by downloading it from the Mozilla site.

Often end-users will want to test and try packages like firefox, openoffice for small improvements which matter to them. They will not want to figure out the dependency issues of testing a Fedora 13 package on Fedora 12. Nor are they likely to search the OpenOffice or Fedora sites for the beta versions.

Since end users are likely to remain within a distribution, wider testing of common packages needs help from package managers by Fedora and Ubuntu.

Package managers should allow a test version of a common package to be installed easily without getting rid of the stable version and allow users to test and provide feedback on the features that matter to them.

Chrome OS Possibilities

Recently, I used a desktop computer on which I had no access. I could boot into the SplashTop desktop environment.

I needed to work on the net and could do my job pretty effectively. So, why should ChromeOS be only for netbooks? I can imagine it being installed on every system as a second OS by default. A pretty nice convenience.

I can imagine it being offered as a VM so that all online financial transactions may be done using a secure VM rather than windows environment. If Google does that, I am sure even Indian banks will no longer say IE only!

An Analysis of an Upgrade to Fedora 12

The upgrade to Fedora 12 required over 2gb of download. I wanted to measure some of the changes in the upgrade for my usage.

Number of packages installed increased by 131 packages. (F11:2232, F12:2363)

Some packages like the kernel and gpg-keys have multiple versions installed and some have both x64 and i386 architecture packages installed. Hence, let us consider the unique package names.

Unique package names increased by 121 packages (F11:2087, F12:2208)

26 packages present in F11 were removed, while 147 were added.

Among the common packages, 1289 had the same version in both F11 and F12. They differed in the release value.

Of these, 343 differed in the version after the 2nd decimal place and can be regarded as fairly minor version changes.

62 differed in the major version number and 380 in the first minor version, e.g. gnome desktop going for 2.26.x to 2.28.x. A number of packages, e.g. sugar packages, have a single digit version number.

How many of these 442 packages could not have been incorporated in Fedora 11?

Would delta rpm packages not be feasible across the upgrade?

Could there be better ways of managing packages which can handle additional usage patterns?

I plan to explore some simple usage patterns I have found hard to do with current schemes of distributions. (I am also planning to install Arch linux as an example of a rolling distribution to see if they meet such needs.)

Sunday, November 22, 2009

More Roads - Solving the Wrong Problem?

A few days ago, an article reported that we have attained the distinction of having the deadliest roads in the world. The only surprise has been that the statistics are not worse.

Earlier this week, I was moving around in Pune and noticed that there was traffic in all directions. Why?

Next day, I decided to visit my cousin in Delhi on my return. It took two hours in the middle of the day from the airport. On a good day, it takes 45 minutes. We were stuck at one traffic junction for 45 minutes. Why do so many people need to be on the roads?

Should we not be looking at ways to reduce the need to travel?

Children go to school quite far from their homes. A fair number of vehicles at the time of the jam were carrying school children.

It should be easy to rent a place with minimal worries about getting the place vacated when needed. Why force a tenant to vacate every 11 months. My father got his house vacated because he was a retired government servant and that also took a ridiculous number of years! My father had finally filed a court case when his (lawyer) nephew had convinced him - "Has the tenant been bitten by a mad dog that he would leave an independent house in the middle of the town to stay far and pay much more rent?"

Another Upgrade - Fedora 12

Continuing with the strategy I have used with the last few upgrades, I installed fedora-release-12-1.noarch.rpm and cleaned the /var/cache/yum directory.

Next step was
sudo yum update --skip-broken

The upgrade went through and took about 20 hours on a 512Kbps line. The broken packages seemed to have been caused by desktop-data-model, which does not appear to be present in Fedora 12.

The installation was clean after I removed desktop-data-model and updated the broken packages.

At first glance, everything seemed fine. I could start an X session from a thin computer as well.

However, Miro wouldn't work. It seemed to run but no display. I subsequently found the same issue with Nautilus. Google search found a person with a problem using Nautilus and he could overcome it by removing gstreamer-plugins-ugly and gstreamer-plugins-bad. This worked for me as well though it did not seem very logical.

I reinstalled both one at a time to find the culprit. However, there was no problem! I presume the broken package during the upgrade may have been the cause of another ir-reproducible experience.

This time I have kept a record of the rpm packages and versions before the upgrade. I hope to analyse the versions to test my belief that the upgrade effort is excessive for the benefit. We need a better way to manage packages.

If I am convinced, I will explore Arch Linux or Gentoo and switch my parents' computer as well. My parents, who are over 80, have not had any difficulty in using Fedora for their common tasks, except when I compulsively update or upgrade their system for no particular reason and break some application. I am searching for a quick undo.

Friday, November 6, 2009

Overcoming Xserver issues on Ubuntu 9.10

Ubuntu 9.04 worked fine with 2.6.31 kernel. Switching between desktop applications was quick. This gave me the confidence of trying 9.10 again.

Xserver Freezing

Although the chipset in my system was 845 and I was not facing a blank screen on booting, I decided to use the recommendation of setting i915.modeset=0 for intel chipsets in the kernel options. Now, Ubuntu 9.10 worked well. However, the X server locked up once just before the end of the day.

Monitor Resolution Issue

For getting the monitor to work at 1280x1024 resolution, I had to add a mode line in xorg.conf file.

Progress but not yet perfect.

Thursday, November 5, 2009

Getting around an Upgrade Constraint

I love to upgrade but can't compel my colleagues. So, while I use OpenOffice 3, the standard in the organisation is OO2. The documents I need to share are simple but, unfortunately, the indentation of bullets is lost when I create the document in OO3 and it is opened in OO2.

Hence, I use OO2.4 for documents I need to share with others. After installing Ubuntu 9.10, the OO2.4 installed in my personal directory would not work. Library version issue. OO2.4 needed older version of libicu libraries.

I simply copied the desired library files from the 9.04 partition and now both versions of OO work fine.

This again brings up one of the issues with current distributions. Linux allows multiple versions of libraries to exist easily. Should package managers help in keeping multiple version of some products? I believe they should. However, I also realise that it may not be easy add these capabilities into the existing distributions.

Ubuntu 9.10 - Problem with new Releases

I couldn't upgrade my Ubuntu 9.04 installation - the upgrade script wasn't on the desktop-iso I had downloaded. It wasn't critical as I had a free partition and installed Ubuntu 9.10 on that. A lucky move.

My initial reaction was very good. The 1280x1024 resolution of the monitor was not found; however, the desktop was significantly snappier on the 512 MB system. I had been expecting and looking forward to it because of the improvements in 2.6.31.

Then, I noticed that X-server would freeze occasionally. I learnt the Alt-SysRq-k combination instead of the Ctrl-Alt-Backspace. I needed to use it often. After killing the X, the screen would usually be black and I could do nothing. I had to learn the Alt-SysRq-b combination as well!

I tried to find the cause for the X locking up but could not. It may not be just the Intel driver on an old 845 graphics chipset as Google search reports problems on Nvidia and ATI chipsets as well.

By the end of the day, I had gone back to 9.04. Then I decided to copy the 2.6.31 kernel and the modules on to the 9.04 partition. I booted 9.04 with the 2.6.31 kernel from 9.10 and the system was stable for the next half hour till the end of day.

Tomorrow, I will explore that environment further and am hoping that the problem is with X. If so, I will work with the snappier 9.04 unofficial upgrade.

This confirms my view that the current mechanism for distributions is now inappropriate. It is too disruptive and, potentially, very painful.

I will find time to explore a rolling distribution Arch linux or Gentoo. My hesitation so far has been that their repositories may not be as comprehensive as Fedora or Ubuntu. Now the benefits of a rolling distribution outweigh the drawbacks.