Skip navigation.

Log in | Sign up

Opera Private mode

, ,

While Opera doesn't have a built in private mode (yet?), it is fairly easy to make it behave in a very private way. You have probably noticed the -private command line option listed in opera -help and tried it to see what it does. We had an implementation of private mode internally some time ago which we unfortunately didn't finish, and we forgot to remove this option when we decided not to release it.

But fear not, it is still possible to make Opera behave privately! All you have to do is use a simple wrapper script that sets up a protected and random personal directory (the place opera stores all its user data). I know, "script". It may sound daunting, but it really isn't, as long as you know how to save a file as root, aka "super user".

Running Opera in Private mode is very nice if your PC is borrowed by people you know - simply make them use the Opera Private mode browser, and they don't have to worry about you seeing anything they didn't want you to see.

What it does is quite simple:

  1. Define a temporary random name folder to store the data in.
  2. Set the umask to 0077, which means that all the files will be unreadable to anyone but the one who started Opera
  3. Insert settings in the opera6.ini file, to prevent you from having to see the licence dialog and the KDE keyboard shortcuts message every time, in addition to setting the Opera title to "Opera Private mode"
  4. When you exit, the folder will be removed.

Thanks to Arve for the initial implementation.

To set it up, fetch the opera private mode wrapper and follow the instructions.

I haven't investigated how this can be done on Windows and Mac, but it should be possible there too. (Please tell me!)

Opera Link explained

, ,

Now that we've released the first build of Opera "kestrel" 9.5, I thought I'd explain the feature which Adam, Karianne, Petter, Anton, Kay, Esteban and I have been working the most on - Opera Link.

What it is?
Opera Link is a feature of Kestrel which is designed to let you keep the same bookmarks and speed dials on different computers with Opera installed.

It is designed to be as simple to use as possible, causing minimal disruption in your workflow. Therefore, you will not find a lot of bells and whistles in this feature. A status indicator is all you'll see after having logged in from the "Synchronize Opera..." menu item in the File menu.

What does it synchronize? Bookmarks, Speed dial entries, Personal bar items, web panels, search engines, and notes, with more to come. You can pick which to sync in the login dialog, and the checkbox for Personal bar also controls whether web panels are synced.


Once logged in, Opera will remember the username and password, and log you in automatically the next time you start. If you don't want to be remembered, you must log out from the File menu before you quit Opera. (Who quits Opera anyway?)

How does it really work?
The idea of synchronization is old, and many applications and electrical appliances have implemented ways to synchronize e-mail addresses, phone numbers or street addresses. Sometimes all, sometimes just a few of these. E-mail clients can synchronize mail and contacts against your phone, and some web browsers with the help of extensions can synchronize against online bookmark services such as del.icio.us.

Opera Link relies on this community site, My Opera, to work. In our server rooms here in Oslo, there are a few database, application and authentication servers that receive data from Opera, process it, store it, and send it off to any other Opera installation that comes by with your username on it.

For Opera to send your stuff to the server, it goes through all your bookmarks and speed dials, puts them in a custom XML format, and sends it through a secure (TLS) connection to the server. The server will then store the items in its database. When another Opera with your login name comes by, Opera does the same as before, but the server will also look through what it already has to see whether something is different between the database and the new data. If there is something on the server which was not in the data Opera sent, it will return these items to Opera. Opera will then merge this with its own bookmarks.

When you add, modify, or delete a bookmark, Opera will store this status. Every so often Opera will connect to the server and repeat the synchronization process, this time sending only the changes to the server. Again, if the server has something new for Opera, Opera will get this back.

Opera identifies bookmarks by a Universally Unique Identifiers (UUID), not names or addresses. A UUID is a long number which is designed to be genuinely unique, thereby "Universally". Because of this, there is no way for two Operas to generate the same ID even if the address of the bookmark is the same. Although we hope to add detection of identical bookmarks in the future, it can currently happen that you get duplicate bookmarks if you have the same bookmarks at work and home before you synchronize with My Opera. To resolve this, you can simply delete the ones you don't need, and this will spread to the other Operas you have.

Edit 27.11.08
We have added the possibility to remove duplicate bookmarks from your Opera Link account. Simply use the "Duplicate removal" menu entry in the Opera Link menu after logging in to my.opera.com

Top 5 things I want in Opera

, , , ...

I got tagged by Olli asking me to list the top 5 things I want in Opera.

The list

  • Better integration with UNIX, especially KDE and Gnome
  • A way to syncronize my entire profile, cross-platform
  • Fit to width in site prefs
  • Automatic update machanism
  • The ability to open relative paths from command line (opera ./filename.html)


These folks have hereby been tagged

Speed dial tips

, , , ...

Article updated for 9.2 release

In the weekly we released on feb 28th, we introduced a feature called "Speed dial".

What is it?
It is a simple grid of thumbnails, a visual kind of top 9 bookmarks, that take the place of the mostly useless blank page.

Using sped dial
To add your favourite page as a speed dial entry, you can:
  • Drag a tab to a thumbnail
  • Drag a bookmark to a thumbnail
  • Click an empty thumbnail
  • Use the tab key to navigate to an empty thumbnail and press enter.
  • To replace a thumbnail, right click it and press Edit. The keyboard way is to press the menu key (the strange key next to the windows logo key) or alt+Enter, this will bring up the config dialog again.

There are four ways to access your speeddial entries.
  • Click the thumbnail
  • Press Ctrl+1 to 9 on you keyboard (Cmd+1 to 9 on the Mac)
  • Enter 1 to 9 in the address bar and press enter
  • Use the tab key to navigate through the speed dial entries and press enter when you reach the one you want

As you can see we have paid close attention to accessibility, so that both keyboard and mouse users can use it with ease. For the visually impaired, the fonts in speeddial follows the settings for dialogs and use decent contrast.

Speed dial is optimized for 1280 x 1024 resolution, but it scales well below that, with a lower limit of about 400 X 450 for the opera window itself. Zooming is currently not possible.

Tips
Some people just want a blank page instead of speeddial. One obvious way to achieve this is to use the "Hide Speed dial" button in the lower right corner of speeddial. This button sets a permanent setting stored in the file opera6.ini in your opera user folder. To use even more settings, go to opera:configs speed dial state. Options are
  • 0 for folded (like when pressing the button)
  • 1 for normal
  • 2 to disable modification and
  • 3 to disable it completely

Another way is to use a button that opens the "opera:blank" instead, this one: New page (Click it if you use Opera, and you get a custom button installed)

Other times, you don't want to open a new page at all, you just want a button that toggles speed dial on and off in the current tab, and this one will do that for you: Speed dial. This can be a little buggy, but it works ok for its purpose.

All speed dial entries are reloaded when you click the reload button in the address bar. Each speed dial entry can be reloaded separately by right clicking it and choosing Reload. Each entry can also be set to reload every so often (from the same menu), this is quite handy. You may want to do this if you rely on the speed dial to determine if the page is updated, since reloading it is the only way to update it. We will try to improve this later, like for example updating it when you visit a page in speed dial.

In Kiosk mode, speed dial is disabled. To enable a special, uneditable version of speed dial for kiosk mode, append -kioskspeeddial to the command line (opera -kioskmode -kioskspeeddial). This is great for schools, libraries, hotels and other public institutions that need a simple and safe way to give information to their users.

Debian on a Fujitsu Siemens Amilo pro v3205

, , ,

A little while ago I bought a new laptop for myself, a Fujitsu Siemens Amilo pro v3205. I of course wanted to install some sort of linux distro on it, and as I've grown to love anything based on debian, I decided to go for the original this time.

Installation
I decided to use the netinst for Debian testing. Detection of all hardware except wireless went well, so I could sit back and relax while the installer downloaded the packages over our 20000KBps (its really just 9000) line.

To get the wireless working, I initially downloaded and compiled the ipw3945 source from intel, but on closer inspection it appeared that the driver is now included as a package in debian. Nice. I had to install the firmware-ipw3945, ipw3945d and ipw3945-modules-2.6-686 packages.

To get the correct display resolution, I had to install the package 915resolution. UPDATE: Use the "intel" driver instead of the i810 driver, and the 915resolution package is no longer needed. The display is lovely, with a decent viewing angle and a great 1280x800 resolution on 12.1 inches, thats 125DPI.

Everything else is Just working(tm), including bluetooth and the multi-format card reader. Install kdebluetooth to get bluetooth integration in kde (send files etc).

The machine is very silent. It takes quite a bit of processor activity to make the fan start, and then it only runs for a few seconds. For power management I removed klaptop and installed kpowersaved instead, a frontend to the powersaved daemon. Both CPU cores are clocked at 1Ghz when idle, and one or both goes up to 1.66Ghz when there is any heavy usage.

Specs

lspci
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 (rev 02)
00:1c.2 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801G (ICH7 Family) IDE Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controller AHCI (rev 02)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 02)
01:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)
07:08.0 Ethernet controller: Intel Corporation Intel(R) PRO/100 VE Network Connection (rev 02)
07:09.0 FireWire (IEEE 1394): Ricoh Co Ltd Unknown device 0832
07:09.1 Generic system peripheral [0805]: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19)
07:09.2 System peripheral: Ricoh Co Ltd Unknown device 0843 (rev 01)
07:09.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 0a)
07:09.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 05)


cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU         T5500  @ 1.66GHz
stepping        : 6
cpu MHz         : 1000.000
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips        : 3330.64

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU         T5500  @ 1.66GHz
stepping        : 6
cpu MHz         : 1000.000
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc pni monitor ds_cpl est tm2 cx16 xtpr lahf_lm
bogomips        : 3326.53

Installing Unslung on a Linksys NSLU2

Between where I live and work, a new SIBA electronics shop just opened. It is situated next to the ICA grocery store, so it was just too tempting to enter SIBA before I went shopping for food. So I did, and after a little while I came across the computer department. They had two racks full of network gear, one with only d-link stuff, the other one with linksys stuff. As I was looking through the linksys rack I saw one of the small devices I have been thinking of buying, the Linksys NSLU2.

It is a "Network Storage Link for USB 2.0 Disk Drives ", an apparatus whose one end you plug into a LAN router and the other (two of those actually) into a usb storage medium. It is very clever and allows you to share your files across many computers and locations without having to run a PC all the time.

You guessed it, NOK895,- unzipped from my visa in no time. Well at home, I had to leave it be for two whole days - I had other stuff to do (listen to Opera and drinking beer at Underwater one day, the next day drinking wine and eating at Gautams place).

Today I finally got round to doing something to the NSLU2. I haven't connected it to a router yet, rather I just connected it directly to lan0 on my debian-on-hp laptop.

Like the topic says, I have replaced the firmware with Unslung. Unslung is one of many firmware replacements for NSLU2, and is based on the original firmware, which is linux based, so Linksys distributes the sources. What it adds is basically two things (maybe more):

  • Telnet support
  • Unslinging support.


Together, these two can be used to rebuild the whole thing. Unslinging means to copy the whole filesystem to an attached USB disk, and boot off that. This is all taken care of by a script that is included in the new firmware, and allows you to install packages like elinks and ssh on the thing. But first you need telnet access of course. :smile:

The process of installing teh new firmware went as such:

  • Download the Unslung firmware, unzip it.
  • Disconnect all disks.
  • Use the web interface to "upgrade" the firmware.
  • Automatically reboot.


All very easy. Now for the part where you unsling it and prepare for package installation. This was a little more work, and since the box doesn't have internet access I had to configure my ethernet card as well.

  • Shut down the box and unplug the disks.
  • Boot up and telnet into the box
    telnet 192.168.1.77

  • Connect a memory stick, wait for it to be mounted
  • Go into the web-administration and format the drive. This HAS to be done by the device, formatting it with anything else will not work (I don't know why yet, but so said the howto).
  • In the telnet session, run
     /sbin/unsling disk2 
    This will perform the needed operations including copying the filesystem to disk2 and configure the boot sequence.
  • Reboot leaving the disk plugged
  • Done


With all that covered, it was time to install some packages. This is done by the "ipkg" command, which resembles apt-get quite a lot. Normally you would run "ipkg update" and then "ipkg install pkg-name", but since it doesn't have internet access, I downloaded all the packages I needed from the repositoriy via wlan0, and set up an apache server so that the box could fetch packages on lan0.
ipkg install http://192.168.1.2/ipkg/package-name.ipk


The first thing I installed was OpenSSL, zlib and then OpenSSH. I proceeded with sudo, ncurses, bash, elinks, adduser, nano, strace, zip and tar, in that order.

All set! It was fun :smile:

OpenSlug
I rarely need the web interface as I want to use NFS for filesharing. After having installed the Unslung, I found that it was confusing to use for me as a linux user. For example, Unslung has its passwd file in several places other than the normal /etc/passwd, making it a strange experience to add users. So, I flashed it with OpenSlug instead, and it was more true to linux. More details coming as soon as I get to using it more - I installed it before going to sleep yesterday :smile:

x.org 7 and Opera

When xorg 7 was introduced, so was a new file hierarchy for X. In essence, xorg 7 now installs in FHS paths and so keeps all its binaries in /usr/bin instead of in /usr/X11R6/bin. This change has posed some headaches for distribution maintainers and software developers alike, Opera included.

For example, debian has symlinked /usr/X11R6/bin to /usr/bin since some applications hardcode /usr/X11R6/bin to be the location of X libraries. This solution - which seems to be the way people around the world are solving it - in turn caused trouble for Opera.

When installing Opera, the deb and rpm packages will place a startup script in /usr/bin/opera, and for historical reasons, write a symlink /usr/X11R6/bin/opera that points to the script. You can see where that leads if you use xorg 7 with the symlink: the Opera installer will overwrite its own startup script - with a symlink! In other words, Opera will not start.

We solved this partly in this weekly, but simply checking if /usr/X11R6/bin is a symlink or not before writing to it. However, our overworked package maintainer made a small error in the symlink (if it is written), so now Opera will not start if you try to run /usr/X11/bin/opera (My KDE does this for example). The reason is that the symlink wrongly points to /bin/opera where is should point to /usr/bin/opera. Change this by executing, as root:
rm /usr/X11R6/bin/opera && ln -s /usr/bin/opera /usr/X11R6/bin/opera
and you are fine :smile:

Please note that this will not happen again since we have decided not to write the symlink at all in the deb packages. Please tell us if this causes any trouble for you.

HTML feeds trouble in build 229

, , , ...

NOTE: Build 236 has this fixed!
Due to bad timing in our internal build process, a stylesheet snuck into this weekly for unix that should never have been there. This stylesheet is mime.css and controls all mail/news/feeds appearance. The stylesheet causes rss feeds not to display if you prefer HTML instead of text (this is the default setting and can be changed in the Mail window View menu > Display). You can fix this yourself by changing a single line in the mime.css file. The file is in the /usr/share/opera/styles/ directory. Change
div.headers {display: none;}
into
div.headers {visibility: hidden; height: 0;}
After having done this you must save the file a place you have write access to, such as /home/username/Documents. After that, open this link: opera:config#UserPrefs|MIMEStyleFile and choose your file. Press Save in the section (scroll way down to find the save button) and you are done. Click another feed item and everything should be fine. Sincere apologies for this...
November 2009
S M T W T F S
October 2009December 2009
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30