Installer Formats and Adobe Reader

While open source PDF readers have significantly improved, many people still use Adobe Reader. While Adobe has had a mixed history of supporting their software in Linux/Unix, recently they have significantly improved.

There is a well written post about installer formats on the Acroread Unix blog. I recommend just reading over the post, even if you do not use Adobe software. They have a simple list of the most popular formats (BIN, RPM, DEB, PKG, TAR.GZ) as well as minor pros and cons of each. The information really is not specific to Adobe.

When software is not open source (specifically when users cannot repackage in whatever format they like), it is good to provide information like this to educate users (customers) who may not be admins.

My Early Linux History

There was another useless post on Slashdot asking what did you first do with Linux?. I thought it would be interesting to recollect that experience. Sorry for the detail, my memory produces lots of random tidbits.

I was fortunate enough to attend an engineering school with the latest technologies that were available in the market. Which basically means we had Sun Ultra Workstations, running Solaris Operating System using CDE. So for me “Unix = Sun”. That was 1997 and I was incredibly impressed. I never even knew of Linux till 1998, when one incredibly over achieving colleague mentioned he was going to use an old 386 to run Linux. I immediately thought he meant “unix”, so my first question was: “Don’t you need a more powerful computer?”. Keep in mind the Pentium MMX was the state of the art consumer desktop at the time. And that’s when I first heard it on a bus, in the winter, heading to the engineering campus: “Linux can run on anything! Even really old hardware!”. So began my interest.

Later in 1999 when my programming classes got more involved, I was finding that Borland C++ 5.0 on Windows NT 4.0 was not sufficient compared to GCC on Sun. A co-worker of my brother suggested Linux but warned me that I need to be very careful to make sure I check the video card support under the X-server (XFree86 at the time). Ironically that warning still holds true to this day! Luckily my Matrox Mystique 4MB was in the “supported list”!

In the late 1990’s you could find the most popular linux, RedHat, on shelves at your local Best Buy retailer. I had seen version 6.0 on sale, but by the time I got around to purchasing it, sure enough version 6.1 was there. As I recall it was only 1 CD and 1 CD full of source code (I think I still have those CD’s somewhere). By the time I figured out how to repartition my hard-drive and actually get linux to work (I think the 3rd installation I got it right), I was told version 6.2 was available! This (sometimes annoying) trend still persists today as well.

Due to my experience with CDE on Sun, I immediately thought KDE was the same thing. So I just started using Gnome. Everything was foreign, but since it was so much easier than Solaris, I liked it a lot. Not long after I became comfortable with Redhat, I heard that Pogo Linux was giving away free linux CD’s. This was great since finding someone to make me a copy was impossible and copying at school a big pain. I got copies of Caldera, TurboLinux, Mandrake, and maybe others? I don’t really remember all the versions I tried from them. The only one that stood out was Mandrake and I loved it for its cool selection of software and included niceties (especially “color gcc” – which made cryptic C errors fun again!). Unfortunately all those little additions came with their price. I found Mandrake incredibly unstable compared to RedHat (it could have been my inexperience) so I switched back. I stuck with RedHat till Fedora, but that’s another story altogether.

So that’s my brief exposure to Linux from 1999 to 2001. It was all caused by a requirement to use gcc for school work but ended with a lot of random discoveries. I never saw it in day-to-day activities – so instead I went and found it myself.

What was your first linux experience?

Evince and Acrobat PDF Form Edits

Newer versions of Adobe Acrobat Reader have provided the feature for users to edit the contents of form fields in a PDF file. Depending on the permissions set by the author of the PDF file, Acrobat Reader will allow or deny the ability to save the file with the form edits in place. The United States IRS has allowed for this functionality in recent years in its official tax forms, which is great for people who might otherwise need to fill out forms with pen. This way a record can be saved entirely electronically.

Adobe in the past has had a hit or miss record of providing up to date versions of Acrobat Reader for Linux. (Although as of late the support has significantly improved). Open source PDF readers have typically missed some feature that Acrobat Reader supported – in this case the form field editing – which is why I still install Acrobat. However the one thing I always forget about open source applications in general is that they often rapidly improve. I just tested Evince (a PDF reader) in Fedora 10 Gnome and sure enough form editing was working fine!

Ever since I have been doing tax forms with PDF files, the nuisance I’ve had was that the State of Michigan Treasury provides their tax documents with editable fields – BUT saving the file is not permitted! Needless to say this is quite frustrating! Acrobat Reader warns the user that edits should be printed since they cannot be saved. I was using Evince when I realized that the application ignores these restrictions and saves a copy of the file with field edits in place. And the best thing: Acrobat Reader will read them and still complain I can’t change them, which is fine since my edits are there already. I was truly impressed with the open source reader, even the PDF alternatives in Windows did not do this for me.

Anyways, I was pleased with the improvements, I have been telling people for the past 2 years that I don’t use open source PDF readers since they have missing functionality! Even though the permission issue was bypassed I will still be writing to the State of Michigan to complain about the restrictions (if you are in the same position as I, please do so as well).

ps. KDE users: I tested Okular as well but the interface was a little quirky when it came to the field editing and I found the application a bit unstable. I will re-test a little later, but the basic functionality seemed to work just like Evince.

Change of Direction

In certain scenarios I am a little skeptical of Linux and open source applications as worthwhile competitors for closed source or proprieraty alternatives. This is not to say I do not think that there is any lack in potential. In my opinion I do disagree with some choices made by open source projects or linux distributions. In any event the point of this post is not to argue any of that. I was reading a post claiming that Linux needs critics, and I do agree with this. The nice thing the author points out is there is a difference between a complaint (negative) and criticism (positive).

I don’t think I have ever really made any constructive criticism of Linux or Fedora. Unlike the author who wrote the above post, I am a software developer. I could try to help more instead of complaining. (I have complained a lot.) I have never submitted a patch or even filed a bug report. I have probably spent more time trying to get an older unsupported version of software working than I have trying to help with the shortcomings of the newer version. This, I will admit, is quite counterproductive.

For the things that I feel are important I plan to try a bit harder – slowly but surely.

Personally I still feel that Linux and open source will never be a complete solution for all my needs, but whenever possible I hope that with some effort it will be.

Various Linux and Fedora News

A great deal of the following is all old news.

Adobe has has Flash Plugin for x86_64 Linux architecture in Beta since Oct 2008. The only thing, is that since it is provided in a tarball (.tar.gz), you are better off builing an RPM (spec file). Note that the 32bit i386 version still works perfectly with nspluginwrapper.

Similarily Sun has released the Java JRE web plugin for x86_64 archictecture. Installation is the very identical to 32bit. Just make sure you are using Version 6 Update 12 or newer. It only took 5 yrs? Keep in mind openjdk works well for most scenarios in 64bit linux.

A few weeks ago, KDE 4.2 was released. I’m sure its better than the problematic 4.0 and marginally improved 4.1. For some information for KDE 4.2 on Fedora follow Rex.

I was pleased to see Knoppix 6.0 released. Once upon a time Knoppix was THE Live CD everyone used. Now with Ubuntu, Fedora, OpenSuSE and many other distro’s releasing Live CD’s anyone can really take their pick on what suits them best. Even so, I will download 6.0 and finally replace the Knoppix 5.0 CD that has been travelling with me for the past few years.

Unrelated to any software release, apparently many people have been having issues with the System Bell. For a quick tip on disabling the Fedora 10 system bell. Yeah, that beep is annoying.

Livna troubles: Most Fedora tutorials depend on the Livna repository for software installation. However due to DNS problems Livna has been unavailable. People should wait a few days. Of course it should be noted that Livna was only critical for libdvdcss rpm which is needed to watch DVD’s in Fedora.

Meanwhile on the Fedora mailing list, another whacky thread has errupted. This time: WHY I WANT TO STOP USING FEDORA!!! (yes, it is all in CAPS!). That obviously spawned a bunch of new related threads. While I do read a lot there, that mailing list is getting less useful each day (especially for newbies).

As for me, I’m still quite behind in my email (I apologize if you contacted me). I have not fixed my computer hardware. I know I need to get some updates on some of my Fedora Guides. (Thanks to all the people mailing me hints and tips – I really appreciate it).

Local Server Hardware

After identifying exactly what my local linux server requirements were, I decided to take a good look at my hardware options. From the start, I wanted to (1) save money, (2) save electricity/power and (3) minimize noise.

To address these issues, there were many decisions I made. First of all I did not need any peripherals. The server could be entirely “headless” (i.e. no monitor, no keyboard, no mouse, etc). The primary things of value are: disk storage, memory, cpu and network. Hence the following are my requirements:

  • Processor – CPU speed should be about 1Ghz. Preferably a low power processor (ex: Geode-NX, Pentium-M, etc.). I prefer a CPU without a fan and that could be cooled with the heat-sink alone. Although I do not plan to do major computational critical tasks, in the past I have seen certain processors (Via) have difficult with SSH (something that will be critical to performance for me).
  • Memory – Minimum memory: 256MB. From my experience using Fedora as a server and building other minimalistic Linux machines, I know that all my tasks/processes should be fine with about 150-200MB of memory after some tweaking. For safety, about 512MB will be perfect.
  • Disk – Minimum storage space: 80GB. All of my critical documents, development, music (mp3’s, etc) and server backups could be fit easily into 20-30GB. I think double that amount should be adequate. However, realistically, since I most likely would want a SATA drive for performance, most drives are at 160GB for the best price.
  • Video – Don’t care. On board. The most I would need to do is run a remote X-server session, which does not benefit from better video hardware.
  • Sound – Don’t care. On board. Would never be used.
  • Network – Standard networking is now 100Mbit, however it would be a nice to have 1Gbit. Although both my desktop and laptop are both 1Gbit, I do NOT have a gigabit switch.
  • DVD – For installation, a DVD drive would be needed, but once complete, everything would be done over the network. However, there is a practical advantage to having a DVD-RW. Even if the hard drive was very large, a 4GB DVD backup could still be useful for incremental long term backups.

What did I end up getting?

  • Motherboard/CPU – Intel Celeron 220 1.2Ghz. I found a mini-ITX CPU/board combination. My primary reasons for purchase were (1) price – less than $80 USD, (2) no noise – fanless, (3) power consumption was only 27W. The other features of the board were SATA, Onboard video/sound, ethernet and USB2.
  • Memory – 1GB 533Mhz. I did not need 1GB, but the price was only $25 USD and since the motherboard only had 1 slot which supported maximum 1GB, I decided that it was best to just max it out for now.
  • Storage – Seagate Barracuda 7200.10 SATA 250GB. I did not need the space either but the price was only $70 USD which for the features (16MB Cache SATA 3.0Gb/s) was a good deal. I currently recommend Seagate Barracuda drives, they are great performance and reliability.
  • Case – Antec NSK MicroATX Cube (350W). I thought it would be best to minimize the space the system would take. Also this series of cases is known to be absolutely silent as well as power efficient. This was the most expensive part: $100 USD.
  • DVD – I recycled an old DVD-ROM I was not using.

Total spent: ~$280 USD. This was well within my budget of $300-400.

There were some things I learned and I did run into some issues. I should first mention that everything did “work” correctly.

  • Motherboard SATA – I realized later that the motherboard only supported 1.5Gb/s SATA. So my drive is not operating as fast as it can be, but this is acceptable since majority of my file transfers will be somewhat smaller and the standard SATA performance is very good.
  • Motherboard Video – I knew that onboard video is pretty low performance (in this case SiS Chipset). However for whatever reason the VGA-out on this board was especially noisy. While this would be unacceptable for normal use, I never intended to have a monitor on this machine.
  • Motherboard BIOS – This board had an Intel BIOS. I am most familiar with Asus motherboards and in the BIOS setup there is an option to manually set the startup time (fixed, daily, etc.). The nvram-wakeup utilizes the setting to wake-up the computer. However this board does NOT have that option. I was hoping the machine would sleep during in-activity and wake automatically. I have not yet decided how to work around this other than manually starting it each morning.
  • Celeron CPU – While this CPU met my needs perfectly, I was a little disappointed it did not power-throttle (i.e. reduce clock speeds to save power). The ACPI information is a little bit confusing, however given that it is low power anyways and it does support 64-bit, this is acceptable.
  • Case – Any “smaller” case typically has problems. Antec is usually known for their quality, however I found my case incredibly noisy. The power supply fan rattled too much. I was thinking I would have to RMA to Newegg, but luckily I eliminated the noise by taking everything apart and re-tightening every single screw. Very frustrating but it worked.

Overall I am happy with the purchase. I did end up saving quite a bit, but I can’t help thinking that perhaps spending a little bit more would have allowed for some slight benefits.

I guess I was a little bit wordy, but I wanted to explain very clearly my thought process in assembling a computer with a very specific purpose.

More on this after the software is up and running!

Local Server Requirements

I response to my previous post, I started defining a set of requirements for a separate local server. By separate, I mean specifically a physically different machine than my desktop. Previously I had my desktop PC running Linux (Fedora) with all desktop applications, as well as several server applications in the background.

The following is list of ideas, requirements and plans I hope to achieve with this server.

1. Provide file access locally (on the LAN) and remotely (over the internet).
Samba is needed for file access for Windows machines and SSH will provide both remote file access via scp and sftp. I considered using NFS additionally for Linux file access, however Samba works efficiently both Linux-to-Linux as well as Linux-to-Windows and multiple services seemed redundant.

2. Provide backup to local data (multiple Windows and Linux machines) and for remote servers (web servers).
While this may seem similar to the previous requirement, it adds the need for services like time based schedulers and remote access applications like Rsync. This may impact how/when this local server should be started.

3. Provide a web development environment.
This can easily be summarized as L.A.M.P. development which stands for “Linux, Apache, MySQL and PHP/Perl/Python”. I need a webserver (Apache), a database server (MySQL) and at least one server side scripting language (PHP). Seeing as I do have multiple websites which I develop this provides for me a both a staging area for new ideas as well as active work on “mirrored” versions of live sites. The only concern here is that it is very difficult to duplicate exact the same versions of software that is running on commercial web hosts. Issues like PHP backwards compatibility do raise issues in this planning, more on this later.

4. Provide version control and change management.
While many will recognize this as either using a version control like CVS or SVN, the truth is that using tools like this become increasing difficult when you do things like dual boot or develop on different machines. Having a dedicated server makes this functionality more practical.

Outside of some miscellaneous odds and ends, the above is exactly what I want. Note that I did not add things like DVR or HTPC. Basically, all my server should be is: Data Development and Dependability, anything else will be a waste of time/resources for me.

Going forward, I can use the specific details of my requirements to pick the proper hardware to meet my needs.

Dell Linux Survey

Dell’s IdeaStorm provided a method for Dell customers to provide feedback to the company on what consumers really wanted. Not surprisingly, the biggest request was for Dell to pre-installed Linux on their Desktops and Laptops.

Currently there are vendors who support Linux on their computers, however most of this focus has been on enterprise level linux (Red Hat Enterprise Desktop, Novell SuSE Desktop) and not necessarily free community distributions like Fedora or Ubuntu. While enterprise versions have the longest support cycles, they often lack modern hardware support and many small features that the common desktop would require.

There is an official Dell Linux Survey running from March 13 to March 23 asking consumers to help prioritize Dell’s linux focus.


I urge everyone to vote and tell everyone they know to vote. Please be realistic with your prioritizations. Priority should be on a community distribution, and NOT an enterprise distribution.

Realistically UBUNTU is the best choice for distribution (whatever you do, DO NOT pick Fedora) – or write in KUbuntu.