install python package with setuptools
This commit is contained in:
		
							parent
							
								
									ce60915fb0
								
							
						
					
					
						commit
						6f4951d08a
					
				
							
								
								
									
										5
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								Makefile
									
									
									
									
									
								
							| @ -44,7 +44,7 @@ clean: | ||||
| 	make -C qmemman clean | ||||
| 
 | ||||
| all: | ||||
| 	make all -C qubes | ||||
| 	python setup.py build | ||||
| #	make all -C tests
 | ||||
| 	# Currently supported only on xen | ||||
| ifeq ($(BACKEND_VMM),xen) | ||||
| @ -58,8 +58,7 @@ ifeq ($(OS),Linux) | ||||
| 	$(MAKE) install -C linux/aux-tools | ||||
| 	$(MAKE) install -C linux/system-config | ||||
| endif | ||||
| 	$(MAKE) install -C qvm-tools | ||||
| 	$(MAKE) install -C qubes | ||||
| 	python setup.py install -O1 --skip-build --root $(DESTDIR) | ||||
| #	$(MAKE) install -C tests
 | ||||
| 	$(MAKE) install -C relaxng | ||||
| ifeq ($(BACKEND_VMM),xen) | ||||
|  | ||||
| @ -1,83 +0,0 @@ | ||||
| OS ?= Linux | ||||
| 
 | ||||
| PYTHON_QUBESPATH = $(PYTHON_SITEPATH)/qubes | ||||
| SETTINGS_SUFFIX = $(BACKEND_VMM)-$(OS) | ||||
| 
 | ||||
| all: | ||||
| 	python -m compileall . | ||||
| 	python -O -m compileall . | ||||
| 
 | ||||
| install: | ||||
| ifndef PYTHON_SITEPATH | ||||
| 	$(error PYTHON_SITEPATH not defined) | ||||
| endif | ||||
| 	mkdir -p $(DESTDIR)$(PYTHON_QUBESPATH) | ||||
| 	mkdir \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/vm \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/storage \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tools \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/ext \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tests \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tests/vm \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tests/tools | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		__init__.py* \
 | ||||
| 		_pluginloader.py* \
 | ||||
| 		config.py* \
 | ||||
| 		dochelpers.py* \
 | ||||
| 		events.py* \
 | ||||
| 		log.py* \
 | ||||
| 		plugins.py* \
 | ||||
| 		rngdoc.py* \
 | ||||
| 		utils.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH) | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		vm/__init__.py* \
 | ||||
| 		vm/adminvm.py* \
 | ||||
| 		vm/appvm.py* \
 | ||||
| 		vm/dispvm.py* \
 | ||||
| 		vm/hvm.py* \
 | ||||
| 		vm/netvm.py* \
 | ||||
| 		vm/proxyvm.py* \
 | ||||
| 		vm/qubesvm.py* \
 | ||||
| 		vm/templatehvm.py* \
 | ||||
| 		vm/templatevm.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/vm | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		storage/__init__.py* \
 | ||||
| 		storage/xen.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/storage | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		tools/__init__.py* \
 | ||||
| 		tools/qubes_create.py* \
 | ||||
| 		tools/qvm_create.py* \
 | ||||
| 		tools/qvm_ls.py* \
 | ||||
| 		tools/qvm_prefs.py* \
 | ||||
| 		tools/qvm_start.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tools | ||||
| 
 | ||||
| 	cp ext/__init__.py* $(DESTDIR)$(PYTHON_QUBESPATH)/ext | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		tests/__init__.py* \
 | ||||
| 		tests/events.py* \
 | ||||
| 		tests/init.py* \
 | ||||
| 		tests/run.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tests | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		tests/vm/__init__.py* \
 | ||||
| 		tests/vm/init.py* \
 | ||||
| 		tests/vm/adminvm.py* \
 | ||||
| 		tests/vm/qubesvm.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tests/vm | ||||
| 
 | ||||
| 	cp \
 | ||||
| 		tests/tools/__init__.py* \
 | ||||
| 		tests/tools/init.py* \
 | ||||
| 		tests/tools/qvm_ls.py* \
 | ||||
| 		$(DESTDIR)$(PYTHON_QUBESPATH)/tests/tools | ||||
| @ -1,5 +0,0 @@ | ||||
| # This is mock file, not installed. It is needed. because pylint needs to | ||||
| # import all the modules, and qubes.qbd is one of them. | ||||
| 
 | ||||
| def QubesDB(dummy): | ||||
|     return None | ||||
| @ -42,7 +42,6 @@ import libvirt | ||||
| 
 | ||||
| import qubes | ||||
| import qubes.config | ||||
| import qubes.qdb | ||||
| #import qubes.qmemman | ||||
| #import qubes.qmemman_algo | ||||
| import qubes.storage | ||||
| @ -339,6 +338,7 @@ class QubesVM(qubes.vm.BaseVM): | ||||
|         '''QubesDB handle for this domain.''' | ||||
|         if self._qdb_connection is None: | ||||
|             if self.is_running(): | ||||
|                 import qubes.qdb | ||||
|                 self._qdb_connection = qubes.qdb.QubesDB(self.name) | ||||
|         return self._qdb_connection | ||||
| 
 | ||||
|  | ||||
| @ -1,14 +0,0 @@ | ||||
| BINDIR ?= /usr/bin | ||||
| ifeq ($(OS),Windows_NT) | ||||
| PYTHONEXEEXT = .py | ||||
| endif | ||||
| 
 | ||||
| all: | ||||
| 	true | ||||
| 
 | ||||
| install: | ||||
| 	mkdir -p $(DESTDIR)$(BINDIR) | ||||
| 	for f in qvm-* qubes-*; do \
 | ||||
| 		cp $$f $(DESTDIR)$(BINDIR)/$$f$(PYTHONEXEEXT); \
 | ||||
| 	done | ||||
| 
 | ||||
| @ -23,7 +23,7 @@ | ||||
| # | ||||
| # | ||||
| 
 | ||||
| %{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")} | ||||
| #%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(False)")} | ||||
| 
 | ||||
| %{!?version: %define version %(cat version)} | ||||
| 
 | ||||
| @ -53,6 +53,7 @@ Requires(post): systemd-units | ||||
| Requires(preun): systemd-units | ||||
| Requires(postun): systemd-units | ||||
| Requires:	python, pciutils, python-inotify, python-daemon | ||||
| Requires:	python-setuptools | ||||
| Requires:       qubes-core-dom0-linux >= 2.0.24 | ||||
| Requires:       qubes-db-dom0 | ||||
| Requires:       python-lxml | ||||
| @ -75,6 +76,7 @@ Requires:       PyQt4 | ||||
| # for property's docstrings | ||||
| Requires:	python-docutils | ||||
| 
 | ||||
| 
 | ||||
| # Prevent preupgrade from installation (it pretend to provide distribution upgrade) | ||||
| Obsoletes:	preupgrade < 2.0 | ||||
| Provides:	preupgrade = 2.0 | ||||
| @ -99,7 +101,7 @@ make all | ||||
| make install \ | ||||
|     DESTDIR=$RPM_BUILD_ROOT \ | ||||
|     UNITDIR=%{_unitdir} \ | ||||
|     PYTHON_SITEPATH=%{python_sitearch} \ | ||||
|     PYTHON_SITEPATH=%{python_sitelib} \ | ||||
|     SYSCONFDIR=%{_sysconfdir} | ||||
| 
 | ||||
| %post | ||||
| @ -187,67 +189,70 @@ fi | ||||
| /usr/bin/qvm-* | ||||
| /usr/bin/qubes-* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes | ||||
| %{python_sitearch}/qubes/__init__.py* | ||||
| %{python_sitearch}/qubes/_pluginloader.py* | ||||
| %{python_sitearch}/qubes/config.py* | ||||
| %{python_sitearch}/qubes/dochelpers.py* | ||||
| %{python_sitearch}/qubes/events.py* | ||||
| %{python_sitearch}/qubes/log.py* | ||||
| %{python_sitearch}/qubes/plugins.py* | ||||
| %{python_sitearch}/qubes/rngdoc.py* | ||||
| %{python_sitearch}/qubes/utils.py* | ||||
| %dir %{python_sitelib}/qubes-*.egg-info | ||||
| %{python_sitelib}/qubes-*.egg-info/* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/vm | ||||
| %{python_sitearch}/qubes/vm/__init__.py* | ||||
| %{python_sitearch}/qubes/vm/adminvm.py* | ||||
| %{python_sitearch}/qubes/vm/appvm.py* | ||||
| %{python_sitearch}/qubes/vm/dispvm.py* | ||||
| %{python_sitearch}/qubes/vm/hvm.py* | ||||
| %{python_sitearch}/qubes/vm/netvm.py* | ||||
| %{python_sitearch}/qubes/vm/proxyvm.py* | ||||
| %{python_sitearch}/qubes/vm/qubesvm.py* | ||||
| %{python_sitearch}/qubes/vm/templatehvm.py* | ||||
| %{python_sitearch}/qubes/vm/templatevm.py* | ||||
| %dir %{python_sitelib}/qubes | ||||
| %{python_sitelib}/qubes/__init__.py* | ||||
| %{python_sitelib}/qubes/_pluginloader.py* | ||||
| %{python_sitelib}/qubes/config.py* | ||||
| %{python_sitelib}/qubes/dochelpers.py* | ||||
| %{python_sitelib}/qubes/events.py* | ||||
| %{python_sitelib}/qubes/log.py* | ||||
| %{python_sitelib}/qubes/plugins.py* | ||||
| %{python_sitelib}/qubes/rngdoc.py* | ||||
| %{python_sitelib}/qubes/utils.py* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/storage | ||||
| %{python_sitearch}/qubes/storage/__init__.py* | ||||
| %{python_sitearch}/qubes/storage/xen.py* | ||||
| %dir %{python_sitelib}/qubes/vm | ||||
| %{python_sitelib}/qubes/vm/__init__.py* | ||||
| %{python_sitelib}/qubes/vm/adminvm.py* | ||||
| %{python_sitelib}/qubes/vm/appvm.py* | ||||
| %{python_sitelib}/qubes/vm/dispvm.py* | ||||
| %{python_sitelib}/qubes/vm/hvm.py* | ||||
| %{python_sitelib}/qubes/vm/netvm.py* | ||||
| %{python_sitelib}/qubes/vm/proxyvm.py* | ||||
| %{python_sitelib}/qubes/vm/qubesvm.py* | ||||
| %{python_sitelib}/qubes/vm/templatehvm.py* | ||||
| %{python_sitelib}/qubes/vm/templatevm.py* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/tools | ||||
| %{python_sitearch}/qubes/tools/__init__.py* | ||||
| %{python_sitearch}/qubes/tools/qubes_create.py* | ||||
| %{python_sitearch}/qubes/tools/qvm_create.py* | ||||
| %{python_sitearch}/qubes/tools/qvm_ls.py* | ||||
| %{python_sitearch}/qubes/tools/qvm_prefs.py* | ||||
| %{python_sitearch}/qubes/tools/qvm_start.py* | ||||
| %dir %{python_sitelib}/qubes/storage | ||||
| %{python_sitelib}/qubes/storage/__init__.py* | ||||
| %{python_sitelib}/qubes/storage/xen.py* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/ext | ||||
| %{python_sitearch}/qubes/ext/__init__.py* | ||||
| %dir %{python_sitelib}/qubes/tools | ||||
| %{python_sitelib}/qubes/tools/__init__.py* | ||||
| %{python_sitelib}/qubes/tools/qubes_create.py* | ||||
| %{python_sitelib}/qubes/tools/qvm_create.py* | ||||
| %{python_sitelib}/qubes/tools/qvm_ls.py* | ||||
| %{python_sitelib}/qubes/tools/qvm_prefs.py* | ||||
| %{python_sitelib}/qubes/tools/qvm_start.py* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/tests | ||||
| %{python_sitearch}/qubes/tests/__init__.py* | ||||
| %{python_sitearch}/qubes/tests/run.py* | ||||
| %dir %{python_sitelib}/qubes/ext | ||||
| %{python_sitelib}/qubes/ext/__init__.py* | ||||
| 
 | ||||
| %{python_sitearch}/qubes/tests/events.py* | ||||
| %{python_sitearch}/qubes/tests/init.py* | ||||
| %dir %{python_sitelib}/qubes/tests | ||||
| %{python_sitelib}/qubes/tests/__init__.py* | ||||
| %{python_sitelib}/qubes/tests/run.py* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/tests/vm | ||||
| %{python_sitearch}/qubes/tests/vm/__init__.py* | ||||
| %{python_sitearch}/qubes/tests/vm/init.py* | ||||
| %{python_sitearch}/qubes/tests/vm/adminvm.py* | ||||
| %{python_sitearch}/qubes/tests/vm/qubesvm.py* | ||||
| %{python_sitelib}/qubes/tests/events.py* | ||||
| %{python_sitelib}/qubes/tests/init.py* | ||||
| 
 | ||||
| %dir %{python_sitearch}/qubes/tests/tools | ||||
| %{python_sitearch}/qubes/tests/tools/__init__.py* | ||||
| %{python_sitearch}/qubes/tests/tools/init.py* | ||||
| %{python_sitearch}/qubes/tests/tools/qvm_ls.py* | ||||
| %dir %{python_sitelib}/qubes/tests/vm | ||||
| %{python_sitelib}/qubes/tests/vm/__init__.py* | ||||
| %{python_sitelib}/qubes/tests/vm/init.py* | ||||
| %{python_sitelib}/qubes/tests/vm/adminvm.py* | ||||
| %{python_sitelib}/qubes/tests/vm/qubesvm.py* | ||||
| 
 | ||||
| %dir %{python_sitelib}/qubes/tests/tools | ||||
| %{python_sitelib}/qubes/tests/tools/__init__.py* | ||||
| %{python_sitelib}/qubes/tests/tools/init.py* | ||||
| %{python_sitelib}/qubes/tests/tools/qvm_ls.py* | ||||
| 
 | ||||
| # qmemman | ||||
| %{python_sitearch}/qubes/qmemman.py* | ||||
| %{python_sitearch}/qubes/qmemman_algo.py* | ||||
| %{python_sitearch}/qubes/qmemman_client.py* | ||||
| %{python_sitearch}/qubes/qmemman_server.py* | ||||
| %{python_sitelib}/qubes/qmemman.py* | ||||
| %{python_sitelib}/qubes/qmemman_algo.py* | ||||
| %{python_sitelib}/qubes/qmemman_client.py* | ||||
| %{python_sitelib}/qubes/qmemman_server.py* | ||||
| 
 | ||||
| /usr/lib/qubes/unbind-pci-device.sh | ||||
| /usr/lib/qubes/cleanup-dispvms | ||||
|  | ||||
							
								
								
									
										33
									
								
								setup.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								setup.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| #!/usr/bin/python2 -O | ||||
| # vim: fileencoding=utf-8 | ||||
| 
 | ||||
| import glob | ||||
| import os | ||||
| import setuptools | ||||
| 
 | ||||
| # don't import: import * is unreliable and there is no need, since this is | ||||
| # compile time and we have source files | ||||
| def get_console_scripts(): | ||||
|     for filename in os.listdir('./qubes/tools'): | ||||
|         basename, ext = os.path.splitext(os.path.basename(filename)) | ||||
|         if basename == '__init__' or ext != '.py': | ||||
|             continue | ||||
|         yield '{} = qubes.tools.{}:main'.format( | ||||
|             basename.replace('_', '-'), basename) | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|     setuptools.setup( | ||||
|         name='qubes', | ||||
|         version=open('version').read().strip(), | ||||
|         author='Invisible Things Lab', | ||||
|         author_email='woju@invisiblethingslab.com', | ||||
|         description='Qubes core package', | ||||
|         license='GPL2+', | ||||
|         url='https://www.qubes-os.org/', | ||||
| 
 | ||||
|         packages=setuptools.find_packages(exclude=('core*', 'tests')), | ||||
| 
 | ||||
|         entry_points={ | ||||
|             'console_scripts': list(get_console_scripts()), | ||||
|         } | ||||
|     ) | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Wojtek Porczyk
						Wojtek Porczyk