Yum Groups

March 17th, 2013 ~ 9:16pm by Mauriat Miranda

The Fedora 18 installer does not allow single package installations, instead it prefers to install by package groups. You can also install groups after completing installation. This is especially useful since you can only select one Desktop Environment at installation. Alternatively, to have faster installations, select as few groups as possible and then only install the ones you need later.

This is just a quick note on how yum can install by groups instead of by individual packages.

To see all of the available groups run:

$ yum groups list

Example (abbreviated) output:

Available Environment Groups:
   GNOME Desktop
   KDE Plasma Workspaces
   Xfce Desktop
Available Groups:
   Authoring and Publishing
   Books and Guides
   Development Tools

Note: Quotes below are not needed when the group name is a single word, however if the group name has spaces make sure you use quotes.

Pick a group above, example Authoring and Publishing.
To see what packages the group includes, run:

$ yum groups info 'Authoring and Publishing'

To install the entire group, run:

$ sudo yum groups install 'Authoring and Publishing'

To remove the group, run:

$ sudo yum groups remove 'Authoring and Publishing'

Note: Generally removing a group is not recommended, you may remove dependencies which may make your system unusable.

Fedora Desktop and Computing

January 20th, 2013 ~ 10:44pm by Mauriat Miranda

Fedora 18 was released this week and I finally got around to installing it today. To be honest, on either my laptop or desktop I have not really used Fedora much since Fedora 14. I have been incredibly happy with CentOS for over a year and a half now, and I (begrudgingly) accepted Windows 7 on my laptop.

Today’s installation of Fedora 18 made me question my use of time. I switched jobs exactly 2 years ago and found myself in the precarious position of having little to no spare time. I tried my best to optimize. Giving up dual-booting in favor of virtualization (VirtualBox and KVM) helped greatly. However I could never get Fedora18 beta or RC to boot up inside KVM. But that wasn’t the problem that bothered me. Re-running through the installation multiple times using the new Anaconda installer just got me tired of trying to understand a poorly thought out workflow. I kept questioning myself if I had in fact selected the correct options. I don’t think I would ever install Fedora 18 on some of my more complex dual-boot setups in the past.

To be fair for a clean install on a new computer for most people the installer might be a joy, but for me it just wasn’t. I’m not really complaining. I have multiple computers running some form of Linux or if I must, Windows. My existing setup works fine for me. However I just don’t think Fedora’s goals and my needs line up anymore.

I was reminded of this when I was reading Richard WM Jone’s blog post on using Fedora 17 on a Chromebook. The first bullet point is what gives me pause:

Suspend pretty much doesn’t work.

I too own a Chromebook and just like many others I have quite a few things I dislike about, but where it never fails: power management. It suspends and starts up in seconds, lets me do my browsing/work and then I can close the lid and forget about it. The last time I had this experience with a laptop was with Fedora 9. After so many years, I’m disappointed problems can still exist for power management. My desktop CentOS suspends and hibernates perfectly, so I know things can be made to work, but I just don’t have the time to find out how.

Outside of work, I spend most of my time on my Android smartphone. Occasionally I monkey around with a tablet, but the Chromebook is incredibly nice for quick tasks. And then when I have the dedicated time: I will use my desktop or laptop for more major work. What do all of these devices/setups have in common? - Answer: they don’t change much. As we all know, change is the heart of Fedora - the latest and greatest software. I commend the Fedora team and all the volunteers who manage to somehow keep it all together.

If ever find the time, I would love to come back to Fedora. I finally got it working in my Virtualbox and I’ll write up some of my notes eventually. If you plan on installing Fedora 18, the official Fedora Installation Guide has evolved amazingly. I highly recommend reading it.

Improve Fonts in Chrome in CentOS 6

December 6th, 2011 ~ 10:33pm by Mauriat Miranda

I am currently running the latest version of Firefox (8.0) and Google Chrome (15.0.874.121) in CentOS 6 64-bit using the Gnome 2.28 desktop.

Both work fine, however Firefox renders fonts significantly better than Chrome.

The Fix: The following steps fix the problem.

1. Open the file .fonts.conf in your home directory, if it does not exist create it:

$ touch ~/.fonts.conf

2. Add the following contents to the file:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
        <match target="font">
                <edit name="autohint" mode="assign">
                        <bool>true</bool>
                </edit>
        </match>
</fontconfig>

3. Log out completely from Gnome (reboot not required).

Before and After

CentOS Desktop

October 5th, 2011 ~ 6:51pm by Mauriat Miranda

I’m migrating away from Fedora as my desktop operating system. I’ve been testing CentOS 6 which was released recently and I feel I would be much more efficient using it instead of Fedora.

I still have quite a few quirks to resolve, but I have no doubt I’ll find the solutions.

I bought a new desktop some time ago with the intention of running virtualization, so I plan to still test and use Fedora time to time, but I can no longer keep up with the rate of change. If things stabilize to some degree I might come back, but for the time I am quite content with CentOS.

People are still welcome to contact me regarding Fedora stuff and any of the content on my site. I will do my best to support it.

Firefox 4 for Fedora 14

April 2nd, 2011 ~ 1:51pm by Mauriat Miranda

Wow! That’s a lot of F’s!

Courtesy of Tom ’spot’ Calloway, install Firefox 4 on Fedora 14 (or Fedora 13):

# su -c 'wget -P /etc/yum.repos.d/ http://repos.fedorapeople.org/repos/spot/firefox4/fedora-firefox4.repo'
# su -c 'yum install firefox4'

To run:

# firefox4 &

In Gnome: System > Preferences > Preferred Applications
Change ‘Web Browser’ to Custom, and for Command: firefox4 %s

To remove Firefox 3.6:

# su -c 'yum remove firefox'

ref: http://fedoraproject.org/wiki/Firefox_4

Legacy Man

March 4th, 2011 ~ 1:06pm by Mauriat Miranda

Legacy Man

by Mauriat Miranda
(with apologies to Billy Joel)

It’s nine o’clock on a Wednesday
The regular files are looking neat
There’s an old dev sitting next to me
Trackin’ bugs in his Excel spreadsheet

He says, “Son, can you debug this memory
I’m not really sure how it works
But it’s bad and discrete and I knew it complete
When I wrote a younger man’s code.”

La la la, di da da
La la, di di da da dum

Write us a hack, you’re the legacy man
Write us a hack tonight
Well, we’re not in the mood for an upgrade
And you’ve got it compiling all right

Now John in support is a friend of mine
He helps me debug in C
And he’s quick with a fix or promoting Linux
But there’s some apps that he’d rather see

He says, “Bill, I believe this is boring me.”
As his mouse clicks away through his trace
“Well I’m sure that I could sell iPhone apps
If I could get out of this place”

Oh, la la la, di da da
La la, di da da da dum

Now Santosh is a database analyst
Who never has time for his wife
And he’s talkin’ with Louie, who codes like a newbie
And probably will do for life

And the IT are enforcing policies
As the senior devs slowly check nodes
Yes, they’re using an app they call hopelessness
But it’s better than writing new code

Write us a hack, you’re the legacy man
Write us a hack tonight
Well, we’re not in the mood for an upgrade
And you’ve got it compiling all right

It’s a pretty big patch for a testing day
And the managers change the release
‘Cause they know that today, there is nothing I’d say
To cause their process to cease

And the desktop, it looks like a Commodore
And the Microsoft disks are near
And they run all their builds and think bugs are all killed
And say, “Man, how is this workin’ here?”

Oh, la la la, di da da
La la, di da da da dum

Write us a hack, you’re the legacy man
Write us a hack tonight
Well, we’re not in the mood for an upgrade
And you’ve got it compiling all right

Automated FTP Script

October 11th, 2010 ~ 1:17pm by Mauriat Miranda

I’ve been doing some development for some embedded Linux devices which only support ftp and telnet. In order to automate transfer of binaries from my Fedora development host to the target embedded device I’m using this handy ftp script: pushftp.sh

#!/bin/bash
	
# arg1 = dest hostname
# arg2 = local file
# arg3 = dest dir
	
HOST=$1
SRCFILE=$2
	
USER=root
PASSWD=password
#DESTDIR=/usr/local/data
DESTDIR=$3
	
ftp -inv $HOST<<ENDFTP
user $USER $PASSWD
cd $DESTDIR
bin
put $SRCFILE
chmod 755 $SRCFILE
bye
ENDFTP

Then I added something like this to my Makefile after cross-compiling:

push:
        sh ~/bin/pushftp.sh $(TEST_BOX) $(APP_BIN) /usr/local/data

So after I run make all, I run make push. I still need to telnet to the host to test/debug the application, but this makes the process much faster (and less error-prone).

I’m just noting this for myself, hopefully it’s useful to someone else.

Downside to Enterprise Linux

August 28th, 2010 ~ 1:44pm by Mauriat Miranda

(Note: For the purpose of this post CentOS is equivalent to RHEL)

It has been about 2 and 1/2 years since I built a dedicated server and chose CentOS instead of Fedora. Since I installed CentOS 5.1 I have used the upgrade process 4 times with no problems bringing me to version 5.5 with practically no re-installation, re-configuration or troubleshooting upgrade issues. This is the goal of enterprise linux. A long term stable solution with no major changes to preserve compatibility with every piece of software that was provided since it was released (in this case April 2007). In the time I’ve been on CentOS I’ve upgrade/replaced Fedora at least 5 times on other machines. Each time learning the changes to software, languages, security and many other components.

I’m very pleased with CentOS knowing that after the next yum update all my software will keep working. And everything is 100% secure.

However the exact reason enterprise linux is so great is also the exact reason why it can be a major pain. Once a main component is locked down, Red Hat will not provide updates unless needed for security or stability.

An objective for my server was for web development. The state of web as defined in 2007 when RHEL was created is coming close to obsolete. CentOS 5 includes PHP version 5.1.6. However PHP 5.2, which was released before RHEL 5, has become the default standard requirements for many PHP applications. I was updating some code to utilize JSON when I realized I would have to deviate from standard updates to install PHP 5.2 on CentOS. (This wasn’t too bad)

Another objective was a file server and backups. I’ve been playing with DropBox (*) as means of an off-site backup solution. What makes it great is it’s support for Linux! Even text-based linux which is what my server is. However the first requirement is Python 2.5. CentOS uses 2.4, and you can’t do a major update of Python in a CentOS/Fedora install without breaking many things since this is a critical component. You can do a parellel install for Python 2.5 but this is a bit annoying to maintain as you have 2 versions of python installed. (I have yet to get Dropbox working well on my server)

I also have been writing C++ software using boost. I recently realized the asio library was standard in boost 1.37 and later. I was locked to 1.33 in CentOS 5. No big deal since, the boost package was not critical for me in CentOS and it could be easily replaced. So I decided to recompile a newer Fedora boost src.rpm. However I would see errors like this:

error: unpacking of archive failed on file /home/mirandam/rpmbuild/SOURCES/boost-1.41.0-iostreams-zlib.patch;4c7880e5: cpio: MD5 sum mismatch

The above error is simply because Fedora 12 changed the RPM compression algorithm used and rendered older versions of RPM incompatible with newer packages. I don’t dare meddle with RPM as it is a core component, so I ended up compiling an older Fedora 11 version of boost 1.37 src.rpm which did the job.

Overall I’m still happy with my setup, but slowly I’m spending a great deal of time patching different pieces as my needs have slowly evolved. Interestingly Red Hat recently announced extended support lasting up to 10 years. That seems way too long considering the state of software (although everyone still uses Windows XP - now 9 years old).

I’m getting a little antsy running 3 year old software. The good news is that RHEL 6 is in beta, which means that soon after release the totally free CentOS 6 will follow as well. Which I’m eagerly waiting for, because all my issues will be addressed … at least for the time being.

(*) Affiliate link - I highly recommend Dropbox.