[med-svn] [paleomix] 02/04: Initial packaging

Andreas Tille tille at debian.org
Tue Feb 14 15:37:18 UTC 2017


This is an automated email from the git hooks/post-receive script.

tille pushed a commit to branch master
in repository paleomix.

commit 63924eea9fe9939e33ad6ca8458b001f34a2e397
Author: Andreas Tille <tille at debian.org>
Date:   Tue Feb 14 16:02:09 2017 +0100

    Initial packaging
---
 debian/changelog                                   |  5 ++
 debian/compat                                      |  1 +
 debian/control                                     | 54 ++++++++++++++++++++++
 debian/copyright                                   | 39 ++++++++++++++++
 .../patches/avoid_downloading_prerequisites.patch  | 19 ++++++++
 debian/patches/fix_makefile_test.patch             | 32 +++++++++++++
 debian/patches/series                              |  3 ++
 debian/patches/work_around_os.getlogin.patch       | 35 ++++++++++++++
 debian/rules                                       | 10 ++++
 debian/source/format                               |  1 +
 debian/upstream/metadata                           | 11 +++++
 debian/watch                                       |  3 ++
 12 files changed, 213 insertions(+)

diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..98df5a2
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,5 @@
+paleomix (1.2.7-1) UNRELEASED; urgency=medium
+
+  * Initial release (Closes: #<bug>)
+
+ -- Andreas Tille <tille at debian.org>  Tue, 14 Feb 2017 12:04:19 +0100
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..f599e28
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+10
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..2d6e5fc
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,54 @@
+Source: paleomix
+Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
+Uploaders: Andreas Tille <tille at debian.org>
+Section: science
+Priority: optional
+Build-Depends: debhelper (>= 10),
+               dh-python,
+               python,
+               python-setuptools,
+               python-coverage,
+               python-flexmock,
+               python-nose,
+               python-pysam,
+               python-setproctitle,
+               default-jre-headless,
+               bowtie2
+Standards-Version: 3.9.8
+Vcs-Browser: https://anonscm.debian.org/cgit/debian-med/paleomix.git
+Vcs-Git: https://anonscm.debian.org/git/debian-med/paleomix.git
+Homepage: http://geogenetics.ku.dk/publications/paleomix
+
+Package: paleomix
+Architecture: all
+Depends: ${misc:Depends},
+         ${python:Depends},
+         adapterremoval,
+         bedtools,
+         bowtie2,
+         bwa,
+         bcftools,
+         mafft,
+         mapdamage,
+         phylip,
+         picard-tools,
+         raxml,
+         samtools
+Suggests: examl
+Description: pipelines and tools for the processing of ancient and modern HTS data
+ The PALEOMIX pipelines are a set of pipelines and tools designed to aid
+ the rapid processing of High-Throughput Sequencing (HTS) data: The BAM
+ pipeline processes de-multiplexed reads from one or more samples,
+ through sequence processing and alignment, to generate BAM alignment
+ files useful in downstream analyses; the Phylogenetic pipeline carries
+ out genotyping and phylogenetic inference on BAM alignment files, either
+ produced using the BAM pipeline or generated elsewhere; and the Zonkey
+ pipeline carries out a suite of analyses on low coverage equine
+ alignments, in order to detect the presence of F1-hybrids in
+ archaeological assemblages. In addition, PALEOMIX aids in metagenomic
+ analysis of the extracts.
+ .
+ The pipelines have been designed with ancient DNA (aDNA) in mind, and
+ includes several features especially useful for the analyses of ancient
+ samples, but can all be for the processing of modern samples, in order
+ to ensure consistent data processing.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..4dbaa05
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,39 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: PALEOMIX
+Upstream-Contact: https://github.com/MikkelSchubert/paleomix/issues
+Source: https://github.com/MikkelSchubert/paleomix/releases
+
+Files: *
+Copyright: 2014-2017 Mikkel Schubert
+License: MIT
+
+Files: paleomix/yaml/*
+Copyright: 2006-2011 Kirill Simonov
+License: MIT
+Comment: This copy of yaml contains a few patches compared to the
+ Debian packaged version of yaml.  Its not fully clear whether this is
+ really needed.
+ TODO: Ask upstream to forward the changes to pyyaml upstream
+
+Files: debian/*
+Copyright: 2017 Andreas Tille <tille at debian.org>
+License: MIT
+
+License: MIT
+ 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 without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included in all
+ copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN 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.
diff --git a/debian/patches/avoid_downloading_prerequisites.patch b/debian/patches/avoid_downloading_prerequisites.patch
new file mode 100644
index 0000000..3b46861
--- /dev/null
+++ b/debian/patches/avoid_downloading_prerequisites.patch
@@ -0,0 +1,19 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: Tue, 14 Feb 2017 12:04:19 +0100
+Description: Clean target tries to download python-coverage - just avoid this
+
+--- a/setup.py
++++ b/setup.py
+@@ -82,9 +82,9 @@ setup(
+                       'setproctitle>=1.1.0'],
+ 
+     # Dependencies set in setup_requires to allow use of 'setup.py nosetests'
+-    setup_requires=['nose>=1.3.0',
+-                    'flexmock>=0.9.7',
+-                    'coverage>=4.0.0'],
++#    setup_requires=['nose>=1.3.0',
++#                    'flexmock>=0.9.7',
++#                    'coverage>=4.0.0'],
+ 
+     test_suite='nose.collector',
+ 
diff --git a/debian/patches/fix_makefile_test.patch b/debian/patches/fix_makefile_test.patch
new file mode 100644
index 0000000..c2302b4
--- /dev/null
+++ b/debian/patches/fix_makefile_test.patch
@@ -0,0 +1,32 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: Tue, 14 Feb 2017 12:04:19 +0100
+Description: Avoid test failure
+ ======================================================================
+ FAIL: common_tests.makefile_test.test_read_makefile__missing_simple_file
+ ----------------------------------------------------------------------
+ Traceback (most recent call last):
+   File "/usr/lib/python2.7/dist-packages/nose/case.py", line 197, in runTest
+     self.test(*self.arg)
+   File "/build/paleomix-1.2.7/.pybuild/pythonX.Y_2.7/build/tests/common_tests/makefile_test.py", line 1650, in test_read_makefile__missing_simple_file
+     assert_equal(expected, result)
+ AssertionError: {'Statistics': {'MTime': '2005-07-07 08:50:00', 'Hash': '563a2052b67dcde9f193fbe [truncated]... != {'Statistics': {'MTime': '2005-07-07 06:50:00', 'Hash': '563a2052b67dcde9f193fbe [truncated]...
+   {'Makefile': {'Defaults': {'First': 0.0001, 'Second': 'a string'}},
+    'Statistics': {'Filename': '/build/paleomix-1.2.7/.pybuild/pythonX.Y_2.7/build/tests/data/simple.yaml',
+                   'Hash': '563a2052b67dcde9f193fbe8d51fa2b6f0806505',
+ -                 'MTime': '2005-07-07 08:50:00'}}
+ ?                                       ^
+ 
+ +                 'MTime': '2005-07-07 06:50:00'}}
+ ?                                       ^
+
+--- a/tests/common_tests/makefile_test.py
++++ b/tests/common_tests/makefile_test.py
+@@ -1643,7 +1643,7 @@ def test_read_makefile__missing_simple_f
+         "Statistics": {
+             "Filename": test_file("simple.yaml"),
+             "Hash": "563a2052b67dcde9f193fbe8d51fa2b6f0806505",
+-            "MTime": "2005-07-07 08:50:00",
++            "MTime": "2005-07-07 06:50:00",
+         }
+     }
+     result = read_makefile(test_file("simple.yaml"), specs)
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..c186495
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,3 @@
+avoid_downloading_prerequisites.patch
+fix_makefile_test.patch
+work_around_os.getlogin.patch
diff --git a/debian/patches/work_around_os.getlogin.patch b/debian/patches/work_around_os.getlogin.patch
new file mode 100644
index 0000000..34378b8
--- /dev/null
+++ b/debian/patches/work_around_os.getlogin.patch
@@ -0,0 +1,35 @@
+Author: Andreas Tille <tille at debian.org>
+Last-Update: Tue, 14 Feb 2017 12:04:19 +0100
+Description: Avoid test failures
+ ======================================================================
+ ERROR: Failure: OSError ([Errno 25] Inappropriate ioctl for device)
+ ----------------------------------------------------------------------
+ Traceback (most recent call last):
+  File "/usr/lib/python2.7/dist-packages/nose/loader.py", line 418, in loadTestsFromName
+    addr.filename, addr.module)
+  File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 47, in importFromPath
+    return self.importFromDir(dir_path, fqname)
+  File "/usr/lib/python2.7/dist-packages/nose/importer.py", line 94, in importFromDir
+    mod = load_module(part_fqname, fh, filename, desc)
+  File "/build/paleomix-1.2.7/.pybuild/pythonX.Y_2.7/build/tests/atomiccmd_test/command_test.py", line 164, in <module>
+    @with_temp_folder
+  File "paleomix/common/testing.py", line 49, in with_temp_folder
+    temp_root = os.path.join(tempfile.gettempdir(), os.getlogin())
+ OSError: [Errno 25] Inappropriate ioctl for device
+
+--- a/paleomix/common/testing.py
++++ b/paleomix/common/testing.py
+@@ -46,7 +46,12 @@ def with_temp_folder(func):
+     Creates a unique temporary folder before running 'func'. The
+     function is is assumed to take at least one parameter, the first
+     of which is assumed to represent the temporary folder."""
+-    temp_root = os.path.join(tempfile.gettempdir(), os.getlogin())
++    try:
++        os_getlogin=os.getlogin()
++    except OSError: # see https://stackoverflow.com/questions/3100750/running-command-in-background
++        import pwd
++        os_getlogin=pwd.getpwuid(os.getuid()).pw_name
++    temp_root = os.path.join(tempfile.gettempdir(), os_getlogin)
+     make_dirs(temp_root) # Ensure that this subdirectory exists
+ 
+     @nose.tools.istest
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..101e20b
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,10 @@
+#!/usr/bin/make -f
+
+# DH_VERBOSE := 1
+export LC_ALL=C.UTF-8
+
+%:
+	dh $@ --with python2 --buildsystem=pybuild
+
+override_dh_auto_test:
+	PATH=$(CURDIR)/bin/:$(PATH) dh_auto_test
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/upstream/metadata b/debian/upstream/metadata
new file mode 100644
index 0000000..6e97877
--- /dev/null
+++ b/debian/upstream/metadata
@@ -0,0 +1,11 @@
+Reference:
+  Author: Mikkel Schubert and Luca Ermini and Clio Der Sarkissian and Hákon Jónsson and Aurélien Ginolhac and Robert Schaefer and Michael D Martin and Ruth Fernández and Martin Kircher and Molly McCue and Eske Willerslev and Ludovic Orlando
+  Title: "Characterization of ancient and modern genomes by SNP detection and phylogenomic and metagenomic analysis using PALEOMIX"
+  Journal: Nature Protocols
+  Year: 2014
+  Volume: 9
+  Number: 5
+  Pages: 1056-82
+  DOI: 10.1038/nprot.2014.063
+  PMID: 24722405
+  URL: http://www.nature.com/nprot/journal/v9/n5/full/nprot.2014.063.html
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..5556144
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,3 @@
+version=4
+
+https://github.com/MikkelSchubert/paleomix/releases .*/archive/v(\d[\d.-]+)\.(?:tar(?:\.gz|\.bz2)?|tgz)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-med/paleomix.git



More information about the debian-med-commit mailing list