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
|
make -C qmemman clean
|
||||||
|
|
||||||
all:
|
all:
|
||||||
make all -C qubes
|
python setup.py build
|
||||||
# make all -C tests
|
# make all -C tests
|
||||||
# Currently supported only on xen
|
# Currently supported only on xen
|
||||||
ifeq ($(BACKEND_VMM),xen)
|
ifeq ($(BACKEND_VMM),xen)
|
||||||
@ -58,8 +58,7 @@ ifeq ($(OS),Linux)
|
|||||||
$(MAKE) install -C linux/aux-tools
|
$(MAKE) install -C linux/aux-tools
|
||||||
$(MAKE) install -C linux/system-config
|
$(MAKE) install -C linux/system-config
|
||||||
endif
|
endif
|
||||||
$(MAKE) install -C qvm-tools
|
python setup.py install -O1 --skip-build --root $(DESTDIR)
|
||||||
$(MAKE) install -C qubes
|
|
||||||
# $(MAKE) install -C tests
|
# $(MAKE) install -C tests
|
||||||
$(MAKE) install -C relaxng
|
$(MAKE) install -C relaxng
|
||||||
ifeq ($(BACKEND_VMM),xen)
|
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
|
||||||
import qubes.config
|
import qubes.config
|
||||||
import qubes.qdb
|
|
||||||
#import qubes.qmemman
|
#import qubes.qmemman
|
||||||
#import qubes.qmemman_algo
|
#import qubes.qmemman_algo
|
||||||
import qubes.storage
|
import qubes.storage
|
||||||
@ -339,6 +338,7 @@ class QubesVM(qubes.vm.BaseVM):
|
|||||||
'''QubesDB handle for this domain.'''
|
'''QubesDB handle for this domain.'''
|
||||||
if self._qdb_connection is None:
|
if self._qdb_connection is None:
|
||||||
if self.is_running():
|
if self.is_running():
|
||||||
|
import qubes.qdb
|
||||||
self._qdb_connection = qubes.qdb.QubesDB(self.name)
|
self._qdb_connection = qubes.qdb.QubesDB(self.name)
|
||||||
return self._qdb_connection
|
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)}
|
%{!?version: %define version %(cat version)}
|
||||||
|
|
||||||
@ -53,6 +53,7 @@ Requires(post): systemd-units
|
|||||||
Requires(preun): systemd-units
|
Requires(preun): systemd-units
|
||||||
Requires(postun): systemd-units
|
Requires(postun): systemd-units
|
||||||
Requires: python, pciutils, python-inotify, python-daemon
|
Requires: python, pciutils, python-inotify, python-daemon
|
||||||
|
Requires: python-setuptools
|
||||||
Requires: qubes-core-dom0-linux >= 2.0.24
|
Requires: qubes-core-dom0-linux >= 2.0.24
|
||||||
Requires: qubes-db-dom0
|
Requires: qubes-db-dom0
|
||||||
Requires: python-lxml
|
Requires: python-lxml
|
||||||
@ -75,6 +76,7 @@ Requires: PyQt4
|
|||||||
# for property's docstrings
|
# for property's docstrings
|
||||||
Requires: python-docutils
|
Requires: python-docutils
|
||||||
|
|
||||||
|
|
||||||
# Prevent preupgrade from installation (it pretend to provide distribution upgrade)
|
# Prevent preupgrade from installation (it pretend to provide distribution upgrade)
|
||||||
Obsoletes: preupgrade < 2.0
|
Obsoletes: preupgrade < 2.0
|
||||||
Provides: preupgrade = 2.0
|
Provides: preupgrade = 2.0
|
||||||
@ -99,7 +101,7 @@ make all
|
|||||||
make install \
|
make install \
|
||||||
DESTDIR=$RPM_BUILD_ROOT \
|
DESTDIR=$RPM_BUILD_ROOT \
|
||||||
UNITDIR=%{_unitdir} \
|
UNITDIR=%{_unitdir} \
|
||||||
PYTHON_SITEPATH=%{python_sitearch} \
|
PYTHON_SITEPATH=%{python_sitelib} \
|
||||||
SYSCONFDIR=%{_sysconfdir}
|
SYSCONFDIR=%{_sysconfdir}
|
||||||
|
|
||||||
%post
|
%post
|
||||||
@ -187,67 +189,70 @@ fi
|
|||||||
/usr/bin/qvm-*
|
/usr/bin/qvm-*
|
||||||
/usr/bin/qubes-*
|
/usr/bin/qubes-*
|
||||||
|
|
||||||
%dir %{python_sitearch}/qubes
|
%dir %{python_sitelib}/qubes-*.egg-info
|
||||||
%{python_sitearch}/qubes/__init__.py*
|
%{python_sitelib}/qubes-*.egg-info/*
|
||||||
%{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_sitearch}/qubes/vm
|
%dir %{python_sitelib}/qubes
|
||||||
%{python_sitearch}/qubes/vm/__init__.py*
|
%{python_sitelib}/qubes/__init__.py*
|
||||||
%{python_sitearch}/qubes/vm/adminvm.py*
|
%{python_sitelib}/qubes/_pluginloader.py*
|
||||||
%{python_sitearch}/qubes/vm/appvm.py*
|
%{python_sitelib}/qubes/config.py*
|
||||||
%{python_sitearch}/qubes/vm/dispvm.py*
|
%{python_sitelib}/qubes/dochelpers.py*
|
||||||
%{python_sitearch}/qubes/vm/hvm.py*
|
%{python_sitelib}/qubes/events.py*
|
||||||
%{python_sitearch}/qubes/vm/netvm.py*
|
%{python_sitelib}/qubes/log.py*
|
||||||
%{python_sitearch}/qubes/vm/proxyvm.py*
|
%{python_sitelib}/qubes/plugins.py*
|
||||||
%{python_sitearch}/qubes/vm/qubesvm.py*
|
%{python_sitelib}/qubes/rngdoc.py*
|
||||||
%{python_sitearch}/qubes/vm/templatehvm.py*
|
%{python_sitelib}/qubes/utils.py*
|
||||||
%{python_sitearch}/qubes/vm/templatevm.py*
|
|
||||||
|
|
||||||
%dir %{python_sitearch}/qubes/storage
|
%dir %{python_sitelib}/qubes/vm
|
||||||
%{python_sitearch}/qubes/storage/__init__.py*
|
%{python_sitelib}/qubes/vm/__init__.py*
|
||||||
%{python_sitearch}/qubes/storage/xen.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
|
%dir %{python_sitelib}/qubes/storage
|
||||||
%{python_sitearch}/qubes/tools/__init__.py*
|
%{python_sitelib}/qubes/storage/__init__.py*
|
||||||
%{python_sitearch}/qubes/tools/qubes_create.py*
|
%{python_sitelib}/qubes/storage/xen.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_sitearch}/qubes/ext
|
%dir %{python_sitelib}/qubes/tools
|
||||||
%{python_sitearch}/qubes/ext/__init__.py*
|
%{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
|
%dir %{python_sitelib}/qubes/ext
|
||||||
%{python_sitearch}/qubes/tests/__init__.py*
|
%{python_sitelib}/qubes/ext/__init__.py*
|
||||||
%{python_sitearch}/qubes/tests/run.py*
|
|
||||||
|
|
||||||
%{python_sitearch}/qubes/tests/events.py*
|
%dir %{python_sitelib}/qubes/tests
|
||||||
%{python_sitearch}/qubes/tests/init.py*
|
%{python_sitelib}/qubes/tests/__init__.py*
|
||||||
|
%{python_sitelib}/qubes/tests/run.py*
|
||||||
|
|
||||||
%dir %{python_sitearch}/qubes/tests/vm
|
%{python_sitelib}/qubes/tests/events.py*
|
||||||
%{python_sitearch}/qubes/tests/vm/__init__.py*
|
%{python_sitelib}/qubes/tests/init.py*
|
||||||
%{python_sitearch}/qubes/tests/vm/init.py*
|
|
||||||
%{python_sitearch}/qubes/tests/vm/adminvm.py*
|
|
||||||
%{python_sitearch}/qubes/tests/vm/qubesvm.py*
|
|
||||||
|
|
||||||
%dir %{python_sitearch}/qubes/tests/tools
|
%dir %{python_sitelib}/qubes/tests/vm
|
||||||
%{python_sitearch}/qubes/tests/tools/__init__.py*
|
%{python_sitelib}/qubes/tests/vm/__init__.py*
|
||||||
%{python_sitearch}/qubes/tests/tools/init.py*
|
%{python_sitelib}/qubes/tests/vm/init.py*
|
||||||
%{python_sitearch}/qubes/tests/tools/qvm_ls.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
|
# qmemman
|
||||||
%{python_sitearch}/qubes/qmemman.py*
|
%{python_sitelib}/qubes/qmemman.py*
|
||||||
%{python_sitearch}/qubes/qmemman_algo.py*
|
%{python_sitelib}/qubes/qmemman_algo.py*
|
||||||
%{python_sitearch}/qubes/qmemman_client.py*
|
%{python_sitelib}/qubes/qmemman_client.py*
|
||||||
%{python_sitearch}/qubes/qmemman_server.py*
|
%{python_sitelib}/qubes/qmemman_server.py*
|
||||||
|
|
||||||
/usr/lib/qubes/unbind-pci-device.sh
|
/usr/lib/qubes/unbind-pci-device.sh
|
||||||
/usr/lib/qubes/cleanup-dispvms
|
/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