Planet Larry

May 23, 2008

Jason Jones

Job Security

I've been pondering on how I am to write about this without seeming haughty or prideful, because quite honestly, I feel nothing more than blessed beyond words.

When I was offered this job, it just felt right.  Six months previous to my being offered this job, I was offered another job in SLC which seemed right in every aspect but the fact that it was in SLC.  I decided I'd take it, but after making the decision, it did not feel right.  It just didn't jive with my mojo, ya know?

Well...  I've been at Nature's Way now for almost a full year.

We've got a new server, a new website, a new sales reporting system, and I'm working on getting the website admin system up.  Life is good.

If you didn't get it in the video, might I say that today two of the three owners of this  multi-million (possibly billion) dollar company came to my office to tell me what a great idea it was to hire me.

First, the CEO came in smiling and said something to the effect of, "In the executive meeting today, lots of good words were said about you."

Then, just a couple of minute ago, the CFO came in and he, being a bit more of a relaxed guy said, "Scott (the President of Marketing) said, 'Hiring that guy was the best decision....  He has saved us so much money.'"

What wonderful words to hear in this time of economic trouble in the USA.

Anyway...  I just thought I'd write this down.  I almost wanna celebrate.

Also, for those of you who don't know, Nature's Way was a 100% microsoft shop.  The website was served on an IIS server running Windows Server 2003, using ASP and MSSQL as the scripting and database technology.

It now uses Gentoo Linux as the OS, running Apache as the server.  The scripting language is PHP and it's connected to a Postgres database.  All open-source, 100% free software.

Yeah, I'd say we're saving a load of money from the change.

Thank you, open source technology.  You're paying my bills quite well these days.

Maybe I should ask my boss if he could throw in a turbo-charger for my Mustang as a "thank you." *wink wink*

May 23, 2008 04:36 PM :: Utah, USA  

Jürgen Geuter

Linux Sucks-Rules-O-Meter

To cheer up all the Gentoo users I give you a like to the result of the Linux Sucks-Rules-O-Meter: Gentoo is by far the one that "rules" the most and most others "suck" more.

It's just the result of a perl script searching altavista for "DistroX sucks" and "DistroX rules" but still it's funny to see the results. Of course Ubuntu gets bad results because of its mindshare and because it's a beginner distribution that has many people trying it out and bashing it when it does not work but I had not thought that SuSe would be that close to Ubuntu. Nothing serious but still fun.

The sourcecode is free and you can run your own Sucks-Rules-O-Meters with it (if you can bear to fiddle around with Perl).

May 23, 2008 02:18 PM :: Germany  

Jens Mayer

MUTO - Bewegende Wandmalerei

Ich habe nicht die geringste Ahnung, wie oft der Auslöser hier gedrückt werden musste oder wie lange der gesamte Schaffensprozess an sich gedauert haben mag - es ist das Ergebnis, welches mir bekannt ist und sich mit Superlativen gerecht bewerten lässt. “MUTO - A wall-painted Animation” von BLU aus Buenos Aires. Atemberaubend.

Via Hannes Blog.

May 23, 2008 01:08 PM :: Baden-Wuerttemberg, Germany  

May 22, 2008

Zeth

Firefox is your nanny?

Extensions are cool

Extension frameworks are a good way to add new functionality to large applications that are messy to alter directly, they also help to quickly add functionality now, without having to wait six months for the next release.

The whole fun of extensions is that you can make your own and download random ones from the Internet, try them out for a bit, remove the ones you don't like, share the ones you do.

This of course implies two things. Firstly, that the extension interface is well thought out so that a badly written extension does not crash or unexpectedly interfere with the main application. Secondly, that the user who installs the application is adept enough to know what they are doing.

The killer feature of Firefox has been its extension framework, having hundreds or even thousands of useful extensions is what has enabled Firefox to break into the IE-dominated browser market where so many have failed.

All your extensions belong to us

Firefox 3 has changed many things compared to previous versions. One unexpected change is that the extension framework has been locked down.

I have mixed feelings about this. I understand there is a balance between on the one hand, fun and spontaneity, and on the other hand, security and protecting clueless people from themselves. However, for me, I hate software designed as a jail for idiots. That is why I refuse to use Windows for anything beyond testing that web applications work on it.

Firefox 3's extensions framework has a new DRM-like security barrier. You have to either submit your extension to be vetted and hosted by Mozilla, or you must use SSL, or use cryptographic keys.

I am all in favour of cryptography (as long as it is open for everyone to play), but I would be worried if this implementation makes it harder for people to write and share updates.

Computer says no

I tried to install an extension the old fashion way, by going to the author's homepage and clicking on link to install the extension.

Firstly, there a warning popped up, the same warning that was also in Firefox 2:

/images/posts/firefox/firenanny1.png

So I clicked "Allow" and then reclicked the install link.

Then, like a naughty child, we have to wait 4 seconds as a cooling off period, before we can click "Install".

/images/posts/firefox/firenanny2.png

Thirdly, even though we clicked "Allow", then were put into time-out like a child, then clicked "Install", it flatly refused to do what I had told it to do:

/images/posts/firefox/firenanny3.png

'Secure' here being defined as "approved by Mozilla", very few Firefox extensions are secure in the formal sense of 'trusted'.

I am root

I know Firefox are trying to keep us safe, but I have to admit that the interface here gets on my nerves somewhat. There are "Allow" and "Install" buttons, I press them, but Firefox changes its mind and does not do what the button says.

Fortunately, in Firefox, the extension censorship can be overridden in the about:config settings dialog. So I went to Firefox 3's about:config page, and guess what? Yes you guessed it, they have added another new confirmation screen!

/images/posts/firefox/firenanny4.png

Oh well, all's well that ends well. I am sure some of you will have strong views either way on this. Let me know!

Discuss this post - Leave a comment

May 22, 2008 07:13 PM :: West Midlands, England  

Michael Klier

Meme Your Favorite Desktop Linux Software

Seems I got tagged by JayPiKay and Demod :-).

Here are the rules:

  1. blog a list with your favorite destktop Linux software (as many or few you want)
  2. add links to the software project's websites
  3. post these rules
  4. tag three other Linux using bloggers

Since Splitbrain said the list should contain applications which provide a GUI I fear mine is going to be a little short :-/.

Well then, here is the list of my current favorites desktop apps:

  • Awesome - an awesome window manager
  • Firefox - my browser of choice
  • Gajim - for all things jabber
  • Sonata - the MPD frontend I use to listen to my music (when I don't use ncmpc directly on my NSLU2 8-))
  • (g)Vim - my favorite text editor
  • Mirage - a simple and lightweight GTK+ image viewer
  • Gimp - image editing
  • Viking - a GTK program to manage/manipulate GPS data
  • Urxvt - Terminal

The bloggers I tag are:

Have fun!

Read or add comments to this article

May 22, 2008 05:59 PM :: Germany  

Patrick Nagel

Uploading mail to an IMAP server with Thunderbird (2.0.0.14) sucks - perl script to the rescue

Today I was trying to upload a lot of mail (something like 160000 mails stored in a deeply nested folder structure of about 13000 folders) to an IMAP server. Those mails were converted from the Eudora mailbox format to a more sane Eudora mailbox format using “Eudora rescue”, and then imported into Thunderbird’s “Local folders”. From there, so we thought, it would only be a matter of minutes to put those mails onto the newly setup dovecot IMAP server, with one drag-and-drop action.

But…

The upload horribly failed after the 3rd folder or so, with no error message whatsoever. No matter what I tried, it would just fail silently. The debug logging (see Debugging/Thunderbird article in the Dovecot wiki) didn’t help, and neither did dovecot’s log on the server. The problem seems to be connected with creating folders on the server somehow - because uploading a big amount (400 for a small test) mails within one folder wasn’t a problem. I couldn’t find out if Thunderbird or dovecot is to blame here…

I eventually managed to get this big pile of mail to the server by using a perl script that I found on perlmonks.org. Thanks to Davis for providing this! I downloaded it, installed the Mail::MboxParser and Mail::IMAPClient dependencies (with two ‘cpan install …’ calls), changed the configuration in the script to our site’s data and ran it. ~30 minutes later, the mails were on the server. Only thing that could have been better: All mails were ‘marked as unread’ - but that’s easy to fix.

Update:
After looking into the perl code, I found a way to ‘mark as read’ during the transfer. I posted it under the original perlmonks.org script as a comment.

May 22, 2008 04:52 PM :: Shanghai, China  

Zeth

Ekiga on Windows

Ekiga is the main voice over IP client on GNOME-based systems such as many free software distributions and Solaris. It also has a Windows port. So I thought I would try it out.

Giving your relatives Ekiga means they can chat to you online without you having to install strange proprietary phone clients that do strange things on your network.

To start with, you need a SIP username, I got a free SIP username from Ekiga's online-registration, but you can get one from any SIP provider, or you can be your own provider by running your own SIP server such as Asterisk.

To start with, lets just use Ekiga's free usernames.

So once you have a SIP username, we want to download Ekiga. the Windows binary is available from Ekiga's Windows-Users page.

Download the exe and click on it. This will bring up a little box asking you for your language. My first language, English, was the default so I went with that.

System Message: WARNING/2 (<string>, line 13)

malformed hyperlink target.

Next comes the Ekiga Setup Wizard:

System Message: WARNING/2 (<string>, line 17)

malformed hyperlink target.

Press next twice and you get this:

System Message: WARNING/2 (<string>, line 21)

malformed hyperlink target.

Press finish. I did this on Windows XP, which brought up a warning that Ekiga attempts to connect the Internet:

System Message: WARNING/2 (<string>, line 25)

malformed hyperlink target.

Since I want to use Ekiga to make phone calls over the Internet, I pressed "Unblock".

Next is the First Time Configuration Assistant.

System Message: WARNING/2 (<string>, line 31)

malformed hyperlink target.

It will ask you for your SIP username and password (i.e. the username we created at the beginning of this article), and it will try to detect your microphone, speakers and webcam (if you have one).

Press "Forward" a lot and read through each of the screens. when you are done it will summarise your choices:

System Message: WARNING/2 (<string>, line 37)

malformed hyperlink target.

Press "Apply" if you are happy, or press "Back" to change them.

So now hopefully you are done with all the hard work. You should see the main Ekiga interface like this:

System Message: WARNING/2 (<string>, line 43)

malformed hyperlink target.

The first icon on the right allows you to open a text chat with the person you are talking to.

So far, I only really use Ekiga to call my friends over the Internet, I have never phoned a landline, therefore I turned the numberpad off, you can do this by clicking the second item on the left, or by going to the "View" menu, and choosing "View Mode" then "Videophone".

Typing usernames into the address bar is a bit dull, so pressing the third icon on the left of the interface brings up the address book. If you add your friends to the address book then you can click on them rather than having to remember their SIP username.

Ekiga has many more features, but you can easily discover most of them yourself.

System Message: WARNING/2 (<string>, line 53)

malformed hyperlink target.

Now you probably want to test it. Put sip:500@ekiga.net in the address bar and press enter. This will call the Ekiga 500 echo service. It is a rebot who will echo back whatever you tell it, this way you can tell whether your connection, microphone and speakers are working properly.

Happy chatting!

System Message: WARNING/2 (<string>, line 62)

Explicit markup ends without a blank line; unexpected unindent.

Press Next a lot

Discuss this post - Leave a comment

May 22, 2008 12:13 PM :: West Midlands, England  

Ekiga VoIP client on Windows

I have used Ekiga quite a bit. It is one of the main free software voice over IP clients. It is often installed by default on many GNOME-based systems such as many free software distributions, and it is also available on Solaris.

It also now has a Windows port, so I thought I would try it out. Giving any remaining Windows-using relatives Ekiga means they can chat to you online without you having to install proprietary phone clients that do strange things on your network.

To start with, you need a SIP username, I got a free SIP username from Ekiga's online-registration, but you can get one from any SIP provider, or you can be your own provider by running your own SIP server such as Asterisk.

To start with, lets just use Ekiga's free usernames.

So once you have a SIP username, we want to download Ekiga. the Windows binary is available from Ekiga's Windows-Users page.

Download the exe and click on it. This will bring up a little box asking you for your language. My first language, English, was the default so I went with that.

http://commandline.org.uk/images/posts/ekiga/ekiga0.png

Next comes the Ekiga Setup Wizard:

http://commandline.org.uk/images/posts/ekiga/ekiga1.png

Press next twice and you get this:

http://commandline.org.uk/images/posts/ekiga/ekiga2.png

Press finish. I did this on Windows XP, which brought up a warning me that Ekiga is attempting to connect the Internet. Being a program to chat over the Internet, I pressed "Unblock":

http://commandline.org.uk/images/posts/ekiga/ekiga3.png

Next is the First Time Configuration Assistant.

http://commandline.org.uk/images/posts/ekiga/ekiga4.png

It will ask you for your SIP username and password (i.e. the username we created at the beginning of this article), and it will try to detect your microphone, speakers and webcam (if you have one).

Press "Forward" a lot and read through each of the screens. when you are done it will summarise your choices:

http://commandline.org.uk/images/posts/ekiga/ekiga5.png

Press "Apply" if you are happy, or press "Back" to change them.

So now hopefully you are done with all the hard work. You should see the main Ekiga interface like this:

http://commandline.org.uk/images/posts/ekiga/ekiga6.png

The first icon on the right allows you to open a text chat with the person you are talking to.

So far, I only really use Ekiga to call my friends over the Internet, I have never phoned a landline, therefore I turned the numberpad off, you can do this by clicking the second item on the left, or by going to the "View" menu, and choosing "View Mode" then "Videophone".

Typing usernames into the address bar is a bit dull, so pressing the third icon on the left of the interface brings up the address book. If you add your friends to the address book then you can click on them rather than having to remember their SIP username.

Ekiga has many more features, but you can easily discover most of them yourself.

http://commandline.org.uk/images/posts/ekiga/ekiga7.png

Now you probably want to test it. Put sip:500@ekiga.net in the address bar and press enter. This will call the Ekiga 500 echo service. It is a robot who will echo back whatever you tell it, this way you can tell whether your connection, microphone and speakers are working properly.

Happy chatting!

Discuss this post - Leave a comment

May 22, 2008 12:13 PM :: West Midlands, England  

Daniel de Oliveira

menelkir


What is LVM?

LVM (Logical Volume Manager) is a great piece of software which allow you to deal with Logical Volumes. Using LVM, you are able to extend/reduce your filesystems which is pretty handy when you need more space.

A lot of distributions support out of the box in installer. Unfortunately, Hardy Heron doesn’t offer this on the Desktop Install CD.

What can I do with LVM?

* Resize volume groups online by absorbing new physical volumes (PV) or ejecting existing ones.
* Resize logical volumes online by concatenating extents onto them or truncating extents from them.
* Create read-only snapshots of logical volumes (LVM1).
* Create read-write snapshots of logical volumes (LVM2).
* Stripe whole or parts of logical volumes across multiple PVs, in a fashion similar to RAID0.
* Mirror whole or parts of logical volumes, in a fashion similar to RAID1.
* Move online logical volumes between PVs.
* Split or merge volume groups in situ (as long as no logical volumes span the split). This can be useful when migrating whole logical volumes to or from offline storage.

What can’t I do with LVM?

* LVM does not provide parity-based redundancy across LVs, as with RAID4, RAID5 or RAID6. This functionality is instead provided by Linux metadisks, which can be used as LVM physical volumes.
* Converting regular filesystems into LVM filesystems online (you also can copy the stuff to a logical volume).

Implementation

LVM keeps a metadata header at the start of every PV, each of which is uniquely identified by a UUID. Each PV’s header is a complete copy of the entire volume group’s layout, including the UUIDs of all other PV, the UUIDs of all logical volumes and an allocation map of PEs to LEs. This simplifies data recovery in the event of PV loss.

In the 2.6-series Linux kernels, the LVM is implemented in terms of the device mapper, a simple block-level scheme for creating virtual block devices and mapping their contents onto other block devices. This minimizes the amount of relatively hard-to-debug kernel code needed to implement the LVM. It also allows its I/O redirection services to be shared with other volume managers (such as EVMS). Any LVM-specific code is pushed out into its user-space tools, which merely manipulate these mappings and reconstruct their state from on-disk metadata upon each invocation.

To bring a volume group online, the “vgchange” tool:

1. Searches for PVs in all available block devices.
2. Parses the metadata header in each PV found.
3. Computes the layouts of all visible volume groups.
4. Loops over each logical volume in the volume group to be brought online and:
1. Checks if the logical volume to be brought online has all its PVs visible.
2. Creates a new, empty device mapping.
3. Maps it (with the “linear” target) onto the data areas of the PVs the logical volume belongs to.

To move an online logical volume between PVs, the “pvmove” tool:

1. Creates a new, empty device mapping for the destination.
2. Applies the “mirror” target to the original and destination maps. The kernel will start the mirror in “degraded” mode and begin copying data from the original to the destination to bring it into sync.
3. Replaces the original mapping with the destination when the mirror comes into sync, then destroys the original.

These device mapper operations take place transparently, without applications or filesystems being aware that their underlying storage is moving.

How can I learn more?

http://en.wikipedia.org/wiki/Lvm
http://tldp.org/HOWTO/LVM-HOWTO
http://sourceware.org/lvm2/

Requirements

* Ubuntu install LiveCD 8.04.
* Internet connection or lvm2 deb package.
* Free Disk Space

Preparing

1) Install LVM2 Package

sudo apt-get install lvm2

2) Start dm-mod

sudo modprobe dm-mod

3) Redetect disks

sudo partprobe

Preparing Disks

Let’s create a boot partition outside of LVM and all the rest for LVM (120Mb for /boot in 2*40Gb hardisks).


$ sudo fdisk /dev/sda

The number of cylinders for this disk is set to 4865.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4865, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1033-9729, default 9729): +120M

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (17-4865, default 17):
Using default value 17
Last cylinder or +size or +sizeM or +sizeK (17-4865, default 4865):
Using default value 4865

Command (m for help):t
Partition number (1-4): 2
Hex code (type L to list codes): 8e

Command (m for help):w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

$ sudo fdisk /dev/sdb

The number of cylinders for this disk is set to 4998.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-4998, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-4998, default 4998):
Using default value 4998

Command (m for help):t
Partition number (1-4): 2
Hex code (type L to list codes): 8e

$ sudo partprobe

Formating Partitions

1) Format /boot partition
$ sudo mke2fs /dev/sda1

2) Create physical volumes for LVM

$ sudo pvcreate /dev/sda2
$ sudo pvcreate /dev/sdb1

3) Create volume group (I’ll use rootvg, like AIX)…

$ sudo vgcreate rootvg /dev/sda2

4) …then add the second physical volume

$ sudo vgextend rootvg /dev/sdb1

5) Create the logical volumes.

$ sudo lvcreate -n rootlv -L 15G rootvg
$ sudo lvcreate -n varlv -L 5G rootvg
$ sudo lvcreate -n homelv -L 30G rootvg
$ sudo lvcreate -n usrlv -L 15G rootvg

6) Now you’re able to *see* this logical volumes in Ubuntu Installer.

7) After installation ends, don’t reboot yet. Mount your logical volumes, proc and dev.

$ sudo mount /dev/rootvg/rootvg-rootlv /mnt
$ sudo mount /dev/rootvg/rootvg-usrlv /mnt/usr
$ sudo mount /dev/rootvg/rootvg-varlv /mnt/var
$ sudo mount /dev/rootvg/rootvg-homelv /mnt/home
$ sudo mount -t proc proc /mnt/proc
$ sudo mount -o bind /dev /mnt/dev
8) Copy your resolv.conf to filesystem.

$ sudo cp /etc/resolv.conf /mnt/etc/

9) Chroot

$ sudo su -
# chroot /mnt/ /bin/bash
# source /etc/profile

10) And now, install lvm2 and re-install grub

# apt-get install lvm2
# grub-install /dev/sda

11) Now you can reboot.

May 22, 2008 10:33 AM :: São Paulo, Brazil  

May 21, 2008

Zeth

List files recursively by modified time

Often when using my computer, I will have a "project", by this I mean a directory containing an arbitrary number of files and directories. This could be a software project, or a website, or an essay, or whatever.

So when going back to a project, I might want a quick overview of what has been going on. This is what my filehistory.py script is for. It recursively orders your project files by last modified date.

The unique feature is that it mixes them all together as one stream. There is of course a tradeoff, the larger the number of files, the longer it takes, however it is quite fine for projects of up to several thousand files.

There are a few command line arguments:

  • By default, the output is just the filepaths, if you use -v then it outputs timestamps as well.
  • By default, it will output warnings if it finds permission errors or malformed symlinks in your project. If you want to suppress these messages, use -q.
  • By default, it will output all the files within your project. If you want to specify the number of lines then use -n followed by the number. So -n 20 will output the most recently edited files.

If you followed my post about making a scripts-directory, then you can just make the Python file executable and drop the Python file into it.

It really comes into its own when you pipe it to other tools. For example, to copy the last 20 modified files to a USB stick mounted at /media/disk :

filehistory.py -q -n 20 | xargs -I x cp x /media/disk/

So feel free to check out my filehistory script. As you know I use Linux, but I think this particular script should work on Windows/Mac as well.

Discuss this post - Leave a comment

May 21, 2008 11:28 PM :: West Midlands, England  

Jürgen Geuter

dm-crypt in Gentoo

Quick reminder: If you use dm-crypt on Gentoo to crypt your harddrives and you have trouble entering the right passphrase it might be that you don't have a US keyboard. This bug is the one responsible: The proper terminal keymap is not set before starting dmcrypt (which means you have US keyboard settings and not your localized ones). Annoying and makes you think you are insane ;-)

May 21, 2008 06:36 PM :: Germany  

Steven Oliver

steveno


I swear, you take a hiatus for about 6 months, and this kind of stuff happens!

Exherbo

Enjoy the Penguins!

May 21, 2008 05:13 PM :: West Virginia, USA  

George Kargiotakis

Fotox 42 ebuild

Since the newest available fotox ebuild I found was for version 17, I decided to change it for version 42 which is currently the latest and greatest. To compile and install it using portage you also need a minor patch I made for it’s build system. fotox-42.ebuild fotox-build.patch

May 21, 2008 02:32 PM :: Greece  

Jürgen Geuter

On the success of Ubuntu

Ubuntu, Canonical's linux distribution "for human beings" has been dominating the linux news and reports for a few years now: At first out of the "look at the freaky African rich guy who tried to build a distro" interest, then because blogs and other media started picking it up. Today Ubuntu is pretty much a synonym for linux for many people. Opensuse? What's that? Fedora? Never heard of it. Debian, Arch, Slackware, Gentoo? Words without meaning.

I'm writing this as I'm wrapping up the Gentoo installation on my thinkpad that replaced the horrible mess that was Ubuntu 8.04 ("Hardy") and it kinda got me thinking about how it came to be that Ubuntu dominated the mindshare.

We don't often see a complete reduction to one product in a certain area (it might be comparable to the Ipod when it comes to MP3 players) and there are some reasons why that usually happens:


  • Technical superiority: One product is just that much better than the rest that, while the competition is playing catch-up, the leader improves even further.

  • Elegance: One product is just that much prettier or stylisher than the rest. The sold image is just that much more appealing (pretty much the reason why the wannabes all run around with Macbooks).

  • Price: The one product might not be the best but it's just so cheap that it would be retarded to buy something more expensive

  • Novelity: One product is just new and so different that it becomes the thing to have. It changed the rules in some respect that no one had thought about before.



So what's the reason for Ubuntu's success?

Well we have to make a quick reality check first: It's hard to see how the actual installed base of operating systems is so the fact that there is a lot of buzz about Ubuntu does not mean that the installed base of linux systems is in any way related to that. When we are talking about success here, we are actually just talking about publicity and representation in media (whether blogs or traditional doesn't matter).

Ubuntu is obviously not technically superior to the rest. While Ubuntu has added a few things like graphical dialogs here and there that can simplify things (and often keeps those patches to themselves instead of sending them upstream so everyone can benefit) the base technology is not that different from the rest and in some aspects it's actually behind the competition (pulseaudio integration being one of the examples).

Ubuntu's default theme is actually not bad (I kinda like it) but it's not that much prettier than the competition.

Ubuntu is free of charge but so is the competition so price is not important. And novelity is nothing Ubunut excels in either.

So where does the success stem from?

It comes from two things mainly:

  1. Communication/community: Ubuntu has Jono Bacon as community manager. Then there's the forums and wikis. All in all it's like a bee hive of people all generating buzz and noise. Some of their work might be sub-par but still it's a stream of constant buzz about Ubuntu that keeps the word in the public discussion.


  2. The slogan: "Linux for Human beings". I have no clue who came up with it, but that person is, in my opinion, responsible for at least 50% of the success of Ubuntu. The slogan is not geeky, it's not technical, it's talking about human beings (which we probably all are [except Harvey the invisible rabbit which is obviously reading this]) and it talks to feelings. It tells you that this is for you. No restriction, no catch.



Ubuntu has applied the strategies that we know from marketing and advertising better than any other open source project (well the KDE people are quite good with that, too, with, based on the slogans, some people believing that KDE4 was the second coming of christ or the revolution of the desktop).

Ubuntu is not a bad distribution but its representation in our media is not based on merit but on advertising. People believe that it's easy because everybody says so. When it's not easy they look up stuff in the wiki or forums or ask. How is that different from Debian or Fedora? It isn't. But those don't claim aggressively enough that they are easy.

It's, like so often, a story about makebelieve. Make people believe that things are easy and they will claim that they are. Installing software on windows is a pain in the butt: No dependency resolution, hunting down software yourself. But still people claim that it's easy. Because that's what they were told. And that's what they have convinced themselves of.

Let's see how long it takes the distros competing for Ubuntu's user base will need to realize that they have to work like advertising people do. Right now is the right time with the Ubuntu devs dropping the ball on their last release.

May 21, 2008 01:51 PM :: Germany  

Jason Jones

User-Based RSS Feeds!

Quite a few people have been wondering how they can get RSS feeds which are specific to the individual users of ILoveMyJournal.com.  Until now, they couldn't.

ILoveMyJournal.com now has feeds which will contain public posts from only the user you're interested in!

To get it, you simply click on the RSS feed logo found within the user's blog.

First, click on the public sub-nav on the title bar,  then click on the user's blog you wish to view, then click on the RSS feed logo, and you'll be there!

May 21, 2008 01:12 PM :: Utah, USA  

Steven Oliver

steveno


  1. The Gentoo Fork - Its been rumored, and its even been attempted at least once I believe, but it has yet to happen. Personally I think some home grown competition would do Gentoo well. Would I switch if they forked? Maybe… They’d need a new tree, a replacement for the ebuild, a replacement for portage. They’d need at least a handful of very skilled technical people, and another handful of people to do all the non-technical work. Could easily be done in my opinion, only a lack of desire is really staving it off. Perhaps this is a sign Gentoo isn’t as bad off as some like to think.
  2. The Portage Replacement - We’ve got at least two contenders. Both are probably, at this point, more than able to do the job. Both are without a doubt a better system with more modern approaches to package management. Only nostalgia is really holding this one back. Sort of sad really.
  3. Graphical Package Management - Despite actually having several of these out there for Portage there is a pretty good reason why these never really caught on with John Doe Gentoo. Mainly they’re not really a good idea. Sadly running a system like Gentoo just involves to much command line work to make these really worth using. Using one would only mean having to switch back to the command line every other install to check and fix the reason(s) it failed or to update my conf files. Pointless…

Your picks?

Enjoy the Penguins!

May 21, 2008 12:13 PM :: West Virginia, USA  

Arne Stäcker

arlsair


… oder eine kleine Review über Fedora 9.

Im Sommer geht meine Mutter in den Ruhestand.  Da sie immer noch wenig Ahnung von Computern hat und erst recht mit der Sicherheitsproblematik, ist die Wartung des Computers meine Aufgabe. Und da sie im Ruhestand keine Spezialsoftware mehr benötigt, wird sie ein Linux verpasst bekommen, was meines Achtens ihr auch in Sachen Benutzerfreundlichkeit entgegen kommt. Außerdem kann ich so den Rechner besser übers Internet warten.

Also habe ich mir mal Fedora 9 als KDE Spin angeguckt, da mir die Aktualität (aktueller Kernel, verbesserter X-Server) sehr zusagt. Hier ein paar Punkte, die mir aufgefallen sind:

LiveCD:

  • Schlecht: Die Schrift war verstümmelt (oben und unten etwas abgeschnitten)

Installation:

  • Schlecht: Bei der Installation konnte man die Sprache nicht auswählen, sondern konnte sie erst im nachhinein installieren.
  • Gut/Schlecht: Fedora hat in den 2.6.25er Kernel WLan-Erweiterungen aus dem kommenden 2.6.26er Kernel einfließen lassen. Unter anderem wird nun die LED bei Intel-Chipsätzen genutzt. Allerdings zeigt sie die Aktivität durch Blinken an, was echt nervt. Mir würde es reichen, wenn sie an geht, wenn man man mit einem Netz verbunden ist.
  • Gut: Man kann die Plasmoids in der Fensterleiste verschieben. Das kann ich selbst in meinem aktuell gehaltenen KDE 4.1 SVN nicht.
  • Schlecht: Manche Programme im Startmenü haben kein Symbol. Dies kommt zum Teil daher, dass es selbst Upstream keine Symbole gibt, aber eine Distribution sollte hier dann Eigeninitiative zeigen.
  • Gut/Schlecht: Auch im KDE Spin werden standardmäßig GTK/Gnome Programme eingesetzt, wo es noch kein KDE-Frontend gibt. So z.B. PackageKit und das Gnome-Frontend zum NetworkManager 0.7 . Das finde ich eigentlich gut (bevor man gar nichts hat), allerdings merkt man schon, dass es Fremdkörper sind (Gnome gefällt mir nicht). Die Zeit wird es bringen (zumindestens für den NetworkManager 0.7 gibt es eine Integration in Solid bei KDE 4.1)
  • Gut/Schlecht: Mir gefällt die Idee von PackageKit, ein einheitliches Frontend für alle Distributionen zu haben, wenn auch im Moment nur für Gnome. Allerdings werden mir zu wenig Informationen angezeigt. Ein “Details” Knopf wäre schon toll.

Insgesamt schon ordentlich gemacht, allerdings bin ich von Gentoo total verwöhnt (auch wenn es etwas mehr Arbeit benötigt). Da aber Gentoo keine Option für meine Mutter ist, werde ich wohl noch mal Kubuntu und OpenSuse ausprobieren.

May 21, 2008 08:14 AM :: Hamburg, Germany  

Sean Potter

Why Gentoo is Still for Me

My first Linux distribution was a very old version of Red Hat with X-Windows as a GUI. I think I was in 5th or 6th grade, and I bought it from a used book store for $10. From there, I went to Mandrake Linux 7, then Fedora, and finally to Gentoo. I was never a fan of RPM installers, as there were always issues with dependencies and uninstalling.

One of my friends, Zack had recently become a fan of Gentoo Linux. I abandoned RPM hell and became a fan of Gentoo. Despite, at the time, the best way to install Gentoo was through a stage 1 (compiling everything from start to finish), I loved it. Even if it took a day to get a usable system on a 400MHz Pentium 2, it was great.

Despite some obvious issues with dependencies in Gentoo, and many claiming Portage is just a slew of unmanageable code, I'm still in love with the speed and configuration of Gentoo. Sure, some things aren't install-and-go, but you learn more when having to configure most programs yourself.

Recently, I've been installing the latest version of Ubuntu on many of the machines I use to benchmark hardware for BIOSLEVEL. I can't say I'm a fan. I'll agree that it's fantastic that Ubuntu developers have put so much time into developing and improving many applications and daemons for desktop use, but it feels slow.

Why run native 586 code on a 686+ CPU? Why install software that doesn't take advantage of a CPU's extensions? To be completely honest, using the same hardware, a Gentoo System with Compiz Fusion running feels more responsive than an Ubuntu system without any desktop effects enabled.

While much of my testing will be done with Ubuntu, my primary Linux environment for regular usage remains Gentoo.

May 21, 2008 06:40 AM

May 20, 2008

Jason Jones

Mohawks 'n' Camaro Cops

I've been needing to write a bit more about what's going on in my life lately, so... I'll give it a try this evening.

First, you'll notice by the video above that yesterday morning a sad event occurred.

No, my cat didn't die.

No, my computer didn't fry.

My mohawk went bye-bye.

Yup.  I woke up yesterday morning and just couldn't get myself to spend the necessary time to make it look acceptable, so, with the alternative being to wear a hat, or look like a complete idiot, I got out the buzzer and within a couple of minutes, it was gone.

Also, today I had a run-in with a police officer of the law.  hehe....  who just happened to be driving a camaro with some serious power.

He drove past me going about 65, I was doing 60.  I then caught up to him, and as soon as I passed him, he slowed down to about 2 car-lengths behind me, pressed the gas just a bit, and I'll be darned if I didn't hear the unmistakable sound of the supercharger waking up.

It made me smile just knowing that he couldn't let me go without knowing he had some power to punch.  hehe....  Anyway...  I got a pic of his back-end as he pulled off the same exit as I.

Anyway...  Good times today.

Hopefully I'll be chattin' with ya again soon.

Also - if the video at the top of this page didn't load for you, or you had any problems with it, please comment, so I can know what's going on.

Thanks.

May 20, 2008 06:58 PM :: Utah, USA  

FFmpeg Webcam Video in Linux

Okay...  I've been wondering how to do this for quite some time, and I finally figured it out with the help of this mailing list thread.

I've always thought ffmpeg was a pretty amazing program, but now, I will build a shrine to it and worship it weekly.

Ffmpeg is the program which allows me to create a video with sound in Linux.

I have a Logitch Orbit AF webcam, and with the following command, it records both video and audio.

ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 -f audio_device -ac 2 -i /dev/dsp1 -f mp4 Filename.mp4

and the file "Filename.mp4" will be created and stored in the current working directory.

Great stuff!

After trying to get this video to work with flowplayer (flowplayer.org), it would reproduce the audio, but not the video, so in order to get it to work (albeit pretty low quality), I had to convert the m4v file to an flv file with the following command:

ffmpeg -i input_file_name.mp4 -vcodec flv -ar 22050 output_file_name.flv

That seemed to do the trick.  Here's the first video recorded using this method.

PS - Even though my camera is v4l2, I had to enable the v4l USE flag. Make sure you have the v4l USE flag turned on when you emerge it, or it won't work.

Go gentoo!

May 20, 2008 06:50 PM :: Utah, USA  

Alex Bogak

Firefox3 RC1

I cannot believe its happening to me.

I've updated to RC1 as expected by suggested update. Now the thing crashes on me almost constantly!!! Even in Gmail!

Anyone knows whats going on?

Beta 5 was so solid compared to RC....

May 20, 2008 05:54 PM :: Israel  

Dirk R. Gently

coreutils and mktemp a dangerous pair

Has a bit of a Yogi Bear thing, don’t ya think? I tried to sleep a few nights back and my ears just wouldn’t leave me alone, so I thought lets boot my computer and see if there is anything still useful on it. So I began to look through my ~/.bin/ directory and dug [...]

May 20, 2008 04:21 PM :: WI, USA  

Nick Cunningham

Exherbo - Gentoo 2.0?

After first seeing it mentioned in irc last night, i took a look at former gentoo dev, kloeri’s current project called Exherbo which seems very much to be Gentoo 2.0. So far its got a number of former Gentoo dev’s onboard, including Ciaranm, who, regardless of his sometimes lacking people skills, *is* a very competent programmer. It seems their big aim is creating a gentoo-esque distro thats been built with all the experience available from working on Gentoo for years coupled with a desire to build a forward looking distro that shuns the massive amount of legacy code that other linux distros have picked up over the years.

Surprisigly though, what would appear to have been a low-key announcement in kloeris blog, has somehow been picked up by both slashdot and more surprisingly, TheRegister. While Slashdot takes the usual fairly negative view which it seems to have towards anything even *vaguely* linked to Gentoo. It was nice to read the Reg piece though and not see a totally negative or sarcastic article, they almost sound positive about exherbo!

I have to say im intrigued at the very least and am interested to see where this goes, especially as im a quiet supporter of Paludis (note to anyone reading this, im supporter not a fanboy! :P ), and have liked how it has forced portage to actually document how everything works via the EAPI’s, which makes it easier to figure out if a certain behaviour is a bug or actually a feature!

While ive no intention to actually try and install Exherbo at this point (as im just a mere user!), i do intend to watch and see what it grows into, and whether it can fulfil its rather lofty aims.

May 20, 2008 01:57 PM :: Portsmouth, England  

Sean Potter

Small Update

Nothing horribly new to report. I added a few new pictures to my Flickr feed at the bottom of the page. I'm hoping to make more use of my camera this summer, but I haven't figured out what for yet. I'm just going to have to remember to bring it with me more often.

I'm trying to get back to blogging on a regular basis. It's hard to remember to write here, especially when I'm almost always writing a review for BIOSLEVEL. What do I do if and when we run out of products to review at BIOSLEVEL? Obviously we'll be able to write Linux-related articles during any down time, but I'd also like to focus a little more here. My traffic is way way down since October of last year.

Expect more updates, a new layout, and other cool features soon.

May 20, 2008 07:56 AM

May 19, 2008

Jürgen Geuter

While things scroll by

I'm hanging around here waiting for gnome to finish compiling with firefox open in twm. Twm is not pretty but actually not a bad window manager. Focus follows mouse and the minimizer that turns an application into a little icon is actually neat. I hadn't worked with that thing in ages but it's a solid program.

In other news, Gentoo on the thinkpad already blows Ubuntu out of the water. Guess what? I can even activate the thinkpad harddrive protection. Who would have thought? Ubuntu provides the package but not the kernel module that the package needs. This is gonna be neat when I'm done. I'll post my conf files and notes then.

May 19, 2008 09:43 PM :: Germany  

George Kargiotakis

kernel fun

I know this has been posted a zillion times again and again…but it’s still a lot of fun: Swearing? NEVER! # cd /usr/src/linux; egrep -ir "( fuck)¦( shit)¦( crap)" * arch/m68k/mac/config.c: * have to disable interrupts for this. Our IRQ handlers will crap arch/sparc/mm/srmmu.c: /* Clear any crap from the cache or else... */ arch/sparc/mm/srmmu.c: * this shit off... nice job [...]

May 19, 2008 05:59 PM :: Greece  

Jürgen Geuter

Suggestion for the gentoo liveCD

Automatically install vim. Nano doesn't work properly, <ESC>:wq does not save and exit. MADNESS!

May 19, 2008 03:41 PM :: Germany  

Steven Oliver

steveno


The semantics of computers are more often than not more annoying than they need to be. Especially since something like the internet is ruled by mangled mess of people who “know” more than you do. So when WordPress suddenly starting giving me the option to give posts Tags and Categories I become terribly confused.

Thus I have all kinds of Categories and no Tags. Does it really matter? Well, in all honesty, it doesn’t. Because I’m not going to suddenly switch over.

Enjoy the Penguins!

May 19, 2008 12:44 PM :: West Virginia, USA  

Jürgen Geuter

Annoyance

Ubuntu with all its bugs annoys the hell out of me on the laptop, downloading the Gentoo install disk to have something that works.

And I have a headache which sucks and makes me grumpy.

May 19, 2008 11:47 AM :: Germany  

Christoph Bauer

Slower delivery for a destination

Sometimes you have to slow down your mail delivery for some destinations or you might want to push out more mails for a certain server as it’s inside your LAN without being unkind to other people. Here’s a way of doing it:

The main.cf file of our postfix installation is the place where we define a new transport map and an according speed limit. As I am slowing down things here, the name of our test transport will be ’snailmail’ - so here we go:

main.cf

transport_maps = hash:/etc/postfix/transport
snailmail_destination_concurrency_limit = 1

The Transport map file itself now contains the domain(s) we’re changing the limits for by assigning the new transport service:

/etc/postfix/transport

domain.com snailmail:

Finally we’re hacking our master.cf file for defining our snailmail service to be able to make use of it:
master.cf

snailmail unix - - n - 5 smtp

The results we’re expecting are now, that all mail traffic regarding domain.com (we’ve used that in the transport map file - remember?) is using our new delivery service. But wait - we haven’t generated the hash file for the transport map. Running postmap /etc/postfix/transport does so. Now we’re set up for the restart.

Believe it or not - we’re done - and it wasn’t even complicated.


Copyright © 2007
Please note that this feed is for private use only. All other usage, including the distribution or reproduction of multiple copies, performance or otherwise use in a public way of the images or text require the authorization of the author.
(digitalfingerprint: 0f46ca51d0fa4e6588e24f0bf2b80fed)

May 19, 2008 09:55 AM :: Vorarlberg, Austria  

May 18, 2008

Zeth

Epiphany and Webkit 2008

Last summer, at GUADEC here in Birmingham, the cool young dudes first integrated Webkit as an experimental toolkit for the Epiphany web browser. Now they are working to make WebKit as the main backend for Epiphany. It is a very small team indeed, but their aim is to finish the migration by GNOME 2.26 in March 2009; if we are lucky they may have finished by GNOME 2.24 this September. The old branch with the Mozilla gecko back end is very stable and will be released as 2.24 if the Webkit migration is not finished.

This is exciting for a number of reasons, firstly we will have a fast and light, GNOME integrated browser. Secondly, and perhaps more importantly, if Webkit becomes a default GNOME library then the same browser toolkit is available in KDE desktops, GNOME desktops and Apple OS X desktops, allowing a new generation of rich client web mashup applications.

I tried Epiphany with the Webkit backend last year, it was pretty raw then. The centre of the window worked as a web browser, but it ignored the toolbars and buttons at the top of the application. So how is it 10 months later?

Pretty good I say. Of course, it is still early days, and they need a lot of help removing the old unneeded code and binding the interface to Webkit. If you know C and want to get in to an interesting open source project, this might be a good project to join as they are basically restarting a lot of it.

My adventure installing Epiphany

I wish I had a spare Gentoo machine that I could use for this, but they are all busy with important things. On Gentoo they have made ebuilds for it in the overlays that take the latest version down.

So I used a spare Ubuntu machine, I started by getting rid of anything to do with WebKit or epiphany that has been installed via Ubuntu, at time of writing these are all too old.

Then I checked out all the development versions I need:

svn co http://svn.gnome.org/svn/libsoup/trunk libsoup
svn co http://svn.gnome.org/svn/epiphany/trunk epiphany
svn co http://svn.webkit.org/repository/webkit/trunk webkit

The last took a while as it checks out the complete source tree for every platform, I didn't actually need a lot of this, so another time, if time or badwidth is a concern then I might want to try to work out a more specific checkout command.

Then while that is running, I got the other required dependencies.

sudo apt-get install libicu-dev libxslt1-dev libsqlite3-dev libjpeg62-dev \
libpng12-dev gperf bison libcurl4-gnutls-dev flex gtk-doc-tools

Then I went into the libsoup directory and compiled it:

cd libsoup
./autogen.sh
make
sudo make install

Then webkit had finished downloading by the time libsoup is done. So I went into the Webkit directory and tried to compile it with this:

cd ../webkit
./autogen.sh --prefix=/usr/local --enable-svg-experimental --with-font-backend=pango \
--with-http-backend=soup
make
sudo make install

This didn't work, so (after make distclean), I googled and tried the method used by guy called Peter Upfold. This uses QT's qmake to build WebKit-gtk, bit of a contradiction, but it works at least:

export PREFIX=/usr/local
./WebKitTools/Scripts/build-webkit --qmakearg=WEBKIT_INC_DIR=$PREFIX/include/WebKit \
--qmakearg=WEBKIT_LIB_DIR=$PREFIX/lib --gtk --qmake=qmake-qt4
cd WebKitBuild/Release/
sudo make install

Then I waited a while again.

Next update the shared library cache:

sudo ldconfig

Then I did epiphany, this was pretty quick,

cd ../epiphany
./autogen.sh --prefix=/usr/local
make
sudo make install

Then epiphany worked like a charm.

/images/posts/gnome/epiphanywebkit.png

Acid2 Test, no problem:

/images/posts/gnome/epiphanywebkitacid2.png

In the Acid3 Test, Firefox 3 only scored 71. What about Epiphany, well still no problem:

/images/posts/gnome/epiphanywebkitacid3.png

Anyhow, should be interesting what they come up with in the first Epiphany WebKit release.

Please do Digg or StumbleUpon this article,

Discuss this post - Leave a comment

May 18, 2008 09:50 PM :: West Midlands, England  

May 17, 2008

Dan Ballard

Adventures with Ubuntu and XP and the family computer

So my folks Windows XP box started having difficulty booting. Most of the time it would go to boot and suddenly you'd be back at the BIOS, then the "Windows didn't shutdown properly last time" menu and then once you selected "boot normally" the cycle would begin again. Usually eventually you'd get lucky and Windows would boot (but sometimes they gave up first). Not good. This started a while ago and seemed to get worse (I think, I never use the box so I don't know). Anyways, eventually they figured (hoped actually because otherwise it was hardware failure) that their XP install was corrupted and asked me to reinstall Windows for them.

They gave me the CD that came with the box and I loaded it up and first things first, no harddrive detected. Yep, that's right, no harddrive. To be fair, XP is old, it's from 2001, and pretty much all computers come with SATA harddrives now, which didn't even exist in 2001, so it's not entirely fair to expect XP to support them. This is one of the downsides of only doing releases every 6 years. Being not terribly invested in this "install XP" project I tossed my hands up and said it's a no go and offered Linux as an alternative. My Dad was definitely interested in Linux but wasn't sure it would be all there for his business software, so I said, "no fear, let's just do a trial run, and if it doesn't work, no worries, you can, you know, always buy Vista". The thought of having to spend money to make a computer that did work, work again, for no good reason vs. the low commitment of a trail run sold him on the project.

So I burned a copy of Hardy Heron, the newest Version of Ubuntu, released just last month. It loaded up and recognized all the hardware and installed, no trouble. I'm old fashioned so I opted for a separate root and home partition, but other than that, a vanilla install. Then we booted up and everything just worked out of the box. Even the printer. So I loaded all their data on from one of my boxs from whence it had been backuped to and let them at it (after a few tweaks, like my mom's desktop).

fuzzybear

The results?

Mom loved it. For her, it turns out the killer feature was desktop icon stretching. She really liked the larger icons. And of course, no difficulty using it for her normal uses which are nearly entirely Internet look ups. The other big hit was Eye of Gnome, the photo viewer. Last year we had about 1600 of my mom's parents family slides turned into digital photos (at no small cost) and the stock Gnome photo viewer is perfect and intuitive enough for her to use and enjoy (the newly added left right buttons to scroll a directory are crucial here, so good work guys).

My moved out sister dropped by and gave it a try, and she too was sold. For her, the large stock puzzle/games selection was the seller. It worked just fine for her net usage, but the large selection of games got her attention and kept it just on introduction for over half an hour and she only explored a few of the games in that time. She'll be back. She also was amused by compiz eye candy.

As for my Dad? Sadly neither of his business apps worked under Wine. Maximizer 8 failed to install (a little sad since it's reasonably popular and not so new) and D--------, which is from what I can gather an in house piece of software from his company, also failed to install. A few tales from his trials installing it under Windows were horrific thought, like for the first time install you are required to turn off the firewall. 0_o In house software can be scary and shoddy stuff.

So Linux failed to satisfy everyone of my family's needs, so back to Windows. I was disappointed but resigned. And then came mom to the rescue. She chimed in she didn't want to go back. She liked her new Ubuntu desktop! So that was all I needed to float the idea of dual-boot. And thankfully we had two partitions already. Dad was sold too. He does want to learn more about Linux and so looked forward to the opportunity, but also needs his business software.

So I popped in a Gentoo LiveCD, because there really is no better system recovery and maintenance CD than a Gentoo LiveCD. I copied the Ubuntu root over to the second partition, moved /home and edited fstab and grub/menu.lst and reinstalled grub (from within the Ubuntu chroot because the one thing that particular LiveCD was 'missing' was Grub) and then changed the partition type of the first partition from Linux to NTFS and volia, we were ready to go.

Then back to Ubuntu because the Gnome Device Manager is actually full of awesome and gave me all the hardware information I needed so that I could get the appropriate drivers for Windows (remember when it was the reverse and it was crucial to go into Windows System Manager to get all the hardware info so Linux could install?). Then off to the net to find the Sata drivers, and then I tossed those onto a floppy disk and tried the XP install again. Sure enough, after loading the drivers from the disk, XP install found the harddrive and was happy enough to install onto the partition I had marked for it.

Then it booted into Windows XP SP1 glory. Which was surprisingly not glorious because it had no drivers so we had a 640x480 low colour screen with no sound. And no programs. Dad and I spent the rest of that day and the next few after that running Windows Update and downloading and installing drivers and programs manually from the net. The Windows Update website actually pretty much continually stalled out and failed when it came time to get service pack 2 which was disconcerting but by then the update manager had been installed and it was able to get and install SP2 for us. Shortly after which my dad horrifyingly noticed the Windows booting bug was back! We were horrified. All this work and no fix? Was it hardware failure? But Ubuntu was still booting fine. So we kept at it and apparently now with SP3 installed it's gone back to booting normally.

So yes, that means Microsoft in one of their post SP2 updates introduced some bug that rendered our computer nearly unbootable, which drove us to Linux which was brain dead easy to install. And then when we discovered Linux didn't quite fulfill all our needs, they made the migration back to XP as painful and full of near hopeless despair as possible.

So thank you Microsoft for driving my family to try Linux because they've found they like it, and thank you after that for highlighting exactly why we don't want to be hooked on Windows. It's been educational for my family, and now ever computer in my house has Linux installed on it and my family is interested in learning about it! And I owe it all to Microsoft.

(It should be pointed out that my dad's work still has a ban on IE7 and Vista because it doesn't work with their software yet which is a mark against both Microsoft and Vista, and my dad's company's computer department because, lets face it, it is the future and it has been out for over a year. But this did mean Vista really wasn't a viable option on the fact that it would have cost us more money and it wouldn't have accomplished the one goal we needed it for, which was running my dad's business software. XP was our only option.)

May 17, 2008 08:54 PM :: British Columbia, Canada  

Clete Blackwell

Update to Firefox Review (3.0 RC1 Released!)

Firefox 3.0 RC1 has now been released, with some fixes and changes from Beta 5. I have not looked at the changelog yet, so I do not know what has changed. I notice a few (minor) graphical differences.

I also want to report that the Acid 3 test still ends on 71/100, as it did in Beta 5. (See my previous review of Beta 4 and Beta 5) Since the trees are locked down, we can expect that Firefox 3 RTM will not correctly display the Acid 3 test.

May 17, 2008 04:55 PM

Zeth

An Introduction to ReStructuredText

Writing text

There are many ways to markup plain text. There is SGML and its off-shoot HTML. Later came XML, a replacement for SGML, a general-purpose way of making markup languages, one of which is XHTML, which is what you are using to view this page now.

There is also LaTeX, which is a markup used for typesetting in various contexts, especially in academic fields where complex mathematical equations are used.

With all these formats, the marked up document is plain text, and then rendered into its final form, that form may be paper, or it may be a browser window. The downside to these formats is that the marked up plain text document is ugly - full of random angle brackets and letters and words entered into the text that you are trying to read. While after using HTML for a decade I can more or less block it out, the plain text form is far less readable because of the markup.

Enter reStructuredText

reStructuredText is a markup language that does things differently. It uses more natural looking markup with a focus on readability so reStructuredText can be easily read and shared in its plain text form. You can then automatically processes the document into XML (called Docutils XML), and from there it can go into XHTML, LaTeX, OpenDocument, Docbook, or any other format that you can get to from XML. So readable, yet maps to XML in a well thought out way.

If you are going to abbreviate reStructuredText, then use 'rst', don't use 'rest' because that gets confusing with Representational State Transfer, a completely different thing altogether.

I have jumped in the deep-end and I am using reStructuredText to write my posts in this new version of the site, and it is an optional markup format for people leaving their opinions in the discussion/comments section (you don't need to use it to leave a comment).

While I have just got into it, reStructuredText has been around for several years, and has been most prominently used for creating Python documentation, however, it is a general purpose and extensible markup language that can be used in many different contexts.

Some people use it to create text for the web or for standalone documents. It can also be used wherever you might have made a one-off markup format, such as on a web forum, wiki or comments section.

reStructuredText everywhere

The reference implementation of a reStructuredText parser is called Docutils which is written in Python (but this can be used from many languages). Docutils is very easy to use in your application to process reStructuredText.

If you do not have docutils on your system already then it is available from all Linux/BSD package managers. For Windows, follow the installation-instructions.

There are also third-party parsers in Perl, Java, Haskell and probably more that I have not heard of. There are also plugins for text editors and plugins for lots of web frameworks, content management systems and web log software.

As explained in the last post, Django comes with reStructuredText support (bindings to docutils) out of the box. Lastly, there are also lots of cute reStructuredText website generators that allow you generate a website from a set of reStructuredText files. For example, Michael's rest2web, Sphinx,which is used to create the new Python 2.6/Python 3000 documentation, and Damien Baty's Soho.

Very quick reStructuredText (permalink to markup)

Okay, enough blab, lets get into it. There is very comprehensive set of markup available, but I will just cover a few basic ones that are always useful.

There is no need for paragraph tags or linebreak tags; to make a paragraph, you just make a paragraph, to break a line you just break a line.

To mark something with emphasis (i.e. italic), you use a star around the word or pharse: *emphasised text* becomes emphasised text.

Two stars are for strong emphasis (i.e. bold). Like so:

Hyperlinks

To make a hyperlink, you just start the text with http:// . So http://commandline.org.uk/ becomes: http://commandline.org.uk/

If you want to do a named hyperlink, then you need two parts. First, you put an underscore after the name, for example Zeth_ will become Zeth

Then you need a target to go with that name. You specify the target with two dots, a space and an underscore:

.. _Zeth: http://commandline.org.uk/

The line with the target can go anywhere in the document. For example, some people put the target line straight after the paragraph that has the name in. However, in a long document, it is often tidier to put all the targets at the end.

Lists

To make an unordered list (i.e. a bullet list), just start the line with a star, plus or hyphen, for example:

* Green eggs
* Ham

Becomes:

  • Green eggs
  • Ham

For a numerated list, just start the line with the number and a dot, for example:

1. Green eggs
2. Ham

Becomes:

  1. Green eggs
  2. Ham

I could go on, but I think you get the idea. By default, the core of reStructuredText is broadly feature equivalent to HTML. However, reStructuredText is very flexible and allows you to go beyond that core, as we shall look at next.

Directives

To markup a piece of more advanced functionality, you use a 'directive'. Directives are where reStructuredText shines over similar markup languages. Directives are extensions to the main markup, some directives are included by default (analogous to a standard library), others can be added by yourself or from getting them from the web or wherever. I will give an example of a standard directive, then an example of a third-party directive.

A directive has four parts. First you have some markup declaring the directive itself (two dots), second comes the directive name, third is some markup that says here is the content (two colons), lastly there is the content.

Two dots, the name, two colons, the content.

.. name :: content

So to display an image, you use the image directive.

You write two dots, a space, the word "image", two colons and then the URL:

.. image:: \http://commandline.org.uk/images/whokilledtux.png

Becomes:

http://commandline.org.uk/images/whokilledtux.png

To share source code, firstly you start with the source code directive, this is two dots, the directive name (source code), followed by two dots; secondly, we have the name of the language the source code is in. Then we leave a blank line, then we write the source code indented (preferably with four spaces ;-)

So for example:

.. sourcecode:: python

    import os
    for i in os.uname():
        print i

Will become:

import os
for i in os.uname():
    print i

Here is the list of supported languages on this site.

There you go, if you made it this far then you can use ReStructuredText, give it a go! You can start by leaving a comment in ReStructuredText format!

Discuss this post - Leave a comment

May 17, 2008 04:03 PM :: West Midlands, England  

George Kargiotakis

Openvpn - MULTI: bad source address from client - solution

Problematic Configuration: OpenVPN server config: dev tun port 1194 proto udp ca /etc/openvpn/ca.crt cert /etc/openvpn/server.crt key /etc/openvpn/server.key dh /etc/openvpn/dh1024.pem persist-key persist-tun server 10.8.0.0 255.255.255.0 keepalive 10 30 client-to-client comp-lzo ifconfig-pool-persist ipp.txt status /etc/openvpn/openvpn-status.log verb 3 push "redirect-gateway" OpenVPN client config: dev tun client proto udp persist-tun persist-key resolv-retry infinite mute-replay-warnings remote REMOTE.HOST 1194 ca /etc/openvpn/ca.crt cert /etc/openvpn/client1.crt key /etc/openvpn/client1.key comp-lzo verb 3 The problem: Using the above config files I continuously got errors like this on the server syslog: May 1 00:00:00 hostname ovpn-openvpn[22563]: client1/X.Y.Z.W:1194 MULTI: bad source address [...]

May 17, 2008 08:49 AM :: Greece  

Jan Tönjes

~/.ssh/config ueberall

Vor einiger sehr langer Zeit habe ich mal ueber “Saving SSH options for specific host” geschrieben. Fuer mich ist die ~/.ssh/config nicht mehr wegzudenken. Bloed ist natuerlich, wenn ich diese Datei auf meinem Rechner zuhause habe, aber auf der Arbeit etc. auch haben moechte. Auf jeden Rechner auf dem ich die Datei haben will raufkopieren, nach jedem Update ueberall neu. Ganz schoen bloed und nervig.

Viel schoener waere es fuer mich, die Datei an einem Ort zu haben, wo sie immer aktuell ist, wo ich immer rankomme, und von wo ich sie mir schnell ziehen kann. Was bietet sich da mehr an als mein Webserver?! Auf der bash ist ein “wget myServer.tld/myFile -O ~/.ssh/config” sehr schnell geschrieben ;-)

Meine ~/.ssh/config passe ich hauptsaechlich zuhause auf meinem Rechner an. Von daher reicht fuer mich eine simple Moeglichkeit diese Datei schnell und unkompliziert von da auf meinen Webserver zu bekommen. Am besten automatisch, dass ich mich nicht drum kuemmern muss. Hier meine Loesung:

  1. Auf dem Webserver einen rsync-User angelegt und ihn der Gruppe “www-data” hinzugefuegt, so dass er in meine htdocs schreiben darf , und in die Gruppe “ssh-allow” hinzugefuegt, so dass er sich auch via SSH einloggen darf (in der /etc/ssh/sshd_config: AllowGroups ssh-allow)
    (adduser myRemoteRsyncUser && adduser myRemoteRsyncUser www-data && adduser myRemoteRsyncUser ssh-allow)
  2. Auf meinem Desktop-PC einen User angelegt und fuer diesen einen ssh-key generiert
    (adduser myLocalRsyncUser && su - myLocalRsyncUser && ssh-keygen -t dsa -f .ssh/myKey)
  3. Die myKey.pub auf dem Websever in die entsprechende authorized_keys gepackt
    (scp /home/myLocalRsyncUser/.ssh/myKey.pub myRemoteRsyncUser@myServer.tld: -> ssh myRemoteRsyncUser@myServer.tld -> cat myKey.pub >> ./ssh/authorized_keys )
  4. Auf meinem lokalen Rechner rsync Befehl zum kopieren der config beim herunterfahren des Rechners automatisch ausfuehren lassen
    (in der /etc/conf.d/local.stop [Gentoo] den Befehl su myLocalRsyncUser -c “rsync -avu -e ssh /path/to/.ssh/config myRemoteRsyncUser@myServer.tld:/var/www/myRemoteSSHConfigFilename”)

Voila. Beim runterfahren wird nun die Datei automatisch auf meinen Webserver kopiert falls sich diese geaendert hat :-) EEEENDLICH!!

May 17, 2008 08:04 AM :: Lower Saxony, Germany  

May 16, 2008

Steven Oliver

steveno


Okay, okay, I lied. I never came back and reported back. I never actually reinstalled Gentoo Linux on my computer either. So life doesn’t always serve you lemonade. Either way though, I’m starting to regain my enthusiasm to blog and for Linux. I recently finished two computer science courses and I find when I’m forced to do work on the computer my desire to non-work things on the computer tends to diminish. I will get Gentoo back up and running though. Its not hard to install and this point and I’ve done it so many times now its not even really that time consuming, its just a matter of sitting down and doing it. Waiting for Gnome to compile, hell I might even go back to Fluxbox at this point. Just because its so quick and easy. Ya know, I really like Fluxbox and other than the two reasons I just laid out I have no idea why. Gnome runs perfectly well on my computer. 3.7Ghz CPU and 2Gs of RAM is plenty for either. Just something about the minimal style that Fluxbox presents entices me.

McCreesh has decided to once again bless us with his “more than likely over your head” wisdom and opinions (he’s in the roll now too). Either way though, we can all look forward to the many threads on the Gentoo Forums about what ever he said.

Enjoy the Penguins!

May 16, 2008 05:54 PM :: West Virginia, USA  

Zeth

ReStructuredText in Django

dbr left a comment on this site:

I concur with the other two comments - this is one of the nicer blog'y site layouts I've seen. The comment system is also actually pleasant to use, unlike every single other one I've (not)-used \o/

dbr (May 16, 2008)

Thanks for the compliment. I have talked before about my philosophy towards forms:

I do not make want to make it like Indiana Jones and the Last Crusade just to make a comment: roll under a flying saw, spell something in Hebrew and then take a flying leap into the abyss. Furthermore moderation of spam is my problem, not yours.

—Zeth on comment-spam (3 July 2007)

dbr continues:

One slight bug, you need to enter two backslashes to make it visible.

dbr (May 16, 2008)

That is not a bug that is a feature! That is the escaping mechanism of ReStructuredText (as well as Python and lots of other languages). The comments form does not allow HTML but it allows ReStructuredText, as I explain below.

Ryan also left a comment:

For your blog post model, what did you do for entering posts? Do you still use the default admin interface, or did you make your own views for posting and whatnot? I haven't looked into it much, but does Django automatically include much in the way of wysiwyg text editors for text fields?

Ryan (May 15, 2008)

Answering your questions in reverse order:

  • Wysiwyg text editors

There is no default Django WYSIWYG text field, but some people use Javascript components such as TinyMCE which slots in nicely (instructions).

  • Default admin interface vs own views

I have the admin interface as one way to enter posts, but I also made a simple command-line tool for entering posts, I also made some scripts for importing all my old posts from Pyblosxom.

I did create one admin view, I overrode the 'delete comment' view to create a button that adds the IP addresses of deleted spam comments to a block list.

At some point I will make a 'Preview' view and button. At the moment I can save posts as drafts but not view drafts in the site template before it goes live.

  • What did you do for entering posts?

I write a new post in a real text editor such as Emacs or gedit in ReStructuredText format, which I can then either paste into the admin interface, or use my little script to squirt them into Django.

Markup in Django

'contrib' forms the 'standard library' of Django. One of these packages is called "markup". It provides filters for three markup languages: ReStructured Text, Markdown and Textile.

I chose to use ReStructured Text because using that to write my new posts because I like the format and getting confident with ReStructured Text will be useful in lots of other contexts also.

To use it in Django, just add django.contrib.markup to the INSTALLED_APPS list in settings.py. In a template, you can load it and use it like this:

{% load markup %}
{{ comment.comment|restructuredtext }}

In the next post I will explain how to write in ReStructured Text,

Discuss this post - Leave a comment

May 16, 2008 03:41 PM :: West Midlands, England  

Joset Anthony Zamora

Removing bar311 worm

I got it from my sister’s digicam. Thanks to Leerz for the walkthrough. This worm is really annoying especially if you are more comfortable doing stuffs in the console.

1. Check for any bar311.exe, Autorun.inf, pc-off.bat files in mounted drives.
2. Delete if found.
3. Edit the following entries in the registry.

HKCU\Software\Microsoft\Command Processor\"Autorun"
HKLM\Software\Microsoft\Command Processor\"Autorun"

Alternatively, you can download Noob.Killer, run it, then watch and learn.

May 16, 2008 04:15 AM :: Zamboanga, Philippines  

May 14, 2008

Zeth

Swap out your ssh keys

Debian and Ubuntu are not random enough

There is has been a bug in random number generator on Debian (from Etch onwards) or Ubuntu (Feisty onwards). You should already have a security update for the number generator. If you have not yet accepted the update then do so.

The Debian and Ubuntu distributions have even made the warning pop up on user's screens. Just apply the update, see below, and replace your keys and you are done.

If you are on an operating system that has apt-get then you probably want to look at what is going on. If you are on Gentoo or another distribution then for now you can just smile quietly to yourself.

Bugs in the number generator are bad mojo because there are less combinations, depending