diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -42,3 +42,23 @@
 
 scj-sudo:	jack-sudo supercollider-sudo
 
+
+# targets for adding a video to the audio
+avi:
+	(for id in `seq 1 184`; do echo /data1/daniel/fractal/animation.avi; done) > loop-list
+	mencoder `cat loop-list` -o loop.avi -ovc copy
+	mencoder loop.avi -o air.avi -ovc lavc -audiofile $(HOME)/programming/haskell/synthesizer/hal2/supercollider-haskore/Air.mp3 -oac copy
+# should work, but the generated AVI cannot be played with MPlayer
+#	avimerge -o air.avi -i /data1/daniel/fractal/animation.avi /data1/daniel/fractal/animation.avi /data1/daniel/fractal/animation.avi -p hal2/supercollider-haskore/Air.mp3
+
+record:
+	recordmydesktop -y 10 \
+	   --windowid `xwininfo | grep 'Window id:' | cut -f4 -d' '`
+#	   --device hw:0,0
+#	   --use-jack SuperCollider:out_1 SuperCollider:out_2
+
+air:
+	./dist/build/air/air
+
+animation:
+	animate /data1/daniel/fractal/animation.avi
diff --git a/haskore-supercollider.cabal b/haskore-supercollider.cabal
--- a/haskore-supercollider.cabal
+++ b/haskore-supercollider.cabal
@@ -1,5 +1,5 @@
 Name:           haskore-supercollider
-Version:        0.1.1
+Version:        0.1.2
 License:        GPL
 License-File:   LICENSE
 Author:         Henning Thielemann <haskell@henning-thielemann.de>
@@ -21,12 +21,12 @@
 
 Source-Repository head
   type:     darcs
-  location: http://darcs.haskell.org/haskore-supercollider/
+  location: http://code.haskell.org/haskore/revised/supercollider/
 
 Source-Repository this
   type:     darcs
-  location: http://darcs.haskell.org/haskore-supercollider/
-  tag:      0.1.1
+  location: http://code.haskell.org/haskore/revised/supercollider/
+  tag:      0.1.2
 
 Flag splitBase
   description: Choose the new smaller, split-up base package.
@@ -38,7 +38,7 @@
 Library
   Build-Depends:
     haskore-realtime >= 0.1 && < 0.2,
-    haskore >=0.1 && <0.2,
+    haskore >=0.1 && <0.3,
     -- for SuperCollider support
     hosc >=0.6 && <0.7,
     hsc3 >=0.6 && <0.7,
@@ -46,20 +46,20 @@
     supercollider-ht >=0.1 && <0.2,
     bytestring >=0.9 && <1.0,
     -- dependency on non-negative for Haddock
-    non-negative >=0.0.1 && <0.1,
-    event-list >=0.0.6 && <0.1,
+    non-negative >=0.0.1 && <0.2,
+    event-list >=0.0.6 && <0.2,
     data-accessor >=0.2 && <0.3,
     utility-ht >=0.0.3 && <0.1,
     unix >= 2.0 && <3,
-    transformers >=0.0 && <0.2
+    transformers >=0.2 && <0.3
 
   If flag(splitBase)
     Build-Depends:
-      base >= 3,
-      array >= 0.1 && <0.3,
+      process >=1.0 && <1.1,
+      array >=0.1 && <0.3,
       containers >=0.1 && <0.3,
-      random >= 1.0 && <1.1,
-      process >= 1.0 && <1.1
+      random >=1.0 && <1.1,
+      base >=3 && <5
   Else
     Build-Depends:
       base >= 1.0 && < 2
diff --git a/src/Haskore/Interface/SuperCollider/Play.hs b/src/Haskore/Interface/SuperCollider/Play.hs
--- a/src/Haskore/Interface/SuperCollider/Play.hs
+++ b/src/Haskore/Interface/SuperCollider/Play.hs
@@ -40,7 +40,7 @@
 
 import qualified Numeric.NonNegative.Wrapper as NonNeg
 
-import Control.Monad.Trans (MonadIO, )
+import Control.Monad.IO.Class (MonadIO, )
 import Control.Monad (liftM, )
 
 
diff --git a/src/Haskore/Interface/SuperCollider/Play/Channel.hs b/src/Haskore/Interface/SuperCollider/Play/Channel.hs
--- a/src/Haskore/Interface/SuperCollider/Play/Channel.hs
+++ b/src/Haskore/Interface/SuperCollider/Play/Channel.hs
@@ -51,7 +51,7 @@
 import qualified Control.Monad.Trans.State as State
 import Control.Monad.Trans.State  (StateT, evalStateT, )
 import Control.Monad.Trans.Reader (ReaderT, )
-import Control.Monad.Trans (lift, )
+import Control.Monad.Trans.Class (lift, )
 import Control.Monad (liftM2, )
 
 
diff --git a/src/Haskore/Interface/SuperCollider/Play/Install.hs b/src/Haskore/Interface/SuperCollider/Play/Install.hs
--- a/src/Haskore/Interface/SuperCollider/Play/Install.hs
+++ b/src/Haskore/Interface/SuperCollider/Play/Install.hs
@@ -36,7 +36,7 @@
 import qualified Haskore.Music          as Music
 import           Haskore.Melody         as Melody
 
-import Control.Monad.Trans (MonadIO, )
+import Control.Monad.IO.Class (MonadIO, )
 
 
 installSound ::
diff --git a/src/Haskore/Interface/SuperCollider/Schedule/Channel.hs b/src/Haskore/Interface/SuperCollider/Schedule/Channel.hs
--- a/src/Haskore/Interface/SuperCollider/Schedule/Channel.hs
+++ b/src/Haskore/Interface/SuperCollider/Schedule/Channel.hs
@@ -45,7 +45,7 @@
 import qualified Control.Monad.Trans.State as State
 import Control.Monad.Trans.State  (StateT, runStateT, get, put, )
 import Control.Monad.Trans.Writer (Writer, tell, runWriter, )
-import Control.Monad.Trans (lift, )
+import Control.Monad.Trans.Class (lift, )
 import Control.Monad (liftM2, )
 
 
diff --git a/src/Haskore/Interface/SuperCollider/Timer.hs b/src/Haskore/Interface/SuperCollider/Timer.hs
--- a/src/Haskore/Interface/SuperCollider/Timer.hs
+++ b/src/Haskore/Interface/SuperCollider/Timer.hs
@@ -3,7 +3,7 @@
 import qualified Haskore.RealTime.Timer           as Timer
 import qualified Haskore.RealTime.Timer.Thread as TimerThread
 
-import Control.Monad.Trans (MonadIO, )
+import Control.Monad.IO.Class (MonadIO, )
 
 
 timer :: MonadIO io => Timer.T io
