Version 7 (modified by pbrochard, 4 years ago)

--

CLFSWM Setup

Running the system

To run CLFSWM you need

  • A Common Lisp implementation. One of  clisp,  sbcl or  cmucl can do the job. Personnaly, I run CLFSWM every days with clisp and mit/clx and I develop it with sbcl and slime. (Here is a way to build clisp with the mit/clx module).
  • Go in the clfswm directory, run your lisp implementation and load the file 'load.lisp':
    type (load "load.lisp") at the lisp prompt.
    

This can be done automatically depending the lisp implementation you're using.
For example:

   clisp -K full /the/clfswm/directory/load.lisp
or sbcl --load /the/clfswm/directory/load.lisp
or cmucl -load /the/clfswm/directory/load.lisp
  • When CLFSWM is running, press Alt+F1 to open the help menu.

By default Alt+t make you in the second mode and 'm' open the root menu.

  • If you want to run CLFSWM at X startup. Add one of the line to start CLFSWM in $HOME/.xsession, $HOME/.xinitrc or $HOME/.Xclients depending the way you start X.
  • For example, here is the line in my $HOME/.Xclients:
    screen -dmS clfswm clisp -repl -q -ansi -K full $home/local/clfswm/load.lisp
    

So I can reattach CLFSWM in a  screen session when it crash.

A way to test CLFSWM

Here is how I develop CLFSWM with emacs+slime and sbcl.

  • I launch emacs+slime with an sbcl image.
  • I start a new X server:
    startx -- :1
    
  • From the first display, in slime, I load CLFSWM:
    (require :clx)
    (require :clfswm)
    
    (in-package :clfswm)
    
    (clfswm:main ":1")
    
  • Then I switch to the display ":1" and do my tests.

CLFSWM with  QuickLisp

Another way to build CLFSWM is to use  QuickLisp:

Here is the  QuickLisp installation:

$ wget http://beta.quicklisp.org/quicklisp.lisp
$ your lisp (clisp, sbcl, cmucl, ccl, ecl...)
> (load "quicklisp.lisp")
> (quicklisp-quickstart:install)
> (ql:add-to-init-file)

Here, '$' is the shell prompt and '>' is the Lisp prompt.

And then in a display without a window manager or a new display launched with 'startx -- :1' for example:

$ your lisp (clisp, sbcl, cmucl, ccl, ecl...)
> (ql:quickload "clfswm")
> (clfswm:main)

And that's it. CLFSWM is (hopefully) running.