core-dom0.spec.in 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551
  1. #
  2. # This is the SPEC file for creating binary RPMs for the Dom0.
  3. #
  4. #
  5. # The Qubes OS Project, http://www.qubes-os.org
  6. #
  7. # Copyright (C) 2010 Joanna Rutkowska <joanna@invisiblethingslab.com>
  8. # Copyright (C) 2010 Rafal Wojtczuk <rafal@invisiblethingslab.com>
  9. #
  10. # This library is free software; you can redistribute it and/or
  11. # modify it under the terms of the GNU Lesser General Public
  12. # License as published by the Free Software Foundation; either
  13. # version 2.1 of the License, or (at your option) any later version.
  14. #
  15. # This library is distributed in the hope that it will be useful,
  16. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  18. # Lesser General Public License for more details.
  19. #
  20. # You should have received a copy of the GNU Lesser General Public
  21. # License along with this library; if not, see <https://www.gnu.org/licenses/>.
  22. #
  23. #
  24. %define _dracutmoddir /usr/lib/dracut/modules.d
  25. %define backend_vmm @BACKEND_VMM@
  26. Name: qubes-core-dom0
  27. Version: @VERSION@
  28. Release: 1%{dist}
  29. Summary: The Qubes core files (Dom0-side)
  30. Group: Qubes
  31. Vendor: Invisible Things Lab
  32. License: GPL
  33. URL: http://www.qubes-os.org
  34. # because we have "#!/usr/bin/env python" shebangs, RPM puts
  35. # "Requires: $(which # python)" dependency, which, depending on $PATH order,
  36. # may point to /usr/bin/python or /bin/python (because Fedora has this stupid
  37. # /bin -> usr/bin symlink). python*.rpm provides only /usr/bin/python.
  38. AutoReq: no
  39. BuildArch: noarch
  40. BuildRequires: ImageMagick
  41. BuildRequires: systemd-units
  42. BuildRequires: systemd
  43. BuildRequires: python3-devel
  44. # for building documentation
  45. BuildRequires: python3-sphinx
  46. BuildRequires: python3-lxml
  47. BuildRequires: libvirt-python3
  48. BuildRequires: python3-dbus
  49. BuildRequires: python3-PyYAML
  50. BuildRequires: python3-xen
  51. Requires(post): systemd-units
  52. Requires(preun): systemd-units
  53. Requires(postun): systemd-units
  54. Requires: python3
  55. #Requires: python3-aiofiles
  56. Requires: python3-docutils
  57. Requires: python3-jinja2
  58. Requires: python3-lxml
  59. Requires: python3-qubesdb
  60. Requires: python3-setuptools
  61. Requires: python3-PyYAML
  62. Requires: python3-xen
  63. Requires: libvirt-python3
  64. Requires: pciutils
  65. Requires: qubes-core-dom0-linux >= 4.0.11
  66. # policy (daemon) using changed qubesd socket protocol
  67. Requires: qubes-core-qrexec-dom0 >= 4.1.8
  68. Requires: qubes-db-dom0
  69. # TODO: R: qubes-gui-dom0 >= 2.1.11
  70. Conflicts: qubes-gui-dom0 < 1.1.13
  71. %if x%{?backend_vmm} == xxen
  72. Requires: xen-runtime
  73. Requires: xen-hvm
  74. Requires: xen-hvm-stubdom-linux >= 1.0.13
  75. Requires: libvirt-daemon-xen >= 3.3.0-7
  76. %endif
  77. Requires: cronie
  78. Requires: scrypt
  79. # for qubes-hcl-report
  80. Requires: dmidecode
  81. # qubesd socket protocol
  82. Conflicts: python3-qubesadmin < 4.1.6
  83. # Required for qvm-console* tools
  84. Requires: socat
  85. %{?systemd_requires}
  86. Obsoletes: qubes-core-dom0-doc <= 4.0
  87. Provides: qubes-core-dom0-doc
  88. # Prevent preupgrade from installation (it pretend to provide distribution upgrade)
  89. Obsoletes: preupgrade < 2.0
  90. Provides: preupgrade = 2.0
  91. Source0: %{name}-%{version}.tar.gz
  92. %description
  93. The Qubes core files for installation on Dom0.
  94. %prep
  95. %setup -q
  96. %build
  97. make all
  98. make -C doc PYTHON=%{__python3} SPHINXBUILD=sphinx-build-%{python3_version} man
  99. %install
  100. make install \
  101. DESTDIR=$RPM_BUILD_ROOT \
  102. BACKEND_VMM=%{backend_vmm} \
  103. UNITDIR=%{_unitdir} \
  104. PYTHON_SITEPATH=%{python3_sitelib} \
  105. SYSCONFDIR=%{_sysconfdir}
  106. make -C doc DESTDIR=$RPM_BUILD_ROOT \
  107. PYTHON=%{__python3} SPHINXBUILD=sphinx-build-%{python3_version} \
  108. install
  109. mkdir -p $RPM_BUILD_ROOT/etc/qubes/backup
  110. %post
  111. %systemd_post qubes-core.service
  112. %systemd_post qubes-qmemman.service
  113. %systemd_post qubesd.service
  114. sed '/^autoballoon=/d;/^lockfile=/d' -i /etc/xen/xl.conf
  115. echo 'autoballoon=0' >> /etc/xen/xl.conf
  116. echo 'lockfile="/var/run/qubes/xl-lock"' >> /etc/xen/xl.conf
  117. if [ -e /etc/sysconfig/prelink ]; then
  118. sed 's/^PRELINKING\s*=.*/PRELINKING=no/' -i /etc/sysconfig/prelink
  119. fi
  120. # Conflicts with libxl stack, so disable it
  121. systemctl --no-reload disable xend.service >/dev/null 2>&1
  122. systemctl --no-reload disable xendomains.service >/dev/null 2>&1
  123. systemctl daemon-reload >/dev/null 2>&1 || :
  124. if ! [ -e /var/lib/qubes/qubes.xml ]; then
  125. # echo "Initializing Qubes DB..."
  126. umask 007; sg qubes -c 'qubes-create --offline-mode'
  127. fi
  128. %clean
  129. rm -rf $RPM_BUILD_ROOT
  130. rm -f %{name}-%{version}
  131. %pre
  132. if ! grep -q ^qubes: /etc/group ; then
  133. groupadd qubes
  134. fi
  135. %triggerin -- xen-runtime
  136. /usr/lib/qubes/fix-dir-perms.sh
  137. %preun
  138. %systemd_preun qubes-core.service
  139. %systemd_preun qubes-qmemman.service
  140. %systemd_preun qubesd.service
  141. if [ "$1" = 0 ] ; then
  142. # no more packages left
  143. service qubes_netvm stop
  144. service qubes_core stop
  145. fi
  146. %postun
  147. %systemd_postun qubes-core.service
  148. %systemd_postun_with_restart qubes-qmemman.service
  149. %systemd_postun_with_restart qubesd.service
  150. if [ "$1" = 0 ] ; then
  151. # no more packages left
  152. chgrp root /etc/xen
  153. chmod 700 /etc/xen
  154. groupdel qubes
  155. fi
  156. %posttrans
  157. # Preserve user-modified legacy policy at original location, revert rpm adding
  158. # .rpmsave suffix. This needs to be done in %%posttrans, to be run after
  159. # uninstalling the old package.
  160. # List policy files explicitly, to not touch files from other packages.
  161. SERVICES="
  162. admin.Events
  163. admin.backup.Cancel
  164. admin.backup.Execute
  165. admin.backup.Info
  166. admin.deviceclass.List
  167. admin.label.Create
  168. admin.label.Get
  169. admin.label.Index
  170. admin.label.List
  171. admin.label.Remove
  172. admin.pool.Add
  173. admin.pool.Info
  174. admin.pool.List
  175. admin.pool.ListDrivers
  176. admin.pool.Remove
  177. admin.pool.Set.revisions_to_keep
  178. admin.pool.UsageDetails
  179. admin.pool.volume.List
  180. admin.property.Get
  181. admin.property.GetAll
  182. admin.property.GetDefault
  183. admin.property.Help
  184. admin.property.List
  185. admin.property.Reset
  186. admin.property.Set
  187. admin.vm.Console
  188. admin.vm.Create.AppVM
  189. admin.vm.Create.DispVM
  190. admin.vm.Create.StandaloneVM
  191. admin.vm.Create.TemplateVM
  192. admin.vm.CreateDisposable
  193. admin.vm.CreateInPool.AppVM
  194. admin.vm.CreateInPool.DispVM
  195. admin.vm.CreateInPool.StandaloneVM
  196. admin.vm.CreateInPool.TemplateVM
  197. admin.vm.CurrentState
  198. admin.vm.Kill
  199. admin.vm.List
  200. admin.vm.Pause
  201. admin.vm.Remove
  202. admin.vm.Shutdown
  203. admin.vm.Start
  204. admin.vm.Stats
  205. admin.vm.Unpause
  206. admin.vm.device.block.Attach
  207. admin.vm.device.block.Available
  208. admin.vm.device.block.Detach
  209. admin.vm.device.block.List
  210. admin.vm.device.block.Set.persistent
  211. admin.vm.device.pci.Attach
  212. admin.vm.device.pci.Available
  213. admin.vm.device.pci.Detach
  214. admin.vm.device.pci.List
  215. admin.vm.device.pci.Set.persistent
  216. admin.vm.feature.CheckWithAdminVM
  217. admin.vm.feature.CheckWithNetvm
  218. admin.vm.feature.CheckWithTemplate
  219. admin.vm.feature.CheckWithTemplateAndAdminVM
  220. admin.vm.feature.Get
  221. admin.vm.feature.List
  222. admin.vm.feature.Remove
  223. admin.vm.feature.Set
  224. admin.vm.firewall.Get
  225. admin.vm.firewall.Reload
  226. admin.vm.firewall.Set
  227. admin.vm.property.Get
  228. admin.vm.property.GetAll
  229. admin.vm.property.GetDefault
  230. admin.vm.property.Help
  231. admin.vm.property.List
  232. admin.vm.property.Reset
  233. admin.vm.property.Set
  234. admin.vm.tag.Get
  235. admin.vm.tag.List
  236. admin.vm.tag.Remove
  237. admin.vm.tag.Set
  238. admin.vm.volume.CloneFrom
  239. admin.vm.volume.CloneTo
  240. admin.vm.volume.Import
  241. admin.vm.volume.ImportWithSize
  242. admin.vm.volume.Info
  243. admin.vm.volume.List
  244. admin.vm.volume.ListSnapshots
  245. admin.vm.volume.Resize
  246. admin.vm.volume.Revert
  247. admin.vm.volume.Set.revisions_to_keep
  248. admin.vm.volume.Set.rw
  249. admin.vmclass.List
  250. include/admin-global-ro
  251. include/admin-global-rwx
  252. include/admin-local-ro
  253. include/admin-local-rwx
  254. policy.RegisterArgument
  255. qubes.ConnectTCP
  256. qubes.FeaturesRequest
  257. qubes.Filecopy
  258. qubes.GetDate
  259. qubes.GetImageRGBA
  260. qubes.GetRandomizedTime
  261. qubes.NotifyTools
  262. qubes.NotifyUpdates
  263. qubes.OpenInVM
  264. qubes.OpenURL
  265. qubes.StartApp
  266. qubes.UpdatesProxy
  267. qubes.VMExec
  268. qubes.VMExecGUI
  269. qubes.VMRootShell
  270. qubes.VMShell
  271. "
  272. for service in $SERVICES; do
  273. if [ -f "/etc/qubes-rpc/policy/$service.rpmsave" ] && \
  274. ! [ -e "/etc/qubes-rpc/policy/$service" ]; then
  275. mv -n "/etc/qubes-rpc/policy/$service.rpmsave" \
  276. "/etc/qubes-rpc/policy/$service"
  277. fi
  278. done
  279. # Take extra care about policy files in include/ - if any of them is gone
  280. # (because unmodified) but user still reference them anywhere, the policy
  281. # loading will be broken. Check for this case, and avoid the issue by creating
  282. # a symlink to the new policy.
  283. INCLUDES="admin-global-ro admin-global-rwx admin-local-ro admin-local-rwx"
  284. for include in $INCLUDES; do
  285. if grep -qr "include/$include" /etc/qubes-rpc && \
  286. ! [ -e "/etc/qubes-rpc/policy/include/$include" ]; then
  287. ln -s "../../../qubes/policy.d/include/$include" \
  288. "/etc/qubes-rpc/policy/include/$include"
  289. fi
  290. done
  291. %files
  292. %defattr(-,root,root,-)
  293. %config(noreplace) %attr(0664,root,qubes) %{_sysconfdir}/qubes/qmemman.conf
  294. %config(noreplace) /etc/logrotate.d/qubes
  295. %attr(770,root,qubes) %dir /etc/qubes/backup
  296. /usr/bin/qvm-*
  297. /usr/bin/qubes-*
  298. /usr/bin/qmemmand
  299. /usr/bin/qubesd*
  300. %{_mandir}/man1/qubes*.1*
  301. %{_mandir}/man1/qvm-*.1*
  302. %dir %{python3_sitelib}/qubes-*.egg-info
  303. %{python3_sitelib}/qubes-*.egg-info/*
  304. %dir %{python3_sitelib}/qubes
  305. %dir %{python3_sitelib}/qubes/__pycache__
  306. %{python3_sitelib}/qubes/__pycache__/*
  307. %{python3_sitelib}/qubes/__init__.py
  308. %{python3_sitelib}/qubes/app.py
  309. %{python3_sitelib}/qubes/backup.py
  310. %{python3_sitelib}/qubes/config.py
  311. %{python3_sitelib}/qubes/devices.py
  312. %{python3_sitelib}/qubes/dochelpers.py
  313. %{python3_sitelib}/qubes/events.py
  314. %{python3_sitelib}/qubes/exc.py
  315. %{python3_sitelib}/qubes/features.py
  316. %{python3_sitelib}/qubes/firewall.py
  317. %{python3_sitelib}/qubes/log.py
  318. %{python3_sitelib}/qubes/rngdoc.py
  319. %{python3_sitelib}/qubes/tarwriter.py
  320. %{python3_sitelib}/qubes/utils.py
  321. %dir %{python3_sitelib}/qubes/api
  322. %dir %{python3_sitelib}/qubes/api/__pycache__
  323. %{python3_sitelib}/qubes/api/__pycache__/*
  324. %{python3_sitelib}/qubes/api/__init__.py
  325. %{python3_sitelib}/qubes/api/admin.py
  326. %{python3_sitelib}/qubes/api/internal.py
  327. %{python3_sitelib}/qubes/api/misc.py
  328. %dir %{python3_sitelib}/qubes/vm
  329. %dir %{python3_sitelib}/qubes/vm/__pycache__
  330. %{python3_sitelib}/qubes/vm/__pycache__/*
  331. %{python3_sitelib}/qubes/vm/__init__.py
  332. %{python3_sitelib}/qubes/vm/adminvm.py
  333. %{python3_sitelib}/qubes/vm/appvm.py
  334. %{python3_sitelib}/qubes/vm/dispvm.py
  335. %{python3_sitelib}/qubes/vm/qubesvm.py
  336. %{python3_sitelib}/qubes/vm/standalonevm.py
  337. %{python3_sitelib}/qubes/vm/templatevm.py
  338. %dir %{python3_sitelib}/qubes/vm/mix
  339. %dir %{python3_sitelib}/qubes/vm/mix/__pycache__
  340. %{python3_sitelib}/qubes/vm/mix/__pycache__/*
  341. %{python3_sitelib}/qubes/vm/mix/__init__.py
  342. %{python3_sitelib}/qubes/vm/mix/net.py
  343. %dir %{python3_sitelib}/qubes/storage
  344. %dir %{python3_sitelib}/qubes/storage/__pycache__
  345. %{python3_sitelib}/qubes/storage/__pycache__/*
  346. %{python3_sitelib}/qubes/storage/__init__.py
  347. %{python3_sitelib}/qubes/storage/file.py
  348. %{python3_sitelib}/qubes/storage/reflink.py
  349. %{python3_sitelib}/qubes/storage/kernels.py
  350. %{python3_sitelib}/qubes/storage/lvm.py
  351. %dir %{python3_sitelib}/qubes/tools
  352. %dir %{python3_sitelib}/qubes/tools/__pycache__
  353. %{python3_sitelib}/qubes/tools/__pycache__/*
  354. %{python3_sitelib}/qubes/tools/__init__.py
  355. %{python3_sitelib}/qubes/tools/qmemmand.py
  356. %{python3_sitelib}/qubes/tools/qubes_create.py
  357. %{python3_sitelib}/qubes/tools/qubesd.py
  358. %{python3_sitelib}/qubes/tools/qubesd_query.py
  359. %dir %{python3_sitelib}/qubes/ext
  360. %dir %{python3_sitelib}/qubes/ext/__pycache__
  361. %{python3_sitelib}/qubes/ext/__pycache__/*
  362. %{python3_sitelib}/qubes/ext/__init__.py
  363. %{python3_sitelib}/qubes/ext/admin.py
  364. %{python3_sitelib}/qubes/ext/block.py
  365. %{python3_sitelib}/qubes/ext/core_features.py
  366. %{python3_sitelib}/qubes/ext/gui.py
  367. %{python3_sitelib}/qubes/ext/audio.py
  368. %{python3_sitelib}/qubes/ext/pci.py
  369. %{python3_sitelib}/qubes/ext/r3compatibility.py
  370. %{python3_sitelib}/qubes/ext/services.py
  371. %{python3_sitelib}/qubes/ext/windows.py
  372. %dir %{python3_sitelib}/qubes/tests
  373. %dir %{python3_sitelib}/qubes/tests/__pycache__
  374. %{python3_sitelib}/qubes/tests/__pycache__/*
  375. %{python3_sitelib}/qubes/tests/__init__.py
  376. %{python3_sitelib}/qubes/tests/run.py
  377. %{python3_sitelib}/qubes/tests/extra.py
  378. %{python3_sitelib}/qubes/tests/api.py
  379. %{python3_sitelib}/qubes/tests/api_admin.py
  380. %{python3_sitelib}/qubes/tests/api_internal.py
  381. %{python3_sitelib}/qubes/tests/api_misc.py
  382. %{python3_sitelib}/qubes/tests/app.py
  383. %{python3_sitelib}/qubes/tests/devices.py
  384. %{python3_sitelib}/qubes/tests/devices_block.py
  385. %{python3_sitelib}/qubes/tests/events.py
  386. %{python3_sitelib}/qubes/tests/ext.py
  387. %{python3_sitelib}/qubes/tests/firewall.py
  388. %{python3_sitelib}/qubes/tests/init.py
  389. %{python3_sitelib}/qubes/tests/rpc_import.py
  390. %{python3_sitelib}/qubes/tests/storage.py
  391. %{python3_sitelib}/qubes/tests/storage_file.py
  392. %{python3_sitelib}/qubes/tests/storage_reflink.py
  393. %{python3_sitelib}/qubes/tests/storage_kernels.py
  394. %{python3_sitelib}/qubes/tests/storage_lvm.py
  395. %{python3_sitelib}/qubes/tests/tarwriter.py
  396. %dir %{python3_sitelib}/qubes/tests/vm
  397. %dir %{python3_sitelib}/qubes/tests/vm/__pycache__
  398. %{python3_sitelib}/qubes/tests/vm/__pycache__/*
  399. %{python3_sitelib}/qubes/tests/vm/__init__.py
  400. %{python3_sitelib}/qubes/tests/vm/init.py
  401. %{python3_sitelib}/qubes/tests/vm/adminvm.py
  402. %{python3_sitelib}/qubes/tests/vm/appvm.py
  403. %{python3_sitelib}/qubes/tests/vm/dispvm.py
  404. %{python3_sitelib}/qubes/tests/vm/qubesvm.py
  405. %dir %{python3_sitelib}/qubes/tests/vm/mix
  406. %dir %{python3_sitelib}/qubes/tests/vm/mix/__pycache__
  407. %{python3_sitelib}/qubes/tests/vm/mix/__pycache__/*
  408. %{python3_sitelib}/qubes/tests/vm/mix/__init__.py
  409. %{python3_sitelib}/qubes/tests/vm/mix/net.py
  410. %dir %{python3_sitelib}/qubes/tests/tools
  411. %dir %{python3_sitelib}/qubes/tests/tools/__pycache__
  412. %{python3_sitelib}/qubes/tests/tools/__pycache__/*
  413. %{python3_sitelib}/qubes/tests/tools/__init__.py
  414. %dir %{python3_sitelib}/qubes/tests/integ
  415. %dir %{python3_sitelib}/qubes/tests/integ/__pycache__
  416. %{python3_sitelib}/qubes/tests/integ/__pycache__/*
  417. %{python3_sitelib}/qubes/tests/integ/__init__.py
  418. %{python3_sitelib}/qubes/tests/integ/backup.py
  419. %{python3_sitelib}/qubes/tests/integ/backupcompatibility.py
  420. %{python3_sitelib}/qubes/tests/integ/basic.py
  421. %{python3_sitelib}/qubes/tests/integ/devices_block.py
  422. %{python3_sitelib}/qubes/tests/integ/devices_pci.py
  423. %{python3_sitelib}/qubes/tests/integ/dispvm.py
  424. %{python3_sitelib}/qubes/tests/integ/dom0_update.py
  425. %{python3_sitelib}/qubes/tests/integ/vm_update.py
  426. %{python3_sitelib}/qubes/tests/integ/mime.py
  427. %{python3_sitelib}/qubes/tests/integ/network.py
  428. %{python3_sitelib}/qubes/tests/integ/network_ipv6.py
  429. %{python3_sitelib}/qubes/tests/integ/grub.py
  430. %{python3_sitelib}/qubes/tests/integ/salt.py
  431. %{python3_sitelib}/qubes/tests/integ/qrexec.py
  432. %{python3_sitelib}/qubes/tests/integ/storage.py
  433. %{python3_sitelib}/qubes/tests/integ/vm_qrexec_gui.py
  434. %dir %{python3_sitelib}/qubes/tests/integ/tools
  435. %dir %{python3_sitelib}/qubes/tests/integ/tools/__pycache__
  436. %{python3_sitelib}/qubes/tests/integ/tools/__pycache__/*
  437. %{python3_sitelib}/qubes/tests/integ/tools/__init__.py
  438. %{python3_sitelib}/qubes/tests/integ/tools/qubes_create.py
  439. %dir %{python3_sitelib}/qubes/qmemman
  440. %dir %{python3_sitelib}/qubes/qmemman/__pycache__
  441. %{python3_sitelib}/qubes/qmemman/__pycache__/*
  442. %{python3_sitelib}/qubes/qmemman/__init__.py
  443. %{python3_sitelib}/qubes/qmemman/algo.py
  444. %{python3_sitelib}/qubes/qmemman/client.py
  445. /usr/lib/qubes/cleanup-dispvms
  446. /usr/lib/qubes/fix-dir-perms.sh
  447. /usr/lib/qubes/startup-misc.sh
  448. %{_unitdir}/lvm2-pvscan@.service.d/30_qubes.conf
  449. %{_unitdir}/qubes-core.service
  450. %{_unitdir}/qubes-qmemman.service
  451. %{_unitdir}/qubes-vm@.service
  452. %{_unitdir}/qubesd.service
  453. %attr(2770,root,qubes) %dir /var/lib/qubes
  454. %attr(2770,root,qubes) %dir /var/lib/qubes/vm-templates
  455. %attr(2770,root,qubes) %dir /var/lib/qubes/appvms
  456. %attr(2770,root,qubes) %dir /var/lib/qubes/servicevms
  457. %attr(2770,root,qubes) %dir /var/lib/qubes/backup
  458. %attr(2770,root,qubes) %dir /var/lib/qubes/dvmdata
  459. %attr(2770,root,qubes) %dir /var/lib/qubes/vm-kernels
  460. /usr/share/qubes/templates/libvirt/xen.xml
  461. /usr/share/qubes/templates/libvirt/devices/block.xml
  462. /usr/share/qubes/templates/libvirt/devices/pci.xml
  463. /usr/share/qubes/templates/libvirt/devices/net.xml
  464. /usr/lib/tmpfiles.d/qubes.conf
  465. /etc/xen/scripts/block-snapshot
  466. /etc/xen/scripts/block-origin
  467. /etc/xen/scripts/vif-route-qubes
  468. %attr(0664,root,qubes) %config(noreplace) /etc/qubes/policy.d/90-admin-default.policy
  469. %attr(0664,root,qubes) %config(noreplace) /etc/qubes/policy.d/90-default.policy
  470. %attr(0664,root,qubes) %config(noreplace) /etc/qubes/policy.d/include/admin-global-ro
  471. %attr(0664,root,qubes) %config(noreplace) /etc/qubes/policy.d/include/admin-global-rwx
  472. %attr(0664,root,qubes) %config(noreplace) /etc/qubes/policy.d/include/admin-local-ro
  473. %attr(0664,root,qubes) %config(noreplace) /etc/qubes/policy.d/include/admin-local-rwx
  474. /etc/qubes-rpc/admin.*
  475. /etc/qubes-rpc/qubes.FeaturesRequest
  476. /etc/qubes-rpc/qubes.GetDate
  477. /etc/qubes-rpc/qubes.GetRandomizedTime
  478. /etc/qubes-rpc/qubes.NotifyTools
  479. /etc/qubes-rpc/qubes.NotifyUpdates
  480. /etc/qubes-rpc/qubes.ConnectTCP
  481. %attr(2770,root,qubes) %dir /var/log/qubes
  482. %attr(0770,root,qubes) %dir /var/run/qubes
  483. /usr/share/doc/qubes/relaxng/*.rng
  484. %changelog
  485. @CHANGELOG@