summary refs log tree commit diff stats
path: root/install.sh
diff options
context:
space:
mode:
authorZahary Karadjov <zahary@gmail.com>2012-06-10 23:33:05 +0300
committerZahary Karadjov <zahary@gmail.com>2012-06-11 21:38:01 +0300
commite2d38a57ecdc3aa7b5cd81a9f2f588eb0dc5586f (patch)
tree396ef1c332c4ec460cd91ec0358a9ec02f76052c /install.sh
parentce933c90a48ddf0331016edbc684ba6937412e22 (diff)
downloadNim-e2d38a57ecdc3aa7b5cd81a9f2f588eb0dc5586f.tar.gz
better support for unsigned integers.
Diffstat (limited to 'install.sh')
-rwxr-xr-xinstall.sh845
1 files changed, 364 insertions, 481 deletions
diff --git a/install.sh b/install.sh
index fde6c82a2..4feabbb77 100755
--- a/install.sh
+++ b/install.sh
@@ -1,6 +1,8 @@
 #! /bin/sh
 # Generated by niminst
 
+set -e
+
 if [ $# -eq 1 ] ; then
   if test -f bin/nimrod
   then 
@@ -43,692 +45,573 @@ if [ $# -eq 1 ] ; then
       docdir="$1/nimrod/doc"
       datadir="$1/nimrod/data"
       
-      mkdir -p $1/nimrod || exit 1
-      mkdir -p $bindir || exit 1
-      mkdir -p $configdir || exit 1
+      mkdir -p $1/nimrod
+      mkdir -p $bindir
+      mkdir -p $configdir
       ;;
   esac
-  mkdir -p $libdir || exit 1
-  mkdir -p $docdir || exit 1
+  mkdir -p $libdir
+  mkdir -p $docdir
   echo "copying files..."
-  mkdir -p $libdir/system || exit 1
-  mkdir -p $libdir/core || exit 1
-  mkdir -p $libdir/pure || exit 1
-  mkdir -p $libdir/pure/collections || exit 1
-  mkdir -p $libdir/impure || exit 1
-  mkdir -p $libdir/wrappers || exit 1
-  mkdir -p $libdir/wrappers/cairo || exit 1
-  mkdir -p $libdir/wrappers/gtk || exit 1
-  mkdir -p $libdir/wrappers/lua || exit 1
-  mkdir -p $libdir/wrappers/opengl || exit 1
-  mkdir -p $libdir/wrappers/sdl || exit 1
-  mkdir -p $libdir/wrappers/x11 || exit 1
-  mkdir -p $libdir/wrappers/zip || exit 1
-  mkdir -p $libdir/windows || exit 1
-  mkdir -p $libdir/posix || exit 1
-  mkdir -p $libdir/ecmas || exit 1
+  mkdir -p $libdir/system
+  mkdir -p $libdir/core
+  mkdir -p $libdir/pure
+  mkdir -p $libdir/pure/collections
+  mkdir -p $libdir/impure
+  mkdir -p $libdir/wrappers
+  mkdir -p $libdir/wrappers/cairo
+  mkdir -p $libdir/wrappers/gtk
+  mkdir -p $libdir/wrappers/lua
+  mkdir -p $libdir/wrappers/opengl
+  mkdir -p $libdir/wrappers/readline
+  mkdir -p $libdir/wrappers/sdl
+  mkdir -p $libdir/wrappers/x11
+  mkdir -p $libdir/wrappers/zip
+  mkdir -p $libdir/windows
+  mkdir -p $libdir/posix
+  mkdir -p $libdir/ecmas
 
-  cp bin/nimrod $bindir/nimrod || exit 1
+  cp bin/nimrod $bindir/nimrod
   chmod 755 $bindir/nimrod
-  cp config/nimrod.cfg $configdir/nimrod.cfg || exit 1
+  cp config/nimrod.cfg $configdir/nimrod.cfg
   chmod 644 $configdir/nimrod.cfg
-  cp config/nimdoc.cfg $configdir/nimdoc.cfg || exit 1
+  cp config/nimdoc.cfg $configdir/nimdoc.cfg
   chmod 644 $configdir/nimdoc.cfg
-  cp config/nimdoc.tex.cfg $configdir/nimdoc.tex.cfg || exit 1
+  cp config/nimdoc.tex.cfg $configdir/nimdoc.tex.cfg
   chmod 644 $configdir/nimdoc.tex.cfg
-  cp doc/abstypes.txt $docdir/abstypes.txt || exit 1
-  chmod 644 $docdir/abstypes.txt
-  cp doc/advopt.txt $docdir/advopt.txt || exit 1
-  chmod 644 $docdir/advopt.txt
-  cp doc/apis.txt $docdir/apis.txt || exit 1
-  chmod 644 $docdir/apis.txt
-  cp doc/astspec.txt $docdir/astspec.txt || exit 1
-  chmod 644 $docdir/astspec.txt
-  cp doc/basicopt.txt $docdir/basicopt.txt || exit 1
-  chmod 644 $docdir/basicopt.txt
-  cp doc/c2nim.txt $docdir/c2nim.txt || exit 1
-  chmod 644 $docdir/c2nim.txt
-  cp doc/docs.txt $docdir/docs.txt || exit 1
-  chmod 644 $docdir/docs.txt
-  cp doc/effects.txt $docdir/effects.txt || exit 1
-  chmod 644 $docdir/effects.txt
-  cp doc/endb.txt $docdir/endb.txt || exit 1
-  chmod 644 $docdir/endb.txt
-  cp doc/filelist.txt $docdir/filelist.txt || exit 1
-  chmod 644 $docdir/filelist.txt
-  cp doc/filters.txt $docdir/filters.txt || exit 1
-  chmod 644 $docdir/filters.txt
-  cp doc/grammar.txt $docdir/grammar.txt || exit 1
-  chmod 644 $docdir/grammar.txt
-  cp doc/intern.txt $docdir/intern.txt || exit 1
-  chmod 644 $docdir/intern.txt
-  cp doc/keywords.txt $docdir/keywords.txt || exit 1
-  chmod 644 $docdir/keywords.txt
-  cp doc/lib.txt $docdir/lib.txt || exit 1
-  chmod 644 $docdir/lib.txt
-  cp doc/manual.txt $docdir/manual.txt || exit 1
-  chmod 644 $docdir/manual.txt
-  cp doc/niminst.txt $docdir/niminst.txt || exit 1
-  chmod 644 $docdir/niminst.txt
-  cp doc/nimrodc.txt $docdir/nimrodc.txt || exit 1
-  chmod 644 $docdir/nimrodc.txt
-  cp doc/overview.txt $docdir/overview.txt || exit 1
-  chmod 644 $docdir/overview.txt
-  cp doc/pegdocs.txt $docdir/pegdocs.txt || exit 1
-  chmod 644 $docdir/pegdocs.txt
-  cp doc/readme.txt $docdir/readme.txt || exit 1
-  chmod 644 $docdir/readme.txt
-  cp doc/regexprs.txt $docdir/regexprs.txt || exit 1
-  chmod 644 $docdir/regexprs.txt
-  cp doc/rst.txt $docdir/rst.txt || exit 1
-  chmod 644 $docdir/rst.txt
-  cp doc/subexes.txt $docdir/subexes.txt || exit 1
-  chmod 644 $docdir/subexes.txt
-  cp doc/targets.txt $docdir/targets.txt || exit 1
-  chmod 644 $docdir/targets.txt
-  cp doc/theindex.txt $docdir/theindex.txt || exit 1
-  chmod 644 $docdir/theindex.txt
-  cp doc/tools.txt $docdir/tools.txt || exit 1
-  chmod 644 $docdir/tools.txt
-  cp doc/tut1.txt $docdir/tut1.txt || exit 1
-  chmod 644 $docdir/tut1.txt
-  cp doc/tut2.txt $docdir/tut2.txt || exit 1
-  chmod 644 $docdir/tut2.txt
-  cp doc/actors.html $docdir/actors.html || exit 1
-  chmod 644 $docdir/actors.html
-  cp doc/algorithm.html $docdir/algorithm.html || exit 1
-  chmod 644 $docdir/algorithm.html
-  cp doc/apis.html $docdir/apis.html || exit 1
-  chmod 644 $docdir/apis.html
-  cp doc/asyncio.html $docdir/asyncio.html || exit 1
-  chmod 644 $docdir/asyncio.html
-  cp doc/base64.html $docdir/base64.html || exit 1
-  chmod 644 $docdir/base64.html
-  cp doc/browsers.html $docdir/browsers.html || exit 1
-  chmod 644 $docdir/browsers.html
-  cp doc/c2nim.html $docdir/c2nim.html || exit 1
-  chmod 644 $docdir/c2nim.html
-  cp doc/cgi.html $docdir/cgi.html || exit 1
-  chmod 644 $docdir/cgi.html
-  cp doc/channels.html $docdir/channels.html || exit 1
-  chmod 644 $docdir/channels.html
-  cp doc/colors.html $docdir/colors.html || exit 1
-  chmod 644 $docdir/colors.html
-  cp doc/complex.html $docdir/complex.html || exit 1
-  chmod 644 $docdir/complex.html
-  cp doc/critbits.html $docdir/critbits.html || exit 1
-  chmod 644 $docdir/critbits.html
-  cp doc/db_mysql.html $docdir/db_mysql.html || exit 1
-  chmod 644 $docdir/db_mysql.html
-  cp doc/db_postgres.html $docdir/db_postgres.html || exit 1
-  chmod 644 $docdir/db_postgres.html
-  cp doc/db_sqlite.html $docdir/db_sqlite.html || exit 1
-  chmod 644 $docdir/db_sqlite.html
-  cp doc/dom.html $docdir/dom.html || exit 1
-  chmod 644 $docdir/dom.html
-  cp doc/dynlib.html $docdir/dynlib.html || exit 1
-  chmod 644 $docdir/dynlib.html
-  cp doc/encodings.html $docdir/encodings.html || exit 1
-  chmod 644 $docdir/encodings.html
-  cp doc/endb.html $docdir/endb.html || exit 1
-  chmod 644 $docdir/endb.html
-  cp doc/events.html $docdir/events.html || exit 1
-  chmod 644 $docdir/events.html
-  cp doc/filters.html $docdir/filters.html || exit 1
-  chmod 644 $docdir/filters.html
-  cp doc/ftpclient.html $docdir/ftpclient.html || exit 1
-  chmod 644 $docdir/ftpclient.html
-  cp doc/graphics.html $docdir/graphics.html || exit 1
-  chmod 644 $docdir/graphics.html
-  cp doc/hashes.html $docdir/hashes.html || exit 1
-  chmod 644 $docdir/hashes.html
-  cp doc/htmlgen.html $docdir/htmlgen.html || exit 1
-  chmod 644 $docdir/htmlgen.html
-  cp doc/htmlparser.html $docdir/htmlparser.html || exit 1
-  chmod 644 $docdir/htmlparser.html
-  cp doc/httpclient.html $docdir/httpclient.html || exit 1
-  chmod 644 $docdir/httpclient.html
-  cp doc/httpserver.html $docdir/httpserver.html || exit 1
-  chmod 644 $docdir/httpserver.html
-  cp doc/intern.html $docdir/intern.html || exit 1
-  chmod 644 $docdir/intern.html
-  cp doc/intsets.html $docdir/intsets.html || exit 1
-  chmod 644 $docdir/intsets.html
-  cp doc/irc.html $docdir/irc.html || exit 1
-  chmod 644 $docdir/irc.html
-  cp doc/json.html $docdir/json.html || exit 1
-  chmod 644 $docdir/json.html
-  cp doc/lexbase.html $docdir/lexbase.html || exit 1
-  chmod 644 $docdir/lexbase.html
-  cp doc/lib.html $docdir/lib.html || exit 1
-  chmod 644 $docdir/lib.html
-  cp doc/lists.html $docdir/lists.html || exit 1
-  chmod 644 $docdir/lists.html
-  cp doc/locks.html $docdir/locks.html || exit 1
-  chmod 644 $docdir/locks.html
-  cp doc/macros.html $docdir/macros.html || exit 1
-  chmod 644 $docdir/macros.html
-  cp doc/manual.html $docdir/manual.html || exit 1
-  chmod 644 $docdir/manual.html
-  cp doc/marshal.html $docdir/marshal.html || exit 1
-  chmod 644 $docdir/marshal.html
-  cp doc/matchers.html $docdir/matchers.html || exit 1
-  chmod 644 $docdir/matchers.html
-  cp doc/math.html $docdir/math.html || exit 1
-  chmod 644 $docdir/math.html
-  cp doc/memfiles.html $docdir/memfiles.html || exit 1
-  chmod 644 $docdir/memfiles.html
-  cp doc/niminst.html $docdir/niminst.html || exit 1
-  chmod 644 $docdir/niminst.html
-  cp doc/nimrodc.html $docdir/nimrodc.html || exit 1
-  chmod 644 $docdir/nimrodc.html
-  cp doc/os.html $docdir/os.html || exit 1
-  chmod 644 $docdir/os.html
-  cp doc/osproc.html $docdir/osproc.html || exit 1
-  chmod 644 $docdir/osproc.html
-  cp doc/overview.html $docdir/overview.html || exit 1
-  chmod 644 $docdir/overview.html
-  cp doc/parsecfg.html $docdir/parsecfg.html || exit 1
-  chmod 644 $docdir/parsecfg.html
-  cp doc/parsecsv.html $docdir/parsecsv.html || exit 1
-  chmod 644 $docdir/parsecsv.html
-  cp doc/parseopt.html $docdir/parseopt.html || exit 1
-  chmod 644 $docdir/parseopt.html
-  cp doc/parsesql.html $docdir/parsesql.html || exit 1
-  chmod 644 $docdir/parsesql.html
-  cp doc/parseutils.html $docdir/parseutils.html || exit 1
-  chmod 644 $docdir/parseutils.html
-  cp doc/parsexml.html $docdir/parsexml.html || exit 1
-  chmod 644 $docdir/parsexml.html
-  cp doc/pegs.html $docdir/pegs.html || exit 1
-  chmod 644 $docdir/pegs.html
-  cp doc/queues.html $docdir/queues.html || exit 1
-  chmod 644 $docdir/queues.html
-  cp doc/rdstdin.html $docdir/rdstdin.html || exit 1
-  chmod 644 $docdir/rdstdin.html
-  cp doc/re.html $docdir/re.html || exit 1
-  chmod 644 $docdir/re.html
-  cp doc/redis.html $docdir/redis.html || exit 1
-  chmod 644 $docdir/redis.html
-  cp doc/ropes.html $docdir/ropes.html || exit 1
-  chmod 644 $docdir/ropes.html
-  cp doc/scgi.html $docdir/scgi.html || exit 1
-  chmod 644 $docdir/scgi.html
-  cp doc/sequtils.html $docdir/sequtils.html || exit 1
-  chmod 644 $docdir/sequtils.html
-  cp doc/sets.html $docdir/sets.html || exit 1
-  chmod 644 $docdir/sets.html
-  cp doc/smtp.html $docdir/smtp.html || exit 1
-  chmod 644 $docdir/smtp.html
-  cp doc/sockets.html $docdir/sockets.html || exit 1
-  chmod 644 $docdir/sockets.html
-  cp doc/sphinx.html $docdir/sphinx.html || exit 1
-  chmod 644 $docdir/sphinx.html
-  cp doc/ssl.html $docdir/ssl.html || exit 1
-  chmod 644 $docdir/ssl.html
-  cp doc/streams.html $docdir/streams.html || exit 1
-  chmod 644 $docdir/streams.html
-  cp doc/strtabs.html $docdir/strtabs.html || exit 1
-  chmod 644 $docdir/strtabs.html
-  cp doc/strutils.html $docdir/strutils.html || exit 1
-  chmod 644 $docdir/strutils.html
-  cp doc/subexes.html $docdir/subexes.html || exit 1
-  chmod 644 $docdir/subexes.html
-  cp doc/system.html $docdir/system.html || exit 1
-  chmod 644 $docdir/system.html
-  cp doc/tables.html $docdir/tables.html || exit 1
-  chmod 644 $docdir/tables.html
-  cp doc/terminal.html $docdir/terminal.html || exit 1
-  chmod 644 $docdir/terminal.html
-  cp doc/theindex.html $docdir/theindex.html || exit 1
-  chmod 644 $docdir/theindex.html
-  cp doc/threads.html $docdir/threads.html || exit 1
-  chmod 644 $docdir/threads.html
-  cp doc/times.html $docdir/times.html || exit 1
-  chmod 644 $docdir/times.html
-  cp doc/tools.html $docdir/tools.html || exit 1
-  chmod 644 $docdir/tools.html
-  cp doc/tut1.html $docdir/tut1.html || exit 1
-  chmod 644 $docdir/tut1.html
-  cp doc/tut2.html $docdir/tut2.html || exit 1
-  chmod 644 $docdir/tut2.html
-  cp doc/typeinfo.html $docdir/typeinfo.html || exit 1
-  chmod 644 $docdir/typeinfo.html
-  cp doc/unicode.html $docdir/unicode.html || exit 1
-  chmod 644 $docdir/unicode.html
-  cp doc/unidecode.html $docdir/unidecode.html || exit 1
-  chmod 644 $docdir/unidecode.html
-  cp doc/web.html $docdir/web.html || exit 1
-  chmod 644 $docdir/web.html
-  cp doc/xmldom.html $docdir/xmldom.html || exit 1
-  chmod 644 $docdir/xmldom.html
-  cp doc/xmldomparser.html $docdir/xmldomparser.html || exit 1
-  chmod 644 $docdir/xmldomparser.html
-  cp doc/xmlparser.html $docdir/xmlparser.html || exit 1
-  chmod 644 $docdir/xmlparser.html
-  cp doc/xmltree.html $docdir/xmltree.html || exit 1
-  chmod 644 $docdir/xmltree.html
-  cp doc/zipfiles.html $docdir/zipfiles.html || exit 1
-  chmod 644 $docdir/zipfiles.html
-  cp doc/zmq.html $docdir/zmq.html || exit 1
-  chmod 644 $docdir/zmq.html
-  cp doc/mytest.cfg $docdir/mytest.cfg || exit 1
-  chmod 644 $docdir/mytest.cfg
-  cp doc/c2nim.pdf $docdir/c2nim.pdf || exit 1
-  chmod 644 $docdir/c2nim.pdf
-  cp doc/lib.pdf $docdir/lib.pdf || exit 1
-  chmod 644 $docdir/lib.pdf
-  cp doc/manual.pdf $docdir/manual.pdf || exit 1
-  chmod 644 $docdir/manual.pdf
-  cp doc/niminst.pdf $docdir/niminst.pdf || exit 1
-  chmod 644 $docdir/niminst.pdf
-  cp doc/nimrodc.pdf $docdir/nimrodc.pdf || exit 1
-  chmod 644 $docdir/nimrodc.pdf
-  cp doc/tut1.pdf $docdir/tut1.pdf || exit 1
-  chmod 644 $docdir/tut1.pdf
-  cp doc/tut2.pdf $docdir/tut2.pdf || exit 1
-  chmod 644 $docdir/tut2.pdf
-  cp doc/nimrod.ini $docdir/nimrod.ini || exit 1
-  chmod 644 $docdir/nimrod.ini
-  cp lib/nimbase.h $libdir/nimbase.h || exit 1
+  if [ -f doc/abstypes.txt ]; then
+    cp doc/abstypes.txt $docdir/abstypes.txt
+    chmod 644 $docdir/abstypes.txt
+  fi
+  if [ -f doc/advopt.txt ]; then
+    cp doc/advopt.txt $docdir/advopt.txt
+    chmod 644 $docdir/advopt.txt
+  fi
+  if [ -f doc/apis.txt ]; then
+    cp doc/apis.txt $docdir/apis.txt
+    chmod 644 $docdir/apis.txt
+  fi
+  if [ -f doc/astspec.txt ]; then
+    cp doc/astspec.txt $docdir/astspec.txt
+    chmod 644 $docdir/astspec.txt
+  fi
+  if [ -f doc/basicopt.txt ]; then
+    cp doc/basicopt.txt $docdir/basicopt.txt
+    chmod 644 $docdir/basicopt.txt
+  fi
+  if [ -f doc/c2nim.txt ]; then
+    cp doc/c2nim.txt $docdir/c2nim.txt
+    chmod 644 $docdir/c2nim.txt
+  fi
+  if [ -f doc/docs.txt ]; then
+    cp doc/docs.txt $docdir/docs.txt
+    chmod 644 $docdir/docs.txt
+  fi
+  if [ -f doc/effects.txt ]; then
+    cp doc/effects.txt $docdir/effects.txt
+    chmod 644 $docdir/effects.txt
+  fi
+  if [ -f doc/endb.txt ]; then
+    cp doc/endb.txt $docdir/endb.txt
+    chmod 644 $docdir/endb.txt
+  fi
+  if [ -f doc/filelist.txt ]; then
+    cp doc/filelist.txt $docdir/filelist.txt
+    chmod 644 $docdir/filelist.txt
+  fi
+  if [ -f doc/filters.txt ]; then
+    cp doc/filters.txt $docdir/filters.txt
+    chmod 644 $docdir/filters.txt
+  fi
+  if [ -f doc/gc.txt ]; then
+    cp doc/gc.txt $docdir/gc.txt
+    chmod 644 $docdir/gc.txt
+  fi
+  if [ -f doc/grammar.txt ]; then
+    cp doc/grammar.txt $docdir/grammar.txt
+    chmod 644 $docdir/grammar.txt
+  fi
+  if [ -f doc/intern.txt ]; then
+    cp doc/intern.txt $docdir/intern.txt
+    chmod 644 $docdir/intern.txt
+  fi
+  if [ -f doc/keywords.txt ]; then
+    cp doc/keywords.txt $docdir/keywords.txt
+    chmod 644 $docdir/keywords.txt
+  fi
+  if [ -f doc/lib.txt ]; then
+    cp doc/lib.txt $docdir/lib.txt
+    chmod 644 $docdir/lib.txt
+  fi
+  if [ -f doc/manual.txt ]; then
+    cp doc/manual.txt $docdir/manual.txt
+    chmod 644 $docdir/manual.txt
+  fi
+  if [ -f doc/nimgrep.txt ]; then
+    cp doc/nimgrep.txt $docdir/nimgrep.txt
+    chmod 644 $docdir/nimgrep.txt
+  fi
+  if [ -f doc/niminst.txt ]; then
+    cp doc/niminst.txt $docdir/niminst.txt
+    chmod 644 $docdir/niminst.txt
+  fi
+  if [ -f doc/nimrodc.txt ]; then
+    cp doc/nimrodc.txt $docdir/nimrodc.txt
+    chmod 644 $docdir/nimrodc.txt
+  fi
+  if [ -f doc/overview.txt ]; then
+    cp doc/overview.txt $docdir/overview.txt
+    chmod 644 $docdir/overview.txt
+  fi
+  if [ -f doc/pegdocs.txt ]; then
+    cp doc/pegdocs.txt $docdir/pegdocs.txt
+    chmod 644 $docdir/pegdocs.txt
+  fi
+  if [ -f doc/readme.txt ]; then
+    cp doc/readme.txt $docdir/readme.txt
+    chmod 644 $docdir/readme.txt
+  fi
+  if [ -f doc/regexprs.txt ]; then
+    cp doc/regexprs.txt $docdir/regexprs.txt
+    chmod 644 $docdir/regexprs.txt
+  fi
+  if [ -f doc/rst.txt ]; then
+    cp doc/rst.txt $docdir/rst.txt
+    chmod 644 $docdir/rst.txt
+  fi
+  if [ -f doc/subexes.txt ]; then
+    cp doc/subexes.txt $docdir/subexes.txt
+    chmod 644 $docdir/subexes.txt
+  fi
+  if [ -f doc/tools.txt ]; then
+    cp doc/tools.txt $docdir/tools.txt
+    chmod 644 $docdir/tools.txt
+  fi
+  if [ -f doc/tut1.txt ]; then
+    cp doc/tut1.txt $docdir/tut1.txt
+    chmod 644 $docdir/tut1.txt
+  fi
+  if [ -f doc/tut2.txt ]; then
+    cp doc/tut2.txt $docdir/tut2.txt
+    chmod 644 $docdir/tut2.txt
+  fi
+  if [ -f doc/mytest.cfg ]; then
+    cp doc/mytest.cfg $docdir/mytest.cfg
+    chmod 644 $docdir/mytest.cfg
+  fi
+  cp lib/nimbase.h $libdir/nimbase.h
   chmod 644 $libdir/nimbase.h
-  cp lib/cycle.h $libdir/cycle.h || exit 1
+  cp lib/cycle.h $libdir/cycle.h
   chmod 644 $libdir/cycle.h
-  cp lib/nimrtl.nim $libdir/nimrtl.nim || exit 1
+  cp lib/nimrtl.nim $libdir/nimrtl.nim
   chmod 644 $libdir/nimrtl.nim
-  cp lib/prelude.nim $libdir/prelude.nim || exit 1
+  cp lib/prelude.nim $libdir/prelude.nim
   chmod 644 $libdir/prelude.nim
-  cp lib/system.nim $libdir/system.nim || exit 1
+  cp lib/system.nim $libdir/system.nim
   chmod 644 $libdir/system.nim
-  cp lib/nimrtl.nimrod.cfg $libdir/nimrtl.nimrod.cfg || exit 1
+  cp lib/nimrtl.nimrod.cfg $libdir/nimrtl.nimrod.cfg
   chmod 644 $libdir/nimrtl.nimrod.cfg
-  cp lib/system/alloc.nim $libdir/system/alloc.nim || exit 1
+  cp lib/system/alloc.nim $libdir/system/alloc.nim
   chmod 644 $libdir/system/alloc.nim
-  cp lib/system/ansi_c.nim $libdir/system/ansi_c.nim || exit 1
+  cp lib/system/ansi_c.nim $libdir/system/ansi_c.nim
   chmod 644 $libdir/system/ansi_c.nim
-  cp lib/system/arithm.nim $libdir/system/arithm.nim || exit 1
+  cp lib/system/arithm.nim $libdir/system/arithm.nim
   chmod 644 $libdir/system/arithm.nim
-  cp lib/system/assign.nim $libdir/system/assign.nim || exit 1
+  cp lib/system/assign.nim $libdir/system/assign.nim
   chmod 644 $libdir/system/assign.nim
-  cp lib/system/atomics.nim $libdir/system/atomics.nim || exit 1
+  cp lib/system/atomics.nim $libdir/system/atomics.nim
   chmod 644 $libdir/system/atomics.nim
-  cp lib/system/avltree.nim $libdir/system/avltree.nim || exit 1
+  cp lib/system/avltree.nim $libdir/system/avltree.nim
   chmod 644 $libdir/system/avltree.nim
-  cp lib/system/cellsets.nim $libdir/system/cellsets.nim || exit 1
+  cp lib/system/cellsets.nim $libdir/system/cellsets.nim
   chmod 644 $libdir/system/cellsets.nim
-  cp lib/system/cgprocs.nim $libdir/system/cgprocs.nim || exit 1
+  cp lib/system/cgprocs.nim $libdir/system/cgprocs.nim
   chmod 644 $libdir/system/cgprocs.nim
-  cp lib/system/channels.nim $libdir/system/channels.nim || exit 1
+  cp lib/system/channels.nim $libdir/system/channels.nim
   chmod 644 $libdir/system/channels.nim
-  cp lib/system/debugger.nim $libdir/system/debugger.nim || exit 1
+  cp lib/system/debugger.nim $libdir/system/debugger.nim
   chmod 644 $libdir/system/debugger.nim
-  cp lib/system/dyncalls.nim $libdir/system/dyncalls.nim || exit 1
+  cp lib/system/dyncalls.nim $libdir/system/dyncalls.nim
   chmod 644 $libdir/system/dyncalls.nim
-  cp lib/system/ecmasys.nim $libdir/system/ecmasys.nim || exit 1
+  cp lib/system/ecmasys.nim $libdir/system/ecmasys.nim
   chmod 644 $libdir/system/ecmasys.nim
-  cp lib/system/embedded.nim $libdir/system/embedded.nim || exit 1
+  cp lib/system/embedded.nim $libdir/system/embedded.nim
   chmod 644 $libdir/system/embedded.nim
-  cp lib/system/excpt.nim $libdir/system/excpt.nim || exit 1
+  cp lib/system/excpt.nim $libdir/system/excpt.nim
   chmod 644 $libdir/system/excpt.nim
-  cp lib/system/gc.nim $libdir/system/gc.nim || exit 1
+  cp lib/system/gc.nim $libdir/system/gc.nim
   chmod 644 $libdir/system/gc.nim
-  cp lib/system/hti.nim $libdir/system/hti.nim || exit 1
+  cp lib/system/hti.nim $libdir/system/hti.nim
   chmod 644 $libdir/system/hti.nim
-  cp lib/system/inclrtl.nim $libdir/system/inclrtl.nim || exit 1
+  cp lib/system/inclrtl.nim $libdir/system/inclrtl.nim
   chmod 644 $libdir/system/inclrtl.nim
-  cp lib/system/mmdisp.nim $libdir/system/mmdisp.nim || exit 1
+  cp lib/system/mmdisp.nim $libdir/system/mmdisp.nim
   chmod 644 $libdir/system/mmdisp.nim
-  cp lib/system/profiler.nim $libdir/system/profiler.nim || exit 1
+  cp lib/system/profiler.nim $libdir/system/profiler.nim
   chmod 644 $libdir/system/profiler.nim
-  cp lib/system/repr.nim $libdir/system/repr.nim || exit 1
+  cp lib/system/repr.nim $libdir/system/repr.nim
   chmod 644 $libdir/system/repr.nim
-  cp lib/system/reprjs.nim $libdir/system/reprjs.nim || exit 1
+  cp lib/system/reprjs.nim $libdir/system/reprjs.nim
   chmod 644 $libdir/system/reprjs.nim
-  cp lib/system/sets.nim $libdir/system/sets.nim || exit 1
+  cp lib/system/sets.nim $libdir/system/sets.nim
   chmod 644 $libdir/system/sets.nim
-  cp lib/system/sysio.nim $libdir/system/sysio.nim || exit 1
+  cp lib/system/sysio.nim $libdir/system/sysio.nim
   chmod 644 $libdir/system/sysio.nim
-  cp lib/system/syslocks.nim $libdir/system/syslocks.nim || exit 1
+  cp lib/system/syslocks.nim $libdir/system/syslocks.nim
   chmod 644 $libdir/system/syslocks.nim
-  cp lib/system/sysstr.nim $libdir/system/sysstr.nim || exit 1
+  cp lib/system/sysstr.nim $libdir/system/sysstr.nim
   chmod 644 $libdir/system/sysstr.nim
-  cp lib/system/threads.nim $libdir/system/threads.nim || exit 1
+  cp lib/system/threads.nim $libdir/system/threads.nim
   chmod 644 $libdir/system/threads.nim
-  cp lib/system/widestrs.nim $libdir/system/widestrs.nim || exit 1
+  cp lib/system/timers.nim $libdir/system/timers.nim
+  chmod 644 $libdir/system/timers.nim
+  cp lib/system/widestrs.nim $libdir/system/widestrs.nim
   chmod 644 $libdir/system/widestrs.nim
-  cp lib/core/locks.nim $libdir/core/locks.nim || exit 1
+  cp lib/core/locks.nim $libdir/core/locks.nim
   chmod 644 $libdir/core/locks.nim
-  cp lib/core/macros.nim $libdir/core/macros.nim || exit 1
+  cp lib/core/macros.nim $libdir/core/macros.nim
   chmod 644 $libdir/core/macros.nim
-  cp lib/core/typeinfo.nim $libdir/core/typeinfo.nim || exit 1
+  cp lib/core/typeinfo.nim $libdir/core/typeinfo.nim
   chmod 644 $libdir/core/typeinfo.nim
-  cp lib/pure/actors.nim $libdir/pure/actors.nim || exit 1
+  cp lib/pure/actors.nim $libdir/pure/actors.nim
   chmod 644 $libdir/pure/actors.nim
-  cp lib/pure/algorithm.nim $libdir/pure/algorithm.nim || exit 1
+  cp lib/pure/algorithm.nim $libdir/pure/algorithm.nim
   chmod 644 $libdir/pure/algorithm.nim
-  cp lib/pure/asyncio.nim $libdir/pure/asyncio.nim || exit 1
+  cp lib/pure/asyncio.nim $libdir/pure/asyncio.nim
   chmod 644 $libdir/pure/asyncio.nim
-  cp lib/pure/base64.nim $libdir/pure/base64.nim || exit 1
+  cp lib/pure/base64.nim $libdir/pure/base64.nim
   chmod 644 $libdir/pure/base64.nim
-  cp lib/pure/browsers.nim $libdir/pure/browsers.nim || exit 1
+  cp lib/pure/browsers.nim $libdir/pure/browsers.nim
   chmod 644 $libdir/pure/browsers.nim
-  cp lib/pure/bson.nim $libdir/pure/bson.nim || exit 1
-  chmod 644 $libdir/pure/bson.nim
-  cp lib/pure/cgi.nim $libdir/pure/cgi.nim || exit 1
+  cp lib/pure/cgi.nim $libdir/pure/cgi.nim
   chmod 644 $libdir/pure/cgi.nim
-  cp lib/pure/colors.nim $libdir/pure/colors.nim || exit 1
+  cp lib/pure/colors.nim $libdir/pure/colors.nim
   chmod 644 $libdir/pure/colors.nim
-  cp lib/pure/complex.nim $libdir/pure/complex.nim || exit 1
+  cp lib/pure/complex.nim $libdir/pure/complex.nim
   chmod 644 $libdir/pure/complex.nim
-  cp lib/pure/cookies.nim $libdir/pure/cookies.nim || exit 1
+  cp lib/pure/cookies.nim $libdir/pure/cookies.nim
   chmod 644 $libdir/pure/cookies.nim
-  cp lib/pure/dynlib.nim $libdir/pure/dynlib.nim || exit 1
+  cp lib/pure/dynlib.nim $libdir/pure/dynlib.nim
   chmod 644 $libdir/pure/dynlib.nim
-  cp lib/pure/encodings.nim $libdir/pure/encodings.nim || exit 1
+  cp lib/pure/encodings.nim $libdir/pure/encodings.nim
   chmod 644 $libdir/pure/encodings.nim
-  cp lib/pure/endians.nim $libdir/pure/endians.nim || exit 1
+  cp lib/pure/endians.nim $libdir/pure/endians.nim
   chmod 644 $libdir/pure/endians.nim
-  cp lib/pure/events.nim $libdir/pure/events.nim || exit 1
+  cp lib/pure/events.nim $libdir/pure/events.nim
   chmod 644 $libdir/pure/events.nim
-  cp lib/pure/ftpclient.nim $libdir/pure/ftpclient.nim || exit 1
+  cp lib/pure/ftpclient.nim $libdir/pure/ftpclient.nim
   chmod 644 $libdir/pure/ftpclient.nim
-  cp lib/pure/gentabs.nim $libdir/pure/gentabs.nim || exit 1
+  cp lib/pure/gentabs.nim $libdir/pure/gentabs.nim
   chmod 644 $libdir/pure/gentabs.nim
-  cp lib/pure/hashes.nim $libdir/pure/hashes.nim || exit 1
+  cp lib/pure/hashes.nim $libdir/pure/hashes.nim
   chmod 644 $libdir/pure/hashes.nim
-  cp lib/pure/htmlgen.nim $libdir/pure/htmlgen.nim || exit 1
+  cp lib/pure/htmlgen.nim $libdir/pure/htmlgen.nim
   chmod 644 $libdir/pure/htmlgen.nim
-  cp lib/pure/htmlparser.nim $libdir/pure/htmlparser.nim || exit 1
+  cp lib/pure/htmlparser.nim $libdir/pure/htmlparser.nim
   chmod 644 $libdir/pure/htmlparser.nim
-  cp lib/pure/httpclient.nim $libdir/pure/httpclient.nim || exit 1
+  cp lib/pure/httpclient.nim $libdir/pure/httpclient.nim
   chmod 644 $libdir/pure/httpclient.nim
-  cp lib/pure/httpserver.nim $libdir/pure/httpserver.nim || exit 1
+  cp lib/pure/httpserver.nim $libdir/pure/httpserver.nim
   chmod 644 $libdir/pure/httpserver.nim
-  cp lib/pure/irc.nim $libdir/pure/irc.nim || exit 1
+  cp lib/pure/irc.nim $libdir/pure/irc.nim
   chmod 644 $libdir/pure/irc.nim
-  cp lib/pure/json.nim $libdir/pure/json.nim || exit 1
+  cp lib/pure/json.nim $libdir/pure/json.nim
   chmod 644 $libdir/pure/json.nim
-  cp lib/pure/lexbase.nim $libdir/pure/lexbase.nim || exit 1
+  cp lib/pure/lexbase.nim $libdir/pure/lexbase.nim
   chmod 644 $libdir/pure/lexbase.nim
-  cp lib/pure/marshal.nim $libdir/pure/marshal.nim || exit 1
+  cp lib/pure/marshal.nim $libdir/pure/marshal.nim
   chmod 644 $libdir/pure/marshal.nim
-  cp lib/pure/matchers.nim $libdir/pure/matchers.nim || exit 1
+  cp lib/pure/matchers.nim $libdir/pure/matchers.nim
   chmod 644 $libdir/pure/matchers.nim
-  cp lib/pure/math.nim $libdir/pure/math.nim || exit 1
+  cp lib/pure/math.nim $libdir/pure/math.nim
   chmod 644 $libdir/pure/math.nim
-  cp lib/pure/md5.nim $libdir/pure/md5.nim || exit 1
+  cp lib/pure/md5.nim $libdir/pure/md5.nim
   chmod 644 $libdir/pure/md5.nim
-  cp lib/pure/memfiles.nim $libdir/pure/memfiles.nim || exit 1
+  cp lib/pure/memfiles.nim $libdir/pure/memfiles.nim
   chmod 644 $libdir/pure/memfiles.nim
-  cp lib/pure/oids.nim $libdir/pure/oids.nim || exit 1
+  cp lib/pure/mimetypes.nim $libdir/pure/mimetypes.nim
+  chmod 644 $libdir/pure/mimetypes.nim
+  cp lib/pure/oids.nim $libdir/pure/oids.nim
   chmod 644 $libdir/pure/oids.nim
-  cp lib/pure/os.nim $libdir/pure/os.nim || exit 1
+  cp lib/pure/os.nim $libdir/pure/os.nim
   chmod 644 $libdir/pure/os.nim
-  cp lib/pure/osproc.nim $libdir/pure/osproc.nim || exit 1
+  cp lib/pure/osproc.nim $libdir/pure/osproc.nim
   chmod 644 $libdir/pure/osproc.nim
-  cp lib/pure/parsecfg.nim $libdir/pure/parsecfg.nim || exit 1
+  cp lib/pure/parsecfg.nim $libdir/pure/parsecfg.nim
   chmod 644 $libdir/pure/parsecfg.nim
-  cp lib/pure/parsecsv.nim $libdir/pure/parsecsv.nim || exit 1
+  cp lib/pure/parsecsv.nim $libdir/pure/parsecsv.nim
   chmod 644 $libdir/pure/parsecsv.nim
-  cp lib/pure/parseopt.nim $libdir/pure/parseopt.nim || exit 1
+  cp lib/pure/parseopt.nim $libdir/pure/parseopt.nim
   chmod 644 $libdir/pure/parseopt.nim
-  cp lib/pure/parsesql.nim $libdir/pure/parsesql.nim || exit 1
+  cp lib/pure/parsesql.nim $libdir/pure/parsesql.nim
   chmod 644 $libdir/pure/parsesql.nim
-  cp lib/pure/parseurl.nim $libdir/pure/parseurl.nim || exit 1
+  cp lib/pure/parseurl.nim $libdir/pure/parseurl.nim
   chmod 644 $libdir/pure/parseurl.nim
-  cp lib/pure/parseutils.nim $libdir/pure/parseutils.nim || exit 1
+  cp lib/pure/parseutils.nim $libdir/pure/parseutils.nim
   chmod 644 $libdir/pure/parseutils.nim
-  cp lib/pure/parsexml.nim $libdir/pure/parsexml.nim || exit 1
+  cp lib/pure/parsexml.nim $libdir/pure/parsexml.nim
   chmod 644 $libdir/pure/parsexml.nim
-  cp lib/pure/pegs.nim $libdir/pure/pegs.nim || exit 1
+  cp lib/pure/pegs.nim $libdir/pure/pegs.nim
   chmod 644 $libdir/pure/pegs.nim
-  cp lib/pure/redis.nim $libdir/pure/redis.nim || exit 1
+  cp lib/pure/redis.nim $libdir/pure/redis.nim
   chmod 644 $libdir/pure/redis.nim
-  cp lib/pure/romans.nim $libdir/pure/romans.nim || exit 1
+  cp lib/pure/romans.nim $libdir/pure/romans.nim
   chmod 644 $libdir/pure/romans.nim
-  cp lib/pure/ropes.nim $libdir/pure/ropes.nim || exit 1
+  cp lib/pure/ropes.nim $libdir/pure/ropes.nim
   chmod 644 $libdir/pure/ropes.nim
-  cp lib/pure/scgi.nim $libdir/pure/scgi.nim || exit 1
+  cp lib/pure/scgi.nim $libdir/pure/scgi.nim
   chmod 644 $libdir/pure/scgi.nim
-  cp lib/pure/smtp.nim $libdir/pure/smtp.nim || exit 1
+  cp lib/pure/smtp.nim $libdir/pure/smtp.nim
   chmod 644 $libdir/pure/smtp.nim
-  cp lib/pure/sockets.nim $libdir/pure/sockets.nim || exit 1
+  cp lib/pure/sockets.nim $libdir/pure/sockets.nim
   chmod 644 $libdir/pure/sockets.nim
-  cp lib/pure/streams.nim $libdir/pure/streams.nim || exit 1
+  cp lib/pure/streams.nim $libdir/pure/streams.nim
   chmod 644 $libdir/pure/streams.nim
-  cp lib/pure/strtabs.nim $libdir/pure/strtabs.nim || exit 1
+  cp lib/pure/strtabs.nim $libdir/pure/strtabs.nim
   chmod 644 $libdir/pure/strtabs.nim
-  cp lib/pure/strutils.nim $libdir/pure/strutils.nim || exit 1
+  cp lib/pure/strutils.nim $libdir/pure/strutils.nim
   chmod 644 $libdir/pure/strutils.nim
-  cp lib/pure/subexes.nim $libdir/pure/subexes.nim || exit 1
+  cp lib/pure/subexes.nim $libdir/pure/subexes.nim
   chmod 644 $libdir/pure/subexes.nim
-  cp lib/pure/terminal.nim $libdir/pure/terminal.nim || exit 1
+  cp lib/pure/templateutil.nim $libdir/pure/templateutil.nim
+  chmod 644 $libdir/pure/templateutil.nim
+  cp lib/pure/terminal.nim $libdir/pure/terminal.nim
   chmod 644 $libdir/pure/terminal.nim
-  cp lib/pure/times.nim $libdir/pure/times.nim || exit 1
+  cp lib/pure/times.nim $libdir/pure/times.nim
   chmod 644 $libdir/pure/times.nim
-  cp lib/pure/unicode.nim $libdir/pure/unicode.nim || exit 1
+  cp lib/pure/typetraits.nim $libdir/pure/typetraits.nim
+  chmod 644 $libdir/pure/typetraits.nim
+  cp lib/pure/unicode.nim $libdir/pure/unicode.nim
   chmod 644 $libdir/pure/unicode.nim
-  cp lib/pure/unittest.nim $libdir/pure/unittest.nim || exit 1
+  cp lib/pure/unittest.nim $libdir/pure/unittest.nim
   chmod 644 $libdir/pure/unittest.nim
-  cp lib/pure/xmldom.nim $libdir/pure/xmldom.nim || exit 1
+  cp lib/pure/uri.nim $libdir/pure/uri.nim
+  chmod 644 $libdir/pure/uri.nim
+  cp lib/pure/xmldom.nim $libdir/pure/xmldom.nim
   chmod 644 $libdir/pure/xmldom.nim
-  cp lib/pure/xmldomparser.nim $libdir/pure/xmldomparser.nim || exit 1
+  cp lib/pure/xmldomparser.nim $libdir/pure/xmldomparser.nim
   chmod 644 $libdir/pure/xmldomparser.nim
-  cp lib/pure/xmlparser.nim $libdir/pure/xmlparser.nim || exit 1
+  cp lib/pure/xmlparser.nim $libdir/pure/xmlparser.nim
   chmod 644 $libdir/pure/xmlparser.nim
-  cp lib/pure/xmltree.nim $libdir/pure/xmltree.nim || exit 1
+  cp lib/pure/xmltree.nim $libdir/pure/xmltree.nim
   chmod 644 $libdir/pure/xmltree.nim
-  cp lib/pure/collections/critbits.nim $libdir/pure/collections/critbits.nim || exit 1
+  cp lib/pure/collections/critbits.nim $libdir/pure/collections/critbits.nim
   chmod 644 $libdir/pure/collections/critbits.nim
-  cp lib/pure/collections/intsets.nim $libdir/pure/collections/intsets.nim || exit 1
+  cp lib/pure/collections/intsets.nim $libdir/pure/collections/intsets.nim
   chmod 644 $libdir/pure/collections/intsets.nim
-  cp lib/pure/collections/lists.nim $libdir/pure/collections/lists.nim || exit 1
+  cp lib/pure/collections/lists.nim $libdir/pure/collections/lists.nim
   chmod 644 $libdir/pure/collections/lists.nim
-  cp lib/pure/collections/queues.nim $libdir/pure/collections/queues.nim || exit 1
+  cp lib/pure/collections/queues.nim $libdir/pure/collections/queues.nim
   chmod 644 $libdir/pure/collections/queues.nim
-  cp lib/pure/collections/sequtils.nim $libdir/pure/collections/sequtils.nim || exit 1
+  cp lib/pure/collections/sequtils.nim $libdir/pure/collections/sequtils.nim
   chmod 644 $libdir/pure/collections/sequtils.nim
-  cp lib/pure/collections/sets.nim $libdir/pure/collections/sets.nim || exit 1
+  cp lib/pure/collections/sets.nim $libdir/pure/collections/sets.nim
   chmod 644 $libdir/pure/collections/sets.nim
-  cp lib/pure/collections/tables.nim $libdir/pure/collections/tables.nim || exit 1
+  cp lib/pure/collections/tables.nim $libdir/pure/collections/tables.nim
   chmod 644 $libdir/pure/collections/tables.nim
-  cp lib/impure/db_mysql.nim $libdir/impure/db_mysql.nim || exit 1
+  cp lib/impure/db_mongo.nim $libdir/impure/db_mongo.nim
+  chmod 644 $libdir/impure/db_mongo.nim
+  cp lib/impure/db_mysql.nim $libdir/impure/db_mysql.nim
   chmod 644 $libdir/impure/db_mysql.nim
-  cp lib/impure/db_postgres.nim $libdir/impure/db_postgres.nim || exit 1
+  cp lib/impure/db_postgres.nim $libdir/impure/db_postgres.nim
   chmod 644 $libdir/impure/db_postgres.nim
-  cp lib/impure/db_sqlite.nim $libdir/impure/db_sqlite.nim || exit 1
+  cp lib/impure/db_sqlite.nim $libdir/impure/db_sqlite.nim
   chmod 644 $libdir/impure/db_sqlite.nim
-  cp lib/impure/dialogs.nim $libdir/impure/dialogs.nim || exit 1
+  cp lib/impure/dialogs.nim $libdir/impure/dialogs.nim
   chmod 644 $libdir/impure/dialogs.nim
-  cp lib/impure/fpc.nim $libdir/impure/fpc.nim || exit 1
-  chmod 644 $libdir/impure/fpc.nim
-  cp lib/impure/graphics.nim $libdir/impure/graphics.nim || exit 1
+  cp lib/impure/graphics.nim $libdir/impure/graphics.nim
   chmod 644 $libdir/impure/graphics.nim
-  cp lib/impure/osinfo_posix.nim $libdir/impure/osinfo_posix.nim || exit 1
+  cp lib/impure/osinfo_posix.nim $libdir/impure/osinfo_posix.nim
   chmod 644 $libdir/impure/osinfo_posix.nim
-  cp lib/impure/osinfo_win.nim $libdir/impure/osinfo_win.nim || exit 1
+  cp lib/impure/osinfo_win.nim $libdir/impure/osinfo_win.nim
   chmod 644 $libdir/impure/osinfo_win.nim
-  cp lib/impure/rdstdin.nim $libdir/impure/rdstdin.nim || exit 1
+  cp lib/impure/rdstdin.nim $libdir/impure/rdstdin.nim
   chmod 644 $libdir/impure/rdstdin.nim
-  cp lib/impure/re.nim $libdir/impure/re.nim || exit 1
+  cp lib/impure/re.nim $libdir/impure/re.nim
   chmod 644 $libdir/impure/re.nim
-  cp lib/impure/ssl.nim $libdir/impure/ssl.nim || exit 1
+  cp lib/impure/ssl.nim $libdir/impure/ssl.nim
   chmod 644 $libdir/impure/ssl.nim
-  cp lib/impure/web.nim $libdir/impure/web.nim || exit 1
+  cp lib/impure/web.nim $libdir/impure/web.nim
   chmod 644 $libdir/impure/web.nim
-  cp lib/impure/zipfiles.nim $libdir/impure/zipfiles.nim || exit 1
+  cp lib/impure/zipfiles.nim $libdir/impure/zipfiles.nim
   chmod 644 $libdir/impure/zipfiles.nim
-  cp lib/wrappers/claro.nim $libdir/wrappers/claro.nim || exit 1
+  cp lib/wrappers/claro.nim $libdir/wrappers/claro.nim
   chmod 644 $libdir/wrappers/claro.nim
-  cp lib/wrappers/expat.nim $libdir/wrappers/expat.nim || exit 1
+  cp lib/wrappers/expat.nim $libdir/wrappers/expat.nim
   chmod 644 $libdir/wrappers/expat.nim
-  cp lib/wrappers/iup.nim $libdir/wrappers/iup.nim || exit 1
+  cp lib/wrappers/iup.nim $libdir/wrappers/iup.nim
   chmod 644 $libdir/wrappers/iup.nim
-  cp lib/wrappers/joyent_http_parser.nim $libdir/wrappers/joyent_http_parser.nim || exit 1
+  cp lib/wrappers/joyent_http_parser.nim $libdir/wrappers/joyent_http_parser.nim
   chmod 644 $libdir/wrappers/joyent_http_parser.nim
-  cp lib/wrappers/libcurl.nim $libdir/wrappers/libcurl.nim || exit 1
+  cp lib/wrappers/libcurl.nim $libdir/wrappers/libcurl.nim
   chmod 644 $libdir/wrappers/libcurl.nim
-  cp lib/wrappers/libsvm.nim $libdir/wrappers/libsvm.nim || exit 1
+  cp lib/wrappers/libsvm.nim $libdir/wrappers/libsvm.nim
   chmod 644 $libdir/wrappers/libsvm.nim
-  cp lib/wrappers/libuv.nim $libdir/wrappers/libuv.nim || exit 1
+  cp lib/wrappers/libuv.nim $libdir/wrappers/libuv.nim
   chmod 644 $libdir/wrappers/libuv.nim
-  cp lib/wrappers/mongo.nim $libdir/wrappers/mongo.nim || exit 1
+  cp lib/wrappers/mongo.nim $libdir/wrappers/mongo.nim
   chmod 644 $libdir/wrappers/mongo.nim
-  cp lib/wrappers/mysql.nim $libdir/wrappers/mysql.nim || exit 1
+  cp lib/wrappers/mysql.nim $libdir/wrappers/mysql.nim
   chmod 644 $libdir/wrappers/mysql.nim
-  cp lib/wrappers/odbcsql.nim $libdir/wrappers/odbcsql.nim || exit 1
+  cp lib/wrappers/odbcsql.nim $libdir/wrappers/odbcsql.nim
   chmod 644 $libdir/wrappers/odbcsql.nim
-  cp lib/wrappers/openssl.nim $libdir/wrappers/openssl.nim || exit 1
+  cp lib/wrappers/openssl.nim $libdir/wrappers/openssl.nim
   chmod 644 $libdir/wrappers/openssl.nim
-  cp lib/wrappers/pcre.nim $libdir/wrappers/pcre.nim || exit 1
+  cp lib/wrappers/pcre.nim $libdir/wrappers/pcre.nim
   chmod 644 $libdir/wrappers/pcre.nim
-  cp lib/wrappers/postgres.nim $libdir/wrappers/postgres.nim || exit 1
+  cp lib/wrappers/postgres.nim $libdir/wrappers/postgres.nim
   chmod 644 $libdir/wrappers/postgres.nim
-  cp lib/wrappers/python.nim $libdir/wrappers/python.nim || exit 1
+  cp lib/wrappers/python.nim $libdir/wrappers/python.nim
   chmod 644 $libdir/wrappers/python.nim
-  cp lib/wrappers/sphinx.nim $libdir/wrappers/sphinx.nim || exit 1
+  cp lib/wrappers/sphinx.nim $libdir/wrappers/sphinx.nim
   chmod 644 $libdir/wrappers/sphinx.nim
-  cp lib/wrappers/sqlite3.nim $libdir/wrappers/sqlite3.nim || exit 1
+  cp lib/wrappers/sqlite3.nim $libdir/wrappers/sqlite3.nim
   chmod 644 $libdir/wrappers/sqlite3.nim
-  cp lib/wrappers/tcl.nim $libdir/wrappers/tcl.nim || exit 1
+  cp lib/wrappers/tcl.nim $libdir/wrappers/tcl.nim
   chmod 644 $libdir/wrappers/tcl.nim
-  cp lib/wrappers/tinyc.nim $libdir/wrappers/tinyc.nim || exit 1
+  cp lib/wrappers/tinyc.nim $libdir/wrappers/tinyc.nim
   chmod 644 $libdir/wrappers/tinyc.nim
-  cp lib/wrappers/tre.nim $libdir/wrappers/tre.nim || exit 1
+  cp lib/wrappers/tre.nim $libdir/wrappers/tre.nim
   chmod 644 $libdir/wrappers/tre.nim
-  cp lib/wrappers/zmq.nim $libdir/wrappers/zmq.nim || exit 1
+  cp lib/wrappers/zmq.nim $libdir/wrappers/zmq.nim
   chmod 644 $libdir/wrappers/zmq.nim
-  cp lib/wrappers/cairo/cairo.nim $libdir/wrappers/cairo/cairo.nim || exit 1
+  cp lib/wrappers/cairo/cairo.nim $libdir/wrappers/cairo/cairo.nim
   chmod 644 $libdir/wrappers/cairo/cairo.nim
-  cp lib/wrappers/cairo/cairoft.nim $libdir/wrappers/cairo/cairoft.nim || exit 1
+  cp lib/wrappers/cairo/cairoft.nim $libdir/wrappers/cairo/cairoft.nim
   chmod 644 $libdir/wrappers/cairo/cairoft.nim
-  cp lib/wrappers/cairo/cairowin32.nim $libdir/wrappers/cairo/cairowin32.nim || exit 1
+  cp lib/wrappers/cairo/cairowin32.nim $libdir/wrappers/cairo/cairowin32.nim
   chmod 644 $libdir/wrappers/cairo/cairowin32.nim
-  cp lib/wrappers/cairo/cairoxlib.nim $libdir/wrappers/cairo/cairoxlib.nim || exit 1
+  cp lib/wrappers/cairo/cairoxlib.nim $libdir/wrappers/cairo/cairoxlib.nim
   chmod 644 $libdir/wrappers/cairo/cairoxlib.nim
-  cp lib/wrappers/gtk/atk.nim $libdir/wrappers/gtk/atk.nim || exit 1
+  cp lib/wrappers/gtk/atk.nim $libdir/wrappers/gtk/atk.nim
   chmod 644 $libdir/wrappers/gtk/atk.nim
-  cp lib/wrappers/gtk/gdk2.nim $libdir/wrappers/gtk/gdk2.nim || exit 1
+  cp lib/wrappers/gtk/gdk2.nim $libdir/wrappers/gtk/gdk2.nim
   chmod 644 $libdir/wrappers/gtk/gdk2.nim
-  cp lib/wrappers/gtk/gdk2pixbuf.nim $libdir/wrappers/gtk/gdk2pixbuf.nim || exit 1
+  cp lib/wrappers/gtk/gdk2pixbuf.nim $libdir/wrappers/gtk/gdk2pixbuf.nim
   chmod 644 $libdir/wrappers/gtk/gdk2pixbuf.nim
-  cp lib/wrappers/gtk/gdkglext.nim $libdir/wrappers/gtk/gdkglext.nim || exit 1
+  cp lib/wrappers/gtk/gdkglext.nim $libdir/wrappers/gtk/gdkglext.nim
   chmod 644 $libdir/wrappers/gtk/gdkglext.nim
-  cp lib/wrappers/gtk/glib2.nim $libdir/wrappers/gtk/glib2.nim || exit 1
+  cp lib/wrappers/gtk/glib2.nim $libdir/wrappers/gtk/glib2.nim
   chmod 644 $libdir/wrappers/gtk/glib2.nim
-  cp lib/wrappers/gtk/gtk2.nim $libdir/wrappers/gtk/gtk2.nim || exit 1
+  cp lib/wrappers/gtk/gtk2.nim $libdir/wrappers/gtk/gtk2.nim
   chmod 644 $libdir/wrappers/gtk/gtk2.nim
-  cp lib/wrappers/gtk/gtkglext.nim $libdir/wrappers/gtk/gtkglext.nim || exit 1
+  cp lib/wrappers/gtk/gtkglext.nim $libdir/wrappers/gtk/gtkglext.nim
   chmod 644 $libdir/wrappers/gtk/gtkglext.nim
-  cp lib/wrappers/gtk/gtkhtml.nim $libdir/wrappers/gtk/gtkhtml.nim || exit 1
+  cp lib/wrappers/gtk/gtkhtml.nim $libdir/wrappers/gtk/gtkhtml.nim
   chmod 644 $libdir/wrappers/gtk/gtkhtml.nim
-  cp lib/wrappers/gtk/libglade2.nim $libdir/wrappers/gtk/libglade2.nim || exit 1
+  cp lib/wrappers/gtk/libglade2.nim $libdir/wrappers/gtk/libglade2.nim
   chmod 644 $libdir/wrappers/gtk/libglade2.nim
-  cp lib/wrappers/gtk/pango.nim $libdir/wrappers/gtk/pango.nim || exit 1
+  cp lib/wrappers/gtk/pango.nim $libdir/wrappers/gtk/pango.nim
   chmod 644 $libdir/wrappers/gtk/pango.nim
-  cp lib/wrappers/gtk/pangoutils.nim $libdir/wrappers/gtk/pangoutils.nim || exit 1
+  cp lib/wrappers/gtk/pangoutils.nim $libdir/wrappers/gtk/pangoutils.nim
   chmod 644 $libdir/wrappers/gtk/pangoutils.nim
-  cp lib/wrappers/lua/lauxlib.nim $libdir/wrappers/lua/lauxlib.nim || exit 1
+  cp lib/wrappers/lua/lauxlib.nim $libdir/wrappers/lua/lauxlib.nim
   chmod 644 $libdir/wrappers/lua/lauxlib.nim
-  cp lib/wrappers/lua/lua.nim $libdir/wrappers/lua/lua.nim || exit 1
+  cp lib/wrappers/lua/lua.nim $libdir/wrappers/lua/lua.nim
   chmod 644 $libdir/wrappers/lua/lua.nim
-  cp lib/wrappers/lua/lualib.nim $libdir/wrappers/lua/lualib.nim || exit 1
+  cp lib/wrappers/lua/lualib.nim $libdir/wrappers/lua/lualib.nim
   chmod 644 $libdir/wrappers/lua/lualib.nim
-  cp lib/wrappers/opengl/gl.nim $libdir/wrappers/opengl/gl.nim || exit 1
+  cp lib/wrappers/opengl/gl.nim $libdir/wrappers/opengl/gl.nim
   chmod 644 $libdir/wrappers/opengl/gl.nim
-  cp lib/wrappers/opengl/glext.nim $libdir/wrappers/opengl/glext.nim || exit 1
+  cp lib/wrappers/opengl/glext.nim $libdir/wrappers/opengl/glext.nim
   chmod 644 $libdir/wrappers/opengl/glext.nim
-  cp lib/wrappers/opengl/glu.nim $libdir/wrappers/opengl/glu.nim || exit 1
+  cp lib/wrappers/opengl/glu.nim $libdir/wrappers/opengl/glu.nim
   chmod 644 $libdir/wrappers/opengl/glu.nim
-  cp lib/wrappers/opengl/glut.nim $libdir/wrappers/opengl/glut.nim || exit 1
+  cp lib/wrappers/opengl/glut.nim $libdir/wrappers/opengl/glut.nim
   chmod 644 $libdir/wrappers/opengl/glut.nim
-  cp lib/wrappers/opengl/glx.nim $libdir/wrappers/opengl/glx.nim || exit 1
+  cp lib/wrappers/opengl/glx.nim $libdir/wrappers/opengl/glx.nim
   chmod 644 $libdir/wrappers/opengl/glx.nim
-  cp lib/wrappers/opengl/opengl.nim $libdir/wrappers/opengl/opengl.nim || exit 1
+  cp lib/wrappers/opengl/opengl.nim $libdir/wrappers/opengl/opengl.nim
   chmod 644 $libdir/wrappers/opengl/opengl.nim
-  cp lib/wrappers/opengl/wingl.nim $libdir/wrappers/opengl/wingl.nim || exit 1
+  cp lib/wrappers/opengl/wingl.nim $libdir/wrappers/opengl/wingl.nim
   chmod 644 $libdir/wrappers/opengl/wingl.nim
-  cp lib/wrappers/sdl/sdl.nim $libdir/wrappers/sdl/sdl.nim || exit 1
+  cp lib/wrappers/readline/history.nim $libdir/wrappers/readline/history.nim
+  chmod 644 $libdir/wrappers/readline/history.nim
+  cp lib/wrappers/readline/readline.nim $libdir/wrappers/readline/readline.nim
+  chmod 644 $libdir/wrappers/readline/readline.nim
+  cp lib/wrappers/readline/rltypedefs.nim $libdir/wrappers/readline/rltypedefs.nim
+  chmod 644 $libdir/wrappers/readline/rltypedefs.nim
+  cp lib/wrappers/sdl/sdl.nim $libdir/wrappers/sdl/sdl.nim
   chmod 644 $libdir/wrappers/sdl/sdl.nim
-  cp lib/wrappers/sdl/sdl_gfx.nim $libdir/wrappers/sdl/sdl_gfx.nim || exit 1
+  cp lib/wrappers/sdl/sdl_gfx.nim $libdir/wrappers/sdl/sdl_gfx.nim
   chmod 644 $libdir/wrappers/sdl/sdl_gfx.nim
-  cp lib/wrappers/sdl/sdl_image.nim $libdir/wrappers/sdl/sdl_image.nim || exit 1
+  cp lib/wrappers/sdl/sdl_image.nim $libdir/wrappers/sdl/sdl_image.nim
   chmod 644 $libdir/wrappers/sdl/sdl_image.nim
-  cp lib/wrappers/sdl/sdl_mixer.nim $libdir/wrappers/sdl/sdl_mixer.nim || exit 1
+  cp lib/wrappers/sdl/sdl_mixer.nim $libdir/wrappers/sdl/sdl_mixer.nim
   chmod 644 $libdir/wrappers/sdl/sdl_mixer.nim
-  cp lib/wrappers/sdl/sdl_mixer_nosmpeg.nim $libdir/wrappers/sdl/sdl_mixer_nosmpeg.nim || exit 1
+  cp lib/wrappers/sdl/sdl_mixer_nosmpeg.nim $libdir/wrappers/sdl/sdl_mixer_nosmpeg.nim
   chmod 644 $libdir/wrappers/sdl/sdl_mixer_nosmpeg.nim
-  cp lib/wrappers/sdl/sdl_net.nim $libdir/wrappers/sdl/sdl_net.nim || exit 1
+  cp lib/wrappers/sdl/sdl_net.nim $libdir/wrappers/sdl/sdl_net.nim
   chmod 644 $libdir/wrappers/sdl/sdl_net.nim
-  cp lib/wrappers/sdl/sdl_ttf.nim $libdir/wrappers/sdl/sdl_ttf.nim || exit 1
+  cp lib/wrappers/sdl/sdl_ttf.nim $libdir/wrappers/sdl/sdl_ttf.nim
   chmod 644 $libdir/wrappers/sdl/sdl_ttf.nim
-  cp lib/wrappers/sdl/smpeg.nim $libdir/wrappers/sdl/smpeg.nim || exit 1
+  cp lib/wrappers/sdl/smpeg.nim $libdir/wrappers/sdl/smpeg.nim
   chmod 644 $libdir/wrappers/sdl/smpeg.nim
-  cp lib/wrappers/x11/cursorfont.nim $libdir/wrappers/x11/cursorfont.nim || exit 1
+  cp lib/wrappers/x11/cursorfont.nim $libdir/wrappers/x11/cursorfont.nim
   chmod 644 $libdir/wrappers/x11/cursorfont.nim
-  cp lib/wrappers/x11/keysym.nim $libdir/wrappers/x11/keysym.nim || exit 1
+  cp lib/wrappers/x11/keysym.nim $libdir/wrappers/x11/keysym.nim
   chmod 644 $libdir/wrappers/x11/keysym.nim
-  cp lib/wrappers/x11/x.nim $libdir/wrappers/x11/x.nim || exit 1
+  cp lib/wrappers/x11/x.nim $libdir/wrappers/x11/x.nim
   chmod 644 $libdir/wrappers/x11/x.nim
-  cp lib/wrappers/x11/xatom.nim $libdir/wrappers/x11/xatom.nim || exit 1
+  cp lib/wrappers/x11/xatom.nim $libdir/wrappers/x11/xatom.nim
   chmod 644 $libdir/wrappers/x11/xatom.nim
-  cp lib/wrappers/x11/xcms.nim $libdir/wrappers/x11/xcms.nim || exit 1
+  cp lib/wrappers/x11/xcms.nim $libdir/wrappers/x11/xcms.nim
   chmod 644 $libdir/wrappers/x11/xcms.nim
-  cp lib/wrappers/x11/xf86dga.nim $libdir/wrappers/x11/xf86dga.nim || exit 1
+  cp lib/wrappers/x11/xf86dga.nim $libdir/wrappers/x11/xf86dga.nim
   chmod 644 $libdir/wrappers/x11/xf86dga.nim
-  cp lib/wrappers/x11/xf86vmode.nim $libdir/wrappers/x11/xf86vmode.nim || exit 1
+  cp lib/wrappers/x11/xf86vmode.nim $libdir/wrappers/x11/xf86vmode.nim
   chmod 644 $libdir/wrappers/x11/xf86vmode.nim
-  cp lib/wrappers/x11/xi.nim $libdir/wrappers/x11/xi.nim || exit 1
+  cp lib/wrappers/x11/xi.nim $libdir/wrappers/x11/xi.nim
   chmod 644 $libdir/wrappers/x11/xi.nim
-  cp lib/wrappers/x11/xinerama.nim $libdir/wrappers/x11/xinerama.nim || exit 1
+  cp lib/wrappers/x11/xinerama.nim $libdir/wrappers/x11/xinerama.nim
   chmod 644 $libdir/wrappers/x11/xinerama.nim
-  cp lib/wrappers/x11/xkb.nim $libdir/wrappers/x11/xkb.nim || exit 1
+  cp lib/wrappers/x11/xkb.nim $libdir/wrappers/x11/xkb.nim
   chmod 644 $libdir/wrappers/x11/xkb.nim
-  cp lib/wrappers/x11/xkblib.nim $libdir/wrappers/x11/xkblib.nim || exit 1
+  cp lib/wrappers/x11/xkblib.nim $libdir/wrappers/x11/xkblib.nim
   chmod 644 $libdir/wrappers/x11/xkblib.nim
-  cp lib/wrappers/x11/xlib.nim $libdir/wrappers/x11/xlib.nim || exit 1
+  cp lib/wrappers/x11/xlib.nim $libdir/wrappers/x11/xlib.nim
   chmod 644 $libdir/wrappers/x11/xlib.nim
-  cp lib/wrappers/x11/xrandr.nim $libdir/wrappers/x11/xrandr.nim || exit 1
+  cp lib/wrappers/x11/xrandr.nim $libdir/wrappers/x11/xrandr.nim
   chmod 644 $libdir/wrappers/x11/xrandr.nim
-  cp lib/wrappers/x11/xrender.nim $libdir/wrappers/x11/xrender.nim || exit 1
+  cp lib/wrappers/x11/xrender.nim $libdir/wrappers/x11/xrender.nim
   chmod 644 $libdir/wrappers/x11/xrender.nim
-  cp lib/wrappers/x11/xresource.nim $libdir/wrappers/x11/xresource.nim || exit 1
+  cp lib/wrappers/x11/xresource.nim $libdir/wrappers/x11/xresource.nim
   chmod 644 $libdir/wrappers/x11/xresource.nim
-  cp lib/wrappers/x11/xshm.nim $libdir/wrappers/x11/xshm.nim || exit 1
+  cp lib/wrappers/x11/xshm.nim $libdir/wrappers/x11/xshm.nim
   chmod 644 $libdir/wrappers/x11/xshm.nim
-  cp lib/wrappers/x11/xutil.nim $libdir/wrappers/x11/xutil.nim || exit 1
+  cp lib/wrappers/x11/xutil.nim $libdir/wrappers/x11/xutil.nim
   chmod 644 $libdir/wrappers/x11/xutil.nim
-  cp lib/wrappers/x11/xv.nim $libdir/wrappers/x11/xv.nim || exit 1
+  cp lib/wrappers/x11/xv.nim $libdir/wrappers/x11/xv.nim
   chmod 644 $libdir/wrappers/x11/xv.nim
-  cp lib/wrappers/x11/xvlib.nim $libdir/wrappers/x11/xvlib.nim || exit 1
+  cp lib/wrappers/x11/xvlib.nim $libdir/wrappers/x11/xvlib.nim
   chmod 644 $libdir/wrappers/x11/xvlib.nim
-  cp lib/wrappers/zip/libzip.nim $libdir/wrappers/zip/libzip.nim || exit 1
+  cp lib/wrappers/zip/libzip.nim $libdir/wrappers/zip/libzip.nim
   chmod 644 $libdir/wrappers/zip/libzip.nim
-  cp lib/wrappers/zip/zlib.nim $libdir/wrappers/zip/zlib.nim || exit 1
+  cp lib/wrappers/zip/zlib.nim $libdir/wrappers/zip/zlib.nim
   chmod 644 $libdir/wrappers/zip/zlib.nim
-  cp lib/wrappers/zip/zzip.nim $libdir/wrappers/zip/zzip.nim || exit 1
+  cp lib/wrappers/zip/zzip.nim $libdir/wrappers/zip/zzip.nim
   chmod 644 $libdir/wrappers/zip/zzip.nim
-  cp lib/wrappers/zip/libzip_all.c $libdir/wrappers/zip/libzip_all.c || exit 1
+  cp lib/wrappers/zip/libzip_all.c $libdir/wrappers/zip/libzip_all.c
   chmod 644 $libdir/wrappers/zip/libzip_all.c
-  cp lib/windows/mmsystem.nim $libdir/windows/mmsystem.nim || exit 1
+  cp lib/windows/mmsystem.nim $libdir/windows/mmsystem.nim
   chmod 644 $libdir/windows/mmsystem.nim
-  cp lib/windows/nb30.nim $libdir/windows/nb30.nim || exit 1
+  cp lib/windows/nb30.nim $libdir/windows/nb30.nim
   chmod 644 $libdir/windows/nb30.nim
-  cp lib/windows/ole2.nim $libdir/windows/ole2.nim || exit 1
+  cp lib/windows/ole2.nim $libdir/windows/ole2.nim
   chmod 644 $libdir/windows/ole2.nim
-  cp lib/windows/psapi.nim $libdir/windows/psapi.nim || exit 1
+  cp lib/windows/psapi.nim $libdir/windows/psapi.nim
   chmod 644 $libdir/windows/psapi.nim
-  cp lib/windows/shellapi.nim $libdir/windows/shellapi.nim || exit 1
+  cp lib/windows/shellapi.nim $libdir/windows/shellapi.nim
   chmod 644 $libdir/windows/shellapi.nim
-  cp lib/windows/shfolder.nim $libdir/windows/shfolder.nim || exit 1
+  cp lib/windows/shfolder.nim $libdir/windows/shfolder.nim
   chmod 644 $libdir/windows/shfolder.nim
-  cp lib/windows/windows.nim $libdir/windows/windows.nim || exit 1
+  cp lib/windows/windows.nim $libdir/windows/windows.nim
   chmod 644 $libdir/windows/windows.nim
-  cp lib/windows/winlean.nim $libdir/windows/winlean.nim || exit 1
+  cp lib/windows/winlean.nim $libdir/windows/winlean.nim
   chmod 644 $libdir/windows/winlean.nim
-  cp lib/posix/posix.nim $libdir/posix/posix.nim || exit 1
+  cp lib/posix/posix.nim $libdir/posix/posix.nim
   chmod 644 $libdir/posix/posix.nim
-  cp lib/ecmas/dom.nim $libdir/ecmas/dom.nim || exit 1
+  cp lib/ecmas/dom.nim $libdir/ecmas/dom.nim
   chmod 644 $libdir/ecmas/dom.nim
   
   echo "installation successful"