2010-04-05 20:58:57 +02:00
|
|
|
#
|
|
|
|
# This is the SPEC file for creating binary RPMs for the Dom0.
|
|
|
|
#
|
|
|
|
#
|
|
|
|
# The Qubes OS Project, http://www.qubes-os.org
|
|
|
|
#
|
|
|
|
# Copyright (C) 2010 Joanna Rutkowska <joanna@invisiblethingslab.com>
|
|
|
|
# Copyright (C) 2010 Rafal Wojtczuk <rafal@invisiblethingslab.com>
|
|
|
|
#
|
|
|
|
# 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 2
|
|
|
|
# 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, write to the Free Software
|
|
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
|
|
#
|
|
|
|
#
|
|
|
|
|
2015-09-28 17:44:59 +02:00
|
|
|
#%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(False)")}
|
2010-04-05 20:58:57 +02:00
|
|
|
|
2013-03-12 16:50:14 +01:00
|
|
|
%{!?version: %define version %(cat version)}
|
2010-04-05 20:58:57 +02:00
|
|
|
|
2016-03-11 04:36:44 +01:00
|
|
|
# debug_package hack should be removed when BuildArch:noarch is enabled below
|
|
|
|
%define debug_package %{nil}
|
|
|
|
|
2013-01-25 03:09:18 +01:00
|
|
|
%define _dracutmoddir /usr/lib/dracut/modules.d
|
|
|
|
%if %{fedora} < 17
|
|
|
|
%define _dracutmoddir /usr/share/dracut/modules.d
|
|
|
|
%endif
|
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
Name: qubes-core-dom0
|
|
|
|
Version: %{version}
|
2014-04-15 04:09:13 +02:00
|
|
|
Release: 1%{dist}
|
2010-04-05 20:58:57 +02:00
|
|
|
Summary: The Qubes core files (Dom0-side)
|
|
|
|
|
|
|
|
Group: Qubes
|
|
|
|
Vendor: Invisible Things Lab
|
|
|
|
License: GPL
|
|
|
|
URL: http://www.qubes-os.org
|
2015-01-13 18:23:04 +01:00
|
|
|
|
2015-12-22 14:21:28 +01:00
|
|
|
# because we have "#!/usr/bin/env python" shebangs, RPM puts
|
|
|
|
# "Requires: $(which # python)" dependency, which, depending on $PATH order,
|
|
|
|
# may point to /usr/bin/python or /bin/python (because Fedora has this stupid
|
|
|
|
# /bin -> usr/bin symlink). python*.rpm provides only /usr/bin/python.
|
|
|
|
AutoReq: no
|
|
|
|
|
2016-03-11 04:36:44 +01:00
|
|
|
# FIXME: Enable this and disable debug_package
|
|
|
|
#BuildArch: noarch
|
2016-04-11 13:03:12 +02:00
|
|
|
|
2013-02-19 01:05:22 +01:00
|
|
|
BuildRequires: ImageMagick
|
2013-01-27 00:04:40 +01:00
|
|
|
BuildRequires: systemd-units
|
2015-01-13 18:23:04 +01:00
|
|
|
|
|
|
|
# for building documentation
|
|
|
|
BuildRequires: python-sphinx
|
|
|
|
BuildRequires: libvirt-python
|
2015-12-10 21:52:05 +01:00
|
|
|
BuildRequires: dbus-python
|
2015-01-13 18:23:04 +01:00
|
|
|
|
2013-01-27 00:04:40 +01:00
|
|
|
Requires(post): systemd-units
|
|
|
|
Requires(preun): systemd-units
|
|
|
|
Requires(postun): systemd-units
|
2013-06-07 05:07:40 +02:00
|
|
|
Requires: python, pciutils, python-inotify, python-daemon
|
2015-09-28 17:44:59 +02:00
|
|
|
Requires: python-setuptools
|
2016-02-23 16:22:02 +01:00
|
|
|
Requires: qubes-core-dom0-linux >= 3.1.8
|
2016-06-04 16:57:13 +02:00
|
|
|
Requires: qubes-core-dom0-doc
|
2013-06-07 05:16:15 +02:00
|
|
|
Requires: qubes-db-dom0
|
2012-10-19 02:14:37 +02:00
|
|
|
Requires: python-lxml
|
2013-03-16 02:39:30 +01:00
|
|
|
# TODO: R: qubes-gui-dom0 >= 2.1.11
|
2011-02-09 22:15:00 +01:00
|
|
|
Conflicts: qubes-gui-dom0 < 1.1.13
|
2013-05-16 02:01:52 +02:00
|
|
|
Requires: libvirt-python
|
|
|
|
%if x%{?backend_vmm} == xxen
|
2013-06-07 05:07:40 +02:00
|
|
|
Requires: xen-runtime
|
2012-03-01 10:57:34 +01:00
|
|
|
Requires: xen-hvm
|
2016-06-04 16:52:02 +02:00
|
|
|
Requires: libvirt-daemon-xen >= 1.2.20-6
|
2013-05-16 02:01:52 +02:00
|
|
|
%endif
|
2011-07-16 02:04:56 +02:00
|
|
|
Requires: createrepo
|
2011-08-02 13:04:09 +02:00
|
|
|
Requires: gnome-packagekit
|
2012-01-30 16:27:12 +01:00
|
|
|
Requires: cronie
|
2015-03-30 05:29:14 +02:00
|
|
|
Requires: bsdtar
|
backup: use 'scrypt' tool for backup encryption and integrity protection
`openssl dgst` and `openssl enc` used previously poorly handle key
stretching - in case of `openssl enc` encryption key is derived using
single MD5 iteration, without even any salt. This hardly prevent
brute force or even rainbow tables attacks. To make things worse, the
same key is used for encryption and integrity protection which ease
brute force even further.
All this is still about brute force attacks, so when using long, high
entropy passphrase, it should be still relatively safe. But lets do
better.
According to discussion in QubesOS/qubes-issues#971, scrypt algorithm is
a good choice for key stretching (it isn't the best of all existing, but
a good one and widely adopted). At the same time, lets switch away from
`openssl` tool, as it is very limited and apparently not designed for
production use. Use `scrypt` tool, which is very simple and does exactly
what we need - encrypt the data and integrity protect it. Its archive
format have own (simple) header with data required by the `scrypt`
algorithm, including salt. Internally data is encrypted with AES256-CTR
and integrity protected with HMAC-SHA256. For details see:
https://github.com/tarsnap/scrypt/blob/master/FORMAT
This means change of backup format. Mainly:
1. HMAC is stored in scrypt header, so don't use separate file for it.
Instead have data in files with `.enc` extension.
2. For compatibility leave `backup-header` and `backup-header.hmac`. But
`backup-header.hmac` is really scrypt-encrypted version of `backup-header`.
3. For each file, prepend its identifier to the passphrase, to
authenticate filename itself too. Having this we can guard against
reordering archive files within a single backup and across backups. This
identifier is built as:
backup ID (from backup-header)!filename!
For backup-header itself, there is no backup ID (just 'backup-header!').
Fixes QubesOS/qubes-issues#971
2016-10-20 12:56:51 +02:00
|
|
|
Requires: scrypt
|
2013-03-09 22:20:47 +01:00
|
|
|
# for qubes-hcl-report
|
|
|
|
Requires: dmidecode
|
2014-11-21 20:09:57 +01:00
|
|
|
Requires: PyQt4
|
2013-03-01 01:36:05 +01:00
|
|
|
|
2015-01-13 18:23:04 +01:00
|
|
|
# for property's docstrings
|
|
|
|
Requires: python-docutils
|
|
|
|
|
2016-07-12 18:44:05 +02:00
|
|
|
# for lvm support
|
|
|
|
Requires: lvm2-python-libs
|
2015-09-28 17:44:59 +02:00
|
|
|
|
2013-03-01 01:36:05 +01:00
|
|
|
# Prevent preupgrade from installation (it pretend to provide distribution upgrade)
|
|
|
|
Obsoletes: preupgrade < 2.0
|
|
|
|
Provides: preupgrade = 2.0
|
2012-12-12 04:12:59 +01:00
|
|
|
%define _builddir %(pwd)
|
2010-04-05 20:58:57 +02:00
|
|
|
|
|
|
|
%description
|
|
|
|
The Qubes core files for installation on Dom0.
|
|
|
|
|
2012-12-12 04:12:59 +01:00
|
|
|
%prep
|
|
|
|
# we operate on the current directory, so no need to unpack anything
|
|
|
|
# symlink is to generate useful debuginfo packages
|
|
|
|
rm -f %{name}-%{version}
|
|
|
|
ln -sf . %{name}-%{version}
|
|
|
|
%setup -T -D
|
|
|
|
|
2010-04-10 13:52:19 +02:00
|
|
|
%build
|
|
|
|
|
2013-06-15 23:14:54 +02:00
|
|
|
make all
|
2010-04-05 20:58:57 +02:00
|
|
|
|
2013-06-15 23:14:54 +02:00
|
|
|
%install
|
2010-10-06 11:00:52 +02:00
|
|
|
|
2013-06-15 23:14:54 +02:00
|
|
|
make install \
|
|
|
|
DESTDIR=$RPM_BUILD_ROOT \
|
|
|
|
UNITDIR=%{_unitdir} \
|
2015-09-28 17:44:59 +02:00
|
|
|
PYTHON_SITEPATH=%{python_sitelib} \
|
2013-06-15 23:14:54 +02:00
|
|
|
SYSCONFDIR=%{_sysconfdir}
|
2011-09-02 16:55:39 +02:00
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
%post
|
2010-05-31 15:23:51 +02:00
|
|
|
|
2011-02-09 22:15:00 +01:00
|
|
|
# Create NetworkManager configuration if we do not have it
|
|
|
|
if ! [ -e /etc/NetworkManager/NetworkManager.conf ]; then
|
|
|
|
echo '[main]' > /etc/NetworkManager/NetworkManager.conf
|
|
|
|
echo 'plugins = keyfile' >> /etc/NetworkManager/NetworkManager.conf
|
|
|
|
echo '[keyfile]' >> /etc/NetworkManager/NetworkManager.conf
|
|
|
|
fi
|
2010-06-14 23:52:21 +02:00
|
|
|
|
2011-06-23 14:39:17 +02:00
|
|
|
sed '/^autoballoon=/d;/^lockfile=/d' -i /etc/xen/xl.conf
|
|
|
|
echo 'autoballoon=0' >> /etc/xen/xl.conf
|
|
|
|
echo 'lockfile="/var/run/qubes/xl-lock"' >> /etc/xen/xl.conf
|
|
|
|
|
2016-11-03 22:18:09 +01:00
|
|
|
if [ -e /etc/sysconfig/prelink ]; then
|
2011-10-07 21:28:26 +02:00
|
|
|
sed 's/^PRELINKING\s*=.*/PRELINKING=no/' -i /etc/sysconfig/prelink
|
2016-11-03 22:18:09 +01:00
|
|
|
fi
|
2011-10-07 21:28:26 +02:00
|
|
|
|
2013-01-27 00:04:40 +01:00
|
|
|
systemctl --no-reload enable qubes-core.service >/dev/null 2>&1
|
|
|
|
systemctl --no-reload enable qubes-netvm.service >/dev/null 2>&1
|
|
|
|
systemctl --no-reload enable qubes-setupdvm.service >/dev/null 2>&1
|
|
|
|
|
|
|
|
# Conflicts with libxl stack, so disable it
|
|
|
|
systemctl --no-reload disable xend.service >/dev/null 2>&1
|
2013-02-13 16:54:29 +01:00
|
|
|
systemctl --no-reload disable xendomains.service >/dev/null 2>&1
|
2013-05-04 04:33:07 +02:00
|
|
|
systemctl daemon-reload >/dev/null 2>&1 || :
|
2013-01-27 00:04:40 +01:00
|
|
|
|
2011-02-09 22:15:00 +01:00
|
|
|
HAD_SYSCONFIG_NETWORK=yes
|
|
|
|
if ! [ -e /etc/sysconfig/network ]; then
|
|
|
|
HAD_SYSCONFIG_NETWORK=no
|
|
|
|
# supplant empty one so NetworkManager init script does not complain
|
|
|
|
touch /etc/sysconfig/network
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Load evtchn module - xenstored needs it
|
2012-02-25 13:54:39 +01:00
|
|
|
modprobe evtchn 2> /dev/null || modprobe xen-evtchn
|
2011-06-23 20:04:27 +02:00
|
|
|
service xenstored start
|
2011-02-09 22:15:00 +01:00
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
if ! [ -e /var/lib/qubes/qubes.xml ]; then
|
|
|
|
# echo "Initializing Qubes DB..."
|
2016-11-02 06:27:15 +01:00
|
|
|
umask 007; sg qubes -c 'qubes-create --offline-mode'
|
|
|
|
qubes-prefs --force-root --offline-mode default-kernel `ls /var/lib/qubes/vm-kernels|head -n 1` 2> /dev/null
|
2010-04-05 20:58:57 +02:00
|
|
|
fi
|
|
|
|
|
2011-04-06 13:27:01 +02:00
|
|
|
# Because we now have an installer
|
|
|
|
# this script is always executed during upgrade
|
|
|
|
# and we decided not to restart core during upgrade
|
|
|
|
#service qubes_core start
|
|
|
|
|
2011-02-09 22:15:00 +01:00
|
|
|
if [ "x"$HAD_SYSCONFIG_NETWORK = "xno" ]; then
|
|
|
|
rm -f /etc/sysconfig/network
|
|
|
|
fi
|
2010-10-04 14:21:14 +02:00
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
%clean
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
2012-12-12 04:12:59 +01:00
|
|
|
rm -f %{name}-%{version}
|
2010-04-05 20:58:57 +02:00
|
|
|
|
|
|
|
%pre
|
|
|
|
if ! grep -q ^qubes: /etc/group ; then
|
|
|
|
groupadd qubes
|
|
|
|
fi
|
|
|
|
|
2010-10-04 15:25:58 +02:00
|
|
|
%triggerin -- xen-runtime
|
2013-03-14 15:06:19 +01:00
|
|
|
/usr/lib/qubes/fix-dir-perms.sh
|
2010-10-04 15:25:58 +02:00
|
|
|
|
2010-04-05 20:58:57 +02:00
|
|
|
%preun
|
|
|
|
if [ "$1" = 0 ] ; then
|
2010-10-04 14:21:14 +02:00
|
|
|
# no more packages left
|
2013-01-27 00:04:40 +01:00
|
|
|
service qubes_netvm stop
|
|
|
|
service qubes_core stop
|
2010-04-05 20:58:57 +02:00
|
|
|
fi
|
|
|
|
|
|
|
|
%postun
|
|
|
|
if [ "$1" = 0 ] ; then
|
|
|
|
# no more packages left
|
|
|
|
chgrp root /etc/xen
|
|
|
|
chmod 700 /etc/xen
|
|
|
|
groupdel qubes
|
|
|
|
fi
|
|
|
|
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root,-)
|
2012-03-29 16:17:10 +02:00
|
|
|
%config(noreplace) %attr(0664,root,qubes) %{_sysconfdir}/qubes/qmemman.conf
|
2010-04-05 20:58:57 +02:00
|
|
|
/usr/bin/qvm-*
|
2012-02-07 03:24:52 +01:00
|
|
|
/usr/bin/qubes-*
|
2015-10-01 22:14:35 +02:00
|
|
|
/usr/bin/qmemmand
|
2015-01-13 18:23:04 +01:00
|
|
|
|
2015-09-28 17:44:59 +02:00
|
|
|
%dir %{python_sitelib}/qubes-*.egg-info
|
|
|
|
%{python_sitelib}/qubes-*.egg-info/*
|
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes
|
|
|
|
%{python_sitelib}/qubes/__init__.py*
|
2016-04-28 16:00:29 +02:00
|
|
|
%{python_sitelib}/qubes/app.py*
|
2016-03-10 11:22:52 +01:00
|
|
|
%{python_sitelib}/qubes/backup.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/config.py*
|
2016-03-16 01:01:13 +01:00
|
|
|
%{python_sitelib}/qubes/core2migration.py*
|
2016-03-02 12:17:29 +01:00
|
|
|
%{python_sitelib}/qubes/devices.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/dochelpers.py*
|
|
|
|
%{python_sitelib}/qubes/events.py*
|
2016-09-08 04:10:02 +02:00
|
|
|
%{python_sitelib}/qubes/firewall.py*
|
2015-10-14 22:02:11 +02:00
|
|
|
%{python_sitelib}/qubes/exc.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/log.py*
|
|
|
|
%{python_sitelib}/qubes/rngdoc.py*
|
2016-10-04 21:54:29 +02:00
|
|
|
%{python_sitelib}/qubes/tarwriter.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/utils.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/qubesvm.py*
|
2016-03-13 12:43:26 +01:00
|
|
|
%{python_sitelib}/qubes/vm/standalonevm.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/vm/templatevm.py*
|
2016-01-21 13:08:56 +01:00
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes/vm/mix
|
|
|
|
%{python_sitelib}/qubes/vm/mix/__init__.py*
|
|
|
|
%{python_sitelib}/qubes/vm/mix/net.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes/storage
|
|
|
|
%{python_sitelib}/qubes/storage/__init__.py*
|
2016-04-30 20:42:46 +02:00
|
|
|
%{python_sitelib}/qubes/storage/file.py*
|
2016-05-22 21:42:54 +02:00
|
|
|
%{python_sitelib}/qubes/storage/domain.py*
|
2016-04-01 15:10:44 +02:00
|
|
|
%{python_sitelib}/qubes/storage/kernels.py*
|
2016-07-12 18:44:05 +02:00
|
|
|
%{python_sitelib}/qubes/storage/lvm.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes/tools
|
|
|
|
%{python_sitelib}/qubes/tools/__init__.py*
|
2015-10-01 22:14:35 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qmemmand.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qubes_create.py*
|
2016-03-05 10:57:58 +01:00
|
|
|
%{python_sitelib}/qubes/tools/qubes_monitor_layout_notify.py*
|
2015-12-24 00:28:52 +01:00
|
|
|
%{python_sitelib}/qubes/tools/qubes_prefs.py*
|
2016-05-09 05:12:37 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_block.py*
|
2016-09-21 16:02:50 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_backup.py*
|
|
|
|
%{python_sitelib}/qubes/tools/qvm_backup_restore.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_create.py*
|
2016-09-03 02:24:07 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_device.py*
|
2016-05-17 18:12:24 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_features.py*
|
2016-09-19 17:50:27 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_firewall.py*
|
2016-07-16 01:06:47 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_check.py*
|
2016-07-12 18:24:43 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_clone.py*
|
2015-10-05 18:06:02 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_kill.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_ls.py*
|
2015-12-28 18:14:37 +01:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_pause.py*
|
2016-04-13 14:10:04 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_pool.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_prefs.py*
|
2016-04-26 16:54:36 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_remove.py*
|
2015-12-28 18:14:37 +01:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_run.py*
|
2016-04-18 22:52:51 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_shutdown.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_start.py*
|
2016-08-09 04:22:05 +02:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_template_commit.py*
|
2016-11-02 06:28:41 +01:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_template_postprocess.py*
|
2015-12-28 18:14:37 +01:00
|
|
|
%{python_sitelib}/qubes/tools/qvm_unpause.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes/ext
|
|
|
|
%{python_sitelib}/qubes/ext/__init__.py*
|
2016-03-05 10:57:58 +01:00
|
|
|
%{python_sitelib}/qubes/ext/gui.py*
|
2016-09-03 02:16:28 +02:00
|
|
|
%{python_sitelib}/qubes/ext/pci.py*
|
2015-10-01 21:55:47 +02:00
|
|
|
%{python_sitelib}/qubes/ext/qubesmanager.py*
|
2016-03-07 01:32:40 +01:00
|
|
|
%{python_sitelib}/qubes/ext/r3compatibility.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes/tests
|
|
|
|
%{python_sitelib}/qubes/tests/__init__.py*
|
|
|
|
%{python_sitelib}/qubes/tests/run.py*
|
2016-04-11 13:50:19 +02:00
|
|
|
%{python_sitelib}/qubes/tests/extra.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
|
2016-04-28 16:00:29 +02:00
|
|
|
%{python_sitelib}/qubes/tests/app.py*
|
2016-03-09 14:20:32 +01:00
|
|
|
%{python_sitelib}/qubes/tests/devices.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tests/events.py*
|
2016-09-08 04:10:02 +02:00
|
|
|
%{python_sitelib}/qubes/tests/firewall.py*
|
2016-04-28 16:00:29 +02:00
|
|
|
%{python_sitelib}/qubes/tests/init.py*
|
2016-02-11 05:41:42 +01:00
|
|
|
%{python_sitelib}/qubes/tests/storage.py*
|
2016-04-30 20:42:46 +02:00
|
|
|
%{python_sitelib}/qubes/tests/storage_file.py*
|
2016-07-12 18:43:28 +02:00
|
|
|
%{python_sitelib}/qubes/tests/storage_lvm.py*
|
2016-10-04 21:54:29 +02:00
|
|
|
%{python_sitelib}/qubes/tests/tarwriter.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
|
|
|
|
%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*
|
|
|
|
|
2016-04-20 13:41:33 +02:00
|
|
|
%dir %{python_sitelib}/qubes/tests/vm/mix
|
|
|
|
%{python_sitelib}/qubes/tests/vm/mix/__init__.py*
|
|
|
|
%{python_sitelib}/qubes/tests/vm/mix/net.py*
|
|
|
|
|
2015-09-28 17:44:59 +02:00
|
|
|
%dir %{python_sitelib}/qubes/tests/tools
|
|
|
|
%{python_sitelib}/qubes/tests/tools/__init__.py*
|
|
|
|
%{python_sitelib}/qubes/tests/tools/init.py*
|
2016-09-03 02:24:07 +02:00
|
|
|
%{python_sitelib}/qubes/tests/tools/qvm_device.py*
|
2016-09-19 17:50:27 +02:00
|
|
|
%{python_sitelib}/qubes/tests/tools/qvm_firewall.py*
|
2015-09-28 17:44:59 +02:00
|
|
|
%{python_sitelib}/qubes/tests/tools/qvm_ls.py*
|
2015-01-23 18:37:40 +01:00
|
|
|
|
2015-10-27 11:39:59 +01:00
|
|
|
%dir %{python_sitelib}/qubes/tests/int
|
|
|
|
%{python_sitelib}/qubes/tests/int/__init__.py*
|
2016-03-10 11:22:52 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/backup.py*
|
2016-03-16 01:01:58 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/backupcompatibility.py*
|
2015-10-27 11:39:59 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/basic.py*
|
2016-09-03 02:21:50 +02:00
|
|
|
%{python_sitelib}/qubes/tests/int/devices_pci.py*
|
2016-08-17 04:15:35 +02:00
|
|
|
%{python_sitelib}/qubes/tests/int/dispvm.py*
|
2016-02-11 01:35:51 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/dom0_update.py*
|
2016-03-02 02:46:15 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/network.py*
|
2016-11-04 13:30:51 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/storage.py*
|
2016-08-17 04:39:13 +02:00
|
|
|
%{python_sitelib}/qubes/tests/int/vm_qrexec_gui.py*
|
2015-10-27 11:39:59 +01:00
|
|
|
|
|
|
|
%dir %{python_sitelib}/qubes/tests/int/tools
|
|
|
|
%{python_sitelib}/qubes/tests/int/tools/__init__.py*
|
|
|
|
%{python_sitelib}/qubes/tests/int/tools/qubes_create.py*
|
2016-09-19 17:50:27 +02:00
|
|
|
%{python_sitelib}/qubes/tests/int/tools/qvm_firewall.py*
|
2016-08-09 05:12:12 +02:00
|
|
|
%{python_sitelib}/qubes/tests/int/tools/qvm_check.py*
|
2016-04-02 21:34:12 +02:00
|
|
|
%{python_sitelib}/qubes/tests/int/tools/qvm_prefs.py*
|
2015-12-29 01:53:47 +01:00
|
|
|
%{python_sitelib}/qubes/tests/int/tools/qvm_run.py*
|
2015-10-27 11:39:59 +01:00
|
|
|
|
2015-10-01 22:14:35 +02:00
|
|
|
%dir %{python_sitelib}/qubes/qmemman
|
|
|
|
%{python_sitelib}/qubes/qmemman/__init__.py*
|
|
|
|
%{python_sitelib}/qubes/qmemman/algo.py*
|
|
|
|
%{python_sitelib}/qubes/qmemman/client.py*
|
2015-01-13 18:23:04 +01:00
|
|
|
|
2013-03-14 15:06:19 +01:00
|
|
|
/usr/lib/qubes/unbind-pci-device.sh
|
|
|
|
/usr/lib/qubes/cleanup-dispvms
|
2011-03-14 10:43:09 +01:00
|
|
|
/usr/lib/qubes/qfile-daemon-dvm*
|
2013-03-14 15:06:19 +01:00
|
|
|
/usr/lib/qubes/block-cleaner-daemon.py*
|
2012-10-21 20:59:17 +02:00
|
|
|
/usr/lib/qubes/vusb-ctl.py*
|
|
|
|
/usr/lib/qubes/xl-qvm-usb-attach.py*
|
|
|
|
/usr/lib/qubes/xl-qvm-usb-detach.py*
|
2013-03-14 15:06:19 +01:00
|
|
|
/usr/lib/qubes/fix-dir-perms.sh
|
2013-01-27 00:04:40 +01:00
|
|
|
/usr/lib/qubes/startup-dvm.sh
|
|
|
|
/usr/lib/qubes/startup-misc.sh
|
2013-03-14 15:06:19 +01:00
|
|
|
/usr/lib/qubes/prepare-volatile-img.sh
|
2013-07-22 04:13:12 +02:00
|
|
|
/usr/libexec/qubes/qubes-notify-tools
|
|
|
|
/usr/libexec/qubes/qubes-notify-updates
|
2013-01-27 00:04:40 +01:00
|
|
|
%{_unitdir}/qubes-block-cleaner.service
|
|
|
|
%{_unitdir}/qubes-core.service
|
2013-02-13 16:52:38 +01:00
|
|
|
%{_unitdir}/qubes-setupdvm.service
|
2013-01-27 00:04:40 +01:00
|
|
|
%{_unitdir}/qubes-netvm.service
|
|
|
|
%{_unitdir}/qubes-qmemman.service
|
2013-11-20 02:57:17 +01:00
|
|
|
%{_unitdir}/qubes-vm@.service
|
2014-03-27 17:16:47 +01:00
|
|
|
%{_unitdir}/qubes-reload-firewall@.service
|
|
|
|
%{_unitdir}/qubes-reload-firewall@.timer
|
2013-05-20 01:34:32 +02:00
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes
|
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes/vm-templates
|
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes/appvms
|
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes/servicevms
|
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes/backup
|
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes/dvmdata
|
|
|
|
%attr(2770,root,qubes) %dir /var/lib/qubes/vm-kernels
|
2016-03-02 12:17:29 +01:00
|
|
|
/usr/share/qubes/templates/libvirt/xen.xml
|
2016-06-15 19:08:00 +02:00
|
|
|
/usr/share/qubes/templates/libvirt/devices/pci.xml
|
2016-06-15 19:41:11 +02:00
|
|
|
/usr/share/qubes/templates/libvirt/devices/net.xml
|
2015-02-02 04:48:42 +01:00
|
|
|
/usr/lib/tmpfiles.d/qubes.conf
|
2013-03-14 15:06:19 +01:00
|
|
|
/usr/lib/qubes/qubes-prepare-saved-domain.sh
|
|
|
|
/usr/lib/qubes/qubes-update-dispvm-savefile-with-progress.sh
|
2010-06-02 15:50:22 +02:00
|
|
|
/etc/xen/scripts/block.qubes
|
2011-02-26 03:42:55 +01:00
|
|
|
/etc/xen/scripts/block-snapshot
|
|
|
|
/etc/xen/scripts/block-origin
|
2010-09-06 17:07:42 +02:00
|
|
|
/etc/xen/scripts/vif-route-qubes
|
2016-05-17 18:12:24 +02:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.FeaturesRequest
|
2013-03-14 01:22:43 +01:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.Filecopy
|
2014-05-20 17:47:25 +02:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.GetImageRGBA
|
2016-05-17 18:12:24 +02:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.GetRandomizedTime
|
2013-10-28 05:09:54 +01:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.NotifyTools
|
2013-03-14 01:22:43 +01:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.NotifyUpdates
|
2016-05-17 18:12:24 +02:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.OpenInVM
|
2016-06-13 19:03:46 +02:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.OpenURL
|
2013-03-14 01:22:43 +01:00
|
|
|
%attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.VMShell
|
2016-05-17 18:12:24 +02:00
|
|
|
/etc/qubes-rpc/qubes.FeaturesRequest
|
|
|
|
/etc/qubes-rpc/qubes.GetRandomizedTime
|
2013-10-28 05:09:54 +01:00
|
|
|
/etc/qubes-rpc/qubes.NotifyTools
|
2013-03-14 01:22:43 +01:00
|
|
|
/etc/qubes-rpc/qubes.NotifyUpdates
|
2010-10-06 11:00:52 +02:00
|
|
|
%attr(2770,root,qubes) %dir /var/log/qubes
|
2012-10-23 05:46:25 +02:00
|
|
|
%attr(0770,root,qubes) %dir /var/run/qubes
|
2011-04-07 19:23:23 +02:00
|
|
|
/etc/xdg/autostart/qubes-guid.desktop
|
2015-01-13 23:52:19 +01:00
|
|
|
|
|
|
|
/usr/share/doc/qubes/relaxng/*.rng
|