Jan 17

The first non-beta version of Flash 9 for Linux is out, you can download the installer from Adobe’s site. I downloaded the tar.gz installer and had no problem whatsoever installing it. The instructions are on the download page, and all you’ll need to know before hand is where your browsers are installed to. To find out, you can use the package management tools included in your distro.

Fedora:

rpm -ql firefox

This query will give you a lot of information (you might want to pipe it to less). What you want to zero in on is the directory that is referenced most, on my system it’s /usr/lib/firefox-1.5.0.9/. You’ll notice a lot of references to /usr/share/ and can pretty much ignore them. That directory holds icons, .desktop files and other shared objects.

I did the same for SeaMonkey (rpm -ql seamonkey), the install location for the current version of the monkey is /usr/lib/seamonkey-1.0.7/.

Ubuntu:

dpkg -L firefox

That’s another command that will hand you TONS of information. Again, I only care about the installation directory, I know from using Ubuntu that the standard application install location is /usr/lib/[installdir]. So to clean up the output, I used grep to filter out the data I don’t need (you could do the same on the Fedora example above).

dpkg -L firefox |grep /usr/lib

That gave me something that looked like:

/usr/lib
/usr/lib/firefox
/usr/lib/firefox/firefox
/usr/lib/firefox/libgfxpsshar.so
/usr/lib/firefox/libgkgfx.so
/usr/lib/firefox/libgtkembedmoz.so
/usr/lib/firefox/libgtkxtbin.so
/usr/lib/firefox/libjsj.so
[snip]

From that I can see that Ubuntu installs Firefox to /usr/lib/firefox.

I also use SeaMonkey on Ubuntu, but I had to manually install it. For that reason, dpkg has no clue as to where the software is. I chose to install it to /usr/local/seamonkey, which is the location that the SeaMonkey installer suggests. I just keep that in the back of my mind or I could enter a locate seamonkey. That will return a lot of hits as well and will look something like:

/usr/bin/seamonkey
/usr/local/seamonkey
/usr/local/seamonkey/install.log
/usr/local/seamonkey/registry
/usr/local/seamonkey/libplds4.so
/usr/local/seamonkey/libxpcom.so
/usr/local/seamonkey/libmozz.so
[snip]

Now that I know where my browsers are installed to, I can run the Flash installer and give it the correct path to each browser when asked.

written by M@ \\ tags: , , , , , , , , ,

Jan 07

Installing DD-WRT on the Linksys WRT54GL went pretty much as the installation instructions said it would. I made it a point to follow them EXACTLY. Before getting started, I reviewed a lot of the info on the wiki pertaining to my particular router model as well as others.

Firstly, I powered up the router and performed a hard reset (hold the reset button down for 30 seconds). This just ensures that the router is using its factory default configuration. I then unplugged my Ubuntu Edgy machine from the old router and connected it to the WRT54GL. I reconfigured my network interface from a static address to DHCP and renewed my IP. I did this from the command line so it looked like sudo ifdown eth0 ; sudo ifup eth0.

The firmware installation is done from the router’s web based administration panel, so using Firefox 2.0.0.1 I logged in and navigated to the firmware upload administration tab. I used the browse button to locate dd-wrt.v23_generic.bin (which I had downloaded and extracted when I ordered the router) and clicked upgrade. After a few moments, I received a page telling me that the upload was successful and I walked away from the whole project for 5 minutes (as the wiki instructed me to. I wanted a beer anyway).

Time passes…

Back at the keyboard now, I click the Continue button and I’m presented with a white page and some fields asking for my username and password. I close Firefox, perform another hard reset of the router, open Firefox again and enter the address of router. Just like magic, I’m presented with the DD-WRT configuration pages of the router. Success!

Since it’s late and I just want to get things working, I’m only doing the basics, setting up static DHCP and a new wireless SSID.

Step one, change the default password from “admin” to something much, much better. Next, I collect all of the MAC addresses from the machines on my network and make my way to the Administration/Services tab. There, I assigned the MAC addresses to host names/IP addresses and configured my LAN domain name (just something I like to play with). I started testing DCHP by connecting to each of the Linux machines, changing them from a static to a DHCP configuration and renewing the IP address (same commands as above). Flawless! With the Linux machines done I configure the rest of the machines on the network the same way.

Next, I create a new wireless SSID and configure my two wireless machines to associate with it. This is where I had a little trouble. Everything but the Ubuntu install on the laptop connected without issue. For whatever reason I just can’t get the bcm4306 based wireless card to associate with the router using manually configured NDISwrapper. I’ll revisit this when I’m not so tired :)

Update: I think I have this fixed, I’ll tell you how in another post

I know I said I was only doing the basics, but I had to try SSH. So back to the Services tab, I enable SSH management (and disable Telnet as I’ll never use it) and click the Reboot Router button. Next, I open a terminal session and enter ssh dd-wrt. I log in with my user/pass and I’m at an ASH shell prompt. The output from a uname -r reads like Linux DDWRT 2.4.34-pre2 #170 Fri Sep 15 20:10:21 CEST 2006 mips unknown. Pretty sexy :)

All in all it was a satisfying experience. I’m running Linux on my router and there’s a LOT of cool things I can do. I haven’t scratched the surface yet, I’ll be exploring options for a while and when I come across something sweet I’ll post about it here. If you’re at all interested in exploring DD-WRT, start by checking out the compatibility list and reading up on the features. The wiki is a great place to start. I had no trouble ordering a 100% compatible router for around $55.00 US (there was a rebate).

If you’re new to Linux and don’t want to have to manage your router from a command shell, no worries. The web configuration pages are extremely useful and cover the full configuration of the router in a point and click fashion. You just can’t go wrong :)

written by M@ \\ tags: , , , , , ,

Nov 30

Fedora has decided not to provide an update to Firefox 2.0 (FF2) for FC6. I personally want to use FF2 on my Fedora box and I set out to find a way. It’s not exactly straight forward, but it’s not difficult. There are many ways to do this. This is how I chose to make it work.

First, download the FF2 tarball from http://getfirefox.com/ to your home directory. Then extract the tarball to the /usr/local/firefox directory and rename it to firefox2 (to prevent confusion)

su -c 'tar -xzvf /home/[username]/firefox-2.0.tar.gz -C /usr/local’

su -c 'mv -v /usr/local/firefox /usr/local/firefox2'

You need to close any running instances of Firefox for the next step to work. If you’re viewing this with Firefox, you’ll need to print this page or copy the instructions into a file on your machine.

If you get errors complaining about libstdc++.so.5 when you execute the next command, perform a su -c 'yum install compat-libstdc++-33' then run it again.

To prevent potential damage to your existing profile/plugins, we need to create an FF2 only profile. Start FF2 with the profile manager;

/usr/local/firefox2/firefox -ProfileManager

    1. Click Create profile, then Next to create a new profile
    2. Name the profile FF2
    3. Click Finish
    4. Click Exit

There are now two profiles in your ~/.mozilla/firefox directory, the default profile will be used by Firefox 1.5, and we’re going to configure FF2 to use the one we just created.

su -c 'echo -e \#\!/bin/bash\\n/usr/local/firefox2/firefox -P FF2 |tee /usr/local/bin/firefox2'

su -c 'chmod a+x /usr/local/bin/firefox2'

Explanation:

The echo command uses tee to create a simple BASH script in /usr/local/bin. I put the script there so that it would already be in my path and easy to run via the command line (CLI) or a run application dialog. The script will execute FF2 and specify that we use the FF2 profile. To view the script, perform a less /usr/local/bin/firefox2.

The chmod command made the script executable by all users on the system.

Notes:

You now have FF2 running on your machine without mucking up your FF 1.5 install or the plugins. All of the dependencies were maintained so programs like yelp (which depends on FF 1.5) still work.

Your distro has no idea that you’ve just installed FF2, it doesn’t exist in the RPM database and therefore won’t be updated when newer versions of FF2 are released. You should run FF2 as admin (su -c firefox2) and choose Help > Check for Updates on a regular basis. If you don’t usually follow FF releases, I would suggest picking a day each week and just performing that task.

Here’s the less than good news. Your bookmarks, plugins, history, etc will not sync up between versions. If you want to use a particular plugin in both browsers, you’ll need to install it to each version. To be honest, I haven’t looked back since using FF2, all of the plugins I care about have been released for it and I dig the changes to the program.

If you have multiple users on your machine, each of them will have to create an FF2 profile. Because I specified that profile in the startup script, they will be presented with the profile manager the first time they launch firefox2. Just make sure they create an FF2 profile, else they’ll be facing the profile manager every time they launch the browser.

Finally, to set FF2 as your default browser in Gnome, choose System > Preferences > More Preferences > Preferred Applications and change firefox to firefox2. You could also answer yes when prompted by FF2 to make it your default browser.

Optional:

If you want to create a “Firefox 2 Web Browser” menu item for all users on the machine, paste the command below into a terminal window.

su -c 'echo -e \[Desktop Entry\]\\nVersion=1.0\\nEncoding=UTF-8\\nName=Firefox 2 Web Browser\\nGenericName=Web Browser\\nComment=Browse the Web\\nExec=firefox2 %u\\nIcon=firefox.png\\nTerminal=false\\nType=Application\\nStartupWMClass=Firefox-bin\\nMimeType=text/html\;text\/xml\;application\/xhtml+xml\;application\/vnd.mozilla.xul\+xml\;text\/mml\;\\nX-Desktop-File-Install-Version=0.10\\nCategories=Network\;Application\;X-Fedora\; | tee /usr/share/applications/mozilla-firefox2.desktop’

written by M@ \\ tags: , ,

Nov 06

If you’re a recent Windows to Linux convert, you might find the default behavior in Firefox’s address bar a little annoying. In Windows, clicking into the address bar would select the entire URL, you could then just start typing to wipe out what’s there and enter a new address. I’ve found that the Linux Firefox defaults to just dropping your cursor into the address bar and you either need to double-click to select all or use some other method of clearing the address bar. If you’re more comfortable with the “click selects all” method do the following:

  1. Open Firefox
  2. Enter about:config into the address bar and hit Enter
  3. In the Filter field enter the text clickselectsall
  4. Double-click the preference name browser.urlbar.clickSelectsAll entry (doing so will change the value to true)
  5. Restart Firefox

That’s all folks, single clicking in the address bar now selects all.

Note: some distributions may have have this set for you, I can only tell you that Ubuntu and Fedora do not.

written by M@ \\ tags: