GUADEC

June 9, 2007

So mizmo booked our guadec tickets tonight. We’re flying out tuesday night and coming back monday.

Smart Card Login

June 9, 2007

So for RHEL 5, our moutainview team needed smart card login to work out of the box for DoD cac cards. I got asked to assist on the project, so I did the leg work to get gdm and gnome-screensaver responding to smart cards getting put in and pulled out. I also did a bit of work on the pam_pkcs11 pam module (Although that was mostly written by Bob Relyea of NSS fame).

Anyway, the bulk of the code was just cut-n-paste between gdm and gnome-screensaver. The longterm plan was to create a separate dbus service to do the actual talking to the card and have gdm and gnome-screensaver talk to the service . This is good because it reduces memory footprint, speeds up response time (which can be pretty slow with cac cards!), and means the card only has to get unlocked once instead of n times (which is an important feature if smartcard login is to ever become true single sign on). Anyway, RHEL5 came and we haven’t had time to implement the service.

Well, I got an email from boc the other day (well it was a few weeks ago), that he took my code and put it into a dbus service as part of work he’s doing for Novell! Awesome.

GDM refactoring

June 9, 2007

So Jon McCann of gnome-screensaver and ConsoleKit fame is doing awesome work on refactoring gdm to have a more modern structure to it. In particular, gdm will finally start using dbus to handle IPC instead of its own groady socket protocol. He’s also splitting up the code into coherent chunks and creating various gobjects to manage those chunks.

It’s a pretty huge undertaking but he’s making really good progress so far. He also landed some code that I wrote a year ago to rework the pam handling.

Graphical Boot up!

June 9, 2007

So gnome blogs now has a nice wordpress setup thanks to Jeff Waugh, so I thought I’d take the opportunity to maybe start blogging. I don’t know if I’ll keep it going–all my past attempts have failed pretty miserably.

Anyway, at work right now I’m working on trying to lay some of the ground work toward getting a prettier boot sequence for Fedora. We have a wiki page that covers an overview-y superset of what I’m currently working on.

Specifically, my goals right now are to

  1. get a graphical splash screen up quickly
  2. have it do something interesting for the entire boot sequence
  3. not show any text during bootup
  4. have all the text we show during bootup now, available in a file after bootup
  5. have a way for users to turn off graphical boot up easily

A lot of this work is motivated by previous work by Kristian Høgsberg

What we currently have in Fedora is RHGB. It’s a small program that gets started as soon as /usr is available during bootup. The program starts an X server, throws up a progress bar that updates as boot progresses and has a detailed view that shows a terminal window with all the mesages in the middle of the screen.

RHGB has a number of disadvantages:

  1. boot up stalls (for as much as 10 seconds or more!) until the X server is started
  2. it’s X server is different than the X server GDM uses
    • this causes flicker from all the VT switching and mode changes when going from text mode to X to rhgb to text mode to X to gdm
    • this triggers X driver bugs that have issues starting multiple X servers simultaneously or in quick succession
  3. the details mode is ugly
  4. boot messages aren’t logged

What I’m working on now has a subtle (although still somewhat unpolished) animation that fades the fedora logo in and out against a dark blue background. Rather than having a traditional progress bar or spinner, I randomly add a new twinkling star somewhere on the screen whenever there is boot progress. It’s just a off the wall idea I’m using for test purposes right now. The framework for displaying the animation is intended to be somewhat flexible, so that the animation is simple to write and can be changed out easily (somewhat analogous to a screensaver, I guess).

Boot progress is reported using the same interface that RHGB takes advantage of now. The init scripts manually call rhgb-client –update whenever something interesting happens and rhgb-client –quit when its time for the splash screen to go away. It may make sense to do something different on this front in the future, not sure.

Boot messages are trapped by creating a pseudo-terminal early on and redirecting the console to the pseudo-terminal. This happens before anything else is run (even /bin/init!), in the very top of the initial ramdisk. Changing the initrd over to use the interface is as easy as changing the shebang line at the top of /init from
#!/bin/nash
to
#!/bin/plymouth /bin/nash
and installing the binary and support libraries in the ram disk image. /bin/plymouth sets up the psuedoterminal and passes off to /bin/nash transparently.

The messages sent to the pseudo-terminal are buffered until the filesystem is fully mounted and then the buffer is dumped to /var/log/bootmessages.log

For development purposes I’m using the standard vesa framebuffer implementation that’s sitting in the kernel, but we probably won’t ever ship anything that uses that. It’s just not a reliable enough solution and it doesn’t really play well with X (which is important if we want to get nice transitions between booting to sitting at the login screen). Right now there are efforts by Jesse Barnes and a few other people underway to get a a reliable drm modesetting interface set up for intel video hardware. It’s likely that we’ll punt shipping anything until that stuff lands upstream.

Anyway, you can follow my progress at a git repository I set up here:

http://people.freedesktop.org/~halfline/plymouth/

August 28, 2004

Well the last couple of weeks have been very fun.

The girl I mentioned previously, Mo, was an intern at Red Hat, but grad school was starting back up for her, so she had to move back to New York, which sorta sucks a lot. Yet, despite the fact that she moved back to New York last week, I saw her everyday except for yesterday last week. That’s right, she was either driving to my apartment in Nashua or from my apartment to New York everyday last week but yesterday. It was possible because this first week at her University was orientation (not classes) and so her schedule was really open.

Here’s a couple of pics of her:

She’s a very talented individual who is very skilled in Linux, Human Computer Interaction, artistic things, and Hello Kitty.

Let’s see, different topics….

I love Indian food. I eat it far too much now in fact. It doesn’t help that there is an Indian market store right down the street, and an insanely good Indian Restaurant a few miles away.

ummm…here’s a picture of me after my hair cut..kinda a junk picture though, cause my hair is wet and messy and i’m sorta unshaven…

Ummm, what else… I can’t really remember what’s happened lately.

Oh, car trouble…So Mo got a flat the other day (this was the night before the last day of her internship, the thursday night before last thursday), and she didn’t want to drive on the spare very much, so we parked her car and I drove her to work the next day. The plan was that I would drive her to her car after work and we would go down to a tire shop and get it replaced. The next day it rained hard….very, very hard, and when we got into my car after work and tried to start it–nothing. Just click…click…click… So we called a tow truck and had it towed to an auto shop down the road. Preliminary analysis suggested it was the starter that had gone bad. They were really busy though, and they are kind far away from where I live so the mechanic spent a few minutes to see if he could get it started so we could take it somewhere else more near my apartment. Sure enough, after about 100 turns of the key he got the thing to start! Damn, I just paid 60 bucks for towing. Ah well, at least it started.

So the plan was, I’d take Mo to her car, we’d pick it up and take both cars to the same shop near my apartment. Her’s was just a flat tire, so we’d get it back later that night, and mine would need a starter replaced, so it was going to have to stay into the weekend.

It didn’t turn out that way, however. Her bearings were bad, too, so it had to stay at the shop like my car. We just walked the mile or so to my apartment and on the way stopped at blockbuster to rent some videos. We crashed and in the morning we walked back to the auto center (it’s part of Sears actually) and guess what? My starter wasn’t bad at all, just a wire that went bad–presumably because of the harsh, harsh rain. What a weird twist of events, uh?

August 18, 2004

I took earlier today off work and went down to Boston with a friend. We got haircuts at a small shop ran by a couple of friendly Japanese guys named Fred and Steven. This is a bit of a big event for me because I’ve had long hair for so long that there was a lot of inertia stopping me from going shorter. I was ready for a change though, so I just told Steven to do whatever he thought would look good. I really like how it turned out.

On a different note, I also really like how my relationship with my friend is turning out. I feel really comfortable around her. We have a pretty close connection I think. We have a very open line of communication, and so we don’t play ambiguous manipulation games which are the norm in a boy-meets-girl world.

August 13, 2004

Well, I guess I’ll update again.

Let’s see… Last friday I saw a movie. I don’t remember what movie though. Before the movie I ate at an Italian restaraunt that I can’t remember the name of. I do remember the waiter was named Hugo. What was really interesting, though, was the table at the restaurant came with crayons and a paper table cloth. I spent most of the night creating a truly delightful scribbly mess next to someone who could really draw. My drawing looked so bad next the nice drawing, I decided I would just start doing random things to my drawing in a last ditch effort to salvage the image as abstract art…didn’t work. When it was all said and done with, my drawing had so much wax on it that it waterproofed the paper.

After the movie, at about 1am or so, we all went down to Nalin’s apartment in Saugus and fun’d for the night. On my way there I picked up some ice cream and frozen fruits, which we used to make beer floats and smoothies respectively. So we drank, and played Dance, Dance Revolution, and threw juggling balls at each other until about 6am or so, and then we went to IHOP for some breakfast.

After that, I crashed for the day and then in the evening time we went to a rowdy bar called Dicks, where the waitresses put hats with obscenities on your head and just be all around rude (it’s all in good fun mind you). By the end of the night the table had gone to war with each other in an all out paper and ice throwing fight. A friend of mine that I have been too flirty with recently, was wearing my fedora and keeping me stocked with plenty of ammo as I assaulted Nalin. Actually, most of the table attacked Nalin and he did a really good job of blocking the onslaught. Also, a chick from another table was downing shot glasses off perversely named mixed drinks off John’s … uhhh … lap.

Umm, on Monday I went to a concert with a couple of friends to see Alanis Morrisette and Bare Naked Ladies. I bought an overpriced tube of glowing color while there and spun it around a bunch to make really neat, semi-transparent discs in the night sky. It was expensive, but as some chick behind me pointed out to me, it was still cheaper than the beer I was drinking. The concert was actually a lot more fun than I anticipated. By the end of it, the Bare Naked Ladies were dancing around, synchronized with shopping carts.

umm on Wednesday (I think) I went over to Chris’s house and did the hookah thing again (my second time). Less luck making smoke rings this time. I also watched a funny movie that I can’t remember anything about right now strangely enough, and went dangerously overboard with the flirting with the friend.

I decided to work from home today in an effort to be more productive. It didn’t work. I got less done than I probably would have at the office. Oh well. I’ll just make it up this weekend. I guess one of the advantages of having a job I love is, I don’t mind doing it on my days off when needed!

But now, i’m going to go pick up a pizza and head to Chris’s house to play doom 3.

Crongratulations

August 2, 2004

I’d just like to take a moment to publically say congratulations to Stacie Fidler on her recent engagement.

Congratulations Stacie!

You’ve reached a pretty substantial turning point in your life and I wish you the very best.

July 14, 2004

Nothing much new to report. I went into boston with some of the Red Hat crew the other night. We walked around looking for a place to eat and finally landed at a Tex/Mex restaurant where I ordered a Mexican import beer called Sol and chicken fajitas. They only gave me 4 tortillas (which I guess is pretty typical), but I didn’t budget the first 3 well, so I had a massive amount of food left for the last one. I suppose I could have just quietly eaten my last fajita and then finished the remaining fill of black beans, rice, lettuce, peppers and chicken with my fork, but I didn’t.
No, I saw a challenge that I had to take head on. So, instead I decided to fill my last remaining tortilla to its absolute limits. I had it so full that I couldn’t even close it all the way. Luckily, (and to the great amusement of the people I was with) I managed to get the thing into my mouth enough to take a bite after a sufficient amount of manuevering, wiggling and squeezing.

And then we’re walking out of the restaurant some time later and we walk past this sign:

Now, you’ve got to wonder, “What happened before that sign was put up?” :-)

So after the meal we went and got ice cream at the same place I got the fudge on a previous weekend and then we went to a local tavern and ordered some drinks and chatted for a while. Toward the end, Nalin (a coworker) and I were both almost exactly half way through the drinks in front of us (he had a screwdriver, I had a vodka w/ cranberry) and so we decided to race. *Jug* *Jug* *Jug* *Spill* *Jug* *Jug* *Jug*. Damn Nalin beat me by a second and I got cranberry juice on my new shirt. ah well (spot remover got the stain out later).

We’re wondering where to go next, when we remembered that a lady walked up to us and handed us fliers for a club/bar called “Coyote Ugly” (presumably a knock off from the movie) earlier that day. So it’s on “Friend St” and that’s a fair distance away. We decide to go anyway, even though none of us had ever been to friend street before and we weren’t exactly sure how to get there.

On our way there a cute, but typsy girl walks up to me and tells me that she really likes my hat (the red fedora that I always wear), so we’re walking and talking for a while and she’s wearing my hat and then I eventually ask her if she knows where “Coyote Ugly” is and she says that she thinks it’s a couple miles in the direction opposite the way we were walking, she then points out there is a hooters in front of us though as an alternative. This was a bit interesting, because 1) hooters is more of a restaurant than a club/bar 2) It was late and hooters was closed and 3) someone from the group I came with (they were following behind me and the drunk chick) pointed out that there was a big sign for “Coyote Ugly” right next to the Hooters.

At any rate, we didn’t end up going in. Some of the guys in the group didn’t want to pay the cover, because it was way too crowded and they would have to leave soon anyway, because the T trains were shutting down within the next hour and half or so.

In other news, I got my license plates in the mail today:

Beware of hot stuff

July 7, 2004

I just want to take this time to remind those of you out there who iron that 1) irons are hot 2) ironing should be done fully clothed (even if you are ironing the shirt you are going to wear) 3) irons are hot