NetSurf Web Browser

From SamyGO
Jump to: navigation, search

Small as a mouse, fast as a cheetah and available for free. NetSurf is a multi-platform web browser for RISC OS and UNIX-like platforms, including Linux, and more. For more information, visit the NetSurf homepage.

This version is a port of NetSurf to the current Samsung Digital TV platform as part of the SamyGO project.


  • it's very speedy, portable and written in plain C
  • a basic port to an SDL based framebuffer already existed - which I'm building on. However this version lacks lots of features which other ports (e.g. GTK port) already have.
  • it has good HTML and decent CSS support (CSS1 only)
  • it hasn't got any support for JavaScript, plugins or Flash

Download and Installation

System requirements

  • Recent Samsung TV based on ARM/Linux architecture
  • Gallery must be available
  • Games section must be available within the Gallery
  • A compatible firmware version must be running (not the latest ones, which were released in 2010)


  • Download the browser here.
  • Unpack attached TGZ to the root folder of a USB stick. Now you should have a NetSurf folder in there.
  • Plug the USB stick to your TV
  • open gallery
  • goto "manage applications" --> "games"
  • run the 'NetSurf browser'


The SamyGO version of NetSurf has been specially adapted to the TV environment and can be used in two ways.

Using a normal keyboard and mouse

NetSurf can be operated like any PC web browser, using a keyboard and mouse. You will need to run the SamyGO keyboard and mouse extension before starting the browser and plug in a USB keyboard and mouse (if possible, cordless...)

The supported keyboard shortcuts are:

Key Action
Home Opens the main menu
F1 Go back in the history
F2 Switch navigation mode
PgUp/PgDn Scroll by a page
Cursor Move to next link / scroll (depending on navigation mode)

If you always use a keyboard and mouse, you may want to disable the NetSurf Options#Virtual keyboard.

Using the TV's remote

Alternatively, you can use NetSurf with the TV remote only. There are limits in how applications can access the TV remote, so please read the following section carefully.

Normal navigation

  • The red button opens the menu (see below)
  • The green button is the "History: Back" function
  • You can switch between different navigation modes (for the arrow keys) using the yellow button.
    • Link navigation (default) moves the cursor to the next link
    • Page Scroll and Scroll modes scroll around (duh)
    • Pointer mode moves the "mouse" pointer
    • Press yellow button again to return to Link navigation mode.
  • The Enter key (in the middle of the arrow keys) activates links or edits HTML form elements.
  • Press blue button to exit Netsurf and return to the Gallery.

Warning: Do not press any other buttons on the remote - strange things have happened for me while testing, although I'm now trying to exit NetSurf on any other button press. You can usually recover by pressing the "TV" button, then "Content", then "TV" again.


Press one of the number keys to activate one of the menu options. In long menus, Press the 'up' or 'down' keys to switch between the menu options.

Virtual keyboard

You can enter text and URLs using the virtual keyboard (VKB) function. When the URL widget or a HTML form element is focused, the VKB will be activated. The VKB status is displayed at the right side of the URL bar. In VKB mode, the keys are used differently:

  • The red button still opens the menu
  • The green button deletes the last character (like "Backspace" at the PC)
  • Switch between different VKB modes using the yellow button.
  • Press the number keys repeatedly to input numbers, lowercase or uppercase letters and symbols. The currently composed letter is displayed in the VKB status widget.

By default, the letters are mapped much like on a English mobile phone (see also following table), but the mapping can be changed using NetSurf Options#Virtual keyboard.

  • Note: Press the number keys slowly (about once per second), otherwise the remote control will interpret this as a continuous press and the letters will start spinning around much faster than you want to.

The default key mapping is:

Key Letters
0 Space . , ! ?
1 : / @ $ &
2 a b c
3 d e f
4 g h i
5 j k l
6 m n o
7 p q r s
8 t u v
9 w x y z


Please discuss any questions in the SamyGO forum, using the NetSurf thread.

Fonts / International Text

The default fonts which are delivered along with NetSurf are the Bitstream Vera fonts. They are freely distributable, but they only have Western European characters. (You will see little squares for all 'foreign' characters.)

So, if you want to surf to web pages written in other languages or if you just don't like the default fonts, you can exchange the font files like this:

  • copy any better font from your PC (must be in TTF format, on windows you'll find them in c:\windows\fonts)
  • place them in the framebuffer/res subdirectory of your 'NetSurf' directory
  • and rename them so that they replace the existing files.

For example, if you want to use Arial and Times New Roman:

Rename from to
arial.ttf sans_serif.ttf
arialbd.ttf sans_serif_bold.ttf
... etc...
times.ttf serif.ttf
... etc..

Configuration (Options file)

NetSurf can be configured by editing the file NetSurf/framebuffer/res/Options. The possibilities are documented in the sub-page NetSurf Options.

Bookmarks (Bookmarks file)

The newest version of NetSurf now has a simple bookmarks system. The bookmarks are listed in the file NetSurf/framebuffer/res/Bookmarks. The possibilities are documented in the sub-page NetSurf Bookmarks.

Source code

NetSurf is Open Source and licensed under the GPL. Source code and building instructions are available on the NetSurf Source site.