Mauriat Miranda     mjmwired

Fedora Core 5 Test 1 Released

The Fedora Team has released the first test release of the upcoming Fedora Core 5 (FC5).

Notable Features of FC5 Test1

  • Modular X.org
  • Vastly improved Asian language input support with SCIM
  • Kernel based on 2.6.15-rc1-git3
  • GCC 4.0.2
  • GNOME 2.12
  • KDE 3.4.92
  • Xen 3.0 snapshot for i386
  • Improved Open Source Java including gcj, classpath, tomcat, jonas, eclipse, and much more
  • 1600+ Extras packages conveniently available via yum
  • Major installer changes to use yum for package handling
  • Pup!

The bold comments above are what interest me. I really hope that all the included packages have matured enough to support native GCC4 and that the Gnome update will have some (of the many) GUI problems addressed. The big news on the development mailing list is the move to a modular Xorg (i.e. X-server) implementation which has apparently been a great deal of work. It was about time, the X11 layout has always been quirky to me. And finally the ever-flawed yum will become prevalent in the installer. Of course, this should have and could have been done earlier. But I doubt it will address the “mixing repository” nightmare that has affected many Fedora newbies.

If it was not the day before Thanksgiving I would be downloading the release and “tearing it apart”. Oh well. I plan to thoroughly review it sometime in the next week.

Posted in: Distributions, FC5, Fedora,

Using Alternate Compilers

Users of Fedora Core 4, SuSE 10.0 and other distributions with GCC v4 may have found some open source softwares may not compile properly. Using alternate compilers may resolve the problem. FC4 also ships with GCC v3.2. There are many ways to specify alternate compilers during the build process, below are some ways.

Environment Variables

Most softwares support the CC and CXX environment variables. First assign them, then run configure or make. Example:

# export CC=gcc32
# export CXX=g++32
# ./configure

A good example can be found on the Redhat Mailing List.

Configure Support

If the software is using the standard GNU automake and configure, then there is a chance it supports other compilers by passing in a setting to the configure script. First run configure --help to see if it mentions anything. The following example is from MPlayer:

# ./configure --help
# ./configure --cc=gcc32

Makefile Support

Sometimes the software may just come with a Makefile. Open the Makefile and look inside to see if there are variables that specify the compiler. You can either edit those variables or set them at compile time. For example:

(in Makefile)

C_COMPILER = cc
CPLUSPLUS_COMPILER = c++

Then using the makefile, you can run:

# make CPLUSPLUS_COMPILER=g++32

Although the above examples are not exhaustive they should provide some ideas for using alternate compilers in Fedora Core and other Linux distributions.

I am also providing some notes from my FC4 Guide on GCC and GCC Compatability Libraries.

Evaluating New Linux Distributions

For Linux and Open Source in general, choice has always been abundant. However in both the Linux Server market and to a degree in the Linux “Desktop” market only a few major distributions have taken most attention. In my (future) spare time, I plan on evaluating new Linux distributions to see how well they compare for either a Linux Server (preliminary examination) and more critically: the Linux Desktop.

I want to develop a common test/evaluation plan for different distributions so I make fair assessments on their comparable value. Additionally, I do not have the luxury to test any system thoroughly over an extended period of time. The following are some ideas I have thought out.

  • Installation

    • Partitioning, Dual Boot, Networking
  • Software Selection

    • Environments, Office, Multimedia, Development, Server
  • Software Support

    • Security and General Updates, Software Repositories, Package Management
  • Basic Hardware Support

    • Motherboard, Networking, Video, Sound, Power Management (ACPI), DVD/DVD-R
  • Peripheral Hardware Support

    • Digital Camera, Printers, Scanners, Media Card Readers, PDA’s, USB Devices
  • Community Support

    • Mailing Lists, Websites, Forums, Newsgroups
  • General Usuability and Stability

  • Default Behavior and Configuration

I think I have covered the most important issues. Hopefully I will be able to perform all the above for every distribution. I appreciate suggestions and comments to these points.

Posted in: Distributions, Linux, Software,

CentOS 4.1 Quick Examination

Since Redhat stopped supporting their commercially available Linux distribution, they moved to an Enterprise Linux Server (RHEL) and left everyone else to use a community effort (Fedora Core). Considering the cost of RHEL, the source packages were recompiled and redistributed. The resulting CentOS is a free binary compatible distribution of RHEL without the proprietary Redhat only software. I have seen some virtual private servers using CentOS for the virtualized operating system.

I installed the DVD based copy of CentOS 4.1 on my main desktop a few weeks ago just to experiment. For the most part it, it installs and is setup very similarly to Fedora Core 3(?). Upon initial inspection it also seems to come with the similar list of software. However the major issue here is that it is geared for server performance. Hence, it will not include the latest versions of most software and instead use widely supported and stable applications (i.e. PHP4 as opposed to PHP5, etc.). I could tell that the desktop applications were a bit out of date, but that makes sense considering its intended purpose. … After having used Fedora Core 4 for the past four months, I was shocked at the performance of CentOS. CentOS seemed significantly faster han FC4. In terms of user interface, web browsing, launching applications and even running servers and daemons - it was very notable. I do not know if it has to do with the GCC4 being used in FC4, but I’m still surprised to realize this now. Anyways, I decided I could not use it for desktop purposes since much of the software was older and there was not as much support from the community in general.

I played around configuring different installs of Apache, MySQL and PHP. I tried recompiling source RPMs (SRC.RPM) from FC4, but it became tricky to have multiple versions running. I will try again from source files instead.

My opinion so far is that it is a VERY stable and usable server distribution. If the software it included was newer I would probably be using it as my main Linux desktop. Anyways, more later as I learn more.

Pitfalls to Installing Everything

The purpose of this article is to explain the potential problems in installing every package that comes included in any given Linux distribution. For the most part, this is a bad practice and is not conducive to becoming proficient in Linux for either a seasoned professional or a newcomer (ie. “newbie”). It is my hope that this will help educate people on this subject matter.

There are some abundancy arguments that are commonly used and overstated. Specifically: Disk space, memory and bandwidth are all “cheap”. Technically none of these are always true. In fact these are almost always entirely false in third world countries.

There are some minimal advantages to installing everything. There will not be any dependency issues among software packages included in the software distribution. All software will be immediately available for use to try and test. Other advantages are possible, but these are the most relevant.

The problems I see are as follows:

  • Most software will never be used and is redundant. Many of these applications are designed for experienced users who know how to install them even though they are not included in the default install. Examples: Most newbies do not use ‘vi’ or ‘emacs’. Most devel packages are only used for compilation.
  • Every software whether used or not must be maintained if they may be accessed by multiple users whether remotely or locally. A typical problem would be for security updates or bugs that you would not normally encounter with default settings.
  • Updates take longer and consume more resources. Everytime a system wide update is done (ex: yum update) it needs to download updates for every single package on the system. Even though you may not pay for your bandwidth, there is some cost to the provider and could serve someone else who could use it more appropriately.
  • (For new comers) You really do not learn anything. It is beneficial at times to understand how software dependancies work and to learn how to install software when needed. Needs change and are not the same for everyone.
  • There is more immediate drain on local resources. Most distributions package enough software to run as either a server and/or a desktop. It does not make sense to run multiple server applications on a desktop machine. Furthermore, most distributions package some packages with the knowledge that some should not run at the same time, i.e. the installer should know what they are doing. Additionally many services and daemons perform redundant tasks, i.e. multiple FTP servers are not typically required or recommended.
  • Although rare, some distributions may include conflicting versions of packages with the intention of the user selecting only one. This is typical of a distribution which may provide a new less popular version in addition to a widely used version. An example in past I’ve seen is (SuSE?) shipping both Apache 1.x as well as Apache 2.x.
  • There are hardware specific options that should not be on every machine and require extra steps to update. In the case of Fedora Core, some kernel packages (which a small population require) are not updated on the same frequency as more common packages. This has lead to some confusion and difficulty.
  • An additional note to Fedora Core users: Fedora Core has always been “bleeding edge” distribution, which basically means it will typically ship with the absolute latest (sometimes not adequately tested) software versions. Also there will always be some software included that may not make it into the next version or update.

Given these points, it is still entirely up to the end user as to what software they should install and use. However, it is very unlikely that anyone could potentially use every single included application. It is better to choose less than more and install as needed. Furthermore it is best to understand why something is needed as opposed to foolish assumptions that more unknown software is beneficial.

Posted in: Fedora, Linux, Philosophy, Software,