--- /dev/null
+# vim ft=yaml
+# travis-ci.org definition to provide minimalistic testing of NeuroDebian
+# setup and tools
+language: erlang
+cache:
+ - apt
+script:
+ # Test the ultimate one-liner setup for NeuroDebian repository
+ - bash tools/neurodebian-travis.sh
+ # Verify that we can "install neurodebian"
+ - sudo apt-get install -y neurodebian
+ # but by default (fix it to not disable if was enabled?)
+ # it results in neurodebian not enabled, thus disabled:
+ - test \! -f /etc/apt/sources.list.d/neurodebian.sources.list
+ # enable it via our tool
+ - NEURODEBIAN_ENABLE=yes NEURODEBIAN_UPDATE=yes sudo nd-configurerepo
+ - grep "\sprecise\s" /etc/apt/sources.list.d/neurodebian.sources.list
+ # Verify that it is still present
+ # TODO: for some reason disables it again :-/ Need to get something going already, disabled for now
+ #- NEURODEBIAN_ENABLE=yes NEURODEBIAN_VERBOSE=10 sudo apt-get install -y --reinstall neurodebian
+ - test -f /etc/apt/sources.list.d/neurodebian.sources.list
+ # Verify that -dev installs nicely
+ - sudo apt-get install -y neurodebian-dev
+after_failure:
+ # Could happen if installation of neurodebian package kills APT repo so print policy
+ - sudo apt-cache policy
+ # But could be that just update wasn't run?
+ - sudo apt-get update
+ - sudo apt-cache policy
+ - ls -lR /etc/apt
+ - cat /etc/apt/sources.list.d/neurodebian.sources.list
+ - ls -lR /etc/neurodebian
-Subproject commit 65601e6ca109f3a4eb7c07be0930db0fc1cd26f2
+Subproject commit 145aa3f06451754ab759b88c1dbb47c7081d5f47
-Subproject commit ba44aa30533688953a1f8bfc6fd32dc903c446e6
+Subproject commit 683eb18ce196a7eb494f060656098ac12d604b65
upload-website: html
rsync -rvzlhp --delete \
- --exclude=debian --exclude=debian-local --exclude=debian-devel --exclude=_files \
+ --exclude=debian --exclude=debian-local --exclude=debian-devel --exclude=debian-custom --exclude=_files \
--chmod=Dg+s,g+rw $(WWW_DIR) $(WWW_UPLOAD_URI)
+ rsync -rvzlhp --chmod=Dg+s,g+rw tools/neurodebian-travis.sh $(WWW_UPLOAD_URI)/_files/
: # Touch stamp here so we get it updated on every upload
touch $@-stamp
pics: $(SVGIS) $(ICONSIZED)
clean::
- for p in *.svg; do rm -f $${p%*.svg}.{pdf,eps,png}; done
+ for p in *.svg; do [ "$$p" = ndhackergotchi.svg ] || rm -f $${p%*.svg}.{pdf,eps,png}; done
rm -rf *_tuned
rm -f $(ICONSIZED)
of software.
%\item[Stable] \emph{Official release}\\
-\item[Official release]\hfill\emph{Stable} (now 7.2, \emph{wheezy})\\
+\item[Official release]\hfill\emph{Stable} (now 7.7, \emph{wheezy})\\
% Software verified to be well tested and secure,
% Very stable (hence the name) and secure
% but might be lacking the most recent versions.\\% of the software.\\
flavor always called \emph{sid}, while a new name chosen for every
upcoming release and assigned to \emph{Testing} to become a code name
of the release when it becomes \emph{Stable}.\\ At the moment
-\emph{jessie} is \emph{Testing}, and \emph{wheezy} is \emph{Stable}.
+\emph{jessie} is \emph{Testing} (actually \emph{Frozen} in preparation
+for the release), and \emph{wheezy} is \emph{Stable}.
As soon as \emph{jessie} gets released, \emph{Testing} will be given
a new name.% -- \emph{jessie}.
\end{comment}
%\item[Run in a Virtual Machine] \url{http://neuro.debian.net/vm.html}
\item[Development version] \url{http://www.debian.org/devel/debian-installer}
\item[Use in a cloud] \url{https://wiki.debian.org/Cloud}
+\item[Docker: \texttt{docker pull debian}]
\end{description}
% \ndsubsection{Get \emph{Testing/Unstable} Debian}
% Install on a hard-drive or in a Virtual Machine\\
% \url{http://www.debian.org/devel/debian-installer}
%
-
+\vspace{-1em}
\ndsubsection{How to install software}
GUI (Synaptic): \textit{Select and click ``Apply''}\\
%\begin{description}[nolistsep,leftmargin=1pc]
%\item[Mailing lists]
\url{http://www.debian.org/MailingLists}\\
- \url{http://forums.debian.net}\\
- \url{http://ask.debian.net}\\
+ \url{http://forums.debian.net},
+ \url{ask.debian.net}\\
\url{irc://irc.debian.org/debian}
%\end{description}
\item[Commercial support]
%\rotatebox{90}{\paragraph{Distribution Development Process}}
\rotatebox{90}{\includegraphics[height=.9\columnwidth]{distro-dev}}
-
\ndsection{Acknowledgements}
-
-This flyer was adapted from the neuro debian project. You can find
-source code for it here:
-\url{git://anonscm.debian.org/pkg-exppsy/neurodebian.git}
-%\end{comment}
+\end{comment}
\end{multicols}
-
-% \pagebreak
-% %%
-% %% NeuroDEBIAN
-% %%
-% \begin{multicols}{3} % 3 columns
-%
-% \section*{The Universal Research Platform}
-% \begin{center}
-% \includegraphics[width=\columnwidth]{logo_tuned/label}
-% \url{http://neuro.debian.net}
-% %\ndsection{NeuroDebian Project:}
-% % \hrule
-% \end{center}
-%
-% \ndsection{NeuroDebian is}
-%
-% a Debian project that provides the Neuroscience community with a
-% stable and versatile research platform -- the Debian operating system.
-% Since 2005, \mbox{NeuroDebian} integrates neuroscience software into Debian
-% to allow neuroscientists to benefit from the advantages of
-% the universal operating system in their day-to-day research activities.
-% The NeuroDebian repository
-% (\url{http://neuro.debian.net}) offers the latest research software for
-% all Debian suites (and various releases of Ubuntu).
-% The combination of a stable generic
-% operating system, Debian, and a variety of conveniently accessible research
-% software creates a versatile research platform for neuroscience that offers the
-% latest methodologies of the field to everyone, for free.
-% These advantages make NeuroDebian increasingly popular among
-% neuroscientists and scientific software developers.
-%
-% \vspace{2em}
-%
-% \ndsubsection{NeuroDebian is NOT}
-%
-% yet another Debian GNU/Linux derivative distribution. All work done
-% by the NeuroDebian project targets the official Debian operating system. This
-% approach helps to increase the longevity of the project by relying on the
-% efforts of thousands of Debian contributors.
-%
-% \vspace{3em}
-% \columnbreak
-%
-% \ndsubsection{Software at your fingertips}
-% \begin{flushright}
-% \vspace{-0.5em}
-% \url{http://neuro.debian.net/pkgs.html}
-% \vspace{-0.1em}
-% \end{flushright}
-% \textit{Distributed computing:} Condor, DMTCP, IPython, \ldots \\
-% \textit{Electrophysiology:} BioSig, EEGLAB, Sigviewer, \ldots\\
-% \textit{Machine Learning:} MDP, PyMVPA, sklearn, \ldots\\
-% \textit{Neural Modeling:} Brian, CNrun, PyNN, XPPAUT, \ldots\\
-% \textit{Imaging:} AFNI, FSL, Mricron, NiPy, SPM, \ldots\\
-% \textit{Psychophysics:} PsychoPy, Psychtoolbox, PyEPL, \ldots\\
-% \vspace{-0.8em}
-%
-% % TODO: Environments... -- list avail cloud env using NeuroDebian
-%
-% \ndsubsection{Benefits from Debian integration}
-%
-% \begin{itemize}[nolistsep,leftmargin=1pc]
-%
-% % rephrase to outline the benefit, not burden
-% \item Debian standards and policies guarantee quality and robustness.
-%
-% \item Debian's centralized bug tracking system provides a unified
-% single-point of entry for bug reporting and troubleshooting
-% for any software in Debian.
-%
-% \item Debian makes software available through a world-wide distribution
-% network, thus offloading bandwidth demands.
-%
-% \item Other Debian contributors handle large-scale aspects of
-% deployment, quality assurance, porting and integration at the level
-% of the entire distribution:
-%
-% \begin{description}[nolistsep,leftmargin=1pc]
-% \item[Porting] Software sources get built for 11 hardware
-% architectures and 3 kernels (Linux, HURD, kFreeBSD). Porter teams
-% maintain build infrastructure and help make the code
-% platform-agnostic.
-% \item[QA] Whole-archive rebuilds assure robustness of packaging and
-% warn about upcoming problems (core libraries upgrades) beforehand.
-% \item[Internationalization (I18n)] Translator teams help localize
-% software for more than 60 languages.
-% \end{description}
-%
-% \item Neuroscience software becomes a 1st-class citizen within the
-% Debian project, which guarantees its longevity, smooth installation
-% and upgrades.
-%
-% %\item Participation in the Debian community helps to assure Debian's
-% % aptness for the neuroscientific software demands
-%
-% \end{itemize}
-%
-%
-%
-% %\columnbreak
-%
-% \ndsubsection{How to get NeuroDebian}
-%
-% \textit{Debian/Ubuntu:} \url{neuro.debian.net} repository \\
-% \textit{Others:} NeuroDebian Virtual Machine
-%
-% % Here place a left-top corner of OSX with seamless mode
-% \vspace{3mm}
-% \includegraphics[width=\columnwidth]{../shots/mac_vm_mricron}
-%
-% \begin{comment}
-% \ndsubsection{Developers oriented information}
-%
-% %\columnbreak
-%
-% \ndsubsection{Who is using NeuroDebian}
-%
-% \noindent
-% %\includegraphics[width=\columnwidth]{usage_worldmap}
-%
-% buga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga dugabuga duga
-% \end{comment}
-%
-%
-% \def\blank{\hspace{0em}\vspace{-1em}}
-% \columnbreak
-%
-% \ndsubsection{Work-in-progress}
-% \begin{description}[nolistsep,leftmargin=1pc,style=nextline]
-% \item[Increased coverage]
-% \textit{Electrophysiology:} Fieldtrip, Spyke Viewer, \ldots \\
-% \textit{Neural Modeling:} NEURON, (NEST), LFPy, \\
-% \textit{Imaging:} DTI-TK, Freesurfer, XNAT, \ldots
-% % \epigraph{Having FreeSurfer integrated into the Debian operating system by the NeuroDebian team would have enormous benefits for us, and for the thousands of users of FreeSurfer across the world.}{Prof. Bruce Fischl}{Director, Computational Core at Martinos Center at Massachusetts General Hospital, Charlestown, Massachusetts, USA}
-% \item[Improved quality assurance]
-% Extended integration and regression testing
-% \item[Available snapshotting service]
-% % Entire NeuroDebian repository for any given past moment
-% All versions of packages readily available
-% \item[Data as the 1st-class citizen]
-% \url{http://neuro.debian.net/datasets.html}
-% % yoh: see TODO above -- we can say that it is available already
-% %\item[Universal availability]
-% % % \begin{itemize}[nolistsep,leftmargin=1pc,topsep=0em]
-% % % \item Virtual Appliance enhancements
-% % %\item
-% % Cloud computing
-% % %\end{itemize}
-% \end{description}
-%
-%
-% \ndsubsection{Testimonials}
-% \begin{flushright}
-% \vspace{-0.5em}
-% \url{http://neuro.debian.net/testimonials.html}
-% \vspace{-0.5em}
-% \end{flushright}
-%
-% % TODO yoh: This one remains the best summary IMHO. But may be
-% % we would just kick this section out an place Testimonials into References
-% \epigraph{The approach taken with NeuroDebian is plainly the most appropriate
-% approach to software distribution for the dominant platform in brain
-% image analysis, and I have great confidence that this project will be
-% a major asset to the neuroscience community in facilitating the
-% distribution of stable software, improving the reliability and
-% replicability of analyses, and in helping to improve software
-% development practices.}{Prof. Daniel Y. Kimberg}{Director, Data
-% Processing Facility, Center for Functional Neuroimaging, University of
-% Pennsylvania, Philadelphia, USA}
-%
-% \ndsubsection{Acknowledgements}
-%
-% NeuroDebian is grateful to all Debian developers and contributors for
-% developing the Debian operating system, to
-% \href{http://www.incf.org}{INCF} for the support in community outreach
-% and technical collaborations, and to
-% Prof. \href{http://haxbylab.dartmouth.edu}{James V. Haxby}
-% (\href{http://www.dartmouth.edu/~psych}{PBS Department, Dartmouth
-% College}) for his continued support and endless supply of Italian
-% espresso (\url{http://neuro.debian.net/coffeeart.html}).
-%
-%
-% \ndsubsection{References}
-%
-% Halchenko, Y. O. \& Hanke, M. (2012). \href{http://www.frontiersin.org/Neuroinformatics/10.3389/fninf.2012.00022/full}{Open is not enough. Let’s take the next step: An integrated, community-driven computing platform for neuroscience}. Frontiers in Neuroinformatics, 6:22.
-%
-% % TODO: adjust for the new layout
-% \url{http://neuro.debian.net/#publications}
-%
-% %\columnbreak
-% \end{multicols}
-
-
-
\end{document}
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:i="http://ns.adobe.com/AdobeIllustrator/10.0/"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="932.01465"
+ height="792.47455"
+ id="svg2878"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="neurodebian_back_lightbg.svg">
+ <defs
+ id="defs2880">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="0 : 526.18109 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_z="744.09448 : 526.18109 : 1"
+ inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+ id="perspective2886" />
+ <inkscape:perspective
+ id="perspective3060"
+ inkscape:persp3d-origin="17.759468 : 14.569191 : 1"
+ inkscape:vp_z="35.518936 : 21.853786 : 1"
+ inkscape:vp_y="0 : 1000 : 0"
+ inkscape:vp_x="0 : 21.853786 : 1"
+ sodipodi:type="inkscape:persp3d" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ pagecolor="#000000"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.39215686"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.5"
+ inkscape:cx="359.43589"
+ inkscape:cy="366.74194"
+ inkscape:document-units="mm"
+ inkscape:current-layer="g2478"
+ showgrid="false"
+ inkscape:window-width="1857"
+ inkscape:window-height="1179"
+ inkscape:window-x="61"
+ inkscape:window-y="19"
+ inkscape:window-maximized="0"
+ units="mm"
+ showguides="true"
+ fit-margin-top="1"
+ fit-margin-left="1"
+ fit-margin-right="1"
+ fit-margin-bottom="1"
+ showborder="true" />
+ <metadata
+ id="metadata2883">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-164.23723,-115.44164)">
+ <g
+ id="g3063"
+ transform="matrix(18.11552,0,0,18.11552,-664.75845,93.250972)">
+ <g
+ transform="matrix(1.583466,0,0,1.583466,-20.013661,-84.959016)"
+ style="display:inline"
+ inkscape:label="NeuroDebian-brain"
+ id="layer4">
+ <g
+ inkscape:export-ydpi="2.8800001"
+ inkscape:export-xdpi="2.8800001"
+ transform="matrix(0.06447637,0,0,0.06447637,35.55119,35.413705)"
+ id="g2725"
+ style="display:inline;enable-background:new">
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 215.74201,479.87605 -5.79253,0.36503 c -5.62491,7.03748 -12.11799,13.1655 -15.81469,21.20531 7.96444,-7.20864 10.83957,-11.74277 21.60722,-21.57034"
+ id="path2596"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 219.47886,491.93252 c 2.2921,-3.53965 5.49405,-6.11913 8.61876,-8.90297 -5.89247,3.43544 -10.40595,8.44794 -15.08808,13.22997 l 6.46932,-4.327"
+ id="path2598"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751"
+ d="m 352.14351,592.05711 c -13.144,3.795 -46.927,17.762 -59.547,17.341 l -5.69,-5.079 c -13.061,-2.014 -7,2.31 -17.246,1.094 -10.821,-5.587 -33.582,-16.727 -36.944,-21.293 -1.213,-3.654 5.979,1.16 8.219,1.458 -12.019,-8.093 -9.475,6.986 -20.178,-7.346 l 1.053,-0.762 c -32.59205,-22.7974 -3.68564,-76.57793 52.596,-97.519 -3.844,0.534 -3.195,-0.464 -4.987,-0.937 26.72448,-1.31405 18.16469,-5.19537 43.49128,-11.85424 12.39572,-4.09959 9.1069,-8.15071 12.96087,-9.32035 -14.41207,0.0228 -18.69607,-1.1748 -37.58515,5.53259 -55.915,7.507 -72.738,31.092 -89.261,67.96 -2.083,5.657 -3.876,2.429 -6.522,3.788 1.957,-11.348 7.044,-22.574 14.588,-32.667 -5.485,5.735 -10.666,11.73 -13.953,18.617 0.392,-10.34 19.147,-28.779 18.78,-32.668 -28.616,24.913 -36.788,80.905 -14.591,103.509 -4.839,-11.841 -10.077,-27.108 -9.003,-42.057 1.422,-6.544 5.819,-16.034 7.65,-15.001 -2.976,39.294 1.963,48.786 42.094,71.924 10.008,5.944 25.318,11.318 26.367,13.732 -7.944,-2.013 -2.953,1.441 -9.813,0.087 17.645,3.952 4.84,-4.91 28.543,1.475 l -5.367,5.947 c 11.782,-4.711 57.961,-10.07 76.943,-16.5 7.158,1.799 -25.097,17.328 -40.085,17.303 16.981,1.007 38.138,-15.203 51.155,-17.149 -3.742,2.419 -7.582,5.349 -11.716,7.394 13.573,-6.923 45.947,-11.048 55.079,-11.623 0.256,-1.792 -8.27,-3.253 8.83,-8.438 7.591,-1.803 4.594,0.766 6.682,0.926 0.406,-1.456 5.018,-6.196 15.402,-11.001 3.128,0.765 -5.377,5.566 -5.051,7.623 8.365,-3.504 14.314,-7.383 21.054,-9.198 12.187,-9.356 -2.634,-1.546 3.717,-8.227 20.439,-11.858 7.076,3.722 17.627,1.868 -12.604,13.287 -35.413,24.834 -44.768,29.861 11.808,-5.02 22.823,-11.075 33.202,-17.695 -0.401,3.175 24.028,-11.049 9.047,1.692 35.07,-18.449 109.63656,-35.57999 116.90656,-66.16899 -2.349,4.104 -5.287,9.288 -6.503,8.012 4.554,-15.46 6.115,-13.344 9.356,-16.217 1.33,-11.971 -4.516,-11.262 -6.642,-18.418 5.459,-23.341 -4.44256,-33.43401 -3.16056,-53.96301 l -4.385,2.034 c 0.486,-14.664 -7.58,-15.016 -10.781,-29.913 0.494,-1.079 4.611,3.865 7.014,8.19 -6.662,-12.367 -1.394,-13.05 -9.514,-24.743 3.709,2.443 6.616,5.298 10.009,8.049 -4.54,-10.307 -16.303,-23.23 -8.752,-20.239 -15.268,-14.817 -38.993,-41.998 -64.195,-54.23 l 4.077,-1.621 c -13.991,-4.983 -45.66,-25.634 -60.901,-24.045 l -1.332,-1.948 c -9.667,-1.979 -19.911,-2.256 -29.508,-3.339 -12.717,-2.576 -6.97,-6.748 -8.391,-5.558 -29.037,-4.05 -52.141,-3.865 -71.178,-3.926 -6.33264,5.84009 -34.262,8.796 -56.711,15.82 -114.931,23.483 -188.380251,90.08316 -184.815805,194.81921 4.006775,15.15819 24.500405,27.00274 36.446855,36.79889 -10.4753,-15.69627 -4.05981,-9.10136 -16.09703,-23.20978 -7.11475,-10.82227 -5.70567,-15.43227 0.0543,-26.24227 l -5.906,5.2 c 1.029,-18.581 5.235,-11.984 5.463,-26.95 2.307,0.73 4.614,1.461 6.921,2.192 -1.464,-5.568 -4.283,-17.184 0.618,-21.105 l -2.425,-5.884 c 7.914,-9.814 10.118,-21.554 16.09,-22.765 l -4.775,-0.885 c 3.668,-3.31 29.913,-36.325 26.288,-21.737 1.683,-2.967 2.16,-6.464 8.21,-11.661 l 4.379,1.668 c 7.061,-8.361 17.06,-16.439 21.139,-17.052 -4.004,4.525 -4.17,7 -4.26,9.435 39.443,-26.635 -3.316,-16.7 35.792,-39.212 0.369,0.791 0.737,1.582 1.106,2.373 2.691,-2.718 5.906,-4.782 8.938,-7.188 4.319,-0.71 8.637,-1.421 12.956,-2.132 11.112,-14.776 67.90165,-10.56005 95.35165,-15.80705 11.319,-1.691 25.856,3.405 46.309,4.882 l -0.582,-3.919 c 17.357,3.369 74.071,25.592 77.382,41.728 13.969,4.67 -0.496,-1.51 1.801,-3.703 26.333,11.368 22.225,18.09 29.915,28.323 12.833,9.874 -7.044,-9.489 1.574,-5.452 13.818,19.213 19.693,11.093 32.677,37.432 -0.905,3.359 -5.385,-5.883 -8.759,-7.63 16.344,14.771 36.5012,61.8442 31.8852,89.6442 -5.56,32.285 -91.5722,52.9568 -134.8792,65.3388 l 0.057,1.544 c -17.658,3.702 -76.714,31.776 -97.04,31.336"
+ id="path2490"
+ sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 409.46096,437.09419 c 7.26669,-7.07473 2.33738,5.03485 -5.58209,15.84382 -4.62208,0.5712 -8.98983,0.86871 -13.06965,0.97439 7.24762,-4.39653 13.21362,-10.2954 18.65174,-16.81821"
+ id="path2584"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 382.16943,461.30713 c -9.6974,3.50652 -19.6828,5.19858 -29.17847,4.07174 6.83451,0.55544 13.41827,-1.32159 20.27063,-2.9301 16.73493,-14.89706 -6.31008,-3.68937 -13.76173,-3.99218 30.32696,-12.44476 15.56966,1.57539 22.66957,2.85054"
+ id="path2586"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 342.63854,465.30284 c -18.27936,1.01777 -12.43907,-3.73926 -5.46269,-5.27853 0.96848,1.89875 12.84191,3.54031 5.46269,5.27853"
+ id="path2588"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 530.20382,347.62316 c 23.47676,14.90397 20.07236,37.02155 18.64946,8.83781 -18.01001,-28.36583 -9.63957,-1.73775 -18.64946,-8.83781"
+ id="path2604"
+ inkscape:connector-curvature="0" />
+ <path
+ style="fill:#d70751;display:inline"
+ i:knockout="Off"
+ d="m 416.40084,297.82351 c 21.30349,6.95292 34.08262,8.19821 46.43183,10.85188 -24.52052,-19.16869 -29.75373,-8.83568 -46.43183,-10.85188"
+ id="path2606"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ <g
+ transform="matrix(1.5801928,0,0,1.5801928,-19.841359,-98.444624)"
+ style="display:inline"
+ inkscape:label="NeuroDebian-text"
+ id="layer3">
+ <g
+ id="g2488">
+ <g
+ id="g3885"
+ transform="matrix(0.700036,0,0,0.7872628,8.8169518,11.740131)">
+ <g
+ id="g3902">
+ <path
+ id="text2950"
+ d="m 51.959073,94.482231 c -0.128006,0.362672 -0.208006,1.024005 -0.24,1.984 -0.0053,0.229337 -0.008,0.93867 -0.008,2.128 -5e-6,0.656001 0.032,1.189334 0.096,1.599999 -0.213339,-0.032 -0.378672,-0.048 -0.496,-0.048 -0.144005,0 -0.296005,0.016 -0.456,0.048 -0.261338,-0.474665 -0.616004,-1.066664 -1.064,-1.775999 -0.36267,-0.575997 -0.725336,-1.151997 -1.088,-1.728 -0.154669,-0.234663 -0.309335,-0.469329 -0.464,-0.704 -0.181335,-0.277328 -0.314668,-0.522662 -0.4,-0.736 0.05866,0.469338 0.09333,1.021338 0.104,1.656 -0.0053,-0.202663 -0.008,0.349337 -0.008,1.656 -2e-6,0.741335 0.06667,1.288001 0.2,1.639999 -0.234668,-0.0427 -0.416001,-0.064 -0.544,-0.064 -0.133335,0 -0.322668,0.0213 -0.568,0.064 0.159999,-0.431998 0.239999,-1.314664 0.24,-2.647999 -10e-7,-0.879996 -0.01867,-1.562662 -0.056,-2.048 -0.02133,-0.266661 -0.04267,-0.450661 -0.064,-0.552 -0.048,-0.186661 -0.133334,-0.349327 -0.256,-0.488 0.261332,0.03201 0.495999,0.04801 0.704,0.048 0.287998,6e-6 0.554665,-0.01599 0.8,-0.048 0.165331,0.410672 0.370664,0.816005 0.616,1.216 l 1.288,2.104 c 0.143996,0.218669 0.290662,0.437336 0.44,0.656 0.170662,0.266669 0.287995,0.501335 0.352,0.704 -0.01067,-0.149332 -0.016,-0.919998 -0.016,-2.312 -5e-6,-1.247995 -0.08,-2.031994 -0.24,-2.352 0.133329,0.02134 0.333328,0.03201 0.6,0.032 0.122661,6e-6 0.298661,-0.01066 0.528,-0.032"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:700%;writing-mode:lr-tb;text-anchor:start;fill:#d70a53;fill-opacity:1;stroke:none;font-family:LaudatioC;-inkscape-font-specification:LaudatioC Bold"
+ inkscape:connector-curvature="0" />
+ <path
+ id="text2971"
+ d="m 56.007933,97.498229 c -4e-6,0.144003 -0.008,0.301336 -0.024,0.472 l -2.888,0 c 0.08533,1.136001 0.623998,1.704001 1.616,1.704 0.495996,10e-7 0.882663,-0.149332 1.16,-0.448 -0.09067,0.266668 -0.146671,0.538667 -0.168,0.816001 -0.368004,0.10667 -0.74667,0.16 -1.136,0.16 -0.725336,0 -1.296002,-0.202667 -1.712,-0.608001 -0.416001,-0.405332 -0.624001,-0.970665 -0.624,-1.696 -10e-7,-0.682663 0.162666,-1.22133 0.488,-1.616 0.357332,-0.426662 0.869331,-0.639995 1.536,-0.64 0.570664,5e-6 1.00533,0.165338 1.304,0.496 0.298662,0.330671 0.447996,0.784004 0.448,1.36 m -0.84,0 c 0.0053,-0.933329 -0.320003,-1.399996 -0.976,-1.4 -0.677335,4e-6 -1.045335,0.466671 -1.104,1.4 l 2.08,0"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:700%;writing-mode:lr-tb;text-anchor:start;fill:#d70a53;fill-opacity:1;stroke:none;font-family:LaudatioC;-inkscape-font-specification:LaudatioC Bold"
+ inkscape:connector-curvature="0" />
+ <path
+ id="text2975"
+ d="m 67.562515,97.874234 c -4e-6,0.698668 -0.170671,1.253334 -0.512,1.664 -0.36267,0.442667 -0.888003,0.663996 -1.576,0.663996 -0.693335,0 -1.226667,-0.205329 -1.6,-0.615996 -0.357333,-0.394666 -0.536,-0.941332 -0.536,-1.64 0,-0.703997 0.173333,-1.26133 0.52,-1.672 0.367999,-0.431996 0.898665,-0.647996 1.592,-0.648 0.677331,4e-6 1.202663,0.208004 1.576,0.624 0.357329,0.400003 0.535996,0.941336 0.536,1.624 m -0.848,0.048 c -3e-6,-1.18933 -0.405336,-1.783996 -1.216,-1.784 -0.885335,4e-6 -1.328001,0.59467 -1.328,1.784 -10e-7,1.184001 0.431999,1.776 1.296,1.776 0.831997,0 1.247997,-0.591999 1.248,-1.776"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:700%;writing-mode:lr-tb;text-anchor:start;fill:#d70a53;fill-opacity:1;stroke:none;font-family:LaudatioC;-inkscape-font-specification:LaudatioC Bold"
+ inkscape:connector-curvature="0" />
+ <path
+ id="text2979"
+ d="m 63.152097,95.674231 c -0.09067,0.245338 -0.149336,0.514671 -0.176,0.808 -0.08,-0.02133 -0.152003,-0.032 -0.216,-0.032 -0.314669,4e-6 -0.576002,0.146671 -0.784,0.44 -0.192002,0.272003 -0.288002,0.693336 -0.288,1.264 l 0,0.984 c -2e-6,0.394668 0.04,0.749334 0.12,1.063999 -0.240001,-0.0373 -0.405335,-0.056 -0.496,-0.056 -0.08533,0 -0.258668,0.0187 -0.52,0.056 0.07467,-0.282665 0.111999,-0.663998 0.112,-1.143999 l 0,-2.024 c -10e-7,-0.559996 -0.101334,-0.959995 -0.304,-1.2 0.389332,-0.016 0.762665,-0.09066 1.12,-0.224 -0.016,0.325338 -0.024,0.546671 -0.024,0.664 l 0,0.528 c 0.325331,-0.714662 0.810664,-1.090662 1.456,-1.128"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:700%;writing-mode:lr-tb;text-anchor:start;fill:#d70a53;fill-opacity:1;stroke:none;font-family:LaudatioC;-inkscape-font-specification:LaudatioC Bold"
+ inkscape:connector-curvature="0" />
+ <path
+ id="text2983"
+ d="m 60.240798,100.17823 c -0.160005,-0.032 -0.322671,-0.048 -0.488,-0.048 -0.122671,0 -0.301337,0.016 -0.536,0.048 l -0.008,-0.959997 c -0.272003,0.656 -0.736003,0.983997 -1.392,0.983997 -0.848002,0 -1.272001,-0.418664 -1.272,-1.255997 l 0,-2 c -10e-7,-0.54933 -0.088,-0.927996 -0.264,-1.136 0.506665,4e-6 0.882665,-0.07733 1.128,-0.232 -0.05867,0.218671 -0.088,0.520004 -0.088,0.904 l 0,2.208 c -2e-6,0.576 0.263998,0.864 0.792,0.864 0.714663,0 1.071996,-0.541333 1.072,-1.624 l 0,-0.912 c -4e-6,-0.634663 -0.08534,-1.03733 -0.256,-1.208 0.437329,4e-6 0.815996,-0.07733 1.136,-0.232 -0.06401,0.293337 -0.09601,0.648004 -0.096,1.064 l 0,2.232 c -5e-6,0.650667 0.09066,1.085333 0.272,1.303997"
+ style="font-size:8px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:700%;writing-mode:lr-tb;text-anchor:start;fill:#d70a53;fill-opacity:1;stroke:none;font-family:LaudatioC;-inkscape-font-specification:LaudatioC Bold"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ <g
+ id="g2478">
+ <path
+ class="st1"
+ d="m 61.055138,88.360478 c 0.01103,-0.5558 0.13264,-1.059213 0.629911,-1.059213 0.552561,0 0.596764,0.57684 0.585735,1.059213 l -1.215646,0 z m 1.922906,0.0734 c 0,-0.796958 -0.165757,-1.573065 -1.215674,-1.573065 -1.458724,0 -1.458724,1.531146 -1.458724,1.856198 0,1.363279 0.651998,1.908612 1.735033,1.908612 0.486241,0 0.718318,-0.07332 0.8509,-0.104907 -0.011,-0.241159 0.03317,-0.398533 0.06632,-0.608131 -0.143612,0.09439 -0.331542,0.209598 -0.762493,0.209598 -1.105094,0 -1.127267,-0.964746 -1.127267,-1.289771 l 1.88976,0 0.02214,-0.398534 z"
+ id="path3777"
+ style="fill:#000000;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 65.287697,88.71701 c 0,0.6292 -0.121553,1.478734 -0.939337,1.478734 -0.121553,0 -0.265194,-0.0211 -0.353601,-0.04195 -0.01103,-0.241213 -0.01103,-0.660761 -0.01103,-1.1536 0,-0.576813 0.0552,-0.880878 0.110495,-1.027705 0.154698,-0.482481 0.486241,-0.482481 0.552561,-0.482481 0.530387,0 0.640911,0.702707 0.640911,1.226999 z m -2.04443,0.734053 c 0,0.503441 0,0.786546 -0.07735,1.006745 0.287339,0.104827 0.651998,0.167787 1.083006,0.167787 0.276252,0 1.082949,0 1.514015,-0.849425 0.210017,-0.388013 0.276252,-0.912387 0.276252,-1.310839 0,-0.241268 -0.02206,-0.776107 -0.232049,-1.111654 -0.198902,-0.325024 -0.519444,-0.482372 -0.861987,-0.482372 -0.685144,0 -0.884076,0.53484 -0.983541,0.817919 0,-0.346067 0,-1.551999 0.06632,-2.160184 -0.464154,0.199213 -0.751465,0.230666 -1.060891,0.262146 0.276252,0.10488 0.276252,0.5558 0.276252,2.002972 l 0,1.656905 -2.8e-5,0 z"
+ id="path3779"
+ style="fill:#000000;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 67.409534,90.583676 c -0.143697,-0.02104 -0.243163,-0.03137 -0.453152,-0.03137 -0.220962,0 -0.375689,0.01033 -0.541417,0.03137 0.06626,-0.125868 0.09944,-0.188692 0.121552,-0.629172 0.02209,-0.597801 0.03309,-2.202293 -0.01111,-2.548359 -0.04418,-0.251707 -0.09941,-0.293626 -0.198875,-0.356506 0.574677,-0.05247 0.740406,-0.09436 1.016658,-0.220226 -0.06626,0.293626 -0.06626,0.450973 -0.06626,0.901865 -0.01109,2.328106 -0.02209,2.579732 0.13261,2.852398 z"
+ id="path3781"
+ style="fill:#000000;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 69.686013,88.675064 c -0.01097,0.419493 -0.02206,0.723586 -0.143583,0.954333 -0.143727,0.304038 -0.39792,0.388013 -0.585707,0.388013 -0.419951,0 -0.508444,-0.335546 -0.508444,-0.66068 0,-0.63972 0.596823,-0.681666 0.862045,-0.681666 l 0.375689,0 0,0 z m -1.956051,0.828466 c 0,0.419466 0.132639,0.849507 0.53053,1.027733 0.187759,0.0734 0.364603,0.0734 0.419864,0.0734 0.652027,0 0.873017,-0.450892 1.005629,-0.734079 -0.01097,0.293627 0,0.471934 0.02209,0.713093 0.132669,-0.01052 0.254193,-0.02104 0.475241,-0.02104 0.110551,0 0.232104,0.01052 0.353601,0.02104 -0.07735,-0.115401 -0.121497,-0.17828 -0.143612,-0.450974 -0.01109,-0.25168 -0.01109,-0.503305 -0.01109,-0.870358 l 0,-1.373826 c 0,-0.513745 -0.143612,-1.017186 -1.204559,-1.017186 -0.707203,0 -1.116181,0.199294 -1.326084,0.304174 0.08838,0.146827 0.154727,0.272586 0.220962,0.566212 0.276251,-0.230666 0.640997,-0.356533 1.005685,-0.356533 0.596793,0 0.596793,0.377574 0.596793,0.901893 -0.13264,-0.01055 -0.254278,-0.02107 -0.442095,-0.02107 -0.906162,0 -1.502955,0.335735 -1.502955,1.23752 z"
+ id="path3783"
+ style="fill:#000000;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 73.786047,89.912584 c 0,0.230693 0,0.471825 0.09941,0.671092 -0.154699,-0.01052 -0.243192,-0.03137 -0.530531,-0.03137 -0.176786,0 -0.265136,0.01033 -0.39769,0.03137 0.02206,-0.08392 0.033,-0.125868 0.05518,-0.241159 0.02217,-0.1468 0.03312,-0.671092 0.03312,-0.849507 l 0,-0.734107 c 0,-0.314505 0,-0.776026 -0.02206,-0.933238 -0.01106,-0.115346 -0.05529,-0.430041 -0.464126,-0.430041 -0.408948,0 -0.541559,0.283215 -0.585706,0.513961 -0.05529,0.241187 -0.05529,0.492894 -0.05529,1.489065 0,0.870385 0,0.943894 0.07735,1.185052 -0.121496,-0.01052 -0.276166,-0.03137 -0.486156,-0.03137 -0.176872,0 -0.287453,0.01033 -0.431008,0.03137 0.05529,-0.104879 0.07735,-0.16784 0.09941,-0.545332 0.01114,-0.366918 0.04415,-2.191745 -0.02206,-2.62165 -0.04415,-0.262227 -0.110581,-0.325134 -0.187901,-0.388014 0.574648,-0.03148 0.762578,-0.1154 0.939336,-0.209787 l 0,0.723559 c 0.08838,-0.209598 0.265137,-0.681639 0.972454,-0.681639 0.895133,0 0.895133,0.618868 0.906277,1.017294 l 0,2.034451 0,0 z"
+ id="path3785"
+ style="fill:#000000;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st0"
+ d="m 67.464825,85.875107 -0.585678,0.555826 -0.585793,-0.555826 0.585793,-0.555827 0.585678,0.555827 z"
+ id="path3787"
+ style="fill:#d70751;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ id="text3769"
+ d="m 63.697582,83.280325 c -4e-6,1.457025 -0.785925,2.185536 -2.357765,2.185536 -0.09898,0 -0.245478,-0.004 -0.439482,-0.01188 -0.190048,-0.0079 -0.334562,-0.01188 -0.433544,-0.01188 -0.03563,0 -0.209844,0.0079 -0.522628,0.02376 0.126697,-0.162332 0.190046,-0.821555 0.190047,-1.977672 -1e-6,-0.716631 -0.002,-1.098704 -0.0059,-1.146219 -0.01584,-0.455316 -0.06929,-0.82749 -0.160352,-1.116523 0.182127,0.03564 0.395929,0.05345 0.641407,0.05345 0.122737,4e-6 0.304865,-0.0079 0.546384,-0.02376 0.245475,-0.01979 0.429582,-0.02969 0.552323,-0.0297 0.700793,4e-6 1.207584,0.166295 1.520372,0.498872 0.312781,0.332585 0.469173,0.851253 0.469177,1.556006 m -0.700796,0.01188 c -4e-6,-1.108601 -0.502835,-1.662903 -1.508495,-1.662907 -0.150455,4e-6 -0.393952,0.0198 -0.730491,0.05939 -0.0198,0.455324 -0.0297,0.886887 -0.0297,1.294693 l 0,1.668846 c -10e-7,0.182128 0.06137,0.300907 0.184108,0.356337 0.07918,0.03563 0.221719,0.05345 0.427604,0.05345 0.582016,0 1.00764,-0.152433 1.276876,-0.4573 0.253392,-0.285068 0.380089,-0.722571 0.380093,-1.312509"
+ style="font-size:5.93895483000000013px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:700%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:LaudatioC;-inkscape-font-specification:LaudatioC Bold"
+ transform="scale(0.9429753,1.0604732)"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ <g
+ transform="translate(-40.044329,-50.107571)"
+ style="display:none"
+ inkscape:label="Debian-text"
+ id="layer5">
+ <g
+ transform="matrix(0.04585734,0,0,0.05070038,37.456067,81.452516)"
+ id="g6679"
+ style="display:inline;enable-background:new">
+ <path
+ class="st1"
+ d="m 269.84799,136.25108 c -0.30551,0.26427 -0.30551,27.32302 -0.61339,34.41853 -0.61102,5.779 -1.22363,18.12839 -15.30407,18.12839 -14.69303,0 -18.06159,-14.44985 -19.28521,-20.49514 -1.22442,-7.09484 -1.22442,-12.87452 -1.22442,-15.23787 0,-8.14304 0.30551,-30.74068 22.65295,-30.74068 6.73314,0 10.40639,1.57807 13.46863,2.89187 l 0.30551,11.0349 z m -57.24224,19.96732 c 0,47.55389 29.38608,47.55389 33.97747,47.55389 12.2442,0 19.89702,-5.51813 23.26477,-15.50281 l 0.61182,14.97702 c 3.67327,-0.26358 7.34731,-0.52715 13.46862,-0.52715 2.14334,0 3.97955,0 5.51028,0.26357 1.52994,0 3.06147,0 4.8977,0.26358 -3.06145,-5.51746 -5.51029,-17.60395 -5.51029,-43.87537 0,-25.74766 0,-69.36082 2.44962,-82.498905 -7.04101,2.890524 -13.1631,4.729448 -26.63253,5.781037 5.51029,4.992329 5.51029,7.357048 5.51029,29.689078 -3.67403,-1.05225 -8.57174,-2.10317 -16.53007,-2.10317 -35.20268,0 -41.01768,26.27618 -41.01768,45.97923 z"
+ id="path6681"
+ style="fill:#000000"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 319.43741,147.54753 c 0.30552,-13.92475 3.67405,-26.53703 17.44819,-26.53703 15.30564,0 16.53006,14.45189 16.22455,26.53703 l -33.67274,0 z m 53.26347,1.83892 c 0,-19.96662 -4.59138,-39.41086 -33.67353,-39.41086 -40.40588,0 -40.40588,38.36063 -40.40588,46.50434 0,34.15496 18.06001,47.81748 48.05949,47.81748 13.46861,0 19.89704,-1.83689 23.56949,-2.62829 -0.30472,-6.04189 0.91891,-9.98468 1.83703,-15.23585 -3.97798,2.36473 -9.18354,5.25117 -21.12065,5.25117 -30.61051,0 -31.2247,-24.17028 -31.2247,-32.31331 l 52.34535,0 0.6134,-9.98468 z"
+ id="path6683"
+ style="fill:#000000"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 436.67703,156.47993 c 0,15.76367 -3.36695,37.04751 -26.01913,37.04751 -3.36695,0 -7.34573,-0.52851 -9.79456,-1.05092 -0.30551,-6.04325 -0.30551,-16.55439 -0.30551,-28.90175 0,-14.45121 1.52913,-22.06913 3.06065,-25.74766 4.28507,-12.08786 13.46862,-12.08786 15.30566,-12.08786 14.69144,0 17.75289,17.60531 17.75289,30.74068 z m -56.62963,18.39061 c 0,12.61298 0,19.70577 -2.14253,25.22254 7.95911,2.62627 18.05999,4.20365 29.99868,4.20365 7.65204,0 29.9971,0 41.93739,-21.28111 5.81737,-9.7211 7.65203,-22.85851 7.65203,-32.84115 0,-6.0446 -0.61103,-19.44423 -6.42761,-27.85085 -5.50949,-8.14302 -14.38833,-12.08514 -23.87658,-12.08514 -18.97813,0 -24.48843,13.39963 -27.24357,20.49176 0,-8.67018 0,-38.883042 1.83705,-54.120226 -12.85682,4.990977 -20.81516,5.778993 -29.38611,6.567679 7.65204,2.627622 7.65204,13.924749 7.65204,50.181527 l 0,41.51132 -7.9e-4,0 z"
+ id="path35079"
+ style="fill:#000000"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 495.45079,203.2465 c -3.98035,-0.52715 -6.7355,-0.78598 -12.55209,-0.78598 -6.12052,0 -10.40638,0.25883 -14.99696,0.78598 1.83543,-3.15342 2.75433,-4.7274 3.36694,-15.76298 0.61182,-14.97702 0.91655,-55.17521 -0.30787,-63.84541 -1.22364,-6.30614 -2.75356,-7.35636 -5.50871,-8.93172 15.91825,-1.31449 20.50884,-2.36405 28.16087,-5.51745 -1.83543,7.35638 -1.83543,11.29847 -1.83543,22.59492 -0.3071,58.32727 -0.61182,64.63139 3.67325,71.46264 z"
+ id="path6687"
+ style="fill:#000000"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 558.50803,155.42903 c -0.30393,10.50979 -0.61102,18.12839 -3.97718,23.90942 -3.98116,7.61723 -11.02216,9.72108 -16.22377,9.72108 -11.6324,0 -14.08361,-8.4066 -14.08361,-16.55236 0,-16.02724 16.53166,-17.07814 23.87817,-17.07814 l 10.40639,0 0,0 z m -54.18158,20.756 c 0,10.5091 3.67404,21.28316 14.69541,25.74834 5.20083,1.83892 10.09931,1.83892 11.63001,1.83892 18.0608,0 24.1821,-11.29645 27.85538,-18.39128 -0.30393,7.35639 0,11.8236 0.6118,17.86549 3.67485,-0.26358 7.04102,-0.52715 13.16391,-0.52715 3.06223,0 6.42918,0.26357 9.79457,0.52715 -2.14255,-2.89119 -3.36539,-4.46654 -3.97798,-11.29849 -0.30709,-6.30546 -0.30709,-12.60956 -0.30709,-21.80555 l 0,-34.4192 c 0,-12.87112 -3.97797,-25.48409 -33.36566,-25.48409 -19.58913,0 -30.9176,4.99302 -36.73181,7.62063 2.44805,3.67854 4.28586,6.82923 6.12052,14.1856 7.65203,-5.77898 17.75528,-8.9324 27.85695,-8.9324 16.53086,0 16.53086,9.45957 16.53086,22.59561 -3.67406,-0.26425 -7.04338,-0.52784 -12.2458,-0.52784 -25.10021,0 -41.63107,8.41136 -41.63107,31.00426 z"
+ id="path6689"
+ style="fill:#000000"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st1"
+ d="m 672.07677,186.43327 c 0,5.77968 0,11.82089 2.75357,16.81323 -4.28508,-0.26358 -6.7363,-0.78598 -14.69543,-0.78598 -4.89688,0 -7.34414,0.25883 -11.01582,0.78598 0.61102,-2.1025 0.91416,-3.15342 1.52835,-6.04189 0.61418,-3.67785 0.91732,-16.81322 0.91732,-21.28315 l 0,-18.39198 c 0,-7.87945 0,-19.44218 -0.61101,-23.3809 -0.30631,-2.88983 -1.53153,-10.77404 -12.85604,-10.77404 -11.32765,0 -15.00091,7.09552 -16.22375,12.87654 -1.53151,6.04258 -1.53151,12.34873 -1.53151,37.30634 0,21.80621 0,23.64788 2.14253,29.68975 -3.36537,-0.26357 -7.64965,-0.78596 -13.46625,-0.78596 -4.89926,0 -7.96229,0.25882 -11.93869,0.78596 1.53151,-2.62761 2.14254,-4.205 2.75357,-13.66251 0.30866,-9.1926 1.22283,-54.91096 -0.61103,-65.68161 -1.22284,-6.56971 -3.06303,-8.14574 -5.20476,-9.7211 15.91745,-0.78869 21.12302,-2.89119 26.01911,-5.25591 l 0,18.1277 c 2.44805,-5.25116 7.34415,-17.07747 26.93645,-17.07747 24.79472,0 24.79472,15.50484 25.10339,25.48681 l 0,50.97019 0,0 z"
+ id="path6691"
+ style="fill:#000000"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ <path
+ class="st0"
+ d="M 496.9823,85.280203 480.75933,99.205621 464.53319,85.280203 480.75933,71.354772 496.9823,85.280203 z"
+ id="path6693"
+ style="fill:#d70751;fill-opacity:1"
+ inkscape:export-filename="/home/alrferreira/Desktop/debian-gnu-banner.png"
+ inkscape:export-xdpi="64.494591"
+ inkscape:export-ydpi="64.494591"
+ inkscape:connector-curvature="0" />
+ </g>
+ </g>
+ </g>
+ </g>
+</svg>
# all currently supported dists
allnddists="nd+debian-squeeze nd+debian-wheezy nd+debian-jessie nd+debian-sid \
- nd+ubuntu-lucid nd+ubuntu-precise nd+ubuntu-quantal nd+ubuntu-raring nd+ubuntu-saucy"
+ nd+ubuntu-lucid nd+ubuntu-precise nd+ubuntu-saucy nd+ubuntu-trusty nd+ubuntu-utopic"
alldists="$allnddists debian-squeeze debian-wheezy debian-jessie debian-sid"
# default is debian
/neurodebian-desktop
/neurodebian-dev
/neurodebian-guest-additions
-/neurodebian-keyring
+/neurodebian-archive-keyring
/*.log
/*.substvars
would need to assure that mvpa2-tutorial is aware of ipython1x first
then... not now
+* make all nd_* scripts usable out of the box on non-x86 boxes
+* TODO testing of neurodebian "installer" packages
+** notes from manual attempts in a docker:
+
+*** just dpkg -i way
+rm neurodebian-*deb; apt-get update -y; apt-get install -y netselect python-minimal wget; wget http://www.onerussian.com/tmp/neurodebian-{repository,keyring}_0.33~a1_all.deb; DEBIAN_FRONTEND=noninteractive dpkg -i neurodebian-{keyring,repository}_0.33~a1_all.deb
+
+*** via apt
+
+#/bin/bash
+set -ex
+
+# minimal installation with few of those packages
+apt_file=/etc/apt/sources.list.d/local.list
+
+# clean up from a previous test
+dpkg --purge neurodebian neurodebian-archive-keyring || :
+echo PURGE | debconf-communicate neurodebian || :
+rm -rf /tmp/apt $apt_file;
+
+mkdir -p /tmp/apt; cd /tmp/apt;
+rm -f neurodebian-*deb; apt-get update -y; apt-get install -y wget;
+wget http://www.onerussian.com/tmp/neurodebian_0.33~a1_all.deb;
+wget http://www.onerussian.com/tmp/neurodebian-archive-keyring_0.33~a1_all.deb;
+
+# generate APT repo
+apt-get install -y dpkg-dev ; dpkg-scanpackages . /dev/null > Packages
+# Add it to the list of available
+echo "deb file:///tmp/apt ./" >| $apt_file; apt-get update
+# Install the beast
+apt-get install -y --allow-unauthenticated neurodebian
+
+# Verify that it has correct entries
+release=$(grep -v '^[\s#]*$' /etc/apt/sources.list | head -1 | awk '{print $3;}')
+grep -E "^deb\s+http.* $release main\s*\$" /etc/apt/sources.list.d/neurodebian.sources.list
+grep -E '^deb\s+http.* data main\s*$' /etc/apt/sources.list.d/neurodebian.sources.list
+# May be even retrospect stored debconf configuration
+apt-get install debconf-utils
+debconf-get-selections | grep neurodebian/release.*select.*auto
+# And apt-get must be working
+apt-get update
+# Make sure it is active
+apt-cache policy | grep o=NeuroDebian,.*,n=data
+apt-cache policy | grep o=NeuroDebian,.*,n=$release
+
+echo "I: success"
+
+*** ~/bin/docker-debians-run /bin/bash -c "apt-get -y update >/dev/null; apt-get install -y wget >/dev/null; bash <(wget -q --no-check-certificate -O- https://raw.githubusercontent.com/yarikoptic/neurodebian/enh/neurodebian-installer/tools/nd-configurerepo) --overwrite --install --mirror=us-nh"
+neurodebian (0.34) unstable; urgency=medium
+
+ * Re-upload to Debian proper (Closes: #757279), addressing Debian
+ ftpmaster concerns (Thanks Ansgar Burchardt for the thorough review
+ and suggestions)
+ * debian/control
+ - neurodebian-guest-additions:
+ - this binary package will be built ONLY for the NeuroDebian wheezy,
+ and that is why was removed from the stock debian/control
+ - moved virtualbox-guest* dependencies into Depends (from
+ Pre-Depends), and stripping deprecated -ose suffix
+ - dropped depends on elderly gdm, now lightdm or any x-display-manager
+ - fixing package names for chromium, and removing update-manager-gnome
+ N/A in sid
+ - neurodebian
+ - moved wget, python to Depends from Pre-Depends
+ * debian/neurodebian-popularity-contest.*
+ - .postinst should try to remove old-fashion popcon entry only if
+ upgrading/configuring from pre 0.33 version of neurodebian-*
+ - .postrm removed altogether since will not longer be needed because
+ popcon configuration gets installed as a config file now
+ * tools/nd-configurerepo
+ - use long GPG key id
+ - unify prefix for environment variables to be NEURODEBIAN_ instead of
+ more cryptic ND_AE_
+ * tools/neurodebian.{preinst,templates,config}
+ - add an explicit question either NeuroDebian APT configuration should
+ be installed (i.e. NeuroDebian repository being enabled). debconf
+ default/value could be overridden from the environment using
+ NEURODEBIAN_ENABLE.
+
+ -- Yaroslav Halchenko <debian@onerussian.com> Wed, 13 Aug 2014 13:43:13 -0400
+
+neurodebian (0.33) UNRELEASED; urgency=medium
+
+ * Initial (rejected) upload to Debian proper
+ * Support popularity-contest >= 1.61 encrypting submissions:
+ - provide GPG public key for encryption of submissions
+ * Updated list of currently supported Ubuntu releases
+ * New features:
+ - neurodebian and neurodebian packages to provide 1-click
+ NeuroDebian deployment on Debian/Ubuntu boxes
+ * Breakage of "compatibility":
+ - do not install sphinx sources
+
+ -- Yaroslav Halchenko <debian@onerussian.com> Fri, 08 Aug 2014 16:29:40 -0400
+
neurodebian (0.32) neurodebian; urgency=low
[ Michael Hanke ]
Priority: optional
Maintainer: NeuroDebian Team <team@neuro.debian.net>
Uploaders: Michael Hanke <mih@debian.org>, Yaroslav Halchenko <debian@onerussian.com>
-Build-Depends: debhelper (>= 7.0.50~), xcftools, help2man, inkscape, imagemagick, python-html5lib
-Standards-Version: 3.9.2
+Build-Depends: debhelper (>= 7.0.50~), xcftools, help2man, inkscape, imagemagick, python-html5lib, po-debconf
+Standards-Version: 3.9.5
Homepage: http://neuro.debian.net
Vcs-Browser: http://git.debian.org/?p=pkg-exppsy/neurodebian.git
Vcs-Git: git://git.debian.org/git/pkg-exppsy/neurodebian.git
-XS-DM-Upload-Allowed: yes
+
+Package: neurodebian
+Architecture: all
+Depends: python, wget, neurodebian-archive-keyring, ${misc:Depends}
+Recommends: netselect
+Suggests: neurodebian-desktop, neurodebian-popularity-contest
+Description: turnkey platform for the neuroscience
+ The NeuroDebian project integrates and maintain a variety of
+ neuroscience-oriented (such as AFNI, FSL, PsychoPy, etc.) and many
+ generic computational (such as condor, pandas, etc.) software projects
+ within Debian.
+ .
+ This package enables NeuroDebian repository on top of the stock
+ Debian or Ubuntu system.
Package: neurodebian-dev
Architecture: all
-Depends: ${misc:Depends}, devscripts, cowbuilder, neurodebian-keyring
+Depends: ${misc:Depends}, devscripts, cowbuilder, neurodebian-archive-keyring
Recommends: python, zerofree, moreutils, time, ubuntu-keyring, debian-archive-keyring, apt-utils
Suggests: virtualbox-ose, virtualbox-ose-fuse
Description: NeuroDebian development tools
automatically installed upon initial invocation.
-Package: neurodebian-keyring
+Package: neurodebian-archive-keyring
Architecture: all
Depends: ${misc:Depends}
+Replaces: neurodebian-keyring (<< 0.34~)
+Breaks: neurodebian-keyring (<< 0.34~)
Description: GnuPG archive keys of the NeuroDebian archive
The NeuroDebian project digitally signs its Release files. This package
contains the archive keys used for that.
You can always enable or disable your participation in popcon by
running 'dpkg-reconfigure popularity-contest' as root.
-Package: neurodebian-guest-additions
-Architecture: all
-Pre-Depends: virtualbox-ose-guest-utils, virtualbox-ose-guest-x11, virtualbox-ose-guest-dkms
-Depends: ${misc:Depends},
- sudo,
- neurodebian-desktop,
- gdm | lightdm,
- zenity,
-Recommends: chromium-browser,
- update-manager-gnome, update-notifier,
-Description: NeuroDebian guest additions (DO NOT INSTALL OUTSIDE VIRTUALBOX)
- This package configures a Debian installation as a guest operating system
- in a VirtualBox-based virtual machine for NeuroDebian.
- .
- DO NOT install this package unless you know what you are doing! For example,
- installation of this package relaxes several security mechanisms.
Upstream-Contact: NeuroDebian team <team@neuro.debian.net>
Source-Location: http://git.debian.org/?p=pkg-exppsy/neurodebian.git
-
Files: *
-Copyright: 2009-2013 NeuroDebian Team
+Copyright: 2009-2014 NeuroDebian Team (Yaroslav Halchenko, Michael Hanke, et al.)
License: GPL-3+
- On Debian systems the full text of the GNU General Public License can be found
- in the `/usr/share/common-licenses/GPL-3' file.
Files: artwork/openlogo*.svg
Copyright: 1999 Software in the Public Interest
-License: MIT
+License: Expat
+
+Files: sphinx/sphinxext/quote.py
+Copyright: 2010, Yaroslav O. Halchenko
+ 2007-2010, Sphinx team
+License: BSD-2
+
+
+License: GPL-3+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the complete text of the GNU General Public License
+ version 3 can be found in `/usr/share/common-licenses/GPL-3'.
+
+License: Expat
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+
+License: BSD-2
+ All rights reserved.
+ .
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+ .
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ .
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
--- /dev/null
+keys/neurodebian-archive-keyring.gpg etc/apt/trusted.gpg.d/
--- /dev/null
+#!/bin/sh
+
+set -e
+
+if which apt-key > /dev/null; then
+ apt-key update
+fi
+
+#DEBHELPER#
--- /dev/null
+# Those .desktop files on purpose do not include main category for
+# them all to appear only under a non-standard additional NeuroDebian
+# submenu
+neurodebian-desktop: desktop-entry-lacks-main-category usr/share/applications/neurodebian-*.desktop
+
+# .desktop entries to fire up a browser pointing to a webpage (e.g. documentation)
+neurodebian-desktop: desktop-command-not-in-package usr/share/applications/neurodebian-*.desktop x-www-browser
-build/man/nd-*
+build/man/nd-autoinstall.1
neurodebian.cfg /etc/neurodebian/
cmdsettings.sh /etc/neurodebian/
pkgs usr/share/neurodebian/
-sphinx usr/share/neurodebian/
--- /dev/null
+# we do not provide manpages for the devel scripts yet
+neurodebian-dev binary: binary-without-manpage usr/bin/nd_*
--- /dev/null
+# No manpage yet
+neurodebian-guest-additions: binary-without-manpage usr/bin/nd-vmsetupwizard
+
+# Similarly to the case of .desktop files in -desktop package
+# lack of main category is intentional
+neurodebian-guest-additions: desktop-entry-lacks-main-category usr/share/applications/neurodebianguest-vmsetupwizard.desktop
+++ /dev/null
-keys/neurodebian-archive-keyring.gpg etc/apt/trusted.gpg.d/
+++ /dev/null
-#!/bin/sh
-
-set -e
-
-if which apt-key > /dev/null; then
- apt-key update
-fi
-
-#DEBHELPER#
--- /dev/null
+usr/share/popularity-contest
+etc/popularity-contest.d
--- /dev/null
+popcon/neurodebian.conf /etc/popularity-contest.d
+popcon/neurodebian-popcon.gpg /usr/share/popularity-contest
#!/bin/bash -e
+# following to be duplicated within postrm as well, but may be with
+# "Removing" message
popcon_conf=/etc/popularity-contest.conf
-if [ "$1" = "configure" -o "$1" = "abort-upgrade" ]; then
+nd_popcon_conf=/etc/popularity-contest.d/neurodebian.conf
+remove_neurodebian_popcon_pre161() {
# Adjust popularity-contest.conf
+ if [ -e "$popcon_conf" ] \
+ && grep -q "http://neuro.debian.net/cgi-bin/popcon-submit.cgi" $popcon_conf; then
+ #echo "Removing NeuroDebian url for Popularity Contest submissions."
+ # First remove any explicit mentioning and then empty additions
+ sed -i -e 's,http://neuro.debian.net/cgi-bin/popcon-submit.cgi,,g' \
+ -e '/SUBMITURLS+=" *"/d' \
+ -e '/SUBMITURLS="$SUBMITURLS *"/d' \
+ "$popcon_conf"
+ fi
+}
+
+add_neurodebian_popcon_pre161() {
+ # Adjust main popularity-contest configuration file. Should be
+ # used only with older versions of the popularity contest.
if [ -e "$popcon_conf" ]; then
# Fix dashism missing += operator
if grep -q 'SUBMITURLS+="' "$popcon_conf"; then
echo -e 'SUBMITURLS="$SUBMITURLS http://neuro.debian.net/cgi-bin/popcon-submit.cgi"' >> "$popcon_conf"
fi
fi
+}
+
+add_neurodebian_popcon_161() {
+ # 1.60 introduced encryption and a way to provide multiple keys to
+ # encrypt submissions to multiple servers.
+
+ # "Installation" is taken care of through installing files under
+ # /etc/popularity-contest.d, so no additional actions necessary here
+ :
+}
+
+popcon_version=$(dpkg -l popularity-contest | tail -n 1 | awk '{print $3;}')
+
+if [ "$1" = "configure" -o "$1" = "abort-upgrade" ]; then
+ if dpkg --compare-versions $popcon_version lt 1.61; then
+ add_neurodebian_popcon_pre161
+ else
+ # Assure that we have no "old" settings for submission if
+ # previous version of our package was old
+ if [ "$1" = "configure" ] && [ -z "$2" ] && dpkg --compare-versions "$2" lt 0.33; then
+ remove_neurodebian_popcon_pre161 || :
+ fi
+ fi
fi
#DEBHELPER#
+++ /dev/null
-#!/bin/sh -e
-
-#DEBHELPER#
-
-# If requested to be purged -- remove our entry
-popcon_conf=/etc/popularity-contest.conf
-if [ "$1" = "purge" ]; then
- # Adjust popularity-contest.conf
- if [ -e "$popcon_conf" ]; then
- echo "Removing NeuroDebian url for Popularity Contest submissions."
- # First remove any explicit mentioning and then empty additions
- sed -i -e 's,http://neuro.debian.net/cgi-bin/popcon-submit.cgi,,g' \
- -e '/SUBMITURLS+=" *"/d' \
- -e '/SUBMITURLS="$SUBMITURLS *"/d' \
- "$popcon_conf"
- fi
-fi
--- /dev/null
+#!/bin/bash
+set -e
+
+. /usr/share/debconf/confmodule
+
+db_capb backup # allow to go back, for that we implement that STATE loop
+
+debug()
+{
+ [ "${DEBCONF_DEBUG:-}" != "developer" ] || echo -e "D: $*" >&2
+}
+
+db_settitle neurodebian/title
+
+if [ "$1" = "configure" ]; then
+ # Must have been called in preinst state, so no nd-configurerepo
+ # tool is yet installed, thus delay asking questions to
+ # whenever will be called in postinst state
+ which nd-configurerepo 1>/dev/null 2>&1 || exit 0
+fi
+
+# Create temporary directory which will be reused
+export ND_AE_TEMPDIR=$(mktemp -d)
+trap "rm -rf \"$ND_AE_TEMPDIR\"" TERM INT EXIT
+
+neurodebian_releases="auto"
+
+# This implements a simple state machine so the back button can be handled.
+# taken from debconf demo example
+STATE=1
+while [ "$STATE" != 0 -a "$STATE" -lt 9 ]; do
+ case $STATE in
+ 1)
+ # allow to be overridden by environment variable as discussed with
+ # ftpmaster
+ if [ ! -z "${NEURODEBIAN_ENABLE:-}" ]; then
+ case "${NEURODEBIAN_ENABLE}" in
+ true|yes|YES|1) enable=true;;
+ false|no|NO|0) enable=false;;
+ *) echo "ERROR: Non-supported value $NEURODEBIAN_ENABLE of NEURODEBIAN_ENABLE env variable. Use yes or no" >&2;
+ exit 1;;
+ esac
+ db_set neurodebian/enable $enable
+ fi
+ db_input high neurodebian/enable || true
+ ;;
+ 2)
+ neurodebian_releases="$(ND_IFS=', ' nd-configurerepo --print-releases)"
+ debian_release="$(ND_IFS=', ' nd-configurerepo --print-release)"
+ if [ -z "$debian_release" ]; then # just a failover
+ debian_release="sid"
+ fi
+ debug "releases: $neurodebian_releases"
+ db_subst neurodebian/release releases "$neurodebian_releases"
+ db_subst neurodebian/release release "$debian_release"
+ db_input medium neurodebian/release || true
+ ;;
+ 3)
+ neurodebian_mirrors="$(ND_IFS=', ' nd-configurerepo --print-mirrors)"
+ debug "mirrors: $neurodebian_mirrors"
+ db_subst neurodebian/mirror mirrors "$neurodebian_mirrors"
+ db_input medium neurodebian/mirror || true
+ mirror_selection_ret="$RET"
+ debug "mirror select return: <$mirror_selection_ret>"
+ ;;
+ 4) neurodebian_flavor="$(ND_IFS=', ' nd-configurerepo --print-flavor)"
+ db_subst neurodebian/flavor flavor "$neurodebian_flavor"
+ db_input medium neurodebian/flavor || true ;;
+ 5) db_input medium neurodebian/components || true ;;
+ 6) db_input low neurodebian/suffix || true ;;
+ 7) db_input low neurodebian/overwrite || true ;;
+ 8) db_input medium neurodebian/run-update-note || true ;;
+ esac
+
+ if db_go; then
+ case $STATE in
+ 1)
+ db_get neurodebian/enable # get new value
+ if [ "$RET" = "false" ]; then
+ # no need to proceed with further questions
+ if ls /etc/apt/sources.list.d/neurodebian.sources*.list &>/dev/null; then
+ # we have configuration present -- display a note about apt-get update
+ STATE=8
+ else
+ STATE=100 # just go out -- nothing to do, nothing to inform about
+ fi
+ continue
+ fi;;
+# Ubuntus managed to remove netselect "to accompany apt-netselect"
+# https://bugs.launchpad.net/ubuntu/+source/netselect/+bug/337377
+# So for now remove this mandatory demanding of netselect for "best", and
+# rely on logic in nd-configurerepo to select default mirror (currently origin)
+# as the 'best'
+#
+# 3)
+# db_metaget neurodebian/mirror value
+# selected_mirror="$RET"
+# # TODOs:
+# # - handle custom
+# # - separate out alias from url
+# debug "selected mirror: $selected_mirror"
+# if [ "$selected_mirror" = "best" ] && ! which netselect &>/dev/null; then
+# if [ "$mirror_selection_ret" = "30 question skipped" ]; then
+# # if the question was not even shown, we would
+# # not get a chance to specify mirror, thus
+# # better just fail altogether and demand intervention
+# db_input high neurodebian/netselect-cannot-be-used
+# exit 1
+# else
+# db_input high neurodebian/netselect-not-found
+# continue;
+# fi
+# fi
+ esac
+ STATE=$(($STATE + 1))
+ else
+ STATE=$(($STATE - 1))
+ fi
+done
+
+db_stop
+
--- /dev/null
+tools/nd-configurerepo usr/bin
--- /dev/null
+build/man/nd-configurerepo.1
--- /dev/null
+#!/bin/bash
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+
+case "$1" in
+ configure)
+ db_get neurodebian/enable
+ if [ "$RET" = "true" ]; then
+ # obtain all the options and call nd-configurerepo
+ opts="--do-not-update"
+ db_get neurodebian/release; [ "$RET" = "auto" ] || opts+=" -r '$RET'"
+ db_get neurodebian/mirror; nd_mirror="${RET##* }" # get just a url if it came together with alias
+ db_get neurodebian/flavor; nd_flavor="$RET"
+ db_get neurodebian/components; nd_components="${RET// /}"
+
+ db_get neurodebian/overwrite; [ "$RET" = "true" ] && opts+=" --overwrite" || :
+ db_get neurodebian/suffix; [ "$RET" = "" ] || opts+=" --suffix='$RET'" || :
+
+ eval nd-configurerepo -m "$nd_mirror" -c "$nd_components" $opts
+ else
+ # removing neurodebian APT configs
+ rm -f /etc/apt/sources.list.d/neurodebian.sources*.list
+ fi
+ ;;
+ abort-upgrade|abort-remove|abort-deconfigure)
+ # nothing to do
+ ;;
+
+ *)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
--- /dev/null
+#!/bin/bash
+
+set -e
+
+case "$1" in
+ purge)
+ rm -f /etc/apt/sources.list.d/neurodebian.sources*.list
+ ;;
+
+ remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+ ;;
+
+ *)
+ echo "postrm called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
+
+exit 0
--- /dev/null
+Template: neurodebian/title
+Type: title
+_Description: NeuroDebian APT repository installer
+
+Template: neurodebian/enable
+Type: boolean
+Default: false
+_Description: Should NeuroDebian repository be enabled?
+ NeuroDebian project provides a separate APT repository with backport
+ builds of most recent releases of maintained software, datasets and
+ some software not in Debian proper yet. Enabling this additional
+ repository will make those packages available on your base system.
+ .
+ Note: although NeuroDebian team aims to assure robust and correct
+ operation of provided packages, enabling this additional archive
+ might compromise the integrity of your base system.
+
+Template: neurodebian/release
+Type: select
+Choices: auto, ${releases}
+Default: auto
+_Description: Release name of the base system:
+ Specify for which Debian or Ubuntu release (e.g. wheezy or trusty).
+ .
+ If 'auto', Debian or Ubuntu release name will be '${release}' as
+ deduced from the output of apt-cache policy. If the release of your
+ system is not '${release}' -- please choose specific one which
+ matches best.
+
+
+Template: neurodebian/mirror
+Type: select
+Choices: origin, best, custom, ${mirrors}
+Default: best
+_Description: NeuroDebian mirror to use:
+ NeuroDebian project has a number of community-maintainer mirrors
+ around the globe.
+ .
+ If you do not know which mirror URL to choose, select among
+ .
+ - origin: original NeuroDebian repository
+ - best: will try to use netselect to select "closest" mirror.
+ Depending on the configuration of the firewall, and actual mirror
+ setup, might fail to select actually closest one. If netselect
+ is not available, default mirror (possibly 'origin') will be used.
+
+
+Template: neurodebian/flavor
+Type: select
+Choices: auto, libre, full
+Default: auto
+_Description: NeuroDebian flavor to use:
+ NeuroDebian project adheres to Debian Free Software Guidelines and
+ has three areas of the archive in all suites/releases:
+ .
+ libre
+ only the DFSG-compliant materials
+ full
+ all three areas (main, contrib, non-free)
+ auto
+ according to output of apt-cache policy '${flavor}' will be used.
+ If that is not the flavor you need, select manually another one.
+
+Template: neurodebian/components
+Type: multiselect
+Choices: software, data, devel
+Default: software, data
+_Description: NeuroDebian repository components to enable:
+ NeuroDebian repository provides
+ .
+ software
+ Packages containing software packages, often backports of stable
+ software releases for previous Debian/Ubuntu releases
+ devel
+ Additional "bleeding edge" software packages, which might not be a
+ good fit for being enabled by default. (Similar to Debian
+ experimental)
+ data
+ Packages containing data (e.g. atlases, sample datasets), often
+ required by software packages. Should generally be enabled.
+
+
+Template: neurodebian/overwrite
+Type: boolean
+Default: true
+_Description: Should existing NeuroDebian APT file be overridden?
+ If not allowed, configuration would fail if there is
+ an existing apt configuration file for the NeuroDebian.
+
+Template: neurodebian/suffix
+Type: string
+Default:
+_Description: Additional suffix for the NeuroDebian APT file name:
+ For instance if you would like to enable additional repository
+ (e.g. NeuroDebian devel) or release, without interfering with the
+ main/default configuration file. Generally should be left empty.
+
+Template: neurodebian/run-update-note
+Type: note
+_Description: APT list of packages needs to be updated
+ For the installed (or removed) NeuroDebian APT configuration to take
+ an effect, list of packages needs to be updated. This needs to be
+ done "manually" (e.g., via apt-get update) upon completion of
+ installation or reconfiguration of the neurodebian package.
+
+Template: neurodebian/netselect-not-found
+Type: error
+_Description: netselect tool was not found!
+ Please install netselect tool first (apt-get install netselect) or
+ choose a specific mirror.
+
+Template: neurodebian/netselect-cannot-be-used
+Type: error
+_Description: netselect tool was not found (no other mirror)!
+ Please install netselect tool first (apt-get install netselect)
+ before installing/configuring this package, or run with a lower
+ DEBIAN_PRIORITY to choose a specific mirror.
+
--- /dev/null
+wheezy-dsc-patch
--- /dev/null
+Author: Yaroslav Halchenko <debian@onerussian.com>
+Description: guest-additions package to be built only for NeuroDebian repository
+ Its primarily purpose is customization of the NeuroDebian Virtualbox appliance.
+ As such it should not be generally useful and thus will be made available only
+ for specific builds of the package for the NeuroDebian repository.
+
+Origin: NeuroDebian
+Last-Update: 2014-08-14
+
+diff --git a/debian/control b/debian/control
+index f6629ed..82ac7bc 100644
+--- a/debian/control
++++ b/debian/control
+@@ -76,3 +76,21 @@ Description: Helper for NeuroDebian popularity contest submissions
+ You can always enable or disable your participation in popcon by
+ running 'dpkg-reconfigure popularity-contest' as root.
+
++Package: neurodebian-guest-additions
++Architecture: all
++Depends: ${misc:Depends},
++ virtualbox-guest-utils,
++ virtualbox-guest-x11,
++ virtualbox-guest-dkms,
++ sudo,
++ neurodebian-desktop,
++ lightdm | x-display-manager,
++ zenity,
++Recommends: chromium,
++ update-notifier,
++Description: NeuroDebian guest additions (DO NOT INSTALL OUTSIDE VIRTUALBOX)
++ This package configures a Debian installation as a guest operating system
++ in a VirtualBox-based virtual machine for NeuroDebian.
++ .
++ DO NOT install this package unless you know what you are doing! For example,
++ installation of this package relaxes several security mechanisms.
--- /dev/null
+[type: gettext/rfc822deb] neurodebian.templates
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: neurodebian\n"
+"Report-Msgid-Bugs-To: neurodebian@packages.debian.org\n"
+"POT-Creation-Date: 2014-08-14 12:27-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: title
+#. Description
+#: ../neurodebian.templates:1001
+msgid "NeuroDebian APT repository installer"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../neurodebian.templates:2001
+msgid "Should NeuroDebian repository be enabled?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../neurodebian.templates:2001
+msgid ""
+"NeuroDebian project provides a separate APT repository with backport builds "
+"of most recent releases of maintained software, datasets and some software "
+"not in Debian proper yet. Enabling this additional repository will make "
+"those packages available on your base system."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../neurodebian.templates:2001
+msgid ""
+"Note: although NeuroDebian team aims to assure robust and correct operation "
+"of provided packages, enabling this additional archive might compromise the "
+"integrity of your base system."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:3001
+msgid "Release name of the base system:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:3001
+msgid "Specify for which Debian or Ubuntu release (e.g. wheezy or trusty)."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:3001
+msgid ""
+"If 'auto', Debian or Ubuntu release name will be '${release}' as deduced "
+"from the output of apt-cache policy. If the release of your system is not "
+"'${release}' -- please choose specific one which matches best."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:4001
+msgid "NeuroDebian mirror to use:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:4001
+msgid ""
+"NeuroDebian project has a number of community-maintainer mirrors around the "
+"globe."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:4001
+msgid "If you do not know which mirror URL to choose, select among"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:4001
+msgid ""
+" - origin: original NeuroDebian repository\n"
+" - best: will try to use netselect to select \"closest\" mirror.\n"
+" Depending on the configuration of the firewall, and actual mirror\n"
+" setup, might fail to select actually closest one. If netselect\n"
+" is not available, default mirror (possibly 'origin') will be used."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:5001
+msgid "NeuroDebian flavor to use:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:5001
+msgid ""
+"NeuroDebian project adheres to Debian Free Software Guidelines and has three "
+"areas of the archive in all suites/releases:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../neurodebian.templates:5001
+msgid ""
+" libre\n"
+" only the DFSG-compliant materials\n"
+" full\n"
+" all three areas (main, contrib, non-free)\n"
+" auto\n"
+" according to output of apt-cache policy '${flavor}' will be used.\n"
+" If that is not the flavor you need, select manually another one."
+msgstr ""
+
+#. Type: multiselect
+#. Description
+#: ../neurodebian.templates:6001
+msgid "NeuroDebian repository components to enable:"
+msgstr ""
+
+#. Type: multiselect
+#. Description
+#: ../neurodebian.templates:6001
+msgid "NeuroDebian repository provides"
+msgstr ""
+
+#. Type: multiselect
+#. Description
+#: ../neurodebian.templates:6001
+msgid ""
+" software\n"
+" Packages containing software packages, often backports of stable\n"
+" software releases for previous Debian/Ubuntu releases\n"
+" devel\n"
+" Additional \"bleeding edge\" software packages, which might not be a\n"
+" good fit for being enabled by default. (Similar to Debian\n"
+" experimental)\n"
+" data\n"
+" Packages containing data (e.g. atlases, sample datasets), often\n"
+" required by software packages. Should generally be enabled."
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../neurodebian.templates:7001
+msgid "Should existing NeuroDebian APT file be overridden?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../neurodebian.templates:7001
+msgid ""
+"If not allowed, configuration would fail if there is an existing apt "
+"configuration file for the NeuroDebian."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../neurodebian.templates:8001
+msgid "Additional suffix for the NeuroDebian APT file name:"
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../neurodebian.templates:8001
+msgid ""
+"For instance if you would like to enable additional repository (e.g. "
+"NeuroDebian devel) or release, without interfering with the main/default "
+"configuration file. Generally should be left empty."
+msgstr ""
+
+#. Type: note
+#. Description
+#: ../neurodebian.templates:9001
+msgid "APT list of packages needs to be updated"
+msgstr ""
+
+#. Type: note
+#. Description
+#: ../neurodebian.templates:9001
+msgid ""
+"For the installed (or removed) NeuroDebian APT configuration to take an "
+"effect, list of packages needs to be updated. This needs to be done "
+"\"manually\" (e.g., via apt-get update) upon completion of installation or "
+"reconfiguration of the neurodebian package."
+msgstr ""
+
+#. Type: error
+#. Description
+#: ../neurodebian.templates:10001
+msgid "netselect tool was not found!"
+msgstr ""
+
+#. Type: error
+#. Description
+#: ../neurodebian.templates:10001
+msgid ""
+"Please install netselect tool first (apt-get install netselect) or choose a "
+"specific mirror."
+msgstr ""
+
+#. Type: error
+#. Description
+#: ../neurodebian.templates:11001
+msgid "netselect tool was not found (no other mirror)!"
+msgstr ""
+
+#. Type: error
+#. Description
+#: ../neurodebian.templates:11001
+msgid ""
+"Please install netselect tool first (apt-get install netselect) before "
+"installing/configuring this package, or run with a lower DEBIAN_PRIORITY to "
+"choose a specific mirror."
+msgstr ""
-n "backport Debian source packages" > build/man/backport-dsc.1
help2man --no-info tools/nd-autoinstall \
-n "install (if necessary) and run an application" > build/man/nd-autoinstall.1
+ help2man --no-info tools/nd-configurerepo \
+ -n "configure APT to use NeuroDebian repository" > build/man/nd-configurerepo.1
override_dh_auto_install::
override_dh_auto_test::
override_dh_clean:
+ debconf-updatepo
dh_clean
$(MAKE) -C artwork clean
+++ /dev/null
-[Desktop Entry]
-Name=VirtualBox shared folder
-Comment=Mount the shared folder of the VirtualBox host
-Exec=sh -c 'sudo mount.vboxsf -o uid=$(id -u),gid=$(id -g) host /mnt/host'
-Terminal=false
-Type=Application
--iso-preparer "NeuroDebian ${nd_version}; http://neuro.debian.net" \
--iso-publisher "NeuroDebian project; http://neuro.debian.net" \
--iso-volume "NeuroDebian Live ${nd_version} $nd_arch" \
- --keyring-packages "debian-archive-keyring neurodebian-keyring" \
+ --keyring-packages "debian-archive-keyring neurodebian-archive-keyring" \
--memtest memtest86+ \
--mirror-bootstrap "${deb_mirror}/debian/" \
--mirror-chroot "${deb_mirror}/debian/" \
[mirrors]
au = http://mirror.aarnet.edu.au/pub/neurodebian
+cn-bj1 = http://mirrors.tuna.tsinghua.edu.cn/neurodebian
+cn-bj2 = http://debian.ustc.edu.cn/neurodebian
+# cn-ln = http://mirrors.neusoft.edu.cn/neurodebian
+cn-lz = http://mirror.lzu.edu.cn/neurodebian
+cn-zj = http://mirrors.zju.edu.cn/neurodebian
de-m = http://neurodebian.g-node.org
de-md = http://neurodebian.ovgu.de/debian
de-v = http://nd.zetatech.org
[mirror names]
au = Australia (AARNET)
+cn-bj1 = China (Tsinghua University)
+cn-bj2 = China (University of Science and Technology)
+# cn-ln = China (Neusoft University of Information)
+cn-lz = China (Lanzhou University)
+cn-zj = China (Zhejiang University)
de-m = Germany (G-Node, LMU Munich)
de-md = Germany (University of Magdeburg)
de-v = Germany (Nikolaus Valentin Haenel, Vogtland)
# EOL: April 2017 (LTS)
precise = http://neuro.debian.net/debian/dists/precise/Release
# EOL: Apr 2014
-quantal = http://neuro.debian.net/debian/dists/quantal/Release
+#EOL quantal = http://neuro.debian.net/debian/dists/quantal/Release
# EOL: Jan 2014
raring = http://neuro.debian.net/debian/dists/raring/Release
# EOL: July 2014
-saucy = http://neuro.debian.net/debian/dists/saucy/Release
+#EOL saucy = http://neuro.debian.net/debian/dists/saucy/Release
+# EOL: Apr 2019
+trusty = http://neuro.debian.net/debian/dists/trusty/Release
+# EOL: Jul 2015
+utopic = http://neuro.debian.net/debian/dists/utopic/Release
+# EOL: Jul 2015
+#vivid = http://neuro.debian.net/debian/dists/vivid/Release
# EOL: May 2014
squeeze = http://neuro.debian.net/debian/dists/squeeze/Release
wheezy = http://neuro.debian.net/debian/dists/wheezy/Release
ubuntu = http://de.archive.ubuntu.com/ubuntu
[task files]
-datasets = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/datasets
-distributedcomputing = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/distributedcomputing
-education = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/education
-electrophysiology = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/electrophysiology
-mri = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/mri
-neuralmodeling = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/neuralmodeling
-psychophysics = http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian-blend.git;a=blob_plain;f=tasks/psychophysics
+datasets = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/datasets
+distributedcomputing = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/distributedcomputing
+education = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/education
+electrophysiology = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/electrophysiology
+mri = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/mri
+neuralmodeling = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/neuralmodeling
+psychophysics = http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian-blend.git/plain/tasks/psychophysics
[release names]
# Map code names to release names and description
quantal = Ubuntu 12.10 "Quantal Quetzal" (quantal)
raring = Ubuntu 13.04 "Raring Ringtail" (raring)
saucy = Ubuntu 13.10 "Saucy Salamander" (saucy)
+trusty = Ubuntu 14.04 "Trusty Tahr" (trusty)
+utopic = Ubuntu 14.10 "Utopic Unicorn" (utopic)
+#vivid = Ubuntu 15.04 "Vivid Vervet" (vivid)
[metadata]
# base url: <url>/<src_pkg-name>/<file>
# is a tuple of a build family ID and a release name joined by a dash, e.g.
# debian-sid
environments = nd+debian-sid nd+debian-jessie nd+debian-wheezy nd+debian-squeeze
- nd+ubuntu-raring nd+ubuntu-quantal nd+ubuntu-precise nd+ubuntu-lucid
+ nd+ubuntu-lucid nd+ubuntu-precise nd+ubuntu-raring nd+ubuntu-saucy nd+ubuntu-trusty nd+ubuntu-utopic
# what command to use for package building: pbuilder or cowbuilder
builder = pbuilder
quantal = nd12.10
raring = nd13.04
saucy = nd13.10
+trusty = nd14.04
+utopic = nd14.10
+#vivid = nd15.04
--- /dev/null
+KEYRING="$KEYRING --keyring /usr/share/popularity-contest/neurodebian-popcon.gpg"
+POPCONKEY="$POPCONKEY -r 0x544665CB8B48DE1D"
+SUBMITURLS="$SUBMITURLS http://neuro.debian.net/cgi-bin/popcon-submit.cgi"
The source code for this portal is licensed under the
<a href="http://www.gnu.org/licenses/gpl-3.0.html"
title="Text of the GPL-3 license">GPL-3</a> and is available on
-<a href="http://anonscm.debian.org/gitweb/?p=pkg-exppsy/neurodebian.git"
+<a href="http://anonscm.debian.org/cgit/pkg-exppsy/neurodebian.git"
title="Browse or clone the Git repository">
git.debian.org</a>.
</div>
# General information about the project.
project = u'Debian Neuroscience Package Repository'
-copyright = u'2009-2013, NeuroDebian Team <team@neuro.debian.net>'
+copyright = u'2009-2014, NeuroDebian Team <team@neuro.debian.net>'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
This is because your APT installation initially does not know the GPG
key that is used to sign the release files of this repository. It is easy to
- make APT happy again. The simplest way is to install the ``neurodebian-keyring``
+ make APT happy again. The simplest way is to install the ``neurodebian-archive-keyring``
package that is available from the NeuroDebian repository. Alternatively:
1. Get the key. Either download the `repository key from here
<_static/neuro.debian.net.asc>`_
- or fetch it from http://wwwkeys.pgp.net (2649A5A9).
+ or fetch it from http://wwwkeys.pgp.net (0xA5D32F012649A5A9).
2. Now feed the key into APT by invoking::
<script type="text/javascript">
function createvmdownload(rel, mir) {
- var img_version = '7.2.0';
+ var img_version = '7.8.0';
var img_suffix;
var base_url;
var img_url;
if(mir in mirrors) {
var retrepo = "wget -O- http://neuro.debian.net/lists/" + rel + "."
+ mir + "." + comp + " | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list\n"
- + "sudo apt-key adv --recv-keys --keyserver pgp.mit.edu 2649A5A9\n";
+ + "sudo apt-key adv --recv-keys --keyserver hkp://pgp.mit.edu:80 0xA5D32F012649A5A9\n";
return retrepo;
}
NeuroDebian VM, please rebuild the version available from the
backports::
- sudo apt-get install -y linux-headers-2.6-amd64 # or -686 for 32bit
+ sudo apt-get install -y linux-headers-2.6-`dpkg --print-architecture`
sudo apt-get install -y -t squeeze-backports virtualbox-ose-guest-dkms \
virtualbox-ose-guest-utils virtualbox-ose-guest-x11
and reboot VM.
+ My VM lost mounted host directories, and display auto-resizing after upgrade
+ NeuroDebian VMs ship without Linux kernel headers pre-installed to
+ minimize distribution/running footprint for one time throw-away
+ usages of the VM. To install headers package(s) just run
+
+ sudo apt-get install -y linux-headers-`dpkg --print-architecture`
+
+ and reboot VM.
+
I am still running an older VirtualBox 3.x
Download one of the image files listed below. These older releases
are distributed as a `zip` file. Please extract all files from the
Click on an item to expand it
+ 7.8.0 -- 2 Feb 2015
+ * VM appliance based on the updated wheezy point release 7.8.0.
+ Should resolve problems with upgrades of the guest additions.
+
+ 7.4.20140423 -- 24 Apr 2014
+ * VM appliance based on the updated wheezy point release 7.4.
+ Should resolve problems with upgrades of the guest additions.
+ See http://neuro.debian.net/faq.html#comment-1351846812
+
+ 7.4.0 -- 28 Feb 2014
+ * VM appliance based on the official wheezy point release 7.4.
+
7.2.0 -- 03 Nov 2013
* VM appliance based on the official wheezy point release 7.2.
* Ships with updated neurodebian-* packages:
--- /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 et:
+
+# Depends: apt (assumed to be present), python, wget
+# Recommends: netselect
+
+# play safe
+set -e
+set -u
+
+############
+# Defaults #
+############
+
+nd_aptenable_version=0.1
+
+nd_key_id=0xA5D32F012649A5A9
+nd_config_url=https://raw.githubusercontent.com/neurodebian/neurodebian/master/neurodebian.cfg
+nd_config_file=/etc/neurodebian/neurodebian.cfg
+nd_mirror_origin=http://neuro.debian.net/debian
+nd_mirror_default=$nd_mirror_origin # or may be AWS?
+
+# To be set by cmdline args or via env variables with prefix NEURODEBIAN_
+ae_release=${NEURODEBIAN_RELEASE:-}
+ae_components=${NEURODEBIAN_COMPONENTS:-software,data}
+ae_flavor=${NEURODEBIAN_FLAVOR:-}
+ae_mirror=${NEURODEBIAN_MIRROR:-best}
+ae_suffix=${NEURODEBIAN_SUFFIX:-}
+ae_verbose=${NEURODEBIAN_VERBOSE:-1}
+ae_overwrite=${NEURODEBIAN_OVERWRITE:-}
+ae_sources=${NEURODEBIAN_SOURCES:-}
+ae_install=${NEURODEBIAN_INSTALL:-}
+ae_update=${NEURODEBIAN_UPDATE:-1}
+ae_dry_run=${NEURODEBIAN_DRY_RUN:-}
+ae_defun_only=${NEURODEBIAN_DEFUN_ONLY:-} # mode to source this file as a "library"
+
+ae_sudo=
+exe_dir=$(dirname $0)
+do_print_release=
+do_print_flavor=
+
+# TODOs:
+# - apt priority! (so we could avoid automagic upgrades etc)
+# - multiarch setups
+
+if [ -z "${NEURODEBIAN_TEMPDIR:-}" ]; then
+ ae_tempdir=$(mktemp -d)
+ trap "rm -rf \"$ae_tempdir\"" TERM INT EXIT
+else
+ # reuse the same directory/fetched configuration if was specified
+ ae_tempdir="${NEURODEBIAN_TEMPDIR:-}"
+fi
+
+
+nd_config_file_fresh="$ae_tempdir/neurodebian.cfg"
+
+print_verbose()
+{
+ level=$1; shift
+ if [ "$ae_verbose" -ge $level ]; then
+ # use stderr for printing within functions stdout of which might be used
+ echo -n "I: " >&2
+ i=1; while [ $i -lt $level ]; do echo -ne " ">&2; i=$(($i+1)); done
+ echo -e "$*" >&2
+ fi
+}
+
+error()
+{
+ code=$1; shift
+ echo -e "E: $*" >&2
+ exit $code
+}
+
+print_version()
+{
+ cat << EOT
+nd-configurerepo $nd_aptenable_version
+
+Copyright (C) 2014 Yaroslav Halchenko <debian@onerussian.com>
+
+Licensed under GNU Public License version 3 or later.
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+Written by Yaroslav Halchenko for the NeuroDebian project.
+
+EOT
+}
+
+eval_dry()
+{
+ if [ -z "$ae_dry_run" ]; then
+ if eval "$ae_sudo $@" 1>|"$ae_tempdir/eval.log" 2>&1; then
+ rm "$ae_tempdir/eval.log"
+ else
+ error $? "Command $@ failed with exit code $?. Output was: `cat $ae_tempdir/eval.log`"
+ fi
+ else
+ echo "DRY: $@" >&2
+ fi
+}
+
+print_help()
+{
+ cat << EOT
+
+Usage: nd-configurerepo [options]
+
+Enables NeuroDebian repository for the current Debian or Ubuntu release.
+
+Options:
+
+ -r, --release=RELEASE
+ Name of the Debian/Ubuntu release to be used. If not specified,
+ it is deduced from the 'apt-cache policy' output, by taking repository
+ of Debian or Ubuntu origin with highest priority.
+
+ --print-releases
+ Print a list of releases present in NeuroDebian repository.
+
+ --print-release
+ Print the release deduced from the output of apt-cache policy.
+
+ -f, --flavor=full|libre
+ Which flavor of the repository should be enabled:
+
+ libre Only 'main' component, containing only DFSG-compliant content.
+ full Includes 'main', 'contrib', and 'non-free'.
+
+ If not specified -- deduced from the output of apt-cache policy.
+
+ --print-flavor
+ Print the flavor deduced from the output of apt-cache policy.
+
+ -c, --components=c1,c2,c3
+ Comma separated list of components to enable among:
+
+ software primary software repository
+ data data packages
+ devel "overlay" of development versions (like Debians' "experimental").
+ Not sufficient on its own and available only from the main site
+
+ If not specified -- "software,data"
+
+ -m, --mirror=NAME|URL
+ Which mirror to use. Could be a mirror code-name (as specified in
+ /etc/neurodebian/neurodebian.cfg), or a URL.
+
+ --print-mirrors
+ Return a list (with abbreviation) of known NeuroDebian mirrors.
+
+ --overwrite,
+ If apt file already present, it would not be overridden (by default).
+ Use this option to overwrite.
+
+ --suffix=SUFFIX
+ Which suffix to add to the apt file, in case you are trying to enable
+ multiple repositories
+
+ --sources, --no-sources
+ Either to enable deb-src lines. If none specified -- would be enabled if
+ sources for a core package (apt) are available.
+
+ -n, --dry-run
+ Do not perform any changes -- generated configurations and commands will
+ simply be printed to stdout
+
+ --install
+ If found absent, all necessary tools (wget, netselect) if available will
+ be apt-get installed
+
+ -v, --verbose
+ Enable additional progress messages. Could be used multiple times
+
+ -q, --quiet
+ Make operation quiet -- only error messages would be output
+
+ -h, --help
+ Print short description, usage summary and option list.
+
+ --version
+ Print version information and exit.
+
+Exit status:
+
+ non-0 exit status in case of error.
+ Error exit code would depend on which command has failed.
+
+Examples:
+ nd-configurerepo
+ Enable software and data components from the optimal (according to
+ netselect) mirror. Some information about progress will be printed
+
+ nd-configurerepo -q --suffix=-devel -c devel
+ Quietly enable -devel repository for the current release, and place apt
+ configuration into /etc/apt/sources.list.d/neurodebian.sources-devel.list
+
+ nd-configurerepo -q --suffix=-de-sid-full -c software,data,devel -m jp
+ Force sid distribution, all the components, from the Japan mirror
+EOT
+}
+
+get_neurodebian_cfg()
+{
+ if [ -s "$nd_config_file_fresh" ]; then
+ print_verbose 3 "Config file $nd_config_file_fresh exists -- not fetching"
+ echo "$nd_config_file_fresh"
+ return 0
+ fi
+ # First we try to fetch the most recent version from the github
+ print_verbose 3 "Fetching config file from the github repository"
+ assure_command_from_package wget wget 1
+ wget --no-check-certificate -c -q -O$nd_config_file_fresh \
+ $nd_config_url \
+ && { echo "$nd_config_file_fresh"; } \
+ || { [ -e "$nd_config_file" ] \
+ && echo "$nd_config_file" \
+ || error 10 "Neither could fetch $nd_config_url, nor found $nd_config_file"; }
+}
+
+query_cfg_section()
+{
+ config_file="$1"
+ section="$2"
+ print_verbose 3 "Querying config $config_file section $section"
+ assure_command_from_package python python-minimal 1
+ python -c "from ConfigParser import SafeConfigParser as SP; cfg = SP(); cfg.read('$config_file'); print('\n'.join([' '.join(x) for x in cfg.items('$section')]))"
+}
+
+get_mirrors()
+{
+ nd_config=`get_neurodebian_cfg`
+# $exe_dir/nd_querycfg -F" " --config-file="$nd_config" "mirrors" \
+ n=""
+ query_cfg_section "$nd_config" "mirrors" \
+ | while read mirror_name mirror_url; do
+ # verify that url is just a url
+ if echo "$mirror_url" | grep -v -e '^[a-z0-9:+]*://[-+_%.a-z0-9/]*$'; then
+ print_verbose 1 "Mirror $mirror_name has 'illegit' URL: $mirror_url. Skipping"
+ fi
+ [ -z "$n" ] || echo -ne "${ND_IFS:-\n}"; n+=1
+ echo -n "$mirror_name $mirror_url"
+ done
+}
+
+get_releases()
+{
+ nd_config=`get_neurodebian_cfg`
+ n=""
+ query_cfg_section "$nd_config" "release files" \
+ | while read release_name release_url; do
+ # verify that url is just a url
+ if [ "$release_name" = "data" ]; then
+ # skip data
+ continue
+ fi
+ [ -z "$n" ] || echo -ne "${ND_IFS:-\n}"; n+=1
+ echo -n "$release_name"
+ done
+}
+
+get_package_version()
+{
+ pkg_version=$(apt-cache policy "$1" | awk '/^ *Installed:/{print $2;}')
+ [ "$pkg_version" != '(none)' ] || pkg_version=''
+ echo "$pkg_version"
+}
+
+netselect_mirror() {
+ # select "closest" mirror according to netselect.
+ print_verbose 2 "Selecting the 'best' mirror using netselect"
+ assure_command_from_package netselect
+ if ! which netselect >&/dev/null; then
+ print_verbose 1 "netselect (apt-get install netselect) needed to select the 'best' mirror was not found"
+ print_verbose 1 "Selecting the default repository: $nd_mirror_default"
+ echo $nd_mirror_default
+ else
+ # squeeze version doesn't have -D yet to force output of the URL not IP, but for our mirrors ATM it shouldn't matter
+ netselect_opts="-s 1"
+ netselect_version="$(get_package_version netselect)"
+ if dpkg --compare-versions "$netselect_version" ge 0.3.ds1-17; then
+ netselect_opts+=" -D"
+ fi
+ if dpkg --compare-versions "$netselect_version" ge 0.3.ds1-15; then
+ netselect_opts+=" -I"
+ fi
+ best_mirror=$(get_mirrors | awk '{print $2;}' | eval $ae_sudo xargs netselect $netselect_opts | awk '{print $2;}')
+ if [ -z "$best_mirror" ]; then
+ print_verbose 1 "Failed to select mirror using netselect. Selecting default one ($nd_mirror_default)"
+ echo "$nd_mirror_default"
+ else
+ print_verbose 2 "Best mirror: $best_mirror"
+ echo $best_mirror
+ fi
+ fi
+}
+
+get_mirror_url()
+{
+ # given mirror alias -- find its url
+ url=$(get_mirrors | awk "/^$1 /{print \$2;}")
+ if [ -z "$url" ]; then
+ error 9 "Cannot resolve mirror $1 to the URL"
+ fi
+ echo $url
+}
+
+get_apt_policy()
+{
+ # Get apt-cache policy output in a single list for matching suites
+ # (could be a separated with \| or , for multiple choices, e.g.
+ #
+ # get_apt_policy Debian,Ubuntu
+ # or
+ # get_apt_policy NeuroDebian
+ suites="$1"
+ $ae_sudo apt-cache policy | grep -B1 -e "o=\(${suites//,/\\|}\)" | tr '\n' ' ' | sed -e 's, -- ,\n,g' | grep -v -e '-\(updates\|security\)' | sort -nr
+}
+
+is_component_included()
+{
+ echo "$ae_components" | tr ',' '\n' | grep -q "^$1\$"
+}
+
+is_sources_enabled()
+{
+ apt-cache showsrc apt >&/dev/null && echo 1 || echo 0
+}
+
+assure_command_from_package()
+{
+ cmd=$1
+ pkg=${2:-$cmd}
+ fail=${3:-}
+
+ which "$cmd" >&/dev/null && return 0
+
+ # if absent -- check availability of the package
+ apt_cache=$(LANG=C apt-cache policy "$pkg" 2>&1)
+ if [[ "$apt_cache" =~ Unable\ to\ locate\ package ]] || [[ "$apt_cache" =~ Candidate:\ (none) ]] \
+ || [[ "$apt_cache" =~ is\ not\ available ]] ; then
+ print_verbose 1 "Package $pkg providing command $cmd is N/A. Skipping"
+ return 10;
+ fi
+ if echo "$apt_cache" | grep -q '^\s*\*\*\*'; then
+ print_verbose 1 "WARNING -- command $cmd is N/A but package $pkg is claimed to be installed"
+ [ -z "$fail" ] && return 11 || error $fail "Command $cmd is required to proceed"
+ fi
+ if [ "$ae_install" = "1" ]; then
+ print_verbose 1 "Installing $pkg package to get $cmd command"
+ eval_dry DEBIAN_FRONTEND=noninteractive apt-get install -y "$pkg"
+ return
+ else
+ print_verbose 1 "Command $cmd (from package $pkg) is N/A."
+ print_verbose 1 "Use with --install to get all necessary packages installed automatically"
+ [ -z "$fail" ] && return 12 || error $fail "Command $cmd is required to proceed"
+ fi
+}
+
+# if it was requested -- return without doing anything
+[ -z "$ae_defun_only" ] || return
+
+#
+# Commandline options handling
+#
+
+# Parse commandline options (taken from the getopt examples from the Debian util-linux package)
+# Note that we use `"$@"' to let each command-line parameter expand to a
+# separate word. The quotes around `$@' are essential!
+# We need CLOPTS as the `eval set --' would nuke the return value of getopt.
+CLOPTS=`getopt -o h,r:,m:,f:,c:,q,v,n --long help,version,quiet,verbose,mirror:,release:,flavor:,components:,suffix:,overwrite,sources,no-sources,install,dry-run,do-not-update,print-releases,print-release,print-mirrors,print-best-mirror,print-flavor -n 'nd-configurerepo' -- "$@"`
+
+if [ $? != 0 ] ; then
+ error 2 "Problem with parsing cmdline. Terminating..."
+fi
+
+# Note the quotes around `$CLOPTS': they are essential!
+eval set -- "$CLOPTS"
+
+if [ `whoami` != "root" ]; then
+ ae_sudo=sudo
+fi
+
+while true ; do
+ case "$1" in
+ -r|--release) shift; ae_release="$1"; shift;;
+ -f|--flavor) shift; ae_flavor="$1"; shift;;
+ -c|--components) shift; ae_components="$1"; shift;;
+ -m|--mirror) shift; ae_mirror="$1"; shift;;
+ --print-mirrors) get_mirrors; exit 0;;
+ --print-best-mirror) netselect_mirror; exit 0;;
+ --print-releases) get_releases; exit 0;;
+ --print-release) do_print_release=1; shift;;
+ --print-flavor) do_print_flavor=1; shift;;
+ -n|--dry-run) ae_dry_run=1; shift;;
+ --suffix) shift; ae_suffix="$1"; shift;;
+ --overwrite) ae_overwrite="$1"; shift;;
+ --do-not-update) ae_update=""; shift;;
+ --sources) ae_sources=1; shift;;
+ --no-sources) ae_sources=0; shift;;
+ --install) ae_install=1; shift;;
+ -q|--quiet) ae_verbose=0; shift;;
+ -v|--verbose) ae_verbose=$(($ae_verbose+1)); shift;;
+ -h|--help) print_help; exit 0;;
+ --version) print_version; exit 0;;
+ --) shift ; break ;;
+ *) error 1 "Internal error! ($1)";;
+ esac
+done
+
+
+if [ $# -gt 0 ] ; then
+ print_help >&2
+ exit 2
+fi
+
+# Inform!
+[ -z "$ae_sudo" ] || print_verbose 1 "This script requires root access. Since current user is not root, sudo will be used"
+
+#
+# Basic system/environment knowledge
+#
+
+ae_output_file=/etc/apt/sources.list.d/neurodebian.sources${ae_suffix}.list
+
+apt_policy=$(get_apt_policy "Debian,Ubuntu" )
+
+if [ -z "$ae_release" ]; then
+ ae_release=$(echo "$apt_policy" | head -1 | sed -e 's/.*,n=\([^,]*\),.*/\1/g')
+ if [ ! -z "$do_print_release" ]; then
+ echo $ae_release
+ exit 0
+ fi
+fi
+
+if [ -z "$ae_flavor" ]; then
+ ae_flavor=$(echo "$apt_policy" | grep -e ",n=$ae_release," | grep -qe 'c=\(non-free\|multiverse\)' && echo "full" || echo "libre")
+ if [ ! -z "$do_print_flavor" ]; then
+ echo $ae_flavor
+ exit 0
+ fi
+fi
+
+#
+# Determine which mirror to use
+#
+
+# knowing mirror is not necessary for -devel available only from the main site
+if is_component_included software || is_component_included data; then
+ # for now just use default
+ if [ -z "$ae_mirror" ]; then # none specified
+ ae_mirror_url=$nd_mirror_origin
+ else
+ if ! [[ "$ae_mirror" =~ .*://.* ]]; then
+ case "$ae_mirror" in
+ best) ae_mirror_url=$(netselect_mirror);;
+ default) ae_mirror_url=$nd_mirror_default;;
+ origin) ae_mirror_url=$nd_mirror_origin;;
+ *) ae_mirror_url=$(get_mirror_url "$ae_mirror");;
+ esac
+ else
+ ae_mirror_url="$ae_mirror" # it was some kind of a URL already
+ fi
+ fi
+fi
+
+#
+# Prepare APT file
+#
+
+case $ae_flavor in
+ full) apt_flavor="contrib non-free";;
+ libre) apt_flavor="";;
+ *) error 5 "Unknown value of flavor $apt_flavor. Must be full or libre"
+esac
+
+if [ -z "$ae_sources" ]; then
+ ae_sources=$(is_sources_enabled)
+fi
+
+if [ $ae_sources -eq 0 ]; then
+ sources_comment="#"
+else
+ sources_comment=""
+fi
+
+apt_list=
+
+if is_component_included software; then
+ apt_list+="
+# NeuroDebian software repository
+deb $ae_mirror_url $ae_release main $apt_flavor
+${sources_comment}deb-src $ae_mirror_url $ae_release main $apt_flavor
+"
+fi
+
+if is_component_included data; then
+ apt_list+="
+# NeuroDebian data repository
+deb $ae_mirror_url data main $apt_flavor
+${sources_comment}deb-src $ae_mirror_url data main $apt_flavor
+"
+fi
+
+if is_component_included devel; then
+ apt_list+="
+# NeuroDebian -devel repository
+deb http://neuro.debian.net/debian-devel $ae_release main $apt_flavor
+${sources_comment}deb-src http://neuro.debian.net/debian-devel $ae_release main $apt_flavor
+"
+fi
+
+if [ -e "$ae_output_file" ] && [ -z "$ae_overwrite" ]; then
+ if diff "$ae_output_file" <(echo "$apt_list") | grep -q .; then
+ # error 3
+ print_verbose 1 "File $ae_output_file already exists, containing:\n`cat \"$ae_output_file\"`\n\nI: New configuration is different:\n$apt_list"
+ if get_apt_policy NeuroDebian >/dev/null; then
+ print_verbose 1 "NeuroDebian repositories are already available, thus skipping the rest."
+ print_verbose 1 "Rerun with --overwrite if you would like to reconfigure."
+ exit 0
+ else
+ print_verbose 1 "NeuroDebian configuration is found but not yet available -- continuing with new configuration."
+ fi
+ else
+ print_verbose 1 "New configuration is identical to existing and NeuroDebian repository is already enabled."
+ print_verbose 1 "Skiping the rest. Rerun with --overwrite if you would like to reconfigure."
+ exit 0
+ fi
+else
+ print_verbose 1 "Generating $ae_output_file"
+ if [ -z "$ae_dry_run" ]; then
+ echo "$apt_list" | $ae_sudo bash -c "cat - >| '$ae_output_file'"
+ else
+ echo "DRY:"
+ echo "$apt_list"
+ fi
+fi
+
+
+#
+# Assure present archive GPG key for APT system
+#
+
+# Figure out if key needs to be imported (if ran within package,
+# should already be there due to neurodebian-archive-keyring package)
+if LANG=C eval $ae_sudo apt-key export $nd_key_id 2>&1 1>/dev/null | grep -qe "nothing exported"; then
+ print_verbose 1 "Fetching the key from the server"
+ eval_dry apt-key adv --recv-keys --keyserver pgp.mit.edu $nd_key_id
+fi
+
+
+#
+# Finalizing (apt-get update etc)
+#
+
+if [ ! -z "$ae_update" ]; then
+ print_verbose 1 "Updating APT listings, might take a few minutes"
+ if [ -z "$ae_dry_run" ]; then
+ apt_logfile="$ae_tempdir/apt.log"
+ $ae_sudo apt-get update 1>"$apt_logfile" 2>&1 \
+ && rm -f "$apt_logfile" \
+ || {
+ apt_log=$(cat "$apt_logfile")
+ echo "$apt_log"
+ if echo "$apt_log" | grep -q "Malformed line [0-9]* in source list $ae_output_file"; then
+ $ae_sudo mv "${ae_output_file}" "${ae_output_file}-failed.disabled"
+ error 6 "Update failed to possible errorneous APT listing file produced by this script. Generated $ae_output_file renamed to ${ae_output_file}-failed.disabled to not interfer"
+ fi
+ error 5 "Update failed with exit code $? (above output logged into $apt_logfile)."
+ }
+ else
+ eval_dry apt-get update
+ fi
+else
+ print_verbose 1 "apt-get update was not run. Please run to take an effect of changes"
+fi
+
+if [ "$ae_verbose" -ge 2 ]; then
+ print_verbose 2 "Currently enabled NeuroDebian suites/mirrors:"
+ get_apt_policy NeuroDebian
+fi
fi
# initialize apt
-update-manager -c
-
-sudo update-software-center --debug 2>&1 | \
- zenity $icon_opt --title="Updating Software Center Repository" \
- --progress --pulsate --auto-close --auto-kill
+#
+# update-manager (from update-manager-gnome) and
+# update-software-center (from software-center)
+# are present only in wheezy
+if which update-manager > /dev/null; then update-manager -c; fi
+
+if which update-software-center > /dev/null; then
+ sudo update-software-center --debug 2>&1 | \
+ zenity $icon_opt --title="Updating Software Center Repository" \
+ --progress --pulsate --auto-close --auto-kill;
+else
+ sudo apt-get update 2>&1 | \
+ zenity $icon_opt --title="Running apt-get update" \
+ --progress --pulsate --auto-close --auto-kill;
+fi
popconf=/etc/popularity-contest.conf
if [ ! -e "$popconf" ] || grep -q -e '^PARTICIPATE.*no' "$popconf" ;
--components "$components" \
--mirror "$mirror" \
--debootstrapopts --arch=$a \
- --othermirror "${updates_apt}deb http://neuro.debian.net/debian $dist main contrib non-free"
+ --othermirror "${updates_apt}deb http://neuro.debian.net/debian $dist main contrib non-free | deb http://neuro.debian.net/debian data main contrib non-free"
# deploy our key manually since archive with package is not yet
# available at this point
mkdir -p ${cow}/etc/apt/trusted.gpg.d
'quantal': 'Ubuntu 12.10 "Quantal Quetzal" (quantal)',
'raring': 'Ubuntu 13.04 "Raring Ringtail" (raring)',
'saucy': 'Ubuntu 13.10 "Saucy Salamander" (saucy)',
+ 'trusty': 'Ubuntu 14.04 "Trusty Tahr" (trusty)',
}
Synopsis
--------
- nd_build <family> <codename> <arch> [bindmountdir] [cowbuilderopts]
+ nd_login <family> <codename> <arch> [bindmountdir] [cowbuilderopts]
EOT
exit 1
# on the neuro.debian.net side
# filtered out incoming from pkgs with versions in official distribution
-for c in *changes; do pkg_ver=`grep '\.deb$' $c | head -1 | sed -e 's,.* \([^_]*\)_\(.*\)_.*,\1 \2,g'`; echo $pkg_ver; done | uniq | while read p v; do uver=$(whohas -D Ubuntu --strict $p | grep '/precise/' | awk '{print $3;}'); dpkg --compare-versions $v lt "$uver" && echo $c $p $v $uver; done 2>&1 | tee up-to-date-list.txt
+for c in *changes; do pkg_ver=`grep '\.deb$' $c | head -1 | sed -e 's,.* \([^_]*\)_\(.*\)_.*,\1 \2,g'`; echo $pkg_ver; done | uniq | while read p v; do uver=$(whohas -D Ubuntu --strict $p | grep "/$dist/" | awk '{print $3;}'); dpkg --compare-versions $v lt "$uver" && echo $c $p $v $uver; done 2>&1 | tee up-to-date-list.txt
# and moved corresponding changelogs away
mv `awk '{print $1,$2;}' up-to-date-list.txt | while read p v; do grep -l "${p}_${v}" *changes; done | sort | uniq` NOT_UPLOADED/
# And build which previously failed, most probably due to unsatisfied dependencies
# and possibly failure with outdated versions of 3rd party modules
#grep -v OLD summary.build | grep FAILED | sed -e 's,_\(i386\|amd64\).build.*,,g' | sort | uniq | while read p; do sudo nd_build nd+ubuntu precise $p.dsc; done
-grep -v -e OLD -e networkx summary.build | grep FAILED | sed -e 's,_\(i386\|amd64\).build.*,,g' | sort | uniq | while read p; do sudo nd_build nd+ubuntu precise $p.dsc; done
+grep -v -e OLD -e networkx summary.build | grep FAILED | sed -e 's,_\(i386\|amd64\).build.*,,g' | sort | uniq | while read p; do sudo nd_build nd+ubuntu $dist $p.dsc; done
--- /dev/null
+#!/bin/bash
+
+# A universal helper to enable NeuroDebian repository for a travis
+# environment.
+#
+# Its purpose to remove all repetative actions from various .travis.yml spread
+# across projects and gain control in the future to point to an alternative,
+# more appropriate for travis deployments, mirror.
+
+# for the protocol
+set -xe
+
+# Update packaging
+sudo apt-get update -qq
+
+# To troubleshoot failing connections to neurodebian
+sudo apt-get install net-tools traceroute coreutils
+sudo traceroute -T neuro.debian.net
+echo "Request non-existing uniq file to ease tracking this connection (for troubleshooting)"
+echo "Date: `date` Seed: $rseed"
+rseed=$RANDOM
+wget -q -O- http://neuro.debian.net/_files/neurodebian-travis.sh-$RANDOM-repo:$TRAVIS_REPO_SLUG-job:$TRAVIS_JOB_NUMBER || :
+
+# Figure out what Ubuntu release travis environment is based on
+sudo apt-get install lsb-release
+cat /etc/lsb-release
+source /etc/lsb-release
+
+# Fetch the apt sources for the currently preferred mirror
+wget -O- http://neuro.debian.net/lists/${DISTRIB_CODENAME}.us-nh.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
+wget -O- http://neuro.debian.net/lists/${DISTRIB_CODENAME}.de-md.full | sudo tee -a /etc/apt/sources.list.d/neurodebian.sources.list
+sudo apt-key adv --recv-keys --keyserver pgp.mit.edu 2649A5A9 \
+ || { wget -q -O- http://neuro.debian.net/_static/neuro.debian.net.asc | sudo apt-key add -; }
+sudo apt-get update -qq
+
+# And provide a summary over which repositories are currently available
+sudo apt-cache policy # What is actually available?
--- /dev/null
+#!/bin/bash
+
+set -u
+test=$1
+
+docker.io images 2>&1 | grep -e "\(debian\|ubuntu\)[ ]*[0-9]" | sort | awk '{print $1,$2;}' \
+| while read d v; do
+ echo "== $d $v"
+ chronic docker.io run --rm=true -v $PWD:$PWD $d:$v /bin/bash $PWD/$test
+done
--- /dev/null
+#/bin/bash
+set -ex
+
+# minimal installation with few of those packages
+apt_file=/etc/apt/sources.list.d/local.list
+apt_nd_file=/etc/apt/sources.list.d/neurodebian.sources.list
+
+# clean up from a previous test
+dpkg --purge neurodebian neurodebian-archive-keyring || :
+echo PURGE | debconf-communicate neurodebian || :
+rm -rf /tmp/apt $apt_file;
+
+mkdir -p /tmp/apt; cd /tmp/apt;
+rm -f neurodebian-*deb; apt-get update -y; apt-get install -y wget;
+wget http://www.onerussian.com/tmp/neurodebian_0.34_all.deb;
+wget http://www.onerussian.com/tmp/neurodebian-archive-keyring_0.34_all.deb;
+
+# generate APT repo
+apt-get install -y dpkg-dev ; dpkg-scanpackages . /dev/null > Packages
+# Add it to the list of available
+echo "deb file:///tmp/apt ./" >| $apt_file; apt-get update
+# Install the beast
+DEBIAN_FRONTEND=noninteractive apt-get install -y --allow-unauthenticated neurodebian
+# By default should not get enabled
+[ ! -e "$apt_nd_file" ]
+
+DEBIAN_FRONTEND=noninteractive NEURODEBIAN_ENABLE=yes apt-get install -y --allow-unauthenticated --reinstall neurodebian
+
+# Verify that it has correct entries
+# Very cruel way to figure out the default release. Would fail if
+# options, such as multiarch, are specified after deb
+release=$(grep -e '^\s*deb\s' /etc/apt/sources.list | head -1 | awk '{print $3;}')
+grep -E "^deb\s+http.* $release main\s*\$" $apt_nd_file
+grep -E '^deb\s+http.* data main\s*$' $apt_nd_file
+# May be even retrospect stored debconf configuration
+apt-get install debconf-utils
+debconf-get-selections | grep neurodebian/release.*select.*auto
+# And apt-get must be working
+apt-get update
+# Make sure it is active
+apt-cache policy | grep o=NeuroDebian,.*,n=data
+apt-cache policy | grep o=NeuroDebian,.*,n=$release
+
+# Now lets remove
+dpkg --purge neurodebian
+[ ! -e $apt_nd_file ]
+apt-cache policy | grep o=NeuroDebian && exit 1 || :
+
+echo "I: success"
gpg --keyserver hkp://subkeys.pgp.net --recv-keys 16BA136C && \
gpg --export 16BA136C | apt-key add - || :
-apt-get install -y --allow-unauthenticated neurodebian-keyring
+apt-get install -y --allow-unauthenticated neurodebian-archive-keyring
apt-get update -y
# to cheat the VM check
gpg --keyserver hkp://subkeys.pgp.net --recv-keys 16BA136C && \
gpg --export 16BA136C | apt-key add - || :
-apt-get install -y --allow-unauthenticated neurodebian-keyring
+apt-get install -y --allow-unauthenticated neurodebian-archive-keyring
apt-get update -y
# to cheat the VM check
software-center synaptic menu less libxp6 \
task-xfce-desktop lightdm zenity \
chromium-browser \
- sudo neurodebian-desktop update-notifier
+ sudo neurodebian-desktop update-notifier \
+ bc
+
+# Assure having xfce4 terminal and it being default one and other handy
+# XFCE4 components
+apt-get install -y xfce4-terminal thunar-archive-plugin
+apt-get install --no-install-recommends -y gedit yelp
-# Assure having xfce4 terminal and it being default one
-apt-get install -y xfce4-terminal
# Do not even try to deal with alternatives -- it will be the one and would puke
# update-alternatives --set x-terminal-emulator /usr/bin/xfce4-terminal
build_dir=$PWD/build
dist_dir=$PWD/dist
vendor="NeuroDebian"
-vm_version="7.2.0"
+vm_version="7.8.0"
vm_ostype=Debian
vendor_url="http://neuro.debian.net"
product_url="${vendor_url}/vm.html"