Google recently hosted an event about Chrome OS. During the event they announced a pilot program for developers/testers to try the reference hardware – the Cr-48 prototype. I applied for it, and within 48 hours, the thing was at my doorstep.
They really do mean speed!
Thanks Google for the surprise gift.
Now let’s get to using it and sending some constructive feedback – using just Chrome OS. No Vim to type posts, no Gimp to get and edit screenshots, no FTP client to upload images. Will see how that goes.
After a recent upgrade of Minefield (nightly trunk version of Mozilla Firefox) my Sync was completely broken. All I got was the following error message when I started Minefield:
Wrong Sync Key error
One installation of Firefox kept working fine for me, all the others failed to sync after that particular update.
It turns out, the old Sync Key we all cherry picked is no good. A Minefield update probably changed my key to a longer, harder-to-remember key – I must say without any indication/notification. I reckon harder-to-remember also means harder-to-guess, so its a good thing for the security of my data in the cloud. However, on the flip side, I will need to print the key and keep it is some safe place – there’s no way I am going to remember that one! Or even better, I’ll put it in my Passpack.
Once I figured that the Wrong Sync Key error was not because of broken Minefield, but because Minefield indeed changed my key, I could quickly bring all the other installations of Firefox in sync again.
All that needs to be done is, grab your new key like so:
Open Minefield (or Firefox) button → Options → Options (Which is Minefield (or Firefox) button → Preferences → Preferences in Linux).
Go to the Sync tab
Expand the Manage Account group
Click on the My Sync Key item
Copy/Print/Write down/Passpack your Sync Key displayed in the dialog that shows up
Then in the installation of Firefox where you get the Wrong Sync Key error, update the Sync Key with the new key. This pretty much involves resetting Sync information and setting it up anew, like so:
Open Minefield (or Firefox) button → Options → Options (Which is Minefield (or Firefox) button → Preferences → Preferences in Linux).
Go to the Sync tab
Expand the Manage Account group
Click on the Stop Using This Account item
Select Reset All Information in the dialog that shows up.
Now setup Sync afresh in the Sync Preferences – using the new Sync Key
I hope when this changes makes into the Beta, there will be a proper notification and process to upgrade the keys in all Firefox installation. Until then, hope this helps…
When you access your files via the Places menu, (e.g., Places → Home Folder), there are two ways you can view your files (among many other ways, I guess):
The file manager window has a browser pane on the left. This pane (also called the Side Pane) provides easy access to your bookmarks, mounted drives, etc. This is my preferred way. Here’s what it looks like:
File manager with browser pane
The file manager window does not have a browser pane. One of the reasons I am not so comfortable with this is that it opens a new window when you double-click on a folder. Too many windows can result if you are browsing around. And here’s how it looks:
File manager without browser pane
It is a matter of personal preference. Since I use Ubuntu extensively, and its default is to show the file manager with the side pane, I am kind of used to it. So when I started working on another computer where the default was without the side pane, I wasn’t very comfortable.
But as it turns out, like with many other customization options on Linux, this was easy to change.
All it takes is to set the configuration key /apps/nautilus/preferences/always_use_browser to be true. There are a couple of ways you can do that.
With the Configuration Editor GUI
You can start the Configuration Editor from the Application → System Tools menu. Or use the gconf-editor command in the Terminal. Once in the Configuration Editor, navigate to the /apps/nautilus/preferences/always_use_browser key in the left side pane:
/apps/nautilus/preferences/always_use_browser key in the Configuration Editor
Check the checkbox to enable the preference.
With gconftool-2 command
Much easier way, for folks who are not so much against the Terminal. Open the Terminal and use this command:
Idea is to store the state of your Ubuntu installation in the cloud, so that it can be cloned on some other machine, or used to restore after a brand new installation.
This is especially relevant because of the 6-month release cycle. I’ve spent many hours – if not days – to bring my system back to where I like it to be, after every fresh install. Furthermore, it may encourage folks to do a fresh install (versus an upgrade), thereby avoiding many problems that often arise after an upgrade. This is great for anyone who provides support on the the Ubuntu Forums – or other support avenues.
Another reason I like this is that, features like this truly justify Ubuntu One. Ubuntu One needs more ideas like OneConf to harness its great potential, and distinguish it from the other online storage/file sharing services. Not to mention the value it adds to Ubuntu as a desktop Linux distribution.
Grab HD clips from Sony HDR-HC7 HDV camcorder and convert them to HD videos on the web (Vimeo, YouTube, etc.) fairly easily on Linux – specifically, Ubuntu
I’ve been trying to address this problem for a while now. It has been about a year since I tried last. I remember using Kino and giving Cinelerra a shot. For variety of reasons, I did not like either and I gave up on the effort.
Recently, when Ubuntu 10.04 shipped with PiTiVi as the default video editor, I decided to give it another go. Since I had used OpenShot briefly in Ubuntu 9.10, I thought it would be educational to try both the video editors to accomplish the task. So I created a short sample video in both these editors – embedded below.
I am a video pro by no means. I am just a novice user trying hard to shoot least shaky HD movies and sharing them with family and friends – while not embarrassing myself! So please take my input and opinions with a grain of salt. But at the end of it all, I think I prefer OpenShot – at least for my camcorder, my level of skill and expertise using video editors.
Now that the result is out of the way, here’s the rest of the story…
Workflow
Workflow I would like to set up is simple:
Grab clips from the camcorder
Convert clips to a format the video editor likes (I would rather not, but necessary with some editors)
Import them into the video editor
Edit/mix the clips and compose the video
Export it to desired target
Grabbing clips from the camcorder
This is something I learned from my previous experience with Kino. I use dvgrab to grab clips from the camcorder. Here is the source of the script I use:
Sony HDR-HC7 is an HDV camcorder. As such, the above script grabs the clips in form of a sequence of MPEG-2 transport stream (.m2t) files. I use the -timestamp option so that the names of the files include the time when the video was recorded. I also store the output of this script for later use. It includes useful information about the clips – like the timecode, length of the clip in frames, size of the clip etc. Here’s a sample output:
Using OpenShot
Importing video
One thing I really loved about OpenShot is the fact that it can consume .m2t files! Kino did not, Cinelerra did not, PiTiVi does not. So this is great. It completely eliminates one step in my workflow.
Import function in OpenShot (the big green ‘+’ sign in the toolbar) allows you to add video (my .m2t files), audio and other media files.
Editing video
For a simple video, like the one I created for this experiment, all you need to do is drag the clips into the timeline – the lower part of the interface – and position them to define the sequence of scenes in the movie.
Here are some editing/mixing features of OpenShot I used in the making of the sample video:
The razor tool can be used to snip clips at any given position
Markers can be added on the timeline to mark significant positions in the timeline
Video in a clip can be turned ON or OFF
Audio in a clip can be turned ON or OFF
Effects like Fade in/Fade out can be applied to individual tracks
There are many transitions and effects, which I did not use in the sample video
I did not play with titles, credits or subtitles, so I cannot say much about those features. All in all, you can do some basic editing and mixing really well.
Exporting video
Another thing you got to love is that OpenShot comes with canned export profiles. Profiles have export parameters set to work with DVD, Web (Vimeo, Youtube and the likes) etc. The fact that export to Vimeo-HD and Youtube-HD worked so well, make me feel very optimistic about DVD export – which is going to be my next endeavor.
Here’s a screenshot of the export dialog.
Exporting for Vimeo using OpenShot
And finally, here are the videos out of OpenShot, on both Vimeo (exported with Vimeo-HD profile) and Youtube (exported with Youtube-HD profile).
OpenShot Vimeo HD video:
OpenShot Youtube HD video:
Using PiTiVi
Importing video
Like I mentioned, PiTiVi does not consume .m2t files. Apparently, it has the capability, but there’s probably a bug currently, that keeps it from recognizing the files correctly. So there’s hope!
But for now, you must convert the .m2t files into a format that PiTiVi can read. I used ffmpeg to do so. Here’s the command (and its output) I used for .m2t to .mpg conversion:
Converted .mpg files can now be imported and worked with in PiTiVi.
Editing video
Much like OpenShot, PiTiVi allows you to add video, audio and other media files to a project. You then drag the clips in the time line and position them to define the sequence of scenes in the movie.
Here are some editing/mixing features of PiTiVi I used in the making of the sample video:
The scissor tool can be used to snip clips at any given position
I could only add one marker (the cursor), but I am sure there is a way to add more. I just did not try to find it
Instead of Fade In/Out effects or completely turning ON or OFF a clip, PiTiVi allows you to set track levels (brightness for video tracks, volume for audio tracks). The levels can vary through the track depending on the levels in the beginning and the end of track. I think this provides an added level of flexibility. But also, at the same time, makes simple Fade In/Out slightly harder to implement. I like it though
Audio from a video track can be separated into an independent track. This, also, I think is a very handy feature
Again, I did not play with titles, credits or subtitles, so I cannot say much about those features. I also did not easily find any transitions or effects, that could be applied to tracks.
I had trouble synchronizing audio and video in PiTiVi (synchronizing the ‘gong’ with dropping of CD sleeve). I was finally able to synchronize the two with a lot of trial-and-error. The one that rendered kind of synchronized (one below) does not actually look synchronized in the preview. The preview in PiTiVi did not seem very accurate.
Exporting video
PiTiVi does not come with canned export profiles. Although I found a way to export to Vimeo-HD on the Vimeo help sites. It is left to the users to do the research. As you might notice though, the audio/video out of PiTiVi is a bit choppy at times. I probably did not get all the export parameters right. But then again, PiTiVi does not make it any easier.
Here’s the screenshot of the export dialog of PiTiVi:
Exporting for Vimeo using PiTiVi
And here is the resulting Video:
Conclusion
I tend to compare video editors in three different categories – Import, Editing and Export. A good video editor should support a wide variety of input formats. It should have a good balance of powerful and easy-to-use editing features. It should export video in formats that can be played flawlessly on popular targets like the Web (Youtube, Vimeo, etc.) and media players (DVD/VCD players, desktop media players, etc.).
At the time of this writing, I think OpenShot trumps in all the three categories.
In my case, PiTiVi could not import .m2t files. This added a step in my workflow. Hopefully this is temporary and will be fixed soon
PiTiVi has some neat editing features, but lack of transitions and effects shifts the balance in OpenShot’s favor. Also everything you can do in PiTiVi can be achieved in OpenShot to some extent.
OpenShot has export profile for popular targets. This is a must for anyone who doesn’t want to get lost in the many gory details of conversion parameters and their optimal values – certainly for me
Looks like the Linux video editor scene is starting to look up. I hope it only gets better from here.
If something I mentioned in this post is inaccurate/wrong, please point it out in the comments. Hope this helps!
Default Conky in Ubuntu 10.04 (Lucid Lynx) does not come with xmms2 support built in. Since I use xmms2 extensively, building conky from source was the only option. Here’s how I did it:
That should install Conky with xmms2 support in /opt/conky. And here’s the obligatory screen shot:
XMMS2 music display with Conky
Just for reference, here’s the conkyrc I use for music:
To do some PHP development (read experimenting) on my laptop I wanted to get a web-server with PHP running on it. Since this is a laptop with limited resources, I decided to try Nginx instead of Apache. Nginx is known to use less memory as compared to Apache. I am hoping this will keep the laptop still usable while the web-server is still running in the background.
This is not an exhaustive how-to, but this is how I installed all that is needed to get my first PHP page up.
Let me begin by mentioning that this laptop currently runs the development build of Ubuntu Lucid (which will become Ubuntu 10.04 LTS sometime in April 2010).
To begin, I installed following packages from Ubuntu Lucid repositories:
% sudo aptitude install nginx php5-cgi lighttpd
Although I am not using lighttpd, the package is required because it provides the spawn-fcgi script.
Nginx supports FastGI natively. PHP is served as a FastCGI process.
Modify /etc/php5/cgi/php.ini to include the following line:
cgi.fix_pathinfo=1
Setting this configuration makes sure that PHP sets path information of the executing script in a way that conforms with CGI specifications. The line may already exist in the file, but commented. Just un-comment it. This is an optional step (at least in Lucid version of PHP) since the default value of cgi.fix_pathinfo is 1.
To spawn FastCGI add the following line to /etc/rc.local every time the computer starts.
This script (spawn-fcgi) was installed via the lighttpd package.
Finally, I configured a website in Nginx and enabled PHP via FastCGI. This configuration would typically reside in /etc/nginx/sites-available/<website_name>:
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/localhost.access.log;
root /var/www/blog;
index index.php;
fastcgi_index index.php;
#
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
When all is set up properly, you can test it with the phpinfo() command. It should look something like the following:
phpinfo() screen with Nginx+PHP setup
All this, mostly a note to self. But hope it helps someone out there.
In the list, there’s one feature addition that bothers me – default support for Personas. This is not exactly a new feature, it has been around as a Mozilla Labs project.
I usually stick with the default theme of any application I use. It is the one that developers have put most effort in. But just for kicks, I have tried out Personas in the past. Each time, it did not last more than a few hours before I uninstalled it.
In my opinion, Personas – no matter how popular, or highly rated they are – mess up the readability of Firefox window. I am sure it is a great distraction for people who spend most of their time playing with themes. But isn’t that why there are extensions/add-ons? If someone is so inclined, install the Personas add-on and you are all set to hurt your eyes!
Here, you be the judge:
Firefox with one of the popular Persona themes, hurts my eyes! (click to enlarge)
That is Firefox with one of the more popular Personas. And here is Firefox with it’s default theme:
Firefox with its default theme is much more readable… (click to enlarge)
Not sure about you, but I’d stick with the default theme.
But hey! no one is grabbing me by the collar and forcing me to use Personas. So it’s all good.
Only thing I am curious about is the thinking behind picking the Personas Labs project to be integrated into Firefox. Why not Prizm? Or Weave, that would be awesome! Or Ubiquity perhaps. All these add value to Firefox too. May be they all have the merit, but are not mature enough?
I hope Personas was not picked because Google Chrome has a developing themes ecosystem… (and bunch of folks claiming ‘Oh! look how cool my Chrome looks’).
Granted that Personas is still a work in progress (it does not theme buttons and icons, like actual themes do), and that it is a better way to implement themes. But in the end, I still maintain that Personas was great as an add-on, and it should have stayed that way.
With rants and opinions out of the way, what is your favorite Firefox 3.6 feature?
Today I had a kind of a scare. This morning, I noticed that this blog was down. My first guess was that it should probably be related to the intermittent outages my host was facing.
The blog was sending back 500 – Internal Server Error responses. The error.log file was filled with messages like these:
[Tue Nov 24 10:38:42 2009] [error] [client 149.117.7.28] Premature end of script headers: index.php
[Tue Nov 24 10:39:23 2009] [error] [client 149.117.7.28] Premature end of script headers: index.php
[Tue Nov 24 10:41:05 2009] [error] [client 209.85.238.214] Premature end of script headers: index.php
[Tue Nov 24 10:41:46 2009] [error] [client 209.85.238.214] Premature end of script headers: index.php
As usual, I looked for help on the WordPress Forums. When the initial suggestions did not resolve the problem, I decided to dig deeper. I downloaded WordPress and extracted a clean install. All I did was moved over this blog’s wp-config.php into this directory. It again resulted in the same 500 – Internal Server Error response. That almost certainly indicated a corrupt database.
Thankfully, reverting to the last good backup is fairly easy in DreamHost Panel. The Restore DB option is available under Actions for each database in the Main Menu → MySQL Databases section of the panel. After restoring the database, the blog was back up and running.
Now, only thing bothering me is – what caused the database corruption? Was it some server glitch, that would hopefully never happen again? Was it a plugin (like IntenseDebate, etc.) that misbehaved? Or a blog management client (like WordPress for BlackBerry, etc.)? Not sure. But the mystery does make me nervous. But for the time being, things look OK!
Chrome OS Update
In my last post about running Chrome OS in VirtualBox, there are some screenshots. As you can see, the default screen size of 800x600 is pretty tiny to do anything useful.
To increase the screen size, I tried two ways I would have tried for any other Linux guest:
Not sure why, but I could not install any Guest Additions to the Chrome OS running as guest.
I tried to update /etc/X11/xorg.conf to define screen modes (by first dropping to a shell using ALT + CTRL + t – which, by the way, does not always work for me ). But Chrome OS would not let me save the /etc/X11/xorg.conf, even with sudo. Is this normal?
In any case, I had to take the long route. Updating ~/chromiumos/src/rootfs_static_data/common/etc/X11/xorg.conf and re-building the image. But it worked! Now I am running Chrome OS in 1024x768 mode, which is so much better!
Chromium OS build in VirtualBox, running Google Wave is so much better at 1024×768
Ever since they made the Chromium source code public yesterday morning, I’ve been itching to build it and take it for a spin. I did not know it would take only a couple hours to do that!
Getting and Building
I am so impressed! The instructions on the Getting and Building a Chromium-Based OS page are precise, to-the-point and.. they work! I am not sure if this is brilliant scripting, great documentation, me having just right prerequisites (Ubuntu Karmic Koala), or a combination of all these. But it took me just over an hour or so to download source and build a ‘.vmdk‘ file for VirtualBox. I did not see that coming.
I’ve built other projects from source before. It always involves some figuring-out. Sometimes the documentation is not adequate – may be inadequate for my skill-set. Sometimes the prerequisites are not clearly specified/checked. Building an entire OS, I was preparing for a few days of reading up and figuring things out.
But it was none of that. I just followed the steps – mostly word-to-word – and I had a virtual disk image (.vmdk file) at the end of it all!
The only change I had to do was to BASE_FROM in ~/chromiumos/src/platform/chrome/copy_chrome_zip.sh to use build.chormium.org instead of chrome-web. I think this was because I chose not to build Chromium (browser) from source. I am sure this will be ironed out soon (may be it is already).
Using in VirtualBox
I followed the instructions to Convert the image for VMWare, which creates a .vmdk file. Instead of using VMWare workstation, I used VirtualBox to fire it up.
Impressions
I love the concept of Google Chrome OS. I think it is very relevant to how we use the computer these days. It would be even better if Chrome OS would coexist with a normal OS on any laptop. I agree that most often we only use the computer to access the web and do most of our things on the Internet. But I am not ready to give up the full-fledged OS, not quite yet. Does that remind me of SplashTop?
Here are a couple of obligatory screenshots:
Chromium OS build in VirtualBox, running Google Wave
Following is the list of Apps currently on the home page. These showed up only today. Yesterday when I was trying the OS for the first time, one could only use @google.com usernames to sign in. I am sure things are going to be changing fast in the next weeks/months.
Apps on Chromium OS home page
Next…
Next thing I am going to try is to get hold of a 4GB USB drive and see if this image works on my laptop.
Secondly, I am curious to see if the OS updates itself in the VirtualBox, like Google has mentioned. If it does, I should not be required to build another image… ever!