Openprinting down due to hack at the linux foundation

I did not expect the Linux foundation service outage to last this long.

All our openprinting infrastructure is hosted by LF, thus for over a month we’ve been without mailing lists, IRC, bugzilla, and even the main code repository is down.

If my understanding of the outage is correct, nothing was lost per-say but instead they took the servers down as a precaution and are rebuilding everything clean.

This month’s teleconference was organized by simply CC’ing everyone. Till doesn’t have any place to upload the recording so that will be lost to time. The meeting notes are here: ftp://ftp.pwg.org/pub/pwg/fsg/minutes/OP-Minutes-20111012.htm

The relevant section of Till’s email:

(2) OP Logistics – Recovery of OP web site (Till Kamppeter)

- Status of LF OP Infrastructure (Till)
  - No OP mailing lists

  - No OP web site

  - OP Wiki is working (but no images)

  - OP web site *server* should be back up by end of week (per LF staff)
    - Software and data backups then have to be re-installed

    - Web app (GSoC project) and download area are NOT backed up
      outside of LF infrastructure

    - Database itself and Foomatic backed up locally - part of Ubuntu

- Alternate OP mailing list (Ira)
  - Free-standing OP mailing list(s) outside LF infrastructure?

  - ACTION - Ira/Glen - create new Gmail OP mailing list
    (if OP mailing list still down in 2 weeks)

- Alternate OP FTP site (Ira)
  - Use FSG/OP subtree on PWG FTP site?

  - ACTION - All - suggest alternate FTP sites for current tarballs

- Alternate OP web site (Till)
  - Possible second site at Canonical for backup / availability?

  - Backup of databases, all applications, all reference code/specs

  - ACTION - Till/Lars - quickly pursue alternate OP host server

The wiki is back up, minus images, and it has my most recent edits to the frontpage. When bugzilla comes back I might finally have to fix those bugs I gave myself this summer.

2011-10-26 update: Mailing lists are back up.

2011-11-28 update: Bugzilla back up.

Consolidating the foomatic-db option’s human readable namespace, for multi-lingual profit

Perhaps a bit verbose but the foomatic-db option’s human readable namespace refers to all the elements in our options that are meant for the end user. The foomatic-db data sets allow for multiple languages to be present in human readable elements. The issue is that only one xml in our repository uses this feature, the main proprietary Epson driver xml with its english and japanese comments.

Thus for all practical purposes foomatic-db is a mono lingual data set. This leaves downstream responsible for any translation.

Downstream may have an army of translators but they are going to have a hard time if the data set is inconsistent, ambiguous, and verbose. This is thus what I spent my remaining week of GSoC working on.

To do this I used Google Refine and a set of throw away scripts which created a csv with the xml filepath the human readable string.

With a global view of the namespace it became clear that it wasn’t as bad as I thought it would be. All Resolution options were consistently named, as were Page Size options, and others. Some things were simply misspelled or similar’arly spelled. Though in many cases I needed to do some digging to group things. In total I brought the total number of unique option choices from ~830 to ~740 with other uncounted improvements to readability. A brief and incomplete overview of the consolidation:

  • Consolidated on Color spelling of Color
  • Acronyms were expanded in some cases
  • Standardized on ‘Economy Mode’
  • Standardized on ‘Print Quality’
  • Expanded ‘600 DPI’ and like to ‘600×600 DPI’
  • Standardized on ‘Color Mode’
  • If I noticed them I would remove redundant terms like ‘setting’*

It wasn’t a major overhaul but hopefully this will result in more complete and helpful translations for end users.

*The user is already being shown a setting dialog. Visually the presence of a toggle or checkbox communicates that something is a setting. Appending ‘setting’ to a setting is thus redundant.

Final thoughts on GSoC 2011

Overall I am very happy with how my project progressed. The addition of xmlParse has reduced foomatic-db-engine by over 5500 lines of code, a 85% reduction. SqlLayer allows for near pyppd levels of performance for non-cups users. Perhaps most importantly I’ve grown as a programmer and am more familiar with our linux printing architecture.

A design decision I made early that I am especially proud of is phonebook.pm. With it I was able to write xmlParse and sqlLayer much more abstractly than their C and php counterparts, which meant a substantial reduced codebase . My only regret was not making phonebook even more general, it would have been a design challenge but I think it is possible. This might just be the second-system effect talking.

While GSoC 2011 may be over I do intend to participate throughout the school year. I have already assigned myself two feature requests[1][2] and I still have option name consistency to work on prior to the new semester. This summer’s work will ship in Foomatic 5.

GNOME updates the wallpaper when the image is edited!

I found this awesome GPL linux wallpaper: http://xfce-look.org/content/show.php/Linux+Logo?content=142418 when exploring the options for xfce themes. One thing I didn’t like was the text at the bottom. No problem, being a GPL wallpaper it gives the svg source.

I set it as my desktop, because GNOME lets you use svg!, and started editing it in inkscape. I made the change I wanted, saved, closed and to my surprise my edit was already reflected on the desktop!

As for why I was looking for xcfe themes when I clearly am using GNOME, I’m researching what I’ll do once GNOME 2 is depreciated in Ubuntu 11.10