uzbl – a terminal for the web – in gentoo :)

I’ve been using firefox for too long.

Its excellent vimperator extension has prevented me from switching to anything else, but it is beginning to show its age. Slow loading times, occasional crashes, horrible JS performance…

Meet uzbl. Wordplay for usable. Its developers describe it as web interface tools which adhere to the unix philosophy. I like to think of it as a terminal for the web.

I have valid reasons: Instead of using tabs, I just spawn uzbl windows whenever I need something, then close them. Same as a terminal. That is possible because it loads instantly – like a terminal! Add the fully customizable vim-like bindings and very good webkit engine and you have a winner!

The fact that I’m using awesome (a tiling wm) also helps, since it manages all the windows for me.

Since I like uzbl so much, I added it to the portage tree:

[I] www-client/uzbl
Available versions: (~)0_pre20091130{tbz2} **9999{tbz2} {helpers}
Installed versions: 0_pre20091130{tbz2}(04:03:14 PM 12/04/2009)(helpers)
Description: A keyboard controlled (modal vim-like bindings, or with modifierkeys) browser based on Webkit

One tagged release and a live ebuild (that uses either the master or experimental branch).

I’ve also patched dmenu with the vertical patch to make it useful with uzbl. You can find the updated ebuild in wirelay (layman -a wirelay) – at least until I get the dmenu maintainers to add the patch in portage.



tags: , ,
posted in gentoo, uzbl by Alex “wired” Alexander

Follow comments via the RSS Feed | Leave a comment | Trackback URL

33 Responses to “uzbl – a terminal for the web – in gentoo :)”

  1. Didn’t knew uzbl before…. very useful especialy on lightweight enviroments or old pcs

  2. Thomas says:

    Me neither. That looks like a really uzfl piece of software! *Looking for emacs keybindings…*

    • obneq says:

      there is also surf, by the dwm-folks, its derived from uzbl and even slimmer. and there is ezbl, which is uzbl in emacs via xembed

      • Thomas says:

        I don’t want to embedd a browser in emacs. And honestly, for browsing the web modes do make sense. There are just some things hardwired in my brain like Ctrl+g for stopping anything I started, or Ctrl+S for search. Firefox is great, but the “no key customization” thing is just wrong… I end up with the completely useless “Save this page” dialogue so often…

  3. Erik says:

    Just going to throw this out there: I use tabs in my terminal window, and I love it.

  4. Thomas says:

    By the way, there is a conflicting -9999 package in sunrise which does not build, and portage seems to prefer overlays over the main tree.

  5. džen says:

    Thank you very much for adding uzbl to the portage tree :)

  6. ph says:

    Hi, thanks for this, but would you please change the ‘helpers’? Installing both dmenu&zenity + their deps is a little to much overkill, so I’d say flags for this would be good.

    • wired says:

      I’ve been thinking about it, but we have quite a few helpers now… it would become a USE flag hell… Why not install dmenu manually? If y’all guys want, I’ll add them though :)

      • ph says:

        Mh, maybe leave them out completely and instead add some nice einfo, giving the user a hint what goes good along with uzbl? BTW, vertical will be in the next dmenu-release, garbeam already added it and it’s available in the latest hg tip.

        • wired says:

          Great, vertical support is a must for dmenu+uzbl.

          I’ll modify the ebuild ewarns into something more descriptive and we’ll see how that works out :)

  7. qwerty013 says:

    Its great indeed X)

    Shouldn’t you add a dependency to uzbl – xclip or write about it in package message? (xclip is default bufer tool for uzbl, according to uzbl config)

    • wired says:

      xclip is installed if you enable the helpers USE flag.

      but yeah, perhaps I should reorder the deps a bit and add it as default when you enable the browser USE since it is essential :)

    • wired says:

      x11-misc/xclip is now a dep if you have +browser.
      I also added a bunch of elogs with detailed information on the optional runtime dependencies (shown if you install with -helpers) :)

      Thank you all for the feedback :)

  8. Hey Alex,

    Thanks for getting this package added to the tree. I have noticed a bunch of parse errors while using uzbl-browser and uzbl-tabbed. Also, while it is lightweight, it seems to have some serious lag when initially rendering pages and when scrolling (almost unuzbl). ;)


    • wired says:

      The browsing experience depends on webkit-gtk. I currently use webkit-gtk-9999 (available in my overlay, wirelay), which seems to be rendering pages pretty fast :)

      • Ah, so maybe the newer version of webkit-gtk is responsible for the sluggishness in initial page rendering. Do you notice anything with scrolling using the mouse wheel? Thanks for the pointer, and I might try to one in the overlay sometime in the future. :)

        • wired says:

          No, the wheel works fine here.

          Upstream is constantly working on webkit, I get updates every time I re-emerge webkit-gtk-9999 :)

          You can also try 1.1.17, you can find it in the gnome overlay

  9. Tom Gillespie says:

    I’ve been using uzbl for about 3 months, there are still some rough spots but the ability to customize keys makes all other browsers feel like totalitarian dictatorships.

  10. Nick White says:

    I’m really happy this made it into the tree – I’d been using the live ebuild from the devnull tree, but it’s so fast-moving that it was tricky to keep up with, I’m much happier to stick to snapshots.

    I’d prefer if you didn’t depend on xclip, though. I use xsel, and have no need or desire for it. Could you perhaps move it to the helpers useflag? Or its own?

    Thanks, again, I’m very happy you’re packaging this :-)

  11. marcusw says:

    This post introduced me uzbl, and more importantly, to tiling window managers. I love uzbl-browser, it runs great on my single-core Pentium 4 2.00Ghz with 256Mb of RAM, circa 2000. It took a while to get used to, but I figured out how the config file works and am now happier with it than I was with FF (The only downside is that the banner ads are back. AdBlock Plus FTW!).

    I am now using xmonage as my wm and it is great. I have been a fan of minimalistic stuff for quite a while now, but this thing takes the cake: I though it had crashed the first time I started it because all I saw was a black screen. It turns out that that is the desktop…there isn’t even a task bar! FREEDOM!!!

  12. mansour says:

    I noticed the current uzbl ebuild requires >=dev-libs/glib-2.21.3. Do you think it would be possible to bump that down to version 2.20.5 (the glib version used on gentoo-hardened)?

  13. [...] uzbl – a terminal for the web – in gentoo | Linux~ized [...]

  14. Amy says:

    Try blocking ads via /etc/hosts or use a filtering proxy (at the cost of slower HTTP) like privoxy or squid.

  15. Lilly says:

    Try Konqueror. It has customizable keybindings.

  16. Roland Orre says:

    Even though uzbl seemed great I had a lot of struggle before getting emacs keys working.
    The one I installed had gtk3 and webkit2 enabled and with that configuration it simply didn’t work, although the key theme settings in gtk-3.0 are not very well documented… There is a file
    which I tried to include from either ~/.gtkrc-3.0 or .config/gtk-3.0 but no success.
    Now I’ve got it working by setting ENABLE_GTK3=no in Makefile
    This is based upon a snapshot I did Aug 22 2012 by doing
    git clone

    It seems as gtk-3.0 is not very mature yet. I found some info here though–gtk-key-theme-name
    but none of these worked, I even copied
    but this didn’t help either. Also regarding the internal editing within uzbl they could have used standard readline instead of implementing their own line editor. For instance kill-to-end-of-line and yank (which I use tremendously often wasn’t implemented, although good excercise to implement…) and the editing doesn’t work very well yet, but there is potentials…
    Also, there is a very annoying error message which I can not get rid of
    Exception occured while executing script:
    At /usr/local/share/uzbl/examples/data/scripts/follow.js:16: ReferenceError: Can’t find variable: uzbl

    Regarding gtk-3.0 I found some more info here, but it’s not very clear how to get editing keys working with GTK3.0
    Some simple example is needed!

    I find it strange that essential stuff for efficient work like defining one’s editing keys in a consistent way is so hard to do
    but less essential stuff like setting backgrounds and color styles is aimed a lot of effort … :(

    I wish that all key handling on the system could be handled by a simple ~/.inputrc
    which could be respected by all key editing applications whether you run gtk, qt, motif or whatever.
    I love the key settings in fluxbox, that is the simplest and easiest configuration I’ve seen.

Leave a Reply

Powered by Wordpress and MySQL. Original theme by - customization by me :)