FUDCon Toronto

December 12th, 2009

So FUDCon is over this year and it was great. Finally getting to meet people and discuss the workings of some of the projects Fedora is involved with. Rob Escriva and I left Thursday morning after breakfast and got into Toronto a little before 4pm.

The first night we met up with Steven Parrish and Rex Dieter for some dinner at an Irish pub near the hotel. We heard that there was live music there and indeed there was. Very loud and right next to our table. By the time we had eaten and returned to the hotel, lots of people were gathered in the lobby and were discussing various things. Rex and I talked with David Malcolm about what was happening with Python 3 in Fedora 13 and how it would affect the KDE side of things (more on that below). Seth Vidal also joined up and the topic moved between bdb and sqlite and how it affects rpm and yum, patches to python and rpm itself and other tangents that were all too easy to get off on.

After getting to sleep around 2am or so, we woke up for breakfast to get to the college at 9:30. The bus ride cost was a little crazy ($3.50 for one ride) but there were few viable alternatives. We all gathered in the room deemed to be Room 1 to discuss how things worked at FUDCon with the bar camp style of scheduling. Lots of people lined up to pitch talks for the day including Rob to pitch CHASM (something else which will be explained in more detail below). Everyone then lined up outside in the hall where the pitched topics were taped to the windows to mark which talks were the most interesting to people. CHASM got 22 and we got paired with Matt Domsch’s talk about Mirror Manager.

The first talk that I attended was Steven Parrish’s talk on reporting bugs effectively. I was the one who asked if anyone was logging the talk and in the process volunteered myself for it. The hardest part about logging was keeping up with the slides and the talk and typing things into the IRC channel fast enough but I got better throughout the day and it got a lot smoother. The logging of the talks in IRC and using zodbot to throw the results onto the wiki is a great way to help those who are not able to attend FUDCon to be able to participate as well. The talk itself was great. Even though I get CC’d on lots of bugs due to being a co-maintainer of the entire KDE stack and having to request logs and such for different things. Lunch was next and Rob and I talked with Adam Williamson about netbooks, computer specs and whatnot over the provided meals.

The next session was on MirrorManager and CHASM (a project Rob and I have been working on). Matt Domsch discussed what MirrorManager is and what it offers for Fedora. I never knew that it picked mirrors for me. Goodbye fastest-mirror plugin hackery (manually remove the results for any mirrors I don’t want). After that, Rob and I (well, mostly Rob) presented on CHASM, the Cryptographic-Hash-Algorithm-Secured Mirroring solution. It aims to ease mirroring large collections of software that change over time (such as distributions’ repositories). It was well received and we got good feedback from Seth Vidal and Matt. Some ideas that we had about what actually goes on with the mirroring of Fedora and what CHASM needs to do were updated and we have rethought some of the assumptions we had before FUDCon.

After that, I attended the GDB talk and learned how to make pretty-printers to get usable output when displaying values of the running program. There were also tips on debugging threaded applications that I wasn’t aware of before and should help with debugging some KDE applications that make use of threading.

The most interesting talk (other than CHASM) that I attended was Jesse Keating’s talk on how Fedora will be ditching dist-cvs for git. I am very excited about some of the ideas that were being discussed such as the automatic patch management (just some macros in the actual spec file), exploding source tarballs into a git repository to create patches with git format-patch, actual tools rather than hackish make targets, and actual support for branching (I’m looking at it being able to do snapshots of upstream outside of rawhide so that if things go really awry with release times, an epoch isn’t needed to fix things up when rawhide gets branched for a new release). Between this and KDE’s conversion to git, there should be plenty of documentation on how to convert repositories of huge scale and hackery over to git.

The last presentation I attended was on trademarks and how they affect Fedora. It was a great discussion between how lawyers see trademarks, how hackers see trademarks, and what needs to be done to make things clear on both sides of the discussion. After learning about the basics of the legal web of things that affect Free Software in general (copyrights, trademarks, patents, etc.) in the Open Source Software Practices class here, getting some input on how lawyers look at things was a great insight.

After the BarCamp was over (great format by the way), everyone headed back to the hotel to drop off laptops and such before heading over to Dave & Busters for FUDPub where I talked with Ian Weller, J5, Brennan, David Malcolm, Luke Macken, and others (many of whose names escape me) about various things related to Fedora, Python, and other technical topics. Towards the end, J5, Brennan, and I went to the game room to roam around and see what was going on (I watched since I prefer watching games than playing them). We ran into Spot, Jesse Keating, and others as well. Spot had a bunch of tickets and everyone donated what they had which, with a total of 670 or so tickets, got Spot a set of poker chips.

After FUDPub, I headed to the hackroom on the third floor and was told by Seth Vidal that if Rob and I can’t sell CHASM to John Hawley, the system administrator of kernel.org, we need to rethink everything. After hanging around and listening to some of the discussion, I headed to bed so that I could get up in the morning for the hackfests the next day. Rob says he lost the pool game, but I sunk the 8 ball in the wrong pocket, so to be pedantic, he won ;) .

The next morning, after waking up, eating breakfast, and talking with…well I can’t remember exactly who I talked to, so many people. I’m sure it was interesting and productive :) . After that and the bus ride to the university, various pitches for things to work on throughout the day were done. I pitched the CHASM hackfest and invited anyone who would like to do GPG keysigning to somewhere in the room that was labeled as ‘E’ on the board. At the hackfest, I talked with David Malcolm about the Python3 happenings and how it affects the KDE side of things. He discussed what needs to be done to spec files to get them ready for the Python3 fun that Fedora 13 will sport. Adding PyQt4 and sip to the list of packages that need attention for the large majority of packages in KDE land to be ready for it. We went through the sip spec file and did preliminary work to get sip working with python3. Other than some of the black magic that it does, it went well and python3 on the KDE side of things should be done once sip, PyQt4, and the ever inimitable kdebindings support python3 parallel installation (other than the normal work of splitting the users and dependencies of these packages). John Hawley then showed up and Rob and I discussed what CHASM was, what kernel.org does, what it would need from CHASM to consider it, and other related things. He liked it, so it means that CHASM is on the right track.

Later, after some pizza got ordered, I hunted down Máirín Duffy to discuss a logo for CHASM. I had an idea in my head of what it would look like, but Mo was able to improve upon it and is capable of bringing it to fruition unlike myself. We also talked about some of the things about RPI since she is an alumni.

Towards the end of the night, a bunch of us gathered in room ‘A’ to work on different things. I didn’t get much work done there other than some fiddling with xmonad (rather than ratpoison) on the netbook. Haskell is very interesting and monads make my head hurt. Towards dinner time, those that were still at the university headed over to a mall to get some food to eat. I talked with one of the XFCE maintainers (sorry, can’t remember your name) about what CHASM was, differences between GNOME, KDE, and XFCE and the different use cases they fill.

After dinner, things such as “It’s a trap”, nethack, and “The Website is Down” were displayed on the projector. Not much work was done on my part after dinner, but it was fun in any case.

That night I went to the hackroom again and talked with Adam Williamson some more, debugged an issue where some kernel upgrade botched up the initrd creation for the new kernel making it fail to boot with Dennis Gilmore and John Hawley, and more.

The next day at the hackfest, Rex, Jaroslav, Steven, and I discussed KDE related things from what needs to happen with kpackagekit, the Network Manager frontend, updates, and other details. Rob and I did some documentation for CHASM, thought up of being aware of preferred files due to cache status for CHASM, and overall was a more productive day. Rob and I talked with Mo about coming to RPI to talk about the Fedora Project when Red Hat visits for the career fair in the spring.

Upon returning to the hackroom, we attempted to debug the network and determined that it was most likely due to the gateway overheating and shutting itself off once it hit its limit. Stephen Smoogen, David Malcolm, Spot, Mel Chua, and I went to play some Dungeons & Dragons. I first played this past summer, it was the first time Mel was playing, and the others have played much more. We got to the first fight, beat the tentacled arm thing and then called it a night.

The next morning was the last morning of FUDCon. The FUDBus left around 9:30, and Rob and I headed out around 10:15. We caught up with the FUDBus on 90 on the way back, but made a stop to stretch and lost it. I would like to thank Red Hat for my funding to go, Chis Tyler for getting the space at Seneca, Mel Chua, Paul Frields, and all the others who made this FUDCon possible. I’m looking forward to seeing everyone at the next one I can attend.

GNOME Day 3 (Nitpicks and plasma-desktop test)

November 4th, 2009

So, another day with GNOME on the laptop. First, I’ll go over the things brought up in the comments of yesterday’s post. I also replied in the comments to most, but I know going to posts to read comments is something I do rarely, so I’ll make it convenient for others to get the discussion.

To Adam, I mentioned that I would be trying out GNOME Shell anyways, so no need to worry that I was trying alpha software at the whim of a comment ;) . I tried gdevilspie, but couldn’t get it to actually do anything. The options indicate it can do what I want, but it just doesn’t do it. The GUI says the service is running, but neither Metacity nor GNOME Shell picked up on the rules at all.

To Nicolas, I know that the screen is actually 129 dpi, but the fonts are too big then. To get them to the size I want them to be, I have to set it to 6pt and 4pt for regular and small text, respectively. The font selections go to 6pt as a minimum, so anything meant to be smaller is just the same size. I’m sure I can edit it in gconf, but meddling in there is after I try doing it all through a GUI. The fonts getting bigger with higher dpi seems backwards to me since you should be able to show the same size with smaller physical size, but maybe I’m missing some key detail as to why the opposite is true. So the only way to get the font sizes I want is to set the dpi to a lower value, probably 96 dpi since I know the font sizes at that dpi.

To Alexander, pressing Shift while moving a window gets the effect I want, but only snapping is jarring and not really what I expect.

To twilightomni, the animations are something that I find dispensable. They aren’t necessary for things to work. The main reason I find fault in requiring 3d acceleration is that nvidia users are left out in the cold or forced to go for the blob. One of the reasons for this install was so that my KDE install with nouveau isn’t screwed up when I no longer need the nvidia driver. I have more on this issue today.

Second, the nitpicks that I’ve found with usage. First, I tried to use Guake which is supposed to be similar to YaKuake. Upon trying to start it, it just crashed (yes, a bug has been filed). I’ll look into it once the issue is fixed. This crash triggered abrt to report the crash. Now this is an issue that I’ve been finding all over the place, but dialogs are not given focus when they are created. I need to manually move the mouse (or alt+tab, but i have issues with GNOME Shell’s way of doing this as I went over yesterday) to give the dialog focus. In abrt’s case, it also put the dialogs underneath other windows or dialogs making me wonder why the application had become unresponsive. Having translucent windows as I normally do would help avoid the discovery that there is a modal dialog hiding among the others, but it would only ease the issue, not solve it. I also spotted a spelling error in the dialog that requests for credentials. The word “below” is misspelled as “bellow”. If this post isn’t enough to be considered a bug report, I’ll file a formal one.

There are also some migration pains with Nautilus. In Dolphin, F10 creates a new directory and prompts for a name. In Nautilus (and elsewhere), F10 gives the menubar focus (just like in the latest incarnations of Windows). Both KDE and GNOME also allow alt+<letter> to access the menubar, but in GNOME, F10 is a wasted key. This also conflicts with htop when inside of a gnome-terminal, but at least ‘q’ still works to quit as well. The screensaver also automatically locks the screen. I want it to lock, but I want some time to catch it and prevent it from forcing me to put my password in if I’m reading something (like my notes for these posts). I also found a quirk in PackageKit. After selecting and installing a set of packages, they are still checked in the interface, but the “Clear” action does nothing to change these selections which is a little odd, I thought.

For GNOME Shell, I do have issue with it not supporting a low-end setup without 3d acceleration. First, nvidia users are left to either stick with Metacity or use non-Free drivers which require some additional repositories to be enabled. Other chipsets have similar issues, but nvidia is the most noted one. Personally, I have found that the only thing that is used that really requires acceleration is the “Activities” view. Everything else is just animations and other effects that don’t really add any useful features to the experience (maybe I’m missing things, let me know). It is sort of necessary since there is no other way to easily launch applications that I can approve of for general use. With no other option to fall back to, there is no way to lower power consumption. KWin suspends its (well, PowerDevil triggers it, but it’s there) compositing when low on power to help prolong battery life. GNOME Shell has nowhere to drop to other than Metacity which loses essential and key features of GNOME Shell.

While on this subject, there is some lack of interoperability between Metacity and GNOME Shell. The activity count for GNOME Shell is not turned into a desktop count in Metacity and when going back to GNOME Shell, there is again only one activity. This was irritating as I had to reorganize my windows after each switch (though KWin would be able to pick up my rules and put important things where they belong). I know that window manager to window manager switching usually collapses all applications to one desktop anyways, but if GNOME Shell does have a power-save mode, Metacity would probably be it and they should work better together in that case.

The “lg” command that GNOME Shell has is nifty, but I don’t know what objects are available. If there was something like Python’s dir() function, discoverability of things I could do with it would be greatly improved[1]. The history output also seems to not keep the output scrolled to the bottom if it is there forcing manual intervention to see output.

Third, and probably the most interesting part of this post, is my test to try GNOME Shell and plasma-desktop at the same time. All I did was install kdebase-workspace and launched plasma-desktop. To my surprise, it worked and there were no dead_kittens. Plasma picked up GNOME Shell’s activity count and pager happily displayed them all. However, the workspace switcher in GNOME Shell was confused and only saw one workspace (with the ctrl+alt+left/right keys, going back to 1 worked, but you were locked in once there) even after plasma was killed (switching to Metacity and back fixed it). Plasma also stole the notification area (status bar) and GNOME Shell didn’t get it back until the Metacity switch as well. After finished with plasma-desktop (and KRunner), killing them brought back the nautilus desktop as one would expect. The only thing that didn’t really fit was GNOME Do which still stuck to the bottom edge behind the plasma panel, but it still worked despite being there. I also removed kdebase-workspace (with yum history undo) to prevent future temptation to just use them instead.

Tomorrow, I’ll have some RAM usage statistics I gathered last night.

[1] As a note, I just figured out what the “Evaluator”, “Heirarchy”, and “Properties” labels do, but that is, again, more mousing than I like.

GNOME Day 2 (GNOME Shell)

November 3rd, 2009

After using GNOME for a little while, I discovered some things that are not how I am used to things working that would probably take a while to get used to if I were to move to GNOME full time (I doubt it though, KWin, KRunner, and general application integration is just too nice in KDE). I’ll be using it until the end of the semester (right before FUDCon) at least since I’ll need Panda3d and therefore the nvidia driver until then.

First, things that got fixed from my last post are that the audio applet showed up after the first upgrade, so I’m guessing the PulseAudio issues that were there caused all of the issues and the upgrade fixed that all up. The nvidia driver works, but it has those issues that I had last time I used it every now and then (waking up, it goes right back to sleep, some jerky animations, screwed up DPI (129 instead of 96), etc.). In response to Adam’s comment on my last post for the driver, the dual booting with another Fedora install makes the kernels a touchy subject and not something I want to deal with. I ended up “rebuilding” the RPMFusion SRPM myself against this kernel. Thanks to the help with getting the “focus follows mouse” setting and the opening terminal entry for the desktop. I did end up getting my keyboard layout settings fixed, but gnome-shell has broken them again (see below).

This morning I had to poke around with some code, so I fired up gedit, played with some settings (mainly tabulators to spaces and 4 spaces for indentation). After some mistakes with typing, I found out what kept causing me to screw up: ctrl+bksp behavior is very different from what I am used to in KatePart. In KatePart, it goes to the beginning of the next <word> and since KatePart is used pretty much anywhere non-trivial text editing is needed, it’s consistent everywhere. In gedit, however, its movement is very different. Going forwards, it goes to the end of a <word>. Numbers are considered a different <word> which adds to the confusion (I’m getting used to looking ahead in vim for command counts, the numbers adding to it throws the counts for key presses off). Going in reverse, the cursor is placed at the beginning of a <word>. This duality is disorienting at times. There is also some odd behavior near the end of newlines. In KatePart, ctrl+bksp will stop at a newline effectively just clearing it. Instead, gedit also deletes the last <word> on the line before which causes me to manually hit Backspace to delete what I want. Word jumping over newlines follows similar patterns and is hard to get used to. For actual coding (pretty much anything beyond what that class requires), I don’t know how well gedit works out, but it’ll take some getting used to. I was pleasantly surprised to see a Kate color scheme in gedit.

I discovered some odd behavior with the volume keys as well. If something is selected, changing the volume with the keys makes it use the “hovered” color while the button is pressed. Another oddity I found was the “desktop effects” configuration selection for Compiz had quick options for “wobbly windows” and “the cube”, two of, what I consider, the useless effects that have been made. I usually use “Present Windows”, “Zoom”, “Desktop Wall”, “Thumbnail Aside”, and “Translucency” in KWin. Other than that, it’s just some visual cues that I could live without like a minimization animation. The rest I see as eye candy (well, the other desktop switchers can be useful, just not my preference) and not really necessary, so why two of the more “useless” effects are front and center befuddles me.

I also found some inconsistency with dialogs. Sometimes Escape works as if I hit “Cancel” and other times it just does nothing. One such dialog is the “Add/Remove Software” window. Visually, it screams “I’m a dialog” to me since it lacks a menubar and toolbars (though these aren’t always applicable) and yet Escape does nothing. Just something I’ve come across and I’m sure there are more around.

How am I supposed to eject flash drives in GNOME? I kept trying to do “Safely Remove” but it kept coming back that “this file could not be stopped” (though it is a funny error message, fairly for those who don’t know about processes holding file descriptors open). Eject works, but it’s not what I’d choose with an option of “Safely Remove” right there.

I also installed GNOME Do and tried it out. Unfortunately it is also not KRunner by a long stretch. I search for “naut”, GNOME Do suggests “Livna Display Configuration” and only that. Why not Nautilus? I know what it’s called, let me launch it. KRunner also searches my bookmarks, contacts, recent documents, path names, Konqueror web shortcuts (very handy), Kate sessions, offers a calculator, and lots more. GNOME Do doesn’t do any of that (as far as I can tell) out of the box. I haven’t searched for plugins yet, so any pointers on good ones for the things I listed would be nice. GNOME Do is also not a standard text entry widget, so ctrl+bksp doesn’t work at all.

Window management is one thing that I’ve gotten touchy about after getting used to KWin. Metacity and GNOME Shell both have the following issue that bugs me: windows only snap to edges when going towards the edge and not when the two windows previously overlapped. I have high sensitivity on my inputs (but smooth, which is where the Windows drivers start to annoy the hell out of me with their jerky scrolling) so I overshoot placing windows often and “reverse snapping” is nice. KWin also snaps corners to corners and when edges line up (the top will snap to the neighbor’s top line if the two windows “touch”) which Metacity and GNOME Shell are both missing. Resizing windows is also weird with it depending on where the mouse starts within the window. In KWin I don’t really resize things much since I lock windows’ position, desktop, and size for persistent apps (and size for common ones like Konqueror or KWrite). I also set shortcuts for persistent apps (meta+alt+i for Konversation for instance). As far as I can tell, neither Metacity nor GNOME Shell has this ability, so I’m left to manage such things manually and since default sizes are way too small for 129 DPI, I have to resize things.

While on window management, I’ll report my initial findings for GNOME Shell. The first thing I noticed is that its alt+f2 tool is even more featureless than the default GNOME one. It only accepts complete command names, no tab completion, no ctrl+bksp, forces focus, and other things. This mix of things it’s missing makes it pretty much useless in my book since opening up a terminal and letting bash auto-complete for me is much faster. In addition to this, the GNOME Do shortcut gets clobbered somewhere in GNOME Shell so it has to be manually started.

The alt+tab switcher in GNOME Shell is also hard to get used to. If there are two windows for an application, they cannot be separated without the mouse or hitting the down arrow. I was able to get it to display the separate windows with nothing but alt+tab a few times, but it’s not reproducible reliably. Window thumbnails are also hidden in this submenu. Being used to “Present Windows” (with two variants, all desktops and just the current one) which has filtering, this is a step backwards for me anyways, the awkward navigation just adds to it

The list of applications next to the “Activities” menu doesn’t make much sense to me. It only lists the currently focused application so of what use is it? In addition it says “File Manager” for the desktop. How many people know that the desktop in GNOME is just a Nautilus view of a folder with a wallpaper? I didn’t until today. I kept trying to find this “File Manager” that was open so I could close it.

The “Activities” area is weird. There’s no keyboard navigation unless you’re searching (which also does not support ctrl+bksp by the way). You can add and remove desktops here as well. Adding them is no problem. I find issue with the way desktops are removed. You can only remove the last one and the way it works, the position of the last desktop keeps moving. I was also unable to find keyboard access for this. The other issue with these desktops is that the layout with the “Activities” visible is 2d. When back on the actual desktop, it is 1d. On KDE I have my 9 desktops set up in a 3×3 square with shortcuts that treat it as 2d and 1d (if I had 6 more arrow keys and shortcut actions to attach them to, there would be 27 in a 3x3x3 logical layout ;) ). GNOME Shell has no way to treat them as a 2d grid. In addition, I did not find any shortcuts for moving windows between these desktops. You have to get the window menu (alt+f3 with KWin, click in GNOME Shell) and choose to move it right or left. There is also no wrapping, so to get a window from desktop 1 to desktop 9, I have to do this 8 times. There’s also the ability to move windows when in the “Activities” area, but this also requires a mouse and lots more of it.

GNOME Shell also likes to play around with shortcuts. Since the “Activities” area is triggered by the Meta (also known as “Super”) key, my shortcuts to the desktop through VNC are chomped when they use the Meta key. Not fun. If the “Control to show mouse position” is active, the Control key modifier is also impossible over VNC (now using TigerVNC since vinagre is really annoying). My keyboard settings for CapsLock-as-Backspace and RtAlt-is-AltGr, Shift+RtAlt-is-Compose are also completely ignored. Setting them manually with setxkbmap works as expected, but the keyboard settings are completely ignored. The GNOME Do access key (Meta+Space) also seems to have no effect when in its dock mode forcing the mouse to access it there as well.

With GNOME Shell active, GNOME Do defaults to a Macintosh-like dock. It’s nifty and looks nice, but not really my thing. Unfortunately, with what other ways there are to launch applications, it is the least annoying (though I just found the “Sidebar” and it looks a lot better, will report on that tomorrow). Similar to the alt+tab switcher, the dock is hard to use with multiple windows for one application. Right click on the app and then click on the entry you want. No thumbnails to differentiate them if the titles are the same or keyboard navigation.

Reflecting, GNOME Shell gets a “meh” from me so far. I hope that it’s still alpha so that more features can be added (assuming standard alpha and beta definitions). If it isn’t, GNOME Shell’s first release will probably feel like KDE 4.0 did to many. In either case, KWin and Plasma have been much more powerful from my experience and they aren’t as much as a detachment from how things have worked for the past many years.

Experiment for tomorrow: gnome-shell with plasma-desktop. The /proc/acpi/dead_kittens file will probably be reporting numbers in the dozens.

Trying out GNOME (First Impressions)

November 3rd, 2009

Today, I installed an instance of Fedora 12 Beta GNOME Spin onto the partition that used to be occupied by the Windows 7 Beta I installed in March or so and BSODs on boot. Dual booting Fedora/Fedora is an interesting prospect and I found some interesting corner cases in Anaconda and dealing with getting the two to work with each other.

Luckily the install I’d like to keep clean (the KDE one with the nouveau driver) had the kernel for the Beta still installed. When installing the GNOME instance, I didn’t install a bootloader since the possibility of overwriting the good settings was too risky. It turns out that Anaconda did nothing with /boot in this case (it made a directory for it on its /, but that’s all I can tell). Maybe it did and I didn’t notice, but there was no GRUB entry for the new install and the kernels both went to the first install (though the settings on the menu and timeout do seem to have been modified, not sure what’s going on there).

After hacking the GRUB listing to boot the GNOME install, I did an upgrade. I skipped the kernel since I don’t want to see how the two installs would get along with each claiming ownership of the files in /boot, so the GNOME install will keep its kernel and the KDE install won’t uninstall the version that the GNOME one is on.

I think that in order to fix issues like this, there needs to not be one file in charge of GRUB entries. One way I can see this working better is for GRUB to have global settings (and a GUI to control these) that all installs obey and to have a directory with one directory for each installed system on the machine. This way the Ubuntu magic incantations can stay in one file and the Fedora lists can each be separate. GRUB would then scrape all these lists and boot whichever it needs to. This is much more extensible and allows the distros to each do their own thing and not step on each others’ toes with defaults and whatnot.

I must say that the GNOME frontend for PackageKit is much more advanced, but KPackageKit allows for a more pain-free way of dealing with cerdentials. I don’t know how many times I entered the root password to fiddle with packages, but it’s not fun with my password. The dialog for the password request also doesn’t get focus without clicking forcing me to act to deal with it. This with no setting for “Focus Follows Mouse” that I could find annoyed me. I also had issues with PulseAudio popping the speakers every other second. Luckily the update fixed that, but it was really annoying while it was going on.

As for GNOME itself, I feel lost. Since PulseAudio was popping the speakers, I wanted to mute them. However, when I went to the Sound entry under settings it just sat waiting for PulseAudio and never did anything. I couldn’t find any mixer like KMix, so I started up a terminal to do alsamixer. When I ran it, it gave an error about PulseAudio not being reachable. Fine, at least there’s a reason that the Sound configuration doesn’t work. But it then crashed nm-applet somehow. Unfortunately, abrt had failed to start for that session and there’s no trace for it.

Some other little things I saw were that the icons in the menus sometimes “popped” into existence after the menu was displayed. The Alt+F2 tool (not sure what it’s called) is similar to what KDE3 had and not the KRunner I’m used to and the combination of that, the menus being foreign to me, and me not using menus normally made it awkward to launch applications. KRunner can do substring suggestions and also searches descriptions so that Konsole matches any of “term”, “kons”, “sole”, and others. To launch the GNOME terminal it’s “gnome-terminal” (tab completion helps, but KRunner is still far superior here). Since terminals are a dime a dozen and I usually close things as soon as I’m done with them, this is unproductive for me (I normally use YaKuake).

I also coupled my /home partition with the new install, but firstboot required me to use a different name or chance that the uid for my user on the new install and the old install were the same. I’d like a button to say “Yes, it’s my $HOME, set my uid/gid to what that directory’s ownership is” to help with migration and reinstalls.

With this, it shared my other install’s xdg-dirs settings, which has everything pointing to $HOME. This is the first time in a while that I’ve had icons on my desktop and I can’t say I miss it. That with the overlapping (which I was able to fix after fiddling with the context menu) and previews, it makes my desktop feel cluttered, but if I could get rid of the previews, I’d feel at least a little better about it, but I’ve been unsuccessful in my attempts to get that to happen yet.

I was also unable to find any GUI control to fine tune my keyboard settings (I set the Caps Lock key to be an extra Backspace and RtAlt to AltGr and Compose with Shift). I know the commands to do it, but would have liked to set it in a GUI somewhere. Speaking of configurations, it took a while to find the control panel (similar to systemsettings in KDE) and it was an accident. I had kept going to the menus (which I find awkward with, but if there’s keyboard access to them, I’d feel better) so configuring was another annoyance.

I use VNC to access the session running on my desktop, so I editied my client script (it shunnels the VNC session) to use the client shipped by default. The biggest annoyance is that there’s no cursor shown at all, so I have to rely on effects in the display to guess where the cursor is (I’d use the keyboard if the local X session didn’t eat all the important ones).

Another thing I am missing from KDE is the context menu on the desktop. In KDE, there are entries for Konsole, logging out, shutting down, and locking the session all in one convenient place. Instead, I have to go to those menus (requiring a mouse) to do any of this. The ctrl+alt+del menu also doesn’t have logout, but the other entries being there is nicer than going to the menus.

After playing around a bit, I had to install the nvidia driver so that I could use the install for the class I have to use Panda3d for (this was the main reason for a second install; so that the KDE one wasn’t polluted with this thing). The kernel the GNOME install has is older than what the RPMFusion repositories carry, so I had to “build” it myself. That wasn’t hard. THe gotchas were allowing it to execute code on the stack and rebuilding the initrd since nouveau was in the one from the KDE install. The nouveau and nvidia drivers really do not work together at all. With nouveau, you have it taking the frame buffer and nvidia not being able to grab the device and uninstalling the nvidia driver is just a pain. It also does not do 96 dpi out of the box and all my fonts are huge (physical dpi is around 129 or so).

I’ll be playing around with this install for a while (3 projects to go with Panda3d), and I’d be grateful for any tips on how to do anything I failed to do and described here. I’d say that most of it is that I’m just missing where things are for half of it, but I wouldn’t be surprised if I had to go app searching for some of it (like VNC). I’ll also be trying out gnome-shell later since I have 3d acceleration with the nvidia driver (one reason I think it shouldn’t become default until nouveau supports 3d or nvidia is miraculously released as Free software).

SVG Editing and Scour

November 3rd, 2009

Thanks to the replies to my last entry. I’ve put Scour up for review so that I no longer have to scrub SVG files by hand.

Inkscape and SVG

October 19th, 2009

So, being the non-artist that I am (and the rest of the ACM chapter here), I edit SVGs in vim. This makes me cringe whenever I see SVGs that have been saved with Inkscape. Inkscape likes to put weird namespaced attributes and such around the code basically duplicating whatever the standard attributes are. So the first thing I do when I get an Inkscape-generated SVG is strip the useless stuff out. Completely. I don’t know what this does for Inkscape, but seeing as it’s still standard SVG, everything should work just as intended.

Another gripe I have is that it puts everything down two levels of dereferencing. Shapes use a gradient, which is in the defs, that’s okay. But then that gradient references another gradient for its stops. Why this separation? I’ve also seen objects defined that aren’t referenced at all (I imagine gradients that were made then ditched later).

Inkscape also likes to export attributes that aren’t necessary. If the fill is none, the fill opacity, color, and rules mean nothing, so don’t bother writing it out. The id tags on objects are just numbers, making use of search necessary. Everything is put into style=”foo:bar;” instead of foo=”bar” format. I’m sure this makes parsing slightly faster, but it’s irrelevant since how many extra attributes are set (not to mention Inkscape-specific ones). It’s harder to read and edit since syntax highlighting tends to be “string blob” and not “string of key/value pairs”.

I’d like to see Inkscape have an “Export to SVG” menu option so that a nice, minimal SVG is output. Without the Inkscape-specific extensions, without the unneeded attributes, etc.

Maybe it’s just me, but anyone else do their drawings in a text editor (including, but not limited to, SVG, MetaPost, pic, TikZ)?

CPOSC Travel

October 16th, 2009

So it’s the day before CPOSC starts this year. I still have 6 hours of Greyhound travel ahead of me later today and I’m currently waiting on the dryers to finish up so that I can finish packing clothes for the weekend. Todd Zullinger and Jon Stanley will be there this year and there are plans to do a GPG signing BOF, so I’ll be expanding my WOT as well.

CPOSC 2009

October 1st, 2009

So, I’ll be going to CPOSC 2009 this year (I was at 2008′s). I was wondering if any other Fedorans will be there. I know Yaakov Nemoy and Jon Stanley were there and I may have missed someone.

KDE packages for Fedora

September 27th, 2009

Recently, I compiled a list of apps from kde-apps.org that I thought would be useful in Fedora. In addition, I recently edited the wiki to move the table of requested packages to a page of its own. Ryan Rix is now taking that list and putting it into that table. If anyone sees any applications there that they would like, please add your name to the table and keep it up to date. If you need any help with a package or would like to know how to get started with packaging for Fedora, feel free to join #fedora-kde on irc.freenode.net (webchat link is here).

I’m not sure how long the table will take to propogate and I am only up to page 60 or so of the things on the kde-apps website, so keep an eye out for any applications or libraries you use or would like to maintain.

eeePC 900

September 26th, 2009

I know a while ago I posted that I wouldn’t get a netbook, but woot prices are hard to beat. I’m actually quite pleased with it. The keyboard could still use a few extra keys (right control is sorely missed with the new setup I’m attempting). Only issues I’ve run up against are the 4GB SSD (no second drive) and the camera which I would have liked to have.

This machine has proven to be very useful. Light and agile for class. Quiet, suspend/wake up in a decent time (in KDE, there are…faster ways however). A full KDE install fits on the machine (though I have nm-applet, but I removed basically everything GNOME-ish from the thing, even nodoka so it looks like X days) and I still have about 1GB of space left to clone repositories and hack around. RAM usage (it has 512MB) is amazing. KDE fits and operates in under 160MB of memory.

However, I do have something else I have been attempting to try out. I set up the antidesktop on it using ratpoison. After screen starts up, I have a grand total of…60MB of memory used. And that includes the htop instance used to view usage. I’d like to get some console apps running to try and stay in screen as much as I can, but mutt seems to be a pain to get to do what I do with a basically stock KMail (5 SMTP/IMAP accounts side-by-side), so I’ll end up using KMail at least and probably KNode as well since it’s the same package. I have Bilbo and Choqok installed for blogging and denting, respectively, as well. I wish there were command line clients for these (full read/write, not just posting), but this seems to be a dead end.

Besides the apps, I do have some things that I have been unable to get working nicely. If anyone else has a similar setup the current issues I am having with the ratpoison setup:

  • Losing session DBus connections from the screen instance when I restart ratpoison for config tweaking
  • wpa_supplicant magic (nm-applet dies with X and cnetworkmanager can’t find nm-applet configs to use those)
  • locking X and screen on lid close
  • sleeping on lid close (currently using a script to execute acpitool -s, which is very fast)

Any tips? My Google-fu has not turned up anything.

I am also learning to use the Colemak keyboard layout on the eee. The keyboard is different enough that switching between the two is easy. The biggest change (for me) will be that there aren’t any dead keys. I use us_intl normally and tend to type out “‘ ” a lot on non-us_intl keyboards.