Wednesday, December 26, 2007

Separate(ish) Bookmarks for Konqueror's Browser and File Manager mode

It's been ages since I've posted an honest-to-god HOWTO here. I suspect this is partly 'cause I haven't actually been tweaking my system all that much -- I've pretty much got my Feisty Kubuntu set up exactly how I like it, and the thought of messing about with it, just makes me feel tired. However, given that the 8.04 release of Kubuntu is going to come with the option of KDE 4.0, I may very well be tempted to reverse that stance, even though the KDE4 system is likely to be a bit buggy or featureless compared to the 3.5 series.

Anyways, onto the HOWTO. Once upon a time, I used Konqueror as both a browser and a file manager. It did both well, except I wasn't pleased with how it looked, and I wanted one set of bookmarks for the web, and one for my hard drive and not both at the same time. I also wanted one set of buttons for web browsing, and one for file browsing. How to resolve the dilemma?

Answer: metabar.

Ok, open up konqueror in file browsing mode: on kubuntu the easiest way to do this is to go to the systems menu applet (on a default kubuntu install, it's on the bottom panel next to the kmenu button) and open up, say, your home directory.

Now, under the view menu in konqueror, select "Show Navigation Panel". This can also be done by hitting the F9 button on your keyboard. A panel should appear on the left side of konqueror. From the choices on it, open the metabar.

The metabar basically provides you with information on each file you select: size, permissions, previews. It also comes with actions and links. Those last two are how you're going to customize konqueror.

Right-click anywhere in the metabar area and select "configure metabar". Under the "Actions" tab that opens, add any file-browsing specific actions you'd like (things like "open in terminal" or the "up" button.) Then, under the "Links" tab, and any file-browsing specific links you'd like, things like your home directory or network places. When you've got the configuration you'd like, go to the "Settings" menu and select "Save View Profile File Management" and save your configuration.

I personally find other options of the navigation panel to be useless and it's presence ugly, so I hide it by default. To do this, open a terminal and type:
kwrite ~/.kde/share/config/konqsidebartng.rc
and set the HideTabs value to equal true. Now when you open konqueror, only the metabar will be showing.

Finally, configure the main konqueror toolbar to include whatever buttons you like by right-clicking it and selecting "configure toolbar". I personally only keep web-specific buttons there, like back, forward, reload, home, etc. but customize it however you wish. Finally, consider adding some flair to your metabar by going to kde-look and searching for metabar themes. I personally like the Advance Blue theme from this set. To install them, simply download the file from the site, right-click the metabar, choose "configure metabar" and then under the "General" tab, press "install new theme" and select the file you downloaded. It will now be available as a theme option in the drop-down list next to the install button.

Monday, December 10, 2007

Two Things I Never Expected to Happen

Good grief, someone's read what I've written.

I started this web log mostly as a repository for the thoughts I have but didn't have anywhere to place. Sort of like a very public journal. I never really expected anyone to read what I write -- if this becomes a trend, I may have to actually start researching in more detail some of the positions I take on here. My last post is a good example: in the comments to my last post, you can see that Joe Shaw made the post I linked to as a joke. I like to think my point about the attitude in the community still stands, though I'm obviously mistaken about this specific instance. I apologize.

(as an aside: I'm hardly an expert on Open Source, either. My connection to KDE is the same one I have to Windows, in that I use it just about every day. I like to think that this affords a unique perspective, since most of the news I follow seems to come from developers. Still, I think it's important to see my opinions in that context.)

The other thing I never expected is the winning streak I've been on. The basketball team I coach, the Edge, is on a winning streak and that's a very strange place to be. This is my second season coaching youth girls basketball (third, if you count spring league last year) and the reversal of fortunes has been dramatic.

I began coaching last year because the C level team didn't have anyone to coach it. Parents usually don't like taking the role. They often don't know much about basketball or coaching and if they do, they often don't fancy the time commitment. Typically however, if someone steps up and offers to be head coach, a parent will volunteer to be assistant coach. And so it happened; we actually had three coaches that year. And we lost every game but one.

Part of the problem was inexperience. Most of our team hadn't played basketball before. Another problem was sheer desire. Teams that win are often teams that want to win: the teams that run hard, that box out, that give their all out on the court. We had our most success when girls gave second or third efforts, but it was hard to get that kind of thing going team-wide. Of course, my inexperience probably contributed to the problem, in that I didn't know how to fire the team up.

This year though, things have been different. Whereas last year I focused more on individual skills that the girls lacked due to inexperience (shooting, dribbling and passing), this year I'm coaching the B-level squad. The main difference is that I've been able to focus more on the team than the players: running things like an offensive framework, a couple of defenses and getting the two lines to gel together. And it's been great to see, as a coach. Not just the winning, which is a nice change of pace but ultimately secondary to seeing the team improve. And not just improving, but improving in the exact areas I've been coaching them in and seeing that translate to success in games. That's the kind of thing that gets you excited as a coach, and is why I continue to do it.

We're looking to move up from B3 to B2 after Christmas, and I think we can be successful in that caliber of ball. Good grief! Who knew I'd be saying that, back when the season started in September?

Saturday, December 8, 2007

Credit Where It's Due

I try to keep up with various open source news, since the software tends to interest me -- a quick look around the blog would tell you as much. So naturally, even though I am a KDE user, I follow Planet GNOME. And as I read it today, I had to laugh as I came across this post. Essentially, the poster is mad that a co-founder of GNOME, who is now working for Novell, has been looking over Excel, and said it was a nice piece of software. The poster now wants to know when Novell is going to stop sucking up to Microsoft.

Unfortunately, as it turns out, Excel is a nice piece of software. I mean, credit where credit is due: Excel hasn't got a lock on the industry by being a poor product. The program runs fast and has a better interface than OSS equivalents (I especially like how Excel will remind me about formula syntax when I type them in). Gnumeric doesn't have all the features Excel does. Open Office comes closer, but although it nominally has some of the same features as Excel, some of them (optimization and conditional formating spring to mind) are not nearly as advanced.

Posts like the one I linked too are worrying, if for no other reason than they show a polarization that doesn't make sense in software. It becomes a war, an 'us-versus-them' mentality where anything produced by the enemy is automatically considered inferior. And by trying to learn from what they did well, you're 'sucking up' rather than improving.

I realise that this is in part due to Novell's current pariah status in the community, but at least part of that status is this idea in the community that anything coming out of Redmond is automatically inferior and damaging. This isn't a healthy attitude. The Linux community needs to start looking at proprietary software and asking why those programs are succeeding, and what we can learn from them. Fact of the matter is, Microsoft's put a lot more effort into finding out what's important for users rather than developers. It's entirely possible that all that testing has resulted in unique insights -- and good software.

Sunday, November 25, 2007

Surviving Group Projects

With few exceptions, at some point in your university life you will have to form a group with others to complete some massive project. If you're in more of the academic subjects -- english and history come to mind -- you may be able to avoid this fate, but for the rest of us, having other random people you don't know from a hole in the ground determining at least in part your success is an unfortunate reality of university. And, it turns out, the working world.

Group projects are easy when you have a solid core of people who all contribute to the project, or when the project is small enough that one or two decent people can do it all even if most of the group is useless. But what do you do when you've got a huge project and some clear underperfomers to contend with?

Read my blog, that's what. I'm here to help. Here's 13 guidelines for surviving a group project when it's all on your head to do a good job.

  1. Exchange contact information. This includes specifying a preferred method of contact (likely email) and an expectation of how soon responses will be given. Make sure there is a penalty (most group projects have a peer evaluation component) for late responses to queries. A good rule of thumb is to forfeit 2% the grade if a group member does not respond within two business days.


  2. Divide up the project by tasks, not pages. Make sure that "writing the report" is its own task, unless the report is so long that each section should be written individually. If you divide up a report by pages, it doesn't flow well and sounds like it was made by many different people writing in many different styles.


  3. Hand in hand with point 2, don't worry about being exactly fair in the division of labour. Maybe someone has to do a bit more, but you'll have a better project if people (or maybe a smaller team of 2 or 3 people) handle a specific area. One area might be more work than the other, but it's better to have a little unfairness and a solid product than a poorer project that had the labour divided exactly equal among group members.


  4. Set up expectations for deadlines, as well as the marks lost if those are missed.


  5. Once you've identified underperfomers, focus them like a laser beam on whatever you hate to do. I hate market research, so I tried to focus my Marketing group on getting that done for me. I still had to do some (after all, they are underperformers) but it took the pressure off where I wanted it off the most.


  6. Set up collaboration tools. Especially Word's "track changes" feature. If multiple people are editing a report (and they should, even if one person wrote it), then you can easily have four or five version of the thing floating around. Compiling that can be a nightmare. So at the minimum, track changes. At best, slap the report (or lab, or database, or whatever) on a server like Google docs and allow for multi-person edits to the same document.


  7. Don't get mad; shame people. I find it more effective to go to someone who hasn't been pulling their weight with some of their work already done and a request that they finish it.


  8. Unless someone is a total slacker, it's best to not fight very much about lost marks due to work quality. If it's measurable (such as not responding to e-mails or missing deadlines), then by all means dock them marks, but even then it's better not to get into a war over it. All you'll do is gain an enemy, and you won't have what you really want: sleep, and that person's part of the project done.


  9. Don't be afraid to take a leadership position, especially if you're doing all the work anyways. Some people aren't really underperformers, they just need someone to tell them exactly what to do. If they are legitimately a bunch of slackers, then you're probably going to be up until 2 am finishing the stupid project anyways, and that makes your word law.


  10. If you do take a leadership position, always explain why you think your ideas are best. Accept criticism. Just because someone is an underperformer doesn't mean they don't have good ideas. If any arise, don't be too prideful to use them.


  11. For the love of God, don't do everything yourself. Just because you're surrounded by slackers doesn't mean you can't use their stuff. Keep it as a base, and shore it up with the grammer/research/wording/effort it requires to shine.


  12. Have face-to-face meetings as often as you need. If it has to be at 6 pm on a Saturday, do it. You often can't replicate that input over email.


  13. Make sure meetings are on task. Establish a rotating chair for the meeting, and make it that persons job to set the agenda and keep things on task. Everyone has better things to do than meetings, so keep them short, sweet and to the point.


Finally, I should stress that you should still be a team player throughout all of this. Never criticize people, just their actions (i.e. do not say "you're an idiot". Instead say "I don't think this section has been properly cited/researched/whatever", and then say why you think that.) Remember, the goal here is not to do everything yourself, but to get as much out of your underperforming group so you don't have to kill yourself doing everything to make the deadline. And finally, remember that not all groups are populated by slackers, and that people do have other things going on in their lives than the project -- so take that into consideration before you give into the urge to blow up at them.

Saturday, November 24, 2007

Here on the other side of November...

Wow, it's been awhile since my last post. November is project month at university, and since I'm taking business and that means almost every class has a group project. Most of them, naturally enough, are due sometime in November. However, the biggest of them, my Marketing project, has been mostly retired and this has given me something akin to breathing room.

Which is why I'm going to take the opportunity to blog about technology.

Has anyone here seen IBM's Lotus Symphony? My opinion is best summed up by: high hopes. Based on Open Office, the premier office suite available for the Linux desktop, Symphony gives the office suite on Linux more developers, and God willing, a better interface and functionality.

Open Office is a fine product, especially given it's price. But it's not nearly as good as MS Office, especially the 2007 version. This is more of a problem than with other apps, since the fact is people were not typing out documents on Wordpad before switching to Linux. For example, most people have not bought Adobe Illustrator, and therefore an equivalent if less feature-full program being available for free on Linux (Inkscape) is a selling point. But most people have been using some version of MS Office before switching, and therefore the higher cost of that program is considered sunk. So having a less feature-full program available for free becomes a liability, not an asset.

Just looking at the screenshots for Symphony though, it's looking like the interface is improving, and more importantly, moving away from being a simple MS Office clone. Spreadsheets needs some attention: optimization, anyone? Or how's about reminding me about formula syntax as I write them? Also, presentations needs some serious love. The key here it a) make more templates and b) hire decent graphics designers so they're slick. Oh, and would it kill anyone to make a "handouts" layout that includes lines for notes?

More than Symphony, though, I'm looking forward to KDE 4 making an appearance on the Linux desktop. Eventually.

I tried out what they're calling "Release Candidate 1", though the system is clearly not ready for production use. Having said that, I see enormous potential for KDE 4. The widgets, the smooth animations that are scattered throughout the system, the icon theme -- all look very slick and very professional. Assuming some non-KDE technologies can be easily integrated into the system, or ported over for KDE equivalents, I think that the Linux desktop will begin to match or surpass the offerings from private companies, though we'll still lack in 3rd party apps.

The non-KDE technologies I'm thinking of here are PulseAudio, Avant Window Navigator and Compiz Fusion: the most exciting Gnome-based technologies out there. I know Kwin now does compositing, but I'd like the zoom, desktop cube and tab windows features from Compiz (some of the visual flash would be nice too, but not necessary) as I find those rather handy for windows management. As far as AWN goes, it's the best damn dock going. Period. With some KDE-specific plugins, I think it could feel right at home. Finally, I don't know much about PulseAudio, but being able to control sound on an app-by-app basis sounds very, very cool.

Saturday, November 3, 2007

NaNoWriMo!

It's that time of year again!

Yes, it's officially National Novel Writing Month, so naturally that means I'm already 2 days behind in my writing. Still, this year is my year: 50 000 words by November 30th or bust baby!

(And in true Geek fashion, I'm gonna craft the thing entirely in FOSS -- most likely KWord, since I'm a bit of a KDE fanboy. For awhile I was contemplating writing the thing in Vim using Dvorak, but then I realized even I have my limits.)

Saturday, October 27, 2007

Alberta Advantage?

So, here in Alberta we've been having a debate about energy royalties. If you're not from around here, allow me to sum up the history of the argument:
  1. In the beginning, Alberta had no money. Then we discovered oil. And for a time it was good.

  2. Now Alberta has lots of money. So do the oil companies. We regularly post billion-dollar surpluses, they regularly post billion-dollar profits.

  3. Recently, there has been a feeling that oil companies are getting too much money for what, by rights, is a public resource. So, a panel was commissioned to review the issue, and found Alberta could up its' resource take by 2 billion. The industry protested. After reviewing the panels' recommendations, the government raised its' take by 1.4 billion. The industry continues to protest. Now times are less than good.

My take on the whole issue is that I can support raising energy royalties in principle IF that money is then reinvested in growing Alberta's economy in other sectors. As it currently stands, Alberta has one industry driving the economy: oil. I don't see anything wrong with expanding the number of industries propelling us forward out a bit.

But I don't support increasing royalties. Why? Because it's not going to be used for growing our economy. It'll go where most of the budget goes: to various peoples' pet causes. Someone will say "it's a crime that in a province as rich as Alberta we can't afford [more health care, better roads, more schools, whatever]" and the government will then fund it.

There's nothing wrong with any of those things I mentioned as pet causes, and these are things the government must address... but the economy comes first. And if the economy suffers, by taking money out of revenue-producing industries and placing it into things that do not produce revenue, then ultimately revenue will drop and we still won't have any funding. If jobs are lost, projects shut down, junior companies can't viably explore, the whole thing falls apart.

I really get the sense that people are thinking about this issue with their hearts not their heads. They look at executive compensation and say "that's not fair! I want some of that!" And so when they get the chance, they tell the government they want to put the thumbscrews to the oil industry. That's an emotional reaction, not a logical one.

Because logic would point out the thumb in the screws is the same one attached to the hand that feeds.

Wednesday, October 10, 2007

Diversity Downsides

So Mozilla has recently mentioned that system integration is a key goal for Firefox 3. Rather predictably, they don't talk about integrating with Linux at all, just OS X and Vista. Judging by the comments to the blog post, Linux users appear to be miffed about this.

Which is odd, since this is a hole the Linux community has dug themselves. Listen, I know that software diversity is a strength in many ways, but the fact is it comes with some downsides. Even whittled down to the major ones, Mozilla would still be looking at integrating into 5 or so distros, some of whom have 2 (or more) desktop environments for a user to choose from. Oh, and they're supposed to do this for a tiny fraction of the desktop market.

Bottom line? Saying that the Linux market can't justify the investment, and that in any event even if they did make a theme it couldn't possibly fit every Linux anyways is perfectly valid. And to act like they've somehow dropped the ball because they aren't willing to spend money to develop styles/themes for you to use for free makes the community sound a little spoiled, doesn't it?

Tuesday, October 9, 2007

Improve True Type Font Rendering on Feisty

As a student, I get assigned written reports with a fair amount of regularity. It's not uncommon, when going over the instructions, to read that the assignment must be X pages long, be double spaced, have 1-inch margins, and yes, use Times New Roman. Turns out that teachers are now wise to the formatting tricks we've been using to slip in under page counts, so formatting has been more-or-less standardized.

Long story short, even if I'm on Linux, I have to be using Microsofts' True Type fonts anyways. Given that, I suppose I may as well make them look pretty.

The first order of business is to install the fonts. From a terminal type:
sudo aptitude install msttcorefonts
Now, open up your apt sources list:
kdesu kwrite /etc/apt/sources.list
Ok, scroll to the end, add the following to the file and save:
deb http://www.telemail.fi/mlind/ubuntu feisty fonts
Now type:
wget http://www.telemail.fi/mlind/ubuntu/937215FF.gpg -O- | sudo apt-key add -
Install the new rendering packages:
sudo aptitude update && sudo aptitude install libfreetype6 libcairo2 libxft2
sudo dpkg-reconfigure fontconfig-config
(When prompted choose Native, Always, No bitmapped fonts, in that order)
Finally, download the package from here:
http://www.osresources.com/files/centos-windows-fonts/fontconfig.tbz
and install it with:
sudo tar xvjpf fontconfig.tbz -C /etc/fonts/

Personally, I've enabled KDE's anti-aliasing settings (found under System Settings --> Appearances --> Fonts). They're using full subpixel hinting, but are excluding the range from 0.0 to 8.0. So far, that seems to make TrueType fonts look more or less as they do on Windows.

Saturday, October 6, 2007

Improve Ubuntu Boot time and Responsiveness

Whether or not these changes will have any effect depends largely on your specific hardware setup. Still, I doubt this would actually harm anything.

First, are you using a dual-core or other processor that supports hyperthreading (also called multithreading)? If so, open up /etc/init.d/rc:
kdesu kwrite /etc/init.d/rc
Now, find the line that says "CONCURRENCY" and make it read "CONCURRENCY=shell".

Secondly, do you have a lot of RAM? If so, you probably don't need your computer to touch your swap file much. Open up /etc/sysctl.conf:
kdesu kwrite /etc/sysctl.conf

Now, scroll to the bottom and add the line "vm.swappiness=0" to the file. Save, and exit.

Are you using broadband? Open up /etc/sysctl.conf again:
kdesu kwrite /etc/sysctl.conf
Now, scroll to the bottom and add the following to the file:
net.core.rmem_default = 524288
net.core.rmem_max = 524288
net.core.wmem_default = 524288
net.core.wmem_max = 524288
net.ipv4.tcp_wmem = 4096 87380 524288
net.ipv4.tcp_rmem = 4096 87380 524288
net.ipv4.tcp_mem = 524288 524288 524288
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_no_pmtu_disc = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_ecn = 0
net.ipv4.route.flush = 1
Save and exit. Type:
sudo sysctl -p
and you're done.

Finally, since you made a bunch of changes, it's best to reprofile your boot-up sequence. You can read more about it here. Basically the system reads all the files it needs to boot up, puts them in order, and saves the list so it can boot faster the next time. Here's how you do it:

  1. At the bootup menu (GRUB), select your default kernel. You may need to press ESC to see this menu.

  2. Press e for edit.

  3. Choose the first line (it should start with "kernel"). Press e again.

  4. Move to the end of the line, then add the word profile. Press enter.

  5. Press b to boot.

  6. Let the system boot to the login screen, and wait for all disk activity to stop

  7. Reboot your system, and enjoy the results

It's a good idea to reprofile:
  • After you install Ubuntu and get the system set up the way you like,
    After doing a major upgrade, such as to the next version of Ubuntu. No need to do it for regular updates, etc.

  • After setting up prelink (if you use it), since that could cause bootup files to change locations on your hard drive

  • After restoring your entire system from backups, as that would change locations of files on your hard drive.

Friday, October 5, 2007

openSUSE 10.3 -- First Impressions

I'm something of a distro junkie, so VirtualBox is a lifesaver. It allows me to test out the latest and greatest, all the while keeping with my trusty Feisty Fawn install. Currently this means that I'm exploring the latest offering from the openSUSE project, version 10.3.

The last time I used SuSE regularly was when SuSE 10.0 was brand spankin' new. At the time, I was new to Linux, and the two distros everyone mentioned as good for newbies like me were openSuSE and Ubuntu -- the latter of which, for those keeping score at home, was version 5.04 (Breezy). At the time, getting wireless in Linux nothing short of a herculean task. Even after getting ndiswrapper under my belt, I to this day have no idea how I got my WPA wireless network working in Breezy. As I didn't know what I'd done, or how to switch networks, I tried openSuSE, which had better configuration tools.

Cut to today, and SuSE still has better configuration tools, although Ubuntu has closed the gap considerably. However, I've stuck to Ubuntu for the following reasons:

  • Better software installation. Installing software in SuSE never consistently worked for me.

  • Huge installs. You had to download 5 installation disks, and SuSE came with tons of software I never used. Sure, you could prune it during install, but that was a pain and initially I didn't know what to cut.

  • SuSE was slow! The main culprits here were the bootup time and YaST, the main configuration tool. I liked YaST in principle, since it was convenient for managing the system, but it took ages to boot up.

  • Third-party repositories. Increasingly, I found that while just about everyone provides an Ubuntu-compatible download, not everyone has a SuSE version. Again, getting software was harder in SuSE

Well, with version 10.3, I think it's safe to say that SuSE has begun to address these concerns. The improved SuSE experience begins with the download: you can either download a CD with Gnome or a CD with KDE or a DVD that includes both. I've even heard that an installable live CD a la Ubuntu will be released soon.

Installing openSuSE has always been a) easy and b) long and in 10.3 things are no different. It took about 45 minutes to install to my virtual hard disk using 512 MB of RAM for the guest operating system. By comparison, Ubuntu installs in about half that time. However, SuSE does ask you whether or not you'd like to install Adobe Flash, Sun Java and other non-oss software, allowing for an experience that 'just works' out of the box -- assuming that is, you have access to the non-oss repositories, either through the internet or the downloadable extra CD. SuSE also legally plays mp3 files out of the box -- something that has been a long time in coming for most Linux distributions.

SuSE has always been a beautiful distro, and that's still true in 10.3. Although personally I preferred the blue-themed SuSE of yore, the new green theme is distinctive, professional and smooth from the boot screen right until you hit your desktop. You'll also be hitting that desktop sooner, as openSuSE has improved it's boot times. Though it still lags behind the time it takes Windows to boot (even windows running in a VM), SuSE boots in more or less the same time it takes Ubuntu to do so.

Installing software has improved a ton. I really can't emphasize enough how much. Firstly, YaST is faster, though still a little on the slow side. It also has an annoying habit of scanning repositories rather than caching them, but that behavior can be changed from the default. So far, everything I've installed from SuSE has worked great, which is more than I could say the last time I used it. I haven't tried it, but SuSE's one-click install also holds a lot of promise. Installing Compiz Fusion all in a single click would be nothing short of amazing.

The default applications that come with SuSE have been slimed down, which makes it much easier to find things. Amarok, K3B, OpenOffice, Gwenview... all the 'best in class' applications you've come to expect out of a basic linux install are there. I still wish the kickoff menu was more like the SLAB found in Gnome, as it takes up way too much screen real estate... but it's still a step in the right direction.

So, am I going to install SuSE on my real computer right away? Nope. If your current distro is working for you, and Feisty is for me, I really see no reason to change. However, next time I upgrade, I will be sorely tempted to choose SuSE. The professional look, centralized configuration tools and increased ease of use are all strong arguments in it's favor. For me, the only unanswered question about SuSE is one of third-party support: for example, how hard will it be to get Avant Window Navigator installed? With Ubuntu I can more or less expect a .deb, but not so with SuSE. There again, by the time I'm ready to upgrade maybe I could more or less expect an rpm: if SuSE continues to build on the improvements they've made, the distro will be a strong contender against Ubuntu in the Linux desktop market.

Sunday, September 23, 2007

Speed Up and Integrate Firefox

Don't get me wrong, Kubuntu comes with a very capable web browser in Konqueror -- except that Konqueror isn't compatible with everything. Although I love Konq's integration with the rest of KDE, it doesn't work well with Facebook or my University's website or Windows Live Mail (which I still use, since I've had that email since grade 7 and everyone knows it by now. Also it's a good email to toss at the various companies that want to know what mine is). So I've switched to Firefox.

Speed Up Firefox

Taken from this website, this section is all about getting firefox to load webpages faster. First, type "about: config" in the location bar.

  1. Search for network.http.pipelining, and change its' value to true

  2. Search for network.http.pipelining.maxrequests, and change its' value to 8

  3. Search for network.http.proxy.pipelining and change its' value to true

  4. Search for network.dns.disableIPv6 and change its' value to true

  5. Search for plugin.expose_full_path and change its' value to true

  6. Right click anywhere in the list, select new, then integer. Create a value called nglayout.initialpaint.delay and set its' value to 0

  7. Right click anywhere in the list, select new, then integer. Create a value called content.notify.backoffcount and set its' value to 5

  8. Right click anywhere in the list, select new, then integer. Create a value called ui.submenuDelay and set its' value to 0

  9. Right click anywhere in the list, select new, then integer. Create a value called browser.cache.memory.capacity and set its' value to the maximum memory you wish Firefox to use at a given time. 16MB is a good default, so enter 16384

  10. Search for layout.spellcheckDefault, and set its' value to 2. Now Firefox will check spelling on both input fields and text areas

Integrate Firefox with KDE


Now that we've got Firefox loading webpages faster, it would be nice if it started to use KDE programs and dialogs rather than the default Gnome ones or embedded players. So let's teach the old fox some new tricks.

  1. Go here and download the kgtk deb. Right-click the file, and install it. Now, open up the KDE menu editor (select "run command" from the menu and type in kmenuedit) and find the entry for Firefox. Change the command value to read "kgtk-wrapper firefox %u", save and exit. Now Firefox will open files in the usual KDE style.

  2. Open up any webpage in Firefox, go to File, and tell Firefox to print the page using "PostScript/default" -- it should be the default if you haven't installed any printers yet. Now type "about:config" into the location bar again, and search for print.printer_PostScript/default.print_command. Change its' value to read kprinter. Now, right click anywhere in the list, select new and boolean. Create a value called print.always_print_silent and set its' value to true. Finally, right click anywhere in the list, select new and boolean. Create a value called print.postscript.cups.enabled and set its' value to false. There! Now Firefox will use the normal KDE dialog to print files

  3. Open up about:config. Search for network.protocol-handler.external.mailto and make sure its' set to true. Now, right click anywhere in the list, select new and string. Create a value called network.protocol-handler.app.mailto and set its' value to kmail. Firefox will now open e-mail files in kmail.

  4. Open up adept, and install the kget program. Now, download the Flashgot extension. Restart Firefox, and configure Flashgot to use kget as a download manager. (Personally, I like Firefox's native download manager, so I don't use this tip. But if you wanted the complete KDE Firefox experience...)

  5. Open up about:config. Search for browser.download.hide_plugins_without_extensions and set its' value to false. Now, go to the Edit menu, select preference, then content and then click the manage button next to file types. Change all the values dealing with audio files to use "/usr/bin/amarok" to open them. Now when you download an mp3 Firefox will automatically play it with KDEs' premier music player.

  6. Now that we've got Firefox all KDEified, we may as well make it our default browser. Open up System Settings and select default applications. Select Webbrowser and set it to open Firefox in the following browser: kgtk-wrapper firefox. Apply the settings and you're done!
There! Now your speeded up Firefox integrates into KDE almost as well as Konqueror, while allowing you to maintain compatibility with just about every site on the web.

Saturday, September 22, 2007

Speed Up Amarok Collection

Whereas my last two posts were compiled from several different sources, this one was ripped off wholesale from this fellows' blog. I reproduce it here largely for my own convenience.

First, install MySQL:
sudo aptitude install mysql-server mysql-client
. Next, give yourself a MySQL password (replacing the capitalized work PASSWORD with a password of your own invention):
mysqladmin -u root password PASSWORD
Finally, create the database for Amarok (once again substituting the password you chose instead of PASSWORD).
mysql -p -u root
CREATE DATABASE amarok;
USE mysql;
GRANT ALL ON amarok.* TO amarok@localhost IDENTIFIED BY 'PASSWORD';
FLUSH PRIVILEGES;
quit
Fire up Amarok, choose settings, configure Amarok, Collection. Use the following settings:

Hostname: 127.0.0.1
Database: amarok
Port: 3306
Username: amarok
Password: Your Password

Now Amarok's collection should be much speedier.

Get Screenlets working with Kubuntu

Right, well, you've managed to get yourself a nice composited environment to play with. One of the coolest features of this is the "widget layer", which basically functions like the Mac OSX Dashboard. Strictly speaking, any program could be a widget, provided you define it as such in the settings. However, only screenlets are designed to be displayed on the widget layer, and I ran into problems when I tried to use superkaramba widgets with it.

Install the Screenlets Engine

So, our first order of business is to install Screenlets. Open up your apt sources list as root:
kdesu kwrite /etc/apt/sources.list
Now add the following to it, save and close the file:
deb http://hendrik.kaju.pri.ee/ubuntu feisty screenlets
Next update your list and install the screenlets:
sudo aptitude update
sudo aptitude install screenlets python-gnome2-desktop
Now, open the compiz settings manager, and select the window rules plugin. Add "class=Screenlet.py" to the widget line. Your screenlets should be working now. Test them out by opening the screenlets manager. Simply select one of the default screenlets to run and click the Launch button to start them. The screenlets can then be seen by pressing F9.

Install individual screenlet widgets

Widgets can be downloaded from here. To install them, simply extract them and add them to the /home/[username]/.screenlets folder (if the folder doesn't exist just create it).

Autostarting Screenlets

In the screenlets manager there's an option for autostarting them, but it doesn't work on KDE without some work. First, make the folder /home/[username]/.config/autostart. Now, in the screenlets manager, select the screenlets you want to load and tick off "automatically start on login" (it's in the bottom left). For each one, a file ending in .desktop will be created in the autostart folder you just made. Move each one to KDE's autostart folder which is /home/[username]/.kde/Autostart.

Create a text file named "screenlets.sh" in KDE's autostart folder. Add the following to the file and then save:
#! /bin/bash
/usr/local/share/screenlets-manager/screenlets-daemon.py
Now right click the file, select properties, then click on the permissions tab. Set the file to executable, and hit ok. Finally, add the line "Type=Application" all the various .desktop files you've transfered over.

That's it! Now your screenlets will load automatically the next time you sign in.

Friday, September 7, 2007

Integrate Compiz Fusion with Kubuntu

I keep a private list of all the changes I make to my system, so that if I have to reinstall I can look at it and remember how I did things. It seems to me that it makes much more sense to keep this list online, so that maybe someone else can see it and benefit.

So, you've figured out that your graphics card can run compiz fusion (beyond the scope of this article), and you've got it installed (you can find a guide for that on Feisty here.) But when you run it on Kubuntu, the system automatically loads the default window manager, kwin. So when you start Compiz Fusion, there's a brief flash where the wallpaper goes black -- which is ugly. Besides, loading kwin when you don't intend to use it is a waste of resources and time. So let's get Kubuntu to load Fusion when you log in, instead of kwin.

First, open up a terminal and type:
kdesu kwrite /usr/bin/startcompiz.sh

Now, what you have to put in here will vary by your video card manufacturer. Choose the correct one, enter the following, and save:

Nvidia
#!/bin/bash
compiz --replace --indirect-rendering --sm-disable ccp &
sleep 5
emerald --replace &

ATI
#!/bin/bash
LIBGL_ALWAYS_INDIRECT=1 compiz --replace --indirect-rendering --sm-disable ccp &
sleep 5
emerald --replace &

Intel
#!/bin/bash
INTEL_BATCH=1 LIBGL_ALWAYS_INDIRECT=1 compiz --replace --indirect-rendering --force-aiglx --sm-disable ccp &
sleep 5
emerald --replace &

Now make it executable:
sudo chmod 755 /usr/bin/startcompiz.sh
Ok, now check to see that it works. At a terminal type:
./startcompiz.sh
And see if Fusion loads as you want it to. If it does, great, onto the next step. Open the file:
kdesu kwrite ~/.bashrc
Now add the line:
export KDEWM=startcompiz.sh
Save, and you're done! Log out and then back in, and Compiz Fusion should automatically be loaded as your window manager.

Tuesday, April 24, 2007

And So it Begins

Arguably, I should start a web log (I have a mild dislike of portmanteaus. There's a story behind that, but it's not interesting or relevant) when I have time to write more of an introduction, but that's simply too easy. Far better to make a quick post in between studying for my exams.

On that note, there are some things I intend to post about in the next week. Heroes of Might and Magic, Ubuntu 7.04 Fiesty Fawn, basketball, and the interview process for a new job are all likely candidates for posts.

But like I said earlier, studying calls and I must heed it's siren song.