Personal tools

Bluetile

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
(Link to development page)
m (wording change)
Line 35: Line 35:
 
that the xmonad library provides. This is all tied together
 
that the xmonad library provides. This is all tied together
 
very nicely using Haskell and things like automatic re-compiling,
 
very nicely using Haskell and things like automatic re-compiling,
so that it really feels more like configuring than really writing code -
+
so that it really feels more like configuring than actually writing code -
 
but the possibility to go further is always there.
 
but the possibility to go further is always there.
   

Revision as of 17:24, 28 March 2010

Contents

1 Frequently Asked Questions

1.1 Why write yet another tiling window manager?

Because none of the others where build with the thought in mind, that time is the most limited resource among the majority of users. It's good if you can configure a software in every respect. It's better if you don't have to.

I wanted a tiling window manager that I can just mention to a friend and a google later they download it, run it and get a good feeling for what a tiling window manager is and whether it suits their workflow. No "... oh, and remember to edit this file" ... "and be sure to run it in combination with this helper application" ... "and see this article on a really neat thing you can do". So in many ways I think of Bluetile more as an interactive demo for tiling window managers. Maybe you will find that its 'one size fits all' approach isn't quite right, but it spiked interest in tiling window managers and you go on to find another twm that you can configure to your needs. In that case Bluetile has served a good purpose. But then again, it might just be good enough for a large number of users that don't like to spend time on configuration and reading documentation and instead prefer to stick to what works 'out of the box'. I think that's pretty smart, too.

I'm passionate about bringing the paradigm of tiled window management to a wider audience, so that maybe someday it finds its way into the mainstream window managers. This in turn will hopefully prompt application developers to design their GUIs in a way that works well with this paradigm. If you are a Haskell programmer who can identify with that vision, I invite you to have a look at the development page and maybe lend a helping hand. :-)

--JanV 20:36, 26 February 2010 (UTC)

1.2 What is the relationship between Bluetile and xmonad?

I think of xmonad more as a library for writing tiling window managers. The default installation provides a minimal tiling window manager (the standard configuration), but you are really expected to "write" (configure) your own tiling window manager from the building blocks that the xmonad library provides. This is all tied together very nicely using Haskell and things like automatic re-compiling, so that it really feels more like configuring than actually writing code - but the possibility to go further is always there.

The Bluetile project has contributed some of those building blocks to the xmonad library, but is now really just another xmonad configuration. A configuration that focuses on making the tiling paradigm easily accessible to users coming from traditional window managers. This has also the added benefit of not requiring a Haskell compiler during runtime - unlike a typical xmonad installation.

You can create pretty much the same effect with a standard xmonad installation (see entry below), but this project exists to provide an easy installation path with zero configuration and without having to read background information like this FAQ entry. ;-)

--JanV 22:14, 10 February 2010 (UTC)

1.3 Is there some way to configure Bluetile while the configuration system is still vaporware?

The best option right now is to switch to xmonad, re-create Bluetile's setup and be then able to use xmonad's powerful configuration system. This migration path should actually be fairly straightforward, as Bluetile's configuration is available as the module XMonad.Config.Bluetile. However, as of now (Feb 2010), you will need the xmonad darcs version. Create the file ~/.xmonad/xmonad.hs with the following contents:

   import XMonad
   import XMonad.Config.Bluetile
   import XMonad.Util.Replace
   
   main = replace >> xmonad bluetileConfig

Starting xmonad now will give you Bluetile's setup with the only exception being Bluetile's dock, which is only available in the real project. See the website of xmonad on how to go from here to start tweaking.

--JanV 22:14, 10 February 2010 (UTC)

1.4 Why is the installation so complicated? Don't you have packages?

I'm sorry that for a window manager which tries to make it easy to get started, the installation procedure is currently somewhat involved. These links might be of help - they walk through the installation steps in more detail:

I would love to provide packages, but that will have to wait - hopefully not too long - until the next xmonad release, which will include all the necessary code.

If you are a package maintainer considering to package Bluetile: Great news! :-) Your work is much appreciated, especially considering Bluetile's goal of getting the user quickly up and running with a tiling window manager. However, as mentioned above, your best bet right now is to wait until the next xmonad release, which should make packaging much easier. Currently Bluetile uses modified versions of xmonad and xmonad-contrib, available on Hackage as xmonad-bluetilebranch and xmonad-contrib-bluetilebranch. These are somewhat tricky to have installed in parallel to mainline xmonad. I'm looking forward to deprecating those branches once a Bluetile-compatible version of xmonad is uploaded to Hackage.

--JanV 00:17, 15 February 2010 (UTC)