-neurodebian (0.18) squeeze; urgency=low
+neurodebian (0.19) unstable; urgency=low
* Initial release.
- -- Michael Hanke <michael.hanke@gmail.com> Thu, 04 Nov 2010 10:03:35 -0400
+ -- Michael Hanke <michael.hanke@gmail.com> Thu, 25 Nov 2010 10:16:04 -0500
override_dh_auto_install::
override_dh_auto_test::
+
+override_dh_clean:
+ dh_clean
+ $(MAKE) -C artwork clean
--- /dev/null
+Source: nspike
+Tasks: debian-science/neuroscience-electrophysiology
+Homepage: http://nspike.sourceforge.net
+Language: C++
+Version: 1.9.3
+License: GPL-2+
+Author: Loren M. Frank
+Pkg-Description: electrophysiological and behavioral data collection
+ This project is a electrophysiological and behavioral data collection
+ program that can distribute data collection tasks across multiple
+ machines. It is designed to interface with the NSpike hardware
+ system.
+Remark: Last vital signs from 2 years ago
# package names
select names = libnifti2 odin mitools afni-atlases python-pyssdh python-networkx
r-cran-glmnet python-rpy2 python-nibabel-snapshot
- python-scikits-learn python-mdp python-mlpy python-openpyxl libgdf-dev
+ python-scikits-learn python-mdp python-mlpy python-openpyxl libgdf-dev matlab
+ svgtune
# Information about prospective packages to be imported from taskfiles
prospective =
openmeeg-tools = openmeeg-tools libopenmeeg-dev python-openmeeg libopenmeeg1
libbiosig-dev = libbiosig-dev python-biosig octave-biosig biosig-tools libbiosig0
libgdf-dev = libgdf-dev libgdf0 libgdf0-dbg libgdf-dev gdf-tools octave-gdf matlab-gdf
+spm8 = matlab-spm8 spm8-common spm8-data spm8-doc
[mirrors]
de = http://apsy.gse.uni-magdeburg.de/debian
gifti-bin = 75
imagej = 256
itksnap = 110
+jist = 228
libminc-dev = 129
-minc-tools = 129
libgiftiio-dev = 75
libnifti2 = 26
libnifti-dev = 26
-nifti-bin = 26
-odin = 153
+matlab-spm8 = 24
+minc-tools = 129
+mipav = 70
mitools = 153
mricron = 152
mrtrix = 128
+nifti-bin = 26
+odin = 153
python-mvpa = 162
python-nipype = 325
slicer = 50
+spm8 = 24
voxbo = 73
-mipav = 70
-jist = 228
--- /dev/null
+Package development in progress
+===============================
+
+The current SPM8 package is work-in-progress. It might undergo significant
+changes and package content and functionality between package updates. In
+particular, only fMRI-related functionality is supposed to work at this time.
+All MEG/EEG tools require the fieldtrip toolbox that will be packaged
+separately in the future.
+
+However, testing, bug reports and suggestions for improvements are most welcome!
+Please post them to 592390@bugs.debian.org
--- /dev/null
+.. _chap_debian_booth_sfn2010:
+
+Debian booth at SfN2010 in San Diego
+====================================
+
+.. image:: pics/sfn2010/SanDiegoConferenceCenter.jpg
+ :width: 100%
+
+During November 13-17, 2010 the NeuroDebian team ran its first Debian booth at the
+annual meeting of the `Society for Neuroscience`_ (SfN2010_) in San
+Diego, USA. We presented the upcoming release Debian 6.0 Squeeze and
+demonstrated its utility as a robust and versatile research environment for
+neuroscience. Booth visitors had the opportunity to meet with developers
+of neuroscience research software, and to get information on available software
+and recommendations for deployment strategies in research laboratories.
+
+.. image:: pics/sfn2010/PosterSession.jpg
+
+The `annual meeting`_ of the Society for Neuroscience is one of the largest
+neuroscience conferences in the world, with over 30,000 attendees. Researchers,
+clinicians, and leading experts discuss the latest findings about the brain,
+nervous system, and related disorders.
+
+
+Booth setup
+-----------
+
+`Don Armstrong`_ kindly provided us with Debian banners to decorate the
+booth and some Debian T-shirts to give away. Moreover, we were equipped with
+laptops running Debian squeeze and sid, as well as two additional laptops each
+running a Debian squeeze virtual machine on top of Mac OS X and Windows,
+respectively (CDs with the VM image were also available for visitors to take
+home). To demonstrate Debian's versatility, we had a complete Debian
+archive mirror that was used to show the full selection of available software
+and the simplicity of installation and upgrade procedures. The mirror
+was provided from an external harddrive by a commodity router box
+running the Debian-based DebWrt_ distribution.
+All machines were connected to our own local wired network to avoid problems
+with conference center's free wireless network (poor at best). Finally, we had
+several hundred `tri-fold flyers`_ with general Debian facts on one side, and
+NeuroDebian facts on the other (`sources are available`_).
+
+
+.. figure:: pics/sfn2010/BoothReady.jpg
+
+ Final booth setup with staff (left to right): Michael Hanke, Yaroslav
+ Halchenko and Swaroop Guntupali.
+
+
+Booth visitors
+--------------
+
+The booth was well attended on all days of the conference. Many people were
+somewhat surprised, but also pleased to see Debian represented. The visitors
+comprised the whole range from long-term Debian users to people who were not
+aware of an operating system other than Windows and Mac OS.
+
+A number of visitors were involved in free software development -- at various
+levels. We talked to a Debian ftpmaster, a Gentoo developer, various developers
+of neuroscience-related software that is already integrated in Debian and many
+more whose work still needs to be packaged. We were visited by representatives of
+companies looking for support to get their open-source products into Debian.
+The vast majority, however, were scientists looking for a better research
+platform for their labs. That included the struggling Phd-student, as well as
+lab heads sharing their experience managing a computing infrastructure for
+neuroscience research.
+
+The Debian booth also served as a platform for upstream developers to meet with
+Debian users of their software.
+
+.. image:: pics/sfn2010/BusyBooth.jpg
+
+
+
+Debian-based systems are the preferred Linux environment
+--------------------------------------------------------
+
+The overwhelming majority of visitors running some Linux flavor used a
+Debian-based operating system -- including Debian_ itself, Ubuntu_ and
+sidux/apttosid_. Especially people using Python for research purposes seem to
+prefer the comprehensive support of Python modules in Debian, whereas e.g. R_
+users are more uniformly distributed across GNU/Linux distributions. This
+assessment is, of course, biased by the fact that Debian was the only
+distribution that was present at this conference.
+
+In general, we had the impression that Linux users employ a larger variety of
+tools in their research activities, whereas users of proprietary operating
+systems tended to limit themselves to a more restricted set, or use an
+intermediate computing platform, such as Matlab.
+
+.. figure:: pics/sfn2010/NeuroDebianPosterSession.jpg
+
+ During the conference's poster session we explained the Debian system and
+ community processes to many interested visitors (`download the poster`_).
+
+
+Take-home messages
+------------------
+
+While there was a large variety of topics that were brought up by visitors there
+were some common patterns.
+
+Visibility
+
+ For a Debian developer it may be surprising, but many people still do not
+ know that Debian exists -- even despite the fact that Debian is often a
+ perfect match for their particular requirements. People who got introduced to
+ Debian at the booth often couldn't believe what they were hearing or
+ seeing: so much software, runs on any hardware, all for free.
+
+ We believe it would be very beneficial for Debian to reach out beyond the IT
+ sector and present itself in all fields of applications that it already
+ supports today.
+
+Debian and Ubuntu
+
+ Apparently it is still a largely unknown fact that Ubuntu is based on Debian.
+
+Live-CD
+
+ There was a significant demand for (customized) Live-CDs. On one hand, people
+ were asking for a way to quickly try out Debian (and we believe that this
+ doesn't necessarily have to be a live-cd). On the other hand, for example,
+ teachers were asking for means to temporarily deploy Debian on, e.g.
+ university computer pool machines and use Debian-packaged software for
+ teaching courses (e.g. on brain-imaging data analysis).
+
+Electrophysiology tools
+
+ Of all subfields of neuroscience, electrophysiology researchers expressed the
+ greatest demand for better tools in Debian -- or basically at least some
+ specialized tools at all. Moreover, many research projects relying
+ on FOSS solutions in electrophysiology already use Debian-based
+ systems to accomplish the mission; they just rely on manual (from sources)
+ deployment of the necessary tools. We started a `new Debian Science Blend task`_ to
+ collect information about existing relevant software and to eventually package it.
+
+Realtime capabilities
+
+ Apparently, numerous research groups utilize Debian-based equipment to perform
+ various flavors of real-time data acquisition and processing. They expressed
+ their demand for real-time capabilities of (some) Debian kernel images.
+
+Cloud-computing
+
+ Cloud-computing seems to be an increasingly interesting topic for neuroscience
+ data analysis. We got the impression that there is a tendency to look for
+ alternatives to Matlab to be able to run analyses in the cloud cheaper (or at
+ all). We pointed people to ongoing efforts in Debian to enable Debian-based
+ cloud computing (see e.g. the `Debian wiki`_).
+
+
+Many Thanks
+-----------
+
+Throughout the conference many people stopped by to express their gratitude to
+Debian for developing their operating system of choice. We want to affirm this
+and relay it to the larger Debian community. Thanks for Debian.
+
+
+Acknowledgements
+----------------
+
+This booth has been made possible by the generous support of Prof. James V.
+Haxby (Dartmouth College, New Hampshire, USA) and `other donations to the Debian
+project`_.
+
+
+.. _annual meeting: http://www.sfn.org/am2010/
+.. _SfN2010: http://www.sfn.org/am2010/
+.. _Society for Neuroscience: http://www.sfn.org/
+.. _Don Armstrong: http://www.donarmstrong.org
+.. _DebWrt: http://www.debwrt.net
+.. _Debian: http://www.debian.org
+.. _Ubuntu: http://www.ubuntu.com
+.. _apttosid: http://aptosid.com
+.. _R: http://www.r-project.org
+.. _tri-fold flyers: http://neuro.debian.net/_files/brochure_debian-neurodebian.pdf
+.. _sources are available: http://git.debian.org/?p=pkg-exppsy/neurodebian.git;a=tree;hb=HEAD;f=artwork/brochure
+.. _Debian wiki: http://wiki.debian.org/Cloud
+.. _new Debian Science Blend task: http://blends.alioth.debian.org/science/tasks/neuroscience-electrophysiology
+.. _download the poster: http://neuro.debian.net/_files/NeuroDebian_SfN2010.png
+.. _other donations to the Debian project: http://www.debian.org/donations
as root or use sudo).
-.. include:: links_names.rst
-.. include:: substitutions.rst
+.. include:: link_names.txt
+.. include:: substitutions.txt
+++ /dev/null
-.. _gpg_signatures:
-
-
-Package authentication
-======================
-
-
-When you start using this repository, you might get warning messages like this::
-
- The following signatures couldn't be verified because
- the public key is not available.`
-
-Or you will be asked questions like this over and over::
-
- WARNING: The following packages cannot be authenticated!
- ...
- Install these packages without verification [y/N]?
-
-This is because your APT installation does not know the GPG key that is used to
-sign the release files of this repository. Making APT happy again is easy:
-
-1. Get the key. Either download the `repository key from here
- <http://apsy.gse.uni-magdeburg.de/debian/apsy.gse.uni-magdeburg.de.asc>`_
- or fetch it from *subkeys.pgp.net*.
-
-2. Now feed the key into APT by invoking::
-
- apt-key add #file#
-
- Where `#file#` has to be replaced with the location of the key file you just
- downloaded. You need to have superuser-privileges to do this (either do it
- as root or use sudo).
-
Publications
============
+Hanke, M. & Halchenko, Y. O. (2010). :ref:`Report from the Debian booth at
+SfN2010 <chap_debian_booth_sfn2010>`. *Annual meeting of the Society for
+Neuroscience*, San Diego, USA.
+
Halchenko, Y. O., Hanke, M., Haxby, J. V., Pollmann, S. & Raizada, R. D.
(2010). `Having trouble getting your Nature paper? Maybe you are not using the
right tools? <_files/NeuroDebian_SfN2010.png>`_ *Poster to be presented at the
-anual meeting of the Society for Neuroscience*, San Diego, USA.
+annual meeting of the Society for Neuroscience*, San Diego, USA.
Hanke, M., Halchenko, Y. O. (2010). `Debian: The ultimate platform for
neuroimaging research <_files/HankeHalchenko_NeuroDebianDebConf10.pdf>`_.
.. toctree::
:hidden:
+ datasets
livecd
- gpg
- setup
- links_names
- substitutions
+ vm_welcome
quotes-nihr01
quotes-nitrc
-.. include:: links_names.rst
-.. include:: substitutions.rst
+
+.. include:: link_names.txt
+.. include:: substitutions.txt
--- /dev/null
+.. This (-*- rst -*-) format file contains commonly used link targets
+ and name substitutions. It may be included in many files,
+ therefore it should only contain link targets and name
+ substitutions. Try grepping for "^\.\. _" to find plausible
+ candidates for this list.
+
+.. NOTE: reST targets are
+ __not_case_sensitive__, so only one target definition is needed for
+ nipy, NIPY, Nipy, etc...
+
+.. _nipy: http://neuroimaging.scipy.org
+.. _nipype: http://nipy.sourceforge.net/nipype
+.. _`Brain Imaging Center`: http://bic.berkeley.edu/
+.. _dipy: http://nipy.sourceforge.net/dipy
+.. _`dipy github`: http://github.com/Garyfallidis/dipy
+.. _nibabel: http://nipy.sourceforge.net/nibabel
+.. _dipy: http://nipy.sourceforge.net/dipy
+
+.. Documentation tools
+.. _graphviz: http://www.graphviz.org/
+.. _Sphinx: http://sphinx.pocoo.org/
+.. _`Sphinx reST`: http://sphinx.pocoo.org/rest.html
+.. _reST: http://docutils.sourceforge.net/rst.html
+.. _docutils: http://docutils.sourceforge.net
+
+.. Licenses
+.. _GPL: http://www.gnu.org/licenses/gpl.html
+.. _BSD: http://www.opensource.org/licenses/bsd-license.php
+.. _LGPL: http://www.gnu.org/copyleft/lesser.html
+
+.. Source control
+.. _git: http://git-scm.com/
+.. _github: http://github.com
+.. _github help: http://help.github.com
+.. _msysgit: http://code.google.com/p/msysgit/downloads/list
+.. _git-osx-installer: http://code.google.com/p/git-osx-installer/downloads/list
+.. _bazaar: http://bazaar-vcs.org/
+
+.. Other working process
+.. _pynifti: http://niftilib.sourceforge.net/pynifti/
+.. _nifticlibs: http://nifti.nimh.nih.gov
+.. _nifti: http://nifti.nimh.nih.gov
+.. _`nipy launchpad`: https://launchpad.net/nipy
+.. _launchpad: https://launchpad.net/
+.. _`nipy trunk`: https://code.launchpad.net/~nipy-developers/nipy/trunk
+.. _`nipy mailing list`: http://projects.scipy.org/mailman/listinfo/nipy-devel
+.. _`nipy bugs`: https://bugs.launchpad.net/nipy
+.. _pep8: http://www.python.org/dev/peps/pep-0008/
+.. _`numpy coding style`: http://scipy.org/scipy/numpy/wiki/CodingStyleGuidelines
+
+.. Code support stuff
+.. _pychecker: http://pychecker.sourceforge.net/
+.. _pylint: http://www.logilab.org/project/pylint
+.. _pyflakes: http://divmod.org/trac/wiki/DivmodPyflakes
+.. _virtualenv: http://pypi.python.org/pypi/virtualenv
+.. _flymake: http://flymake.sourceforge.net/
+.. _rope: http://rope.sourceforge.net/
+.. _pymacs: http://pymacs.progiciels-bpi.ca/pymacs.html
+.. _ropemacs: http://rope.sourceforge.net/ropemacs.html
+.. _ECB: http://ecb.sourceforge.net/
+.. _emacs_python_mode: http://www.emacswiki.org/cgi-bin/wiki/PythonMode
+.. _doctest-mode: http://www.cis.upenn.edu/~edloper/projects/doctestmode/
+.. _nose: http://somethingaboutorange.com/mrl/projects/nose
+.. _`python coverage tester`: http://nedbatchelder.com/code/modules/coverage.html
+
+.. Other python projects
+.. _numpy: http://www.scipy.org/NumPy
+.. _scipy: http://www.scipy.org
+.. _ipython: http://ipython.scipy.org
+.. _`ipython manual`: http://ipython.scipy.org/doc/manual/html
+.. _matplotlib: http://matplotlib.sourceforge.net
+.. _pythonxy: http://www.pythonxy.com
+.. _ETS: http://code.enthought.com/projects/tool-suite.php
+.. _`Enthought Tool Suite`: http://code.enthought.com/projects/tool-suite.php
+.. _python: http://www.python.org
+.. _mayavi: http://mayavi.sourceforge.net/
+.. _sympy: http://code.google.com/p/sympy/
+
+.. Python imaging projects
+.. _PyMVPA: http://www.pymvpa.org
+.. _BrainVISA: http://brainvisa.info
+.. _anatomist: http://brainvisa.info
+.. _pydicom: http://code.google.com/p/pydicom/
+
+.. Not so python imaging projects
+.. _matlab: http://www.mathworks.com
+.. _spm: http://www.fil.ion.ucl.ac.uk/spm
+.. _spm8: http://www.fil.ion.ucl.ac.uk/spm/software/spm8
+.. _eeglab: http://sccn.ucsd.edu/eeglab
+.. _AFNI: http://afni.nimh.nih.gov/afni
+.. _FSL: http://www.fmrib.ox.ac.uk/fsl
+.. _FreeSurfer: http://surfer.nmr.mgh.harvard.edu
+.. _voxbo: http://www.voxbo.org
+.. _mricron: http://www.cabiatl.com/mricro/mricron
+.. _slicer: http://www.slicer.org/
+
+.. File formats
+.. _DICOM: http://medical.nema.org/
+.. _`wikipedia DICOM`: http://en.wikipedia.org/wiki/Digital_Imaging_and_Communications_in_Medicine
+.. _GDCM: http://sourceforge.net/apps/mediawiki/gdcm
+.. _`DICOM specs`: ftp://medical.nema.org/medical/dicom/2009/
+.. _`DICOM object definitions`: ftp://medical.nema.org/medical/dicom/2009/09_03pu3.pdf
+.. _dcm2nii: http://www.cabiatl.com/mricro/mricron/dcm2nii.html
+.. _`mricron install`: http://www.cabiatl.com/mricro/mricron/install.html
+.. _dicom2nrrd: http://www.slicer.org/slicerWiki/index.php/Modules:DicomToNRRD-3.4
+.. _Nrrd: http://teem.sourceforge.net/nrrd/format.html
+
+.. General software
+.. _gcc: http://gcc.gnu.org
+.. _xcode: http://developer.apple.com/TOOLS/xcode
+.. _mingw: http://www.mingw.org
+.. _cygwin: http://cygwin.com
+.. _macports: http://www.macports.org/
+.. _VTK: http://www.vtk.org/
+.. _ITK: http://www.itk.org/
+.. _swig: http://www.swig.org
+.. _NeuroDebian: http://neuro.debian.net
+.. _Debian: http://www.debian.org
+.. _exppsy: http://alioth.debian.org/projects/pkg-exppsy
+.. _`Debian Med`: http://debian-med.alioth.debian.org
+.. _`Debian Science`: http://wiki.debian.org/DebianScience
+
+.. Functional imaging labs
+.. _`functional imaging laboratory`: http://www.fil.ion.ucl.ac.uk
+.. _FMRIB: http://www.fmrib.ox.ac.uk
+
+.. Other organizations
+.. _enthought: <http://www.enthought.com>
+.. _kitware: http://www.kitware.com
+.. _nitrc: http://www.nitrc.org
+
+.. General information links
+.. _`wikipedia FMRI`: http://en.wikipedia.org/wiki/Functional_magnetic_resonance_imaging
+.. _`wikipedia PET`: http://en.wikipedia.org/wiki/Positron_emission_tomography
+
+.. Mathematical methods
+.. _`wikipedia ICA`: http://en.wikipedia.org/wiki/Independent_component_analysis
+.. _`wikipedia PCA`: http://en.wikipedia.org/wiki/Principal_component_analysis
+
+.. Mathematical ideas
+.. _`wikipedia spherical coordinate system`: http://en.wikipedia.org/wiki/Spherical_coordinate_system
+.. _`mathworld spherical coordinate system`: http://mathworld.wolfram.com/SphericalCoordinates.html
+.. _`wikipedia affine`: http://en.wikipedia.org/wiki/Affine_transformation
+.. _`wikipedia linear transform`: http://en.wikipedia.org/wiki/Linear_transformation
+.. _`wikipedia rotation matrix`: http://en.wikipedia.org/wiki/Rotation_matrix
+.. _`wikipedia homogenous coordinates`: http://en.wikipedia.org/wiki/Homogeneous_coordinates
+.. _`wikipedia axis angle`: http://en.wikipedia.org/wiki/Axis_angle
+.. _`wikipedia Euler angles`: http://en.wikipedia.org/wiki/Euler_angles
+.. _`Mathworld Euler angles`: http://mathworld.wolfram.com/EulerAngles.html
+.. _`wikipedia quaternion`: http://en.wikipedia.org/wiki/Quaternion
+.. _`wikipedia shear matrix`: http://en.wikipedia.org/wiki/Shear_matrix
+.. _`wikipedia reflection`: http://en.wikipedia.org/wiki/Reflection_(mathematics)
+.. _`wikipedia direction cosine`: http://en.wikipedia.org/wiki/Direction_cosine
+
+.. Homepages
+.. _yoh: http://www.onerussian.com
+.. _mih: http://mih.voxindeserto.de
+
+.. Debian specifics
+.. _ITP: http://www.debian.org/devel/wnpp
+.. _ITPs: http://www.debian.org/devel/wnpp
+++ /dev/null
-.. This (-*- rst -*-) format file contains commonly used link targets
- and name substitutions. It may be included in many files,
- therefore it should only contain link targets and name
- substitutions. Try grepping for "^\.\. _" to find plausible
- candidates for this list.
-
-.. NOTE: reST targets are
- __not_case_sensitive__, so only one target definition is needed for
- nipy, NIPY, Nipy, etc...
-
-.. _nipy: http://neuroimaging.scipy.org
-.. _nipype: http://nipy.sourceforge.net/nipype
-.. _`Brain Imaging Center`: http://bic.berkeley.edu/
-.. _dipy: http://nipy.sourceforge.net/dipy
-.. _`dipy github`: http://github.com/Garyfallidis/dipy
-.. _nibabel: http://nipy.sourceforge.net/nibabel
-.. _dipy: http://nipy.sourceforge.net/dipy
-
-.. Documentation tools
-.. _graphviz: http://www.graphviz.org/
-.. _Sphinx: http://sphinx.pocoo.org/
-.. _`Sphinx reST`: http://sphinx.pocoo.org/rest.html
-.. _reST: http://docutils.sourceforge.net/rst.html
-.. _docutils: http://docutils.sourceforge.net
-
-.. Licenses
-.. _GPL: http://www.gnu.org/licenses/gpl.html
-.. _BSD: http://www.opensource.org/licenses/bsd-license.php
-.. _LGPL: http://www.gnu.org/copyleft/lesser.html
-
-.. Source control
-.. _git: http://git-scm.com/
-.. _github: http://github.com
-.. _github help: http://help.github.com
-.. _msysgit: http://code.google.com/p/msysgit/downloads/list
-.. _git-osx-installer: http://code.google.com/p/git-osx-installer/downloads/list
-.. _bazaar: http://bazaar-vcs.org/
-
-.. Other working process
-.. _pynifti: http://niftilib.sourceforge.net/pynifti/
-.. _nifticlibs: http://nifti.nimh.nih.gov
-.. _nifti: http://nifti.nimh.nih.gov
-.. _`nipy launchpad`: https://launchpad.net/nipy
-.. _launchpad: https://launchpad.net/
-.. _`nipy trunk`: https://code.launchpad.net/~nipy-developers/nipy/trunk
-.. _`nipy mailing list`: http://projects.scipy.org/mailman/listinfo/nipy-devel
-.. _`nipy bugs`: https://bugs.launchpad.net/nipy
-.. _pep8: http://www.python.org/dev/peps/pep-0008/
-.. _`numpy coding style`: http://scipy.org/scipy/numpy/wiki/CodingStyleGuidelines
-
-.. Code support stuff
-.. _pychecker: http://pychecker.sourceforge.net/
-.. _pylint: http://www.logilab.org/project/pylint
-.. _pyflakes: http://divmod.org/trac/wiki/DivmodPyflakes
-.. _virtualenv: http://pypi.python.org/pypi/virtualenv
-.. _flymake: http://flymake.sourceforge.net/
-.. _rope: http://rope.sourceforge.net/
-.. _pymacs: http://pymacs.progiciels-bpi.ca/pymacs.html
-.. _ropemacs: http://rope.sourceforge.net/ropemacs.html
-.. _ECB: http://ecb.sourceforge.net/
-.. _emacs_python_mode: http://www.emacswiki.org/cgi-bin/wiki/PythonMode
-.. _doctest-mode: http://www.cis.upenn.edu/~edloper/projects/doctestmode/
-.. _nose: http://somethingaboutorange.com/mrl/projects/nose
-.. _`python coverage tester`: http://nedbatchelder.com/code/modules/coverage.html
-
-.. Other python projects
-.. _numpy: http://www.scipy.org/NumPy
-.. _scipy: http://www.scipy.org
-.. _ipython: http://ipython.scipy.org
-.. _`ipython manual`: http://ipython.scipy.org/doc/manual/html
-.. _matplotlib: http://matplotlib.sourceforge.net
-.. _pythonxy: http://www.pythonxy.com
-.. _ETS: http://code.enthought.com/projects/tool-suite.php
-.. _`Enthought Tool Suite`: http://code.enthought.com/projects/tool-suite.php
-.. _python: http://www.python.org
-.. _mayavi: http://mayavi.sourceforge.net/
-.. _sympy: http://code.google.com/p/sympy/
-
-.. Python imaging projects
-.. _PyMVPA: http://www.pymvpa.org
-.. _BrainVISA: http://brainvisa.info
-.. _anatomist: http://brainvisa.info
-.. _pydicom: http://code.google.com/p/pydicom/
-
-.. Not so python imaging projects
-.. _matlab: http://www.mathworks.com
-.. _spm: http://www.fil.ion.ucl.ac.uk/spm
-.. _spm8: http://www.fil.ion.ucl.ac.uk/spm/software/spm8
-.. _eeglab: http://sccn.ucsd.edu/eeglab
-.. _AFNI: http://afni.nimh.nih.gov/afni
-.. _FSL: http://www.fmrib.ox.ac.uk/fsl
-.. _FreeSurfer: http://surfer.nmr.mgh.harvard.edu
-.. _voxbo: http://www.voxbo.org
-.. _mricron: http://www.cabiatl.com/mricro/mricron
-.. _slicer: http://www.slicer.org/
-
-.. File formats
-.. _DICOM: http://medical.nema.org/
-.. _`wikipedia DICOM`: http://en.wikipedia.org/wiki/Digital_Imaging_and_Communications_in_Medicine
-.. _GDCM: http://sourceforge.net/apps/mediawiki/gdcm
-.. _`DICOM specs`: ftp://medical.nema.org/medical/dicom/2009/
-.. _`DICOM object definitions`: ftp://medical.nema.org/medical/dicom/2009/09_03pu3.pdf
-.. _dcm2nii: http://www.cabiatl.com/mricro/mricron/dcm2nii.html
-.. _`mricron install`: http://www.cabiatl.com/mricro/mricron/install.html
-.. _dicom2nrrd: http://www.slicer.org/slicerWiki/index.php/Modules:DicomToNRRD-3.4
-.. _Nrrd: http://teem.sourceforge.net/nrrd/format.html
-
-.. General software
-.. _gcc: http://gcc.gnu.org
-.. _xcode: http://developer.apple.com/TOOLS/xcode
-.. _mingw: http://www.mingw.org
-.. _cygwin: http://cygwin.com
-.. _macports: http://www.macports.org/
-.. _VTK: http://www.vtk.org/
-.. _ITK: http://www.itk.org/
-.. _swig: http://www.swig.org
-.. _NeuroDebian: http://neuro.debian.net
-.. _Debian: http://www.debian.org
-.. _exppsy: http://alioth.debian.org/projects/pkg-exppsy
-.. _`Debian Med`: http://debian-med.alioth.debian.org
-.. _`Debian Science`: http://wiki.debian.org/DebianScience
-
-.. Functional imaging labs
-.. _`functional imaging laboratory`: http://www.fil.ion.ucl.ac.uk
-.. _FMRIB: http://www.fmrib.ox.ac.uk
-
-.. Other organizations
-.. _enthought: <http://www.enthought.com>
-.. _kitware: http://www.kitware.com
-.. _nitrc: http://www.nitrc.org
-
-.. General information links
-.. _`wikipedia FMRI`: http://en.wikipedia.org/wiki/Functional_magnetic_resonance_imaging
-.. _`wikipedia PET`: http://en.wikipedia.org/wiki/Positron_emission_tomography
-
-.. Mathematical methods
-.. _`wikipedia ICA`: http://en.wikipedia.org/wiki/Independent_component_analysis
-.. _`wikipedia PCA`: http://en.wikipedia.org/wiki/Principal_component_analysis
-
-.. Mathematical ideas
-.. _`wikipedia spherical coordinate system`: http://en.wikipedia.org/wiki/Spherical_coordinate_system
-.. _`mathworld spherical coordinate system`: http://mathworld.wolfram.com/SphericalCoordinates.html
-.. _`wikipedia affine`: http://en.wikipedia.org/wiki/Affine_transformation
-.. _`wikipedia linear transform`: http://en.wikipedia.org/wiki/Linear_transformation
-.. _`wikipedia rotation matrix`: http://en.wikipedia.org/wiki/Rotation_matrix
-.. _`wikipedia homogenous coordinates`: http://en.wikipedia.org/wiki/Homogeneous_coordinates
-.. _`wikipedia axis angle`: http://en.wikipedia.org/wiki/Axis_angle
-.. _`wikipedia Euler angles`: http://en.wikipedia.org/wiki/Euler_angles
-.. _`Mathworld Euler angles`: http://mathworld.wolfram.com/EulerAngles.html
-.. _`wikipedia quaternion`: http://en.wikipedia.org/wiki/Quaternion
-.. _`wikipedia shear matrix`: http://en.wikipedia.org/wiki/Shear_matrix
-.. _`wikipedia reflection`: http://en.wikipedia.org/wiki/Reflection_(mathematics)
-.. _`wikipedia direction cosine`: http://en.wikipedia.org/wiki/Direction_cosine
-
-.. Homepages
-.. _yoh: http://www.onerussian.com
-.. _mih: http://mih.voxindeserto.de
-
-.. Debian specifics
-.. _ITP: http://www.debian.org/devel/wnpp
-.. _ITPs: http://www.debian.org/devel/wnpp
+++ /dev/null
-The packages are available through an APT repository You can either browse the
-archive or add this line to your `/etc/apt/sources.list`::
-
- deb http://apsy.gse.uni-magdeburg.de/debian #distro# #section#
-
-Replace `#distro#` with ..., depending on which distribution you are using.
-Note that not every package is available for all distributions. You need to
-replace #section# with the value(s) corresponding to the package(s) you are
-interested in (get it from the table below). Multiple sections are allowed.
-Please, do not forget to update your package index, e.g. by running apt-get
-update. If no binary packages are available for your distribution, you can
-still download the source packages. Simply add this to your
-`/etc/apt/sources.list` (you have to replace #distro# and #section# as
-described above)::
-
- deb-src http://apsy.gse.uni-magdeburg.de/debian #distro# #section#
-
-After the usual apt-get update you can get and build the packages with e.g.
-apt-src or whatever you like. To build e.g. dicomnifti you can do this: apt-src
-install dicomnifti
-
-This downloads the sources and installs all build-dependencies if necessary.
-You need root-privileges to install the build-dependencies, so apt-src might
-ask for a password. Now invoke: apt-src build dicomnifti
-
-This will build all binary packages which should appear in the current
-directory (if everything worked well). You can now install the packages with
-dpkg.
-
-
-
-.. include:: links_names.rst
-.. include:: substitutions.rst
+.. include:: link_names.txt
+.. include:: substitutions.txt
+++ /dev/null
-.. Substitutions for the whole doc tree
-
-.. |team| replace:: :ref:`NeuroDebian team <chap_team>`
-.. |we| replace:: :ref:`we <chap_team>`
-.. |spread| replace:: :ref:`spread the word about NeuroDebian <chap_spread>`
-.. |repos| replace:: :ref:`NeuroDebian repositories <repository_howto>`
-.. |exppsy| replace:: Experimental Psychology
--- /dev/null
+.. Substitutions for the whole doc tree
+
+.. |team| replace:: :ref:`NeuroDebian team <chap_team>`
+.. |we| replace:: :ref:`we <chap_team>`
+.. |spread| replace:: :ref:`spread the word about NeuroDebian <chap_spread>`
+.. |repos| replace:: :ref:`NeuroDebian repositories <repository_howto>`
+.. |exppsy| replace:: Experimental Psychology
[debian-science]
path = /home/yoh/deb/debian-science/
-
Definition of the fields for task files by default are looked up
-within debian/blends, or files provided in the command line.
+within debian/blends, or files provided in the command line. Also for "-a"
+mode of operation you should define list of globs to match your debian/blends
+files::
+
+ [paths]
+ all=/home/yoh/deb/gits/pkg-exppsy/neurodebian/future/blends/*
+ /home/yoh/deb/gits/*/debian/blends
+ /home/yoh/deb/gits/pkg-exppsy/*/debian/blends
+
Format of debian/blends
-----------------------
"""
-import re, os, sys, tempfile
+import re, os, sys, tempfile, glob
from os.path import join, exists, expanduser, dirname, basename
from ConfigParser import ConfigParser
__author__ = 'Yaroslav Halchenko'
__prog__ = os.path.basename(sys.argv[0])
-__version__ = '0.0.4'
+__version__ = '0.0.5'
__copyright__ = 'Copyright (c) 2010 Yaroslav Halchenko'
__license__ = 'GPL'
pkg = deepcopy(prev_pkg)
for k_ in PKG_FIELDS: # prune older depends
pkg.pop(k_, None)
- pkg['Pkg-Name'] = pkg[k] = bname
- pkg['Pkg-Source'] = sname
+ pkg['Pkg-Name'] = pkg[k] = bname.lower()
+ pkg['Pkg-Source'] = sname.lower()
pkgs.append(pkg)
pkg.tasks = dict( (t.strip(), deb822.Deb822Dict()) for t in tasks )
pkg.format = format_
# TODO: just deduce source from DebianMaterials
pkg = new_pkg(pkg, source, source, tasks)
# Since only source is available, it should be only Suggest:-ed
- pkg['Suggests'] = source
+ pkg['Suggests'] = source.lower()
newtasks = False
if newtasks:
dest="wnpp_mode", default=None,
help="Operate in WNPP mode: dumps cut-paste-able entry for WNPP bugreport"))
+ p.add_option(
+ Option("-a", action="store_true",
+ dest="all_mode", default=False,
+ help="Process all files listed in paths.all"))
+
(options, infiles) = p.parse_args()
global verbosity; verbosity = options.verbosity
if options.wnpp and options.wnpp_mode is None:
options.wnpp_mode = 'ITP'
- if not len(infiles):
- infiles = [join(options.topdir or './', 'debian/blends')] # default one
-
# Load configuration
config = ConfigParser()
config.read(options.config_file)
+ if options.all_mode:
+ if len(infiles):
+ raise ValueError("Do not specify any files in -a mode. Use configuration file, section paths, option all")
+ globs = config.get('paths', 'all', None).split()
+ infiles = reduce(list.__add__, (glob.glob(f) for f in globs))
+ verbose(1, "Found %d files in specified paths" % len(infiles))
+
+ if not len(infiles):
+ infiles = [join(options.topdir or './', 'debian/blends')] # default one
+
for blends_file in infiles:
verbose(1, "Processing %s" % blends_file)
if not exists(blends_file):
error("Cannot find a file %s. Either provide a file or specify top "
"debian directory with -d." % blends_file, 1)
+
pkgs = parse_debian_blends(blends_file)
if options.topdir is None:
if dirname(blends_file).endswith('/debian'):
+++ /dev/null
-#!/bin/bash
-
-set -e
-set -u
-
-# Alternative:
-# shrink VDI image by writting to a new (unfragmented) image
-# target VDI needs to have proper partition table and MBR
-# simplest solution: clonezilla
-
-vdifile=$(readlink -f $1)
-
-if [ -z "$vdifile" ]; then
- echo "You need to provide a VDI file."
- exit 1
-fi
-
-wdir=$(mktemp -d -t compactvdi.XXXXXX)
-
-cd $wdir
-# make mount points
-mkdir -p vbdev vbmnt
-# get access to disks inside the VDIs
-vdfuse -f "$vdifile" vbdev
-# mount partitition (for now only support one)
-mount -o loop vbdev/Partition1 vbmnt
-
-# remove cruft
-#xapian indices
-find vbmnt/var/ -wholename '*xapian*.DB' -delete
-# package cache
-find vbmnt/var/cache/apt/archives/ -name '*.deb' -delete
-rm -f vbmnt/var/cache/apt/*.bin
-# device files -- udev restores them
-rm -rf vbmnt/dev/*
-# tmp
-rm -rf vbmnt/tmp/*
-# log files
-find vbmnt/var/log -type f -delete
-# apt lists
-find vbmnt/var/lib/apt -type f -name '*debian*' -o -type f -name '*list*' -delete
-# user data
-# cannot clean all root stuff, because it also contains useful thing (e.g. git setup)
-rm -f vbmnt/root/.*history
-rm -f vbmnt/home/brain/.*history vbmnt/home/brain/nd*
-
-# unmount filesystem
-umount vbmnt
-# zero out empty space
-zerofree -v vbdev/Partition1
-# close whole VDI
-umount vbdev
-
-# compact VDI
-# THIS NEEDS TO BE DONE ON A VDI THAT IS REGISTERED WITH VIRTUALBOX
-sudo -u "$SUDO_USER" VBoxManage modifyhd "$vdifile" --compact
-
-# cleanup
-rm -rf $wdir
+++ /dev/null
-#!/bin/bash
-
-set -e
-set -u
-
-# Settings/arguments
-vendor="NeuroDebian"
-vm_version="6.0.0"
-vm_arch="amd64"
-vm_name="${vendor} ${vm_version} (${vm_arch})"
-product_name="${vendor} VirtualMachine (${vm_arch})"
-outdir=.
-
-# Common
-eula="This virtual appliance contains Free and Open Source Software (FOSS) released under licenses compliant with the Debian Free Software Guidelines (DFSG, see http://www.debian.org/social_contract), such as, GPL, BSD, MIT, etc. Such software is free to be used or customized for any purpose.
-
-However, by default this virtual machine is also enabled to install additional software from Debian and NeuroDebian repositories that is distributed under more restrictive licenses (e.g. closed-source, non-commercial, research-only). It is the user's responsibility to adhere to the terms and conditions of any particular software that is installed and used in this virtual machine. Copyright and license details for any installed PACKAGE are available in /usr/share/doc/PACKAGE/copyright inside the virtual machine."
-
-out_ovf="${outdir}/${vendor}_${vm_version}_${vm_arch}.ovf"
-VBoxManage export "${vm_name}" -o "$out_ovf" \
- --vsys 0 \
- --product "$vm_name" \
- --producturl "http://neuro.debian.net/vm.html" \
- --vendor "${vendor}" \
- --vendorurl "http://neuro.debian.net" \
- --version "$vm_version" \
- --eula "$eula"
+++ /dev/null
-#!/bin/bash
-
-# play safe
-set -e
-set -u
-
-# Standard Debian install
-
-# prepare on hydra and use debproxy for speed
-
-# have dedicated hard-drives for swap and home
-
-# expert install
-
-# hostname: neurodebian
-# domain: ''
-
-# all file in one partition
-
-# root: not there
-# user: brain
-# pwd: neurodebian
-
-
-# Do a minimal install
-# --------------------
-
-# All files in one partition/
-# just base system, run selection, but no tasks (not even 'Standard system')
-
-# set root password to 'neurodebian' too
-echo "Set root passwd:"
-passwd root
-
-apt-get install --no-install-recommends etckeeper
-
-# setup etckeeper
-git config --global user.name NeuroDebian
-git config --global user.email nd@localhost
-
-# install new stuff
-# -----------------
-
-# Add sources.list for backports and neurodebian
-wget -O /etc/apt/sources.list.d/neuro.debian.net.list http://neuro.debian.net/_static/neurodebian.squeeze.us-nh.sources.list
-
-echo "deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free" > /etc/apt/sources.list.d/backports.debian.org.list
-cat << EOT > /etc/apt/preferences.d/backports.debian.org.pref
-Package: *
-Pin: release a=squeeze-backports
-Pin-Priority: 200
-EOT
-
-apt-get update
-apt-get install neurodebian-keyring
-apt-get update
-
-# to cheat the VM check
-touch /dev/vboxguest
-# to get all the stuff in recommends
-apt-get install dkms neurodebian-guest-additions
-
-apt-get install --no-install-recommends \
- gnome-core mc evince bash-completion ntpdate file-roller gnome-utils \
- gnome-themes eog vim \
- software-center gdebi gedit-plugins gnome-media synaptic menu less
-
-# intermediate cleanup to prevent virtual harddrive from fragmenting too much
-find /var/cache/apt/archives/ -name '*.deb' -delete
-
-# cleanup unwanted stuff
-# video drivers (all but vesa)
-apt-get purge $(apt-cache search --names-only --installed xserver-xorg-video | grep xserver-xorg-video | cut -d ' ' -f 1,1) xserver-xorg-video-vesa+
-apt-get purge brasero
-
-# and whatever is obsolete
-apt-get autoremove --purge
-
-# custom config
-# use NeuroDebian website as default homepage
-sed -i -e 's,http://www.debian.org,http://neuro.debian.net,g' /etc/chromium-browser/master_preferences
-
-# reduce grub timeout to speed up boot of VM
-sed -i -e 's/GRUB_TIMEOUT=5/GRUB_TIMEOUT=1/g' /etc/default/grub
-update-grub
-
-# finally configure geomirror for APT and disable deb-src lists
-sed -i -e "s/10.0.0.1:9999/$(dpkg --print-architecture)-geomirror.debian.net/" \
- -e "s/^deb-src/#deb-src/" /etc/apt/sources.list
-
-etckeeper commit "Initial VM setup done"
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
+d-i partman/confirm_nooverwrite boolean true
### Base system installation
# Select the initramfs generator used to generate the initrd for 2.6 kernels.
apt-get install --no-install-recommends -y \
gnome-core mc evince bash-completion ntpdate file-roller gnome-utils \
gnome-themes eog vim \
- software-center gdebi gedit-plugins gnome-media synaptic menu less
+ software-center gdebi gedit-plugins gnome-media synaptic menu less libxp6
# intermediate cleanup to prevent virtual harddrive from fragmenting too much
find /var/cache/apt/archives/ -name '*.deb' -delete
--- /dev/null
+/dist
+/build
--- /dev/null
+#!/bin/bash
+
+set -e
+set -u
+
+# Alternative:
+# shrink VDI image by writting to a new (unfragmented) image
+# target VDI needs to have proper partition table and MBR
+# simplest solution: clonezilla
+
+# No deferencing of symbolic links should be done
+# since otherwise might not be found by VirtualBox
+#vdifile=$(readlink -f $1)
+# Just asssume that we are providing full pathname
+vdifile="$1"
+
+if [ -z "$vdifile" ] || [ ! -e "$vdifile" ] || [ "${vdifile:0:1}" != "/" ] ; then
+ echo "You need to provide full pathname to an existing VDI file."
+ exit 1
+fi
+
+wdir=$(mktemp -d -t compactvdi.XXXXXX)
+
+cd $wdir
+# make mount points
+mkdir -p vbdev vbmnt
+# get access to disks inside the VDIs
+vdfuse -f "$vdifile" vbdev
+# mount partitition (for now only support one)
+mount -o loop vbdev/Partition1 vbmnt
+
+# remove cruft
+#xapian indices
+find vbmnt/var/ -wholename '*xapian*.DB' -delete
+# package cache
+find vbmnt/var/cache/apt/archives/ -name '*.deb' -delete
+rm -f vbmnt/var/cache/apt/*.bin
+# device files -- udev restores them
+rm -rf vbmnt/dev/*
+# tmp
+rm -rf vbmnt/tmp/*
+# log files
+find vbmnt/var/log -type f -delete
+# apt lists
+find vbmnt/var/lib/apt -type f -name '*debian*' -o -type f -name '*list*' -delete
+# user data
+# cannot clean all root stuff, because it also contains useful thing (e.g. git setup)
+rm -f vbmnt/root/.*history
+rm -f vbmnt/home/brain/.*history vbmnt/home/brain/nd*
+
+# unmount filesystem
+umount vbmnt
+# zero out empty space
+zerofree -v vbdev/Partition1
+# close whole VDI
+umount vbdev
+
+# compact VDI
+# THIS NEEDS TO BE DONE ON A VDI THAT IS REGISTERED WITH VIRTUALBOX
+sudo -u "$SUDO_USER" VBoxManage modifyhd "$vdifile" --compact
+
+# cleanup
+rm -rf $wdir
--- /dev/null
+#!/bin/bash
+#emacs: -*- mode: shell-script; c-basic-offset: 4; tab-width: 4; indent-tabs-mode: nil -*-
+#ex: set sts=4 ts=4 sw=4 noet:
+
+set -eu
+
+# TODO: arguments later on to become cmdline args
+#iso=debian-squeeze-di-beta1-amd64-businesscard.iso
+iso=debian-testing-i386-businesscard.iso
+di_cd=$(readlink -f $PWD/../../../neurodebian-images/$iso)
+di_host=hydra # where to look for di preseed
+
+build_dir=$PWD/build
+dist_dir=$PWD/dist
+vendor="NeuroDebian"
+vm_version="6.0.1"
+vm_ostype=Debian
+
+# Generic definitions
+eula="This virtual appliance contains Free and Open Source Software (FOSS) released under licenses compliant with the Debian Free Software Guidelines (DFSG, see http://www.debian.org/social_contract), such as, GPL, BSD, MIT, etc. Such software is free to be used or customized for any purpose.
+
+However, by default this virtual machine is also enabled to install additional software from Debian and NeuroDebian repositories that is distributed under more restrictive licenses (e.g. closed-source, non-commercial, research-only). It is the user's responsibility to adhere to the terms and conditions of any particular software that is installed and used in this virtual machine. Copyright and license details for any installed PACKAGE are available in /usr/share/doc/PACKAGE/copyright inside the virtual machine."
+
+
+# Computed settings
+#vm_basepath=
+
+# By default 32bit unless installer image has amd64
+# TODO: might need to make more robust?
+vm_arch=i386
+vm_arch_name=" (32bit)"
+if file $di_cd | grep -q ' amd64 '; then
+ vm_arch=amd64
+ vm_ostype+="_64"
+ vm_arch_name=" (64bit)"
+fi
+
+vm_disk="$build_dir/nd-${vm_version}_${vm_arch}.vdi"
+vm_name="${vendor} VirtualMachine${vm_arch_name}"
+vm_ovf="${dist_dir}/${vendor}_${vm_version}_${vm_arch}.ovf"
+product_name="${vendor} VirtualMachine (${vm_arch})"
+
+_info() {
+ echo "I: $*"
+}
+
+clean_buildvm() {
+# TODO: remove whenever done
+VBoxManage storagectl "${vm_name}" \
+ --name "SATA Controller" --remove || :
+VBoxManage storagectl "${vm_name}" \
+ --name "IDE Controller" --remove || :
+
+VBoxManage closemedium disk "${vm_disk}" || :
+VBoxManage unregistervm "${vm_name}" --delete || :
+rm -f ${vm_disk}
+}
+
+clean_buildvm # clean things up
+
+# Check that no previous VM was left (can happen if previous failures
+# were "valid")
+if VBoxManage list vms | grep -q "^\"${vm_name}\".*"; then
+ echo >&2, "VM $vm_name still exists -- something is wrong, Can't continue"
+ exit 1
+fi
+
+_info Assure build directory
+mkdir -p $build_dir
+
+_info Create HardDisk for the VM
+VBoxManage createhd --filename $vm_disk \
+ --size 20000 --format VDI
+ # documented but not implemented:
+ # --comment "Drive for NeuroDebian VM installer"
+
+_info Create VM
+VBoxManage createvm --name "${vm_name}" --register \
+ --ostype "${vm_ostype}" --basefolder $build_dir
+
+_info Tune VM
+VBoxManage modifyvm "${vm_name}" \
+ --audio alsa \
+ --audiocontroller ac97 \
+ --boot1 disk \
+ --boot2 dvd \
+ --cpus 1 \
+ --ioapic on \
+ --memory 1048 \
+ --mouse usbtablet \
+ --nic1 nat \
+ --rtcuseutc on \
+ --usb on \
+ --vram 32
+
+# Add HD controllers
+VBoxManage storagectl "${vm_name}" \
+ --name "IDE Controller" \
+ --add ide \
+ --controller "PIIX4"
+VBoxManage storageattach "${vm_name}" \
+ --storagectl "IDE Controller" \
+ --port 0 \
+ --device 0 \
+ --type dvddrive \
+ --medium $di_cd
+
+VBoxManage storagectl "${vm_name}" \
+ --name "SATA Controller" \
+ --add sata \
+ --controller "IntelAHCI"
+
+VBoxManage storageattach "${vm_name}" \
+ --storagectl "SATA Controller" \
+ --port 0 \
+ --device 0 \
+ --type hdd \
+ --medium "${vm_disk}"
+
+VBoxManage showvminfo "${vm_name}"
+
+_info "Run Debian Installer"
+# When boot menu appears you will have to
+# press Esc
+# type auto url=$di_host
+# press Enter"
+
+VBoxManage startvm "${vm_name}"
+
+sleep 5 # give some time to make sure we get to menu
+# Send our sequence -- cruel way
+#VBoxManage controlvm "${vm_name}" keyboardputscancode \
+# 01 81 \
+# 1e 9e 16 96 14 94 18 98 39 b9 16 96 13 93 26 a6 0d 8d 23 a3 15 95 20 a0 13 93 1e 9e \
+# 1c 9c # ESCAPE, auto url=hydra, ENTER
+echo "typeGuest \"${vm_name}\" \"&ESC;Wauto url=${di_host}&ENTER;\"" | /usr/lib/virtualbox/vboxshell.py
+
+: "
+oops -- asked either I want to store Partitioning on the disk...
+
+didn't happen before
+"
+
+# wait for it to finish! -- found no cleaner way :-/
+sleep 10
+while VBoxManage showvminfo "${vm_name}" | grep -q running; do
+ sleep 5
+done
+
+_info Compacting VDI
+sudo ./nd_compactvdi "${vm_disk}"
+
+_info Exporting the appliance
+
+VBoxManage export "${vm_name}" -o "$vm_ovf" \
+ --vsys 0 \
+ --product "${vendor} VirtualMachine (${vm_arch})" \
+ --producturl "http://neuro.debian.net/vm.html" \
+ --vendor "${vendor}" \
+ --vendorurl "http://neuro.debian.net" \
+ --version "$vm_version" \
+ --eula "$eula"
+
+_info Cleaning after ourselves
+clean_buildvm
+
+_info Testing import of the appliance
+VBoxManage import "$vm_ovf" --vsys 0 --eula accept
+
+_info Starting imported machine
+VBoxManage startvm "${vm_name}"