Joe’s Linux Blog

August 26, 2011

Updates?

Filed under: ALIX,Centos,Configuration,Installation,qt,Tools,Web Publishing — jfreivald @ 7:54 pm

Okay people, sorry for the long hiatus. Between work, having our youngest son finish high school and going through a divorce, you have all taken a back seat for quite a long time.

A lot has been happening in the mean time! Centos 6 is here! Plus we’ve got an update to Centos 5, not to mention several iterations of Qt. So I have my work cut out for me!

Here is what I plan to do. First, the existing yum tree for software.freivald.com really kind of sucks. I’m going to set up a new tree that compartmentalizes things better. Then I’ll push an update to the software.freivald.com-repo package that will point to the new repository. That way, everyone should have a quick, easy migration to the new tree without having to do anything but your standard ‘yum update’.

The new tree will be renamed to el5 instead of centos because we have a lot of RHEL users as well, and I don’t want them to feel left out. It will also support multiple versions of the OS, from the current supported releases all the way through 6, in one tree. This should make it easy for users to find stuff, and minimize my work load to support all of the platforms in the long-term.

As for you loyal ALIX users, part of generating the new repository will involve setting up new virtual machines for each supported version. During that process I plan to set up the new Alix images, both for Centos 5 and 6. I’ll make improvements to the images based on the comments that I’ve received, and then push them to the web. As you already know, image updates are a manual process.

Once that’s all done, I plan to find a better content management system and change from a wordpress blog into more of a kind of support-site type thingy so that Qt users don’t have to wade through ALIX stuff, so that I can add new items without causing the old ones to scroll of the screen, and so that I can maintain static link addresses for various types of stuff (i.e: joseph.freivald.com/qt would always go to the Qt page, etc.), which will help your favorite search engine find stuff easier. I would appreciate suggestions here, as I find web-based stuff tedious and annoying. In fact, if someone wanted to give back some time to me and help me get a new site configured, I would be really, really appreciative.

Well that’s pretty much it. If anyone is stopping by the Offutt Airforce Base Air-Show on Saturday, stop by the US Coast Guard Academy booth and see me!

Cheers.

–JATF

April 22, 2010

ALIX Centos Image

Filed under: ALIX,Centos,Installation — Tags: , , , , , — jfreivald @ 10:48 pm

UPDATE 12/31/2011: I have updated the Alix Centos 5 image to 5.7.  During the process, I removed the /etc/ssh/ssh_host* keys so that each host will generate its own keys on boot up.  Note that during the ‘yum upgrade’ process, I had boost the memory on the virtual image. Yum was unable to allocate enough ram with only 256 MB available. This means that it is unlikely that an update from 5.5 to 5.7 can be performed in a single step on a live board with only 256 MB of RAM.

As for the Centos 6 image, it is being troublesome because the up-line removed all of the non-pae kernel images for the 32-bit architecture.  I’ve attempted to custom package a few kernels to complete the image but none of the work to my satisfaction.

UPDATE 10/22/2010: Added a step in the ‘Using the Image’ section below. All active installations should ensure they replace their SSH System keys to prevent man-in-the-middle attacks. I will post an updated image that has the keys removed when I get around to it. Until then, just perform the commands in item 7 of the Using the Image section.

UPDATE: A new version of the image is available.  It had ‘yum upgrade’ executed on June 12th, 2010, which upgraded it to Centos Version 5.5.  The new image is located at http://software.freivald.com/centos/alix-centos-5.7-2gcf.gz.  There is also an MD5 sum file at http://software.freivald.com/centos/alix-centos-5.7-2gcf.md5.

I could not find my 2 GB card. I used the original image, copied it to a 4 GB card, performed the update, and then copied only the first 2 GB back into the new image. Please provide feedback if the image does not work on a 2GB card.

UPDATE: Hat-tip @Cris. In order to get the vga to work on the 3d3 board you must put the irqpoll as kernel boot parameter.  See his comment for more information.

INFO: For those who are unfamiliar with Centos, it is a distribution that is binary compatible with RedHat Enterprise Linux.

EDIT: We’ve been added to the ALIX web page. Thank you for the testing and support from the PC-Engines crew.

I’ve been working with one of PC Engine’s Alix 6e1 boards a bit lately.  It’s a 500 MHz i586 AMD Geode-based embedded board with 256 MB of RAM that sells for under $150. I was testing various distributions and found that Centos was pretty easy to adapt. It wasn’t listed as supported on the PC Engines Web Site, so I wanted to contribute an image back to the community.

The image I’ve created has the following changes from a base install:

1.  It has no swap.

2.  It has the noatime and nodiratime options for all mounted partitions, although it uses ext3 because of the wal-wart-no-backup-power-for-shutdown configuration.

3.  Grub is configured for a 2-second timeout, and uses the serial port as the console – both for grub and the kernel.  Hook up a terminal emulator set to 38000, 8N1 to view the boot sequence or access the console directly.

4.  /etc/inittab was modified to use the serial console.  xdm was also disabled.

5.  All console settings are set for 38400 because that is what the initial boot-up bios uses on the ALIX 6e1 that I have.

6.  /etc/securetty has been modified to allow login via /dev/ttyS0 (tty0 and vc/1 are also left open because I use VMWare to modify the image).

7.  Fortunately, due to the stock Centos LVM configuration, no changes were necessary to fstab or the initrd image.

8.  Only a base install was performed.  Several of the ‘default’ packages have been omitted (things like bluetooth, extra shells, smart card reader daemon, procmail, cups, NetworkManager, etc. )  Of course they are still available using YUM.

9.  Lots of the startup stuff is turned off (kudzu, gpm, netfs, iptables and others).  Use chkconfig to turn them back on if you want them.

10.  The root password is – yep, you guess it: password

11. The eth0 (next to the USB ports) is configured for DHCP. eth1 (next to the serial port) is configured for 192.168.1.50. The hardware MAC lines have been commented out so that it will work with any box, but there is a slight chance that the order of the ports will get reversed. This has never happened to me, but YMMV. You can use either port to get the box up and running with ssh or putty if you don’t want to use or don’t have a serial interface.

12.  The CF card I used was A 2GB SanDisk Ultra 15MB/s.  Because it’s LVM based, you can use the LVM tools to shrink or grow the volumes.  Check out the LVM Howto for all the recipies you need.

13. I updated the packages using ‘yum update’ on the day it was created, so hopefully you won’t have as much downloading to do. I did not enable centosplus, extras, or any other repositories, which makes the image binary compatible with RHEL 5.4.

Using the Image

1.  Download the latest image from http://software.freivald.com/centos/.

2.  Unzip the image with bunzip2.  Please verify the uncompressed image with md5sum. Several users who had issues simply had bad downloads or uncompressed the file improperly.  An md5sum will catch these types of issues.  The md5sum file is in the same directory as the image.

3.  Copy it to your Compact Flash drive using ‘dd if=<inputfile> of=<outputdevice> bs=4096′.  <inputfile> is the uncompressed image that you verified in step 2.  <outputdevice> is your compact flash card.  You can find the correct one for your system with ‘sudo parted -l’.  You must use the disk device, not a partition i.e: /dev/sdc as opposed to /dev/sdc1.  This will install the boot loader and all necessary partitions to have a running system.  If your compact flash is larger than 2GB, see the comments section of this post for ways in which you can use the rest of the space.

4.  Install the Compact Flash into the ALIX.

5.  Attach your favorite terminal program to the ALIX platform.  I use putty.exe under Windows or minicom under linux.

6.  Apply power to the unit.  It should boot without any fuss. If you don’t have a serial port, use eth0 (next to the USB) to have your DHCP router assign and address, or use eth1 (next to the serial port) for a static configuration. eth1 is configured for 192.168.1.50 and the connector auto-rolls the cable if it needs to, so configure your computer for something like 192.168.1.51 and ping until the system is online. Then use ssh, or putty.exe if you are using Windows, to access the unit.

7.  I recommend some changes: Obviously, the root password.  Also, add an MD5 password to the grub configuration, since without one anyone with a serial cable can pass parameters to the kernel. You will also probably want to add more software using yum. You might also want to create some scratch space under /tmp, or some of the /var/cache directories using tmpfs. I didn’t do any of the these because they are simple, and different users will have different requirements, especially with the advancement of CF cards (wear leveling, 1000000+writes/block, etc.). You will probably want to customize /etc/securetty for your installation.

8. On images earlier than 5.7, change the SSH server keys with:
$ sudo rm /etc/ssh/ssh_host_*
$ sudo /etc/init.d/sshd restart
(Hat tip to @pmoor for catching this one!)

With this setup, the initial boot up takes 1:32 and has 193MB of free memory. Enjoy.

–JATF

February 25, 2010

Qt 4.6.2 packages for Centos 5.4

Filed under: Centos,Configuration,Installation,qt,Tools — jfreivald @ 2:25 pm

UPDATE: New post for the new packages: http://joseph.freivald.com/linux/2010/06/09/qt-4-6-3-and-qt-creator-1-3-1-1-updates-for-centos-5-5/

The Qt4 packages for Centos are updated to 4.6.2 and Qt Creator is updated to 1.3.1.

To install:

rpm -ivh http://software.freivald.com/el/5/i386/os/software.freivald.com-2.0.0-0.el.noarch.rpm
yum update fontconfig fontconfig-devel qt4 qt4-devel qt4-doc qt4-postgresql qt4-odbc qt4-sqlite qt-creator

Verify that the versions are coming from software.freivald.com and enjoy. :)

May 24, 2009

Qt4 RPMs for Centos 5

Filed under: Centos,Installation,qt — Tags: , — jfreivald @ 11:03 am

UPDATE; New post for the new packages: http://joseph.freivald.com/linux/2010/06/09/qt-4-6-3-and-qt-creator-1-3-1-1-updates-for-centos-5-5/

UPDATE: Nokia released Qt 4.6.0 and qt-creator 1.3.0 today.  The new RPMs are compiled and stored in the repository.  ‘yum update’ should be sufficient to grab the new ones.  I also changed the directory to reflect Centos 5.4 instead of 5.3.  Let me know of any issues.

–JATF

Want to get the Qt SDK working on Centos 5.3?

Quick instructions:

rpm -ivh http://software.freivald.com/centos/software.freivald.com-1.0.0-1.noarch.rpm
yum update fontconfig fontconfig-devel qt4 qt4-devel qt4-doc qt4-postgresql qt4-odbc qt4-sqlite qt-creator

Verify that the versions are coming from software.freivald.com and install. :)

Longer story:

All of the RPM’s described in this post are in a yum repository that you can access by installing this RPM.  It includes both x86_64 and i386 repositories that are automatically selected based on your architecture.

The first problem: the FcFreeTypeQueryFace problem that is very well described here, with a manual compile and upgrade way around it.  I thought I would go one step further and create an RPM.  Here is what I did:

I started with this source file from fontconfig.org and this SRPM from redhat.com, modified the spec file from the SRPM because of a changed config file location, and created these RPM files for you to install.

The second problem:  the QtSDK is built against several other libraries that are newer than provided with CentOS 5.3.  Rather than update those libraries, I’ve opted to compile RPMs for qt4 and qt-creator for CentOS 5.3. There are all new packages for them in the repository. They upgrade the shipped version (4.2.1) to the new version. They should be binary compatible, since theoretically Qt only breaks binary backwards compatibility on a major revision number change, but I don’t have any real way to test this. Feel free to post any problems you encounter.

The third problem: qt-creator isn’t included with the qt4 source.  I created it as its own package.  ‘yum install qt-creator’ to install it by itself.

Hopefully after installing the repository package, a

yum update

and everything should ‘just work’.

Oh, and feel free to use the ‘joewidgets’ and ‘joewidgets-devel’ packages.  They include some widgets that I use for other projects, primarily a back-port of the KLed widget to QLed that removed KDE dependancies, and a multi-state button with configurable colors for each state.  The ‘devel’ package includes designer plugins that also work in qt-creator.  Source for those are published in the srpms directory.

–JATF

Powered by WordPress