-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsetup.py
50 lines (46 loc) · 1.77 KB
/
setup.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# setup.py
import os
from pathlib import Path
from setuptools import setup, find_packages
from setuptools.command.install import install
class PostInstallCommand(install):
"""Post-installation for installation mode."""
def run(self):
# Calling install.run(self) first will run the standard installation steps
install.run(self)
# Grant executable permissions to the clustalo executable
Path(__file__).parent.joinpath('seqres2atmseq', 'assets', 'clustalo').chmod(0o755)
Path(__file__).parent.joinpath('seqres2atmseq', 'assets', 'clustaloMac').chmod(0o755)
Path(__file__).parent.joinpath('seqres2atmseq', 'assets', 'clustalo-1.2.4-Ubuntu-x86_64').chmod(0o755)
Path(__file__).parent.joinpath('seqres2atmseq', 'assets', 'clustal-omega-1.2.3-macosx').chmod(0o755)
setup(
name='seqres2atmseq',
version='0.1',
packages=find_packages(),
# include non-python files
package_data={
'seqres2atmseq': [
'assets/clustalo',
'assets/clustalo-1.2.4-Ubuntu-x86_64',
'assets/clustaloMac',
'assets/clustal-omega-1.2.3-macosx',
]
},
entry_points={
'console_scripts': [
'seqres2atmseq=seqres2atmseq.app:main', # invoke the main function in seqres2atmseq/app.py
],
},
# Add other necessary information like author, URL, dependencies, etc.
cmdclass={
'install': PostInstallCommand,
},
author='ChuNan Liu',
author_email='[email protected]',
description='Align PDB ATOM sequence (ATMSEQ) to SEQRES, and output a mask string mapping residues from SEQRES to ATMSEQ.',
# add dependency packages
install_requires=[
'loguru>=0.7.2',
'biopython>=1.01',
],
)