diff --git a/.gitlab_pages_redirects b/.gitlab_pages_redirects deleted file mode 100644 index 6ae6b270..00000000 --- a/.gitlab_pages_redirects +++ /dev/null @@ -1,54 +0,0 @@ -# Redirects to golang module pages -/libvirt-go /libvirt-go.html 200 -/libvirt-go-xml /libvirt-go-xml.html 200 -/go/libvirt /go/libvirt.html 200 -/go/libvirtxml /go/libvirtxml.html 200 - -# Redirects to the download server -/sources/* https://download.libvirt.org/:splat 301 -/ruby/download/* https://download.libvirt.org/ruby/:splat 301 -/maven2/org/libvirt/* https://download.libvirt.org/maven2/org/libvirt/:splat 301 - -# Redirects to subproject pages -/ruby/* https://ruby.libvirt.org/:splat 301 -/ocaml/* https://ocaml.libvirt.org/:splat 301 -/php/* https://php.libvirt.org/:splat 301 -/libvirt-appdev-guide-python/en-US/html/* https://libvirt.gitlab.io/libvirt-appdev-guide-python/:splat: 301 -/java.html https://java.libvirt.org 301 -# Redirect to the proper javadoc directory on the subproject page -/sources/java/javadoc/* https://java.libvirt.org/javadoc/:splat 301 - -# Redirects from old gitweb location (see below) -/git https://gitlab.com/libvirt/ 301 - -# The above rules are adapted from the following set of 'mod_rewrite' rules used -# originally on libvirt.org: -# -# RewriteRule ^/libvirt-go$ /libvirt-go.html [L] -# RewriteRule ^/libvirt-go-xml$ /libvirt-go-xml.html [L] -# RewriteRule ^/go/libvirt$ /go/libvirt.html [L] -# RewriteRule ^/go/libvirtxml$ /go/libvirtxml.html [L] -# RewriteRule ^/sources/(.*) https://download.libvirt.org/$1 [L] -# RewriteRule ^/ruby/download/(.*) https://download.libvirt.org/ruby/$1 [L] -# RewriteRule ^/(maven2/org/libvirt.*) https://download.libvirt.org/$1 [L] -# RewriteRule ^/ocaml/(.*) https://ocaml.libvirt.org/$1 [L] -# RewriteRule ^/ruby/(.*) https://ruby.libvirt.org/$1 [L] -# RewriteRule ^/php/(.*) https://php.libvirt.org/$1 [L] -# RewriteRule ^/java.html https://java.libvirt.org [L] -# RewriteRule ^/docs/libvirt-appdev-guide-python/en-US/html/(.*) https://libvirt.gitlab.io/libvirt-appdev-guide-python/$1 [L] -# RewriteRule ^/git https://gitlab.com/libvirt/ [L] -# -# Redirect replacing 'gitweb'. The 'gitweb' interface was originally replaced -# by the following redirect condition: -# -# RewriteCond %{QUERY_STRING} p=([-a-zA-Z0-9]+).git -# RewriteRule ^/git/$ https://gitlab.com/libvirt/%1 [L] -# -# That unfortunately can't be represented in gitlab redirects as it doesn't -# support redirects based on query strings. Given that the above redirect broke -# most gitweb links anyways, due to handling only the 'p=' argument, git gitlab -# redirect will break the rest of them. -# -# The following rule was dropped as the page never existed: -# -# RewriteRule ^/libvirt-console-proxy$ /libvirt-console-proxy.html [L] diff --git a/AUTHORS.rst b/AUTHORS.rst index 52a2d936..8a2bac9c 100644 --- a/AUTHORS.rst +++ b/AUTHORS.rst @@ -95,8 +95,6 @@ Patches have also been contributed by: * Takahashi Tomohiro * Tatsuro Enokura -* Abhiram Tilak -* Adam Julis * Adam Litke * Adam Walters * Adolfo Jayme Barrientos @@ -107,15 +105,14 @@ Patches have also been contributed by: * Aleksandr Alekseev * Aleksei Zakharov * Ales Musil +* Alex Jia +* Alex Williamson * Alexander Burluka * Alexander Burluka * Alexander Larsson * Alexander Nusov * Alexander Todorov * Alexander Vasilenko -* Alexandra Diupina -* Alex Jia -* Alex Williamson * Aline Manera * Allen, John * Alon Levy @@ -125,28 +122,24 @@ Patches have also been contributed by: * Amy Griffis * Anastasia Belova * Anatole Denis -* Andi Chandler * Andika Triwidada * Andrea Bolognani * Andres Lagar-Cavilla * Andrew Melnychenko * Andrew Miloradovsky -* Anirban Chakraborty -* Ani Sinha * Ani Sinha +* Ani Sinha +* Anirban Chakraborty * Ansis Atteka * Anthony Liguori * Anthony PERARD * Antoine Millet -* antonios-f -* Antoni Segura Puimedon -* Antoni S. Puimedon * Anton Khramov +* Antoni S. Puimedon +* Antoni Segura Puimedon * Anya Harter -* aokblast * Arnaud Patard * Aron Griffis -* Artem Chernyshev * Artur Puzio * Asad Saeed * Ashish Mittal @@ -164,14 +157,12 @@ Patches have also been contributed by: * Beat Jörg * Ben Gray * Benjamin Cama -* Benjamin Taubmann * Bharata B Rao * BiaoXiang Ye * Bihong Yu * Binfeng Wu * Bing Bu Cao * Bing Niu -* Biswapriyo Nath * Bjoern Walk * Bjoern Walk * Bob Liu @@ -180,7 +171,6 @@ Patches have also been contributed by: * Boris Fiuczynski * Boris Fiuczynski * Brandon Bennett -* Brett Holman * Brian Candler * Brian Turek * Brijesh Singh @@ -188,27 +178,28 @@ Patches have also been contributed by: * Bruno Haible * Bryan Kearney * Cao jin -* caoxinhua * Carlos Bilbao * Carlos Santos * Casey Callendrello * Cedric Bosdonnat -* Cédric Bosdonnat * Chang Liu * Chao Fan * Charles Duffy * Chegu Vinod * Chen Fan -* Cheng Lin * Chen Hanxiao * Chen Hanxiao * Chen Hanxiao +* Cheng Lin * Chris Coulson * Chris J Arges * Chris Jester-Young * Chris Lalancette * Chris Mayo * Chris St. Pierre +* Chris Venteicher +* Chris Wong +* Chris Wright * Christian Benvenuti * Christian Ehrhardt * Christian Franke @@ -217,11 +208,8 @@ Patches have also been contributed by: * Christian Nautze * Christian Schoenebeck * Christoffer Dall -* Christophe de Dinechin * Christophe Fergeau -* Chris Venteicher -* Chris Wong -* Chris Wright +* Christophe de Dinechin * Chuck Short * Chuck Short * Chunhe Li @@ -234,12 +222,16 @@ Patches have also been contributed by: * Cole Robinson * Collin L. Walling * Collin Walling -* Côme Borsoi * Conrad Meyer * Corey S. McQuay * Cornelia Huck * Cristian Klein +* Cédric Bosdonnat +* Côme Borsoi * Dan Horák +* Dan Kenigsberg +* Dan Smith +* Dan Zheng * Daniel Berteaud * Daniel Gollub * Daniel Hansel @@ -252,11 +244,6 @@ Patches have also been contributed by: * Daniel P. Berrangé * Daniel Veillard * Dankaházi (ifj.) István -* Dan Kenigsberg -* dann frazier -* Danny Sauer -* Dan Smith -* Dan Zheng * Dario Faggioli * Dario Faggioli * Darryl L. Pierce @@ -264,27 +251,25 @@ Patches have also been contributed by: * David Dai * David Jorm * David Kiarie -* David L. Leskovec -* Davidlohr Bueso * David L Stevens +* David L. Leskovec * David Mansfield * David Michael -* David Shane Holden * David S. Wang +* David Shane Holden * David Weber -* Dawid Zamirski +* Davidlohr Bueso * Dawid Zamirski +* Dawid Zamirski * Dawid Zamirski * Deepak C Shetty * Denis Kondratenko -* Denis V. Lunev * Dennis Chen * Derbyshev Dmitry * Didik Supriadi * Diego Elio Pettenò * Diego Michelotto * Diego Woitasen -* dinglimin * Dipankar Sarma * Dirk Herrendoerfer * Divya Garg @@ -300,21 +285,18 @@ Patches have also been contributed by: * Don Dugger * Doug Goldstein * Douglas Schilling Landgraf -* Dr. David Alan Gilbert * Duncan Rance * Dustin Kirkland * Dustin Xiong * Dusty Mabe * Dwight Engen -* eater <=@eater.me> -* Edan David * Ed Swierk +* Edan David * Eduardo Costa * Eduardo Habkost * Eduardo Otubo -* Egor Makrushin -* Eiichi Tsukata * Eiichi Tsukata +* Eiichi Tsukata * Eli Qiao * Eli Qiao * Emilio Herrera @@ -322,8 +304,8 @@ Patches have also been contributed by: * Eric Farman * Eric Farman * Eric Garver -* Eric van Blokland * Eric W. Biederman +* Eric van Blokland * Erik Skultety * Ersek Laszlo * Ettore Atalan @@ -336,13 +318,11 @@ Patches have also been contributed by: * Farhan Ali * Farhan Ali * Federico Simoncelli -* Félix Bouliane * Felix Geyer * Felix Geyer * Filip Alac * Fima Shevrin * Florian Vichot -* Foster Snowhill <2486761-ForstPenguin@users.noreply.gitlab.com> * Francesc Guasch * Francesco Romani * Franck Ridel @@ -352,8 +332,8 @@ Patches have also been contributed by: * Frediano Ziglio * Frido Roose * Fritz Elfert +* Félix Bouliane * Gao feng -* gaohaifeng * Garry Dolley * Gary R Hook * Gaurav Agrawal @@ -362,119 +342,102 @@ Patches have also been contributed by: * Gene Czarcinski * Geoff Hickey * George Dunlap -* Georgia Garcia * Gerd Hoffmann * Gerd v. Egidy * Gerhard Stenzel -* Gildasio Junior * Giuseppe Scrivano * Gogo Gogsi -* gongwei -* Göran Uddeborg * Gordon Messmer * Gregor Kopka -* grimst -* Guannan Ren * Guan Qiang -* Guido Günther +* Guannan Ren * Gui Jianfeng -* Guoyi Tu +* Guido Günther +* Göran Uddeborg * Haibin Huang * Halil Pasic * Han Cheng * Han Han * Hao Liu -* Haonan Wang * Hao Peng * Hao Wang +* Haonan Wang * Harry Wei -* Harshavardhana * Harsh Prateek Bora +* Harshavardhana * Haruka Ohata * Heath Petersen -* hejia hejia * Hela Basa * Helmut Grohne * Hendrik Schwartke * Henning Schild * Henrik Persson E * Hero Phương -* hexin * Hiroki Narukawa * Hongbin Lu -* hongmianquan * Hongwei Bi -* Huanle Han -* Huaqiang * Hu Jianwei * Hu Tao +* Huanle Han +* Huaqiang * Hyman Huang(黄勇) -* Ian Campbell * Ian Campbell +* Ian Campbell * Ian Jackson * Ian Main * Ian Wienand * Igor Gnatenko -* ik.nitk * Ilias Stamatis * Ilja Livenson -* intrigeri -* intrigeri * Ioanna Alifieraki * Ishmanpreet Kaur Khera * Ivan Baldo * Ivan Kardykov * Ivan Teterevkov +* J.B. Joret * Jaak Ristioja * Jakob Meng * Jakub Kuczys * James Chapman * James Cowgill -* james robson * James Shubin * Jamie Strandboge * Jan Kiszka * Jan Kuparinen * Jan Palus -* Ján Tomko * Jaroslav Safka * Jaroslav Suchanek * Jason Andryuk * Jason Baron * Jason Dillaman * Jason J. Herne -* jason lee * Jason Miesionczek * Jasper Lievisse Adriaanse * Jasper Lievisse Adriaanse -* J.B. Joret * Jean-Baptiste Holcroft * Jean-Baptiste Rouault * Jean-Louis Dupond * Jean-Marc Liger * Jens Petersen -* Jérémie Tarot * Jeremy Fitzhardinge * Jesse Cook * Jesse J. Cook +* Jia Zhou * Jianan Gao -* jiangjiacheng * Jiang Jiacheng * Jiang Kun -* jianqing yan * Jianwei Hu -* Jia Zhou * Jidong Xia * Jie Wang * JieWang * Jim Fehlig * Jim Meyering * Jim Paris +* Jin Yan * Jincheng Miao -* Jingjing Shao * Jing Qi +* Jingjing Shao * Jinsheng Zhang -* Jin Yan * Jiri Denemark * Joachim Falk * Joao Martins @@ -491,9 +454,7 @@ Patches have also been contributed by: * Jonathan Lebon * Jonathan Toppins * Jonathan Watt -* Jonathan Wright * Jonathon Jongsma -* Jon Kohler * Josh Durgin * Josh Stone * Jovanka Gulicoska @@ -504,11 +465,13 @@ Patches have also been contributed by: * Jun Koi * Justin Clift * Justin Gatzen -* Kai Kang +* Ján Tomko +* Jérémie Tarot +* K Shiva +* K Shiva Kiran * KAMEZAWA Hiroyuki -* Kamil Szczęk +* Kai Kang * Karel Zak -* Karim Taha * Kashyap Chamarthy * Katerina Koukiou * Kay Schubert @@ -523,9 +486,6 @@ Patches have also been contributed by: * Konstantin Neumoin * Kothapally Madhu Pavan * Kristina Hanicova -* Kshitij Jha -* K Shiva Kiran -* K Shiva * Kyle DeFrancia * Kyle Mestery * Ladi Prosek @@ -536,72 +496,68 @@ Patches have also been contributed by: * Laura Hild * Laurent Bigonville * Laurent Léonard -* lawrancejing * Lee Yarwood * Lei Li * Lei Yang -* Lénaïc Huard * Lena Voytek -* Lennart Fricke * Leno Hou * Leonid Bloch +* Li Yang +* Li Zhang * Liang Yan * Liao Pingfang -* liguang * Lily Zhu -* Lincoln Myers * Lin Ma * Lin Ma * Lin Ma * Lin Yang -* liqiang +* Lincoln Myers * Liu Dayu -* Liuji (Jeremy) * Liu Yiding -* Li Yang -* Li Zhang +* Liuji (Jeremy) * Lorin Hochstein +* Lu Ke * Lubomir Rintel * Ludek Janda * Ludovic Beliveau * Luiz Capitulino -* Lu Ke * Luke Yue * Luyao Huang * Luyao Zhong -* lu zhipeng -* luzhipeng +* Lénaïc Huard +* MATSUDA Daiki +* MORITA Kazutaka * Maciej Wolny * Malina Salina * Malte Linke * Manuel VIVES * Mao Zhongyi -* Marc-André Lureau -* Marcelo Cerri * Marc Hartmayer * Marc Hartmayer +* Marc-André Lureau +* Marcelo Cerri * Marco Bozzolan * Marcos Paulo de Souza -* Marek Marczykowski-Górecki * Marek Marczykowski +* Marek Marczykowski-Górecki * Mariam Low-Ghelaghutashvili * Marian Neagul * Mark Asselstine * Mark McLoughlin * Mark Mielke +* Mark Wu * Marko Myllynen * Markus Groß * Markus Schade -* Mark Wu +* Marti Raudsepp * Martin Kletzander * Martin Pietsch * Martin Pitt * Martin Wilck -* Marti Raudsepp * Masayoshi Mizuma * Matej Cepl -* MATSUDA Daiki * Matt Coleman +* Matt Low * Matthew Booth * Matthew Rosato * Matthias Bolte @@ -609,16 +565,15 @@ Patches have also been contributed by: * Matthias Gatto * Matthieu Coudron * Mattias Bolte -* Matt Low * Matwey V. Kornilov * Mauro Matteo Cascella * Mauro S. M. Rodrigues * Max Goodhart -* Maxime Leroy -* Maximilian Wilhelm * Maxim Kozin * Maxim Nestratov * Maxim Perevedentsev +* Maxime Leroy +* Maximilian Wilhelm * Maxiwell S. Garcia * Maya Rashish * Mehdi Abaakouk @@ -634,12 +589,12 @@ Patches have also been contributed by: * Michael Wood * Michal Dubiel * Michal Koutný -* Michał Łomnicki * Michal Novotny * Michal Prívozník * Michał Smyk -* Michele Paolino +* Michał Łomnicki * Michel Normand +* Michele Paolino * Miguel Ángel Arruga Vivas * Mike Latimer * Mike Perez @@ -647,18 +602,14 @@ Patches have also been contributed by: * Mikhail Feoktistov * Mikhail Feoktistov * Milo Casagrande -* Miloslav Trmač * Milos Vyletel -* minglei.liu +* Miloslav Trmač * Minoru Usui -* Miroslav Los -* Miroslav Los via Devel +* Mo yuxiang * Mooli Tayer -* MORITA Kazutaka * Moshe Levi * Moshe Levi * Moteen Shah -* Mo yuxiang * Muha Aliss * Nan Zhang * Naoya Horiguchi @@ -672,17 +623,15 @@ Patches have also been contributed by: * Nick Chevsky * Nick Shyrokovskiy * Nickys Music Group +* Nico Pache * Nicolas Brignone * Nicolas Lécureuil -* Nico Pache * Niels de Vos * Nikolai Barybin -* Nikolai Barybin via Devel * Nikolay Shirokovskiy * Nikolay Shirokovskiy * Nikos Mavrogiannopoulos * Nikunj A. Dadhania -* ning.bo * Nishank Trivedi * Nishith Shah * Niteesh Dubey @@ -692,16 +641,15 @@ Patches have also been contributed by: * Ohad Levy * Olaf Hering * Oleg Strikov -* Oleg Sviridov * Oleg Vasilev * Oleksandr Tyshchenko * Olesya Gerasimenko * Olga Krishtal -* Olivia Yin * Olivia Yin +* Olivia Yin * Olivier Fourdan -* Orion Poplawski * Or Ozeri +* Orion Poplawski * Osier Yang * Oskari Saarenmaa * Ossi Herrala @@ -730,8 +678,8 @@ Patches have also been contributed by: * Peter Kieser * Peter Krempa * Peter Robinson -* Philipp Hahn * Phil Petty +* Philipp Hahn * Pierre LIBEAU * Pieter Hollants * Pino Toscano @@ -739,17 +687,14 @@ Patches have also been contributed by: * Piotr Drąg * Pradipta Kr. Banerjee * Pradipta Kr. Banerjee -* Prafullkumar Tale * Prafull +* Prafullkumar Tale * Pranavkumar Sawargaonkar * Prasanna Kumar Kalever * Prathamesh Chavan * Praveen K Paladugu -* Praveen K Paladugu * Prerna Saxena * Pritesh Kothari -* Purna Pavan Chandra Aekkaladevi -* Purna Pavan Chandra * Qiao Nuohan * Qiaowei Ren * Radoslaw Biernacki @@ -758,15 +703,12 @@ Patches have also been contributed by: * Rafael Fonseca * Rainer Müller * Ramon Medeiros -* ramyelkest -* Rayhan Faizel -* ray * Reinier Schoof * Remus-Gabriel Chelu * Richa Marwaha * Richard Laager -* Richard Weinberger * Richard W.M. Jones +* Richard Weinberger * Rick Harris * Ricky Tigg * Rikard Falkeborn @@ -789,7 +731,6 @@ Patches have also been contributed by: * Ryan Harper * Ryan Moeller * Ryan Schmidt -* ryan woodsmall * Ryan Woodsmall * Ryota Ozaki * Sage Weil @@ -797,8 +738,6 @@ Patches have also been contributed by: * Sahid Orentino Ferdjaoui * Sam Bobroff * Sam Hartman -* Sandesh Patel -* sannyshao * Sascha Peilicke * Sascha Silbe * Satoru Moriya @@ -817,22 +756,19 @@ Patches have also been contributed by: * Serge Hallyn * Sergey A * Sergey Bronnikov -* Sergey Dyasli * Sergey Fionov * Sergey Mironov -* Sergio Durigan Junior * Shahar Klein * Shaleen Bathla * Shalini Chellathurai Saroja * Shalini Chellathurai Saroja * Shanzhi Yu -* Shaohe Feng * ShaoHe Feng +* Shaohe Feng * Shaojun Yang * Sharadha Prabhakar -* shenjiatong -* Shichangkuo * Shi Lei +* Shichangkuo * Shivangi Dhir * Shivaprasad G Bhat * Shivaprasad G Bhat @@ -840,51 +776,47 @@ Patches have also been contributed by: * Shradha Shah * Shuang He * Silvan Kaiser -* 김인수 -* simmon * Simon Arlott * Simon Chopin -* Simone Gotti * Simon Kobyda * Simon McVittie * Simon Rowe -* Sławek Kapłoński +* Simone Gotti * Soren Hansen * Spencer Shimko * Sri Ramanujam * Srivatsa S. Bhat +* Stef Walter * Stefan Bader * Stefan Berger * Stefan Berger * Stefan Hajnoczi * Stefan Hajnoczi * Stefan Hajnoczi -* Stefano Brivio * Stefan Schallenberg * Stefan Seyfried * Stefan Zimmermann -* Stef Walter +* Stefano Brivio * Steve Hodgson -* Steven McDonald * Steve Yarmie +* Steven McDonald * Sukadev Bhattiprolu * Sukrit Bhatnagar * Supriya Kannery * Suyang Chen -* Swapnil Ingle * Syed Humaid * Szymon Scholz +* Sławek Kapłoński * Taisuke Yamada * Taizo ITO * Taku Izumi * Tal Kain * Tang Chen -* Taowei Luo * Taowei +* Taowei Luo * Temuri Doghonadze * Thadeu Lima de Souza Cascardo * Thang Pham -* Thanos Makatos * Thibault VINCENT * Thierry Parmentelat * Thomas Huth @@ -892,27 +824,23 @@ Patches have also been contributed by: * Thomas Woerner * Thorsten Behrens * Tiago M. Vieira -* Timothée Ravier * Tim Shearer * Tim Small * Tim Wiederhake * Tiziano Mueller * Tobin Feldman-Fitzthum -* Tomáš Golembiovský -* Tomáš Janoušek +* Tom Vijlbrief +* Tom Wieczorek * Tomas Meszaros -* Tomáš Ryšavý * Tomasz Flendrich * Tomoki Sekiyama -* Tom Vijlbrief -* Tom Wieczorek +* Tomáš Golembiovský +* Tomáš Janoušek +* Tomáš Ryšavý * Tony Krowiak * Tony Krowiak -* ttxine * Tuguoyi -* tuqiang * Tyler Coumbes -* Václav Pavlín * Vasiliy Tolstov * Vasiliy Ulyanov * Victor Toso @@ -921,31 +849,26 @@ Patches have also been contributed by: * Ville Skyttä * Vinayak Kale * Vincent Bernat -* Vincent Vanlaer * Vineeth Pillai * Vitaly Kuznetsov * Vitor de Lima * Vladislav Bogdanov -* w00251574 +* Václav Pavlín * Wang Huaqiang -* wangjian -* Wangjing (King, Euler) * Wang King -* Wangrui (K) * Wang Rui * Wang Xin * Wang Yechao * Wang Yufei (James) -* Weblate +* Wangjing (King, Euler) +* Wangrui (K) * Weblate -* Wei Gong * Wei Huang * Wei Jiangang * Wei Liu * Wei Liu * Weilun Zhu * Weiwei Li -* weiwei li * Wen Congyang * Wido den Hollander * Wieland Hoffmann @@ -955,41 +878,36 @@ Patches have also been contributed by: * Wim ten Have * Wojciech Macek * Wolfgang Mauerer -* Wout Mertens * Wout Mertens +* Wout Mertens * Wu Zongyong -* Xianglai Li * Xian Han Yu * Xiao Feng Ren * Xing Lin -* xinhua.Cao * Xu Chao -* Xuesong Zhang * Xu He Jie * Xu Yandong -* xuzhang +* Xuesong Zhang * Yalan Zhang * Yalei Li <274268859@qq.com> +* Yan Fu +* Yan Wang * Yanbing Du * Yanbing Du -* Yan Fu -* yangdongsheng * Yang Fei * Yang Yulin * Yaniv Kaul * Yanqiu Zhang -* Yan Wang * Yaroslav Kargin * Yasuhiko Kamata * Yi Li * Yi Min Zhao -* Yingle Hou * Yi Wang +* Yingle Hou * Yogesh Tillu * Yohan BELLEGUIC * Your Name * Yudai Yamagish -* yuelongguang * Yue wenyuan * Yufang Zhang * Yufang Zhang @@ -1003,32 +921,69 @@ Patches have also been contributed by: * Zdenek Styblik * Zeeshan Ali (Khattak) * Zeng Junliang -* zhanchun li -* zhang bo * Zhang Bo -* zhangjl02 -* zhanglei * Zhang Xiaohe * Zhangzijian * Zheng Chuan * Zhenguo Yao -* Zheng Yan -* zhenwei pi * Zhenyu Ye * Zhenyu Zhang * Zhenyu Zheng * Zhenzhong Duan -* Zhimin Feng -* ZhiPeng Lu * ZhiPeng Lu -* Zhou yimin +* ZhiPeng Lu +* Zhimin Feng * Zhou Yimin +* Zhou yimin * Zhuang Yanying +* antonios-f +* caoxinhua +* dann frazier +* dinglimin +* eater <=@eater.me> +* gaohaifeng +* gongwei +* grimst +* hejia hejia +* hexin +* ik.nitk +* intrigeri +* intrigeri +* james robson +* jason lee +* jiangjiacheng +* lawrancejing +* liguang +* liqiang +* lu zhipeng +* luzhipeng +* minglei.liu +* ning.bo +* ramyelkest +* ryan woodsmall +* sannyshao +* shenjiatong +* simmon +* ttxine +* tuqiang +* w00251574 +* wangjian +* weiwei li +* xinhua.Cao +* xuzhang +* yangdongsheng +* yuelongguang +* zhanchun li +* zhang bo +* zhangjl02 +* zhanglei +* zhenwei pi * zhujun2 * zuoboqun * Анастасия Белова * Дамјан Георгиевски * Марк Коренберг +* 김인수 The libvirt logo was designed by Diana Fong diff --git a/NEWS.rst b/NEWS.rst index 33fadbef..16bfa177 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -8,615 +8,6 @@ the changes introduced by each of them. For a more fine-grained view, use the `git log`_. -v10.7.0 (2024-09-02) -==================== - -* **Security** - - * CVE-2024-8235: Crash of ``virtinterfaced`` via ``virConnectListInterfaces()`` - - A refactor of the code fetching the list of interfaces for multiple APIs - introduced corner case on platforms where allocating 0 bytes of memory - results in a NULL pointer. - - This corner case would lead to a NULL-pointer dereference and subsequent - crash of ``virtinterfaced`` if ``virConnectListInterfaces()`` is called - requesting 0 networks to be filled. - - The bug was introduced in libvirt-10.4.0 - -* **New features** - - * qemu: Introduce the ability to disable the built-in PS/2 controller - - It is now possible to control the state of the ``ps2`` feature in the - domain XML for descendants of the generic PC machine type (``i440fx``, - ``q35``, ``xenfv`` and ``isapc``). - -* **Improvements** - - * ch: support restore with network devices - - Cloud-Hypervisor starting from V40.0 supports restoring file descriptor - backed network devices. So, create new net fds and pass them via - SCM_RIGHTS to CH during restore operation. - - * ch: support basic networking modes - Cloud-Hypervisor driver now supports Ethernet, Network (NAT) and Bridge - networking modes. - -v10.6.0 (2024-08-05) -==================== - -* **Removed features** - - * qemu: Require QEMU-5.2.0 or newer - - The minimal required version of QEMU was bumped to 5.2.0. - -* **New features** - - * qemu: Add support for the 'pauth' Arm CPU feature - - * Introduce pstore device - - The aim of pstore device is to provide a bit of NVRAM storage for guest - kernel to record oops/panic logs just before it crashes. Typical usage - includes usage in combination with a watchdog so that the logs can be - inspected after the watchdog rebooted the machine. - -* **Improvements** - - * qemu: Set 'passt' net backend if 'default' is unsupported - - If QEMU is compiled without SLIRP support, and if domain XML allows it, - starting from this release libvirt will use passt as the default backend - instead. Also, supported backends are now reported in the domain - capabilities XML. - - * qemu: add a monitor to /proc/$pid when killing times out - - In cases when a QEMU process takes longer to be killed, libvirt might have - skipped cleaning up after it. But now a /proc/$pid watch is installed so - this does not happen ever again. - -* **Bug fixes** - - * virt-aa-helper: Allow RO access to /usr/share/edk2-ovmf - - When binary version of edk2 is distributed, the files reside under - /usr/share/edk2-ovmf. Allow virt-aa-helper to generate paths under that - directory. - - * virt-host-validate: Allow longer list of CPU flags - - During its run, virt-host-validate parses /proc/cpuinfo to learn about CPU - flags. But due to a bug it parsed only the first 1024 bytes worth of CPU - flags leading to unexpected results. The file is now parsed properly. - - * capabilities: Be more forgiving when decoding OEM strings - - On some systems, OEM strings are scattered in multiple sections. This - confused libvirt when generating capabilities XML. Not anymore. - - -v10.5.0 (2024-07-01) -==================== - -* **New features** - - * Introduce SEV-SNP support - - SEV-SNP is introduced as another type of ````. Its support - is reported in both domain capabilities and ``virt-host-validate``. - -* **Improvements** - - * tools: virt-pki-validate has been rewritten in C - - The ``virt-pki-validate`` shell script has been rewritten as a C program, - providing an output format that matches ``virt-host-validate``, removing - the dependency on ``certtool`` and providing more comprehensive checks - of the certificate properties. - - * qemu: implement iommu coldplug/unplug - - The ```` device can be now cold plugged and/or cold unplugged. - - * Pass shutoff reason to release hook - - Sometimes in release hook it is useful to know if the VM shutdown was - graceful or not. This is especially useful to do cleanup based on the VM - shutdown failure reason in release hook. Starting with this release the - last argument 'extra' is used to pass VM shutoff reason in the call to - release hook. - - * nodedev: improve DASD detection - - In newer DASD driver versions the ID_TYPE tag is supported. This tag is - missing after a system reboot but when the ccw device is set offline and - online the tag is included. To fix this version independently we need to - check if a device detected as type disk is actually a DASD to maintain the - node object consistency and not end up with multiple node objects for - DASDs. - -* **Bug fixes** - - * remote_daemon_dispatch: Unref sasl session when closing client connection - - A memory leak was identified when a client started SASL but then suddenly - closed connection. This is now fixed. - - * qemu: Fix migration with disabled vmx-* CPU features - - Migrating a domain with some vmx-* CPU features marked as disabled could - have failed as the destination would incorrectly expect those features to - be enabled after starting QEMU. - - * qemu: Fix ``libvirtd``/``virtqemud`` crash when VM shuts down during migration - - The libvirt daemon could crash when a VM was shut down while being migrated - to another host. - - -v10.4.0 (2024-06-03) -==================== - -* **New features** - - * qemu: Support for ras feature for virt machine type - - It is now possible to set on/off ``ras`` feature in the domain XML for virt - (Arm) machine type as ````. - - * SSH proxy for VM - - Libvirt now installs a binary helper that allows connecting to QEMU domains - via SSH using the following scheme: ``ssh user@qemu/virtualMachine``. - - * qemu: Support for ``virtio`` sound model - - Sound devices can now be configured to use the virtio model with - ````. This model is available from QEMU 8.2.0 - onwards. - - * network: use nftables to setup virtual network firewall rules - - The network driver can now use nftables rules for the virtual - network firewalls, rather than iptables. With the standard build - options, nftables is preferred over iptables (with fallback to - iptables if nftables isn't installed), but this can be modified at - build time, or at runtime via the firewall_backend setting in - network.conf. (NB: the nwfilter driver still uses - ebtables/iptables). - -* **Improvements** - - * qemu: add zstd to supported compression formats - - Extend the list of supported formats of QEMU save image by adding zstd - compression. - - * qemu: Implement support for hotplugging evdev input devices - - As of this release, hotplug and hotunplug of evdev ```` devices is - supported. - -* **Bug fixes** - - * virsh/virt-admin: Fix ``--help`` option for all commands - - A bug introduced in `v10.3.0 (2024-05-02)`_ caused that the attempt to print - help for any command by using the ``--help`` option in ``virsh`` and - ``virt-admin`` would print:: - - $ virsh list --help - error: command 'list' doesn't support option --help - - instead of the help output. A workaround for the affected version is to use - the help command:: - - $ virsh help list - - * qemu: Fix ``virsh save`` and migration when storage in question is root_squashed NFS - - Attempting to save a VM to a root_squash NFS mount or migrating with disks - hosted on such mount could, in some scenarios, result in error stating:: - - 'Unknown error 255' - - The bug was introduced in `v10.1.0 (2024-03-01)`_. - - * qemu: Don't set affinity for isolcpus unless explicitly requested - - When starting a domain, by default libvirt sets affinity of QEMU process to - all online CPUs. This also included isolated CPUs (``isolcpus=``) which is - wrong. As of this release, isolated CPUs are left untouched, unless - explicitly configured in domain XML. - - * qemu_hotplug: Properly assign USB address to hotplugged usb-net device - - Previously, the network device hotplug logic would try to ensure only CCW - or PCI addresses. With recent support for the usb-net model, USB addresses - for usb-net network devices are assigned automatically. - - * qemu: Fix hotplug of ``virtiofs`` filesystem device with `` - - Some PCI devices have large non-prefetchable memory. This can be a problem - in case when such device needs to be hotplugged as the firmware can't - foresee such situation. The user thus can override the value calculated at - start to accomodate for such devices. - -* **Improvements** - - * Improve validation of USB devices - - Certain USB device types ('sound', 'fs', 'chr', 'ccid' and 'net') were not - properly handled in the check whether the VM config supports USB and thus - would result in poor error messages. - - * virsh: Fix behaviour of ``--name`` and ``--parent`` used together when listing checkpoint and snapshots - - The ``checkpoint-list`` and ``snapshot-list`` commands would ignore the - ``--name`` option to print only the name when used with ``--parent``. - - * Extend libvirt-guests to shutdown only persistent VMs - - Users can now choose to shutdown only persistent VMs when the host is being - shut down. - -* **Bug fixes** - - * qemu: Fix migration with custom XML - - Libvirt 10.2.0 would sometimes complain about incompatible CPU definition - when trying to migrate or save a domain and passing a custom XML even - though such XML was properly generated as migratable. Hitting this bug - depends on the guest CPU definition and the host on which a particular - domain was running. - - * qemu: Fix TLS hostname verification failure in certain non-shared storage migration scenarios - - In certain scenarios (parallel migration, newly also post-copy migration) - libvirt would wrongly pass an empty hostname to QEMU to be used for TLS - certificate hostname validation, which would result into failure of the - non-shared storage migration step:: - - error: internal error: unable to execute QEMU command 'blockdev-add': Certificate does not match the hostname - - * Create OVS ports as transient - - Libvirt now creates OVS ports as transient which prevents them from - reappearing or going stale on sudden reboots. - - * Clear OVS QoS settings when domain shuts down - - Libvirt now clears QoS settings on domain shutdown, so they no longer pile - up in OVS database. - - -v10.2.0 (2024-04-02) -==================== - -* **New features** - - * ch: Basic save and restore support for ch driver - - The ch driver now supports basic save and restore operations. This is - functional on domains without any network, host device config defined. - The ``path`` parameter for save and restore should be a directory. - - * qemu: Support for driver type ``mtp`` in ```` devices - - The ``mtp`` driver type exposes the ``usb-mtp`` device in QEMU. The - guest can access files on this driver through the Media Transfer - Protocol (MTP). - - * qemu: Added support for the loongarch64 architecture - - It is now possible for libvirt to run loongarch64 guests, including on - other architectures via TCG. For the best results, it is recommended to - use the upcoming QEMU 9.0.0 release together with the development version - of edk2. - - * qemu: Introduce virDomainGraphicsReload API - - Reloading the graphics display is now supported for QEMU guests using - VNC. This is useful to make QEMU reload the TLS certificates without - restarting the guest. Available via the ``virDomainGraphicsReload`` API - and the ``domdisplay-reload`` virsh command. - -* **Bug fixes** - - * qemu: Fix migration from libvirt older than 9.10.0 when vmx is enabled - - A domain with vmx feature enabled (which may be even done automatically - with ``mode='host-model'``) started by libvirt 9.9.0 or older cannot be - migrated to libvirt 9.10.0, 10.0.0, and 10.1.0 as the target host would - complain about a lot of extra ``vmx-*`` features. Migration of similar - domains started by the affected releases to libvirt 9.9.0 and older - does not work either. Since libvirt 10.2.0 migration works again with - libvirt 9.9.0 and older in both directions. Migration from the affected - releases to 10.2.0 works as well, but the other direction remains broken - unless the fix is backported. - - * node_device: Don't report spurious errors from PCI VPD parsing - - In last release the PCI Vital Product Data parser was enhanced to report - errors but that effort failed as some kernels have the file but don't allow - reading it causing logs to be spammed with:: - - libvirtd[21055]: operation failed: failed to read the PCI VPD data - - Since the data is used only in the node device XML and errors are ignored if - the parsing failed, this release removes all the error reporting. - - * qemu: set correct SELinux label for unprivileged virtiofsd - - It is now possible to use virtiofsd-based ```` shares even - if the guest is confined using SELinux. - - * qemu: fix a crash on unprivileged virtiofsd hotplug - - Hotplugging virtiofsd-based filesystems works now. - - * virt-admin: Fix segfault when libvirtd dies - - ``virt-admin`` no longer crashes when ``libvirtd`` unexpectedly closes - the connection. - - -v10.1.0 (2024-03-01) -==================== - -* **Security** - - * ``CVE-2024-1441``: Fix off-by-one error leading to a crash - - In **libvirt-1.0.0** there were couple of interface listing APIs - introduced which had an off-by-one error. That error could lead to a - very rare crash if an array was passed to those functions which did - not fit all the interfaces. - - In **libvirt-5.10** a check for non-NULL arrays has been adjusted to - allow for NULL arrays with size 0 instead of rejecting all NULL - arrays. However that made the above issue significantly worse since - that off-by-one error now did not write beyond an array, but - dereferenced said NULL pointer making the crash certain in a - specific scenario in which a NULL array of size 0 was passed to the - aforementioned functions. - -* **New features** - - * nodedev: Support updating mdevs - - The node device driver has been extended to allow updating mediated node - devices. Options are available to target the update against the persistent, - active or both configurations of a mediated device. - **Note:** The support is only available with at least mdevctl v1.3.0 installed. - - * qemu: Add support for /dev/userfaultfd - - On hosts with new enough kernel which supports /dev/userfaultfd libvirt will - now automatically grant QEMU access to this device. It's no longer needed to - set vm.unprivileged_userfaultfd sysctl. - - * qemu: Support clusters in CPU topology - - It is now possible to configure the guest CPU topology to use clusters. - Additionally, if CPU clusters are present in the host topology, they will - be reported as part of the capabilities XML. - - * network: Make virtual domains resolvable from the host - - When starting a virtual network with a new ``register='yes'`` attribute - in the ```` element, libvirt will configure ``systemd-resolved`` - to resolve names of the connected guests using the name server started - for this network. - - * qemu: Introduce dynamicMemslots attribute for virtio-mem - - QEMU now allows setting ``.dynamic-memslots`` attribute for virtio-mem-pci - devices. When turned on, it allows memory exposed to guest to be split into - multiple memory slots and thus smaller memory footprint (see the original - commit for detailed explanation). - -* **Improvements** - - * nodedev: Add ability to update persistent mediated devices by defining them - - Existing persistent mediated devices can now also be updated by - ``virNodeDeviceDefineXML()`` as long as parent and UUID remain unchanged. - - * ch: Enable ``ethernet`` interface mode support - - ```` can now be used for CH domains. - - * viraccessdriverpolkit: Add missing vtpm case - - Secrets with ```` were left unable to be checked for in - the access driver, i.e. in ACL rules. Missing code was provided. - - * virt-admin: Notify users to use explicit URI if connection fails - - ``virt-admin`` doesn't try to guess the URI of the daemon to manage so a - failure to connect may be confusing for users if modular daemons are used. - Add a hint to use the URI of the dameon to manage. - -* **Bug fixes** - - * qemu_process: Skip over non-virtio non-TAP NIC models when refreshing rx-filter - - If ``trustGuestRxFilters`` is enabled for a vNIC that doesn't support it, - libvirt may throw an error when such domain is being started, loaded from a - saved state, migrated, etc. These errors are now silenced, but make sure to - fix such configurations (after previous release it is even possible to - change ``trustGuestRxFilters`` value on live domains via - ``virDomainUpdateDeviceFlags()`` or ``virsh device-update``). - - * domain: Fix check for overlapping ```` devices - - A bug was identified which caused libvirt to report two NVDIMMs as - overlapping even though they weren't. This now fixed. - - * vmx: Accept empty fileName for cdrom-image - - Turns out, ``fileName`` attribute (which contains path to CDROM image) can - be set to an empty string (``""``) to denote a state in which the CDROM has - no medium in it. Libvirt used to reject such configuration file, but not - anymore. - - * qemu_hotplug: Don't lose 'created' flag in qemuDomainChangeNet() - - When starting a domain, libvirt tracks what resources it created for it and - which were pre-existing and uses this information to preserve pre-existing - resources when cleaning up after said domain is shut off. But for macvtaps - this information was lost after the macvtap device was changed (e.g. via - ``virsh update-device``). - - * Fix virStream hole handling - - When a client sent multiple holes into a virStream it may have caused - daemon hangup as the daemon stopped processing RPC from the client - temporarily. This is now fixed. - - * nodedev: Don't generate broken XML with certain hardware - - A broken node device XML would be generated in a rare case when a hardware - device had certain characters in the VPD fields. - - * qemu: Fix reservation of manually specified port for disk migration - - A manually specified port would not be relased after disk migration making - it impossible to use it again. - - -v10.0.0 (2024-01-15) -==================== - -* **New features** - - * qemu: Enable ``postcopy-preempt`` migration capability - - Post-copy migrations are now started with ``postcopy-preempt`` - capability enabled as long as it is supported by both sides of migration. - This should enable faster migration of memory pages that the destination - tries to read before they are migrated from the source. - - * qemu: Add support for mapping iothreads to virtqueues of ``virtio-blk`` devices - - QEMU added the possibility to map multiple ``iothreads`` to a single - ``virtio-blk`` device and map them even to specific virtqueues. Libvirt - adds a ```` subelement of the `` `` element that - users can use to configure the mapping. - - * qemu: Allow automatic resize of block-device-backed disk to full size of the device - - The new flag ``VIR_DOMAIN_BLOCK_RESIZE_CAPACITY`` for - ``virDomainBlockResize`` allows resizing a block-device backed ``raw`` disk - of a VM without the need to specify the full size of the block device. - - * qemu: automatic selection/binding of VFIO variant drivers - - When a device is assigned to a guest using VFIO with ````, libvirt will now search the running kernel's - modules.alias file for the most specific match to that device for - a VFIO driver, and bind that driver to the device rather than - vfio-pci. A specific driver can also be forced, using the - ```` attribute. - - * qemu: add runtime configuration option for nbdkit - - Since the new nbdkit support requires a recent selinux policy that is not - widely available yet, it is now possible to build libvirt with nbdkit - support for remote disks but disabled at runtime. This behavior is - controlled via the storage_use_nbdkit option of the qemu driver - configuration file. The option will default to being disabled, but this may - change in a future release and can be customized with the - nbdkit_config_default build option. - - * qemu: add ID mapping support for virtiofsd - - New ```` element was added for virtiofsd-based ```` - devices. It can be used to set up UID and GID mapping between host - and guest, making running virtiofsd unprivileged much more useful. - -* **Improvements** - - * qemu: Improve migration XML use when persisting VM on destination - - When migrating a VM with a custom migration XML, use it as a base for - persisting it on the destination as users could have changed non-ABI - breaking facts which would prevent subsequent start if the old XML were used. - - * qemu: Simplify non-shared storage migration to ``raw`` block devices - - The phase of copying storage during migration without shared storage - requires that both the source and destination image are identical in size. - This may not be possible if the destination is backed by a block device - and the source image size is not a multiple of the block device block size. - - Libvirt aleviates this by automatically adding a ```` to match the - size of the source image rather than failing the migration. - - * test driver: Support for hotplug/hotunplug of PCI devices - - The test driver now supports basic hotplug and hotunplug of PCI devices. - - * qemu: allow virtiofsd to run unprivileged - - Nowadays virtiofsd no longer requires to run with root privileges, so the - restriction to always run as root is now removed from libvirt too. - -* **Bug fixes** - - * qemu: Various migration bug fixes and debuggability improvement - - This release fixes multiple bugs in virsh and libvirt in handling of - migration arguments and XMLs and modifies error reporting for better - debugging. - - * conf: Restore setting default bus for input devices - - Because of a regression, starting from 9.3.0 libvirt did not autofill bus - for input devices. With this release the regression was identified and - fixed. - - * qemu: Relax check for memory device coldplug - - Because of a check that was too aggressive, a virtio-mem memory device - could not be cold plugged. This is now fixed. - - * qemu: Be less aggressive when dropping channel source paths - - Another regression is resolved, (introduced in 9.7.0) when libvirt was too - aggressive when dropping parsed paths for sources - - * qemuDomainChangeNet: Reflect trustGuestRxFilters change - - On device-update, when a user requested change of trustGuestRxFilters for a - domain's libvirt did nothing. It did not throw an error nor - did it reflect the change. Starting with this release, the change is - reflected. - - v9.10.0 (2023-12-01) ==================== @@ -684,7 +75,6 @@ v9.9.0 (2023-11-01) The ``virsh create --console`` now tries to connect to the guest console before starting the vCPUs. - v9.8.0 (2023-10-02) =================== @@ -727,7 +117,6 @@ v9.8.0 (2023-10-02) Now libvirt validates more values of virtio-mem and virtio-pmem devices, e.g. overlapping memory addresses or alignment. - v9.7.0 (2023-09-01) =================== @@ -771,10 +160,10 @@ v9.6.0 (2023-08-01) * ``CVE-2023-3750``: Fix race condition in storage driver leading to a crash - In **libvirt-8.3** a bug was introduced which in rare cases could cause - ``libvirtd`` or ``virtstoraged`` to crash if multiple clients attempted to - look up a storage volume by key, path or target path, while other clients - attempted to access something from the same storage pool. + In **libvirt-8.3** a bug was introduced which in rare cases could cause + ``libvirtd`` or ``virtstoraged`` to crash if multiple clients attempted to + look up a storage volume by key, path or target path, while other clients + attempted to access something from the same storage pool. * **Improvements** @@ -2578,17 +1967,17 @@ v7.1.0 (2021-03-01) * qemu: Fix disk quiescing rollback when creating external snapshots - If the qemu guest agent call to freeze filesystems failed when creating - an external snapshot with ``VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE`` flag the - filesystems would be unconditionally thawed. This could cause problems when - the filesystems were frozen by an explicit call to ``virDomainFSFreeze`` - since the guest agent then rejects any further freeze attempts once are - filesystems frozen, an explicit freeze followed by a quiesced snapshot - would fail and thaw filesystems. + If the qemu guest agent call to freeze filesystems failed when creating + an external snapshot with ``VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE`` flag the + filesystems would be unconditionally thawed. This could cause problems when + the filesystems were frozen by an explicit call to ``virDomainFSFreeze`` + since the guest agent then rejects any further freeze attempts once are + filesystems frozen, an explicit freeze followed by a quiesced snapshot + would fail and thaw filesystems. - Users are also encouraged to use ``virDomainFSFreeze/Thaw`` manually instead - of relying on ``VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE`` if they need finer - grained control. + Users are also encouraged to use ``virDomainFSFreeze/Thaw`` manually instead + of relying on ``VIR_DOMAIN_SNAPSHOT_CREATE_QUIESCE`` if they need finer + grained control. * cgroups: Fix how we setup and configure cgroups on hosts with systemd @@ -2750,12 +2139,11 @@ v6.10.0 (2020-12-01) * qemu: Enable client TLS certificate validation by default for ``chardev``, ``migration``, and ``backup`` servers. - The default value if qemu.conf options ``chardev_tls_x509_verify``, - ``migrate_tls_x509_verify``, or ``backup_tls_x509_verify`` are not - specified explicitly in the config file and also the - ``default_tls_x509_verify`` config option is missing are now '1'. This - ensures that only legitimate clients access servers, which don't have any - additional form of authentication. + The default value if qemu.conf options ``chardev_tls_x509_verify``, + ``migrate_tls_x509_verify``, or ``backup_tls_x509_verify`` are not specified + explicitly in the config file and also the ``default_tls_x509_verify`` config + option is missing are now '1'. This ensures that only legitimate clients + access servers, which don't have any additional form of authentication. * qemu: Introduce "migrate_tls_force" qemu.conf option @@ -3147,6 +2535,7 @@ v6.6.0 (2020-08-02) management applications may wish to override this behaviour. This is now possible via new ``cow`` element. + * **Improvements** * esx: Change the NIC limit for recent virtualHW versions @@ -3171,6 +2560,7 @@ v6.6.0 (2020-08-02) instead of all possible CPUs are returned making these APIs consistent with the behavior of ``vcpuinfo``. + * **Bug fixes** * virdevmapper: Don't use libdevmapper to obtain dependencies diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 0759372b..eaeb6d4f 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -1,12 +1,13 @@ # -# Rules for running syntax-check, derived from gnulib's top/maint.mk +# Rules for running syntax-check, derived from gnulib's +# maint.mk # # Specifically, all shared code should match gnulib commit # -# d5191e456737661d4a0df5287f6c2064ab74dbbe (2024-02-15) +# dd2503c8e73621e919e8e214a29c495ac89d8a92 (2022-05-21) # # Copyright (C) 2008-2019 Red Hat, Inc. -# Copyright (C) 2001-2024 Free Software Foundation, Inc. +# Copyright (C) 2001-2022 Free Software Foundation, Inc. # 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 @@ -1082,8 +1083,7 @@ sc_prohibit_stdio--_without_use: @h='stdio--.h' re='\<((f(re)?|p)open|tmpfile) *\(' \ $(_sc_header_without_use) -_stddef_syms_re = \ - NULL|max_align_t|nullptr_t|offsetof|ptrdiff_t|size_t|unreachable|wchar_t +_stddef_syms_re = NULL|offsetof|ptrdiff_t|size_t|wchar_t # Prohibit the inclusion of stddef.h without an actual use. sc_prohibit_stddef_without_use: @h='stddef.h' \ @@ -1310,9 +1310,26 @@ sc_prohibit_path_max_allocation: halt='Avoid stack allocations of size PATH_MAX' \ $(_sc_search_regexp) -sc_unportable_grep_q: - @prohibit='grep ''-q' halt="unportable 'grep ""-q', use >/dev/null instead" \ - $(_sc_search_regexp) +ifneq ($(_gl-Makefile),) +syntax-check: sc_spacing-check \ + sc_prohibit-duplicate-header sc_mock-noinline sc_group-qemu-caps \ + sc_header-ifdef + @if ! cppi --version >/dev/null 2>&1; then \ + echo "*****************************************************" >&2; \ + echo "* cppi not installed, some checks have been skipped *" >&2; \ + echo "*****************************************************" >&2; \ + fi; \ + if [ -z "$(FLAKE8)" ]; then \ + echo "*****************************************************" >&2; \ + echo "* flake8 not installed, sc_flake8 has been skipped *" >&2; \ + echo "*****************************************************" >&2; \ + fi + if [ -z "$(BLACK)" ]; then \ + echo "*****************************************************" >&2; \ + echo "* black not installed, sc_black has been skipped *" >&2; \ + echo "*****************************************************" >&2; \ + fi +endif # Don't include duplicate header in the source (either *.c or *.h) sc_prohibit-duplicate-header: @@ -1342,11 +1359,6 @@ sc_prohibit_enum_impl_with_vir_prefix_in_virsh: halt='avoid "vir" prefix for enums in virsh' \ $(_sc_search_regexp) -sc_rst_since: - @prohibit=':since:`[^`]+$|:since:`[^`]+[.,;]`|:since:`[^`]+` [.,;]' \ - halt='format :since: correctly' \ - $(_sc_search_regexp) - ## ---------- ## ## Exceptions ## @@ -1386,7 +1398,7 @@ exclude_file_name_regexp--sc_prohibit_close = \ (\.p[yl]$$|\.spec\.in$$|^docs/|^(src/util/vir(file|event)\.c|src/libvirt-stream\.c|tests/(vir.+mock\.c|commandhelper\.c|qemusecuritymock\.c)|tools/nss/libvirt_nss_(leases|macs)\.c)|tools/virt-qemu-qmp-proxy$$) exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF = \ - ((^tests/(nodedevmdevctl|viracpi|virhostcpu|virpcitest|virstoragetest|qemunbdkit|virshtest)data/|docs/js/.*\.js|docs/fonts/.*\.woff|\.diff|tests/virconfdata/no-newline\.conf$$)|\.bin) + ((^tests/(nodedevmdevctl|viracpi|virhostcpu|virpcitest|virstoragetest|qemunbdkit)data/|docs/js/.*\.js|docs/fonts/.*\.woff|\.diff|tests/virconfdata/no-newline\.conf$$)|\.bin) exclude_file_name_regexp--sc_prohibit_fork_wrappers = \ (^(src/(util/(vircommand|virdaemon)|lxc/lxc_controller)|tests/testutils)\.c$$) @@ -1437,7 +1449,7 @@ exclude_file_name_regexp--sc_require_config_h_first = \ ^(examples/|tools/virsh-edit\.c$$|tests/virmockstathelpers\.c$$|scripts/rpcgen/tests/test_demo\.c$$) exclude_file_name_regexp--sc_trailing_blank = \ - /sysinfodata/.*\.data|/virhostcpudata/.*\.cpuinfo|tests/virshtestdata/.*$$ + /sysinfodata/.*\.data|/virhostcpudata/.*\.cpuinfo$$ exclude_file_name_regexp--sc_unmarked_diagnostics = \ ^(scripts/apibuild.py|tests/virt-aa-helper-test|docs/js/.*\.js)$$ @@ -1466,7 +1478,7 @@ exclude_file_name_regexp--sc_prohibit_mixed_case_abbreviations = \ ^src/(vbox/vbox_CAPI.*.h|esx/esx_vi.(c|h)|esx/esx_storage_backend_iscsi.c)$$ exclude_file_name_regexp--sc_prohibit_empty_first_line = \ - ^tests/vmwareverdata/fusion-5.0.3.txt|scripts/rpcgen/tests/demo\.c|^tests/virshtestdata/.*$$ + ^tests/vmwareverdata/fusion-5.0.3.txt|scripts/rpcgen/tests/demo\.c$$ exclude_file_name_regexp--sc_prohibit_useless_translation = \ ^tests/virpolkittest.c diff --git a/debian/NEWS b/debian/NEWS index d37fcfab..8b2d1ac9 100644 --- a/debian/NEWS +++ b/debian/NEWS @@ -1,20 +1,3 @@ -libvirt (10.6.0-2) experimental; urgency=medium - - The package has been reworked significantly. - - All the various drivers and storage backends come in their own - separate binary packages now, which makes it possible to install - exactly as many or as few as desired. - - The system-wide configuration for the libvirtd daemon is no longer - shipped separately from the daemon itself, as was the case until - now. The libvirt-daemon-system package still exists, but it's now - simply a convenient way to install the "typical" libvirt - deployment consisting of all the components needed to run a - QEMU-based hypervisor. - - -- Andrea Bolognani Sat, 24 Aug 2024 11:01:43 +0200 - libvirt (9.6.0-1) unstable; urgency=medium Local overrides for AppArmor abstractions are now expected to diff --git a/debian/README.source b/debian/README.source index c30cd504..b79a7713 100644 --- a/debian/README.source +++ b/debian/README.source @@ -1,6 +1,6 @@ -This package is maintained with git-buildpackage(1). It follows -DEP-14 for branch naming (e.g. using debian/latest for the current -development target). +This package is maintained with git-buildpackage(1). It follows DEP-14 +for branch naming (e.g. using debian/sid for the current version +in Debian unstable). It uses pristine-tar(1) to store enough information in git to generate bit identical tarballs when building the package without having @@ -22,20 +22,8 @@ For information on how to set up a pbuilder environment see the git-pbuilder(1) manpage. In short: DIST=sid git-pbuilder create - gbp clone https://salsa.debian.org/libvirt-team/libvirt.git + gbp clone https://anonscm.debian.org/git/pkg-libvirt/libvirt.git cd libvirt gbp buildpackage --git-pbuilder -Some of the files in debian/ are generated from templates. When -making changes, edit debian/foo.in, not debian/foo; in most cases, -the latter is not even included in the repository. - -As a special case, debian/control needs to be regenerated after -changes are made to its template: this can be achieved by running - - debian/scripts/process-templates.py - -and then committing both files. For all other files, templates are -processed at build time, so this additional step is unnecessary. - -- Guido Günther , Wed, 2 Dec 2015 18:51:15 +0100 diff --git a/debian/arches.mk b/debian/arches.mk deleted file mode 100644 index 65e1b698..00000000 --- a/debian/arches.mk +++ /dev/null @@ -1,9 +0,0 @@ -ARCHES_CEPH = amd64 arm64 loong64 mips64el ppc64el riscv64 s390x -ARCHES_GLUSTER = amd64 arm64 ia64 loong64 mips64el ppc64 ppc64el riscv64 s390x sparc64 -ARCHES_QEMU = amd64 arm64 armel armhf i386 loong64 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32 -ARCHES_LXC = alpha amd64 arm64 armel armhf hppa i386 loong64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32 -ARCHES_XEN = amd64 arm64 armhf -ARCHES_VBOX = amd64 i386 - -# Keep this list empty until we have AppArmor support -ARCHES_NBDKIT = diff --git a/debian/changelog b/debian/changelog index d5447476..96b0e970 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,166 +1,3 @@ -libvirt (10.7.0-3deepin2) unstable; urgency=medium - - * Add Chinese translation. - - -- jiahe.liu Fri, 26 Sep 2025 14:06:05 +0800 - -libvirt (10.7.0-3deepin1) unstable; urgency=medium - - * Support reuse asid and secret injection for Hygon CSV - - -- hanliyang Fri, 15 Nov 2024 11:49:11 +0800 - -libvirt (10.7.0-3) unstable; urgency=medium - - * [70a5d8d] patches: Add backport/apparmor-Don-t-check-for[...] - - Ensures that AppArmor doesn't get disabled for QEMU domains - just because the LXC driver is not installed (Closes: #1081396) - - -- Andrea Bolognani Mon, 16 Sep 2024 21:41:15 +0200 - -libvirt (10.7.0-2) unstable; urgency=medium - - * [6fb4103] control: Turn dmidecode back into a Recommends - - It was accidentally made it into a Depends in 10.6.0-2, - which has resulted in libvirt-daemon being uninstallable on - architectures that don't have dmidecode (e.g. ppc64el) - - -- Andrea Bolognani Sun, 08 Sep 2024 15:15:11 +0200 - -libvirt (10.7.0-1) unstable; urgency=medium - - * [a84ccbd] New upstream version 10.7.0 - - Update for qemu-bridge-helper's new location (Closes: #1077915) - - Fixes CVE-2024-8235 (Closes: #1080218) - - -- Andrea Bolognani Thu, 05 Sep 2024 20:59:27 +0200 - -libvirt (10.6.0-3) experimental; urgency=medium - - * [01e7456] control: Bump Standards-Version to 4.7.0 - - No changes needed. - * [b172fde] control: Change some Breaks+Replaces to Conflicts - - Prevents file loss scenarios during upgrade (DEP17 M7) - - Thanks to Helmut Grohne - * [4f20e64] snippets: Create protective diversions - - Prevents file loss scenarios during upgrade (DEP17 M8) - - Thanks to Helmut Grohne - - -- Andrea Bolognani Sun, 01 Sep 2024 16:31:02 +0200 - -libvirt (10.6.0-2) experimental; urgency=medium - - * [9333950] control: Introduce daemon-common package - + As well as a bunch more. In general, every single driver and - storage backend comes with its own binary package now, which - makes it possible to decide exactly what gets installed - * [d776368] control: Mark daemon-system-* packages as dummy - + Configuration for the daemon is now shipped in libvirt-daemon - * [0ac1f2c] control: Mark sanlock package as dummy - + Replaced by libvirt-daemon-plugin-sanlock - * [cf64ba3] install: Perform usr-merge transition - - Thanks to Michael Biebl, Helmut Grohne (Closes: #1064126) - - -- Andrea Bolognani Sat, 24 Aug 2024 13:37:16 +0200 - -libvirt (10.6.0-1) unstable; urgency=medium - - * [65e5d2b] New upstream version 10.6.0 - * [cca0f9c] control: Drop Build-Depends on pm-utils - - Support is explicitly disabled - * [963bd56] control: Drop Build-Depends on systemd - - It's not used - * [7c418f9] control: Suggest daemon on Linux only - - It doesn't get built elsewhere - * [664a6db] control: Enable more features on loong64. - - Start building the QEMU and LXC hypervisor drivers as - well as the glusterfs and ceph storage drivers - - Thanks to Dandan Zhang (Closes: #1075758) - - -- Andrea Bolognani Wed, 07 Aug 2024 02:50:03 +0200 - -libvirt (10.5.0-1) unstable; urgency=medium - - * [a8c62f5] New upstream version 10.5.0 - - Fixes qemu:///session (Closes: #1072723, #1072769) - - -- Andrea Bolognani Thu, 04 Jul 2024 00:44:29 +0200 - -libvirt (10.4.0-1) unstable; urgency=medium - - * [7ed6608] New upstream version 10.4.0 - * [d8acf23] patches: Drop backports - - -- Andrea Bolognani Tue, 04 Jun 2024 00:19:48 +0200 - -libvirt (10.3.0-3) unstable; urgency=medium - - * [aa7ed20] patches: Add backport/tests-fix-hang-in-virshtest[...] - - Fixes FTBFS - - -- Andrea Bolognani Thu, 09 May 2024 00:03:19 +0200 - -libvirt (10.3.0-2) unstable; urgency=medium - - * [13f1f61] patches: Add backport/vsh-Don-t-init-history[...] - - Fixes FTBFS (Closes: #1070498) - - -- Andrea Bolognani Tue, 07 May 2024 00:04:24 +0200 - -libvirt (10.3.0-1) unstable; urgency=medium - - * [7845089] New upstream version 10.3.0 - * [be65bee] patches: Add backport/rpc-ensure-temporary-GSource[...] - - Fixes CVE-2024-4418 (Closes: #1070330) - - -- Andrea Bolognani Sat, 04 May 2024 00:16:21 +0200 - -libvirt (10.2.0-1) unstable; urgency=medium - - * [c1118d1] New upstream version 10.2.0 - - Fixes CVE-2024-2494 (Closes: #1067461) - - -- Andrea Bolognani Tue, 02 Apr 2024 23:42:38 +0200 - -libvirt (10.1.0-1) unstable; urgency=medium - - * [517918e] New upstream version 10.1.0 - - Fixes CVE-2024-1441 (Closes: #1066058) - * [84128fe] patches: Drop backports - - -- Andrea Bolognani Wed, 20 Mar 2024 00:18:12 +0100 - -libvirt (10.0.0-3) experimental; urgency=medium - - * [e31fc9e] control: Recommend pkgconf instead of pkg-config - * [fd2edf5] templates: Convert some files to templates - - Some of the packaging files are now maintained as templates, - where values are dynamically injected at build time. See - debian/README.source for additional information - * [ff0974e] control: Improve driver-specific package relationships - - Ensure installability on architectures where the QEMU - driver has been intentionally disabled - - -- Andrea Bolognani Wed, 21 Feb 2024 23:04:34 +0100 - -libvirt (10.0.0-2) unstable; urgency=medium - - * [9a4ad47] patches: Add backport/scripts-Make-check-symfile[...] - - Fixes compilation on alpha - * [aa930a3] patches: Add backport/apparmor-Add-user-session-path[...] - - Fixes use of passt with qemu:///session and AppArmor enabled - - Closes: #1061678 - * [8810281] rules: Don't attempt to update git submodules - * [bf4fab1] rules: Don't run syntax-check tests - - -- Andrea Bolognani Sun, 04 Feb 2024 10:54:58 +0100 - -libvirt (10.0.0-1) unstable; urgency=medium - - * [c80339d] New upstream version 10.0.0 - - -- Andrea Bolognani Tue, 16 Jan 2024 23:11:05 +0100 - libvirt (9.10.0-1) unstable; urgency=medium * [520e93f] New upstream version 9.10.0 diff --git a/debian/control b/debian/control index c2cd8b5d..848ca0e1 100644 --- a/debian/control +++ b/debian/control @@ -10,6 +10,7 @@ Build-Depends: bash-completion, debhelper-compat (= 13), dh-apparmor [linux-any], + iptables [linux-any], kmod [linux-any], libacl1-dev [linux-any], libapparmor-dev (>= 3.0.0) [linux-any], @@ -22,7 +23,7 @@ Build-Depends: libdevmapper-dev [linux-any], libfuse3-dev [linux-any], libglib2.0-dev, - libglusterfs-dev [amd64 arm64 ia64 loong64 mips64el ppc64 ppc64el riscv64 s390x sparc64], + libglusterfs-dev [amd64 arm64 ia64 mips64el ppc64 ppc64el riscv64 s390x sparc64], libgnutls28-dev, libiscsi-dev [linux-any], libnl-3-dev [linux-any], @@ -31,8 +32,8 @@ Build-Depends: libparted-dev [linux-any], libpcap0.8-dev [linux-any], libpciaccess-dev [linux-any], - librados-dev [amd64 arm64 loong64 mips64el ppc64el riscv64 s390x], - librbd-dev [amd64 arm64 loong64 mips64el ppc64el riscv64 s390x], + librados-dev [amd64 arm64 mips64el ppc64el riscv64 s390x], + librbd-dev [amd64 arm64 mips64el ppc64el riscv64 s390x], libreadline-dev, libsanlock-dev [linux-any], libsasl2-dev, @@ -56,29 +57,27 @@ Build-Depends: po-debconf, python3-docutils, python3:native, - qemu-utils [amd64 arm64 armel armhf i386 loong64 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32], + qemu-utils [amd64 arm64 armel armhf i386 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32], systemtap-sdt-dev [linux-any], xsltproc, Vcs-Git: https://salsa.debian.org/libvirt-team/libvirt.git Vcs-Browser: https://salsa.debian.org/libvirt-team/libvirt Homepage: https://libvirt.org/ -Standards-Version: 4.7.0 +Standards-Version: 4.6.2 Rules-Requires-Root: no Package: libvirt-clients Section: admin Architecture: any Depends: - libvirt-common (= ${binary:Version}), libvirt0 (= ${binary:Version}), - libxml2-utils, sensible-utils, ${misc:Depends}, ${shlibs:Depends}, Suggests: - libvirt-clients-qemu (= ${binary:Version}) [amd64 arm64 armel armhf i386 loong64 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32], - libvirt-daemon (= ${binary:Version}) [linux-any], - libvirt-login-shell (= ${binary:Version}) [alpha amd64 arm64 armel armhf hppa i386 loong64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32], + libvirt-clients-qemu (= ${binary:Version}), + libvirt-daemon (= ${binary:Version}), + libvirt-login-shell (= ${binary:Version}), Breaks: libvirt-daemon (<< 6.9.0-2~), libvirt-daemon-driver-qemu (<< 6.9.0-2~), @@ -96,8 +95,6 @@ Package: libvirt-clients-qemu Section: admin Architecture: all Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), libvirt0 (<< ${source:Version}.1~), libvirt0 (>= ${source:Version}), python3-cryptography, @@ -115,10 +112,9 @@ Description: Programs for the libvirt library (QEMU specific) Package: libvirt-login-shell Section: admin -Architecture: alpha amd64 arm64 armel armhf hppa i386 loong64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32 +Architecture: alpha amd64 arm64 armel armhf hppa i386 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32 Depends: libvirt-clients (= ${binary:Version}), - libvirt-common (= ${binary:Version}), libvirt-daemon-driver-lxc (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, @@ -140,47 +136,37 @@ Package: libvirt-daemon Section: admin Architecture: linux-any Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon-common (= ${binary:Version}), + libvirt-daemon-driver-qemu (= ${binary:Version}), libvirt0 (= ${binary:Version}), - logrotate, ${misc:Depends}, ${shlibs:Depends}, Recommends: - libvirt-daemon-driver-interface (= ${binary:Version}), - libvirt-daemon-driver-lxc (= ${binary:Version}) [alpha amd64 arm64 armel armhf hppa i386 loong64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32], - libvirt-daemon-driver-network (= ${binary:Version}), - libvirt-daemon-driver-nodedev (= ${binary:Version}), - libvirt-daemon-driver-nwfilter (= ${binary:Version}), - libvirt-daemon-driver-qemu (= ${binary:Version}) [amd64 arm64 armel armhf i386 loong64 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32], - libvirt-daemon-driver-secret (= ${binary:Version}), - libvirt-daemon-driver-storage (= ${binary:Version}), - libvirt-daemon-driver-storage-disk (= ${binary:Version}), - libvirt-daemon-driver-storage-iscsi (= ${binary:Version}), - libvirt-daemon-driver-storage-logical (= ${binary:Version}), - libvirt-daemon-driver-storage-mpath (= ${binary:Version}), - libvirt-daemon-driver-storage-scsi (= ${binary:Version}), - libvirt-daemon-driver-vbox (= ${binary:Version}) [amd64 i386], - libvirt-daemon-driver-xen (= ${binary:Version}) [amd64 arm64 armhf], - libvirt-daemon-lock (= ${binary:Version}), - libvirt-daemon-log (= ${binary:Version}), - libvirt-daemon-plugin-lockd (= ${binary:Version}), - libvirt-daemon-plugin-sanlock (= ${binary:Version}), + libvirt-daemon-driver-lxc (= ${binary:Version}), + libvirt-daemon-driver-vbox (= ${binary:Version}), + libvirt-daemon-driver-xen (= ${binary:Version}), + libxml2-utils, + lvm2, + mount, + netcat-openbsd, + qemu-kvm | qemu-system, Suggests: - libvirt-daemon-driver-storage-gluster (= ${binary:Version}) [amd64 arm64 ia64 loong64 mips64el ppc64 ppc64el riscv64 s390x sparc64], + libvirt-daemon-driver-storage-gluster (= ${binary:Version}), libvirt-daemon-driver-storage-iscsi-direct (= ${binary:Version}), - libvirt-daemon-driver-storage-rbd (= ${binary:Version}) [amd64 arm64 loong64 mips64el ppc64el riscv64 s390x], + libvirt-daemon-driver-storage-rbd (= ${binary:Version}), libvirt-daemon-driver-storage-zfs (= ${binary:Version}), libvirt-daemon-system (= ${binary:Version}), -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), + numad, +Enhances: + qemu-kvm, + qemu-system, + xen, Breaks: libvirt-clients (<< 6.9.0-2~), libvirt-daemon-driver-lxc (<< 6.9.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), + libvirt-daemon-system (<< 6.9.0-3~), libvirt-sanlock (<< 6.9.0-2~), Replaces: - libvirt-daemon-system-sysv (<< 10.6.0-2~), + libvirt-daemon-system (<< 6.9.0-3~), Description: Virtualization daemon Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing @@ -189,120 +175,22 @@ Description: Virtualization daemon . This package contains the daemon libvirtd to manage the hypervisors. -Package: libvirt-daemon-common -Section: admin -Architecture: linux-any -Depends: - adduser, - gettext-base, - iproute2, - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - polkitd (>= 121+compat0.1-2), - sensible-utils, - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - dmidecode, - netcat-openbsd, - systemd-sysv | sysvinit-core, -Suggests: - apparmor, - auditd, - systemtap, -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Replaces: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Description: Virtualization daemon common files - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains files needed by the various libvirt daemons. - -Package: libvirt-daemon-log -Section: admin -Architecture: linux-any -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Description: Virtualization log daemon - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the virtlogd daemon, which handles logging. - -Package: libvirt-daemon-lock -Section: admin -Architecture: linux-any -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization lock daemon - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the virtlockd daemon, which handles storage locking. - Package: libvirt-daemon-driver-qemu Section: admin -Architecture: amd64 arm64 armel armhf i386 loong64 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32 +Architecture: amd64 arm64 armel armhf i386 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32 Multi-Arch: no Depends: - adduser, - libvirt-common (= ${binary:Version}), - libvirt-daemon-log (= ${binary:Version}), libvirt0 (= ${binary:Version}), - logrotate, ${misc:Depends}, ${shlibs:Depends}, -Recommends: - passt, - qemu-kvm | qemu-system, - swtpm, - swtpm-tools, - systemd-container | sysvinit-core, -Suggests: - numad, -Enhances: - qemu-kvm, - qemu-system, Breaks: libvirt-clients (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), Replaces: libvirt-clients (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), +Recommends: + passt, + swtpm, + swtpm-tools, Description: Virtualization daemon QEMU connection driver Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing @@ -313,21 +201,17 @@ Description: Virtualization daemon QEMU connection driver Package: libvirt-daemon-driver-lxc Section: admin -Architecture: alpha amd64 arm64 armel armhf hppa i386 loong64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32 +Architecture: alpha amd64 arm64 armel armhf hppa i386 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32 Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), - logrotate, ${misc:Depends}, ${shlibs:Depends}, Breaks: libvirt-daemon (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), Replaces: libvirt-daemon (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), Description: Virtualization daemon LXC connection driver Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing @@ -341,7 +225,6 @@ Section: admin Architecture: amd64 i386 Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, @@ -359,18 +242,10 @@ Section: admin Architecture: amd64 arm64 armhf Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), - logrotate, ${misc:Depends}, ${shlibs:Depends}, -Enhances: - xen, -Breaks: - libvirt-daemon-system (<< 10.6.0-2~), -Replaces: - libvirt-daemon-system (<< 10.6.0-2~), Description: Virtualization daemon Xen connection driver Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing @@ -379,60 +254,11 @@ Description: Virtualization daemon Xen connection driver . This package contains the libvirtd connection driver for Xen. -Package: libvirt-daemon-driver-storage -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - mount, - nfs-common, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver. - -Package: libvirt-daemon-driver-storage-disk -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - parted, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon disk storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver that handles volumes as - partitions of a physical disk. - Package: libvirt-daemon-driver-storage-gluster Section: admin -Architecture: amd64 arm64 ia64 loong64 mips64el ppc64 ppc64el riscv64 s390x sparc64 +Architecture: amd64 arm64 ia64 mips64el ppc64 ppc64el riscv64 s390x sparc64 Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, @@ -445,35 +271,11 @@ Description: Virtualization daemon glusterfs storage driver . This package contains the libvirtd storage driver for GlusterFS. -Package: libvirt-daemon-driver-storage-iscsi -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - open-iscsi, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon iSCSI storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for iSCSI volumes. - Package: libvirt-daemon-driver-storage-iscsi-direct Section: admin Architecture: linux-any Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, @@ -489,58 +291,11 @@ Description: Virtualization daemon iSCSI (libiscsi) storage driver This package contains a libvirtd storage driver for iSCSI volumes implemented using libiscsi. -Package: libvirt-daemon-driver-storage-logical -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - lvm2, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon logical storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains a libvirtd storage driver for volumes managed by - Logical Volume Manager (LVM). - -Package: libvirt-daemon-driver-storage-mpath -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon mpath storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains a libvirtd storage driver for multipath (mpath) volumes. - Package: libvirt-daemon-driver-storage-rbd Section: admin -Architecture: amd64 arm64 loong64 mips64el ppc64el riscv64 s390x +Architecture: amd64 arm64 mips64el ppc64el riscv64 s390x Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, @@ -553,40 +308,15 @@ Description: Virtualization daemon RBD storage driver . This package contains the libvirtd storage driver for RBD/Rados/Ceph. -Package: libvirt-daemon-driver-storage-scsi -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon SCSI storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for local SCSI devices. - Package: libvirt-daemon-driver-storage-zfs Section: admin Architecture: linux-any Multi-Arch: no Depends: - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}, -Recommends: - zfsutils, Description: Virtualization daemon ZFS storage driver Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing @@ -595,248 +325,92 @@ Description: Virtualization daemon ZFS storage driver . This package contains the libvirtd storage driver for ZFS. -Package: libvirt-daemon-driver-network -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - dnsmasq-base, - iptables | firewalld, - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Description: Virtualization daemon network driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd network driver. - -Package: libvirt-daemon-driver-nwfilter -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - iptables, - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon nwfilter driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd network filter (nwfilter) driver. - -Package: libvirt-daemon-driver-interface -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon interface driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd interface driver. - -Package: libvirt-daemon-driver-nodedev -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - mdevctl, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon nodedev driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd node device (nodedev) driver. - -Package: libvirt-daemon-driver-secret -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon secret driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd secret driver. - -Package: libvirt-daemon-plugin-lockd -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon-lock (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - libvirt-daemon (= ${binary:Version}), -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon lockd plugin - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the plugin that implements disk locking using virtlockd. - -Package: libvirt-daemon-plugin-sanlock -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - augeas-tools, - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - libvirt-daemon (= ${binary:Version}), -Breaks: - libvirt-daemon (<< 10.6.0-2~), - libvirt-sanlock (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), - libvirt-sanlock (<< 10.6.0-2~), -Description: Virtualization daemon sanlock plugin - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the plugin that implements disk locking using sanlock. - Package: libvirt-daemon-system Section: admin Architecture: linux-any Depends: + adduser, + gettext-base, + iptables | firewalld, libvirt-clients (= ${binary:Version}), - libvirt-common (= ${binary:Version}), libvirt-daemon (= ${binary:Version}), - libvirt-daemon-common (= ${binary:Version}), libvirt-daemon-config-network (= ${source:Version}), libvirt-daemon-config-nwfilter (= ${source:Version}), - libvirt-daemon-driver-network (= ${binary:Version}), - libvirt-daemon-driver-nodedev (= ${binary:Version}), - libvirt-daemon-driver-nwfilter (= ${binary:Version}), - libvirt-daemon-driver-qemu (= ${binary:Version}) [amd64 arm64 armel armhf i386 loong64 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32], - libvirt-daemon-driver-secret (= ${binary:Version}), - libvirt-daemon-driver-storage (= ${binary:Version}), - libvirt-daemon-log (= ${binary:Version}), - libvirt0 (= ${binary:Version}), + libvirt-daemon-system-systemd (= ${source:Version}) | libvirt-daemon-system-sysv (= ${source:Version}), + libvirt0 (<< ${source:Version}.1~), + libvirt0 (>= ${source:Version}), + logrotate, + polkitd (>= 121+compat0.1-2), ${misc:Depends}, Recommends: - libvirt-daemon-driver-lxc (= ${binary:Version}) [alpha amd64 arm64 armel armhf hppa i386 loong64 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32], - libvirt-daemon-driver-xen (= ${binary:Version}) [amd64 arm64 armhf], - libvirt-daemon-lock (= ${binary:Version}), -Description: Virtualization daemon typical deployment + dmidecode, + dnsmasq-base, + iproute2, + mdevctl, + parted, +Suggests: + apparmor, + auditd, + nfs-common, + open-iscsi, + pm-utils, + systemd, + systemtap, + zfsutils, +Description: Libvirt daemon configuration files Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing a long term stable C API for different virtualization mechanisms. It currently supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. . - This package doesn't contain any files on its own, and is intended as a - convenient way to create the most common type of libvirt setup (local QEMU - hypervisor) in one go. + This package contains the configuration files to run the libvirt daemon as a + system service. Package: libvirt-daemon-system-systemd Section: admin Architecture: all Multi-Arch: foreign Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon-system (<< ${source:Version}.1~), - libvirt-daemon-system (>= ${source:Version}), libvirt0 (<< ${source:Version}.1~), libvirt0 (>= ${source:Version}), + systemd-container, + systemd-sysv, ${misc:Depends}, -Description: transitional dummy package - This is a transitional dummy package and can be safely removed. +Conflicts: + libvirt-daemon-system-sysv, +Description: Libvirt daemon configuration files (systemd) + Libvirt is a C toolkit to interact with the virtualization capabilities + of recent versions of Linux (and other OSes). The library aims at providing + a long term stable C API for different virtualization mechanisms. It currently + supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. + . + This package contains the dependencies to make libvirt work with systemd. + (this is the default). This package is useless without the + libvirt-daemon-system package installed. Package: libvirt-daemon-system-sysv Section: admin Architecture: all Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon (<< ${source:Version}.1~), - libvirt-daemon (>= ${source:Version}), - libvirt-daemon-common (<< ${source:Version}.1~), - libvirt-daemon-common (>= ${source:Version}), - libvirt-daemon-log (<< ${source:Version}.1~), - libvirt-daemon-log (>= ${source:Version}), - libvirt-daemon-system (<< ${source:Version}.1~), - libvirt-daemon-system (>= ${source:Version}), libvirt0 (<< ${source:Version}.1~), libvirt0 (>= ${source:Version}), ${misc:Depends}, -Description: transitional dummy package - This is a transitional dummy package and can be safely removed. +Description: Libvirt daemon configuration files (sysv) + Libvirt is a C toolkit to interact with the virtualization capabilities + of recent versions of Linux (and other OSes). The library aims at providing + a long term stable C API for different virtualization mechanisms. It currently + supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. + . + This package contains dependencies and init scripts to make libvirt work with + sysv based init systems. Using libvirt-daemon-systemd is preferred since the + init scripts are incomplete. + . + This package is useless without the libvirt-daemon-system package installed. Package: libvirt-daemon-config-network Section: admin Architecture: all Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon-driver-network (<< ${source:Version}.1~), - libvirt-daemon-driver-network (>= ${source:Version}), libvirt0 (<< ${source:Version}.1~), libvirt0 (>= ${source:Version}), ${misc:Depends}, @@ -856,10 +430,6 @@ Package: libvirt-daemon-config-nwfilter Section: admin Architecture: all Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon-driver-nwfilter (<< ${source:Version}.1~), - libvirt-daemon-driver-nwfilter (>= ${source:Version}), libvirt0 (<< ${source:Version}.1~), libvirt0 (>= ${source:Version}), ${misc:Depends}, @@ -879,7 +449,6 @@ Package: libvirt0 Architecture: any Multi-Arch: same Depends: - libvirt-common (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}, Recommends: @@ -890,35 +459,11 @@ Description: library for interfacing with different virtualization systems a long term stable C API for different virtualization mechanisms. It currently supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. -Package: libvirt-common -Architecture: any -Multi-Arch: foreign -Depends: - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), - libvirt0 (<< 10.6.0-2~), -Replaces: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), - libvirt0 (<< 10.6.0-2~), -Description: data files for the libvirt library - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains data files needed by the library. - Package: libvirt-l10n Section: localization Architecture: all Multi-Arch: foreign Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), libvirt0 (<< ${source:Version}.1~), libvirt0 (>= ${source:Version}), ${misc:Depends}, @@ -953,11 +498,10 @@ Section: libdevel Architecture: any Multi-Arch: same Depends: - libvirt-common (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, Recommends: - pkgconf, + pkg-config, Description: development files for the libvirt library Libvirt is a C toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The library aims at providing @@ -971,20 +515,27 @@ Package: libvirt-sanlock Section: admin Architecture: linux-any Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon-plugin-sanlock (= ${binary:Version}), + augeas-tools, libvirt0 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}, -Description: transitional dummy package - This is a transitional dummy package and can be safely removed. +Breaks: + libvirt-daemon (<< 6.9.0-2~), +Replaces: + libvirt-daemon (<< 6.9.0-2~), +Description: Sanlock plugin for virtlockd + Libvirt is a C toolkit to interact with the virtualization capabilities + of recent versions of Linux (and other OSes). The library aims at providing + a long term stable C API for different virtualization mechanisms. It currently + supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. + . + This package contains the sanlock plugin for libvirt's locking daemon. Package: libnss-libvirt Section: admin Architecture: linux-any Multi-Arch: same Depends: - libvirt-common (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}, @@ -1003,7 +554,6 @@ Section: admin Architecture: linux-any Multi-Arch: same Depends: - libvirt-common (= ${binary:Version}), libvirt0 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}, diff --git a/debian/control.in b/debian/control.in deleted file mode 100644 index b423b9ba..00000000 --- a/debian/control.in +++ /dev/null @@ -1,1016 +0,0 @@ -Source: libvirt -Section: libs -Priority: optional -Maintainer: Debian Libvirt Maintainers -Uploaders: - Guido Günther , - Andrea Bolognani , -Build-Depends: - augeas-tools [linux-any], - bash-completion, - debhelper-compat (= 13), - dh-apparmor [linux-any], - kmod [linux-any], - libacl1-dev [linux-any], - libapparmor-dev (>= 3.0.0) [linux-any], - libattr1-dev [linux-any], - libaudit-dev [linux-any], - libblkid-dev [linux-any], - libc-dev (>= 2.31-14~), - libcap-ng-dev [linux-any], - libcurl4-gnutls-dev [linux-any], - libdevmapper-dev [linux-any], - libfuse3-dev [linux-any], - libglib2.0-dev, - libglusterfs-dev [${ARCHES_GLUSTER}], - libgnutls28-dev, - libiscsi-dev [linux-any], - libnl-3-dev [linux-any], - libnl-route-3-dev [linux-any], - libnuma-dev [linux-any], - libparted-dev [linux-any], - libpcap0.8-dev [linux-any], - libpciaccess-dev [linux-any], - librados-dev [${ARCHES_CEPH}], - librbd-dev [${ARCHES_CEPH}], - libreadline-dev, - libsanlock-dev [linux-any], - libsasl2-dev, - libselinux1-dev [linux-any], - libssh-dev, - libssh2-1-dev, - libtasn1-6-dev, - libtirpc-dev, - libudev-dev [linux-any], - libwireshark-dev [linux-any], - libxen-dev [${ARCHES_XEN}], - libxml2-dev, - libxml2-utils, - libyajl-dev [linux-any], - lvm2 [linux-any], - meson, - mount [linux-any], - nfs-common:native [linux-any], - numad:native [linux-any], - open-iscsi [linux-any], - po-debconf, - python3-docutils, - python3:native, - qemu-utils [${ARCHES_QEMU}], - systemtap-sdt-dev [linux-any], - xsltproc, -Vcs-Git: https://salsa.debian.org/libvirt-team/libvirt.git -Vcs-Browser: https://salsa.debian.org/libvirt-team/libvirt -Homepage: https://libvirt.org/ -Standards-Version: 4.7.0 -Rules-Requires-Root: no - -Package: libvirt-clients -Section: admin -Architecture: any -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - libxml2-utils, - sensible-utils, - ${misc:Depends}, - ${shlibs:Depends}, -Suggests: - libvirt-clients-qemu (= ${binary:Version}) [${ARCHES_QEMU}], - libvirt-daemon (= ${binary:Version}) [linux-any], - libvirt-login-shell (= ${binary:Version}) [${ARCHES_LXC}], -Breaks: - libvirt-daemon (<< 6.9.0-2~), - libvirt-daemon-driver-qemu (<< 6.9.0-2~), -Replaces: - libvirt-daemon (<< 6.9.0-2~), -Description: Programs for the libvirt library - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirt shell virsh and other client binaries. - -Package: libvirt-clients-qemu -Section: admin -Architecture: all -Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt0 (<< ${source:Version}.1~), - libvirt0 (>= ${source:Version}), - python3-cryptography, - python3-libvirt, - python3-lxml, - python3:any, - ${misc:Depends}, -Description: Programs for the libvirt library (QEMU specific) - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the QEMU-specific client binaries. - -Package: libvirt-login-shell -Section: admin -Architecture: ${ARCHES_LXC} -Depends: - libvirt-clients (= ${binary:Version}), - libvirt-common (= ${binary:Version}), - libvirt-daemon-driver-lxc (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-clients (<< 6.9.0-2~), -Replaces: - libvirt-clients (<< 6.9.0-2~), -Description: Isolate user sessions using LXC containers - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the virt-login-shell tool, which can be set as a user's - login shell to isolate their sessions using LXC containers. - -Package: libvirt-daemon -Section: admin -Architecture: linux-any -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - logrotate, - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - libvirt-daemon-driver-interface (= ${binary:Version}), - libvirt-daemon-driver-lxc (= ${binary:Version}) [${ARCHES_LXC}], - libvirt-daemon-driver-network (= ${binary:Version}), - libvirt-daemon-driver-nodedev (= ${binary:Version}), - libvirt-daemon-driver-nwfilter (= ${binary:Version}), - libvirt-daemon-driver-qemu (= ${binary:Version}) [${ARCHES_QEMU}], - libvirt-daemon-driver-secret (= ${binary:Version}), - libvirt-daemon-driver-storage (= ${binary:Version}), - libvirt-daemon-driver-storage-disk (= ${binary:Version}), - libvirt-daemon-driver-storage-iscsi (= ${binary:Version}), - libvirt-daemon-driver-storage-logical (= ${binary:Version}), - libvirt-daemon-driver-storage-mpath (= ${binary:Version}), - libvirt-daemon-driver-storage-scsi (= ${binary:Version}), - libvirt-daemon-driver-vbox (= ${binary:Version}) [${ARCHES_VBOX}], - libvirt-daemon-driver-xen (= ${binary:Version}) [${ARCHES_XEN}], - libvirt-daemon-lock (= ${binary:Version}), - libvirt-daemon-log (= ${binary:Version}), - libvirt-daemon-plugin-lockd (= ${binary:Version}), - libvirt-daemon-plugin-sanlock (= ${binary:Version}), -Suggests: - libvirt-daemon-driver-storage-gluster (= ${binary:Version}) [${ARCHES_GLUSTER}], - libvirt-daemon-driver-storage-iscsi-direct (= ${binary:Version}), - libvirt-daemon-driver-storage-rbd (= ${binary:Version}) [${ARCHES_CEPH}], - libvirt-daemon-driver-storage-zfs (= ${binary:Version}), - libvirt-daemon-system (= ${binary:Version}), -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-clients (<< 6.9.0-2~), - libvirt-daemon-driver-lxc (<< 6.9.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), - libvirt-sanlock (<< 6.9.0-2~), -Replaces: - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Description: Virtualization daemon - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the daemon libvirtd to manage the hypervisors. - -Package: libvirt-daemon-common -Section: admin -Architecture: linux-any -Depends: - adduser, - gettext-base, - iproute2, - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - polkitd (>= 121+compat0.1-2), - sensible-utils, - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - dmidecode, - netcat-openbsd, - systemd-sysv | sysvinit-core, -Suggests: - apparmor, - auditd, - systemtap, -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Replaces: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Description: Virtualization daemon common files - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains files needed by the various libvirt daemons. - -Package: libvirt-daemon-log -Section: admin -Architecture: linux-any -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system-sysv (<< 10.6.0-2~), -Description: Virtualization log daemon - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the virtlogd daemon, which handles logging. - -Package: libvirt-daemon-lock -Section: admin -Architecture: linux-any -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Conflicts: - libvirt-daemon-system (<< 10.6.0-2~), -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization lock daemon - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the virtlockd daemon, which handles storage locking. - -Package: libvirt-daemon-driver-qemu -Section: admin -Architecture: ${ARCHES_QEMU} -Multi-Arch: no -Depends: - adduser, - libvirt-common (= ${binary:Version}), - libvirt-daemon-log (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - logrotate, - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - passt, - qemu-kvm | qemu-system, - swtpm, - swtpm-tools, - systemd-container | sysvinit-core, -Suggests: - numad, -Enhances: - qemu-kvm, - qemu-system, -Breaks: - libvirt-clients (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Replaces: - libvirt-clients (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Description: Virtualization daemon QEMU connection driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd connection driver for QEMU. - -Package: libvirt-daemon-driver-lxc -Section: admin -Architecture: ${ARCHES_LXC} -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - logrotate, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 6.9.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Description: Virtualization daemon LXC connection driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd connection driver for LXC. - -Package: libvirt-daemon-driver-vbox -Section: admin -Architecture: ${ARCHES_VBOX} -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Description: Virtualization daemon VirtualBox connection driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd connection driver for VirtualBox. - -Package: libvirt-daemon-driver-xen -Section: admin -Architecture: ${ARCHES_XEN} -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - logrotate, - ${misc:Depends}, - ${shlibs:Depends}, -Enhances: - xen, -Breaks: - libvirt-daemon-system (<< 10.6.0-2~), -Replaces: - libvirt-daemon-system (<< 10.6.0-2~), -Description: Virtualization daemon Xen connection driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd connection driver for Xen. - -Package: libvirt-daemon-driver-storage -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - mount, - nfs-common, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver. - -Package: libvirt-daemon-driver-storage-disk -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - parted, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon disk storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver that handles volumes as - partitions of a physical disk. - -Package: libvirt-daemon-driver-storage-gluster -Section: admin -Architecture: ${ARCHES_GLUSTER} -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Description: Virtualization daemon glusterfs storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for GlusterFS. - -Package: libvirt-daemon-driver-storage-iscsi -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - open-iscsi, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon iSCSI storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for iSCSI volumes. - -Package: libvirt-daemon-driver-storage-iscsi-direct -Section: admin -Architecture: linux-any -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - qemu-block-extra, -Description: Virtualization daemon iSCSI (libiscsi) storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains a libvirtd storage driver for iSCSI volumes implemented - using libiscsi. - -Package: libvirt-daemon-driver-storage-logical -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - lvm2, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon logical storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains a libvirtd storage driver for volumes managed by - Logical Volume Manager (LVM). - -Package: libvirt-daemon-driver-storage-mpath -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon mpath storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains a libvirtd storage driver for multipath (mpath) volumes. - -Package: libvirt-daemon-driver-storage-rbd -Section: admin -Architecture: ${ARCHES_CEPH} -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Description: Virtualization daemon RBD storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for RBD/Rados/Ceph. - -Package: libvirt-daemon-driver-storage-scsi -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon SCSI storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for local SCSI devices. - -Package: libvirt-daemon-driver-storage-zfs -Section: admin -Architecture: linux-any -Multi-Arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - zfsutils, -Description: Virtualization daemon ZFS storage driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd storage driver for ZFS. - -Package: libvirt-daemon-driver-network -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - dnsmasq-base, - iptables | firewalld, - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), -Description: Virtualization daemon network driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd network driver. - -Package: libvirt-daemon-driver-nwfilter -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - iptables, - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon nwfilter driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd network filter (nwfilter) driver. - -Package: libvirt-daemon-driver-interface -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon interface driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd interface driver. - -Package: libvirt-daemon-driver-nodedev -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - mdevctl, - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon nodedev driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd node device (nodedev) driver. - -Package: libvirt-daemon-driver-secret -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon secret driver - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the libvirtd secret driver. - -Package: libvirt-daemon-plugin-lockd -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon-lock (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - libvirt-daemon (= ${binary:Version}), -Breaks: - libvirt-daemon (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), -Description: Virtualization daemon lockd plugin - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the plugin that implements disk locking using virtlockd. - -Package: libvirt-daemon-plugin-sanlock -Section: admin -Architecture: linux-any -Multi-arch: no -Depends: - augeas-tools, - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - libvirt-daemon (= ${binary:Version}), -Breaks: - libvirt-daemon (<< 10.6.0-2~), - libvirt-sanlock (<< 10.6.0-2~), -Replaces: - libvirt-daemon (<< 10.6.0-2~), - libvirt-sanlock (<< 10.6.0-2~), -Description: Virtualization daemon sanlock plugin - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the plugin that implements disk locking using sanlock. - -Package: libvirt-daemon-system -Section: admin -Architecture: linux-any -Depends: - libvirt-clients (= ${binary:Version}), - libvirt-common (= ${binary:Version}), - libvirt-daemon (= ${binary:Version}), - libvirt-daemon-common (= ${binary:Version}), - libvirt-daemon-config-network (= ${source:Version}), - libvirt-daemon-config-nwfilter (= ${source:Version}), - libvirt-daemon-driver-network (= ${binary:Version}), - libvirt-daemon-driver-nodedev (= ${binary:Version}), - libvirt-daemon-driver-nwfilter (= ${binary:Version}), - libvirt-daemon-driver-qemu (= ${binary:Version}) [${ARCHES_QEMU}], - libvirt-daemon-driver-secret (= ${binary:Version}), - libvirt-daemon-driver-storage (= ${binary:Version}), - libvirt-daemon-log (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, -Recommends: - libvirt-daemon-driver-lxc (= ${binary:Version}) [${ARCHES_LXC}], - libvirt-daemon-driver-xen (= ${binary:Version}) [${ARCHES_XEN}], - libvirt-daemon-lock (= ${binary:Version}), -Description: Virtualization daemon typical deployment - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package doesn't contain any files on its own, and is intended as a - convenient way to create the most common type of libvirt setup (local QEMU - hypervisor) in one go. - -Package: libvirt-daemon-system-systemd -Section: admin -Architecture: all -Multi-Arch: foreign -Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon-system (<< ${source:Version}.1~), - libvirt-daemon-system (>= ${source:Version}), - libvirt0 (<< ${source:Version}.1~), - libvirt0 (>= ${source:Version}), - ${misc:Depends}, -Description: transitional dummy package - This is a transitional dummy package and can be safely removed. - -Package: libvirt-daemon-system-sysv -Section: admin -Architecture: all -Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon (<< ${source:Version}.1~), - libvirt-daemon (>= ${source:Version}), - libvirt-daemon-common (<< ${source:Version}.1~), - libvirt-daemon-common (>= ${source:Version}), - libvirt-daemon-log (<< ${source:Version}.1~), - libvirt-daemon-log (>= ${source:Version}), - libvirt-daemon-system (<< ${source:Version}.1~), - libvirt-daemon-system (>= ${source:Version}), - libvirt0 (<< ${source:Version}.1~), - libvirt0 (>= ${source:Version}), - ${misc:Depends}, -Description: transitional dummy package - This is a transitional dummy package and can be safely removed. - -Package: libvirt-daemon-config-network -Section: admin -Architecture: all -Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon-driver-network (<< ${source:Version}.1~), - libvirt-daemon-driver-network (>= ${source:Version}), - libvirt0 (<< ${source:Version}.1~), - libvirt0 (>= ${source:Version}), - ${misc:Depends}, -Breaks: - libvirt-daemon-system (<< 6.9.0-2~), -Replaces: - libvirt-daemon-system (<< 6.9.0-2~), -Description: Libvirt daemon configuration files (default network) - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the configuration for the 'default' libvirt network. - -Package: libvirt-daemon-config-nwfilter -Section: admin -Architecture: all -Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt-daemon-driver-nwfilter (<< ${source:Version}.1~), - libvirt-daemon-driver-nwfilter (>= ${source:Version}), - libvirt0 (<< ${source:Version}.1~), - libvirt0 (>= ${source:Version}), - ${misc:Depends}, -Breaks: - libvirt-daemon-system (<< 6.9.0-2~), -Replaces: - libvirt-daemon-system (<< 6.9.0-2~), -Description: Libvirt daemon configuration files (default network filters) - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the configuration for the default set of nwfilters. - -Package: libvirt0 -Architecture: any -Multi-Arch: same -Depends: - libvirt-common (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Recommends: - libvirt-l10n (= ${binary:Version}), -Description: library for interfacing with different virtualization systems - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - -Package: libvirt-common -Architecture: any -Multi-Arch: foreign -Depends: - ${misc:Depends}, - ${shlibs:Depends}, -Breaks: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), - libvirt0 (<< 10.6.0-2~), -Replaces: - libvirt-clients (<< 10.6.0-2~), - libvirt-daemon-system (<< 10.6.0-2~), - libvirt0 (<< 10.6.0-2~), -Description: data files for the libvirt library - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains data files needed by the library. - -Package: libvirt-l10n -Section: localization -Architecture: all -Multi-Arch: foreign -Depends: - libvirt-common (<< ${source:Version}.1~), - libvirt-common (>= ${source:Version}), - libvirt0 (<< ${source:Version}.1~), - libvirt0 (>= ${source:Version}), - ${misc:Depends}, -Breaks: - libvirt0 (<< 8.10.0-2~), -Replaces: - libvirt0 (<< 8.10.0-2~), -Description: localization for the libvirt library - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the localization files. - -Package: libvirt-doc -Section: doc -Architecture: all -Multi-Arch: foreign -Depends: - ${misc:Depends}, -Description: documentation for the libvirt library - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the documentation. - -Package: libvirt-dev -Section: libdevel -Architecture: any -Multi-Arch: same -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, -Recommends: - pkgconf, -Description: development files for the libvirt library - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the header files and static libraries which are - needed for developing the applications with libvirt. - -Package: libvirt-sanlock -Section: admin -Architecture: linux-any -Depends: - libvirt-common (= ${binary:Version}), - libvirt-daemon-plugin-sanlock (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Description: transitional dummy package - This is a transitional dummy package and can be safely removed. - -Package: libnss-libvirt -Section: admin -Architecture: linux-any -Multi-Arch: same -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Description: nss plugins providing IP address resolution for virtual machines - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains two nss plugins for IP address resolution of libvirt - managed virtual machines: the 'libvirt_guest' plugin uses libvirt's domain - names while the 'libvirt' plugin looks at the guest's hostname. - -Package: libvirt-wireshark -Section: admin -Architecture: linux-any -Multi-Arch: same -Depends: - libvirt-common (= ${binary:Version}), - libvirt0 (= ${binary:Version}), - ${misc:Depends}, - ${shlibs:Depends}, -Description: Wireshark dissector for the libvirt protocol - Libvirt is a C toolkit to interact with the virtualization capabilities - of recent versions of Linux (and other OSes). The library aims at providing - a long term stable C API for different virtualization mechanisms. It currently - supports QEMU, KVM, XEN, OpenVZ, LXC, and VirtualBox. - . - This package contains the wireshark dissector. diff --git a/debian/copyright b/debian/copyright index 54b8b3e9..88675fd9 100644 --- a/debian/copyright +++ b/debian/copyright @@ -4,17 +4,16 @@ Source: https://libvirt.org/git/?p=libvirt.git Comment: in addition see the upstream maintainer AUTHORS file Files: * -Copyright: 2005-2024 Red Hat, Inc +Copyright: 2005-2023 Red Hat, Inc License: LGPL-2.1+ Comment: Among many source files this also includes many generated, test-data or binary files Files: build-aux/syntax-check.mk Copyright: 2008-2019 Red Hat, Inc. - 2001-2024 Free Software Foundation, Inc. + 2001-2022 Free Software Foundation, Inc. License: GPL-3.0+ Files: src/ch/ch_capabilities.* - src/ch/ch_interface.* Copyright: 2023 Microsoft Corp. License: LGPL-2.1+ @@ -27,10 +26,6 @@ Files: src/conf/domain_validate.* Copyright: 2020 IBM Corp. License: LGPL-2.1+ -Files: src/cpu/cpu_loongarch.* -Copyright: 2024 Loongson Technology. -License: LGPL-2.1+ - Files: src/cpu/cpu_riscv64.* Copyright: 2023 Ventana Micro License: LGPL-2.1+ @@ -72,6 +67,15 @@ Copyright: 2020-2021 Microsoft Corp. License: LGPL-2.1+ Files: tests/pkix_asn1_tab.c + tests/virsh-cpuset + tests/virsh-optparse + tests/virsh-read-bufsiz + tests/virsh-read-non-seekable + tests/virsh-schedinfo + tests/virsh-self-test + tests/virsh-start + tests/virsh-undefine + tests/virsh-vcpupin Copyright: 2008-2019 Red Hat, Inc. License: GPL-2.0+ diff --git a/debian/libnss-libvirt.install b/debian/libnss-libvirt.install index 88d8de03..691285e5 100644 --- a/debian/libnss-libvirt.install +++ b/debian/libnss-libvirt.install @@ -1,3 +1,2 @@ -etc/apt/apt.conf.d/90libnss-libvirt -usr/lib/${DEB_HOST_MULTIARCH}/libnss_libvirt.so.2 -usr/lib/${DEB_HOST_MULTIARCH}/libnss_libvirt_guest.so.2 +# the nss module (once enabled) will make apt call getdents (LP: #1732030) +debian/apt/90libnss-libvirt etc/apt/apt.conf.d diff --git a/debian/libnss-libvirt.install.in b/debian/libnss-libvirt.install.in deleted file mode 100644 index 88d8de03..00000000 --- a/debian/libnss-libvirt.install.in +++ /dev/null @@ -1,3 +0,0 @@ -etc/apt/apt.conf.d/90libnss-libvirt -usr/lib/${DEB_HOST_MULTIARCH}/libnss_libvirt.so.2 -usr/lib/${DEB_HOST_MULTIARCH}/libnss_libvirt_guest.so.2 diff --git a/debian/libnss-libvirt.links b/debian/libnss-libvirt.links index 1b10193c..4999b695 100644 --- a/debian/libnss-libvirt.links +++ b/debian/libnss-libvirt.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libnss-libvirt +usr/share/doc/libvirt0 usr/share/doc/libnss-libvirt diff --git a/debian/libnss-libvirt.maintscript b/debian/libnss-libvirt.maintscript index 256be7bf..a16e491d 100644 --- a/debian/libnss-libvirt.maintscript +++ b/debian/libnss-libvirt.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libnss-libvirt libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libnss-libvirt libvirt0 9.3.0-2~ diff --git a/debian/libvirt-clients-qemu.install.in b/debian/libvirt-clients-qemu.install.in deleted file mode 100644 index af592fa7..00000000 --- a/debian/libvirt-clients-qemu.install.in +++ /dev/null @@ -1,4 +0,0 @@ -usr/bin/virt-qemu-qmp-proxy -usr/bin/virt-qemu-sev-validate -usr/share/man/man1/virt-qemu-qmp-proxy.1 -usr/share/man/man1/virt-qemu-sev-validate.1 diff --git a/debian/libvirt-clients-qemu.links b/debian/libvirt-clients-qemu.links index 209dd0d3..08401d75 100644 --- a/debian/libvirt-clients-qemu.links +++ b/debian/libvirt-clients-qemu.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-clients-qemu +usr/share/doc/libvirt0 usr/share/doc/libvirt-clients-qemu diff --git a/debian/libvirt-clients-qemu.maintscript b/debian/libvirt-clients-qemu.maintscript index 31516c7e..3d94c8e7 100644 --- a/debian/libvirt-clients-qemu.maintscript +++ b/debian/libvirt-clients-qemu.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-clients-qemu libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-clients-qemu libvirt0 9.3.0-2~ diff --git a/debian/libvirt-clients.install b/debian/libvirt-clients.install index 8bf73e47..e3ac957f 100644 --- a/debian/libvirt-clients.install +++ b/debian/libvirt-clients.install @@ -1,9 +1,14 @@ +etc/libvirt/libvirt-admin.conf +etc/libvirt/libvirt.conf usr/bin/virsh +usr/bin/virt-admin usr/bin/virt-pki-query-dn usr/bin/virt-pki-validate usr/bin/virt-xml-validate usr/share/bash-completion/completions/virsh +usr/share/bash-completion/completions/virt-admin usr/share/man/man1/virsh.1 +usr/share/man/man1/virt-admin.1 usr/share/man/man1/virt-pki-query-dn.1 usr/share/man/man1/virt-pki-validate.1 usr/share/man/man1/virt-xml-validate.1 diff --git a/debian/libvirt-clients.install.in b/debian/libvirt-clients.install.in deleted file mode 100644 index 8bf73e47..00000000 --- a/debian/libvirt-clients.install.in +++ /dev/null @@ -1,21 +0,0 @@ -usr/bin/virsh -usr/bin/virt-pki-query-dn -usr/bin/virt-pki-validate -usr/bin/virt-xml-validate -usr/share/bash-completion/completions/virsh -usr/share/man/man1/virsh.1 -usr/share/man/man1/virt-pki-query-dn.1 -usr/share/man/man1/virt-pki-validate.1 -usr/share/man/man1/virt-xml-validate.1 -usr/share/man/man7/virkeycode-atset1.7 -usr/share/man/man7/virkeycode-atset2.7 -usr/share/man/man7/virkeycode-atset3.7 -usr/share/man/man7/virkeycode-linux.7 -usr/share/man/man7/virkeycode-osx.7 -usr/share/man/man7/virkeycode-qnum.7 -usr/share/man/man7/virkeycode-usb.7 -usr/share/man/man7/virkeycode-win32.7 -usr/share/man/man7/virkeycode-xtkbd.7 -usr/share/man/man7/virkeyname-linux.7 -usr/share/man/man7/virkeyname-osx.7 -usr/share/man/man7/virkeyname-win32.7 diff --git a/debian/libvirt-clients.links b/debian/libvirt-clients.links index 92171166..c1cb79d2 100644 --- a/debian/libvirt-clients.links +++ b/debian/libvirt-clients.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-clients +usr/share/doc/libvirt0 usr/share/doc/libvirt-clients diff --git a/debian/libvirt-clients.maintscript b/debian/libvirt-clients.maintscript index a2d1e468..401ead62 100644 --- a/debian/libvirt-clients.maintscript +++ b/debian/libvirt-clients.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-clients libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-clients libvirt0 9.3.0-2~ diff --git a/debian/libvirt-clients.postrm b/debian/libvirt-clients.postrm index fbaaeb76..9b33c565 100644 --- a/debian/libvirt-clients.postrm +++ b/debian/libvirt-clients.postrm @@ -18,16 +18,15 @@ set -e abort_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "abort_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done @@ -47,31 +46,15 @@ abort_conffile_transfer() { rm -f "$conffile.dpkg-disappear" } -CLIENTS_TO_COMMON=" - /etc/libvirt/libvirt-admin.conf - /etc/libvirt/libvirt.conf -" - case "$1" in abort-install|abort-upgrade) abort_conffile_transfer \ "/etc/libvirt/virt-login-shell.conf" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-clients" \ "libvirt-login-shell" \ -- \ "$@" - for conf in $CLIENTS_TO_COMMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-clients" \ - "libvirt-common" \ - -- \ - "$@" - done ;; remove|purge|upgrade|disappear|failed-upgrade) diff --git a/debian/libvirt-clients.postrm.in b/debian/libvirt-clients.postrm.in deleted file mode 100644 index 718c5737..00000000 --- a/debian/libvirt-clients.postrm.in +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#ABORT_CONFFILE_TRANSFER# - -CLIENTS_TO_COMMON=" - /etc/libvirt/libvirt-admin.conf - /etc/libvirt/libvirt.conf -" - -case "$1" in - abort-install|abort-upgrade) - abort_conffile_transfer \ - "/etc/libvirt/virt-login-shell.conf" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-clients" \ - "libvirt-login-shell" \ - -- \ - "$@" - for conf in $CLIENTS_TO_COMMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-clients" \ - "libvirt-common" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear|failed-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-clients.preinst b/debian/libvirt-clients.preinst index e21d43d8..83c377c3 100644 --- a/debian/libvirt-clients.preinst +++ b/debian/libvirt-clients.preinst @@ -14,16 +14,15 @@ set -e prepare_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "prepare_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done @@ -41,57 +40,25 @@ prepare_conffile_transfer() { # more importanly, $pkgto's postinst, where the transfer process is completed, # will be able to figure out the original state of the conffile and make sure # it is restored - if [ -e "$conffile" ]; then - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkgfrom" | grep -E "^ $conffile " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$conffile" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - if [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$conffile" - return 0 - fi - echo "Preparing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." mv -f "$conffile" "$conffile.dpkg-transfer" - return 0 - fi - - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - # If we are performing an upgrade from a version that's newer than the - # one which originally introduced the conffile ($firstver), we expect - # it to be present on disk; if that's not the case, that means that - # the admin must have explicitly deleted it and we should preserve - # this local modification + else + # If the conffile is no longer present on the disk, it means the admin + # has deleted it, and we should preserve this local modification touch "$conffile.dpkg-disappear" - return 0 fi } -CLIENTS_TO_COMMON=" - /etc/libvirt/libvirt-admin.conf - /etc/libvirt/libvirt.conf -" - case "$1" in install|upgrade) prepare_conffile_transfer \ "/etc/libvirt/virt-login-shell.conf" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-clients" \ "libvirt-login-shell" \ -- \ "$@" - for conf in $CLIENTS_TO_COMMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-clients" \ - "libvirt-common" \ - -- \ - "$@" - done ;; abort-upgrade) diff --git a/debian/libvirt-clients.preinst.in b/debian/libvirt-clients.preinst.in deleted file mode 100644 index 4612c522..00000000 --- a/debian/libvirt-clients.preinst.in +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#PREPARE_CONFFILE_TRANSFER# - -CLIENTS_TO_COMMON=" - /etc/libvirt/libvirt-admin.conf - /etc/libvirt/libvirt.conf -" - -case "$1" in - install|upgrade) - prepare_conffile_transfer \ - "/etc/libvirt/virt-login-shell.conf" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-clients" \ - "libvirt-login-shell" \ - -- \ - "$@" - for conf in $CLIENTS_TO_COMMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-clients" \ - "libvirt-common" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-common.install b/debian/libvirt-common.install deleted file mode 100644 index 9f2b01e7..00000000 --- a/debian/libvirt-common.install +++ /dev/null @@ -1,118 +0,0 @@ -etc/libvirt/libvirt-admin.conf -etc/libvirt/libvirt.conf -usr/share/libvirt/cpu_map/arm_FT-2000plus.xml -usr/share/libvirt/cpu_map/arm_Falkor.xml -usr/share/libvirt/cpu_map/arm_Kunpeng-920.xml -usr/share/libvirt/cpu_map/arm_Neoverse-N1.xml -usr/share/libvirt/cpu_map/arm_Neoverse-N2.xml -usr/share/libvirt/cpu_map/arm_Neoverse-V1.xml -usr/share/libvirt/cpu_map/arm_Tengyun-S2500.xml -usr/share/libvirt/cpu_map/arm_ThunderX299xx.xml -usr/share/libvirt/cpu_map/arm_a64fx.xml -usr/share/libvirt/cpu_map/arm_cortex-a53.xml -usr/share/libvirt/cpu_map/arm_cortex-a57.xml -usr/share/libvirt/cpu_map/arm_cortex-a72.xml -usr/share/libvirt/cpu_map/arm_features.xml -usr/share/libvirt/cpu_map/arm_vendors.xml -usr/share/libvirt/cpu_map/index.xml -usr/share/libvirt/cpu_map/ppc64_POWER10.xml -usr/share/libvirt/cpu_map/ppc64_POWER6.xml -usr/share/libvirt/cpu_map/ppc64_POWER7.xml -usr/share/libvirt/cpu_map/ppc64_POWER8.xml -usr/share/libvirt/cpu_map/ppc64_POWER9.xml -usr/share/libvirt/cpu_map/ppc64_POWERPC_e5500.xml -usr/share/libvirt/cpu_map/ppc64_POWERPC_e6500.xml -usr/share/libvirt/cpu_map/ppc64_vendors.xml -usr/share/libvirt/cpu_map/x86_486.xml -usr/share/libvirt/cpu_map/x86_Broadwell-IBRS.xml -usr/share/libvirt/cpu_map/x86_Broadwell-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Broadwell-noTSX.xml -usr/share/libvirt/cpu_map/x86_Broadwell.xml -usr/share/libvirt/cpu_map/x86_Cascadelake-Server-noTSX.xml -usr/share/libvirt/cpu_map/x86_Cascadelake-Server.xml -usr/share/libvirt/cpu_map/x86_Conroe.xml -usr/share/libvirt/cpu_map/x86_Cooperlake.xml -usr/share/libvirt/cpu_map/x86_Dhyana.xml -usr/share/libvirt/cpu_map/x86_EPYC-Genoa.xml -usr/share/libvirt/cpu_map/x86_EPYC-IBPB.xml -usr/share/libvirt/cpu_map/x86_EPYC-Milan.xml -usr/share/libvirt/cpu_map/x86_EPYC-Rome.xml -usr/share/libvirt/cpu_map/x86_EPYC.xml -usr/share/libvirt/cpu_map/x86_GraniteRapids.xml -usr/share/libvirt/cpu_map/x86_Haswell-IBRS.xml -usr/share/libvirt/cpu_map/x86_Haswell-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Haswell-noTSX.xml -usr/share/libvirt/cpu_map/x86_Haswell.xml -usr/share/libvirt/cpu_map/x86_Icelake-Client-noTSX.xml -usr/share/libvirt/cpu_map/x86_Icelake-Client.xml -usr/share/libvirt/cpu_map/x86_Icelake-Server-noTSX.xml -usr/share/libvirt/cpu_map/x86_Icelake-Server.xml -usr/share/libvirt/cpu_map/x86_IvyBridge-IBRS.xml -usr/share/libvirt/cpu_map/x86_IvyBridge.xml -usr/share/libvirt/cpu_map/x86_Nehalem-IBRS.xml -usr/share/libvirt/cpu_map/x86_Nehalem.xml -usr/share/libvirt/cpu_map/x86_Opteron_G1.xml -usr/share/libvirt/cpu_map/x86_Opteron_G2.xml -usr/share/libvirt/cpu_map/x86_Opteron_G3.xml -usr/share/libvirt/cpu_map/x86_Opteron_G4.xml -usr/share/libvirt/cpu_map/x86_Opteron_G5.xml -usr/share/libvirt/cpu_map/x86_Penryn.xml -usr/share/libvirt/cpu_map/x86_SandyBridge-IBRS.xml -usr/share/libvirt/cpu_map/x86_SandyBridge.xml -usr/share/libvirt/cpu_map/x86_SapphireRapids.xml -usr/share/libvirt/cpu_map/x86_Skylake-Client-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Client-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Client.xml -usr/share/libvirt/cpu_map/x86_Skylake-Server-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Server-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Server.xml -usr/share/libvirt/cpu_map/x86_Snowridge.xml -usr/share/libvirt/cpu_map/x86_Westmere-IBRS.xml -usr/share/libvirt/cpu_map/x86_Westmere.xml -usr/share/libvirt/cpu_map/x86_athlon.xml -usr/share/libvirt/cpu_map/x86_core2duo.xml -usr/share/libvirt/cpu_map/x86_coreduo.xml -usr/share/libvirt/cpu_map/x86_cpu64-rhel5.xml -usr/share/libvirt/cpu_map/x86_cpu64-rhel6.xml -usr/share/libvirt/cpu_map/x86_features.xml -usr/share/libvirt/cpu_map/x86_kvm32.xml -usr/share/libvirt/cpu_map/x86_kvm64.xml -usr/share/libvirt/cpu_map/x86_n270.xml -usr/share/libvirt/cpu_map/x86_pentium.xml -usr/share/libvirt/cpu_map/x86_pentium2.xml -usr/share/libvirt/cpu_map/x86_pentium3.xml -usr/share/libvirt/cpu_map/x86_pentiumpro.xml -usr/share/libvirt/cpu_map/x86_phenom.xml -usr/share/libvirt/cpu_map/x86_qemu32.xml -usr/share/libvirt/cpu_map/x86_qemu64.xml -usr/share/libvirt/cpu_map/x86_vendors.xml -usr/share/libvirt/schemas/basictypes.rng -usr/share/libvirt/schemas/capability.rng -usr/share/libvirt/schemas/cpu.rng -usr/share/libvirt/schemas/cputypes.rng -usr/share/libvirt/schemas/domain.rng -usr/share/libvirt/schemas/domainbackup.rng -usr/share/libvirt/schemas/domaincaps.rng -usr/share/libvirt/schemas/domaincheckpoint.rng -usr/share/libvirt/schemas/domaincommon.rng -usr/share/libvirt/schemas/domainoverrides.rng -usr/share/libvirt/schemas/domainsnapshot.rng -usr/share/libvirt/schemas/inactiveDomain.rng -usr/share/libvirt/schemas/interface.rng -usr/share/libvirt/schemas/network.rng -usr/share/libvirt/schemas/networkcommon.rng -usr/share/libvirt/schemas/networkport.rng -usr/share/libvirt/schemas/nodedev.rng -usr/share/libvirt/schemas/nwfilter.rng -usr/share/libvirt/schemas/nwfilter_params.rng -usr/share/libvirt/schemas/nwfilterbinding.rng -usr/share/libvirt/schemas/privatedata.rng -usr/share/libvirt/schemas/secret.rng -usr/share/libvirt/schemas/storagecommon.rng -usr/share/libvirt/schemas/storagepool.rng -usr/share/libvirt/schemas/storagepoolcaps.rng -usr/share/libvirt/schemas/storagevol.rng -usr/share/libvirt/test-screenshot.png -usr/share/systemtap/tapset/libvirt_functions.stp -usr/share/systemtap/tapset/libvirt_probes.stp -usr/share/systemtap/tapset/libvirt_qemu_probes.stp diff --git a/debian/libvirt-common.install.in b/debian/libvirt-common.install.in deleted file mode 100644 index 8aa9c670..00000000 --- a/debian/libvirt-common.install.in +++ /dev/null @@ -1,118 +0,0 @@ -etc/libvirt/libvirt-admin.conf -etc/libvirt/libvirt.conf -usr/share/libvirt/cpu_map/arm_FT-2000plus.xml -usr/share/libvirt/cpu_map/arm_Falkor.xml -usr/share/libvirt/cpu_map/arm_Kunpeng-920.xml -usr/share/libvirt/cpu_map/arm_Neoverse-N1.xml -usr/share/libvirt/cpu_map/arm_Neoverse-N2.xml -usr/share/libvirt/cpu_map/arm_Neoverse-V1.xml -usr/share/libvirt/cpu_map/arm_Tengyun-S2500.xml -usr/share/libvirt/cpu_map/arm_ThunderX299xx.xml -usr/share/libvirt/cpu_map/arm_a64fx.xml -usr/share/libvirt/cpu_map/arm_cortex-a53.xml -usr/share/libvirt/cpu_map/arm_cortex-a57.xml -usr/share/libvirt/cpu_map/arm_cortex-a72.xml -usr/share/libvirt/cpu_map/arm_features.xml -usr/share/libvirt/cpu_map/arm_vendors.xml -usr/share/libvirt/cpu_map/index.xml -usr/share/libvirt/cpu_map/ppc64_POWER10.xml -usr/share/libvirt/cpu_map/ppc64_POWER6.xml -usr/share/libvirt/cpu_map/ppc64_POWER7.xml -usr/share/libvirt/cpu_map/ppc64_POWER8.xml -usr/share/libvirt/cpu_map/ppc64_POWER9.xml -usr/share/libvirt/cpu_map/ppc64_POWERPC_e5500.xml -usr/share/libvirt/cpu_map/ppc64_POWERPC_e6500.xml -usr/share/libvirt/cpu_map/ppc64_vendors.xml -usr/share/libvirt/cpu_map/x86_486.xml -usr/share/libvirt/cpu_map/x86_Broadwell-IBRS.xml -usr/share/libvirt/cpu_map/x86_Broadwell-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Broadwell-noTSX.xml -usr/share/libvirt/cpu_map/x86_Broadwell.xml -usr/share/libvirt/cpu_map/x86_Cascadelake-Server-noTSX.xml -usr/share/libvirt/cpu_map/x86_Cascadelake-Server.xml -usr/share/libvirt/cpu_map/x86_Conroe.xml -usr/share/libvirt/cpu_map/x86_Cooperlake.xml -usr/share/libvirt/cpu_map/x86_Dhyana.xml -usr/share/libvirt/cpu_map/x86_EPYC-Genoa.xml -usr/share/libvirt/cpu_map/x86_EPYC-IBPB.xml -usr/share/libvirt/cpu_map/x86_EPYC-Milan.xml -usr/share/libvirt/cpu_map/x86_EPYC-Rome.xml -usr/share/libvirt/cpu_map/x86_EPYC.xml -usr/share/libvirt/cpu_map/x86_GraniteRapids.xml -usr/share/libvirt/cpu_map/x86_Haswell-IBRS.xml -usr/share/libvirt/cpu_map/x86_Haswell-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Haswell-noTSX.xml -usr/share/libvirt/cpu_map/x86_Haswell.xml -usr/share/libvirt/cpu_map/x86_Icelake-Client-noTSX.xml -usr/share/libvirt/cpu_map/x86_Icelake-Client.xml -usr/share/libvirt/cpu_map/x86_Icelake-Server-noTSX.xml -usr/share/libvirt/cpu_map/x86_Icelake-Server.xml -usr/share/libvirt/cpu_map/x86_IvyBridge-IBRS.xml -usr/share/libvirt/cpu_map/x86_IvyBridge.xml -usr/share/libvirt/cpu_map/x86_Nehalem-IBRS.xml -usr/share/libvirt/cpu_map/x86_Nehalem.xml -usr/share/libvirt/cpu_map/x86_Opteron_G1.xml -usr/share/libvirt/cpu_map/x86_Opteron_G2.xml -usr/share/libvirt/cpu_map/x86_Opteron_G3.xml -usr/share/libvirt/cpu_map/x86_Opteron_G4.xml -usr/share/libvirt/cpu_map/x86_Opteron_G5.xml -usr/share/libvirt/cpu_map/x86_Penryn.xml -usr/share/libvirt/cpu_map/x86_SandyBridge-IBRS.xml -usr/share/libvirt/cpu_map/x86_SandyBridge.xml -usr/share/libvirt/cpu_map/x86_SapphireRapids.xml -usr/share/libvirt/cpu_map/x86_Skylake-Client-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Client-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Client.xml -usr/share/libvirt/cpu_map/x86_Skylake-Server-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Server-noTSX-IBRS.xml -usr/share/libvirt/cpu_map/x86_Skylake-Server.xml -usr/share/libvirt/cpu_map/x86_Snowridge.xml -usr/share/libvirt/cpu_map/x86_Westmere-IBRS.xml -usr/share/libvirt/cpu_map/x86_Westmere.xml -usr/share/libvirt/cpu_map/x86_athlon.xml -usr/share/libvirt/cpu_map/x86_core2duo.xml -usr/share/libvirt/cpu_map/x86_coreduo.xml -usr/share/libvirt/cpu_map/x86_cpu64-rhel5.xml -usr/share/libvirt/cpu_map/x86_cpu64-rhel6.xml -usr/share/libvirt/cpu_map/x86_features.xml -usr/share/libvirt/cpu_map/x86_kvm32.xml -usr/share/libvirt/cpu_map/x86_kvm64.xml -usr/share/libvirt/cpu_map/x86_n270.xml -usr/share/libvirt/cpu_map/x86_pentium.xml -usr/share/libvirt/cpu_map/x86_pentium2.xml -usr/share/libvirt/cpu_map/x86_pentium3.xml -usr/share/libvirt/cpu_map/x86_pentiumpro.xml -usr/share/libvirt/cpu_map/x86_phenom.xml -usr/share/libvirt/cpu_map/x86_qemu32.xml -usr/share/libvirt/cpu_map/x86_qemu64.xml -usr/share/libvirt/cpu_map/x86_vendors.xml -usr/share/libvirt/schemas/basictypes.rng -usr/share/libvirt/schemas/capability.rng -usr/share/libvirt/schemas/cpu.rng -usr/share/libvirt/schemas/cputypes.rng -usr/share/libvirt/schemas/domain.rng -usr/share/libvirt/schemas/domainbackup.rng -usr/share/libvirt/schemas/domaincaps.rng -usr/share/libvirt/schemas/domaincheckpoint.rng -usr/share/libvirt/schemas/domaincommon.rng -usr/share/libvirt/schemas/domainoverrides.rng -usr/share/libvirt/schemas/domainsnapshot.rng -usr/share/libvirt/schemas/inactiveDomain.rng -usr/share/libvirt/schemas/interface.rng -usr/share/libvirt/schemas/network.rng -usr/share/libvirt/schemas/networkcommon.rng -usr/share/libvirt/schemas/networkport.rng -usr/share/libvirt/schemas/nodedev.rng -usr/share/libvirt/schemas/nwfilter.rng -usr/share/libvirt/schemas/nwfilter_params.rng -usr/share/libvirt/schemas/nwfilterbinding.rng -usr/share/libvirt/schemas/privatedata.rng -usr/share/libvirt/schemas/secret.rng -usr/share/libvirt/schemas/storagecommon.rng -usr/share/libvirt/schemas/storagepool.rng -usr/share/libvirt/schemas/storagepoolcaps.rng -usr/share/libvirt/schemas/storagevol.rng -usr/share/libvirt/test-screenshot.png -[linux-any] usr/share/systemtap/tapset/libvirt_functions.stp -[linux-any] usr/share/systemtap/tapset/libvirt_probes.stp -[${ARCHES_QEMU}] usr/share/systemtap/tapset/libvirt_qemu_probes.stp diff --git a/debian/libvirt-common.postinst b/debian/libvirt-common.postinst deleted file mode 100644 index 68c40cc3..00000000 --- a/debian/libvirt-common.postinst +++ /dev/null @@ -1,84 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} - -CLIENTS_TO_COMMON=" - /etc/libvirt/libvirt-admin.conf - /etc/libvirt/libvirt.conf -" - -case "$1" in - configure) - for conf in $CLIENTS_TO_COMMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-clients" \ - "libvirt-common" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-common.postinst.in b/debian/libvirt-common.postinst.in deleted file mode 100644 index 3c05c5a6..00000000 --- a/debian/libvirt-common.postinst.in +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# - -CLIENTS_TO_COMMON=" - /etc/libvirt/libvirt-admin.conf - /etc/libvirt/libvirt.conf -" - -case "$1" in - configure) - for conf in $CLIENTS_TO_COMMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-clients" \ - "libvirt-common" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-common.dirs b/debian/libvirt-daemon-common.dirs deleted file mode 100644 index 5200c56a..00000000 --- a/debian/libvirt-daemon-common.dirs +++ /dev/null @@ -1,5 +0,0 @@ -etc/libvirt/hooks -var/cache/libvirt -var/lib/libvirt/boot -var/lib/libvirt/images -var/log/libvirt diff --git a/debian/libvirt-daemon-common.install b/debian/libvirt-daemon-common.install deleted file mode 100644 index 211a64d3..00000000 --- a/debian/libvirt-daemon-common.install +++ /dev/null @@ -1,17 +0,0 @@ -etc/apparmor.d/usr.lib.libvirt.virt-aa-helper -etc/sasl2/libvirt.conf -usr/bin/virt-admin -usr/bin/virt-host-validate -usr/bin/virt-ssh-helper -usr/lib/libvirt/libvirt-guests.sh -usr/lib/libvirt/libvirt_iohelper -usr/lib/systemd/system/libvirt-guests.service -usr/lib/systemd/system/virt-guest-shutdown.target -usr/share/bash-completion/completions/virt-admin -usr/share/man/man1/virt-admin.1 -usr/share/man/man1/virt-host-validate.1 -usr/share/man/man8/libvirt-guests.8 -usr/share/man/man8/virt-ssh-helper.8 -usr/share/polkit-1/actions/org.libvirt.api.policy -usr/share/polkit-1/actions/org.libvirt.unix.policy -usr/share/polkit-1/rules.d/60-libvirt.rules diff --git a/debian/libvirt-daemon-common.install.in b/debian/libvirt-daemon-common.install.in deleted file mode 100644 index 211a64d3..00000000 --- a/debian/libvirt-daemon-common.install.in +++ /dev/null @@ -1,17 +0,0 @@ -etc/apparmor.d/usr.lib.libvirt.virt-aa-helper -etc/sasl2/libvirt.conf -usr/bin/virt-admin -usr/bin/virt-host-validate -usr/bin/virt-ssh-helper -usr/lib/libvirt/libvirt-guests.sh -usr/lib/libvirt/libvirt_iohelper -usr/lib/systemd/system/libvirt-guests.service -usr/lib/systemd/system/virt-guest-shutdown.target -usr/share/bash-completion/completions/virt-admin -usr/share/man/man1/virt-admin.1 -usr/share/man/man1/virt-host-validate.1 -usr/share/man/man8/libvirt-guests.8 -usr/share/man/man8/virt-ssh-helper.8 -usr/share/polkit-1/actions/org.libvirt.api.policy -usr/share/polkit-1/actions/org.libvirt.unix.policy -usr/share/polkit-1/rules.d/60-libvirt.rules diff --git a/debian/libvirt-daemon-common.links b/debian/libvirt-daemon-common.links deleted file mode 100644 index 577ecb6e..00000000 --- a/debian/libvirt-daemon-common.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-common diff --git a/debian/libvirt-daemon-common.lintian-overrides b/debian/libvirt-daemon-common.lintian-overrides deleted file mode 100644 index d3582254..00000000 --- a/debian/libvirt-daemon-common.lintian-overrides +++ /dev/null @@ -1,8 +0,0 @@ -# The expected options are all implemented - just not in a way that Lintian -# is capable of recognizing -libvirt-daemon-common: init.d-script-does-not-implement-required-option * [etc/init.d/libvirt-guests] -libvirt-daemon-common: init.d-script-does-not-implement-status-option [etc/init.d/libvirt-guests] -libvirt-daemon-common: init.d-script-does-not-source-init-functions [etc/init.d/libvirt-guests] - -# Versioned conflicts are needed for DEP17 M7 -libvirt-daemon-common: conflicts-with-version libvirt-daemon-system * diff --git a/debian/libvirt-daemon-common.postinst b/debian/libvirt-daemon-common.postinst deleted file mode 100644 index 6b8c5d4e..00000000 --- a/debian/libvirt-daemon-common.postinst +++ /dev/null @@ -1,165 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -add_users_groups() -{ - if ! getent group libvirt >/dev/null; then - addgroup --quiet --system libvirt - fi -} - -add_statoverrides() -{ - ROOT_DIRS=" - /var/lib/libvirt/images/ - /var/lib/libvirt/boot/ - /var/cache/libvirt/ - " - - for dir in ${ROOT_DIRS}; do - if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then - [ ! -e "${dir}" ] || chown root:root "${dir}" - [ ! -e "${dir}" ] || chmod 0711 "${dir}" - fi - done -} - -DAEMON_SYSTEM_TO_DAEMON_COMMON=" - /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper - /etc/default/libvirt-guests - /etc/sasl2/libvirt.conf -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON=" - /etc/init.d/libvirt-guests -" - -DAEMON_COMMON_UNITS=" - libvirt-guests.service - virt-guest-shutdown.target -" - -case "$1" in - configure) - add_users_groups - add_statoverrides - - # Obsolete UML stuff included until 9.0.0-1 - rm -f /var/log/libvirt/uml/.placeholder - if [ -d /var/log/libvirt/uml ]; then - rmdir --ignore-fail-on-non-empty /var/log/libvirt/uml - fi - - for conf in $DAEMON_SYSTEM_TO_DAEMON_COMMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - - for unit in $DAEMON_COMMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-common.postinst.in b/debian/libvirt-daemon-common.postinst.in deleted file mode 100644 index 1918c6c3..00000000 --- a/debian/libvirt-daemon-common.postinst.in +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# -#DELETE_PROTECTIVE_DIVERSION# - -add_users_groups() -{ - if ! getent group libvirt >/dev/null; then - addgroup --quiet --system libvirt - fi -} - -add_statoverrides() -{ - ROOT_DIRS=" - /var/lib/libvirt/images/ - /var/lib/libvirt/boot/ - /var/cache/libvirt/ - " - - for dir in ${ROOT_DIRS}; do - if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then - [ ! -e "${dir}" ] || chown root:root "${dir}" - [ ! -e "${dir}" ] || chmod 0711 "${dir}" - fi - done -} - -DAEMON_SYSTEM_TO_DAEMON_COMMON=" - /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper - /etc/default/libvirt-guests - /etc/sasl2/libvirt.conf -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON=" - /etc/init.d/libvirt-guests -" - -DAEMON_COMMON_UNITS=" - libvirt-guests.service - virt-guest-shutdown.target -" - -case "$1" in - configure) - add_users_groups - add_statoverrides - - # Obsolete UML stuff included until 9.0.0-1 - rm -f /var/log/libvirt/uml/.placeholder - if [ -d /var/log/libvirt/uml ]; then - rmdir --ignore-fail-on-non-empty /var/log/libvirt/uml - fi - - for conf in $DAEMON_SYSTEM_TO_DAEMON_COMMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - - for unit in $DAEMON_COMMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-common.postrm b/debian/libvirt-daemon-common.postrm deleted file mode 100644 index b15a7d3e..00000000 --- a/debian/libvirt-daemon-common.postrm +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_COMMON_UNITS=" - libvirt-guests.service - virt-guest-shutdown.target -" - -case "$1" in - purge) - if getent group libvirt >/dev/null; then - delgroup libvirt >/dev/null || true - fi - - # Clean up logs - rm -rf /var/log/libvirt - ;; - - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_COMMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-common.postrm.in b/debian/libvirt-daemon-common.postrm.in deleted file mode 100644 index 3bacba97..00000000 --- a/debian/libvirt-daemon-common.postrm.in +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_COMMON_UNITS=" - libvirt-guests.service - virt-guest-shutdown.target -" - -case "$1" in - purge) - if getent group libvirt >/dev/null; then - delgroup libvirt >/dev/null || true - fi - - # Clean up logs - rm -rf /var/log/libvirt - ;; - - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_COMMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-common.preinst b/debian/libvirt-daemon-common.preinst deleted file mode 100644 index c48afaf7..00000000 --- a/debian/libvirt-daemon-common.preinst +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -create_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "create_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If we're upgrading from a new enough version of the package, it means - # that usr-merge has already happened and we don't need to mess with - # diversions at all - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --add "$usrfile" -} - -DAEMON_COMMON_UNITS=" - libvirt-guests.service - virt-guest-shutdown.target -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_COMMON_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-common.preinst.in b/debian/libvirt-daemon-common.preinst.in deleted file mode 100644 index 20e47224..00000000 --- a/debian/libvirt-daemon-common.preinst.in +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#CREATE_PROTECTIVE_DIVERSION# - -DAEMON_COMMON_UNITS=" - libvirt-guests.service - virt-guest-shutdown.target -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_COMMON_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-config-network.install.in b/debian/libvirt-daemon-config-network.install.in deleted file mode 100644 index e0845535..00000000 --- a/debian/libvirt-daemon-config-network.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/share/libvirt/networks/default.xml diff --git a/debian/libvirt-daemon-config-network.links b/debian/libvirt-daemon-config-network.links index 8a1b3a5e..65cf2c01 100644 --- a/debian/libvirt-daemon-config-network.links +++ b/debian/libvirt-daemon-config-network.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-config-network +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-config-network diff --git a/debian/libvirt-daemon-config-network.maintscript b/debian/libvirt-daemon-config-network.maintscript index d774ac12..cf0485c3 100644 --- a/debian/libvirt-daemon-config-network.maintscript +++ b/debian/libvirt-daemon-config-network.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-config-network libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-config-network libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-config-network.postinst b/debian/libvirt-daemon-config-network.postinst index 5e564d2d..311c4866 100644 --- a/debian/libvirt-daemon-config-network.postinst +++ b/debian/libvirt-daemon-config-network.postinst @@ -17,7 +17,7 @@ set -e create_config_from_template() { local config="$1" local template="$2" - local firstver="$3" + local lastver="$3" if [ "$4" != "--" ]; then echo "create_config_from_template called with the wrong number of arguments" >&2 @@ -27,7 +27,7 @@ create_config_from_template() { shift done - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then + if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then # The package is already configured, and the version that's been # configured is new enough to contain the config file if [ -e "$config.dpkg-backup" ]; then @@ -48,24 +48,24 @@ create_config_from_template() { return 0 fi } + finish_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "finish_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done - # If we're upgrading from a new enough version of the package, we can assume + # If we're upgrading rather than installing from scratch, we can assume # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then + if [ -n "$2" ]; then return 0 fi @@ -84,11 +84,13 @@ finish_conffile_transfer() { return 0 fi } + systemd_daemon_reload() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then systemctl --system daemon-reload >/dev/null || true fi } + systemd_unit_restart_if_active() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then for unit in "$@"; do @@ -109,7 +111,6 @@ case "$1" in "$@" finish_conffile_transfer \ "/etc/libvirt/qemu/networks/default.xml" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-daemon-system" \ "libvirt-daemon-config-network" \ diff --git a/debian/libvirt-daemon-config-network.postinst.in b/debian/libvirt-daemon-config-network.postinst.in deleted file mode 100644 index 552ec97e..00000000 --- a/debian/libvirt-daemon-config-network.postinst.in +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#CREATE_CONFIG_FROM_TEMPLATE# -#FINISH_CONFFILE_TRANSFER# -#SYSTEMD_DAEMON_RELOAD# -#SYSTEMD_UNIT_RESTART_IF_ACTIVE# - -case "$1" in - configure) - create_config_from_template \ - "/etc/libvirt/qemu/networks/default.xml" \ - "/usr/share/libvirt/networks/default.xml" \ - "6.9.0-2~" \ - -- \ - "$@" - finish_conffile_transfer \ - "/etc/libvirt/qemu/networks/default.xml" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-config-network" \ - -- \ - "$@" - - # Since we might have changed the on-disk configuration for some - # services, restart them so that they can pick up the new settings - systemd_daemon_reload - systemd_unit_restart_if_active libvirtd.service - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-config-network.postrm b/debian/libvirt-daemon-config-network.postrm index 07e4345d..b591ad15 100644 --- a/debian/libvirt-daemon-config-network.postrm +++ b/debian/libvirt-daemon-config-network.postrm @@ -19,7 +19,7 @@ set -e remove_config_from_template() { local config="$1" local template="$2" - local firstver="$3" + local lastver="$3" if [ "$4" != "--" ]; then echo "remove_config_from_template called with the wrong number of arguments" >&2 @@ -43,11 +43,13 @@ remove_config_from_template() { return 0 fi } + systemd_daemon_reload() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then systemctl --system daemon-reload >/dev/null || true fi } + systemd_unit_restart_if_active() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then for unit in "$@"; do diff --git a/debian/libvirt-daemon-config-network.postrm.in b/debian/libvirt-daemon-config-network.postrm.in deleted file mode 100644 index 3591fb39..00000000 --- a/debian/libvirt-daemon-config-network.postrm.in +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#REMOVE_CONFIG_FROM_TEMPLATE# -#SYSTEMD_DAEMON_RELOAD# -#SYSTEMD_UNIT_RESTART_IF_ACTIVE# - -case "$1" in - remove|purge) - remove_config_from_template \ - "/etc/libvirt/qemu/networks/default.xml" \ - "/usr/share/libvirt/networks/default.xml" \ - "6.9.0-2~" \ - -- \ - "$@" - - # Since we might have changed the on-disk configuration for some - # services, restart them so that they can pick up the new settings - systemd_daemon_reload - systemd_unit_restart_if_active libvirtd.service - ;; - - upgrade|disappear|failed-upgrade|abort-install|abort-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-config-nwfilter.install.in b/debian/libvirt-daemon-config-nwfilter.install.in deleted file mode 100644 index 58b27048..00000000 --- a/debian/libvirt-daemon-config-nwfilter.install.in +++ /dev/null @@ -1,24 +0,0 @@ -usr/share/libvirt/nwfilter/allow-arp.xml -usr/share/libvirt/nwfilter/allow-dhcp-server.xml -usr/share/libvirt/nwfilter/allow-dhcp.xml -usr/share/libvirt/nwfilter/allow-dhcpv6-server.xml -usr/share/libvirt/nwfilter/allow-dhcpv6.xml -usr/share/libvirt/nwfilter/allow-incoming-ipv4.xml -usr/share/libvirt/nwfilter/allow-incoming-ipv6.xml -usr/share/libvirt/nwfilter/allow-ipv4.xml -usr/share/libvirt/nwfilter/allow-ipv6.xml -usr/share/libvirt/nwfilter/clean-traffic-gateway.xml -usr/share/libvirt/nwfilter/clean-traffic.xml -usr/share/libvirt/nwfilter/no-arp-ip-spoofing.xml -usr/share/libvirt/nwfilter/no-arp-mac-spoofing.xml -usr/share/libvirt/nwfilter/no-arp-spoofing.xml -usr/share/libvirt/nwfilter/no-ip-multicast.xml -usr/share/libvirt/nwfilter/no-ip-spoofing.xml -usr/share/libvirt/nwfilter/no-ipv6-multicast.xml -usr/share/libvirt/nwfilter/no-ipv6-spoofing.xml -usr/share/libvirt/nwfilter/no-mac-broadcast.xml -usr/share/libvirt/nwfilter/no-mac-spoofing.xml -usr/share/libvirt/nwfilter/no-other-l2-traffic.xml -usr/share/libvirt/nwfilter/no-other-rarp-traffic.xml -usr/share/libvirt/nwfilter/qemu-announce-self-rarp.xml -usr/share/libvirt/nwfilter/qemu-announce-self.xml diff --git a/debian/libvirt-daemon-config-nwfilter.links b/debian/libvirt-daemon-config-nwfilter.links index 0b343ca9..13682f10 100644 --- a/debian/libvirt-daemon-config-nwfilter.links +++ b/debian/libvirt-daemon-config-nwfilter.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-config-nwfilter +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-config-nwfilter diff --git a/debian/libvirt-daemon-config-nwfilter.maintscript b/debian/libvirt-daemon-config-nwfilter.maintscript index 31b381b2..2db3557c 100644 --- a/debian/libvirt-daemon-config-nwfilter.maintscript +++ b/debian/libvirt-daemon-config-nwfilter.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-config-nwfilter libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-config-nwfilter libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-config-nwfilter.postinst b/debian/libvirt-daemon-config-nwfilter.postinst index 875980b5..1a72d80a 100644 --- a/debian/libvirt-daemon-config-nwfilter.postinst +++ b/debian/libvirt-daemon-config-nwfilter.postinst @@ -17,7 +17,7 @@ set -e create_config_from_template() { local config="$1" local template="$2" - local firstver="$3" + local lastver="$3" if [ "$4" != "--" ]; then echo "create_config_from_template called with the wrong number of arguments" >&2 @@ -27,7 +27,7 @@ create_config_from_template() { shift done - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then + if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then # The package is already configured, and the version that's been # configured is new enough to contain the config file if [ -e "$config.dpkg-backup" ]; then @@ -48,24 +48,24 @@ create_config_from_template() { return 0 fi } + finish_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "finish_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done - # If we're upgrading from a new enough version of the package, we can assume + # If we're upgrading rather than installing from scratch, we can assume # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then + if [ -n "$2" ]; then return 0 fi @@ -84,11 +84,13 @@ finish_conffile_transfer() { return 0 fi } + systemd_daemon_reload() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then systemctl --system daemon-reload >/dev/null || true fi } + systemd_unit_restart_if_active() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then for unit in "$@"; do @@ -149,7 +151,6 @@ case "$1" in for nwfilter in $NWFILTERS; do finish_conffile_transfer \ "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-daemon-system" \ "libvirt-daemon-config-nwfilter" \ diff --git a/debian/libvirt-daemon-config-nwfilter.postinst.in b/debian/libvirt-daemon-config-nwfilter.postinst.in deleted file mode 100644 index ab66b81a..00000000 --- a/debian/libvirt-daemon-config-nwfilter.postinst.in +++ /dev/null @@ -1,97 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#CREATE_CONFIG_FROM_TEMPLATE# -#FINISH_CONFFILE_TRANSFER# -#SYSTEMD_DAEMON_RELOAD# -#SYSTEMD_UNIT_RESTART_IF_ACTIVE# - -NWFILTERS=" - allow-arp - allow-dhcp - allow-dhcp-server - allow-incoming-ipv4 - allow-ipv4 - clean-traffic - clean-traffic-gateway - no-arp-ip-spoofing - no-arp-mac-spoofing - no-arp-spoofing - no-ip-multicast - no-ip-spoofing - no-mac-broadcast - no-mac-spoofing - no-other-l2-traffic - no-other-rarp-traffic - qemu-announce-self - qemu-announce-self-rarp -" -NWFILTERS_7_0_0=" - allow-dhcpv6 - allow-dhcpv6-server - allow-incoming-ipv6 - allow-ipv6 - no-ipv6-multicast - no-ipv6-spoofing -" - -case "$1" in - configure) - for nwfilter in $NWFILTERS; do - create_config_from_template \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "/usr/share/libvirt/nwfilter/$nwfilter.xml" \ - "6.9.0-2~" \ - -- \ - "$@" - done - for nwfilter in $NWFILTERS_7_0_0; do - create_config_from_template \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "/usr/share/libvirt/nwfilter/$nwfilter.xml" \ - "7.0.0-1~" \ - -- \ - "$@" - done - for nwfilter in $NWFILTERS; do - finish_conffile_transfer \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-config-nwfilter" \ - -- \ - "$@" - done - - # Since we might have changed the on-disk configuration for some - # services, restart them so that they can pick up the new settings - systemd_daemon_reload - systemd_unit_restart_if_active libvirtd.service - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-config-nwfilter.postrm b/debian/libvirt-daemon-config-nwfilter.postrm index c1990d6a..c9cb9b94 100644 --- a/debian/libvirt-daemon-config-nwfilter.postrm +++ b/debian/libvirt-daemon-config-nwfilter.postrm @@ -19,7 +19,7 @@ set -e remove_config_from_template() { local config="$1" local template="$2" - local firstver="$3" + local lastver="$3" if [ "$4" != "--" ]; then echo "remove_config_from_template called with the wrong number of arguments" >&2 @@ -43,11 +43,13 @@ remove_config_from_template() { return 0 fi } + systemd_daemon_reload() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then systemctl --system daemon-reload >/dev/null || true fi } + systemd_unit_restart_if_active() { if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then for unit in "$@"; do diff --git a/debian/libvirt-daemon-config-nwfilter.postrm.in b/debian/libvirt-daemon-config-nwfilter.postrm.in deleted file mode 100644 index e85e7c81..00000000 --- a/debian/libvirt-daemon-config-nwfilter.postrm.in +++ /dev/null @@ -1,88 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#REMOVE_CONFIG_FROM_TEMPLATE# -#SYSTEMD_DAEMON_RELOAD# -#SYSTEMD_UNIT_RESTART_IF_ACTIVE# - -NWFILTERS=" - allow-arp - allow-dhcp - allow-dhcp-server - allow-incoming-ipv4 - allow-ipv4 - clean-traffic - clean-traffic-gateway - no-arp-ip-spoofing - no-arp-mac-spoofing - no-arp-spoofing - no-ip-multicast - no-ip-spoofing - no-mac-broadcast - no-mac-spoofing - no-other-l2-traffic - no-other-rarp-traffic - qemu-announce-self - qemu-announce-self-rarp -" -NWFILTERS_7_0_0=" - allow-dhcpv6 - allow-dhcpv6-server - allow-incoming-ipv6 - allow-ipv6 - no-ipv6-multicast - no-ipv6-spoofing -" - -case "$1" in - remove|purge) - for nwfilter in $NWFILTERS; do - remove_config_from_template \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "/usr/share/libvirt/nwfilter/$nwfilter.xml" \ - "6.9.0-2~" \ - -- \ - "$@" - done - for nwfilter in $NWFILTERS_7_0_0; do - remove_config_from_template \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "/usr/share/libvirt/nwfilter/$nwfilter.xml" \ - "7.0.0-1~" \ - -- \ - "$@" - done - - # Since we might have changed the on-disk configuration for some - # services, restart them so that they can pick up the new settings - systemd_daemon_reload - systemd_unit_restart_if_active libvirtd.service - ;; - - upgrade|disappear|failed-upgrade|abort-install|abort-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-interface.install b/debian/libvirt-daemon-driver-interface.install deleted file mode 100644 index 6142e0d6..00000000 --- a/debian/libvirt-daemon-driver-interface.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_interface.so diff --git a/debian/libvirt-daemon-driver-interface.install.in b/debian/libvirt-daemon-driver-interface.install.in deleted file mode 100644 index 6142e0d6..00000000 --- a/debian/libvirt-daemon-driver-interface.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_interface.so diff --git a/debian/libvirt-daemon-driver-interface.links b/debian/libvirt-daemon-driver-interface.links deleted file mode 100644 index 950356bc..00000000 --- a/debian/libvirt-daemon-driver-interface.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-interface diff --git a/debian/libvirt-daemon-driver-lxc.dirs b/debian/libvirt-daemon-driver-lxc.dirs deleted file mode 100644 index d23b6bdf..00000000 --- a/debian/libvirt-daemon-driver-lxc.dirs +++ /dev/null @@ -1 +0,0 @@ -var/log/libvirt/lxc diff --git a/debian/libvirt-daemon-driver-lxc.install b/debian/libvirt-daemon-driver-lxc.install index cc0cbe07..7dd548d0 100644 --- a/debian/libvirt-daemon-driver-lxc.install +++ b/debian/libvirt-daemon-driver-lxc.install @@ -1,7 +1,3 @@ -etc/apparmor.d/abstractions/libvirt-lxc -etc/apparmor.d/libvirt/TEMPLATE.lxc -etc/libvirt/lxc.conf -etc/logrotate.d/libvirtd.lxc usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_lxc.so usr/lib/libvirt/libvirt_lxc usr/share/augeas/lenses/libvirtd_lxc.aug diff --git a/debian/libvirt-daemon-driver-lxc.install.in b/debian/libvirt-daemon-driver-lxc.install.in deleted file mode 100644 index cc0cbe07..00000000 --- a/debian/libvirt-daemon-driver-lxc.install.in +++ /dev/null @@ -1,8 +0,0 @@ -etc/apparmor.d/abstractions/libvirt-lxc -etc/apparmor.d/libvirt/TEMPLATE.lxc -etc/libvirt/lxc.conf -etc/logrotate.d/libvirtd.lxc -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_lxc.so -usr/lib/libvirt/libvirt_lxc -usr/share/augeas/lenses/libvirtd_lxc.aug -usr/share/augeas/lenses/tests/test_libvirtd_lxc.aug diff --git a/debian/libvirt-daemon-driver-lxc.links b/debian/libvirt-daemon-driver-lxc.links index e4efd858..64c88152 100644 --- a/debian/libvirt-daemon-driver-lxc.links +++ b/debian/libvirt-daemon-driver-lxc.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-lxc +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-lxc diff --git a/debian/libvirt-daemon-driver-lxc.maintscript b/debian/libvirt-daemon-driver-lxc.maintscript index 879d8f2c..0220eebd 100644 --- a/debian/libvirt-daemon-driver-lxc.maintscript +++ b/debian/libvirt-daemon-driver-lxc.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-lxc libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-lxc libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-lxc.postinst b/debian/libvirt-daemon-driver-lxc.postinst deleted file mode 100644 index 506fadec..00000000 --- a/debian/libvirt-daemon-driver-lxc.postinst +++ /dev/null @@ -1,111 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC=" - /etc/apparmor.d/abstractions/libvirt-lxc - /etc/apparmor.d/libvirt/TEMPLATE.lxc - /etc/libvirt/lxc.conf - /etc/logrotate.d/libvirtd.lxc -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-lxc" \ - -- \ - "$@" - done - - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - pkg="libvirt-daemon-driver-lxc" - name="libvirt-lxc" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkg" | grep -E "^ $abstraction " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$abstraction" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - # Delete the local abstraction if it's empty and the abstraction - # itself contains no customizations - if [ ! -s "$local_abstraction" ] && [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$local_abstraction" - fi - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - - # Make sure the log directory doesn't get removed on package removal - # since logrotate chokes otherwise - touch /var/log/libvirt/lxc/.placeholder - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-lxc.postinst.in b/debian/libvirt-daemon-driver-lxc.postinst.in deleted file mode 100644 index 9862fa10..00000000 --- a/debian/libvirt-daemon-driver-lxc.postinst.in +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC=" - /etc/apparmor.d/abstractions/libvirt-lxc - /etc/apparmor.d/libvirt/TEMPLATE.lxc - /etc/libvirt/lxc.conf - /etc/logrotate.d/libvirtd.lxc -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-lxc" \ - -- \ - "$@" - done - - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - pkg="libvirt-daemon-driver-lxc" - name="libvirt-lxc" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkg" | grep -E "^ $abstraction " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$abstraction" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - # Delete the local abstraction if it's empty and the abstraction - # itself contains no customizations - if [ ! -s "$local_abstraction" ] && [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$local_abstraction" - fi - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - - # Make sure the log directory doesn't get removed on package removal - # since logrotate chokes otherwise - touch /var/log/libvirt/lxc/.placeholder - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-lxc.postrm b/debian/libvirt-daemon-driver-lxc.postrm deleted file mode 100644 index c10817c0..00000000 --- a/debian/libvirt-daemon-driver-lxc.postrm +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -case "$1" in - purge) - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - name="libvirt-lxc" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - if [ ! -e "$abstraction" ]; then - rm -f "$local_abstraction" - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - fi - ;; - - remove|upgrade|disappear|failed-upgrade|abort-install|abort-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-lxc.postrm.in b/debian/libvirt-daemon-driver-lxc.postrm.in deleted file mode 100644 index c10817c0..00000000 --- a/debian/libvirt-daemon-driver-lxc.postrm.in +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -case "$1" in - purge) - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - name="libvirt-lxc" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - if [ ! -e "$abstraction" ]; then - rm -f "$local_abstraction" - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - fi - ;; - - remove|upgrade|disappear|failed-upgrade|abort-install|abort-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-network.dirs b/debian/libvirt-daemon-driver-network.dirs deleted file mode 100644 index 4ec0cc09..00000000 --- a/debian/libvirt-daemon-driver-network.dirs +++ /dev/null @@ -1,2 +0,0 @@ -etc/libvirt/qemu/networks -etc/libvirt/qemu/networks/autostart diff --git a/debian/libvirt-daemon-driver-network.install b/debian/libvirt-daemon-driver-network.install deleted file mode 100644 index 6d419f0e..00000000 --- a/debian/libvirt-daemon-driver-network.install +++ /dev/null @@ -1,10 +0,0 @@ -etc/libvirt/network.conf -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_network.so -usr/lib/firewalld/policies/libvirt-routed-in.xml -usr/lib/firewalld/policies/libvirt-routed-out.xml -usr/lib/firewalld/policies/libvirt-to-host.xml -usr/lib/firewalld/zones/libvirt-routed.xml -usr/lib/firewalld/zones/libvirt.xml -usr/lib/libvirt/libvirt_leaseshelper -usr/share/augeas/lenses/libvirtd_network.aug -usr/share/augeas/lenses/tests/test_libvirtd_network.aug diff --git a/debian/libvirt-daemon-driver-network.install.in b/debian/libvirt-daemon-driver-network.install.in deleted file mode 100644 index 6d419f0e..00000000 --- a/debian/libvirt-daemon-driver-network.install.in +++ /dev/null @@ -1,10 +0,0 @@ -etc/libvirt/network.conf -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_network.so -usr/lib/firewalld/policies/libvirt-routed-in.xml -usr/lib/firewalld/policies/libvirt-routed-out.xml -usr/lib/firewalld/policies/libvirt-to-host.xml -usr/lib/firewalld/zones/libvirt-routed.xml -usr/lib/firewalld/zones/libvirt.xml -usr/lib/libvirt/libvirt_leaseshelper -usr/share/augeas/lenses/libvirtd_network.aug -usr/share/augeas/lenses/tests/test_libvirtd_network.aug diff --git a/debian/libvirt-daemon-driver-network.links b/debian/libvirt-daemon-driver-network.links deleted file mode 100644 index 2912da70..00000000 --- a/debian/libvirt-daemon-driver-network.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-network diff --git a/debian/libvirt-daemon-driver-network.postinst b/debian/libvirt-daemon-driver-network.postinst deleted file mode 100644 index 688e11b0..00000000 --- a/debian/libvirt-daemon-driver-network.postinst +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK=" - /etc/libvirt/network.conf -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK; do - finish_conffile_transfer \ - "$conf" \ - "10.4.0-1~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-network" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-network.postinst.in b/debian/libvirt-daemon-driver-network.postinst.in deleted file mode 100644 index dd00d4d5..00000000 --- a/debian/libvirt-daemon-driver-network.postinst.in +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK=" - /etc/libvirt/network.conf -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK; do - finish_conffile_transfer \ - "$conf" \ - "10.4.0-1~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-network" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-nodedev.install b/debian/libvirt-daemon-driver-nodedev.install deleted file mode 100644 index 2674b050..00000000 --- a/debian/libvirt-daemon-driver-nodedev.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_nodedev.so diff --git a/debian/libvirt-daemon-driver-nodedev.install.in b/debian/libvirt-daemon-driver-nodedev.install.in deleted file mode 100644 index 2674b050..00000000 --- a/debian/libvirt-daemon-driver-nodedev.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_nodedev.so diff --git a/debian/libvirt-daemon-driver-nodedev.links b/debian/libvirt-daemon-driver-nodedev.links deleted file mode 100644 index 1770bd5a..00000000 --- a/debian/libvirt-daemon-driver-nodedev.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-nodedev diff --git a/debian/libvirt-daemon-driver-nwfilter.dirs b/debian/libvirt-daemon-driver-nwfilter.dirs deleted file mode 100644 index 06296ceb..00000000 --- a/debian/libvirt-daemon-driver-nwfilter.dirs +++ /dev/null @@ -1 +0,0 @@ -etc/libvirt/nwfilter diff --git a/debian/libvirt-daemon-driver-nwfilter.install b/debian/libvirt-daemon-driver-nwfilter.install deleted file mode 100644 index 1bf0e5ce..00000000 --- a/debian/libvirt-daemon-driver-nwfilter.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_nwfilter.so diff --git a/debian/libvirt-daemon-driver-nwfilter.install.in b/debian/libvirt-daemon-driver-nwfilter.install.in deleted file mode 100644 index 1bf0e5ce..00000000 --- a/debian/libvirt-daemon-driver-nwfilter.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_nwfilter.so diff --git a/debian/libvirt-daemon-driver-nwfilter.links b/debian/libvirt-daemon-driver-nwfilter.links deleted file mode 100644 index 9163648d..00000000 --- a/debian/libvirt-daemon-driver-nwfilter.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-nwfilter diff --git a/debian/libvirt-daemon-driver-qemu.config b/debian/libvirt-daemon-driver-qemu.config deleted file mode 100644 index e235c5e4..00000000 --- a/debian/libvirt-daemon-driver-qemu.config +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh -e - -# Only perform this check/warning if the libvirt user groups aren't there -# already -if getent passwd libvirt-qemu >/dev/null \ -&& getent group libvirt-qemu >/dev/null; then - exit 0 -fi - -# Source debconf library. -. /usr/share/debconf/confmodule - -# Allocated UID and GID for libvirt-qemu -LIBVIRT_QEMU_UID=64055 -LIBVIRT_QEMU_GID=64055 - -# Check if allocated UID/GID are assigned to a different user/group. -UID_TO_NAME="$(getent passwd $LIBVIRT_QEMU_UID | cut -d: -f1)" -GID_TO_NAME="$(getent group $LIBVIRT_QEMU_GID | cut -d: -f1)" - -if ( [ -n "$UID_TO_NAME" ] && [ "$UID_TO_NAME" != 'libvirt-qemu' ] ) \ -|| ( [ -n "$GID_TO_NAME" ] && [ "$GID_TO_NAME" != 'libvirt-qemu' ] ) \ -then - # Ask if the user would like to continue or abort installation. - db_input high libvirt-daemon-driver-qemu/id_warning || true - db_go - db_get libvirt-daemon-driver-qemu/id_warning - if [ "$RET" = "false" ]; then - exit 1 - fi -fi - -db_stop -exit 0 diff --git a/debian/libvirt-daemon-driver-qemu.dirs b/debian/libvirt-daemon-driver-qemu.dirs deleted file mode 100644 index 559cacce..00000000 --- a/debian/libvirt-daemon-driver-qemu.dirs +++ /dev/null @@ -1,4 +0,0 @@ -etc/libvirt/qemu -var/cache/libvirt/qemu -var/lib/libvirt/qemu -var/log/libvirt/qemu diff --git a/debian/libvirt-daemon-driver-qemu.install b/debian/libvirt-daemon-driver-qemu.install index 81d96065..4387f819 100644 --- a/debian/libvirt-daemon-driver-qemu.install +++ b/debian/libvirt-daemon-driver-qemu.install @@ -1,9 +1,3 @@ -etc/apparmor.d/abstractions/libvirt-qemu -etc/apparmor.d/libvirt/TEMPLATE.qemu -etc/libvirt/qemu-lockd.conf -etc/libvirt/qemu-sanlock.conf -etc/libvirt/qemu.conf -etc/logrotate.d/libvirtd.qemu usr/bin/virt-qemu-run usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_qemu.so usr/share/augeas/lenses/libvirtd_qemu.aug diff --git a/debian/libvirt-daemon-driver-qemu.install.in b/debian/libvirt-daemon-driver-qemu.install.in deleted file mode 100644 index 81d96065..00000000 --- a/debian/libvirt-daemon-driver-qemu.install.in +++ /dev/null @@ -1,11 +0,0 @@ -etc/apparmor.d/abstractions/libvirt-qemu -etc/apparmor.d/libvirt/TEMPLATE.qemu -etc/libvirt/qemu-lockd.conf -etc/libvirt/qemu-sanlock.conf -etc/libvirt/qemu.conf -etc/logrotate.d/libvirtd.qemu -usr/bin/virt-qemu-run -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_qemu.so -usr/share/augeas/lenses/libvirtd_qemu.aug -usr/share/augeas/lenses/tests/test_libvirtd_qemu.aug -usr/share/man/man1/virt-qemu-run.1 diff --git a/debian/libvirt-daemon-driver-qemu.links b/debian/libvirt-daemon-driver-qemu.links index 94a2f5e9..a6d81aa0 100644 --- a/debian/libvirt-daemon-driver-qemu.links +++ b/debian/libvirt-daemon-driver-qemu.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-qemu +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-qemu diff --git a/debian/libvirt-daemon-driver-qemu.maintscript b/debian/libvirt-daemon-driver-qemu.maintscript index ce6e4f49..4e3704c4 100644 --- a/debian/libvirt-daemon-driver-qemu.maintscript +++ b/debian/libvirt-daemon-driver-qemu.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-qemu libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-qemu libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-qemu.postinst b/debian/libvirt-daemon-driver-qemu.postinst deleted file mode 100644 index 3b661f8c..00000000 --- a/debian/libvirt-daemon-driver-qemu.postinst +++ /dev/null @@ -1,206 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -. /usr/share/debconf/confmodule - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} - -# Allocated UID and GID for libvirt-qemu -LIBVIRT_QEMU_UID=64055 -LIBVIRT_QEMU_GID=64055 - -add_users_groups() -{ - if ! getent group kvm >/dev/null; then - addgroup --quiet --system kvm - fi - # user and group libvirt runs qemu/kvm instances with - if ! getent passwd libvirt-qemu >/dev/null; then - - # set uid if available (expected); don't fail otherwise. - PARAMETER_UID='' - if ! getent passwd $LIBVIRT_QEMU_UID >/dev/null; then - PARAMETER_UID="--uid $LIBVIRT_QEMU_UID" - fi - - adduser --quiet \ - --system \ - --ingroup kvm \ - --quiet \ - --disabled-login \ - --disabled-password \ - --home /var/lib/libvirt \ - --no-create-home \ - --gecos "Libvirt Qemu" \ - $PARAMETER_UID \ - libvirt-qemu - fi - if ! getent group libvirt-qemu >/dev/null; then - - # set gid if available (expected); don't fail otherwise. - PARAMETER_GID='' - if ! getent group $LIBVIRT_QEMU_GID >/dev/null; then - PARAMETER_GID="--gid $LIBVIRT_QEMU_GID" - fi - - addgroup --quiet --system $PARAMETER_GID libvirt-qemu - adduser --quiet libvirt-qemu libvirt-qemu - fi -} - -add_statoverrides() -{ - ROOT_DIRS=" - /var/cache/libvirt/qemu/ - " - - QEMU_DIRS=" - /var/lib/libvirt/qemu/ - " - - QEMU_CONF="/etc/libvirt/qemu.conf" - - for dir in ${ROOT_DIRS}; do - if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then - [ ! -e "${dir}" ] || chown root:root "${dir}" - [ ! -e "${dir}" ] || chmod 0711 "${dir}" - fi - done - - for dir in ${QEMU_DIRS}; do - if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then - [ ! -e "${dir}" ] || chown libvirt-qemu:libvirt-qemu "${dir}" - [ ! -e "${dir}" ] || chmod 0750 "${dir}" - fi - done - - if ! dpkg-statoverride --list "${QEMU_CONF}" >/dev/null 2>&1; then - [ ! -e "${QEMU_CONF}" ] || chown root:root "${QEMU_CONF}" - [ ! -e "${QEMU_CONF}" ] || chmod 0600 "${QEMU_CONF}" - fi -} - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU=" - /etc/apparmor.d/abstractions/libvirt-qemu - /etc/apparmor.d/libvirt/TEMPLATE.qemu - /etc/libvirt/qemu-lockd.conf - /etc/libvirt/qemu-sanlock.conf - /etc/libvirt/qemu.conf - /etc/logrotate.d/libvirtd.qemu -" - -case "$1" in - configure) - add_users_groups - add_statoverrides - - # Make sure the log directory doesn't get removed on package removal - # since logrotate chokes otherwise - touch /var/log/libvirt/qemu/.placeholder - - # Directories used for channels until 9.7.0-1 - if [ -d /var/lib/libvirt/qemu/channel/target ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel/target - fi - if [ -d /var/lib/libvirt/qemu/channel ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel - fi - - # Force refresh of capabilities (#731815) - rm -f /var/cache/libvirt/qemu/capabilities/*.xml - - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-qemu" \ - -- \ - "$@" - done - - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - pkg="libvirt-daemon-driver-qemu" - name="libvirt-qemu" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkg" | grep -E "^ $abstraction " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$abstraction" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - # Delete the local abstraction if it's empty and the abstraction - # itself contains no customizations - if [ ! -s "$local_abstraction" ] && [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$local_abstraction" - fi - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -db_stop - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-qemu.postinst.in b/debian/libvirt-daemon-driver-qemu.postinst.in deleted file mode 100644 index dbc965e3..00000000 --- a/debian/libvirt-daemon-driver-qemu.postinst.in +++ /dev/null @@ -1,171 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -. /usr/share/debconf/confmodule - -#FINISH_CONFFILE_TRANSFER# - -# Allocated UID and GID for libvirt-qemu -LIBVIRT_QEMU_UID=64055 -LIBVIRT_QEMU_GID=64055 - -add_users_groups() -{ - if ! getent group kvm >/dev/null; then - addgroup --quiet --system kvm - fi - # user and group libvirt runs qemu/kvm instances with - if ! getent passwd libvirt-qemu >/dev/null; then - - # set uid if available (expected); don't fail otherwise. - PARAMETER_UID='' - if ! getent passwd $LIBVIRT_QEMU_UID >/dev/null; then - PARAMETER_UID="--uid $LIBVIRT_QEMU_UID" - fi - - adduser --quiet \ - --system \ - --ingroup kvm \ - --quiet \ - --disabled-login \ - --disabled-password \ - --home /var/lib/libvirt \ - --no-create-home \ - --gecos "Libvirt Qemu" \ - $PARAMETER_UID \ - libvirt-qemu - fi - if ! getent group libvirt-qemu >/dev/null; then - - # set gid if available (expected); don't fail otherwise. - PARAMETER_GID='' - if ! getent group $LIBVIRT_QEMU_GID >/dev/null; then - PARAMETER_GID="--gid $LIBVIRT_QEMU_GID" - fi - - addgroup --quiet --system $PARAMETER_GID libvirt-qemu - adduser --quiet libvirt-qemu libvirt-qemu - fi -} - -add_statoverrides() -{ - ROOT_DIRS=" - /var/cache/libvirt/qemu/ - " - - QEMU_DIRS=" - /var/lib/libvirt/qemu/ - " - - QEMU_CONF="/etc/libvirt/qemu.conf" - - for dir in ${ROOT_DIRS}; do - if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then - [ ! -e "${dir}" ] || chown root:root "${dir}" - [ ! -e "${dir}" ] || chmod 0711 "${dir}" - fi - done - - for dir in ${QEMU_DIRS}; do - if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then - [ ! -e "${dir}" ] || chown libvirt-qemu:libvirt-qemu "${dir}" - [ ! -e "${dir}" ] || chmod 0750 "${dir}" - fi - done - - if ! dpkg-statoverride --list "${QEMU_CONF}" >/dev/null 2>&1; then - [ ! -e "${QEMU_CONF}" ] || chown root:root "${QEMU_CONF}" - [ ! -e "${QEMU_CONF}" ] || chmod 0600 "${QEMU_CONF}" - fi -} - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU=" - /etc/apparmor.d/abstractions/libvirt-qemu - /etc/apparmor.d/libvirt/TEMPLATE.qemu - /etc/libvirt/qemu-lockd.conf - /etc/libvirt/qemu-sanlock.conf - /etc/libvirt/qemu.conf - /etc/logrotate.d/libvirtd.qemu -" - -case "$1" in - configure) - add_users_groups - add_statoverrides - - # Make sure the log directory doesn't get removed on package removal - # since logrotate chokes otherwise - touch /var/log/libvirt/qemu/.placeholder - - # Directories used for channels until 9.7.0-1 - if [ -d /var/lib/libvirt/qemu/channel/target ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel/target - fi - if [ -d /var/lib/libvirt/qemu/channel ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel - fi - - # Force refresh of capabilities (#731815) - rm -f /var/cache/libvirt/qemu/capabilities/*.xml - - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-qemu" \ - -- \ - "$@" - done - - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - pkg="libvirt-daemon-driver-qemu" - name="libvirt-qemu" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkg" | grep -E "^ $abstraction " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$abstraction" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - # Delete the local abstraction if it's empty and the abstraction - # itself contains no customizations - if [ ! -s "$local_abstraction" ] && [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$local_abstraction" - fi - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -db_stop - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-qemu.postrm b/debian/libvirt-daemon-driver-qemu.postrm deleted file mode 100644 index 35d6e931..00000000 --- a/debian/libvirt-daemon-driver-qemu.postrm +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -case "$1" in - purge) - if getent passwd libvirt-qemu >/dev/null; then - deluser libvirt-qemu >/dev/null || true - fi - - if getent group libvirt-qemu >/dev/null; then - delgroup libvirt-qemu >/dev/null || true - fi - - # Clean up cached capabilities - rm -rf /var/cache/libvirt/qemu/capabilities - - # Clean up obsolete runtime data - rm -rf /var/lib/libvirt/qemu/channel/target/domain-* - if [ -d /var/lib/libvirt/qemu/channel/target ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel/target - fi - if [ -d /var/lib/libvirt/qemu/channel ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel - fi - - # Clean up created dirs if existent and empty, they contain precious - # data otherwise - for dir in /var/lib/libvirt/qemu/save \ - /var/lib/libvirt/qemu/snapshot \ - /var/lib/libvirt/qemu/dump \ - /var/lib/libvirt/qemu/nvram \ - /var/lib/libvirt/qemu/ram/libvirt/qemu \ - /var/lib/libvirt/qemu/ram/libvirt \ - /var/lib/libvirt/qemu/ram \ - /var/lib/libvirt/qemu \ - /var/cache/libvirt/qemu; do - [ ! -d $dir ] || rmdir --ignore-fail-on-non-empty $dir - done - - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - name="libvirt-qemu" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - if [ ! -e "$abstraction" ]; then - rm -f "$local_abstraction" - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - fi - ;; - - remove|upgrade|disappear|failed-upgrade|abort-install|abort-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-qemu.postrm.in b/debian/libvirt-daemon-driver-qemu.postrm.in deleted file mode 100644 index 35d6e931..00000000 --- a/debian/libvirt-daemon-driver-qemu.postrm.in +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -case "$1" in - purge) - if getent passwd libvirt-qemu >/dev/null; then - deluser libvirt-qemu >/dev/null || true - fi - - if getent group libvirt-qemu >/dev/null; then - delgroup libvirt-qemu >/dev/null || true - fi - - # Clean up cached capabilities - rm -rf /var/cache/libvirt/qemu/capabilities - - # Clean up obsolete runtime data - rm -rf /var/lib/libvirt/qemu/channel/target/domain-* - if [ -d /var/lib/libvirt/qemu/channel/target ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel/target - fi - if [ -d /var/lib/libvirt/qemu/channel ]; then - rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel - fi - - # Clean up created dirs if existent and empty, they contain precious - # data otherwise - for dir in /var/lib/libvirt/qemu/save \ - /var/lib/libvirt/qemu/snapshot \ - /var/lib/libvirt/qemu/dump \ - /var/lib/libvirt/qemu/nvram \ - /var/lib/libvirt/qemu/ram/libvirt/qemu \ - /var/lib/libvirt/qemu/ram/libvirt \ - /var/lib/libvirt/qemu/ram \ - /var/lib/libvirt/qemu \ - /var/cache/libvirt/qemu; do - [ ! -d $dir ] || rmdir --ignore-fail-on-non-empty $dir - done - - # Obsolete AppArmor stuff included until 9.6.0-1 - ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" - LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" - name="libvirt-qemu" - - abstraction="$ABSTRACTIONS_DIR/$name" - local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" - - if [ ! -e "$abstraction" ]; then - rm -f "$local_abstraction" - if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then - rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" - fi - fi - ;; - - remove|upgrade|disappear|failed-upgrade|abort-install|abort-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-qemu.templates b/debian/libvirt-daemon-driver-qemu.templates deleted file mode 100644 index 0c079f3c..00000000 --- a/debian/libvirt-daemon-driver-qemu.templates +++ /dev/null @@ -1,18 +0,0 @@ -Template: libvirt-daemon-driver-qemu/id_warning -Type: boolean -Default: true -_Description: Continue with incorrect libvirt-qemu user/group ID(s)? - The user/group ID (uid/gid) allocated for libvirt-qemu (64055) - seems to be taken by another user/group, thus it is not possible - to create the user/group with this numeric ID. - . - The migration of guests with disk image files shared over NFS - requires a static libvirt-qemu user and group ID (uid and gid) - between the source and destination host systems. - . - If guest migration over NFS is not required, you can continue - the installation. - . - In order to resolve this problem, do not continue the installation, - release the 64055 uid/gid (which might involve permission changes), - then install this package again. diff --git a/debian/libvirt-daemon-driver-secret.install b/debian/libvirt-daemon-driver-secret.install deleted file mode 100644 index 41e01051..00000000 --- a/debian/libvirt-daemon-driver-secret.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_secret.so diff --git a/debian/libvirt-daemon-driver-secret.install.in b/debian/libvirt-daemon-driver-secret.install.in deleted file mode 100644 index 41e01051..00000000 --- a/debian/libvirt-daemon-driver-secret.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_secret.so diff --git a/debian/libvirt-daemon-driver-secret.links b/debian/libvirt-daemon-driver-secret.links deleted file mode 100644 index d8aa7c4b..00000000 --- a/debian/libvirt-daemon-driver-secret.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-secret diff --git a/debian/libvirt-daemon-driver-storage-disk.install b/debian/libvirt-daemon-driver-storage-disk.install deleted file mode 100644 index b9641d9d..00000000 --- a/debian/libvirt-daemon-driver-storage-disk.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_disk.so diff --git a/debian/libvirt-daemon-driver-storage-disk.install.in b/debian/libvirt-daemon-driver-storage-disk.install.in deleted file mode 100644 index b9641d9d..00000000 --- a/debian/libvirt-daemon-driver-storage-disk.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_disk.so diff --git a/debian/libvirt-daemon-driver-storage-disk.links b/debian/libvirt-daemon-driver-storage-disk.links deleted file mode 100644 index cede5611..00000000 --- a/debian/libvirt-daemon-driver-storage-disk.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-disk diff --git a/debian/libvirt-daemon-driver-storage-gluster.install.in b/debian/libvirt-daemon-driver-storage-gluster.install.in deleted file mode 100644 index c15e2808..00000000 --- a/debian/libvirt-daemon-driver-storage-gluster.install.in +++ /dev/null @@ -1,2 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_gluster.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-file/libvirt_storage_file_gluster.so diff --git a/debian/libvirt-daemon-driver-storage-gluster.links b/debian/libvirt-daemon-driver-storage-gluster.links index d3129d6d..131f282a 100644 --- a/debian/libvirt-daemon-driver-storage-gluster.links +++ b/debian/libvirt-daemon-driver-storage-gluster.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-gluster +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-storage-gluster diff --git a/debian/libvirt-daemon-driver-storage-gluster.maintscript b/debian/libvirt-daemon-driver-storage-gluster.maintscript index 395f3709..99fe1900 100644 --- a/debian/libvirt-daemon-driver-storage-gluster.maintscript +++ b/debian/libvirt-daemon-driver-storage-gluster.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-gluster libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-gluster libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-storage-iscsi-direct.install.in b/debian/libvirt-daemon-driver-storage-iscsi-direct.install.in deleted file mode 100644 index 585c9273..00000000 --- a/debian/libvirt-daemon-driver-storage-iscsi-direct.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_iscsi-direct.so diff --git a/debian/libvirt-daemon-driver-storage-iscsi-direct.links b/debian/libvirt-daemon-driver-storage-iscsi-direct.links index 665c9ac1..29ecd608 100644 --- a/debian/libvirt-daemon-driver-storage-iscsi-direct.links +++ b/debian/libvirt-daemon-driver-storage-iscsi-direct.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-iscsi-direct +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-storage-iscsi-direct diff --git a/debian/libvirt-daemon-driver-storage-iscsi-direct.maintscript b/debian/libvirt-daemon-driver-storage-iscsi-direct.maintscript index ffa80e39..e9b22f83 100644 --- a/debian/libvirt-daemon-driver-storage-iscsi-direct.maintscript +++ b/debian/libvirt-daemon-driver-storage-iscsi-direct.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-iscsi-direct libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-iscsi-direct libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-storage-iscsi.install b/debian/libvirt-daemon-driver-storage-iscsi.install deleted file mode 100644 index 68fa1a16..00000000 --- a/debian/libvirt-daemon-driver-storage-iscsi.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so diff --git a/debian/libvirt-daemon-driver-storage-iscsi.install.in b/debian/libvirt-daemon-driver-storage-iscsi.install.in deleted file mode 100644 index 68fa1a16..00000000 --- a/debian/libvirt-daemon-driver-storage-iscsi.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so diff --git a/debian/libvirt-daemon-driver-storage-iscsi.links b/debian/libvirt-daemon-driver-storage-iscsi.links deleted file mode 100644 index f43553c4..00000000 --- a/debian/libvirt-daemon-driver-storage-iscsi.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-iscsi diff --git a/debian/libvirt-daemon-driver-storage-logical.install b/debian/libvirt-daemon-driver-storage-logical.install deleted file mode 100644 index 14e22a89..00000000 --- a/debian/libvirt-daemon-driver-storage-logical.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_logical.so diff --git a/debian/libvirt-daemon-driver-storage-logical.install.in b/debian/libvirt-daemon-driver-storage-logical.install.in deleted file mode 100644 index 14e22a89..00000000 --- a/debian/libvirt-daemon-driver-storage-logical.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_logical.so diff --git a/debian/libvirt-daemon-driver-storage-logical.links b/debian/libvirt-daemon-driver-storage-logical.links deleted file mode 100644 index 2efa80ff..00000000 --- a/debian/libvirt-daemon-driver-storage-logical.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-logical diff --git a/debian/libvirt-daemon-driver-storage-mpath.install b/debian/libvirt-daemon-driver-storage-mpath.install deleted file mode 100644 index a6e0b3fa..00000000 --- a/debian/libvirt-daemon-driver-storage-mpath.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_mpath.so diff --git a/debian/libvirt-daemon-driver-storage-mpath.install.in b/debian/libvirt-daemon-driver-storage-mpath.install.in deleted file mode 100644 index a6e0b3fa..00000000 --- a/debian/libvirt-daemon-driver-storage-mpath.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_mpath.so diff --git a/debian/libvirt-daemon-driver-storage-mpath.links b/debian/libvirt-daemon-driver-storage-mpath.links deleted file mode 100644 index 3b914c5a..00000000 --- a/debian/libvirt-daemon-driver-storage-mpath.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-mpath diff --git a/debian/libvirt-daemon-driver-storage-rbd.install.in b/debian/libvirt-daemon-driver-storage-rbd.install.in deleted file mode 100644 index 363a73f7..00000000 --- a/debian/libvirt-daemon-driver-storage-rbd.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_rbd.so diff --git a/debian/libvirt-daemon-driver-storage-rbd.links b/debian/libvirt-daemon-driver-storage-rbd.links index 04e07e7b..794bce81 100644 --- a/debian/libvirt-daemon-driver-storage-rbd.links +++ b/debian/libvirt-daemon-driver-storage-rbd.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-rbd +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-storage-rbd diff --git a/debian/libvirt-daemon-driver-storage-rbd.maintscript b/debian/libvirt-daemon-driver-storage-rbd.maintscript index d6d7e47e..49fd88e7 100644 --- a/debian/libvirt-daemon-driver-storage-rbd.maintscript +++ b/debian/libvirt-daemon-driver-storage-rbd.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-rbd libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-rbd libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-storage-scsi.install b/debian/libvirt-daemon-driver-storage-scsi.install deleted file mode 100644 index 7ab64fc7..00000000 --- a/debian/libvirt-daemon-driver-storage-scsi.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_scsi.so diff --git a/debian/libvirt-daemon-driver-storage-scsi.install.in b/debian/libvirt-daemon-driver-storage-scsi.install.in deleted file mode 100644 index 7ab64fc7..00000000 --- a/debian/libvirt-daemon-driver-storage-scsi.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_scsi.so diff --git a/debian/libvirt-daemon-driver-storage-scsi.links b/debian/libvirt-daemon-driver-storage-scsi.links deleted file mode 100644 index ed50f413..00000000 --- a/debian/libvirt-daemon-driver-storage-scsi.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-scsi diff --git a/debian/libvirt-daemon-driver-storage-zfs.install.in b/debian/libvirt-daemon-driver-storage-zfs.install.in deleted file mode 100644 index 60aa29c6..00000000 --- a/debian/libvirt-daemon-driver-storage-zfs.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_zfs.so diff --git a/debian/libvirt-daemon-driver-storage-zfs.links b/debian/libvirt-daemon-driver-storage-zfs.links index 58fe3fda..f2761fa4 100644 --- a/debian/libvirt-daemon-driver-storage-zfs.links +++ b/debian/libvirt-daemon-driver-storage-zfs.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage-zfs +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-storage-zfs diff --git a/debian/libvirt-daemon-driver-storage-zfs.maintscript b/debian/libvirt-daemon-driver-storage-zfs.maintscript index 14b42555..2806226f 100644 --- a/debian/libvirt-daemon-driver-storage-zfs.maintscript +++ b/debian/libvirt-daemon-driver-storage-zfs.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-zfs libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-storage-zfs libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-storage.install b/debian/libvirt-daemon-driver-storage.install deleted file mode 100644 index 42bdf68b..00000000 --- a/debian/libvirt-daemon-driver-storage.install +++ /dev/null @@ -1,4 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_storage.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_fs.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-file/libvirt_storage_file_fs.so -usr/lib/libvirt/libvirt_parthelper diff --git a/debian/libvirt-daemon-driver-storage.install.in b/debian/libvirt-daemon-driver-storage.install.in deleted file mode 100644 index 42bdf68b..00000000 --- a/debian/libvirt-daemon-driver-storage.install.in +++ /dev/null @@ -1,4 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_storage.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_fs.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-file/libvirt_storage_file_fs.so -usr/lib/libvirt/libvirt_parthelper diff --git a/debian/libvirt-daemon-driver-storage.links b/debian/libvirt-daemon-driver-storage.links deleted file mode 100644 index 2609d9f2..00000000 --- a/debian/libvirt-daemon-driver-storage.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-storage diff --git a/debian/libvirt-daemon-driver-vbox.install.in b/debian/libvirt-daemon-driver-vbox.install.in deleted file mode 100644 index 415033ba..00000000 --- a/debian/libvirt-daemon-driver-vbox.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_vbox.so diff --git a/debian/libvirt-daemon-driver-vbox.links b/debian/libvirt-daemon-driver-vbox.links index fcbdacd5..a3fa2c3e 100644 --- a/debian/libvirt-daemon-driver-vbox.links +++ b/debian/libvirt-daemon-driver-vbox.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-vbox +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-vbox diff --git a/debian/libvirt-daemon-driver-vbox.maintscript b/debian/libvirt-daemon-driver-vbox.maintscript index e58c508d..142fc5b5 100644 --- a/debian/libvirt-daemon-driver-vbox.maintscript +++ b/debian/libvirt-daemon-driver-vbox.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-vbox libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-vbox libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-xen.install b/debian/libvirt-daemon-driver-xen.install index 86c425bf..4dc9d7c0 100644 --- a/debian/libvirt-daemon-driver-xen.install +++ b/debian/libvirt-daemon-driver-xen.install @@ -1,7 +1,3 @@ -etc/libvirt/libxl-lockd.conf -etc/libvirt/libxl-sanlock.conf -etc/libvirt/libxl.conf -etc/logrotate.d/libvirtd.libxl usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_libxl.so usr/share/augeas/lenses/libvirtd_libxl.aug usr/share/augeas/lenses/tests/test_libvirtd_libxl.aug diff --git a/debian/libvirt-daemon-driver-xen.install.in b/debian/libvirt-daemon-driver-xen.install.in deleted file mode 100644 index 86c425bf..00000000 --- a/debian/libvirt-daemon-driver-xen.install.in +++ /dev/null @@ -1,7 +0,0 @@ -etc/libvirt/libxl-lockd.conf -etc/libvirt/libxl-sanlock.conf -etc/libvirt/libxl.conf -etc/logrotate.d/libvirtd.libxl -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_libxl.so -usr/share/augeas/lenses/libvirtd_libxl.aug -usr/share/augeas/lenses/tests/test_libvirtd_libxl.aug diff --git a/debian/libvirt-daemon-driver-xen.links b/debian/libvirt-daemon-driver-xen.links index d4ed2eb3..a647b348 100644 --- a/debian/libvirt-daemon-driver-xen.links +++ b/debian/libvirt-daemon-driver-xen.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-driver-xen +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-driver-xen diff --git a/debian/libvirt-daemon-driver-xen.maintscript b/debian/libvirt-daemon-driver-xen.maintscript index 438efedf..0175714d 100644 --- a/debian/libvirt-daemon-driver-xen.maintscript +++ b/debian/libvirt-daemon-driver-xen.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-driver-xen libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-driver-xen libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-driver-xen.postinst b/debian/libvirt-daemon-driver-xen.postinst deleted file mode 100644 index de9d1fc1..00000000 --- a/debian/libvirt-daemon-driver-xen.postinst +++ /dev/null @@ -1,86 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN=" - /etc/libvirt/libxl-lockd.conf - /etc/libvirt/libxl-sanlock.conf - /etc/libvirt/libxl.conf - /etc/logrotate.d/libvirtd.libxl -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-xen" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-driver-xen.postinst.in b/debian/libvirt-daemon-driver-xen.postinst.in deleted file mode 100644 index 99cca3b3..00000000 --- a/debian/libvirt-daemon-driver-xen.postinst.in +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# - -DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN=" - /etc/libvirt/libxl-lockd.conf - /etc/libvirt/libxl-sanlock.conf - /etc/libvirt/libxl.conf - /etc/logrotate.d/libvirtd.libxl -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-xen" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-lock.install b/debian/libvirt-daemon-lock.install deleted file mode 100644 index 382c7cb9..00000000 --- a/debian/libvirt-daemon-lock.install +++ /dev/null @@ -1,10 +0,0 @@ -etc/libvirt/virtlockd.conf -usr/lib/systemd/system/virtlockd-admin.socket -usr/lib/systemd/system/virtlockd.service -usr/lib/systemd/system/virtlockd.socket -usr/sbin/virtlockd -usr/share/augeas/lenses/libvirt_lockd.aug -usr/share/augeas/lenses/tests/test_libvirt_lockd.aug -usr/share/augeas/lenses/tests/test_virtlockd.aug -usr/share/augeas/lenses/virtlockd.aug -usr/share/man/man8/virtlockd.8 diff --git a/debian/libvirt-daemon-lock.install.in b/debian/libvirt-daemon-lock.install.in deleted file mode 100644 index 2895f27b..00000000 --- a/debian/libvirt-daemon-lock.install.in +++ /dev/null @@ -1,10 +0,0 @@ -etc/libvirt/virtlockd.conf -usr/lib/systemd/system/virtlockd-admin.socket -usr/lib/systemd/system/virtlockd.service -usr/lib/systemd/system/virtlockd.socket -usr/sbin/virtlockd -usr/share/augeas/lenses/libvirt_lockd.aug -[${ARCHES_QEMU}] usr/share/augeas/lenses/tests/test_libvirt_lockd.aug -usr/share/augeas/lenses/tests/test_virtlockd.aug -usr/share/augeas/lenses/virtlockd.aug -usr/share/man/man8/virtlockd.8 diff --git a/debian/libvirt-daemon-lock.links b/debian/libvirt-daemon-lock.links deleted file mode 100644 index 87644cba..00000000 --- a/debian/libvirt-daemon-lock.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-lock diff --git a/debian/libvirt-daemon-lock.lintian-overrides b/debian/libvirt-daemon-lock.lintian-overrides deleted file mode 100644 index c848c7db..00000000 --- a/debian/libvirt-daemon-lock.lintian-overrides +++ /dev/null @@ -1,2 +0,0 @@ -# Versioned conflicts are needed for DEP17 M7 -libvirt-daemon-lock: conflicts-with-version libvirt-daemon-system * diff --git a/debian/libvirt-daemon-lock.postinst b/debian/libvirt-daemon-lock.postinst deleted file mode 100644 index fa040353..00000000 --- a/debian/libvirt-daemon-lock.postinst +++ /dev/null @@ -1,120 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_SYSTEM_TO_DAEMON_LOCK=" - /etc/default/virtlockd - /etc/libvirt/virtlockd.conf -" - -DAEMON_LOCK_UNITS=" - virtlockd-admin.socket - virtlockd.service - virtlockd.socket -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOCK; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-lock" \ - -- \ - "$@" - done - - for unit in $DAEMON_LOCK_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-lock.postinst.in b/debian/libvirt-daemon-lock.postinst.in deleted file mode 100644 index c7f28500..00000000 --- a/debian/libvirt-daemon-lock.postinst.in +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_SYSTEM_TO_DAEMON_LOCK=" - /etc/default/virtlockd - /etc/libvirt/virtlockd.conf -" - -DAEMON_LOCK_UNITS=" - virtlockd-admin.socket - virtlockd.service - virtlockd.socket -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOCK; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-lock" \ - -- \ - "$@" - done - - for unit in $DAEMON_LOCK_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-lock.postrm b/debian/libvirt-daemon-lock.postrm deleted file mode 100644 index 190ce7cb..00000000 --- a/debian/libvirt-daemon-lock.postrm +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_LOCK_UNITS=" - virtlockd-admin.socket - virtlockd.service - virtlockd.socket -" - -case "$1" in - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_LOCK_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-lock.postrm.in b/debian/libvirt-daemon-lock.postrm.in deleted file mode 100644 index 9b56ead6..00000000 --- a/debian/libvirt-daemon-lock.postrm.in +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_LOCK_UNITS=" - virtlockd-admin.socket - virtlockd.service - virtlockd.socket -" - -case "$1" in - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_LOCK_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-lock.preinst b/debian/libvirt-daemon-lock.preinst deleted file mode 100644 index 7442acf7..00000000 --- a/debian/libvirt-daemon-lock.preinst +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -create_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "create_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If we're upgrading from a new enough version of the package, it means - # that usr-merge has already happened and we don't need to mess with - # diversions at all - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --add "$usrfile" -} - -DAEMON_LOCK_UNITS=" - virtlockd-admin.socket - virtlockd.service - virtlockd.socket -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_LOCK_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-lock.preinst.in b/debian/libvirt-daemon-lock.preinst.in deleted file mode 100644 index 9ce55117..00000000 --- a/debian/libvirt-daemon-lock.preinst.in +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#CREATE_PROTECTIVE_DIVERSION# - -DAEMON_LOCK_UNITS=" - virtlockd-admin.socket - virtlockd.service - virtlockd.socket -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_LOCK_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.install b/debian/libvirt-daemon-log.install deleted file mode 100644 index 362e761e..00000000 --- a/debian/libvirt-daemon-log.install +++ /dev/null @@ -1,8 +0,0 @@ -etc/libvirt/virtlogd.conf -usr/lib/systemd/system/virtlogd-admin.socket -usr/lib/systemd/system/virtlogd.service -usr/lib/systemd/system/virtlogd.socket -usr/sbin/virtlogd -usr/share/augeas/lenses/tests/test_virtlogd.aug -usr/share/augeas/lenses/virtlogd.aug -usr/share/man/man8/virtlogd.8 diff --git a/debian/libvirt-daemon-log.install.in b/debian/libvirt-daemon-log.install.in deleted file mode 100644 index 362e761e..00000000 --- a/debian/libvirt-daemon-log.install.in +++ /dev/null @@ -1,8 +0,0 @@ -etc/libvirt/virtlogd.conf -usr/lib/systemd/system/virtlogd-admin.socket -usr/lib/systemd/system/virtlogd.service -usr/lib/systemd/system/virtlogd.socket -usr/sbin/virtlogd -usr/share/augeas/lenses/tests/test_virtlogd.aug -usr/share/augeas/lenses/virtlogd.aug -usr/share/man/man8/virtlogd.8 diff --git a/debian/libvirt-daemon-log.links b/debian/libvirt-daemon-log.links deleted file mode 100644 index 16bfdf98..00000000 --- a/debian/libvirt-daemon-log.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-log diff --git a/debian/libvirt-daemon-log.lintian-overrides b/debian/libvirt-daemon-log.lintian-overrides deleted file mode 100644 index d536d6ed..00000000 --- a/debian/libvirt-daemon-log.lintian-overrides +++ /dev/null @@ -1,7 +0,0 @@ -# Lintian would like an explicit Pre-Depends on init-system-helpers (>= 1.54~) -# to be declared, but we already know that any version of Debian we might want -# to backport libvirt to has a newer version than that -libvirt-daemon-log: skip-systemd-native-flag-missing-pre-depends * - -# Versioned conflicts are needed for DEP17 M7 -libvirt-daemon-log: conflicts-with-version libvirt-daemon-system * diff --git a/debian/libvirt-daemon-log.postinst b/debian/libvirt-daemon-log.postinst deleted file mode 100644 index ba5bd226..00000000 --- a/debian/libvirt-daemon-log.postinst +++ /dev/null @@ -1,133 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_SYSTEM_TO_DAEMON_LOG=" - /etc/default/virtlogd - /etc/libvirt/virtlogd.conf -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG=" - /etc/init.d/virtlogd -" - -DAEMON_LOG_UNITS=" - virtlogd-admin.socket - virtlogd.service - virtlogd.socket -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOG; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - - for unit in $DAEMON_LOG_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.postinst.in b/debian/libvirt-daemon-log.postinst.in deleted file mode 100644 index a9e1f946..00000000 --- a/debian/libvirt-daemon-log.postinst.in +++ /dev/null @@ -1,77 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_SYSTEM_TO_DAEMON_LOG=" - /etc/default/virtlogd - /etc/libvirt/virtlogd.conf -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG=" - /etc/init.d/virtlogd -" - -DAEMON_LOG_UNITS=" - virtlogd-admin.socket - virtlogd.service - virtlogd.socket -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOG; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - - for unit in $DAEMON_LOG_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.postrm b/debian/libvirt-daemon-log.postrm deleted file mode 100644 index 0661200f..00000000 --- a/debian/libvirt-daemon-log.postrm +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_LOG_UNITS=" - virtlogd-admin.socket - virtlogd.service - virtlogd.socket -" - -case "$1" in - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_LOG_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.postrm.in b/debian/libvirt-daemon-log.postrm.in deleted file mode 100644 index 772b5692..00000000 --- a/debian/libvirt-daemon-log.postrm.in +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_LOG_UNITS=" - virtlogd-admin.socket - virtlogd.service - virtlogd.socket -" - -case "$1" in - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_LOG_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.preinst b/debian/libvirt-daemon-log.preinst deleted file mode 100644 index f2ef71d3..00000000 --- a/debian/libvirt-daemon-log.preinst +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -create_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "create_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If we're upgrading from a new enough version of the package, it means - # that usr-merge has already happened and we don't need to mess with - # diversions at all - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --add "$usrfile" -} - -DAEMON_LOG_UNITS=" - virtlogd-admin.socket - virtlogd.service - virtlogd.socket -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_LOG_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.preinst.in b/debian/libvirt-daemon-log.preinst.in deleted file mode 100644 index 5be21fe4..00000000 --- a/debian/libvirt-daemon-log.preinst.in +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#CREATE_PROTECTIVE_DIVERSION# - -DAEMON_LOG_UNITS=" - virtlogd-admin.socket - virtlogd.service - virtlogd.socket -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_LOG_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-plugin-lockd.install b/debian/libvirt-daemon-plugin-lockd.install deleted file mode 100644 index b307a700..00000000 --- a/debian/libvirt-daemon-plugin-lockd.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/lock-driver/lockd.so diff --git a/debian/libvirt-daemon-plugin-lockd.install.in b/debian/libvirt-daemon-plugin-lockd.install.in deleted file mode 100644 index b307a700..00000000 --- a/debian/libvirt-daemon-plugin-lockd.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/lock-driver/lockd.so diff --git a/debian/libvirt-daemon-plugin-lockd.links b/debian/libvirt-daemon-plugin-lockd.links deleted file mode 100644 index 5dcb3a54..00000000 --- a/debian/libvirt-daemon-plugin-lockd.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-plugin-lockd diff --git a/debian/libvirt-daemon-plugin-sanlock.dirs b/debian/libvirt-daemon-plugin-sanlock.dirs deleted file mode 100644 index e9931467..00000000 --- a/debian/libvirt-daemon-plugin-sanlock.dirs +++ /dev/null @@ -1 +0,0 @@ -var/lib/libvirt/sanlock diff --git a/debian/libvirt-daemon-plugin-sanlock.install b/debian/libvirt-daemon-plugin-sanlock.install deleted file mode 100644 index d2bb42d9..00000000 --- a/debian/libvirt-daemon-plugin-sanlock.install +++ /dev/null @@ -1,6 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/lock-driver/sanlock.so -usr/lib/libvirt/libvirt_sanlock_helper -usr/sbin/virt-sanlock-cleanup -usr/share/augeas/lenses/libvirt_sanlock.aug -usr/share/augeas/lenses/tests/test_libvirt_sanlock.aug -usr/share/man/man8/virt-sanlock-cleanup.8 diff --git a/debian/libvirt-daemon-plugin-sanlock.install.in b/debian/libvirt-daemon-plugin-sanlock.install.in deleted file mode 100644 index b1fbeeb0..00000000 --- a/debian/libvirt-daemon-plugin-sanlock.install.in +++ /dev/null @@ -1,6 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt/lock-driver/sanlock.so -usr/lib/libvirt/libvirt_sanlock_helper -usr/sbin/virt-sanlock-cleanup -usr/share/augeas/lenses/libvirt_sanlock.aug -[${ARCHES_QEMU}] usr/share/augeas/lenses/tests/test_libvirt_sanlock.aug -usr/share/man/man8/virt-sanlock-cleanup.8 diff --git a/debian/libvirt-daemon-plugin-sanlock.links b/debian/libvirt-daemon-plugin-sanlock.links deleted file mode 100644 index ee781a88..00000000 --- a/debian/libvirt-daemon-plugin-sanlock.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-plugin-sanlock diff --git a/debian/libvirt-daemon-plugin-sanlock.postinst b/debian/libvirt-daemon-plugin-sanlock.postinst deleted file mode 100644 index 321c60d2..00000000 --- a/debian/libvirt-daemon-plugin-sanlock.postinst +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} - -add_statoverrides() -{ - SANLOCK_DIR="/var/lib/libvirt/sanlock" - - if ! dpkg-statoverride --list "${SANLOCK_DIR}" >/dev/null 2>&1; then - [ ! -e "${SANLOCK_DIR}" ] || chown root:root "${SANLOCK_DIR}" - [ ! -e "${SANLOCK_DIR}" ] || chmod 0700 "${SANLOCK_DIR}" - fi -} - -SANLOCK_TO_DAEMON_PLUGIN_SANLOCK=" - /etc/cron.weekly/libvirt-sanlock -" - -case "$1" in - configure) - add_statoverrides - - for conf in $SANLOCK_TO_DAEMON_PLUGIN_SANLOCK; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-sanlock" \ - "libvirt-daemon-plugin-sanlock" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-plugin-sanlock.postinst.in b/debian/libvirt-daemon-plugin-sanlock.postinst.in deleted file mode 100644 index f05d23ed..00000000 --- a/debian/libvirt-daemon-plugin-sanlock.postinst.in +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# - -add_statoverrides() -{ - SANLOCK_DIR="/var/lib/libvirt/sanlock" - - if ! dpkg-statoverride --list "${SANLOCK_DIR}" >/dev/null 2>&1; then - [ ! -e "${SANLOCK_DIR}" ] || chown root:root "${SANLOCK_DIR}" - [ ! -e "${SANLOCK_DIR}" ] || chmod 0700 "${SANLOCK_DIR}" - fi -} - -SANLOCK_TO_DAEMON_PLUGIN_SANLOCK=" - /etc/cron.weekly/libvirt-sanlock -" - -case "$1" in - configure) - add_statoverrides - - for conf in $SANLOCK_TO_DAEMON_PLUGIN_SANLOCK; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-sanlock" \ - "libvirt-daemon-plugin-sanlock" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-system-systemd.links b/debian/libvirt-daemon-system-systemd.links index 7879efa4..9b99ba54 100644 --- a/debian/libvirt-daemon-system-systemd.links +++ b/debian/libvirt-daemon-system-systemd.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-system-systemd +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-system-systemd diff --git a/debian/libvirt-daemon-system-systemd.lintian-overrides b/debian/libvirt-daemon-system-systemd.lintian-overrides new file mode 100644 index 00000000..2a57dc4c --- /dev/null +++ b/debian/libvirt-daemon-system-systemd.lintian-overrides @@ -0,0 +1 @@ +libvirt-daemon-system-systemd: empty-binary-package diff --git a/debian/libvirt-daemon-system-systemd.maintscript b/debian/libvirt-daemon-system-systemd.maintscript index 0c784400..8960a318 100644 --- a/debian/libvirt-daemon-system-systemd.maintscript +++ b/debian/libvirt-daemon-system-systemd.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-system-systemd libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-system-systemd libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-common.libvirt-guests.init b/debian/libvirt-daemon-system-sysv.libvirt-guests.init similarity index 100% rename from debian/libvirt-daemon-common.libvirt-guests.init rename to debian/libvirt-daemon-system-sysv.libvirt-guests.init diff --git a/debian/libvirt-daemon.libvirtd.init b/debian/libvirt-daemon-system-sysv.libvirtd.init similarity index 100% rename from debian/libvirt-daemon.libvirtd.init rename to debian/libvirt-daemon-system-sysv.libvirtd.init diff --git a/debian/libvirt-daemon-system-sysv.links b/debian/libvirt-daemon-system-sysv.links index 3e21d9b3..a0543703 100644 --- a/debian/libvirt-daemon-system-sysv.links +++ b/debian/libvirt-daemon-system-sysv.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-system-sysv +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-system-sysv diff --git a/debian/libvirt-daemon-system-sysv.lintian-overrides b/debian/libvirt-daemon-system-sysv.lintian-overrides new file mode 100644 index 00000000..59f87b24 --- /dev/null +++ b/debian/libvirt-daemon-system-sysv.lintian-overrides @@ -0,0 +1,10 @@ +# The expected options are all implemented - just not in a way that Lintian +# is capable of recognizing +libvirt-daemon-system-sysv: init.d-script-does-not-implement-required-option * [etc/init.d/libvirt-guests] +libvirt-daemon-system-sysv: init.d-script-does-not-implement-status-option [etc/init.d/libvirt-guests] +libvirt-daemon-system-sysv: init.d-script-does-not-source-init-functions [etc/init.d/libvirt-guests] +libvirt-daemon-system-sysv: missing-systemd-service-for-init.d-script +# Lintian would like an explicit Pre-Depends on init-system-helpers (>= 1.54~) +# to be declared, but we already know that any version of Debian we might want +# to backport libvirt to has a newer version than that +libvirt-daemon-system-sysv: skip-systemd-native-flag-missing-pre-depends * diff --git a/debian/libvirt-daemon-system-sysv.maintscript b/debian/libvirt-daemon-system-sysv.maintscript index f55fb8bd..d087050a 100644 --- a/debian/libvirt-daemon-system-sysv.maintscript +++ b/debian/libvirt-daemon-system-sysv.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-system-sysv libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-system-sysv libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-system-sysv.postrm b/debian/libvirt-daemon-system-sysv.postrm deleted file mode 100644 index 9d806fc7..00000000 --- a/debian/libvirt-daemon-system-sysv.postrm +++ /dev/null @@ -1,105 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -abort_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "abort_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we were installing from scratch or upgrading from a new enough version - # when the error occurred, then no transfer was in progress and we don't - # need to rollback any changes - if [ -z "$2" ] || dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - # If the conffile was being transferred, return it to its original location - if [ -e "$conffile.dpkg-transfer" ]; then - mv -f "$conffile.dpkg-transfer" "$conffile" - fi - - # Clean up additional state - rm -f "$conffile.dpkg-disappear" -} - -DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON=" - /etc/init.d/libvirt-guests -" -DAEMON_SYSTEM_SYSV_TO_DAEMON=" - /etc/init.d/libvirtd -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG=" - /etc/init.d/virtlogd -" - -case "$1" in - abort-install|abort-upgrade) - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear|failed-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-system-sysv.postrm.in b/debian/libvirt-daemon-system-sysv.postrm.in deleted file mode 100644 index d7d91e03..00000000 --- a/debian/libvirt-daemon-system-sysv.postrm.in +++ /dev/null @@ -1,76 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#ABORT_CONFFILE_TRANSFER# - -DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON=" - /etc/init.d/libvirt-guests -" -DAEMON_SYSTEM_SYSV_TO_DAEMON=" - /etc/init.d/libvirtd -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG=" - /etc/init.d/virtlogd -" - -case "$1" in - abort-install|abort-upgrade) - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear|failed-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-system-sysv.preinst b/debian/libvirt-daemon-system-sysv.preinst deleted file mode 100644 index 943842f7..00000000 --- a/debian/libvirt-daemon-system-sysv.preinst +++ /dev/null @@ -1,125 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -prepare_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "prepare_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're installing from scratch or upgrading from a new enough version - # of the package, then no transfer needs to happen and we can stop here - if [ -z "$2" ] || dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - # Depending on the current state of the conffile, we need to perform different - # steps to transfer it. Moving the conffile to a different location depending - # on its current state achieves two goals: dpkg will see the conffile is no - # longer present on disk after $pkgfrom has been upgraded, and so it will no - # longer associate it with that package (not even as an obsolete conffile); - # more importanly, $pkgto's postinst, where the transfer process is completed, - # will be able to figure out the original state of the conffile and make sure - # it is restored - - if [ -e "$conffile" ]; then - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkgfrom" | grep -E "^ $conffile " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$conffile" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - if [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$conffile" - return 0 - fi - - echo "Preparing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile" "$conffile.dpkg-transfer" - return 0 - fi - - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - # If we are performing an upgrade from a version that's newer than the - # one which originally introduced the conffile ($firstver), we expect - # it to be present on disk; if that's not the case, that means that - # the admin must have explicitly deleted it and we should preserve - # this local modification - touch "$conffile.dpkg-disappear" - return 0 - fi -} - -DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON=" - /etc/init.d/libvirt-guests -" -DAEMON_SYSTEM_SYSV_TO_DAEMON=" - /etc/init.d/libvirtd -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG=" - /etc/init.d/virtlogd -" - -case "$1" in - install|upgrade) - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-system-sysv.preinst.in b/debian/libvirt-daemon-system-sysv.preinst.in deleted file mode 100644 index 517d536c..00000000 --- a/debian/libvirt-daemon-system-sysv.preinst.in +++ /dev/null @@ -1,72 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#PREPARE_CONFFILE_TRANSFER# - -DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON=" - /etc/init.d/libvirt-guests -" -DAEMON_SYSTEM_SYSV_TO_DAEMON=" - /etc/init.d/libvirtd -" -DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG=" - /etc/init.d/virtlogd -" - -case "$1" in - install|upgrade) - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_COMMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON_LOG; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-log.virtlogd.init b/debian/libvirt-daemon-system-sysv.virtlogd.init similarity index 100% rename from debian/libvirt-daemon-log.virtlogd.init rename to debian/libvirt-daemon-system-sysv.virtlogd.init diff --git a/debian/libvirt-daemon-system.config b/debian/libvirt-daemon-system.config new file mode 100644 index 00000000..e3d72b91 --- /dev/null +++ b/debian/libvirt-daemon-system.config @@ -0,0 +1,34 @@ +#!/bin/sh -e + +# Only perform this check/warning if the libvirt user groups aren't there +# already +if getent passwd libvirt-qemu >/dev/null \ +&& getent group libvirt-qemu >/dev/null; then + exit 0 +fi + +# Source debconf library. +. /usr/share/debconf/confmodule + +# Allocated UID and GID for libvirt-qemu +LIBVIRT_QEMU_UID=64055 +LIBVIRT_QEMU_GID=64055 + +# Check if allocated UID/GID are assigned to a different user/group. +UID_TO_NAME="$(getent passwd $LIBVIRT_QEMU_UID | cut -d: -f1)" +GID_TO_NAME="$(getent group $LIBVIRT_QEMU_GID | cut -d: -f1)" + +if ( [ -n "$UID_TO_NAME" ] && [ "$UID_TO_NAME" != 'libvirt-qemu' ] ) \ +|| ( [ -n "$GID_TO_NAME" ] && [ "$GID_TO_NAME" != 'libvirt-qemu' ] ) \ +then + # Ask if the user would like to continue or abort installation. + db_input high libvirt-daemon-system/id_warning || true + db_go + db_get libvirt-daemon-system/id_warning + if [ "$RET" = "false" ]; then + exit 1 + fi +fi + +db_stop +exit 0 diff --git a/debian/libvirt-daemon-system.dirs b/debian/libvirt-daemon-system.dirs new file mode 100644 index 00000000..a8509fd4 --- /dev/null +++ b/debian/libvirt-daemon-system.dirs @@ -0,0 +1,13 @@ +etc/libvirt/hooks +etc/libvirt/nwfilter +etc/libvirt/qemu/networks +etc/libvirt/qemu/networks/autostart +usr/share/polkit-1/rules.d/ +var/cache/libvirt +var/cache/libvirt/qemu +var/lib/libvirt/boot +var/lib/libvirt/images +var/lib/libvirt/qemu +var/lib/libvirt/sanlock +var/log/libvirt/lxc +var/log/libvirt/qemu diff --git a/debian/libvirt-daemon-system.install b/debian/libvirt-daemon-system.install new file mode 100644 index 00000000..25bdf943 --- /dev/null +++ b/debian/libvirt-daemon-system.install @@ -0,0 +1,16 @@ +etc/libvirt/libvirtd.conf +etc/libvirt/virtlockd.conf +etc/libvirt/virtlogd.conf +etc/logrotate.d/libvirtd +etc/logrotate.d/libvirtd.libxl +etc/logrotate.d/libvirtd.lxc +etc/logrotate.d/libvirtd.qemu +etc/sasl2/libvirt.conf +usr/lib/firewalld/policies/libvirt-routed-in.xml +usr/lib/firewalld/policies/libvirt-routed-out.xml +usr/lib/firewalld/policies/libvirt-to-host.xml +usr/lib/firewalld/zones/libvirt-routed.xml +usr/lib/firewalld/zones/libvirt.xml +usr/share/polkit-1/actions/org.libvirt.api.policy +usr/share/polkit-1/actions/org.libvirt.unix.policy +usr/share/polkit-1/rules.d/60-libvirt.rules diff --git a/debian/libvirt-daemon-common.libvirt-guests.default b/debian/libvirt-daemon-system.libvirt-guests.default similarity index 100% rename from debian/libvirt-daemon-common.libvirt-guests.default rename to debian/libvirt-daemon-system.libvirt-guests.default diff --git a/debian/libvirt-daemon.libvirtd.default b/debian/libvirt-daemon-system.libvirtd.default similarity index 100% rename from debian/libvirt-daemon.libvirtd.default rename to debian/libvirt-daemon-system.libvirtd.default diff --git a/debian/libvirt-daemon-system.links b/debian/libvirt-daemon-system.links index c145485b..947b30fb 100644 --- a/debian/libvirt-daemon-system.links +++ b/debian/libvirt-daemon-system.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon-system +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon-system diff --git a/debian/libvirt-daemon-system.lintian-overrides b/debian/libvirt-daemon-system.lintian-overrides index bcb1aa36..257bd047 100644 --- a/debian/libvirt-daemon-system.lintian-overrides +++ b/debian/libvirt-daemon-system.lintian-overrides @@ -1 +1,5 @@ -libvirt-daemon-system: empty-binary-package +# SysV init support is implemented in the libvirt-daemon-system-sysv package +libvirt-daemon-system: package-supports-alternative-init-but-no-init.d-script [lib/systemd/system/libvirt-guests.service] +libvirt-daemon-system: package-supports-alternative-init-but-no-init.d-script [lib/systemd/system/libvirtd.service] +libvirt-daemon-system: package-supports-alternative-init-but-no-init.d-script [lib/systemd/system/virtlockd.service] +libvirt-daemon-system: package-supports-alternative-init-but-no-init.d-script [lib/systemd/system/virtlogd.service] diff --git a/debian/libvirt-daemon-system.maintscript b/debian/libvirt-daemon-system.maintscript index b13a784b..1d2ea80e 100644 --- a/debian/libvirt-daemon-system.maintscript +++ b/debian/libvirt-daemon-system.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon-system libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon-system libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon-system.postinst b/debian/libvirt-daemon-system.postinst new file mode 100644 index 00000000..a9d7dfab --- /dev/null +++ b/debian/libvirt-daemon-system.postinst @@ -0,0 +1,167 @@ +#!/bin/sh + +set -e + +# summary of how this script can be called: +# +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# * `abort-remove' +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see https://www.debian.org/doc/debian-policy/ or +# the debian-policy package + +. /usr/share/debconf/confmodule + +# Allocated UID and GID for libvirt-qemu +LIBVIRT_QEMU_UID=64055 +LIBVIRT_QEMU_GID=64055 + +add_users_groups() +{ + if ! getent group libvirt >/dev/null; then + addgroup --quiet --system libvirt + fi + + if ! getent group kvm >/dev/null; then + addgroup --quiet --system kvm + fi + # user and group libvirt runs qemu/kvm instances with + if ! getent passwd libvirt-qemu >/dev/null; then + + # set uid if available (expected); don't fail otherwise. + PARAMETER_UID='' + if ! getent passwd $LIBVIRT_QEMU_UID >/dev/null; then + PARAMETER_UID="--uid $LIBVIRT_QEMU_UID" + fi + + adduser --quiet \ + --system \ + --ingroup kvm \ + --quiet \ + --disabled-login \ + --disabled-password \ + --home /var/lib/libvirt \ + --no-create-home \ + --gecos "Libvirt Qemu" \ + $PARAMETER_UID \ + libvirt-qemu + fi + if ! getent group libvirt-qemu >/dev/null; then + + # set gid if available (expected); don't fail otherwise. + PARAMETER_GID='' + if ! getent group $LIBVIRT_QEMU_GID >/dev/null; then + PARAMETER_GID="--gid $LIBVIRT_QEMU_GID" + fi + + addgroup --quiet --system $PARAMETER_GID libvirt-qemu + adduser --quiet libvirt-qemu libvirt-qemu + fi +} + +add_statoverrides() +{ + ROOT_DIRS=" + /var/lib/libvirt/images/ + /var/lib/libvirt/boot/ + /var/cache/libvirt/ + /var/cache/libvirt/qemu/ + " + + QEMU_DIRS=" + /var/lib/libvirt/qemu/ + " + + SANLOCK_DIR="/var/lib/libvirt/sanlock" + + QEMU_CONF="/etc/libvirt/qemu.conf" + + for dir in ${ROOT_DIRS}; do + if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then + [ ! -e "${dir}" ] || chown root:root "${dir}" + [ ! -e "${dir}" ] || chmod 0711 "${dir}" + fi + done + + for dir in ${QEMU_DIRS}; do + if ! dpkg-statoverride --list "${dir}" >/dev/null 2>&1; then + [ ! -e "${dir}" ] || chown libvirt-qemu:libvirt-qemu "${dir}" + [ ! -e "${dir}" ] || chmod 0750 "${dir}" + fi + done + + if ! dpkg-statoverride --list "${SANLOCK_DIR}" >/dev/null 2>&1; then + [ ! -e "${SANLOCK_DIR}" ] || chown root:root "${SANLOCK_DIR}" + [ ! -e "${SANLOCK_DIR}" ] || chmod 0700 "${SANLOCK_DIR}" + fi + + if ! dpkg-statoverride --list "${QEMU_CONF}" >/dev/null 2>&1; then + [ ! -e "${QEMU_CONF}" ] || chown root:root "${QEMU_CONF}" + [ ! -e "${QEMU_CONF}" ] || chmod 0600 "${QEMU_CONF}" + fi +} + +case "$1" in + configure) + add_users_groups + add_statoverrides + + # Make sure the directories don't get removed on package removal since + # logrotate chokes otherwise. + for dir in qemu lxc; do + touch /var/log/libvirt/"${dir}"/.placeholder + done + + # Obsolete UML stuff included until 9.0.0-1 + rm -f /var/log/libvirt/uml/.placeholder + if [ -d /var/log/libvirt/uml ]; then + rmdir --ignore-fail-on-non-empty /var/log/libvirt/uml + fi + + # Directories used for channels until 9.7.0-1 + if [ -d /var/lib/libvirt/qemu/channel/target ]; then + rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel/target + fi + if [ -d /var/lib/libvirt/qemu/channel ]; then + rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel + fi + + # Force refresh of capabilities (#731815) + rm -f /var/cache/libvirt/qemu/capabilities/*.xml + + # Obsolete AppArmor stuff included until 9.6.0-1 + LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" + LIBVIRT_ABSTRACTIONS="libvirt-lxc libvirt-qemu" + + for name in $LIBVIRT_ABSTRACTIONS; do + local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" + + # Delete the file if it's empty, leave it alone otherwise + if [ ! -s "$local_abstraction" ]; then + rm -f "$local_abstraction" + fi + done + + if [ -d "$LOCAL_ABSTRACTIONS_DIR" ]; then + rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" + fi + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +db_stop + +#DEBHELPER# + +exit 0 diff --git a/debian/libvirt-daemon-system.postrm b/debian/libvirt-daemon-system.postrm index 9e4bc044..eb94f1a1 100644 --- a/debian/libvirt-daemon-system.postrm +++ b/debian/libvirt-daemon-system.postrm @@ -18,16 +18,15 @@ set -e abort_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "abort_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done @@ -68,54 +67,51 @@ NWFILTERS=" qemu-announce-self-rarp " -DAEMON_SYSTEM_TO_DAEMON_COMMON=" - /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper - /etc/default/libvirt-guests - /etc/sasl2/libvirt.conf -" -DAEMON_SYSTEM_TO_DAEMON=" - /etc/apparmor.d/usr.sbin.libvirtd - /etc/default/libvirtd - /etc/libvirt/libvirtd.conf - /etc/logrotate.d/libvirtd -" -DAEMON_SYSTEM_TO_DAEMON_LOG=" - /etc/default/virtlogd - /etc/libvirt/virtlogd.conf -" -DAEMON_SYSTEM_TO_DAEMON_LOCK=" - /etc/default/virtlockd - /etc/libvirt/virtlockd.conf -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN=" - /etc/libvirt/libxl-lockd.conf - /etc/libvirt/libxl-sanlock.conf - /etc/libvirt/libxl.conf - /etc/logrotate.d/libvirtd.libxl -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC=" - /etc/apparmor.d/abstractions/libvirt-lxc - /etc/apparmor.d/libvirt/TEMPLATE.lxc - /etc/libvirt/lxc.conf - /etc/logrotate.d/libvirtd.lxc -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU=" - /etc/apparmor.d/abstractions/libvirt-qemu - /etc/apparmor.d/libvirt/TEMPLATE.qemu - /etc/libvirt/qemu-lockd.conf - /etc/libvirt/qemu-sanlock.conf - /etc/libvirt/qemu.conf - /etc/logrotate.d/libvirtd.qemu -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK=" - /etc/libvirt/network.conf -" - case "$1" in + purge) + if getent group libvirt >/dev/null; then + delgroup libvirt >/dev/null || true + fi + + if getent passwd libvirt-qemu >/dev/null; then + deluser libvirt-qemu >/dev/null || true + fi + + if getent group libvirt-qemu >/dev/null; then + delgroup libvirt-qemu >/dev/null || true + fi + + # Clean up logs and cached capabilities + rm -rf /var/log/libvirt \ + /var/cache/libvirt/qemu/capabilities + + # Clean up obsolete runtime data + rm -rf /var/lib/libvirt/qemu/channel/target/domain-* + if [ -d /var/lib/libvirt/qemu/channel/target ]; then + rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel/target + fi + if [ -d /var/lib/libvirt/qemu/channel ]; then + rmdir --ignore-fail-on-non-empty /var/lib/libvirt/qemu/channel + fi + + # Clean up created dirs if existent and empty, they contain precious + # data otherwise + for dir in /var/lib/libvirt/qemu/save \ + /var/lib/libvirt/qemu/snapshot \ + /var/lib/libvirt/qemu/dump \ + /var/lib/libvirt/qemu/nvram \ + /var/lib/libvirt/qemu/ram/libvirt/qemu \ + /var/lib/libvirt/qemu/ram/libvirt \ + /var/lib/libvirt/qemu/ram \ + /var/lib/libvirt/qemu \ + /var/cache/libvirt/qemu; do + [ ! -d $dir ] || rmdir --ignore-fail-on-non-empty $dir + done + ;; + abort-install|abort-upgrade) abort_conffile_transfer \ "/etc/libvirt/qemu/networks/default.xml" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-daemon-system" \ "libvirt-daemon-config-network" \ @@ -124,96 +120,29 @@ case "$1" in for nwfilter in $NWFILTERS; do abort_conffile_transfer \ "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-daemon-system" \ "libvirt-daemon-config-nwfilter" \ -- \ "$@" done - for conf in $DAEMON_SYSTEM_TO_DAEMON_COMMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOG; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOCK; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-lock" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-xen" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-lxc" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-qemu" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK; do - abort_conffile_transfer \ - "$conf" \ - "10.4.0-1~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-network" \ - -- \ - "$@" + + # dh_apparmor can't work with dir/file profile filenames yet (#979500) + ABSTRACTIONS_DIR="/etc/apparmor.d/abstractions" + LOCAL_ABSTRACTIONS_DIR="/etc/apparmor.d/local/abstractions" + LIBVIRT_ABSTRACTIONS="libvirt-lxc libvirt-qemu" + for name in $LIBVIRT_ABSTRACTIONS; do + abstraction="$ABSTRACTIONS_DIR/$name" + local_abstraction="$LOCAL_ABSTRACTIONS_DIR/$name" + + if [ ! -e "$abstraction" ] ; then + rm -f "$local_abstraction" + rmdir --ignore-fail-on-non-empty "$LOCAL_ABSTRACTIONS_DIR" 2>/dev/null + fi done ;; - remove|purge|upgrade|disappear|failed-upgrade) + remove|upgrade|disappear|failed-upgrade) ;; *) diff --git a/debian/libvirt-daemon-system.postrm.in b/debian/libvirt-daemon-system.postrm.in deleted file mode 100644 index 606ec026..00000000 --- a/debian/libvirt-daemon-system.postrm.in +++ /dev/null @@ -1,198 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#ABORT_CONFFILE_TRANSFER# - -NWFILTERS=" - allow-arp - allow-dhcp - allow-dhcp-server - allow-incoming-ipv4 - allow-ipv4 - clean-traffic - clean-traffic-gateway - no-arp-ip-spoofing - no-arp-mac-spoofing - no-arp-spoofing - no-ip-multicast - no-ip-spoofing - no-mac-broadcast - no-mac-spoofing - no-other-l2-traffic - no-other-rarp-traffic - qemu-announce-self - qemu-announce-self-rarp -" - -DAEMON_SYSTEM_TO_DAEMON_COMMON=" - /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper - /etc/default/libvirt-guests - /etc/sasl2/libvirt.conf -" -DAEMON_SYSTEM_TO_DAEMON=" - /etc/apparmor.d/usr.sbin.libvirtd - /etc/default/libvirtd - /etc/libvirt/libvirtd.conf - /etc/logrotate.d/libvirtd -" -DAEMON_SYSTEM_TO_DAEMON_LOG=" - /etc/default/virtlogd - /etc/libvirt/virtlogd.conf -" -DAEMON_SYSTEM_TO_DAEMON_LOCK=" - /etc/default/virtlockd - /etc/libvirt/virtlockd.conf -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN=" - /etc/libvirt/libxl-lockd.conf - /etc/libvirt/libxl-sanlock.conf - /etc/libvirt/libxl.conf - /etc/logrotate.d/libvirtd.libxl -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC=" - /etc/apparmor.d/abstractions/libvirt-lxc - /etc/apparmor.d/libvirt/TEMPLATE.lxc - /etc/libvirt/lxc.conf - /etc/logrotate.d/libvirtd.lxc -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU=" - /etc/apparmor.d/abstractions/libvirt-qemu - /etc/apparmor.d/libvirt/TEMPLATE.qemu - /etc/libvirt/qemu-lockd.conf - /etc/libvirt/qemu-sanlock.conf - /etc/libvirt/qemu.conf - /etc/logrotate.d/libvirtd.qemu -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK=" - /etc/libvirt/network.conf -" - -case "$1" in - abort-install|abort-upgrade) - abort_conffile_transfer \ - "/etc/libvirt/qemu/networks/default.xml" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-config-network" \ - -- \ - "$@" - for nwfilter in $NWFILTERS; do - abort_conffile_transfer \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-config-nwfilter" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_COMMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOG; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOCK; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-lock" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-xen" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-lxc" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-qemu" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK; do - abort_conffile_transfer \ - "$conf" \ - "10.4.0-1~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-network" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear|failed-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-system.preinst b/debian/libvirt-daemon-system.preinst index e52fe6bd..706b13ab 100644 --- a/debian/libvirt-daemon-system.preinst +++ b/debian/libvirt-daemon-system.preinst @@ -14,16 +14,15 @@ set -e prepare_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "prepare_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done @@ -41,29 +40,13 @@ prepare_conffile_transfer() { # more importanly, $pkgto's postinst, where the transfer process is completed, # will be able to figure out the original state of the conffile and make sure # it is restored - if [ -e "$conffile" ]; then - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkgfrom" | grep -E "^ $conffile " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$conffile" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - if [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$conffile" - return 0 - fi - echo "Preparing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." mv -f "$conffile" "$conffile.dpkg-transfer" - return 0 - fi - - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - # If we are performing an upgrade from a version that's newer than the - # one which originally introduced the conffile ($firstver), we expect - # it to be present on disk; if that's not the case, that means that - # the admin must have explicitly deleted it and we should preserve - # this local modification + else + # If the conffile is no longer present on the disk, it means the admin + # has deleted it, and we should preserve this local modification touch "$conffile.dpkg-disappear" - return 0 fi } @@ -88,54 +71,10 @@ NWFILTERS=" qemu-announce-self-rarp " -DAEMON_SYSTEM_TO_DAEMON_COMMON=" - /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper - /etc/default/libvirt-guests - /etc/sasl2/libvirt.conf -" -DAEMON_SYSTEM_TO_DAEMON=" - /etc/apparmor.d/usr.sbin.libvirtd - /etc/default/libvirtd - /etc/libvirt/libvirtd.conf - /etc/logrotate.d/libvirtd -" -DAEMON_SYSTEM_TO_DAEMON_LOG=" - /etc/default/virtlogd - /etc/libvirt/virtlogd.conf -" -DAEMON_SYSTEM_TO_DAEMON_LOCK=" - /etc/default/virtlockd - /etc/libvirt/virtlockd.conf -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN=" - /etc/libvirt/libxl-lockd.conf - /etc/libvirt/libxl-sanlock.conf - /etc/libvirt/libxl.conf - /etc/logrotate.d/libvirtd.libxl -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC=" - /etc/apparmor.d/abstractions/libvirt-lxc - /etc/apparmor.d/libvirt/TEMPLATE.lxc - /etc/libvirt/lxc.conf - /etc/logrotate.d/libvirtd.lxc -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU=" - /etc/apparmor.d/abstractions/libvirt-qemu - /etc/apparmor.d/libvirt/TEMPLATE.qemu - /etc/libvirt/qemu-lockd.conf - /etc/libvirt/qemu-sanlock.conf - /etc/libvirt/qemu.conf - /etc/logrotate.d/libvirtd.qemu -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK=" - /etc/libvirt/network.conf -" - case "$1" in install|upgrade) prepare_conffile_transfer \ "/etc/libvirt/qemu/networks/default.xml" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-daemon-system" \ "libvirt-daemon-config-network" \ @@ -144,93 +83,12 @@ case "$1" in for nwfilter in $NWFILTERS; do prepare_conffile_transfer \ "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-daemon-system" \ "libvirt-daemon-config-nwfilter" \ -- \ "$@" done - for conf in $DAEMON_SYSTEM_TO_DAEMON_COMMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOG; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOCK; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-lock" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-xen" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-lxc" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-qemu" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK; do - prepare_conffile_transfer \ - "$conf" \ - "10.4.0-1~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-network" \ - -- \ - "$@" - done ;; abort-upgrade) diff --git a/debian/libvirt-daemon-system.preinst.in b/debian/libvirt-daemon-system.preinst.in deleted file mode 100644 index f5e42c50..00000000 --- a/debian/libvirt-daemon-system.preinst.in +++ /dev/null @@ -1,194 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#PREPARE_CONFFILE_TRANSFER# - -NWFILTERS=" - allow-arp - allow-dhcp - allow-dhcp-server - allow-incoming-ipv4 - allow-ipv4 - clean-traffic - clean-traffic-gateway - no-arp-ip-spoofing - no-arp-mac-spoofing - no-arp-spoofing - no-ip-multicast - no-ip-spoofing - no-mac-broadcast - no-mac-spoofing - no-other-l2-traffic - no-other-rarp-traffic - qemu-announce-self - qemu-announce-self-rarp -" - -DAEMON_SYSTEM_TO_DAEMON_COMMON=" - /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper - /etc/default/libvirt-guests - /etc/sasl2/libvirt.conf -" -DAEMON_SYSTEM_TO_DAEMON=" - /etc/apparmor.d/usr.sbin.libvirtd - /etc/default/libvirtd - /etc/libvirt/libvirtd.conf - /etc/logrotate.d/libvirtd -" -DAEMON_SYSTEM_TO_DAEMON_LOG=" - /etc/default/virtlogd - /etc/libvirt/virtlogd.conf -" -DAEMON_SYSTEM_TO_DAEMON_LOCK=" - /etc/default/virtlockd - /etc/libvirt/virtlockd.conf -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN=" - /etc/libvirt/libxl-lockd.conf - /etc/libvirt/libxl-sanlock.conf - /etc/libvirt/libxl.conf - /etc/logrotate.d/libvirtd.libxl -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC=" - /etc/apparmor.d/abstractions/libvirt-lxc - /etc/apparmor.d/libvirt/TEMPLATE.lxc - /etc/libvirt/lxc.conf - /etc/logrotate.d/libvirtd.lxc -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU=" - /etc/apparmor.d/abstractions/libvirt-qemu - /etc/apparmor.d/libvirt/TEMPLATE.qemu - /etc/libvirt/qemu-lockd.conf - /etc/libvirt/qemu-sanlock.conf - /etc/libvirt/qemu.conf - /etc/logrotate.d/libvirtd.qemu -" -DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK=" - /etc/libvirt/network.conf -" - -case "$1" in - install|upgrade) - prepare_conffile_transfer \ - "/etc/libvirt/qemu/networks/default.xml" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-config-network" \ - -- \ - "$@" - for nwfilter in $NWFILTERS; do - prepare_conffile_transfer \ - "/etc/libvirt/nwfilter/$nwfilter.xml" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-config-nwfilter" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_COMMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-common" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOG; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-log" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_LOCK; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-lock" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_XEN; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-xen" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_LXC; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-lxc" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_QEMU; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-qemu" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_TO_DAEMON_DRIVER_NETWORK; do - prepare_conffile_transfer \ - "$conf" \ - "10.4.0-1~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon-driver-network" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-system.templates b/debian/libvirt-daemon-system.templates new file mode 100644 index 00000000..1659a4a5 --- /dev/null +++ b/debian/libvirt-daemon-system.templates @@ -0,0 +1,18 @@ +Template: libvirt-daemon-system/id_warning +Type: boolean +Default: true +_Description: Continue with incorrect libvirt-qemu user/group ID(s)? + The user/group ID (uid/gid) allocated for libvirt-qemu (64055) + seems to be taken by another user/group, thus it is not possible + to create the user/group with this numeric ID. + . + The migration of guests with disk image files shared over NFS + requires a static libvirt-qemu user and group ID (uid and gid) + between the source and destination host systems. + . + If guest migration over NFS is not required, you can continue + the installation. + . + In order to resolve this problem, do not continue the installation, + release the 64055 uid/gid (which might involve permission changes), + then install this package again. diff --git a/debian/libvirt-daemon-lock.virtlockd.default b/debian/libvirt-daemon-system.virtlockd.default similarity index 100% rename from debian/libvirt-daemon-lock.virtlockd.default rename to debian/libvirt-daemon-system.virtlockd.default diff --git a/debian/libvirt-daemon-log.virtlogd.default b/debian/libvirt-daemon-system.virtlogd.default similarity index 100% rename from debian/libvirt-daemon-log.virtlogd.default rename to debian/libvirt-daemon-system.virtlogd.default diff --git a/debian/libvirt-daemon.install b/debian/libvirt-daemon.install index 2bee02b8..e6d3cbfd 100644 --- a/debian/libvirt-daemon.install +++ b/debian/libvirt-daemon.install @@ -1,14 +1,35 @@ -etc/apparmor.d/usr.sbin.libvirtd -etc/libvirt/libvirtd.conf -etc/logrotate.d/libvirtd -usr/lib/libvirt/virt-aa-helper -usr/lib/systemd/system/libvirtd-admin.socket -usr/lib/systemd/system/libvirtd-ro.socket -usr/lib/systemd/system/libvirtd-tcp.socket -usr/lib/systemd/system/libvirtd-tls.socket -usr/lib/systemd/system/libvirtd.service -usr/lib/systemd/system/libvirtd.socket +usr/bin/virt-ssh-helper +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_interface.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_network.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_nodedev.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_nwfilter.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_secret.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/connection-driver/libvirt_driver_storage.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/lock-driver/lockd.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_disk.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_fs.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_iscsi.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_logical.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_mpath.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-backend/libvirt_storage_backend_scsi.so +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/storage-file/libvirt_storage_file_fs.so +usr/lib/libvirt/libvirt-guests.sh +usr/lib/libvirt/libvirt_iohelper +usr/lib/libvirt/libvirt_leaseshelper +usr/lib/libvirt/libvirt_parthelper usr/sbin/libvirtd +usr/sbin/virtlockd +usr/sbin/virtlogd +usr/share/augeas/lenses/libvirt_lockd.aug +usr/share/augeas/lenses/libvirt_sanlock.aug usr/share/augeas/lenses/libvirtd.aug usr/share/augeas/lenses/tests/test_libvirtd.aug +usr/share/augeas/lenses/tests/test_virtlockd.aug +usr/share/augeas/lenses/tests/test_virtlogd.aug +usr/share/augeas/lenses/virtlockd.aug +usr/share/augeas/lenses/virtlogd.aug +usr/share/man/man8/libvirt-guests.8 usr/share/man/man8/libvirtd.8 +usr/share/man/man8/virt-ssh-helper.8 +usr/share/man/man8/virtlockd.8 +usr/share/man/man8/virtlogd.8 diff --git a/debian/libvirt-daemon.install.in b/debian/libvirt-daemon.install.in deleted file mode 100644 index 2bee02b8..00000000 --- a/debian/libvirt-daemon.install.in +++ /dev/null @@ -1,14 +0,0 @@ -etc/apparmor.d/usr.sbin.libvirtd -etc/libvirt/libvirtd.conf -etc/logrotate.d/libvirtd -usr/lib/libvirt/virt-aa-helper -usr/lib/systemd/system/libvirtd-admin.socket -usr/lib/systemd/system/libvirtd-ro.socket -usr/lib/systemd/system/libvirtd-tcp.socket -usr/lib/systemd/system/libvirtd-tls.socket -usr/lib/systemd/system/libvirtd.service -usr/lib/systemd/system/libvirtd.socket -usr/sbin/libvirtd -usr/share/augeas/lenses/libvirtd.aug -usr/share/augeas/lenses/tests/test_libvirtd.aug -usr/share/man/man8/libvirtd.8 diff --git a/debian/libvirt-daemon.links b/debian/libvirt-daemon.links index 81384c11..8b888718 100644 --- a/debian/libvirt-daemon.links +++ b/debian/libvirt-daemon.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-daemon +usr/share/doc/libvirt0 usr/share/doc/libvirt-daemon diff --git a/debian/libvirt-daemon.lintian-overrides b/debian/libvirt-daemon.lintian-overrides deleted file mode 100644 index 4cb86dc7..00000000 --- a/debian/libvirt-daemon.lintian-overrides +++ /dev/null @@ -1,7 +0,0 @@ -# Lintian would like an explicit Pre-Depends on init-system-helpers (>= 1.54~) -# to be declared, but we already know that any version of Debian we might want -# to backport libvirt to has a newer version than that -libvirt-daemon: skip-systemd-native-flag-missing-pre-depends * - -# Versioned conflicts are needed for DEP17 M7 -libvirt-daemon: conflicts-with-version libvirt-daemon-system * diff --git a/debian/libvirt-daemon.maintscript b/debian/libvirt-daemon.maintscript index dd749bf9..52cf6920 100644 --- a/debian/libvirt-daemon.maintscript +++ b/debian/libvirt-daemon.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-daemon libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-daemon libvirt0 9.3.0-2~ diff --git a/debian/libvirt-daemon.postinst b/debian/libvirt-daemon.postinst deleted file mode 100644 index ff1fa20e..00000000 --- a/debian/libvirt-daemon.postinst +++ /dev/null @@ -1,138 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_SYSTEM_TO_DAEMON=" - /etc/apparmor.d/usr.sbin.libvirtd - /etc/default/libvirtd - /etc/libvirt/libvirtd.conf - /etc/logrotate.d/libvirtd -" -DAEMON_SYSTEM_SYSV_TO_DAEMON=" - /etc/init.d/libvirtd -" - -DAEMON_UNITS=" - libvirtd-admin.socket - libvirtd-ro.socket - libvirtd-tcp.socket - libvirtd-tls.socket - libvirtd.service - libvirtd.socket -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon" \ - -- \ - "$@" - done - - for unit in $DAEMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon.postinst.in b/debian/libvirt-daemon.postinst.in deleted file mode 100644 index a9c99417..00000000 --- a/debian/libvirt-daemon.postinst.in +++ /dev/null @@ -1,82 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_SYSTEM_TO_DAEMON=" - /etc/apparmor.d/usr.sbin.libvirtd - /etc/default/libvirtd - /etc/libvirt/libvirtd.conf - /etc/logrotate.d/libvirtd -" -DAEMON_SYSTEM_SYSV_TO_DAEMON=" - /etc/init.d/libvirtd -" - -DAEMON_UNITS=" - libvirtd-admin.socket - libvirtd-ro.socket - libvirtd-tcp.socket - libvirtd-tls.socket - libvirtd.service - libvirtd.socket -" - -case "$1" in - configure) - for conf in $DAEMON_SYSTEM_TO_DAEMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system" \ - "libvirt-daemon" \ - -- \ - "$@" - done - for conf in $DAEMON_SYSTEM_SYSV_TO_DAEMON; do - finish_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-daemon-system-sysv" \ - "libvirt-daemon" \ - -- \ - "$@" - done - - for unit in $DAEMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon.postrm b/debian/libvirt-daemon.postrm deleted file mode 100644 index 266a7004..00000000 --- a/debian/libvirt-daemon.postrm +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} - -DAEMON_UNITS=" - libvirtd-admin.socket - libvirtd-ro.socket - libvirtd-tcp.socket - libvirtd-tls.socket - libvirtd.service - libvirtd.socket -" - -case "$1" in - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon.postrm.in b/debian/libvirt-daemon.postrm.in deleted file mode 100644 index 988056c6..00000000 --- a/debian/libvirt-daemon.postrm.in +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#DELETE_PROTECTIVE_DIVERSION# - -DAEMON_UNITS=" - libvirtd-admin.socket - libvirtd-ro.socket - libvirtd-tcp.socket - libvirtd-tls.socket - libvirtd.service - libvirtd.socket -" - -case "$1" in - failed-upgrade|abort-install|abort-upgrade) - for unit in $DAEMON_UNITS; do - delete_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon.preinst b/debian/libvirt-daemon.preinst deleted file mode 100644 index 75d2d563..00000000 --- a/debian/libvirt-daemon.preinst +++ /dev/null @@ -1,71 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -create_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "create_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If we're upgrading from a new enough version of the package, it means - # that usr-merge has already happened and we don't need to mess with - # diversions at all - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --add "$usrfile" -} - -DAEMON_UNITS=" - libvirtd-admin.socket - libvirtd-ro.socket - libvirtd-tcp.socket - libvirtd-tls.socket - libvirtd.service - libvirtd.socket -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon.preinst.in b/debian/libvirt-daemon.preinst.in deleted file mode 100644 index 495c167d..00000000 --- a/debian/libvirt-daemon.preinst.in +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#CREATE_PROTECTIVE_DIVERSION# - -DAEMON_UNITS=" - libvirtd-admin.socket - libvirtd-ro.socket - libvirtd-tcp.socket - libvirtd-tls.socket - libvirtd.service - libvirtd.socket -" - -case "$1" in - install|upgrade) - for unit in $DAEMON_UNITS; do - create_protective_diversion \ - "/lib/systemd/system/$unit" \ - "10.6.0-3~" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-dev.install.in b/debian/libvirt-dev.install.in deleted file mode 100644 index a9ec8689..00000000 --- a/debian/libvirt-dev.install.in +++ /dev/null @@ -1,30 +0,0 @@ -usr/include/libvirt/libvirt-admin.h -usr/include/libvirt/libvirt-common.h -usr/include/libvirt/libvirt-domain-checkpoint.h -usr/include/libvirt/libvirt-domain-snapshot.h -usr/include/libvirt/libvirt-domain.h -usr/include/libvirt/libvirt-event.h -usr/include/libvirt/libvirt-host.h -usr/include/libvirt/libvirt-interface.h -usr/include/libvirt/libvirt-lxc.h -usr/include/libvirt/libvirt-network.h -usr/include/libvirt/libvirt-nodedev.h -usr/include/libvirt/libvirt-nwfilter.h -usr/include/libvirt/libvirt-qemu.h -usr/include/libvirt/libvirt-secret.h -usr/include/libvirt/libvirt-storage.h -usr/include/libvirt/libvirt-stream.h -usr/include/libvirt/libvirt.h -usr/include/libvirt/virterror.h -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-admin.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-lxc.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-qemu.so -usr/lib/${DEB_HOST_MULTIARCH}/libvirt.so -usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/libvirt-admin.pc -usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/libvirt-lxc.pc -usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/libvirt-qemu.pc -usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/libvirt.pc -usr/share/libvirt/api/libvirt-admin-api.xml -usr/share/libvirt/api/libvirt-api.xml -usr/share/libvirt/api/libvirt-lxc-api.xml -usr/share/libvirt/api/libvirt-qemu-api.xml diff --git a/debian/libvirt-dev.links b/debian/libvirt-dev.links index 5f5b0c1f..7752d040 100644 --- a/debian/libvirt-dev.links +++ b/debian/libvirt-dev.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-dev +usr/share/doc/libvirt0 usr/share/doc/libvirt-dev diff --git a/debian/libvirt-dev.maintscript b/debian/libvirt-dev.maintscript index 30cea7b3..7f7ba2c9 100644 --- a/debian/libvirt-dev.maintscript +++ b/debian/libvirt-dev.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-dev libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-dev libvirt0 9.3.0-2~ diff --git a/debian/libvirt-l10n.install.in b/debian/libvirt-l10n.install.in deleted file mode 100644 index 5a1b1ca3..00000000 --- a/debian/libvirt-l10n.install.in +++ /dev/null @@ -1,47 +0,0 @@ -usr/share/locale/as/LC_MESSAGES/libvirt.mo -usr/share/locale/bg/LC_MESSAGES/libvirt.mo -usr/share/locale/bn_IN/LC_MESSAGES/libvirt.mo -usr/share/locale/bs/LC_MESSAGES/libvirt.mo -usr/share/locale/ca/LC_MESSAGES/libvirt.mo -usr/share/locale/cs/LC_MESSAGES/libvirt.mo -usr/share/locale/da/LC_MESSAGES/libvirt.mo -usr/share/locale/de/LC_MESSAGES/libvirt.mo -usr/share/locale/el/LC_MESSAGES/libvirt.mo -usr/share/locale/en_GB/LC_MESSAGES/libvirt.mo -usr/share/locale/es/LC_MESSAGES/libvirt.mo -usr/share/locale/fi/LC_MESSAGES/libvirt.mo -usr/share/locale/fr/LC_MESSAGES/libvirt.mo -usr/share/locale/gu/LC_MESSAGES/libvirt.mo -usr/share/locale/hi/LC_MESSAGES/libvirt.mo -usr/share/locale/hr/LC_MESSAGES/libvirt.mo -usr/share/locale/hu/LC_MESSAGES/libvirt.mo -usr/share/locale/id/LC_MESSAGES/libvirt.mo -usr/share/locale/it/LC_MESSAGES/libvirt.mo -usr/share/locale/ja/LC_MESSAGES/libvirt.mo -usr/share/locale/ka/LC_MESSAGES/libvirt.mo -usr/share/locale/kn/LC_MESSAGES/libvirt.mo -usr/share/locale/ko/LC_MESSAGES/libvirt.mo -usr/share/locale/mk/LC_MESSAGES/libvirt.mo -usr/share/locale/ml/LC_MESSAGES/libvirt.mo -usr/share/locale/mr/LC_MESSAGES/libvirt.mo -usr/share/locale/ms/LC_MESSAGES/libvirt.mo -usr/share/locale/nb/LC_MESSAGES/libvirt.mo -usr/share/locale/nl/LC_MESSAGES/libvirt.mo -usr/share/locale/or/LC_MESSAGES/libvirt.mo -usr/share/locale/pa/LC_MESSAGES/libvirt.mo -usr/share/locale/pl/LC_MESSAGES/libvirt.mo -usr/share/locale/pt/LC_MESSAGES/libvirt.mo -usr/share/locale/pt_BR/LC_MESSAGES/libvirt.mo -usr/share/locale/ro/LC_MESSAGES/libvirt.mo -usr/share/locale/ru/LC_MESSAGES/libvirt.mo -usr/share/locale/si/LC_MESSAGES/libvirt.mo -usr/share/locale/sr/LC_MESSAGES/libvirt.mo -usr/share/locale/sr@latin/LC_MESSAGES/libvirt.mo -usr/share/locale/sv/LC_MESSAGES/libvirt.mo -usr/share/locale/ta/LC_MESSAGES/libvirt.mo -usr/share/locale/te/LC_MESSAGES/libvirt.mo -usr/share/locale/tr/LC_MESSAGES/libvirt.mo -usr/share/locale/uk/LC_MESSAGES/libvirt.mo -usr/share/locale/vi/LC_MESSAGES/libvirt.mo -usr/share/locale/zh_CN/LC_MESSAGES/libvirt.mo -usr/share/locale/zh_TW/LC_MESSAGES/libvirt.mo diff --git a/debian/libvirt-l10n.links b/debian/libvirt-l10n.links index b3ee392e..d11f4f38 100644 --- a/debian/libvirt-l10n.links +++ b/debian/libvirt-l10n.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-l10n +usr/share/doc/libvirt0 usr/share/doc/libvirt-l10n diff --git a/debian/libvirt-l10n.maintscript b/debian/libvirt-l10n.maintscript index 02ca660c..711b367e 100644 --- a/debian/libvirt-l10n.maintscript +++ b/debian/libvirt-l10n.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-l10n libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-l10n libvirt0 9.3.0-2~ diff --git a/debian/libvirt-login-shell.install.in b/debian/libvirt-login-shell.install.in deleted file mode 100644 index 89f5e1cc..00000000 --- a/debian/libvirt-login-shell.install.in +++ /dev/null @@ -1,4 +0,0 @@ -etc/libvirt/virt-login-shell.conf -usr/bin/virt-login-shell -usr/lib/libvirt/virt-login-shell-helper -usr/share/man/man1/virt-login-shell.1 diff --git a/debian/libvirt-login-shell.links b/debian/libvirt-login-shell.links index a9b264c2..240561f5 100644 --- a/debian/libvirt-login-shell.links +++ b/debian/libvirt-login-shell.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-login-shell +usr/share/doc/libvirt0 usr/share/doc/libvirt-login-shell diff --git a/debian/libvirt-login-shell.maintscript b/debian/libvirt-login-shell.maintscript index d4cb0276..433bcbdb 100644 --- a/debian/libvirt-login-shell.maintscript +++ b/debian/libvirt-login-shell.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-login-shell libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-login-shell libvirt0 9.3.0-2~ diff --git a/debian/libvirt-login-shell.postinst b/debian/libvirt-login-shell.postinst index 5fd86994..260f7969 100644 --- a/debian/libvirt-login-shell.postinst +++ b/debian/libvirt-login-shell.postinst @@ -16,22 +16,21 @@ set -e finish_conffile_transfer() { local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" + local lastver="$2" + local pkgfrom="$3" + local pkgto="$4" - if [ "$6" != "--" ]; then + if [ "$5" != "--" ]; then echo "finish_conffile_transfer called with the wrong number of arguments" >&2 return 1 fi - for _ in $(seq 1 6); do + for _ in $(seq 1 5); do shift done - # If we're upgrading from a new enough version of the package, we can assume + # If we're upgrading rather than installing from scratch, we can assume # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then + if [ -n "$2" ]; then return 0 fi @@ -55,7 +54,6 @@ case "$1" in configure) finish_conffile_transfer \ "/etc/libvirt/virt-login-shell.conf" \ - "6.0.0-0~" \ "6.9.0-2~" \ "libvirt-clients" \ "libvirt-login-shell" \ diff --git a/debian/libvirt-login-shell.postinst.in b/debian/libvirt-login-shell.postinst.in deleted file mode 100644 index 2f9775ba..00000000 --- a/debian/libvirt-login-shell.postinst.in +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `configure' -# * `abort-upgrade' -# * `abort-remove' `in-favour' -# * `abort-remove' -# * `abort-deconfigure' `in-favour' -# `removing' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#FINISH_CONFFILE_TRANSFER# - -case "$1" in - configure) - finish_conffile_transfer \ - "/etc/libvirt/virt-login-shell.conf" \ - "6.0.0-0~" \ - "6.9.0-2~" \ - "libvirt-clients" \ - "libvirt-login-shell" \ - -- \ - "$@" - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - ;; - - *) - echo "postinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-daemon-plugin-sanlock.cron.weekly b/debian/libvirt-sanlock.cron.weekly similarity index 100% rename from debian/libvirt-daemon-plugin-sanlock.cron.weekly rename to debian/libvirt-sanlock.cron.weekly diff --git a/debian/libvirt-sanlock.install b/debian/libvirt-sanlock.install new file mode 100644 index 00000000..d6d266f2 --- /dev/null +++ b/debian/libvirt-sanlock.install @@ -0,0 +1,4 @@ +usr/lib/${DEB_HOST_MULTIARCH}/libvirt/lock-driver/sanlock.so +usr/lib/libvirt/libvirt_sanlock_helper +usr/sbin/virt-sanlock-cleanup +usr/share/man/man8/virt-sanlock-cleanup.8 diff --git a/debian/libvirt-sanlock.links b/debian/libvirt-sanlock.links index 8c6b002b..973cfa83 100644 --- a/debian/libvirt-sanlock.links +++ b/debian/libvirt-sanlock.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-sanlock +usr/share/doc/libvirt0 usr/share/doc/libvirt-sanlock diff --git a/debian/libvirt-sanlock.maintscript b/debian/libvirt-sanlock.maintscript index 72a83ea4..941edf22 100644 --- a/debian/libvirt-sanlock.maintscript +++ b/debian/libvirt-sanlock.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-sanlock libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-sanlock libvirt0 9.3.0-2~ diff --git a/debian/libvirt-sanlock.postrm b/debian/libvirt-sanlock.postrm deleted file mode 100644 index ca7580fc..00000000 --- a/debian/libvirt-sanlock.postrm +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -abort_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "abort_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we were installing from scratch or upgrading from a new enough version - # when the error occurred, then no transfer was in progress and we don't - # need to rollback any changes - if [ -z "$2" ] || dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - # If the conffile was being transferred, return it to its original location - if [ -e "$conffile.dpkg-transfer" ]; then - mv -f "$conffile.dpkg-transfer" "$conffile" - fi - - # Clean up additional state - rm -f "$conffile.dpkg-disappear" -} - -SANLOCK_TO_DAEMON_PLUGIN_SANLOCK=" - /etc/cron.weekly/libvirt-sanlock -" - -case "$1" in - abort-install|abort-upgrade) - for conf in $SANLOCK_TO_DAEMON_PLUGIN_SANLOCK; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-sanlock" \ - "libvirt-daemon-plugin-sanlock" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear|failed-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-sanlock.postrm.in b/debian/libvirt-sanlock.postrm.in deleted file mode 100644 index 0c10f1b5..00000000 --- a/debian/libvirt-sanlock.postrm.in +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `remove' -# * `purge' -# * `upgrade' -# * `disappear' -# * `failed-upgrade' -# * `abort-install' -# * `abort-install' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#ABORT_CONFFILE_TRANSFER# - -SANLOCK_TO_DAEMON_PLUGIN_SANLOCK=" - /etc/cron.weekly/libvirt-sanlock -" - -case "$1" in - abort-install|abort-upgrade) - for conf in $SANLOCK_TO_DAEMON_PLUGIN_SANLOCK; do - abort_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-sanlock" \ - "libvirt-daemon-plugin-sanlock" \ - -- \ - "$@" - done - ;; - - remove|purge|upgrade|disappear|failed-upgrade) - ;; - - *) - echo "postrm called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-sanlock.preinst b/debian/libvirt-sanlock.preinst deleted file mode 100644 index 3a69456b..00000000 --- a/debian/libvirt-sanlock.preinst +++ /dev/null @@ -1,99 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -prepare_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "prepare_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're installing from scratch or upgrading from a new enough version - # of the package, then no transfer needs to happen and we can stop here - if [ -z "$2" ] || dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - # Depending on the current state of the conffile, we need to perform different - # steps to transfer it. Moving the conffile to a different location depending - # on its current state achieves two goals: dpkg will see the conffile is no - # longer present on disk after $pkgfrom has been upgraded, and so it will no - # longer associate it with that package (not even as an obsolete conffile); - # more importanly, $pkgto's postinst, where the transfer process is completed, - # will be able to figure out the original state of the conffile and make sure - # it is restored - - if [ -e "$conffile" ]; then - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkgfrom" | grep -E "^ $conffile " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$conffile" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - if [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$conffile" - return 0 - fi - - echo "Preparing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile" "$conffile.dpkg-transfer" - return 0 - fi - - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - # If we are performing an upgrade from a version that's newer than the - # one which originally introduced the conffile ($firstver), we expect - # it to be present on disk; if that's not the case, that means that - # the admin must have explicitly deleted it and we should preserve - # this local modification - touch "$conffile.dpkg-disappear" - return 0 - fi -} - -SANLOCK_TO_DAEMON_PLUGIN_SANLOCK=" - /etc/cron.weekly/libvirt-sanlock -" - -case "$1" in - install|upgrade) - for conf in $SANLOCK_TO_DAEMON_PLUGIN_SANLOCK; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-sanlock" \ - "libvirt-daemon-plugin-sanlock" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-sanlock.preinst.in b/debian/libvirt-sanlock.preinst.in deleted file mode 100644 index 9b5f0643..00000000 --- a/debian/libvirt-sanlock.preinst.in +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/sh - -set -e - -# summary of how this script can be called: -# -# * `install' -# * `install' -# * `upgrade' -# * `abort-upgrade' -# -# for details, see https://www.debian.org/doc/debian-policy/ or -# the debian-policy package - -#PREPARE_CONFFILE_TRANSFER# - -SANLOCK_TO_DAEMON_PLUGIN_SANLOCK=" - /etc/cron.weekly/libvirt-sanlock -" - -case "$1" in - install|upgrade) - for conf in $SANLOCK_TO_DAEMON_PLUGIN_SANLOCK; do - prepare_conffile_transfer \ - "$conf" \ - "6.0.0-0~" \ - "10.6.0-2~" \ - "libvirt-sanlock" \ - "libvirt-daemon-plugin-sanlock" \ - -- \ - "$@" - done - ;; - - abort-upgrade) - ;; - - *) - echo "preinst called with unknown argument \`$1'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/libvirt-wireshark.install.in b/debian/libvirt-wireshark.install.in deleted file mode 100644 index e95a2183..00000000 --- a/debian/libvirt-wireshark.install.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/wireshark/plugins/*/epan/libvirt.so diff --git a/debian/libvirt-wireshark.links b/debian/libvirt-wireshark.links index 958a1399..d99b9d36 100644 --- a/debian/libvirt-wireshark.links +++ b/debian/libvirt-wireshark.links @@ -1 +1 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt-wireshark +usr/share/doc/libvirt0 usr/share/doc/libvirt-wireshark diff --git a/debian/libvirt-wireshark.maintscript b/debian/libvirt-wireshark.maintscript index ba814e47..b661c60c 100644 --- a/debian/libvirt-wireshark.maintscript +++ b/debian/libvirt-wireshark.maintscript @@ -1 +1 @@ -dir_to_symlink /usr/share/doc/libvirt-wireshark libvirt-common 10.6.0-2~ +dir_to_symlink /usr/share/doc/libvirt-wireshark libvirt0 9.3.0-2~ diff --git a/debian/libvirt-common.docs b/debian/libvirt0.docs similarity index 100% rename from debian/libvirt-common.docs rename to debian/libvirt0.docs diff --git a/debian/libvirt0.install b/debian/libvirt0.install index 3db95e16..8a8505f2 100644 --- a/debian/libvirt0.install +++ b/debian/libvirt0.install @@ -6,3 +6,115 @@ usr/lib/${DEB_HOST_MULTIARCH}/libvirt-qemu.so.0 usr/lib/${DEB_HOST_MULTIARCH}/libvirt-qemu.so.0.* usr/lib/${DEB_HOST_MULTIARCH}/libvirt.so.0 usr/lib/${DEB_HOST_MULTIARCH}/libvirt.so.0.* +usr/share/libvirt/cpu_map/arm_FT-2000plus.xml +usr/share/libvirt/cpu_map/arm_Falkor.xml +usr/share/libvirt/cpu_map/arm_Kunpeng-920.xml +usr/share/libvirt/cpu_map/arm_Neoverse-N1.xml +usr/share/libvirt/cpu_map/arm_Neoverse-N2.xml +usr/share/libvirt/cpu_map/arm_Neoverse-V1.xml +usr/share/libvirt/cpu_map/arm_Tengyun-S2500.xml +usr/share/libvirt/cpu_map/arm_ThunderX299xx.xml +usr/share/libvirt/cpu_map/arm_a64fx.xml +usr/share/libvirt/cpu_map/arm_cortex-a53.xml +usr/share/libvirt/cpu_map/arm_cortex-a57.xml +usr/share/libvirt/cpu_map/arm_cortex-a72.xml +usr/share/libvirt/cpu_map/arm_features.xml +usr/share/libvirt/cpu_map/arm_vendors.xml +usr/share/libvirt/cpu_map/index.xml +usr/share/libvirt/cpu_map/ppc64_POWER10.xml +usr/share/libvirt/cpu_map/ppc64_POWER6.xml +usr/share/libvirt/cpu_map/ppc64_POWER7.xml +usr/share/libvirt/cpu_map/ppc64_POWER8.xml +usr/share/libvirt/cpu_map/ppc64_POWER9.xml +usr/share/libvirt/cpu_map/ppc64_POWERPC_e5500.xml +usr/share/libvirt/cpu_map/ppc64_POWERPC_e6500.xml +usr/share/libvirt/cpu_map/ppc64_vendors.xml +usr/share/libvirt/cpu_map/x86_486.xml +usr/share/libvirt/cpu_map/x86_Broadwell-IBRS.xml +usr/share/libvirt/cpu_map/x86_Broadwell-noTSX-IBRS.xml +usr/share/libvirt/cpu_map/x86_Broadwell-noTSX.xml +usr/share/libvirt/cpu_map/x86_Broadwell.xml +usr/share/libvirt/cpu_map/x86_Cascadelake-Server-noTSX.xml +usr/share/libvirt/cpu_map/x86_Cascadelake-Server.xml +usr/share/libvirt/cpu_map/x86_Conroe.xml +usr/share/libvirt/cpu_map/x86_Cooperlake.xml +usr/share/libvirt/cpu_map/x86_Dhyana.xml +usr/share/libvirt/cpu_map/x86_EPYC-Genoa.xml +usr/share/libvirt/cpu_map/x86_EPYC-IBPB.xml +usr/share/libvirt/cpu_map/x86_EPYC-Milan.xml +usr/share/libvirt/cpu_map/x86_EPYC-Rome.xml +usr/share/libvirt/cpu_map/x86_EPYC.xml +usr/share/libvirt/cpu_map/x86_Haswell-IBRS.xml +usr/share/libvirt/cpu_map/x86_Haswell-noTSX-IBRS.xml +usr/share/libvirt/cpu_map/x86_Haswell-noTSX.xml +usr/share/libvirt/cpu_map/x86_Haswell.xml +usr/share/libvirt/cpu_map/x86_Icelake-Client-noTSX.xml +usr/share/libvirt/cpu_map/x86_Icelake-Client.xml +usr/share/libvirt/cpu_map/x86_Icelake-Server-noTSX.xml +usr/share/libvirt/cpu_map/x86_Icelake-Server.xml +usr/share/libvirt/cpu_map/x86_IvyBridge-IBRS.xml +usr/share/libvirt/cpu_map/x86_IvyBridge.xml +usr/share/libvirt/cpu_map/x86_Nehalem-IBRS.xml +usr/share/libvirt/cpu_map/x86_Nehalem.xml +usr/share/libvirt/cpu_map/x86_Opteron_G1.xml +usr/share/libvirt/cpu_map/x86_Opteron_G2.xml +usr/share/libvirt/cpu_map/x86_Opteron_G3.xml +usr/share/libvirt/cpu_map/x86_Opteron_G4.xml +usr/share/libvirt/cpu_map/x86_Opteron_G5.xml +usr/share/libvirt/cpu_map/x86_Penryn.xml +usr/share/libvirt/cpu_map/x86_SandyBridge-IBRS.xml +usr/share/libvirt/cpu_map/x86_SandyBridge.xml +usr/share/libvirt/cpu_map/x86_SapphireRapids.xml +usr/share/libvirt/cpu_map/x86_Skylake-Client-IBRS.xml +usr/share/libvirt/cpu_map/x86_Skylake-Client-noTSX-IBRS.xml +usr/share/libvirt/cpu_map/x86_Skylake-Client.xml +usr/share/libvirt/cpu_map/x86_Skylake-Server-IBRS.xml +usr/share/libvirt/cpu_map/x86_Skylake-Server-noTSX-IBRS.xml +usr/share/libvirt/cpu_map/x86_Skylake-Server.xml +usr/share/libvirt/cpu_map/x86_Snowridge.xml +usr/share/libvirt/cpu_map/x86_Westmere-IBRS.xml +usr/share/libvirt/cpu_map/x86_Westmere.xml +usr/share/libvirt/cpu_map/x86_athlon.xml +usr/share/libvirt/cpu_map/x86_core2duo.xml +usr/share/libvirt/cpu_map/x86_coreduo.xml +usr/share/libvirt/cpu_map/x86_cpu64-rhel5.xml +usr/share/libvirt/cpu_map/x86_cpu64-rhel6.xml +usr/share/libvirt/cpu_map/x86_features.xml +usr/share/libvirt/cpu_map/x86_kvm32.xml +usr/share/libvirt/cpu_map/x86_kvm64.xml +usr/share/libvirt/cpu_map/x86_n270.xml +usr/share/libvirt/cpu_map/x86_pentium.xml +usr/share/libvirt/cpu_map/x86_pentium2.xml +usr/share/libvirt/cpu_map/x86_pentium3.xml +usr/share/libvirt/cpu_map/x86_pentiumpro.xml +usr/share/libvirt/cpu_map/x86_phenom.xml +usr/share/libvirt/cpu_map/x86_qemu32.xml +usr/share/libvirt/cpu_map/x86_qemu64.xml +usr/share/libvirt/cpu_map/x86_vendors.xml +usr/share/libvirt/schemas/basictypes.rng +usr/share/libvirt/schemas/capability.rng +usr/share/libvirt/schemas/cpu.rng +usr/share/libvirt/schemas/cputypes.rng +usr/share/libvirt/schemas/domain.rng +usr/share/libvirt/schemas/domainbackup.rng +usr/share/libvirt/schemas/domaincaps.rng +usr/share/libvirt/schemas/domaincheckpoint.rng +usr/share/libvirt/schemas/domaincommon.rng +usr/share/libvirt/schemas/domainoverrides.rng +usr/share/libvirt/schemas/domainsnapshot.rng +usr/share/libvirt/schemas/inactiveDomain.rng +usr/share/libvirt/schemas/interface.rng +usr/share/libvirt/schemas/network.rng +usr/share/libvirt/schemas/networkcommon.rng +usr/share/libvirt/schemas/networkport.rng +usr/share/libvirt/schemas/nodedev.rng +usr/share/libvirt/schemas/nwfilter.rng +usr/share/libvirt/schemas/nwfilter_params.rng +usr/share/libvirt/schemas/nwfilterbinding.rng +usr/share/libvirt/schemas/privatedata.rng +usr/share/libvirt/schemas/secret.rng +usr/share/libvirt/schemas/storagecommon.rng +usr/share/libvirt/schemas/storagepool.rng +usr/share/libvirt/schemas/storagepoolcaps.rng +usr/share/libvirt/schemas/storagevol.rng +usr/share/libvirt/test-screenshot.png diff --git a/debian/libvirt0.install.in b/debian/libvirt0.install.in deleted file mode 100644 index 3db95e16..00000000 --- a/debian/libvirt0.install.in +++ /dev/null @@ -1,8 +0,0 @@ -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-admin.so.0 -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-admin.so.0.* -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-lxc.so.0 -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-lxc.so.0.* -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-qemu.so.0 -usr/lib/${DEB_HOST_MULTIARCH}/libvirt-qemu.so.0.* -usr/lib/${DEB_HOST_MULTIARCH}/libvirt.so.0 -usr/lib/${DEB_HOST_MULTIARCH}/libvirt.so.0.* diff --git a/debian/libvirt0.links b/debian/libvirt0.links deleted file mode 100644 index 000d5469..00000000 --- a/debian/libvirt0.links +++ /dev/null @@ -1 +0,0 @@ -usr/share/doc/libvirt-common usr/share/doc/libvirt0 diff --git a/debian/libvirt0.maintscript b/debian/libvirt0.maintscript deleted file mode 100644 index 28a888f7..00000000 --- a/debian/libvirt0.maintscript +++ /dev/null @@ -1 +0,0 @@ -dir_to_symlink /usr/share/doc/libvirt0 libvirt-common 10.6.0-2~ diff --git a/debian/libvirt0.symbols b/debian/libvirt0.symbols index 1b440678..993f0537 100644 --- a/debian/libvirt0.symbols +++ b/debian/libvirt0.symbols @@ -99,9 +99,7 @@ libvirt.so.0 libvirt0 #MINVER# *@LIBVIRT_8.5.0 8.5.0 *@LIBVIRT_9.0.0 9.0.0 *@LIBVIRT_9.7.0 9.7.0 - *@LIBVIRT_10.1.0 10.1.0 - *@LIBVIRT_10.2.0 10.2.0 - *@LIBVIRT_PRIVATE_10.7.0 10.7.0 + *@LIBVIRT_PRIVATE_9.10.0 9.10.0 libvirt-qemu.so.0 libvirt0 #MINVER# *@LIBVIRT_QEMU_0.8.3 0.8.3 @@ -119,4 +117,4 @@ libvirt-admin.so.0 libvirt0 #MINVER# *@LIBVIRT_ADMIN_2.0.0 2.0.0~rc1 *@LIBVIRT_ADMIN_3.0.0 3.0.0 *@LIBVIRT_ADMIN_8.6.0 8.9.0 - *@LIBVIRT_ADMIN_PRIVATE_10.7.0 10.7.0 + *@LIBVIRT_ADMIN_PRIVATE_9.10.0 9.10.0 diff --git a/debian/not-installed b/debian/not-installed index 1bb4a05b..134409bf 100644 --- a/debian/not-installed +++ b/debian/not-installed @@ -70,7 +70,6 @@ usr/lib/systemd/system/virtxend-admin.socket usr/lib/systemd/system/virtxend-ro.socket usr/lib/systemd/system/virtxend.service usr/lib/systemd/system/virtxend.socket -usr/lib/sysusers.d/libvirt-qemu.conf usr/sbin/virtinterfaced usr/sbin/virtlxcd usr/sbin/virtnetworkd diff --git a/debian/patches/add-custom-policy-for-deepin.patch b/debian/patches/add-custom-policy-for-deepin.patch deleted file mode 100644 index 9fb80333..00000000 --- a/debian/patches/add-custom-policy-for-deepin.patch +++ /dev/null @@ -1,28 +0,0 @@ -Index: deepin-libvirt/src/remote/libvirtd.policy -=================================================================== ---- deepin-libvirt.orig/src/remote/libvirtd.policy -+++ deepin-libvirt/src/remote/libvirtd.policy -@@ -28,6 +28,11 @@ License along with this library. If not - - Monitor local virtualized systems - System policy prevents monitoring of local virtualized systems -+ 打开虚拟机需要管理员权限 -+ 啟動虛擬機需要管理員權限 -+ 啟動虛擬機需要管理員權限 -+ 仮想マシンを起動するには管理者権限が必要です -+ Lancer une machine virtuelle nécessite des privilèges administrateur - - -@@ -40,6 +45,11 @@ License along with this library. If not - - Manage local virtualized systems - System policy prevents management of local virtualized systems -+ 打开虚拟机需要管理员权限 -+ 啟動虛擬機需要管理員權限 -+ 啟動虛擬機需要管理員權限 -+ 仮想マシンを起動するには管理者権限が必要です -+ Lancer une machine virtuelle nécessite des privilèges administrateur - - diff --git a/debian/patches/backport/apparmor-Don-t-check-for-existence-of-templates-upfront.patch b/debian/patches/backport/apparmor-Don-t-check-for-existence-of-templates-upfront.patch deleted file mode 100644 index b40eb60b..00000000 --- a/debian/patches/backport/apparmor-Don-t-check-for-existence-of-templates-upfront.patch +++ /dev/null @@ -1,69 +0,0 @@ -From: Andrea Bolognani -Date: Mon, 16 Sep 2024 16:39:11 +0200 -Subject: apparmor: Don't check for existence of templates upfront -MIME-Version: 1.0 -Content-Type: text/plain; charset="utf-8" -Content-Transfer-Encoding: 8bit - -Currently, if either template is missing AppArmor support is -completely disabled. This means that uninstalling the LXC -driver from a system results in QEMU domains being started -without AppArmor confinement, which obviously doesn't make any -sense. - -The problematic scenario was impossible to hit in Debian until -very recently, because all AppArmor files were shipped as part -of the same package; now that the Debian package is much closer -to the Fedora one, and specifically ships the AppArmor files -together with the corresponding driver, it becomes trivial to -trigger it. - -Drop the checks entirely. virt-aa-helper, which is responsible -for creating the per-domain profiles starting from the -driver-specific template, already fails if the latter is not -present, so they were always redundant. - -https://bugs.debian.org/1081396 - -Signed-off-by: Andrea Bolognani -Reviewed-by: Daniel P. Berrangé -(cherry picked from commit d622ca04f6525b90cfe6d8274efaf4bee043d8ba) - -Forwarded: not-needed -Origin: https://gitlab.com/libvirt/libvirt/-/commit/d622ca04f6525b90cfe6d8274efaf4bee043d8ba ---- - src/security/security_apparmor.c | 18 ------------------ - 1 file changed, 18 deletions(-) - -diff --git a/src/security/security_apparmor.c b/src/security/security_apparmor.c -index 27184ae..a62ec1b 100644 ---- a/src/security/security_apparmor.c -+++ b/src/security/security_apparmor.c -@@ -318,27 +318,9 @@ AppArmorSetSecurityHostLabel(virSCSIVHostDevice *dev G_GNUC_UNUSED, - static virSecurityDriverStatus - AppArmorSecurityManagerProbe(const char *virtDriver G_GNUC_UNUSED) - { -- g_autofree char *template_qemu = NULL; -- g_autofree char *template_lxc = NULL; -- - if (use_apparmor() < 0) - return SECURITY_DRIVER_DISABLE; - -- /* see if template file exists */ -- template_qemu = g_strdup_printf("%s/TEMPLATE.qemu", APPARMOR_DIR "/libvirt"); -- template_lxc = g_strdup_printf("%s/TEMPLATE.lxc", APPARMOR_DIR "/libvirt"); -- -- if (!virFileExists(template_qemu)) { -- virReportError(VIR_ERR_INTERNAL_ERROR, -- _("template \'%1$s\' does not exist"), template_qemu); -- return SECURITY_DRIVER_DISABLE; -- } -- if (!virFileExists(template_lxc)) { -- virReportError(VIR_ERR_INTERNAL_ERROR, -- _("template \'%1$s\' does not exist"), template_lxc); -- return SECURITY_DRIVER_DISABLE; -- } -- - return SECURITY_DRIVER_ENABLE; - } - diff --git a/debian/patches/debian/Debianize-libvirt-guests.patch b/debian/patches/debian/Debianize-libvirt-guests.patch index e85f6400..5060dd11 100644 --- a/debian/patches/debian/Debianize-libvirt-guests.patch +++ b/debian/patches/debian/Debianize-libvirt-guests.patch @@ -9,7 +9,7 @@ Forwarded: not-needed 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/docs/manpages/libvirt-guests.rst b/docs/manpages/libvirt-guests.rst -index 42dae28..69bc270 100644 +index f27eaad..62b279c 100644 --- a/docs/manpages/libvirt-guests.rst +++ b/docs/manpages/libvirt-guests.rst @@ -51,7 +51,7 @@ The following variables are supported: @@ -31,7 +31,7 @@ index 42dae28..69bc270 100644 Action taken on host shutdown diff --git a/tools/libvirt-guests.sh.in b/tools/libvirt-guests.sh.in -index c3c5954..e2a3744 100644 +index 344b543..9ea221c 100644 --- a/tools/libvirt-guests.sh.in +++ b/tools/libvirt-guests.sh.in @@ -20,19 +20,19 @@ sysconfdir="@sysconfdir@" @@ -60,7 +60,7 @@ index c3c5954..e2a3744 100644 SHUTDOWN_TIMEOUT=300 PARALLEL_SHUTDOWN=0 START_DELAY=0 -@@ -44,7 +44,7 @@ test -f "$initconfdir"/libvirt-guests && +@@ -43,7 +43,7 @@ test -f "$initconfdir"/libvirt-guests && . "$initconfdir"/libvirt-guests LISTFILE="$localstatedir"/lib/libvirt/libvirt-guests @@ -69,7 +69,7 @@ index c3c5954..e2a3744 100644 RETVAL=0 -@@ -585,8 +585,7 @@ gueststatus() { +@@ -562,8 +562,7 @@ gueststatus() { # rh_status # Display current status: whether saved state exists, and whether start diff --git a/debian/patches/debian/Use-sensible-editor-by-default.patch b/debian/patches/debian/Use-sensible-editor-by-default.patch index 8afaf2ab..3e4e6e6c 100644 --- a/debian/patches/debian/Use-sensible-editor-by-default.patch +++ b/debian/patches/debian/Use-sensible-editor-by-default.patch @@ -10,10 +10,10 @@ Forwarded: not-needed 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/vsh.c b/tools/vsh.c -index 5f5e2f2..367bc66 100644 +index 65deaa7..c04d8ee 100644 --- a/tools/vsh.c +++ b/tools/vsh.c -@@ -2557,7 +2557,7 @@ vshEditWriteToTempFile(vshControl *ctl, const char *doc) +@@ -2444,7 +2444,7 @@ vshEditWriteToTempFile(vshControl *ctl, const char *doc) /* Hard-code default editor used as a fallback if not configured by * VISUAL or EDITOR environment variables. */ diff --git a/debian/patches/debian/apparmor_profiles_local_include.patch b/debian/patches/debian/apparmor_profiles_local_include.patch index 1e825ce0..f5f2e388 100644 --- a/debian/patches/debian/apparmor_profiles_local_include.patch +++ b/debian/patches/debian/apparmor_profiles_local_include.patch @@ -27,10 +27,10 @@ index ffe4d8f..2973b00 100644 + include if exists @END_APPARMOR_3@ diff --git a/src/security/apparmor/libvirt-qemu.in b/src/security/apparmor/libvirt-qemu.in -index 8f17256..5eb649b 100644 +index 53f45c3..b5433ea 100644 --- a/src/security/apparmor/libvirt-qemu.in +++ b/src/security/apparmor/libvirt-qemu.in -@@ -279,4 +279,11 @@ +@@ -274,4 +274,11 @@ @BEGIN_APPARMOR_3@ include if exists diff --git a/debian/patches/deepin/0001-conf-qemu-add-libvirt-support-reuse-id-for-hygon-CSV.patch b/debian/patches/deepin/0001-conf-qemu-add-libvirt-support-reuse-id-for-hygon-CSV.patch deleted file mode 100644 index b64fe737..00000000 --- a/debian/patches/deepin/0001-conf-qemu-add-libvirt-support-reuse-id-for-hygon-CSV.patch +++ /dev/null @@ -1,89 +0,0 @@ -From cf8e84ea441c402eb8ed07baaa54aae2ccd9f80e Mon Sep 17 00:00:00 2001 -From: panpingsheng -Date: Fri, 8 Sep 2023 15:04:44 +0800 -Subject: [PATCH 1/2] conf: qemu: add libvirt support reuse id for hygon CSV - -csv xml format: - - 0x0081 - 47 - 5 - usertest - - -Signed-off-by: panpingsheng -Signed-off-by: Xin Jiang -Signed-off-by: hanliyang ---- - src/conf/domain_conf.c | 5 +++++ - src/conf/domain_conf.h | 1 + - src/qemu/qemu_command.c | 4 ++++ - 3 files changed, 10 insertions(+) - -diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c -index 5f0b35be..e32b16d5 100644 ---- a/src/conf/domain_conf.c -+++ b/src/conf/domain_conf.c -@@ -3858,6 +3858,7 @@ virDomainSecDefFree(virDomainSecDef *def) - case VIR_DOMAIN_LAUNCH_SECURITY_SEV: - g_free(def->data.sev.dh_cert); - g_free(def->data.sev.session); -+ g_free(def->data.sev.user_id); - break; - case VIR_DOMAIN_LAUNCH_SECURITY_SEV_SNP: - g_free(def->data.sev_snp.guest_visible_workarounds); -@@ -13745,6 +13746,7 @@ virDomainSEVDefParseXML(virDomainSEVDef *def, - - def->dh_cert = virXPathString("string(./dhCert)", ctxt); - def->session = virXPathString("string(./session)", ctxt); -+ def->user_id = virXPathString("string(./userid)", ctxt); - - return 0; - } -@@ -26906,6 +26908,9 @@ virDomainSEVDefFormat(virBuffer *attrBuf, - virBufferAsprintf(childBuf, "0x%04x\n", def->policy); - virBufferEscapeString(childBuf, "%s\n", def->dh_cert); - virBufferEscapeString(childBuf, "%s\n", def->session); -+ -+ if (def->user_id) -+ virBufferEscapeString(childBuf, "%s\n", def->user_id); - } - - -diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h -index 659299bd..6de7a754 100644 ---- a/src/conf/domain_conf.h -+++ b/src/conf/domain_conf.h -@@ -2889,6 +2889,7 @@ struct _virDomainSEVDef { - char *dh_cert; - char *session; - unsigned int policy; -+ char *user_id; - }; - - -diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c -index 1b992d8e..cc550a49 100644 ---- a/src/qemu/qemu_command.c -+++ b/src/qemu/qemu_command.c -@@ -9755,6 +9755,9 @@ qemuBuildSEVCommandLine(virDomainObj *vm, virCommand *cmd, - VIR_DEBUG("policy=0x%x cbitpos=%d reduced_phys_bits=%d", - sev->policy, sev->common.cbitpos, sev->common.reduced_phys_bits); - -+ if (sev->user_id) -+ VIR_DEBUG("user_id=%s", sev->user_id); -+ - if (sev->dh_cert) - dhpath = g_strdup_printf("%s/dh_cert.base64", priv->libDir); - -@@ -9768,6 +9771,7 @@ qemuBuildSEVCommandLine(virDomainObj *vm, virCommand *cmd, - "S:dh-cert-file", dhpath, - "S:session-file", sessionpath, - "T:kernel-hashes", sev->common.kernel_hashes, -+ "S:user-id", sev->user_id, - NULL) < 0) - return -1; - --- -2.25.1 - diff --git a/debian/patches/deepin/0002-conf-qemu-support-provide-inject-secret-for-Hygon-CS.patch b/debian/patches/deepin/0002-conf-qemu-support-provide-inject-secret-for-Hygon-CS.patch deleted file mode 100644 index cb53f111..00000000 --- a/debian/patches/deepin/0002-conf-qemu-support-provide-inject-secret-for-Hygon-CS.patch +++ /dev/null @@ -1,129 +0,0 @@ -From a69deb39b5338a06d59ae89b993d2689b13ce350 Mon Sep 17 00:00:00 2001 -From: hanliyang -Date: Wed, 13 Nov 2024 16:12:57 +0800 -Subject: [PATCH 2/2] conf: qemu: support provide inject secret for Hygon CSV - -csv xml format: - - 0x0001 - 47 - 5 - U2FsdGVkX1+rW6B/JbYqNA== - 5aeG4mH2E/OqN1a3uT8hfg== - gW3E30rG/I3L1nD/YfG+DA== - zP1oY9W7ZcPFtL0QeN11vQ== - - -Signed-off-by: hanliyang ---- - src/conf/domain_conf.c | 8 ++++++++ - src/conf/domain_conf.h | 2 ++ - src/qemu/qemu_command.c | 10 ++++++++++ - src/qemu/qemu_process.c | 10 ++++++++++ - 4 files changed, 30 insertions(+) - -diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c -index e32b16d5..b14fc3f3 100644 ---- a/src/conf/domain_conf.c -+++ b/src/conf/domain_conf.c -@@ -3859,6 +3859,8 @@ virDomainSecDefFree(virDomainSecDef *def) - g_free(def->data.sev.dh_cert); - g_free(def->data.sev.session); - g_free(def->data.sev.user_id); -+ g_free(def->data.sev.secret_header); -+ g_free(def->data.sev.secret); - break; - case VIR_DOMAIN_LAUNCH_SECURITY_SEV_SNP: - g_free(def->data.sev_snp.guest_visible_workarounds); -@@ -13747,6 +13749,8 @@ virDomainSEVDefParseXML(virDomainSEVDef *def, - def->dh_cert = virXPathString("string(./dhCert)", ctxt); - def->session = virXPathString("string(./session)", ctxt); - def->user_id = virXPathString("string(./userid)", ctxt); -+ def->secret_header = virXPathString("string(./secretHeader)", ctxt); -+ def->secret = virXPathString("string(./secret)", ctxt); - - return 0; - } -@@ -26911,6 +26915,10 @@ virDomainSEVDefFormat(virBuffer *attrBuf, - - if (def->user_id) - virBufferEscapeString(childBuf, "%s\n", def->user_id); -+ if (def->secret_header) -+ virBufferEscapeString(childBuf, "%s\n", def->secret_header); -+ if (def->secret) -+ virBufferEscapeString(childBuf, "%s\n", def->secret); - } - - -diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h -index 6de7a754..439429db 100644 ---- a/src/conf/domain_conf.h -+++ b/src/conf/domain_conf.h -@@ -2890,6 +2890,8 @@ struct _virDomainSEVDef { - char *session; - unsigned int policy; - char *user_id; -+ char *secret_header; -+ char *secret; - }; - - -diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c -index cc550a49..8d4016a5 100644 ---- a/src/qemu/qemu_command.c -+++ b/src/qemu/qemu_command.c -@@ -9751,6 +9751,8 @@ qemuBuildSEVCommandLine(virDomainObj *vm, virCommand *cmd, - qemuDomainObjPrivate *priv = vm->privateData; - g_autofree char *dhpath = NULL; - g_autofree char *sessionpath = NULL; -+ g_autofree char *secretheaderpath = NULL; -+ g_autofree char *secretpath = NULL; - - VIR_DEBUG("policy=0x%x cbitpos=%d reduced_phys_bits=%d", - sev->policy, sev->common.cbitpos, sev->common.reduced_phys_bits); -@@ -9764,6 +9766,12 @@ qemuBuildSEVCommandLine(virDomainObj *vm, virCommand *cmd, - if (sev->session) - sessionpath = g_strdup_printf("%s/session.base64", priv->libDir); - -+ if (sev->secret_header) -+ secretheaderpath = g_strdup_printf("%s/secret_header.base64", priv->libDir); -+ -+ if (sev->secret) -+ secretpath = g_strdup_printf("%s/secret.base64", priv->libDir); -+ - if (qemuMonitorCreateObjectProps(&props, "sev-guest", "lsec0", - "u:cbitpos", sev->common.cbitpos, - "u:reduced-phys-bits", sev->common.reduced_phys_bits, -@@ -9772,6 +9780,8 @@ qemuBuildSEVCommandLine(virDomainObj *vm, virCommand *cmd, - "S:session-file", sessionpath, - "T:kernel-hashes", sev->common.kernel_hashes, - "S:user-id", sev->user_id, -+ "S:secret-header-file", secretheaderpath, -+ "S:secret-file", secretpath, - NULL) < 0) - return -1; - -diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c -index 242c9328..d29839c5 100644 ---- a/src/qemu/qemu_process.c -+++ b/src/qemu/qemu_process.c -@@ -6812,6 +6812,16 @@ qemuProcessPrepareSEVGuestInput(virDomainObj *vm) - return -1; - } - -+ if (sev->secret_header) { -+ if (qemuProcessSEVCreateFile(vm, "secret_header", sev->secret_header) < 0) -+ return -1; -+ } -+ -+ if (sev->secret) { -+ if (qemuProcessSEVCreateFile(vm, "secret", sev->secret) < 0) -+ return -1; -+ } -+ - return 0; - } - --- -2.25.1 - diff --git a/debian/patches/forward/Reduce-udevadm-settle-timeout-to-10-seconds.patch b/debian/patches/forward/Reduce-udevadm-settle-timeout-to-10-seconds.patch index f43c1f4d..21b97ea0 100644 --- a/debian/patches/forward/Reduce-udevadm-settle-timeout-to-10-seconds.patch +++ b/debian/patches/forward/Reduce-udevadm-settle-timeout-to-10-seconds.patch @@ -10,10 +10,10 @@ Closes: #663931 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/util/virutil.c b/src/util/virutil.c -index dc5009f..a3b5619 100644 +index c90d0be..325051e 100644 --- a/src/util/virutil.c +++ b/src/util/virutil.c -@@ -1322,7 +1322,7 @@ void virWaitForDevices(void) +@@ -1250,7 +1250,7 @@ void virWaitForDevices(void) if (!(udev = virFindFileInPath(UDEVADM))) return; diff --git a/debian/patches/series b/debian/patches/series index a8c47b07..35c54d4c 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,8 +1,4 @@ -add-custom-policy-for-deepin.patch -backport/apparmor-Don-t-check-for-existence-of-templates-upfront.patch forward/Reduce-udevadm-settle-timeout-to-10-seconds.patch debian/Debianize-libvirt-guests.patch debian/apparmor_profiles_local_include.patch debian/Use-sensible-editor-by-default.patch -deepin/0001-conf-qemu-add-libvirt-support-reuse-id-for-hygon-CSV.patch -deepin/0002-conf-qemu-support-provide-inject-secret-for-Hygon-CS.patch diff --git a/debian/po/POTFILES.in b/debian/po/POTFILES.in index ff684855..6187dce4 100644 --- a/debian/po/POTFILES.in +++ b/debian/po/POTFILES.in @@ -1 +1 @@ -[type: gettext/rfc822deb] libvirt-daemon-driver-qemu.templates +[type: gettext/rfc822deb] libvirt-daemon-system.templates diff --git a/debian/po/da.po b/debian/po/da.po index 97efa1bf..a31bd242 100644 --- a/debian/po/da.po +++ b/debian/po/da.po @@ -18,13 +18,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "Fortsæt med ukorrekte libvirt-qemu user/group id'er?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -37,7 +37,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -49,7 +49,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -59,7 +59,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/de.po b/debian/po/de.po index bd2dd1e6..b3916cab 100644 --- a/debian/po/de.po +++ b/debian/po/de.po @@ -19,7 +19,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "" "Mit falscher libvirt-qemu Benutzer- bzw. Gruppen-Kennung (UID/GID) " @@ -27,7 +27,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -40,7 +40,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -52,7 +52,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -62,7 +62,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/es.po b/debian/po/es.po index 8b07c972..c75d06d5 100644 --- a/debian/po/es.po +++ b/debian/po/es.po @@ -40,13 +40,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "¿Continuar con ID(s) de usuario/grupo incorrectos de libvirt-qemu?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -58,7 +58,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -72,7 +72,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -83,7 +83,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/fr.po b/debian/po/fr.po index 7ace08eb..da62940c 100644 --- a/debian/po/fr.po +++ b/debian/po/fr.po @@ -21,7 +21,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "" "Faut-il continuer avec un identifiant d'utilisateur ou de groupe pour " @@ -29,7 +29,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -42,7 +42,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -54,7 +54,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -64,7 +64,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/it.po b/debian/po/it.po index d50151dd..a67c8754 100644 --- a/debian/po/it.po +++ b/debian/po/it.po @@ -18,13 +18,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "Proseguire con ID utente/gruppo libvirt-qemu errati?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -36,7 +36,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -48,7 +48,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -58,7 +58,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/nl.po b/debian/po/nl.po index 1c7cf332..db3cee69 100644 --- a/debian/po/nl.po +++ b/debian/po/nl.po @@ -21,13 +21,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "Verdergaan met foutieve gebruikers-/groeps-ID(s) voor libvirt-qemu?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -40,7 +40,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -52,7 +52,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -62,7 +62,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/pt.po b/debian/po/pt.po index 52434055..4d0ee6eb 100644 --- a/debian/po/pt.po +++ b/debian/po/pt.po @@ -19,13 +19,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "Continuar com o ID(s) de libvirt-qemu user/group incorrecto(s)?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -38,7 +38,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -50,7 +50,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -60,7 +60,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/pt_BR.po b/debian/po/pt_BR.po index fca4baab..aab5ac68 100644 --- a/debian/po/pt_BR.po +++ b/debian/po/pt_BR.po @@ -19,13 +19,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "Continuar com ID(s) incorreto(s) de usuário/grupo do libvirt-qemu?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -37,7 +37,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -49,7 +49,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -59,7 +59,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/ro.po b/debian/po/ro.po index 1c82fcc0..e1ac40d4 100644 --- a/debian/po/ro.po +++ b/debian/po/ro.po @@ -28,14 +28,14 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "" "Continuați cu un identificator de utilizator/grup „libvirt-qemu” incorect?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -48,7 +48,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -61,7 +61,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -71,7 +71,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/ru.po b/debian/po/ru.po index 62c2d1b7..666b17fd 100644 --- a/debian/po/ru.po +++ b/debian/po/ru.po @@ -20,13 +20,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "Продолжить с неправильными идентификаторами пользователя/группы для libvirt-qemu?" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -38,7 +38,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -50,7 +50,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -60,7 +60,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/po/templates.pot b/debian/po/templates.pot index ebd2d029..e9e99bae 100644 --- a/debian/po/templates.pot +++ b/debian/po/templates.pot @@ -19,13 +19,13 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "Continue with incorrect libvirt-qemu user/group ID(s)?" msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The user/group ID (uid/gid) allocated for libvirt-qemu (64055)\n" " seems to be taken by another user/group, thus it is not possible\n" @@ -34,7 +34,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " The migration of guests with disk image files shared over NFS\n" " requires a static libvirt-qemu user and group ID (uid and gid)\n" @@ -43,7 +43,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " If guest migration over NFS is not required, you can continue\n" " the installation." @@ -51,7 +51,7 @@ msgstr "" #. Type: boolean #. Description -#: ../libvirt-daemon-driver-qemu.templates:1001 +#: ../libvirt-daemon-system.templates:1001 msgid "" " In order to resolve this problem, do not continue the installation,\n" " release the 64055 uid/gid (which might involve permission changes),\n" diff --git a/debian/rules b/debian/rules index f3dd31de..b1be6d23 100755 --- a/debian/rules +++ b/debian/rules @@ -16,7 +16,15 @@ include /usr/share/dpkg/default.mk DPKG_GENSYMBOLS_CHECK_LEVEL = 4 export DPKG_GENSYMBOLS_CHECK_LEVEL -include debian/arches.mk +ARCHES_CEPH = amd64 arm64 mips64el ppc64el riscv64 s390x +ARCHES_GLUSTER = amd64 arm64 ia64 mips64el ppc64 ppc64el riscv64 s390x sparc64 +ARCHES_QEMU = amd64 arm64 armel armhf i386 mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sparc64 x32 +ARCHES_LXC = alpha amd64 arm64 armel armhf hppa i386 m68k mips64el mipsel powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64 x32 +ARCHES_XEN = amd64 arm64 armhf +ARCHES_VBOX = amd64 i386 + +# Keep this list empty until we have AppArmor support +ARCHES_NBDKIT = ifeq ($(DEB_HOST_ARCH_OS), linux) WITH_DAEMONS = -Ddriver_libvirtd=enabled -Dhost_validate=enabled @@ -36,7 +44,7 @@ ifeq ($(DEB_HOST_ARCH_OS), linux) WITH_UDEV = -Dudev=enabled -Dpciaccess=enabled WITH_CAPNG = -Dcapng=enabled WITH_LIBNL = -Dlibnl=enabled - WITH_NETWORK = -Ddriver_network=enabled -Dfirewall_backend_priority=iptables,nftables + WITH_NETWORK = -Ddriver_network=enabled WITH_INTERFACE = -Ddriver_interface=enabled WITH_SECRETS = -Ddriver_secrets=enabled WITH_OPENVZ = -Ddriver_openvz=enabled @@ -53,7 +61,7 @@ ifeq ($(DEB_HOST_ARCH_OS), linux) WITH_NSS_PLUGIN = -Dnss=enabled WITH_DTRACE = -Ddtrace=enabled WITH_NUMA = -Dnumactl=enabled -Dnumad=enabled - WITH_SYSCTL = -Dsysctl_config=enabled -Duserfaultfd_sysctl=enabled + WITH_SYSCTL = -Dsysctl_config=enabled WITH_WIRESHARK = -Dwireshark_dissector=enabled else WITH_DAEMONS = -Ddriver_libvirtd=disabled -Dhost_validate=disabled @@ -73,7 +81,7 @@ else WITH_UDEV = -Dudev=disabled -Dpciaccess=disabled WITH_CAPNG = -Dcapng=disabled WITH_LIBNL = -Dlibnl=disabled - WITH_NETWORK = -Ddriver_network=disabled -Dfirewall_backend_priority=iptables,nftables + WITH_NETWORK = -Ddriver_network=disabled WITH_INTERFACE = -Ddriver_interface=disabled WITH_SECRETS = -Ddriver_secrets=disabled WITH_OPENVZ = -Ddriver_openvz=disabled @@ -90,7 +98,7 @@ else WITH_NSS_PLUGIN = -Dnss=disabled WITH_DTRACE = -Ddtrace=disabled WITH_NUMA = -Dnumactl=disabled -Dnumad=disabled - WITH_SYSCTL = -Dsysctl_config=disabled -Duserfaultfd_sysctl=disabled + WITH_SYSCTL = -Dsysctl_config=disabled WITH_WIRESHARK = -Dwireshark_dissector=disabled endif @@ -127,26 +135,21 @@ else WITH_VBOX = -Ddriver_vbox=disabled endif ifneq (,$(filter $(DEB_HOST_ARCH), $(ARCHES_NBDKIT))) - WITH_NBDKIT = -Dnbdkit=enabled -Dnbdkit_config_default=enabled + WITH_NBDKIT = -Dnbdkit=enabled else - WITH_NBDKIT = -Dnbdkit=disabled -Dnbdkit_config_default=disabled + WITH_NBDKIT = -Dnbdkit=disabled endif DEB_CONFIGURE_EXTRA_ARGS := \ --libexecdir=/usr/lib/libvirt \ -Drunstatedir=/run \ -Dinitconfdir=/etc/default \ - -Dsshconfdir=/etc/ssh/ssh_config.d \ - -Dunitdir=/usr/lib/systemd/system \ - -Dsysusersdir=/usr/lib/sysusers.d \ - -Dno_git=true \ -Dpackager="$(DEB_VENDOR)" \ -Dpackager_version="$(DEB_VERSION)" \ $(WITH_DAEMONS) \ $(WITH_QEMU) \ -Ddriver_remote=enabled \ -Dremote_default_mode=legacy \ - -Dssh_proxy=disabled \ -Ddriver_test=enabled \ -Ddriver_ch=disabled \ -Ddriver_bhyve=disabled \ @@ -216,8 +219,57 @@ DEB_CONFIGURE_EXTRA_ARGS := \ -Dpm_utils=disabled \ $(NULL) +# Those have to stay up through upgrades to avoid interruptions +LIBVIRT_UNITS = \ + virtlogd.service \ + virtlockd.service \ + libvirt-guests.service \ + libvirtd.socket \ + libvirtd-ro.socket \ + libvirtd-admin.socket \ + virtlogd.socket \ + virtlogd-admin.socket \ + virtlockd.socket \ + virtlockd-admin.socket \ + $(NULL) + +APPARMOR_ABSTRACTIONS = \ + libvirt-lxc \ + libvirt-qemu \ + $(NULL) + +APPARMOR_TEMPLATES = \ + TEMPLATE.lxc \ + TEMPLATE.qemu \ + $(NULL) + +APPARMOR_SERVICES = \ + usr.lib.libvirt.virt-aa-helper \ + usr.sbin.libvirtd \ + $(NULL) + +NSS_PLUGINS = \ + libvirt \ + libvirt_guest \ + $(NULL) + +SYSTEMTAP_TAPSETS = \ + libvirt_functions \ + libvirt_probes \ + $(NULL) + +ifneq (,$(filter $(DEB_HOST_ARCH), $(ARCHES_QEMU))) + SYSTEMTAP_TAPSETS += \ + libvirt_qemu_probes \ + $(NULL) +endif + + DEB_BUILDDIR := $(CURDIR)/debian/build DEB_DESTDIR := $(CURDIR)/debian/tmp +SRV_MONOLITHIC = libvirt-guests virtlogd virtlockd libvirtd libvirtd-tcp libvirtd-tls virt-guest-shutdown +# For split daemons later, as of 6.0 the remaining elments are +#SRV_SPLIT = virtnwfilterd virtinterfaced virtlxcd virtnetworkd virtnodedevd virtproxyd virtqemud virtsecretd virtstoraged virtvboxd virtxend virtproxyd-tcp virtproxyd-tls %: dh $@ --builddirectory=$(DEB_BUILDDIR) @@ -228,16 +280,10 @@ override_dh_auto_configure: # The default timeout for tests in Meson is 30s, which is not enough # for architectures with slow buildds: make the timeout 10 times # larger (5m) to account for those -# -# Additionally, disable the syntax-check tests, as failures there don't -# indicate functional issues, plus they get tripped up by the fact that -# there are additional files in debian/ that they don't expect override_dh_auto_test: export LD_PRELOAD=""; \ export VIR_TEST_DEBUG=1; \ - if ! dh_auto_test -- --timeout-multiplier 10 \ - --no-suite syntax-check; \ - then \ + if ! dh_auto_test -- --timeout-multiplier 10; then \ cat $(DEB_BUILDDIR)/meson-logs/testlog.txt; \ exit 1; \ fi @@ -249,33 +295,22 @@ override_dh_auto_test: # to perform such operations execute_after_dh_auto_install: ifeq ($(DEB_HOST_ARCH_OS), linux) + # Move upstream files where dh_* can find them + mv $(DEB_DESTDIR)/usr/lib/sysctl.d/ \ + $(DEB_DESTDIR)/usr/share/doc/libvirt/examples/sysctl; + # Disable network autostart rm -rf $(DEB_DESTDIR)/etc/libvirt/qemu/networks/autostart/ - # Move systcl files (we consider them examples) - mkdir -p $(DEB_DESTDIR)/usr/share/doc/libvirt/examples/sysctl/ - mv $(DEB_DESTDIR)/usr/lib/sysctl.d/* \ - $(DEB_DESTDIR)/usr/share/doc/libvirt/examples/sysctl/ - - # Move networks (installed in /etc/ via maintscripts) - mkdir -p $(DEB_DESTDIR)/usr/share/libvirt/networks/ - mv $(DEB_DESTDIR)/etc/libvirt/qemu/networks/* \ - $(DEB_DESTDIR)/usr/share/libvirt/networks/ - - # Move nwfilters (installed in /etc/ via maintscripts) - mkdir -p $(DEB_DESTDIR)/usr/share/libvirt/nwfilter/ - mv $(DEB_DESTDIR)/etc/libvirt/nwfilter/* \ - $(DEB_DESTDIR)/usr/share/libvirt/nwfilter/ + mkdir -p $(DEB_DESTDIR)/usr/share/libvirt/ + mv $(DEB_DESTDIR)/etc/libvirt/qemu/networks/ \ + $(DEB_DESTDIR)/etc/libvirt/nwfilter/ \ + $(DEB_DESTDIR)/usr/share/libvirt/ # Rename the upstream polkit rule so that it matches the name used # historically in Debian mv $(DEB_DESTDIR)/usr/share/polkit-1/rules.d/50-libvirt.rules \ $(DEB_DESTDIR)/usr/share/polkit-1/rules.d/60-libvirt.rules - - # Prepare Debian-specific configuration files to be installed - mkdir -p $(DEB_DESTDIR)/etc/apt/apt.conf.d/ - cp debian/apt/* \ - $(DEB_DESTDIR)/etc/apt/apt.conf.d/ endif # Copy the release notes where dh_installdocs can find them @@ -286,31 +321,80 @@ endif # triggers the privacy-breach-generic Lintian tag rm $(DEB_DESTDIR)/usr/share/doc/libvirt/html/ci-dashboard.html -ifeq ($(DEB_HOST_ARCH_OS), linux) execute_after_dh_install: - dh_apparmor -p libvirt-daemon --profile-name=usr.sbin.libvirtd - dh_apparmor -p libvirt-daemon-common --profile-name=usr.lib.libvirt.virt-aa-helper +ifeq ($(DEB_HOST_ARCH_OS), linux) + # Linux supports more nice things: + set -e; for f in $(SRV_MONOLITHIC); do \ + dh_install -p libvirt-daemon-system \ + usr/lib/systemd/system/$${f}* \ + lib/systemd/system/; \ + done + dh_install -p libvirt-daemon usr/lib/libvirt/virt-aa-helper + set -e; for f in $(APPARMOR_ABSTRACTIONS); do \ + dh_install -p libvirt-daemon-system etc/apparmor.d/abstractions/$${f}; \ + done + set -e; for f in $(APPARMOR_TEMPLATES); do \ + dh_install -p libvirt-daemon-system etc/apparmor.d/libvirt/$${f}; \ + done + set -e; for f in $(APPARMOR_SERVICES); do \ + dh_install -p libvirt-daemon-system etc/apparmor.d/$${f}; \ + dh_apparmor -p libvirt-daemon-system --profile-name=$${f}; \ + done + # Not all linux arches have systemtap yet + if test -d $(DEB_DESTDIR)/usr/share/systemtap; then \ + set -e; for f in $(SYSTEMTAP_TAPSETS); do \ + dh_install -p libvirt-daemon-system \ + usr/share/systemtap/tapset/$${f}.stp; \ + done; \ + fi + set -e; for f in $(NSS_PLUGINS); do \ + dh_install -p libnss-libvirt \ + usr/lib/$(DEB_HOST_MULTIARCH)/libnss_$${f}.so.2 \ + lib/$(DEB_HOST_MULTIARCH)/; \ + done + dh_install -p libvirt-clients usr/bin/virt-host-validate + dh_install -p libvirt-clients usr/share/man/man1/virt-host-validate.1 +endif +ifneq (,$(filter $(DEB_HOST_ARCH), $(ARCHES_QEMU))) + dh_install -p libvirt-daemon-system etc/libvirt/qemu.conf + dh_install -p libvirt-daemon-system etc/libvirt/qemu-lockd.conf + dh_install -p libvirt-daemon-system etc/libvirt/qemu-sanlock.conf + dh_install -p libvirt-daemon usr/share/augeas/lenses/tests/test_libvirt_lockd.aug + dh_install -p libvirt-daemon usr/share/augeas/lenses/tests/test_libvirt_sanlock.aug +endif +ifneq (,$(filter $(DEB_HOST_ARCH), $(ARCHES_LXC))) + dh_install -p libvirt-daemon-system etc/libvirt/lxc.conf +endif +ifneq (,$(filter $(DEB_HOST_ARCH), $(ARCHES_XEN))) + dh_install -p libvirt-daemon-system etc/libvirt/libxl.conf + dh_install -p libvirt-daemon-system etc/libvirt/libxl-lockd.conf + dh_install -p libvirt-daemon-system etc/libvirt/libxl-sanlock.conf +endif +ifeq ($(DEB_HOST_ARCH_OS), linux) override_dh_installinit: - dh_installinit -p libvirt-daemon --name=libvirtd --restart-after-upgrade - dh_installinit -p libvirt-daemon-log --name=virtlogd --no-stop-on-upgrade - dh_installinit -p libvirt-daemon-lock --name=virtlockd --no-stop-on-upgrade - dh_installinit -p libvirt-daemon-common --name=libvirt-guests --no-start + # Install SysV init scripts + dh_installinit -p libvirt-daemon-system-sysv --name=virtlogd --no-stop-on-upgrade + dh_installinit -p libvirt-daemon-system-sysv --name=virtlockd --no-stop-on-upgrade + dh_installinit -p libvirt-daemon-system-sysv --name=libvirtd --restart-after-upgrade + dh_installinit -p libvirt-daemon-system-sysv --name=libvirt-guests --no-start + # Install default files, which are used by both systemd and SysV init + dh_installinit -p libvirt-daemon-system --name=virtlogd --no-scripts + dh_installinit -p libvirt-daemon-system --name=virtlockd --no-scripts + dh_installinit -p libvirt-daemon-system --name=libvirtd --no-scripts + dh_installinit -p libvirt-daemon-system --name=libvirt-guests --no-scripts override_dh_installsystemd: - dh_installsystemd -p libvirt-daemon --no-also libvirtd.service - dh_installsystemd -p libvirt-daemon --no-stop-on-upgrade libvirtd.socket libvirtd-ro.socket libvirtd-admin.socket - dh_installsystemd -p libvirt-daemon-log --no-stop-on-upgrade virtlogd.service virtlogd.socket virtlogd-admin.socket - dh_installsystemd -p libvirt-daemon-lock --no-stop-on-upgrade virtlockd.service virtlockd.socket virtlockd-admin.socket - dh_installsystemd -p libvirt-daemon-common --no-stop-on-upgrade libvirt-guests.service + dh_installsystemd -p libvirt-daemon-system --no-also libvirtd.service + dh_installsystemd -p libvirt-daemon-system --no-stop-on-upgrade $(LIBVIRT_UNITS) endif override_dh_installchangelogs: - dh_installchangelogs -plibvirt-common + dh_installchangelogs -plibvirt0 dh_installchangelogs -plibvirt-doc override_dh_installdocs: - dh_installdocs -plibvirt-common + dh_installdocs -plibvirt0 dh_installdocs -plibvirt-doc --doc-main-package libvirt-doc # dh_missing can't figure out that some files are skipped on purpose due @@ -319,11 +403,3 @@ override_dh_installdocs: # is enabled and whether the corresponding files are installed override_dh_missing-indep: dh_missing --list-missing - -execute_before_dh_auto_clean: - if test "$(DEB_LIBVIRT_MAINTAINER)"; then \ - debian/scripts/process-templates.py --mode verify; \ - fi - debian/scripts/process-templates.py --mode build \ - --arch $(DEB_HOST_ARCH) \ - --os $(DEB_HOST_ARCH_OS) diff --git a/debian/scripts/process-templates.py b/debian/scripts/process-templates.py deleted file mode 100755 index f8f0e77e..00000000 --- a/debian/scripts/process-templates.py +++ /dev/null @@ -1,305 +0,0 @@ -#!/usr/bin/env python3 - -import argparse -import subprocess -import sys - -from pathlib import Path - - -def read_file(path): - with open(path) as f: - return f.read() - - -def write_file(path, output): - with open(path, "w") as f: - f.write(output) - - -# Parse a file that looks like -# -# FOO = foo1 foo2 foo3 -# BAR = -# BAZ = baz1 -# -# into a dictionary that looks like -# -# { -# "${FOO}": ["foo1", "foo2", "foo3"], -# "${BAR}": [], -# "${BAZ}": ["baz1"], -# } -# -def load_values(path): - values = {} - - with open(path) as f: - lineno = 0 - for line in f: - lineno += 1 - line = line.strip() - - # Skip empty lines and comments - if line == "" or line[0] == "#": - continue - - parts = line.split(" ") - - if len(parts) < 2 or parts[1] != "=": - print(f"{path}:{lineno}: Invalid syntax") - sys.exit(1) - - # Use "${FOO}" instead of "FOO" as the dictionary key. - # This makes things more convenient later - key = "${" + parts[0] + "}" - value = parts[2:] - - values[key] = value - - return values - - -# Parse a file that looks like -# -# #BEGIN FOO -# foo() { touch foo } -# #END FOO -# -# #BEGIN BAR -# bar() { rm -f bar } -# #END BAR -# -# into a dictionary that looks like -# -# { -# "#FOO#": "foo() { touch foo }", -# "#BAR#": "bar() { rm -f bar }", -# } -# -def load_snippets(path): - snippets = {} - - with open(path) as f: - lineno = 0 - current = "NONE" - snippet = [] - - for line in f: - lineno += 1 - - # Only strip trailing whitespace to preserve indentation - line = line.rstrip() - - # Currently not inside a snippet - if current == "NONE": - - # Skip empty lines - if line == "": - continue - - # Start of a new snippet - if line.startswith("#BEGIN "): - current = "#" + line[len("#BEGIN "):] + "#" - continue - - # The only thing accepted outside of a snippet is the - # start of a snippet - print(f"{path}:{lineno}: Invalid syntax") - sys.exit(1) - - # Currently inside a snippet - else: - - # End of the current snippet - if line.startswith("#END "): - name = "#" + line[len("#END "):] + "#" - - # Prevent mismatched BEGIN/END - if name != current: - print(f"{path}:{lineno}: Expected {current}, got {name}") - sys.exit(1) - - # Save the current snippet and start fresh - snippets[current] = "\n".join(snippet) - current = "NONE" - snippet = [] - continue - - # The rest of the snippet is taken verbatim - snippet.append(line) - - # Final sanity check - if len(snippet) != 0 or current != "NONE": - print(f"{path}: Last snippet was not terminated") - sys.exit(1) - - return snippets - - -def process_control(path, arches): - output = read_file(path) - - for arch in arches: - output = output.replace(arch, " ".join(arches[arch])) - - return output - - -def process_maintscript(path, snippets): - output = read_file(path) - - for snippet in snippets: - output = output.replace(snippet, snippets[snippet]) - - return output - - -def process_debhelper(path, arches, mode, arch, os): - output = [] - - with open(path) as f: - lineno = 0 - for line in f: - lineno += 1 - line = line.strip() - - # Empty lines and lines that don't start with [cond] are - # included in the output verbatim - if line == "" or line[0] != "[": - output.append(line) - continue - - parts = line[1:].split("]", maxsplit=1) - - if len(parts) < 2: - print(f"{path}:{lineno}: Invalid syntax") - sys.exit(1) - - # The line looked like - # - # [cond] file - # - cond = parts[0].strip() - file = parts[1].strip() - - # In verify mode, strip the condition and output the rest. - # Running wrap-and-sort against this output (see below) - # guarantees that the input follows the requirements too - if mode == "verify": - output.append(file) - continue - - # Handle lines that look like - # - # [linux-any] file - # - if cond.endswith("-any"): - if cond == os + "-any": - output.append(file) - continue - - if cond not in arches: - print(f"{path}:{lineno}: Unknown architecture group '{cond}'") - sys.exit(1) - - # Only output the line if we the architecture we're building on - # is one of those listed in cond. cond itself will be stripped - if arch in arches[cond]: - output.append(file) - - output.append("") - return "\n".join(output) - - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument("--mode", choices=["generate", "build", "verify"], - default="generate") - parser.add_argument("--arch") - parser.add_argument("--os") - args = parser.parse_args() - mode = args.mode - arch = args.arch - os = args.os - - if mode == "build" and (arch is None or os is None): - print("--arch and --os are required for --mode=build") - sys.exit(1) - - maintscript_exts = [ - ".postinst", - ".postrm", - ".preinst", - ".prerm", - ] - debhelper_exts = [ - ".install", - ] - template_ext = ".in" - debian_dir = Path("debian") - arches_file = Path(debian_dir, "arches.mk") - snippets_file = Path(debian_dir, "snippets.sh") - - arches = load_values(arches_file) - snippets = load_snippets(snippets_file) - - for infile in sorted(debian_dir.glob("*")): - infile = Path(infile) - - # Only process templates - if infile.suffix != template_ext: - continue - - outfile = Path(debian_dir, infile.stem) - - # Generate mode is for maintainers, and is used to keep - # debian/control in sync with its template. - # All other files are ignored - if mode == "generate" and outfile.name != "control": - continue - - print(f" GEN {outfile}") - - # When building the package, debian/control should already be - # in sync with its template. To confirm that is the case, - # save the contents of the output file before regenerating it - if mode in ["build", "verify"] and outfile.name == "control": - old_output = read_file(outfile) - - if outfile.name == "control": - output = process_control(infile, arches) - elif outfile.suffix in maintscript_exts: - output = process_maintscript(infile, snippets) - elif outfile.suffix in debhelper_exts: - output = process_debhelper(infile, arches, mode, arch, os) - else: - print(f"Unknown file type {outfile.suffix}") - sys.exit(1) - - write_file(outfile, output) - - # When building the package, regenerating debian/control - # should be a no-op. If that's not the case, it means that - # the file and its template have gone out of sync, and we - # don't know which one should be used. - # Abort the build and let the user fix things - if mode in ["build", "verify"] and outfile.name == "control": - if output != old_output: - print(f"{outfile}: Needs to be regenerated from template") - sys.exit(1) - - # In verify mode only, check that things are pretty - if mode == "verify": - print(" CHK wrap-and-sort") - wrap_and_sort = subprocess.run(["wrap-and-sort", "-ast", "--dry-run"], - capture_output=True, text=True) - if wrap_and_sort.returncode != 0 or wrap_and_sort.stdout != "": - print("stdout:") - print(wrap_and_sort.stdout.strip()) - print(f"rc: {wrap_and_sort.returncode}\n") - sys.exit(1) - - -if __name__ == "__main__": - main() diff --git a/debian/snippets.sh b/debian/snippets.sh deleted file mode 100644 index 7f91f059..00000000 --- a/debian/snippets.sh +++ /dev/null @@ -1,267 +0,0 @@ -#BEGIN PREPARE_CONFFILE_TRANSFER -prepare_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "prepare_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're installing from scratch or upgrading from a new enough version - # of the package, then no transfer needs to happen and we can stop here - if [ -z "$2" ] || dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - # Depending on the current state of the conffile, we need to perform different - # steps to transfer it. Moving the conffile to a different location depending - # on its current state achieves two goals: dpkg will see the conffile is no - # longer present on disk after $pkgfrom has been upgraded, and so it will no - # longer associate it with that package (not even as an obsolete conffile); - # more importanly, $pkgto's postinst, where the transfer process is completed, - # will be able to figure out the original state of the conffile and make sure - # it is restored - - if [ -e "$conffile" ]; then - expected=$(dpkg-query --showformat='${Conffiles}\n' --show "$pkgfrom" | grep -E "^ $conffile " | sed -E 's/^.* ([0-9a-f]+)$/\1/g') - actual=$(md5sum "$conffile" 2>/dev/null | sed -E 's/^([0-9a-f]+) .*$/\1/g') - - if [ -n "$actual" ] && [ "$actual" = "$expected" ]; then - rm -f "$conffile" - return 0 - fi - - echo "Preparing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile" "$conffile.dpkg-transfer" - return 0 - fi - - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - # If we are performing an upgrade from a version that's newer than the - # one which originally introduced the conffile ($firstver), we expect - # it to be present on disk; if that's not the case, that means that - # the admin must have explicitly deleted it and we should preserve - # this local modification - touch "$conffile.dpkg-disappear" - return 0 - fi -} -#END PREPARE_CONFFILE_TRANSFER - -#BEGIN FINISH_CONFFILE_TRANSFER -finish_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "finish_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we're upgrading from a new enough version of the package, we can assume - # the transfer must have happened at some point in the past and stop here - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - if [ -e "$conffile.dpkg-transfer" ]; then - # Complete the process started in $pkgfrom's preinst by restoring the - # version of the conffile containing local modifications - echo "Finishing transfer of config file $conffile (from $pkgfrom to $pkgto) ..." - mv -f "$conffile.dpkg-transfer" "$conffile" - return 0 - fi - - if [ -e "$conffile.dpkg-disappear" ]; then - # The conffile had been deleted by the admin, so let's return to - # that state - rm -f "$conffile" "$conffile.dpkg-disappear" - return 0 - fi -} -#END FINISH_CONFFILE_TRANSFER - -#BEGIN ABORT_CONFFILE_TRANSFER -abort_conffile_transfer() { - local conffile="$1" - local firstver="$2" - local lastver="$3" - local pkgfrom="$4" - local pkgto="$5" - - if [ "$6" != "--" ]; then - echo "abort_conffile_transfer called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 6); do - shift - done - - # If we were installing from scratch or upgrading from a new enough version - # when the error occurred, then no transfer was in progress and we don't - # need to rollback any changes - if [ -z "$2" ] || dpkg --compare-versions -- "$2" gt "$lastver"; then - return 0 - fi - - # If the conffile was being transferred, return it to its original location - if [ -e "$conffile.dpkg-transfer" ]; then - mv -f "$conffile.dpkg-transfer" "$conffile" - fi - - # Clean up additional state - rm -f "$conffile.dpkg-disappear" -} -#END ABORT_CONFFILE_TRANSFER - -#BEGIN CREATE_CONFIG_FROM_TEMPLATE -create_config_from_template() { - local config="$1" - local template="$2" - local firstver="$3" - - if [ "$4" != "--" ]; then - echo "create_config_from_template called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 4); do - shift - done - - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - # The package is already configured, and the version that's been - # configured is new enough to contain the config file - if [ -e "$config.dpkg-backup" ]; then - # The package had been configured in the past and has - # subsequently been removed without purging, so a backup of - # the config file is still present on the disk. Restore it - mv -f "$config.dpkg-backup" "$config" - return 0 - else - # We're doing a regular upgrade. Don't change anything - return 0 - fi - else - # We're either installing from scratch, or upgrading from a version - # that didn't have the config file yet. Make a copy of the template - # in the appropriate location and with the expected permissions - install -o root -g root -m 0600 "$template" "$config" - return 0 - fi -} -#END CREATE_CONFIG_FROM_TEMPLATE - -#BEGIN REMOVE_CONFIG_FROM_TEMPLATE -remove_config_from_template() { - local config="$1" - local template="$2" - local firstver="$3" - - if [ "$4" != "--" ]; then - echo "remove_config_from_template called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 4); do - shift - done - - if [ "$1" = "remove" ] && [ -e "$config" ]; then - # When removing the package, move the configuration file to the side - # so that the daemon no longer sees it, but we can still restore it - # at a later time if the package is reinstalled - mv -f "$config" "$config.dpkg-backup" - return 0 - fi - - if [ "$1" = "purge" ]; then - # When purging the package, remove all traces of the configuration - rm -f "$config" "$config.dpkg-backup" - return 0 - fi -} -#END REMOVE_CONFIG_FROM_TEMPLATE - -#BEGIN CREATE_PROTECTIVE_DIVERSION -create_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "create_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If we're upgrading from a new enough version of the package, it means - # that usr-merge has already happened and we don't need to mess with - # diversions at all - if [ -n "$2" ] && dpkg --compare-versions -- "$2" gt "$firstver"; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --add "$usrfile" -} -#END CREATE_PROTECTIVE_DIVERSION - -#BEGIN DELETE_PROTECTIVE_DIVERSION -delete_protective_diversion() { - local usrfile="$1" - local firstver="$2" - - if [ "$3" != "--" ]; then - echo "delete_protective_diversion called with the wrong number of arguments" >&2 - return 1 - fi - for _ in $(seq 1 3); do - shift - done - - # If the diversion doesn't exist there's nothing to clean up - if [ -z "$(dpkg-divert --list "$usrfile")" ]; then - return 0 - fi - - dpkg-divert \ - --no-rename \ - --divert "$usrfile.usr-is-merged" \ - --remove "$usrfile" -} -#END DELETE_PROTECTIVE_DIVERSION - -#BEGIN SYSTEMD_DAEMON_RELOAD -systemd_daemon_reload() { - if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then - systemctl --system daemon-reload >/dev/null || true - fi -} -#END SYSTEMD_DAEMON_RELOAD - -#BEGIN SYSTEMD_UNIT_RESTART_IF_ACTIVE -systemd_unit_restart_if_active() { - if [ -z "${DPKG_ROOT:-}" ] && [ -d /run/systemd/system ]; then - for unit in "$@"; do - if systemctl is-active -q "$unit"; then - deb-systemd-invoke restart "$unit" >/dev/null || true - fi - done - fi -} -#END SYSTEMD_UNIT_RESTART_IF_ACTIVE diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides deleted file mode 100644 index 6b08ae9e..00000000 --- a/debian/source/lintian-overrides +++ /dev/null @@ -1,3 +0,0 @@ -# These are all dummy transitional packages -libvirt source: duplicate-long-description libvirt-daemon-system-systemd libvirt-daemon-system-sysv libvirt-sanlock [debian/control] -libvirt source: duplicate-short-description libvirt-daemon-system-systemd libvirt-daemon-system-sysv libvirt-sanlock [debian/control] diff --git a/debian/source/options b/debian/source/options index 817be329..474295a2 100644 --- a/debian/source/options +++ b/debian/source/options @@ -1,3 +1,3 @@ tar-ignore = "debian/gbp.conf" tar-ignore = "debian/salsa-ci.yml" -tar-ignore = "debian/scripts/bump-symbols.py" +tar-ignore = "debian/scripts" diff --git a/docs/advanced-tests.rst b/docs/advanced-tests.rst index 6ae3422b..b9dae46c 100644 --- a/docs/advanced-tests.rst +++ b/docs/advanced-tests.rst @@ -45,14 +45,14 @@ I.e. to run all tests from 3 to 20 with the exception of tests :: - $ VIR_TEST_DEBUG=1 VIR_TEST_RANGE=3-5,7-20,^16 ./run tests/qemuxmlconftest + $ VIR_TEST_DEBUG=1 VIR_TEST_RANGE=3-5,7-20,^16 ./run tests/qemuxml2argvtest Also, individual tests can be run from inside the ``tests/`` directory, like: :: - $ ./qemuxmlconftest + $ ./qemuxml2xmltest If you are adding new test cases, or making changes that alter existing test output, you can use the environment variable @@ -62,7 +62,7 @@ CAREFULLY to ensure they are correct. :: - $ VIR_TEST_REGENERATE_OUTPUT=1 ./qemuxmlconftest + $ VIR_TEST_REGENERATE_OUTPUT=1 ./qemuxml2argvtest There is also a ``./run`` script at the top level, to make it easier to run programs that have not yet been installed, as @@ -81,7 +81,7 @@ location where the file is stored. :: - $ VIR_TEST_FILE_ACCESS=1 VIR_TEST_FILE_ACCESS_OUTPUT="/tmp/file_access.txt" ./qemuxmlconftest + $ VIR_TEST_FILE_ACCESS=1 VIR_TEST_FILE_ACCESS_OUTPUT="/tmp/file_access.txt" ./qemuxml2argvtest #. The Valgrind test should produce similar output to ``ninja test``. If the output has traces within libvirt API's, @@ -98,9 +98,9 @@ of leak: ==5414== by 0x4CD581D: virDomainDefParseXML (domain_conf.c:10188) ==5414== by 0x4CD8C73: virDomainDefParseNode (domain_conf.c:10640) ==5414== by 0x4CD8DDB: virDomainDefParse (domain_conf.c:10590) - ==5414== by 0x41CB1D: testCompareXMLToArgvHelper (qemuxmlconftest.c:100) + ==5414== by 0x41CB1D: testCompareXMLToArgvHelper (qemuxml2argvtest.c:100) ==5414== by 0x41E20F: virtTestRun (testutils.c:161) - ==5414== by 0x41C7CB: mymain (qemuxmlconftest.c:866) + ==5414== by 0x41C7CB: mymain (qemuxml2argvtest.c:866) ==5414== by 0x41E84A: virtTestMain (testutils.c:723) ==5414== by 0x34D9021734: (below main) (in /usr/lib64/libc-2.15.so) diff --git a/docs/api_extension.rst b/docs/api_extension.rst index a42c82da..152e6448 100644 --- a/docs/api_extension.rst +++ b/docs/api_extension.rst @@ -73,16 +73,14 @@ The first task is to define the public API. If the new API involves an XML extension, you have to enhance the RelaxNG schema and document the new elements or attributes: -* ``src/conf/schemas/domaincommon.rng`` -* ``docs/formatdomain.rst`` +``src/conf/schemas/domaincommon.rng docs/formatdomain.rst`` If the API extension involves a new function, you have to add a declaration in the public header, and arrange to export the function name (symbol) so other programs can link against the libvirt library and call the new function: -* ``include/libvirt/libvirt-$MODULE.h.in`` -* ``src/libvirt_public.syms`` +``include/libvirt/libvirt-$MODULE.h.in src/libvirt_public.syms`` Please consult our `coding style `__ guide on @@ -110,7 +108,7 @@ creation of a new struct type to represent the new driver type. The driver structs are defined in: -* ``src/driver-$MODULE.h`` +``src/driver-$MODULE.h`` To define the internal API, first typedef the driver function prototype and then add a new field for it to the relevant driver struct. Then, @@ -144,7 +142,7 @@ driver implementation. In RFC 2119 vocabulary, this function: The public API calls are implemented in: -* ``src/libvirt-$MODULE.c`` +``src/libvirt-$MODULE.c`` Implementing the remote protocol -------------------------------- @@ -158,7 +156,7 @@ Defining the wire protocol format Defining the wire protocol involves making additions to: -* ``src/remote/remote_protocol.x`` +``src/remote/remote_protocol.x`` First, create two new structs for each new function that you're adding to the API. One struct describes the parameters to be passed to the @@ -176,11 +174,7 @@ protocol code. This must be done on a Linux host using the GLibC rpcgen program. Other rpcgen versions may generate code which results in bogus compile time warnings. This regenerates the following files: -* ``src/remote/remote_daemon_dispatch_stubs.h`` -* ``src/remote/remote_daemon_dispatch.h`` -* ``src/remote/remote_daemon_dispatch.c`` -* ``src/remote/remote_protocol.c`` -* ``src/remote/remote_protocol.h`` +``src/remote/remote_daemon_dispatch_stubs.h src/remote/remote_daemon_dispatch.h src/remote/remote_daemon_dispatch.c src/remote/remote_protocol.c src/remote/remote_protocol.h`` Implement the RPC client ~~~~~~~~~~~~~~~~~~~~~~~~ @@ -188,7 +182,7 @@ Implement the RPC client Implementing the RPC client uses the rpcgen generated .h files. The remote method calls go in: -* ``src/remote/remote_driver.c`` +``src/remote/remote_driver.c`` Each remote method invocation does the following: @@ -208,7 +202,7 @@ matter of deserializing the parameters passed in from the remote caller and passing them to the corresponding internal API function. The server side dispatchers are implemented in: -* ``src/remote/remote_daemon_dispatch.c`` +``src/remote/remote_daemon_dispatch.c`` Again, this step uses the .h files generated by make rpcgen. @@ -216,7 +210,7 @@ After all three pieces of the remote protocol are complete, and the generated files have been updated, it will be necessary to update the file: -* ``src/remote_protocol-structs`` +``src/remote_protocol-structs`` This file should only have new lines added; modifications to existing lines probably imply a backwards-incompatible API change. @@ -252,8 +246,7 @@ those pieces in place you can write the function implementing the virsh command. Finally, you need to add the new command to the commands[] array. The following files need changes: -* ``tools/virsh-$MODULE.c`` -* ``tools/virsh.pod`` +``tools/virsh-$MODULE.c tools/virsh.pod`` Implement the driver methods ---------------------------- diff --git a/docs/apps.rst b/docs/apps.rst index 443c888c..b7d19e15 100644 --- a/docs/apps.rst +++ b/docs/apps.rst @@ -35,7 +35,7 @@ virsh machine to be cloned to form a new virtual machine. It automates copying of data across to new disk images, and updates the UUID, MAC address, and name in the configuration. -`virt-df `__ +`virt-df `__ Examine the utilization of each filesystem in a virtual machine from the comfort of the host machine. This tool peeks into the guest disks and determines how much space is used. It can cope with common Linux @@ -235,7 +235,13 @@ Monitoring The plugins provided by Guido Günther allow to monitor various things like network and block I/O with `Munin `__. -`PCP `__ +`Nagios-virt `__ + Nagios-virt is a configuration tool to add monitoring of your + virtualised domains to `Nagios `__. You can + use this tool to either set up a new Nagios installation for your Xen + or QEMU/KVM guests, or to integrate with your existing Nagios + installation. +`PCP `__ The PCP libvirt PMDA (plugin) is part of the `PCP `__ toolkit and provides hypervisor and guest information and complete set of guest performance metrics. It diff --git a/docs/bugs.rst b/docs/bugs.rst index 5fd1970c..b5d2e42b 100644 --- a/docs/bugs.rst +++ b/docs/bugs.rst @@ -99,13 +99,13 @@ that for the data to be really useful libvirt debug information must be present for example by installing libvirt debuginfo package on Fedora or Red Hat Enterprise Linux (with debuginfo-install libvirt) prior to running gdb. -It may also happen that the libvirt daemon itself crashes or gets stuck, in -the first case run it (as root) under gdb, and reproduce the sequence leading -to the crash, similarly to a normal program provide the "bt" backtrace -information to where gdb will have stopped. -But if libvirtd gets stuck, for example seems to stop processing commands, try -to attach to the faulty daemon and issue a gdb command "thread apply all bt" -to show all the threads backtraces, as in: +| It may also happen that the libvirt daemon itself crashes or gets stuck, in + the first case run it (as root) under gdb, and reproduce the sequence leading + to the crash, similarly to a normal program provide the "bt" backtrace + information to where gdb will have stopped. +| But if libvirtd gets stuck, for example seems to stop processing commands, try + to attach to the faulty daemon and issue a gdb command "thread apply all bt" + to show all the threads backtraces, as in: :: diff --git a/docs/ci-dashboard.rst b/docs/ci-dashboard.rst index 72a9cef8..a7f4e71f 100644 --- a/docs/ci-dashboard.rst +++ b/docs/ci-dashboard.rst @@ -87,6 +87,11 @@ Object mappings * - Project - Pipeline + * - libvirt-cim + - .. image:: https://gitlab.com/libvirt/libvirt-cim/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-cim/pipelines + :alt: libvirt-cim pipeline status + * - libvirt-dbus - .. image:: https://gitlab.com/libvirt/libvirt-dbus/badges/master/pipeline.svg :target: https://gitlab.com/libvirt/libvirt-dbus/pipelines @@ -102,6 +107,11 @@ Object mappings :target: https://gitlab.com/libvirt/libvirt-go-xml-module/pipelines :alt: libvirt-go-xml-module pipeline status + * - libvirt-snmp + - .. image:: https://gitlab.com/libvirt/libvirt-snmp/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-snmp/pipelines + :alt: libvirt-snmp pipeline status + Testing ------- @@ -118,6 +128,11 @@ Testing :target: https://gitlab.com/libvirt/libvirt-ci/pipelines :alt: libvirt-ci pipeline status + * - libvirt-test-API + - .. image:: https://gitlab.com/libvirt/libvirt-test-API/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-test-API/pipelines + :alt: libvirt-test-API pipeline status + * - libvirt-tck - .. image:: https://gitlab.com/libvirt/libvirt-tck/badges/master/pipeline.svg :target: https://gitlab.com/libvirt/libvirt-tck/pipelines @@ -134,6 +149,16 @@ Documentation / websites * - Project - Pipeline + * - libvirt-publican + - .. image:: https://gitlab.com/libvirt/libvirt-publican/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-publican/pipelines + :alt: libvirt-publican pipeline status + + * - libvirt-appdev-guide-python + - .. image:: https://gitlab.com/libvirt/libvirt-appdev-guide-python/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-appdev-guide-python/pipelines + :alt: libvirt-appdev-guide-python pipeline status + * - libvirt-wiki - .. image:: https://gitlab.com/libvirt/libvirt-wiki/badges/master/pipeline.svg :target: https://gitlab.com/libvirt/libvirt-wiki/pipelines @@ -145,7 +170,7 @@ Documentation / websites :alt: virttools-planet pipeline status * - virttools-web - - .. image:: https://gitlab.com/libvirt/virttools-web/badges/main/pipeline.svg + - .. image:: https://gitlab.com/libvirt/virttools-web/badges/master/pipeline.svg :target: https://gitlab.com/libvirt/virttools-web/pipelines :alt: virttools-web pipeline status @@ -165,38 +190,27 @@ Miscellaneous :target: https://gitlab.com/libvirt/libvirt-console-proxy/pipelines :alt: libvirt-console-proxy pipeline status - * - libvirt-security-notice - - .. image:: https://gitlab.com/libvirt/libvirt-security-notice/badges/master/pipeline.svg - :target: https://gitlab.com/libvirt/libvirt-security-notice/pipelines - :alt: libvirt-security-notice pipeline status + * - libvirt-designer + - .. image:: https://gitlab.com/libvirt/libvirt-designer/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-designer/pipelines + :alt: libvirt-designer pipeline status + * - libvirt-devaddr + - .. image:: https://gitlab.com/libvirt/libvirt-devaddr/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-devaddr/pipelines + :alt: libvirt-devaddr pipeline status -Related projects ----------------- + * - libvirt-sandbox + - .. image:: https://gitlab.com/libvirt/libvirt-sandbox/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-sandbox/pipelines + :alt: libvirt-sandbox pipeline status -.. list-table:: - :widths: 80 20 - :header-rows: 1 - - * - Project - - Pipeline + * - libvirt-sandbox-image + - .. image:: https://gitlab.com/libvirt/libvirt-sandbox-image/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-sandbox-image/pipelines + :alt: libvirt-sandbox-image pipeline status - * - osinfo-db-tools - - .. image:: https://gitlab.com/libosinfo/osinfo-db-tools/badges/main/pipeline.svg - :target: https://gitlab.com/libosinfo/osinfo-db-tools/pipelines - :alt: osinfo-db-tools pipeline status - - * - osinfo-db - - .. image:: https://gitlab.com/libosinfo/osinfo-db/badges/main/pipeline.svg - :target: https://gitlab.com/libosinfo/osinfo-db/pipelines - :alt: osinfo-db pipeline status - - * - libosinfo - - .. image:: https://gitlab.com/libosinfo/libosinfo/badges/main/pipeline.svg - :target: https://gitlab.com/libosinfo/libosinfo/pipelines - :alt: libosinfo pipeline status - - * - virt-viewer - - .. image:: https://gitlab.com/virt-viewer/virt-viewer/badges/master/pipeline.svg - :target: https://gitlab.com/virt-viewer/virt-viewer/pipelines - :alt: virt-viewer pipeline status + * - libvirt-security-notice + - .. image:: https://gitlab.com/libvirt/libvirt-security-notice/badges/master/pipeline.svg + :target: https://gitlab.com/libvirt/libvirt-security-notice/pipelines + :alt: libvirt-security-notice pipeline status diff --git a/docs/css/generic.css b/docs/css/generic.css index df37ceea..d15d85e6 100644 --- a/docs/css/generic.css +++ b/docs/css/generic.css @@ -83,62 +83,3 @@ dd code, p code, tt { pre { font-size: 90%; } - -pre { - border: 1px solid #999999; - background: #eeeeee; - color: black; - padding: 1em; -} - -a { - color: rgb(0, 95, 97); -} - -table { - border-collapse: collapse; - min-width: 60%; - margin-left: auto; - margin-right: auto; -} - -table th { - background: rgb(0, 95, 97); - color: rgb(255, 255, 255); - padding: 0.5em; -} - -table th a { - color: inherit; - text-decoration: inherit; -} - -table td, table th { - border: 1px solid rgb(60, 133, 124); -} - -table td { - padding: 4px; -} - -table tr:hover td, table col:hover td { - background: #eeeeee; -} - -table tr td:hover { - background: #c5dbd8; -} - -.literal, code { - font-family: monospace; - background: #eeeeee; -} - -th p, td p { - margin-top: 0px; - margin-bottom: 0px; -} - -span.del { - text-decoration: line-through; -} diff --git a/docs/css/libvirt-api.css b/docs/css/libvirt-api.css deleted file mode 100644 index ab6d8465..00000000 --- a/docs/css/libvirt-api.css +++ /dev/null @@ -1,112 +0,0 @@ -/* CSS styles for the generated API documents */ - -div.api { - border: 1px solid #999999; - background: #eeeeee; - color: black; - padding: 3px; -} - -div.api pre { - margin: 0px; - border: 0px; - background: inherit; - padding: inherit; -} - -div.api table { - margin: 0px; - padding-left: 2em; - border-spacing: 0px; -} - -div.api table td, div.variablelist table td { - vertical-align: top; - padding-left: 1em; -} - -.api { - font-family: monospace; -} - -.api .type { - font-weight: bold; - white-space: nowrap; - color: darkslateblue; -} - -.api .keyword { - font-weight: bold; - color: #A2F; -} - -.api .comment { - color: #080; - margin-left: 2em; - position: relative; -} - -.api .comment:before { - content: ": "; - position: absolute; - left: -1.3em; -} - -.api .undisclosed { - font-style: italic; - letter-spacing: .3ex; - font-weight: bolder; - text-transform: uppercase; - margin-left: 2em; -} - -.api .directive { - color: teal; -} - -.api :link:hover, .api :link:focus { - color: blue; - border-color: blue; -} - -.api :link { - text-decoration: none; -} - -.api table td,.api table th { - border: 0px; -} - -.api table tr:hover td, .api table col:hover td { - background: inherit; -} - -.api table tr td:hover { - background: inherit; -} - -dl.variablelist > dt { - display: block; - float: left; - font-style: italic; - font-weight: inherit; -} - -.variablelist dd { - padding-left: 10em; -} - -dl.variablelist > dt:after { - content: ": "; -} - -div.description pre.code { - border: 1px dashed grey; - background-color: inherit; - padding: 5px 10px 5px 10px; - margin-left: 2.5em; -} - -td.enumvalue { - white-space: nowrap; -} diff --git a/docs/css/libvirt-template.css b/docs/css/libvirt-template.css deleted file mode 100644 index 2ea93c79..00000000 --- a/docs/css/libvirt-template.css +++ /dev/null @@ -1,236 +0,0 @@ -/* styles related to the page template (page.xsl) */ -#nav { - position: absolute; - top: 0px; - left: 0px; - height: 100px; - background: rgb(0, 95, 97); - border-bottom: 3px solid rgb(60, 133, 124); - width: 100%; - display: table; -} - -#home { - background-image: url(../logos/logo-banner-light-256.png); - background-repeat: no-repeat; - background-position: left center; - height: 100px; - width: 269px; - margin-left: 1em; - text-indent: 100%; white-space: nowrap; overflow: hidden; -} - -#home a { - color: rgb(0, 95, 97); - height: 100px; - width: 269px; - display: block; -} - -#jumplinks { - display: table-cell; - vertical-align: middle; - font-size: 16pt; - text-align: right; -} - -#jumplinks ul { - list-style: none; -} - -#jumplinks li { - display: inline; - padding-left: 2em; - font-weight: bold; -} - -#jumplinks a { - color: rgb(255, 255, 255); - text-decoration: none; -} - -#jumplinks a:hover { - color: rgb(255, 230, 0); -} - -#search { - display: table-cell; - vertical-align: middle; - width: 13em; - text-align: right; - padding: 1em; -} - -#search input { - border: 0px; - height: 2em; -} - -#search input[type=text] { - background: rgb(230, 230, 230); - color: rgb(0, 0, 0); - width: 10em; - padding: 0px; - padding-left: 2px; - padding-right: 2px; -} - -#search input[type=submit] { - background: rgb(60, 133, 124); - color: rgb(255, 255, 255); - width: 3em; - font-weight: bold; -} - -#search input[type=submit]:active, -#search input[type=submit]:hover { - color: rgb(255, 230, 0); -} - -#body { - border: 0px; - left: 0px; - margin: 0px; - margin-top: 120px; - margin-left: 1em; - margin-right: 1em; -} - -main, -.document { - margin-left: auto; - margin-right: auto; - padding: 0px; - padding-bottom: 1em; - max-width: 95%; - width: 70em; -} - -h1 a, h2 a, h3 a, h4 a, h5 a { - color: inherit; - text-decoration: inherit; -} - -a.headerlink { - text-decoration: none!important; - visibility: hidden; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink { - visibility: visible; -} - -br.clear { - clear: both; - border: 0px; -} - -#footer { - clear: both; - border-top: 3px solid rgb(60, 133, 124); - margin-top: 2em; - padding: 1em; - background: rgb(0, 95, 97); - color: rgb(255, 255, 255); -} - -#footer a { - color: inherit; - text-decoration: none; -} - -#footer a:hover { - color: rgb(255, 230, 0); -} - -#conduct { - float: right; - text-align: right; - font-size: smaller; - margin-right: 3em; -} - -#conduct a { - text-decoration: underline; -} - -#contact, #community, #contribute { - float: left; - padding: 0px; - margin-left: 3em; -} - -#footer h3 { - margin:0px; - font-size: 1em; - color: rgb(60, 133, 124); -} - -#footer ul { - list-style: none; - margin: 0px; - font-size: smaller; -} - -#advancedsearch { - display: none; - vertical-align: bottom; - position: absolute; - padding: 1em; - padding-top: 0em; - margin-top: 0em; - top: 100px; - right: 0px; - width: 15em; - text-align: left; - color: white; - background: rgb(0, 95, 97); - border-left: 3px solid rgb(60, 133, 124); - border-bottom: 3px solid rgb(60, 133, 124); -} - -/* Use div.advancedsearch, not #advancedsearch because the - * 'advancedsearch' class is set dynamically when javascript - * loads. This ensures that the advancedsearch options are - * not displayed when javascript is disabled. -*/ -#search:hover div.advancedsearch { - display: table; -} - -#advancedsearch span { - display: block; -} - -#advancedsearch input[type=radio] { - height: inherit; - display: inline; -} - -#advancedsearch label { - display: inline; -} - -/* Elements with id 'contents' contain the table of contents generated by docutils */ -.contents li p { - margin: 2px; -} - -#contents { - margin-top: 1em; - margin-bottom: 1em; - background: rgb(230, 230, 230); - padding: 0.5em; - padding-left: 0px; - display: inline-block; - border: 1px solid #999999; -} - -#contents p.topic-title { - display: none; -} diff --git a/docs/css/libvirt.css b/docs/css/libvirt.css index 58ac1d38..7021d0b5 100644 --- a/docs/css/libvirt.css +++ b/docs/css/libvirt.css @@ -1,3 +1,110 @@ +#nav { + position: absolute; + top: 0px; + left: 0px; + height: 100px; + background: rgb(0, 95, 97); + border-bottom: 3px solid rgb(60, 133, 124); + width: 100%; + display: table; +} + +#home { + background-image: url(../logos/logo-banner-light-256.png); + background-repeat: no-repeat; + background-position: left center; + height: 100px; + width: 269px; + margin-left: 1em; + text-indent: 100%; white-space: nowrap; overflow: hidden; +} + +#home a { + color: rgb(0, 95, 97); + height: 100px; + width: 269px; + display: block; +} + +#jumplinks { + display: table-cell; + vertical-align: middle; + font-size: 16pt; + text-align: right; +} + +#jumplinks ul { + list-style: none; +} + +#jumplinks li { + display: inline; + padding-left: 2em; + font-weight: bold; +} + +#jumplinks a { + color: rgb(255, 255, 255); + text-decoration: none; +} + +#jumplinks a:hover { + color: rgb(255, 230, 0); +} + +#search { + display: table-cell; + vertical-align: middle; + width: 13em; + text-align: right; + padding: 1em; +} + +#search input { + border: 0px; + height: 2em; +} + +#search input[type=text] { + background: rgb(230, 230, 230); + color: rgb(0, 0, 0); + width: 10em; + padding: 0px; + padding-left: 2px; + padding-right: 2px; +} + +#search input[type=submit] { + background: rgb(60, 133, 124); + color: rgb(255, 255, 255); + width: 3em; + font-weight: bold; +} + +#search input[type=submit]:active, +#search input[type=submit]:hover { + color: rgb(255, 230, 0); +} + +#body { + border: 0px; + left: 0px; + margin: 0px; + margin-top: 120px; + margin-left: 1em; + margin-right: 1em; +} + +main, +.document { + margin-left: auto; + margin-right: auto; + padding: 0px; + padding-bottom: 1em; + max-width: 95%; + width: 70em; +} + main#the-virtualization-api, #the-virtualization-api.document, main#documentation, @@ -8,6 +115,81 @@ main#knowledge-base, width: inherit; } +pre { + border: 1px solid #999999; + background: #eeeeee; + color: black; + padding: 1em; +} + +a { + color: rgb(0, 95, 97); +} + +div.api { + border: 1px solid #999999; + background: #eeeeee; + color: black; + padding: 3px; +} + +div.api pre { + margin: 0px; + border: 0px; + background: inherit; + padding: inherit; +} + +div.api table { + margin: 0px; + padding-left: 2em; + border-spacing: 0px; +} + +div.api table td, div.variablelist table td { + vertical-align: top; + padding-left: 1em; +} + +h1 a, h2 a, h3 a, h4 a, h5 a { + color: inherit; + text-decoration: inherit; +} + +table { + border-collapse: collapse; + min-width: 60%; + margin-left: auto; + margin-right: auto; +} + +table th { + background: rgb(0, 95, 97); + color: rgb(255, 255, 255); + padding: 0.5em; +} + +table th a { + color: inherit; + text-decoration: inherit; +} + +table td, table th { + border: 1px solid rgb(60, 133, 124); +} + +table td { + padding: 4px; +} + +table tr:hover td, table col:hover td { + background: #eeeeee; +} + +table tr td:hover { + background: #c5dbd8; +} + span.since { color: #3c857c; font-style: italic; @@ -29,6 +211,112 @@ img.diagram { margin-right: auto; } + +table tbody td.y { + background: rgb(220,255,220); + text-align: center; +} +table tbody td.n { + background: rgb(255,220,220); + text-align: center; +} + +.api { + font-family: monospace; +} + +.api .type { + font-weight: bold; + white-space: nowrap; + color: darkslateblue; +} + +.api .keyword { + font-weight: bold; + color: #A2F; +} + +.api .comment { + color: #080; + margin-left: 2em; + position: relative; +} + +.api .comment:before { + content: ": "; + position: absolute; + left: -1.3em; +} + +.api .undisclosed { + font-style: italic; + letter-spacing: .3ex; + font-weight: bolder; + text-transform: uppercase; + margin-left: 2em; +} + +.api .directive { + color: teal; +} + +.api :link:hover, .api :link:focus { + color: blue; + border-color: blue; +} + +.api :link { + text-decoration: none; +} + +.api table td,.api table th { + border: 0px; +} + +.api table tr:hover td, .api table col:hover td { + background: inherit; +} + +.api table tr td:hover { + background: inherit; +} + +dl.variablelist > dt { + display: block; + float: left; + font-style: italic; + font-weight: inherit; +} + +.variablelist dd { + padding-left: 10em; +} + +dl.variablelist > dt:after { + content: ": "; +} + +div.description pre.code { + border: 1px dashed grey; + background-color: inherit; + padding: 5px 10px 5px 10px; + margin-left: 2.5em; +} + +a.headerlink { + text-decoration: none!important; + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink { + visibility: visible; +} + #the-virtualization-api section, #the-virtualization-api .section, #documentation section, @@ -72,6 +360,58 @@ img.diagram { padding: 1em; } +br.clear { + clear: both; + border: 0px; +} + +#footer { + clear: both; + border-top: 3px solid rgb(60, 133, 124); + margin-top: 2em; + padding: 1em; + background: rgb(0, 95, 97); + color: rgb(255, 255, 255); +} + +#footer a { + color: inherit; + text-decoration: none; +} + +#footer a:hover { + color: rgb(255, 230, 0); +} + +#conduct { + float: right; + text-align: right; + font-size: smaller; + margin-right: 3em; +} + +#conduct a { + text-decoration: underline; +} + +#contact, #community, #contribute { + float: left; + padding: 0px; + margin-left: 3em; +} + +#footer h3 { + margin:0px; + font-size: 1em; + color: rgb(60, 133, 124); +} + +#footer ul { + list-style: none; + margin: 0px; + font-size: smaller; +} + #the-virtualization-api dd, #documentation dd, #knowledge-base dd { @@ -123,6 +463,83 @@ img.diagram { margin-bottom: 1em; } +td.enumvalue { + white-space: nowrap; +} + +#advancedsearch { + display: none; + vertical-align: bottom; + position: absolute; + padding: 1em; + padding-top: 0em; + margin-top: 0em; + top: 100px; + right: 0px; + width: 13em; + text-align: left; + color: white; + background: rgb(0, 95, 97); + border-left: 3px solid rgb(60, 133, 124); + border-bottom: 3px solid rgb(60, 133, 124); +} + +/* Use div.advancedsearch, not #advancedsearch because the + * 'advancedsearch' class is set dynamically when javascript + * loads. This ensures that the advancedsearch options are + * not displayed when javascript is disabled. +*/ +#search:hover div.advancedsearch { + display: table; +} + +#advancedsearch span { + display: block; +} + +#advancedsearch input[type=radio] { + height: inherit; + display: inline; +} + +#advancedsearch label { + display: inline; +} + .removedhv { color: darkred; } + +.literal, code { + font-family: monospace; + background: #eeeeee; +} + +.contents li p { + margin: 2px; +} + +th p, td p { + margin-top: 0px; + margin-bottom: 0px; +} + +/* Elements with id 'contents' contain the table of contents generated by docutils */ + +#contents { + margin-top: 1em; + margin-bottom: 1em; + background: rgb(230, 230, 230); + padding: 0.5em; + padding-left: 0px; + display: inline-block; + border: 1px solid #999999; +} + +#contents p.topic-title { + display: none; +} + +span.del { + text-decoration: line-through; +} diff --git a/docs/css/main.css b/docs/css/main.css index fdcba221..88e453ac 100644 --- a/docs/css/main.css +++ b/docs/css/main.css @@ -1,7 +1,4 @@ @import url(fonts.css); @import url(generic.css); @import url(libvirt.css); -@import url(libvirt-api.css); -@import url(libvirt-template.css); -@import url(mobile-template.css); -@import url(mobile-libvirt.css); +@import url(mobile.css); diff --git a/docs/css/meson.build b/docs/css/meson.build index 6f4f140f..a2a2ccfb 100644 --- a/docs/css/meson.build +++ b/docs/css/meson.build @@ -2,11 +2,8 @@ docs_css_files = [ 'fonts.css', 'generic.css', 'libvirt.css', - 'libvirt-api.css', - 'libvirt-template.css', 'main.css', - 'mobile-template.css', - 'mobile-libvirt.css', + 'mobile.css', ] install_data(docs_css_files, install_dir: docs_html_dir / 'css') diff --git a/docs/css/mobile-libvirt.css b/docs/css/mobile-libvirt.css deleted file mode 100644 index b9e81b0d..00000000 --- a/docs/css/mobile-libvirt.css +++ /dev/null @@ -1,17 +0,0 @@ -@media (max-width: 1000px) { - #the-virtualization-api > h1, - #the-virtualization-api > h2 { - display: none; - } - - #the-virtualization-api section, - #the-virtualization-api .section, - #documentation section, - #documentation .section, - #knowledge-base section, - #knowledge-base .section { - width: 100%; - margin-left: 0px; - float: none; - } -} diff --git a/docs/css/mobile-template.css b/docs/css/mobile-template.css deleted file mode 100644 index 2f862d58..00000000 --- a/docs/css/mobile-template.css +++ /dev/null @@ -1,94 +0,0 @@ -/* Style for the page.xsl template */ -@media (max-width: 1000px) { - #home { - width: 100%; - display: block; - margin: 0px; - background: white url(../logos/logo-banner-dark-256.png) no-repeat center center; - height: 94px; - } - #home a { - width: 100%; - } - #search { - width: 100%; - display: block; - margin: 0px; - background: white; - padding: 0px; - height: 2em; - } - #search form { - padding: 5px; - } - #jumplinks { - padding: 0px; - display: block; - width: 100%; - text-align: center; - margin: 0px; - height: 1.3em; - font-size: 1em; - border-top: 3px solid rgb(60, 133, 124); - border-bottom: 3px solid rgb(60, 133, 124); - } - #jumplinks ul { - display: block; - padding: 0px; - margin: 0px; - } - #jumplinks li { - margin: 0px; - padding-left: 0.5em; - padding-right: 0.5em; - } - #nav { - border: 0px; - } - - #search.navhide { - display: none !IMPORTANT; - } - #home.navhide { - position: fixed; - top: 0px; - z-index: 9001; - width: 6em; - display: block; - margin: 0px; - background: inherit; - height: 1.3em; - border-top: 3px solid rgb(60, 133, 124); - border-bottom: 3px solid rgb(60, 133, 124); - font-size: 1em; - text-indent: 0px; - font-weight: bold; - padding-left: 1em; - } - #home.navhide a { - color: white; - text-decoration: none; - } - #home.navhide a:hover { - color: rgb(255, 230, 0); - } - #jumplinks.navhide { - position: fixed; - text-align: right; - top: 0px; - z-index: 9000; - background: rgb(0, 95, 97); - } - #jumplinks.navhide ul { - z-index: 9001; - } - #body { - margin-top: 180px; - } - #advancedsearch { - margin-top: 4em; - border: 0px; - background: white; - color: black; - } -} diff --git a/docs/css/mobile.css b/docs/css/mobile.css new file mode 100644 index 00000000..2e223f46 --- /dev/null +++ b/docs/css/mobile.css @@ -0,0 +1,107 @@ +@media (max-width: 1000px) { + #home { + width: 100%; + display: block; + margin: 0px; + background: white url(../logos/logo-banner-dark-256.png) no-repeat center center; + height: 94px; + } + #home a { + width: 100%; + } + #search { + width: 100%; + display: block; + margin: 0px; + background: white; + padding: 0px; + height: 2em; + } + #search form { + padding: 5px; + } + #the-virtualization-api > h1, + #the-virtualization-api > h2 { + display: none; + } + #jumplinks { + padding: 0px; + display: block; + width: 100%; + text-align: center; + margin: 0px; + height: 1.3em; + font-size: 1em; + border-top: 3px solid rgb(60, 133, 124); + border-bottom: 3px solid rgb(60, 133, 124); + } + #jumplinks ul { + display: block; + padding: 0px; + margin: 0px; + } + #jumplinks li { + margin: 0px; + padding-left: 0.5em; + padding-right: 0.5em; + } + #nav { + border: 0px; + } + + #search.navhide { + display: none !IMPORTANT; + } + #home.navhide { + position: fixed; + top: 0px; + z-index: 9001; + width: 6em; + display: block; + margin: 0px; + background: inherit; + height: 1.3em; + border-top: 3px solid rgb(60, 133, 124); + border-bottom: 3px solid rgb(60, 133, 124); + font-size: 1em; + text-indent: 0px; + font-weight: bold; + padding-left: 1em; + } + #home.navhide a { + color: white; + text-decoration: none; + } + #home.navhide a:hover { + color: rgb(255, 230, 0); + } + #jumplinks.navhide { + position: fixed; + text-align: right; + top: 0px; + z-index: 9000; + background: rgb(0, 95, 97); + } + #jumplinks.navhide ul { + z-index: 9001; + } + #body { + margin-top: 180px; + } + #the-virtualization-api section, + #the-virtualization-api .section, + #documentation section, + #documentation .section, + #knowledge-base section, + #knowledge-base .section { + width: 100%; + margin-left: 0px; + float: none; + } + #advancedsearch { + margin-top: 4em; + border: 0px; + background: white; + color: black; + } +} diff --git a/docs/docs.rst b/docs/docs.rst index 1a958e9c..f57164b9 100644 --- a/docs/docs.rst +++ b/docs/docs.rst @@ -47,9 +47,6 @@ Deployment / operation `Hooks `__ Hooks for system specific management -`SSH Proxy `__ - Enable SSH into guests over a VSOCK - `NSS module `__ Enable domain host name translation to IP addresses diff --git a/docs/drvbhyve.rst b/docs/drvbhyve.rst index f9cb9900..214bc2e7 100644 --- a/docs/drvbhyve.rst +++ b/docs/drvbhyve.rst @@ -268,7 +268,7 @@ these commands manually, most likely you might want to tweak them. Using ZFS volumes ~~~~~~~~~~~~~~~~~ -It's possible to use ZFS volumes as disk devices :since:`since 1.2.8`. An +It's possible to use ZFS volumes as disk devices :since:`since 1.2.8` . An example of domain XML device entry for that will look like: :: @@ -307,7 +307,7 @@ not have spaces or they will be tokenized incorrectly. Using UEFI bootrom, VNC, and USB tablet ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -:since:`Since 3.2.0`, in addition to +:since:`Since 3.2.0` , in addition to `Using grub2-bhyve or Alternative Bootloaders`_, non-FreeBSD guests could be also booted using an UEFI boot ROM, provided both guest OS and installed ``bhyve(1)`` version support UEFI. To use that, ``loader`` should be @@ -349,7 +349,7 @@ Please note that the tablet device requires to have a USB controller of the ``nec-xhci`` model. Currently, only a single controller of this type and a single tablet are supported per domain. -:since:`Since 3.5.0`, it's possible to configure how the video device is +:since:`Since 3.5.0` , it's possible to configure how the video device is exposed to the guest using the ``vgaconf`` attribute: :: @@ -375,7 +375,7 @@ refer to the manual page and the `bhyve wiki `__ for more details on using the ``vgaconf`` option. -:since:`Since 3.7.0`, it's possible to use ``autoport`` to let libvirt allocate +:since:`Since 3.7.0` , it's possible to use ``autoport`` to let libvirt allocate VNC port automatically (instead of explicitly specifying it with the ``port`` attribute): @@ -383,7 +383,7 @@ attribute): -:since:`Since 6.8.0`, it's possible to set framebuffer resolution using the +:since:`Since 6.8.0` , it's possible to set framebuffer resolution using the ``resolution`` sub-element: :: @@ -394,7 +394,7 @@ attribute): -:since:`Since 6.8.0`, VNC server can be configured to use password based +:since:`Since 6.8.0` , VNC server can be configured to use password based authentication: :: @@ -414,7 +414,7 @@ Originally bhyve supported only localtime for RTC. Support for UTC time was introduced in `FreeBSD changeset r284894 `__ for *10-STABLE* and in `changeset r279225 `__ -for *-CURRENT*. It's possible to use this in libvirt :since:`since 1.2.18`, +for *-CURRENT*. It's possible to use this in libvirt :since:`since 1.2.18` , just place the following to domain XML: :: @@ -443,8 +443,8 @@ e1000 NIC As of `FreeBSD changeset r302504 `__ bhyve supports -Intel e1000 network adapter emulation. It's supported in libvirt -:since:`since 3.1.0` and could be used as follows: +Intel e1000 network adapter emulation. It's supported in libvirt :since:`since +3.1.0` and could be used as follows: :: @@ -460,7 +460,7 @@ Sound device As of `FreeBSD changeset r349355 `__ bhyve supports -sound device emulation. It's supported in libvirt :since:`since 6.7.0`. +sound device emulation. It's supported in libvirt :since:`since 6.7.0` . :: @@ -484,7 +484,7 @@ Virtio-9p filesystem As of `FreeBSD changeset r366413 `__ bhyve supports sharing arbitrary directory tree between the guest and the host. It's supported -in libvirt :since:`since 6.9.0`. +in libvirt :since:`since 6.9.0` . :: @@ -506,7 +506,7 @@ In the Linux guest, this could be mounted using: Wiring guest memory ~~~~~~~~~~~~~~~~~~~ -:since:`Since 4.4.0`, it's possible to specify that guest memory should be +:since:`Since 4.4.0` , it's possible to specify that guest memory should be wired and cannot be swapped out as follows: :: @@ -522,7 +522,7 @@ wired and cannot be swapped out as follows: CPU topology ~~~~~~~~~~~~ -:since:`Since 4.5.0`, it's possible to specify guest CPU topology, if bhyve +:since:`Since 4.5.0` , it's possible to specify guest CPU topology, if bhyve supports that. Support for specifying guest CPU topology was added to bhyve in `FreeBSD changeset r332298 `__ for *-CURRENT*. Example: @@ -540,7 +540,7 @@ for *-CURRENT*. Example: Ignoring unknown MSRs reads and writes ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -:since:`Since 5.1.0`, it's possible to make bhyve ignore accesses to +:since:`Since 5.1.0` , it's possible to make bhyve ignore accesses to unimplemented Model Specific Registers (MSRs). Example: :: @@ -558,7 +558,7 @@ unimplemented Model Specific Registers (MSRs). Example: Pass-through of arbitrary bhyve commands ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -:since:`Since 5.1.0`, it's possible to pass additional command-line arguments +:since:`Since 5.1.0` , it's possible to pass additional command-line arguments to the bhyve process when starting the domain using the ```` element under ``domain``. To supply an argument, use the element ```` with the attribute ``value`` set to additional argument to be added. The arg diff --git a/docs/drvesx.rst b/docs/drvesx.rst index 13c2bc37..81625d6f 100644 --- a/docs/drvesx.rst +++ b/docs/drvesx.rst @@ -56,9 +56,8 @@ URIs have this general form (``[...]`` marks an optional part). type://[username@]hostname[:port]/[[folder/...]datacenter/[folder/...][cluster/]server][?extraparameters] -The ``type://`` is either ``esx://`` or ``gsx://`` or ``vpx://`` -:since:`since 0.8.3`. -The driver selects the default port depending on the ``type://``. For +The ``type://`` is either ``esx://`` or ``gsx://`` or ``vpx://`` :since:`since +0.8.3` . The driver selects the default port depending on the ``type://``. For ``esx://`` and ``vpx://`` the default HTTPS port is 443, for ``gsx://`` it is 8333. If the port parameter is given, it overrides the default port. @@ -76,7 +75,7 @@ of datacenter ``dc1``. vpx://example-vcenter.com/dc1/cluster1/example-esx.com Datacenters and clusters can be organized in folders, those have to be specified -as well. The driver can handle folders :since:`since 0.9.7`. +as well. The driver can handle folders :since:`since 0.9.7` . :: @@ -130,12 +129,12 @@ The driver understands the extra parameters shown below. | | | set to 0, questions are | | | | reported as errors. The | | | | default value is 0. | -| | | :since:`Since 0.7.5`. | +| | | :since:`Since 0.7.5` . | +-----------------+-----------------------------+-----------------------------+ | ``proxy`` | ``[type://]host[:port]`` | Allows to specify a proxy | | | | for HTTP and HTTPS | | | | communication. | -| | | :since:`Since 0.8.2`. The | +| | | :since:`Since 0.8.2` . The | | | | optional ``type`` part may | | | | be one of: ``http``, | | | | ``socks``, ``socks4``, | @@ -273,8 +272,8 @@ will complain if this restrictions are violated. - Memory size has to be a multiple of 4096 - Number of virtual CPU has to be 1 or a multiple of 2. :since:`Since 4.10.0` any number of vCPUs is supported. -- Valid MAC address prefixes are ``00:0c:29`` and ``00:50:56``. - :since:`Since 0.7.6` arbitrary `MAC addresses`_ are supported. +- Valid MAC address prefixes are ``00:0c:29`` and ``00:50:56``. :since:`Since + 0.7.6` arbitrary `MAC addresses`_ are supported. Datastore references ~~~~~~~~~~~~~~~~~~~~ @@ -332,7 +331,7 @@ the ESX server from rejecting out-of-predefined-range MAC addresses. ethernet0.checkMACAddress = "false" -:since:`Since 6.6.0`, one can force libvirt to keep the provided MAC address +:since:`Since 6.6.0` , one can force libvirt to keep the provided MAC address when it's in the reserved VMware range by adding a ``type="static"`` attribute to the ```` element. Note that this attribute is useless if the provided MAC address is outside of the reserved VMWare ranges. @@ -375,7 +374,7 @@ Here a domain XML snippet: ... -The controller element is supported :since:`since 0.8.2`. Prior to this +The controller element is supported :since:`since 0.8.2` . Prior to this ```` was abused to specify the SCSI controller model. This attribute usage is deprecated now. diff --git a/docs/drvnodedev.rst b/docs/drvnodedev.rst index 1579ca8b..115d52ca 100644 --- a/docs/drvnodedev.rst +++ b/docs/drvnodedev.rst @@ -23,8 +23,7 @@ NPIV) `__). Persistent virtual devices are managed with ``virsh nodedev-define`` and ``virsh nodedev-undefine``. Persistent devices can be configured to start manually or automatically using ``virsh nodedev-autostart``. Inactive devices -can be made active with ``virsh nodedev-start``. ``virsh nodedev-update`` -allows to modify devices (:since:`Since 10.1.0`). +can be made active with ``virsh nodedev-start``. Transient virtual devices are started and stopped with the commands ``virsh nodedev-create`` and ``virsh nodedev-destroy``. @@ -279,7 +278,6 @@ covers the following features: - display device details ( :since:`Since 3.4.0` ) - create transient mediated devices ( :since:`Since 6.5.0` ) - define persistent mediated devices ( :since:`Since 7.3.0` ) -- update mediated devices ( :since:`Since 10.1.0` ) Because mediated devices are instantiated from vendor specific templates, simply called 'types', information describing these types is contained within the @@ -337,7 +335,7 @@ To start an instance of this device definition, use the following command: $ virsh nodedev-start Active mediated device instances can be stopped using -``virsh nodedev-destroy``, and persistent device definitions can be +``virsh nodedev-destroy``, and persistent device definitions can be removed using ``virsh nodedev-undefine``. If a mediated device is defined persistently, it can also be set to be diff --git a/docs/drvqemu.rst b/docs/drvqemu.rst index e52d9ffd..22d7e650 100644 --- a/docs/drvqemu.rst +++ b/docs/drvqemu.rst @@ -562,7 +562,7 @@ The library provides two API: ``virDomainQemuMonitorCommand``, for sending an arbitrary monitor command (in either HMP or QMP format) to a qemu guest ( :since:`Since 0.8.3` ), and ``virDomainQemuAttach``, for registering a qemu domain that was manually started so that it can then be managed by libvirtd ( -:since:`Since 0.9.4`, :removed:`removed as of 5.5.0` ). +:since:`Since 0.9.4` , :removed:`removed as of 5.5.0` ). Additionally, the following XML additions allow fine-tuning of the command line given to qemu when starting a domain ( :since:`Since 0.8.3` ). In order to use @@ -595,11 +595,8 @@ Example: /usr/bin/qemu-system-x86_64 - - - - - + + diff --git a/docs/drvxen.rst b/docs/drvxen.rst index ba024e77..c131d52c 100644 --- a/docs/drvxen.rst +++ b/docs/drvxen.rst @@ -139,7 +139,7 @@ using libvirt Domain XML into xl, xm, or sxpr config format. Pass-through of arbitrary command-line arguments to the qemu device model ------------------------------------------------------------------------- -:since:`Since 6.7.0`, the Xen driver supports passing arbitrary command-line +:since:`Since 6.7.0` , the Xen driver supports passing arbitrary command-line arguments to the qemu device model used by Xen with the ```` element under ``domain``. In order to use command-line pass-through, an XML namespace request must be issued that pulls in diff --git a/docs/firewall.rst b/docs/firewall.rst index 26474d33..eff9de5a 100644 --- a/docs/firewall.rst +++ b/docs/firewall.rst @@ -77,9 +77,8 @@ LAN/WAN. The next rules depend on the type of connectivity allowed, and go in the main FORWARD chain: -- type=isolated - - Allow traffic between guests. Deny inbound. Deny outbound. +- | type=isolated + | Allow traffic between guests. Deny inbound. Deny outbound. :: @@ -88,11 +87,10 @@ FORWARD chain: REJECT all -- * virbr1 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable REJECT all -- virbr1 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable -- type=nat - - Allow inbound related to an established connection. Allow outbound, but - only from our expected subnet. Allow traffic between guests. Deny all other - inbound. Deny all other outbound. +- | type=nat + | Allow inbound related to an established connection. Allow outbound, but + only from our expected subnet. Allow traffic between guests. Deny all other + inbound. Deny all other outbound. :: @@ -103,11 +101,10 @@ FORWARD chain: REJECT all -- * virbr0 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable REJECT all -- virbr0 * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-port-unreachable -- type=routed - - Allow inbound, but only to our expected subnet. Allow outbound, but only - from our expected subnet. Allow traffic between guests. Deny all other - inbound. Deny all other outbound. +- | type=routed + | Allow inbound, but only to our expected subnet. Allow outbound, but only + from our expected subnet. Allow traffic between guests. Deny all other + inbound. Deny all other outbound. :: diff --git a/docs/formatcaps.rst b/docs/formatcaps.rst index da6b2157..3cccf708 100644 --- a/docs/formatcaps.rst +++ b/docs/formatcaps.rst @@ -37,12 +37,6 @@ The ```` element consists of the following child elements: The host UUID. ``cpu`` The host CPU architecture and features. - - Note that, while this element contains a ``topology`` sub-element, - the information contained therein is farily high-level and likely - not very useful when it comes to optimizing guest vCPU placement. - Look into the ``topology`` *element*, described below, for more - detailed information. ``power_management`` whether host is capable of memory suspend, disk hibernation, or hybrid suspend. @@ -50,48 +44,12 @@ The ```` element consists of the following child elements: This element exposes information on the hypervisor's migration capabilities, like live migration, supported URI transports, and so on. ``topology`` - This element describes the host CPU topology in detail. - - Management applications may want to use this information when defining new - guests: for example, in order to ensure that all vCPUs are scheduled on - CPUs that are in the same NUMA node or even CPU core. - - The ``cells`` sub-element contains a list of NUMA nodes, each one - represented by a single ``cell`` element. Within each ``cell``, a ``cpus`` - sub-element contains a list of logical CPUs, each one represented by a - single ``cpu`` element. In both cases, the ``num`` attribute of the - top-level element contains the number of children. - - Each ``cpu`` element contains the following attributes: - - ``id`` - CPU identifier. Can be used to refer to it in the context of - `CPU tuning `__. - - ``socket_id`` - Identifier for the physical package the CPU is in. - - ``die_id`` - Identifier for the die the CPU is in. - - Note that, even if this attribute is present, you might not be able to - define guests with multiple CPU dies. - - ``cluster_id`` - Identifier for the cluster the CPU is in. - - Note that, even if this attribute is present, you might not be able to - define guests with multiple CPU clusters. - - ``core_id`` - Identifier for the core the CPU is in. - - ``siblings`` - List of CPUs that are in the same core. - - The list will include the current CPU, plus all other CPUs that have the - same values for ``socket_id``, ``die_id``, ``cluster_id`` and ``core_id``. - + This element embodies the host internal topology. Management applications may + want to learn this information when orchestrating new guests - e.g. due to + reduce inter-NUMA node transfers. Note that the ``sockets`` value reported + here is per-NUMA-node; this is in contrast to the value given in domain + definitions, which is interpreted as a total number of sockets for the + domain. ``secmodel`` To find out default security labels for different security models you need to parse this element. In contrast with the former elements, this is repeated @@ -148,11 +106,11 @@ The ```` element will typically wrap up the following elements: If present, 32-bit guests can use PAE address space extensions, :since:`since 0.4.1` ``nonpae`` - If present, 32-bit guests can be run without requiring PAE, - :since:`since 0.4.1` + If present, 32-bit guests can be run without requiring PAE, :since:`since + 0.4.1` ``ia64_be`` - If present, IA64 guests can be run in big-endian mode, - :since:`since 0.4.1` + If present, IA64 guests can be run in big-endian mode, :since:`since + 0.4.1` ``acpi`` If this element is present, the ``default`` attribute describes whether the hypervisor exposes ACPI to the guest by default, and the ``toggle`` @@ -202,7 +160,7 @@ capabilities enabled in the chip and BIOS you will see: - + @@ -267,14 +225,14 @@ capabilities enabled in the chip and BIOS you will see: - - - - - - - - + + + + + + + + diff --git a/docs/formatdomain.rst b/docs/formatdomain.rst index 47d3e212..310d2bc4 100644 --- a/docs/formatdomain.rst +++ b/docs/formatdomain.rst @@ -50,12 +50,11 @@ General metadata The content of the ``uuid`` element provides a globally unique identifier for the virtual machine. The format must be RFC 4122 compliant, eg ``3e3fce45-4f53-4fa7-bb32-11f34168b82b``. If omitted when defining/creating a - new machine, a random UUID is generated. :since:`Since 0.0.1` - - :since:`Since 0.8.7`, it is also possible to provide the UUID via a - `SMBIOS System Information`_ specification. + new machine, a random UUID is generated. It is also possible to provide the + UUID via a `SMBIOS System Information`_ specification. :since:`Since 0.0.1, + sysinfo since 0.8.7` ``genid`` - :since:`Since 4.4.0`, the ``genid`` element can be used to add a Virtual + :since:`Since 4.4.0` , the ``genid`` element can be used to add a Virtual Machine Generation ID which exposes a 128-bit, cryptographically random, integer value identifier, referred to as a Globally Unique Identifier (GUID) using the same format as the ``uuid``. The value is used to help notify the @@ -77,7 +76,7 @@ General metadata ``title`` The optional element ``title`` provides space for a short description of the - domain. The title should not contain any newlines. :since:`Since 0.9.10`. + domain. The title should not contain any newlines. :since:`Since 0.9.10` . ``description`` The content of the ``description`` element provides a human readable description of the virtual machine. This data is not used by libvirt in any @@ -201,8 +200,8 @@ harddisk, cdrom, network) determining where to obtain/find the boot image. ``docs/interop/firmware.json`` in QEMU repository. Regular users do not need to bother. :since:`Since 5.2.0 (QEMU and KVM only)` For VMware guests, this is set to ``efi`` when the guest uses UEFI, and it is - not set when using BIOS. - :since:`Since 5.3.0 (VMware ESX and Workstation/Player)` + not set when using BIOS. :since:`Since 5.3.0 (VMware ESX and + Workstation/Player)` ``type`` The content of the ``type`` element specifies the type of operating system to be booted in the virtual machine. ``hvm`` indicates that the OS is one @@ -339,8 +338,8 @@ them in production. This element has attribute ``useserial`` with possible values ``yes`` or ``no``. It enables or disables Serial Graphics Adapter which allows users to see BIOS messages on a serial port. Therefore, one needs to have `Serial port`_ - defined. :since:`Since 0.9.4`. - The ``rebootTimeout`` attribute (:since:`since 0.10.2 (QEMU only)`) + defined. :since:`Since 0.9.4` . :since:`Since + 0.10.2 (QEMU only)` there is another attribute, ``rebootTimeout`` that controls whether and after how long the guest should start booting again in case the boot fails (according to BIOS). The value is in milliseconds with maximum of ``65535`` and special value ``-1`` disables the reboot. @@ -409,8 +408,8 @@ and full virtualized guests. console (eg serial port), or the installation media source / kickstart file ``dtb`` The contents of this element specify the fully-qualified path to the - (optional) device tree binary (dtb) image in the host OS. - :since:`Since 1.0.4` + (optional) device tree binary (dtb) image in the host OS. :since:`Since + 1.0.4` Container boot ~~~~~~~~~~~~~~ @@ -602,7 +601,7 @@ layout of sub-elements, with supported values of: validation and ``date`` format checking, all values are passed as strings to the hypervisor driver. ``chassis`` - :since:`Since 4.1.0`, this is block 3 of SMBIOS, with entry names drawn + :since:`Since 4.1.0,` this is block 3 of SMBIOS, with entry names drawn from: ``manufacturer`` @@ -689,8 +688,8 @@ CPU Allocation :since:`Since 0.4.4` ``current`` The optional attribute ``current`` can be used to specify whether fewer - than the maximum number of virtual CPUs should be enabled. - :since:`Since 0.8.5` + than the maximum number of virtual CPUs should be enabled. :since:`Since + 0.8.5` ``placement`` The optional attribute ``placement`` can be used to indicate the CPU placement mode for domain process. The value can be either "static" or @@ -887,8 +886,8 @@ CPU Tuning The optional ``period`` element specifies the enforcement interval (unit: microseconds). Within ``period``, each vCPU of the domain will not be allowed to consume more than ``quota`` worth of runtime. The value should be in range - [1000, 1000000]. A period with value 0 means no value. - :since:`Only QEMU driver support since 0.9.4, LXC since 0.9.10` + [1000, 1000000]. A period with value 0 means no value. :since:`Only QEMU + driver support since 0.9.4, LXC since 0.9.10` ``quota`` The optional ``quota`` element specifies the maximum allowed bandwidth (unit: microseconds). A domain with ``quota`` as any negative value indicates that @@ -901,8 +900,8 @@ CPU Tuning The optional ``global_period`` element specifies the enforcement CFS scheduler interval (unit: microseconds) for the whole domain in contrast with ``period`` which enforces the interval per vCPU. The value should be in range - 1000, 1000000]. A ``global_period`` with value 0 means no value. - :since:`Only QEMU driver support since 1.3.3` + 1000, 1000000]. A ``global_period`` with value 0 means no value. :since:`Only + QEMU driver support since 1.3.3` ``global_quota`` The optional ``global_quota`` element specifies the maximum allowed bandwidth (unit: microseconds) within a period for the whole domain. A domain with @@ -915,8 +914,8 @@ CPU Tuning (unit: microseconds). Within ``emulator_period``, emulator threads (those excluding vCPUs) of the domain will not be allowed to consume more than ``emulator_quota`` worth of runtime. The value should be in range [1000, - 1000000]. A period with value 0 means no value. - :since:`Only QEMU driver support since 0.10.0` + 1000000]. A period with value 0 means no value. :since:`Only QEMU driver + support since 0.10.0` ``emulator_quota`` The optional ``emulator_quota`` element specifies the maximum allowed bandwidth (unit: microseconds) for domain's emulator threads (those excluding @@ -930,8 +929,8 @@ CPU Tuning (unit: microseconds) for IOThreads. Within ``iothread_period``, each IOThread of the domain will not be allowed to consume more than ``iothread_quota`` worth of runtime. The value should be in range [1000, 1000000]. An - iothread_period with value 0 means no value. - :since:`Only QEMU driver support since 2.1.0` + iothread_period with value 0 means no value. :since:`Only QEMU driver support + since 2.1.0` ``iothread_quota`` The optional ``iothread_quota`` element specifies the maximum allowed bandwidth (unit: microseconds) for IOThreads. A domain with @@ -939,8 +938,8 @@ CPU Tuning have infinite bandwidth, which means that it is not bandwidth controlled. The value should be in range [1000, 17592186044415] or less than 0. An ``iothread_quota`` with value 0 means no value. You can use this feature to - ensure that all IOThreads run at the same speed. - :since:`Only QEMU driver support since 2.1.0` + ensure that all IOThreads run at the same speed. :since:`Only QEMU driver + support since 2.1.0` ``vcpusched``, ``iothreadsched`` and ``emulatorsched`` The optional ``vcpusched``, ``iothreadsched`` and ``emulatorsched`` elements specify the scheduler type (values ``batch``, ``idle``, ``fifo``, ``rr``) for @@ -1053,7 +1052,7 @@ Memory Allocation configured for the guest (See `CPU model and topology`_) the ``memory`` element can be omitted. In the case of crash, optional attribute ``dumpCore`` can be used to control whether the guest memory should be included in the generated - coredump or not (values "on", "off"). ``unit`` :since:`since 0.9.11`, + coredump or not (values "on", "off"). ``unit`` :since:`since 0.9.11` , ``dumpCore`` :since:`since 0.10.2 (QEMU only)` ``maxMemory`` The run time maximum memory allocation of the guest. The initial memory @@ -1064,7 +1063,7 @@ Memory Allocation for adding memory to the guest. The bounds are hypervisor specific. Note that due to alignment of the memory chunks added via memory hotplug the full size allocation specified by this element may be impossible to achieve. - :since:`Since 1.2.14 supported by the QEMU driver`. + :since:`Since 1.2.14 supported by the QEMU driver.` ``currentMemory`` The actual allocation of memory for the guest. This value can be less than the maximum allocation, to allow for ballooning up the guests memory on the @@ -1131,7 +1130,7 @@ influence how virtual memory pages are backed by host pages. above. :since:`Since 1.0.6` ``source`` Using the ``type`` attribute, it's possible to provide "file" to utilize file - memorybacking or keep the default "anonymous". :since:`Since 4.10.0`, you + memorybacking or keep the default "anonymous". :since:`Since 4.10.0` , you may choose "memfd" backing. (QEMU/KVM only) ``access`` Using the ``mode`` attribute, specify if the memory is to be "shared" or @@ -1378,7 +1377,7 @@ following collection of elements. :since:`Since 0.7.5` core2duo Intel - + @@ -1389,7 +1388,7 @@ following collection of elements. :since:`Since 0.7.5` - + ... @@ -1415,7 +1414,7 @@ In case no restrictions need to be put on CPU model and its features, a simpler ... - + ... @@ -1443,7 +1442,7 @@ In case no restrictions need to be put on CPU model and its features, a simpler :since:`Since 0.8.5` the ``match`` attribute can be omitted and will default to ``exact``. Sometimes the hypervisor is not able to create a virtual CPU - exactly matching the specification passed by libvirt. :since:`Since 3.2.0`, + exactly matching the specification passed by libvirt. :since:`Since 3.2.0` , an optional ``check`` attribute can be used to request a specific way of checking whether the virtual CPU matches the specification. It is usually safe to omit this attribute when starting a domain and stick with the default @@ -1466,7 +1465,7 @@ In case no restrictions need to be put on CPU model and its features, a simpler specification and the domain will not be started unless the two CPUs match. - :since:`Since 0.9.10`, an optional ``mode`` attribute may be used to make it + :since:`Since 0.9.10` , an optional ``mode`` attribute may be used to make it easier to configure a guest CPU to be as close to host CPU as possible. Possible values for the ``mode`` attribute are: @@ -1564,7 +1563,7 @@ In case no restrictions need to be put on CPU model and its features, a simpler directory ``cpu_map``, installed in libvirt's data directory. If a hypervisor is not able to use the exact CPU model, libvirt automatically falls back to a closest model supported by the hypervisor while maintaining the list of CPU - features. :since:`Since 0.9.10`, an optional ``fallback`` attribute can be + features. :since:`Since 0.9.10` , an optional ``fallback`` attribute can be used to forbid this behavior, in which case an attempt to start a domain requesting an unsupported CPU model will fail. Supported values for ``fallback`` attribute are: ``allow`` (this is the default), and ``forbid``. @@ -1579,20 +1578,14 @@ In case no restrictions need to be put on CPU model and its features, a simpler supported vendors can be found in ``cpu_map/*_vendors.xml``. ``topology`` The ``topology`` element specifies requested topology of virtual CPU provided - to the guest. - Its attributes ``sockets``, ``dies`` (:since:`Since 6.1.0`), ``clusters`` - (:since:`Since 10.1.0`), ``cores``, and ``threads`` accept non-zero positive - integer values. - They refer to the total number of CPU sockets, number of dies per socket, - number of clusters per die, number of cores per cluster, and number of - threads per core, respectively. - The ``dies`` and ``clusters`` attributes are optional and will default to 1 - if omitted, while the other attributes are all mandatory. - Hypervisors may require that the maximum number of vCPUs specified + to the guest. Four attributes, ``sockets``, ``dies``, ``cores``, and + ``threads``, accept non-zero positive integer values. They refer to the + total number of CPU sockets, number of dies per socket, number of cores per + die, and number of threads per core, respectively. The ``dies`` attribute is + optional and will default to 1 if omitted, while the other attributes are all + mandatory. Hypervisors may require that the maximum number of vCPUs specified by the ``cpus`` element equals to the number of vcpus resulting from the topology. - Moreover, not all architectures and machine types support specifying a value - other than 1 for all attributes. ``feature`` The ``cpu`` element can contain zero or more ``feature`` elements used to fine-tune features provided by the selected CPU model. The list of known @@ -1679,8 +1672,8 @@ In case no restrictions need to be put on CPU model and its features, a simpler address bits for ``passthrough`` mode, i.e. in case the host CPU reports more bits than that, ``limit`` is used. :since:`Since 9.3.0` -Guest NUMA topology can be specified using the ``numa`` element. -:since:`Since 0.9.8` +Guest NUMA topology can be specified using the ``numa`` element. :since:`Since +0.9.8` :: @@ -1905,7 +1898,7 @@ QEMU/KVM/HVF supports the ``on_poweroff`` and ``on_reboot`` events handling the ``destroy`` and ``restart`` actions, but the combination of ``on_poweroff`` set to ``restart`` and ``on_reboot`` set to ``destroy`` is forbidden. -The ``on_crash`` event supports these additional actions :since:`since 0.8.4`. +The ``on_crash`` event supports these additional actions :since:`since 0.8.4` . ``coredump-destroy`` The crashed domain's core will be dumped, and then the domain will be @@ -1914,7 +1907,7 @@ The ``on_crash`` event supports these additional actions :since:`since 0.8.4`. The crashed domain's core will be dumped, and then the domain will be restarted with the same configuration -:since:`Since 3.9.0`, the lifecycle events can be configured via the +:since:`Since 3.9.0` , the lifecycle events can be configured via the `virDomainSetLifecycleAction `__ API. @@ -1989,8 +1982,6 @@ Hypervisors may allow certain CPU / machine features to be toggled on/off. - - @@ -2023,8 +2014,6 @@ Hypervisors may allow certain CPU / machine features to be toggled on/off. 128 - - ... @@ -2041,9 +2030,8 @@ are: ACPI is useful for power management, for example, with KVM or HVF guests it is required for graceful shutdown to work. ``apic`` - APIC allows the use of programmable IRQ management. - :since:`Since 0.10.2 (QEMU only)` there is an optional - attribute ``eoi`` with values ``on`` and + APIC allows the use of programmable IRQ management. :since:`Since 0.10.2 + (QEMU only)` there is an optional attribute ``eoi`` with values ``on`` and ``off`` which toggles the availability of EOI (End of Interrupt) for the guest. ``hap`` @@ -2079,11 +2067,9 @@ are: ipi Enable PV IPI support on, off :since:`4.10.0 (QEMU 3.1)` evmcs Enable Enlightened VMCS on, off :since:`4.10.0 (QEMU 3.1)` avic Enable use Hyper-V SynIC with hardware APICv/AVIC on, off :since:`8.10.0 (QEMU 6.2)` - emsr_bitmap Avoid unnecessary updates to L2 MSR Bitmap upon vmexits. on, off :since:`10.7.0 (QEMU 7.1)` - xmm_input Enable XMM Fast Hypercall Input on, off :since:`10.7.0 (QEMU 7.1)` =============== ====================================================================== ============================================ ======================================================= - :since:`Since 8.0.0`, the hypervisor can be configured further by setting + :since:`Since 8.0.0` , the hypervisor can be configured further by setting the ``mode`` attribute to one of the following values: ``custom`` @@ -2208,8 +2194,8 @@ are: ``htm`` Configure HTM (Hardware Transactional Memory) availability for pSeries guests. Possible values for the ``state`` attribute are ``on`` and ``off``. If the - attribute is not defined, the hypervisor default will be used. - :since:`Since 4.6.0` (QEMU/KVM only) + attribute is not defined, the hypervisor default will be used. :since:`Since + 4.6.0` (QEMU/KVM only) ``nested-hv`` Configure nested HV availability for pSeries guests. This needs to be enabled from the host (L0) in order to be effective; having HV support in the (L1) @@ -2222,8 +2208,8 @@ are: Some guests might require ignoring unknown Model Specific Registers (MSRs) reads and writes. It's possible to switch this by setting ``unknown`` attribute of ``msrs`` to ``ignore``. If the attribute is not defined, or set - to ``fault``, unknown reads and writes will not be ignored. - :since:`Since 5.1.0` (bhyve only) + to ``fault``, unknown reads and writes will not be ignored. :since:`Since + 5.1.0` (bhyve only) ``ccf-assist`` Configure ccf-assist (Count Cache Flush Assist) availability for pSeries guests. Possible values for the ``state`` attribute are ``on`` and ``off``. @@ -2246,9 +2232,9 @@ are: Possible values for the ``value`` attribute are ``broken`` (no protection), ``workaround`` (count cache flush), ``fixed-ibs`` (fixed by serializing indirect branches), ``fixed-ccd`` (fixed by disabling the cache count) and - ``fixed-na`` (fixed in hardware - no longer applicable). If the - attribute is not defined, the hypervisor default will be used. - :since:`Since 6.3.0` (QEMU/KVM only) + ``fixed-na (fixed in hardware - no longer applicable)``. If the + attribute is not defined, the hypervisor default will be used. :since:`Since + 6.3.0` (QEMU/KVM only) ``tcg`` Various features to change the behavior of the TCG accelerator. @@ -2262,16 +2248,6 @@ are: Depending on the ``enabled`` attribute (values ``yes``, ``no``) enable or disable QEMU asynchronous teardown to improve memory reclaiming on a guest. :since:`Since 9.6.0` (QEMU only) -``ras`` - Report host memory errors to a guest using ACPI and guest external abort - exceptions when enabled (``on``). If the attribute is not defined, the - hypervisor default will be used. - :since:`Since 10.4.0` (QEMU/KVM and ARM virt guests only) -``ps2`` - Depending on the ``state`` attribute (values ``on``, ``off``) enable or - disable the emulation of a PS/2 controller used by ``ps2`` bus input devices. - If the attribute is not defined, the hypervisor default will be used. - :since:`Since 10.7.0` (QEMU only) Time keeping ------------ @@ -2307,7 +2283,7 @@ Windows, however, expects it to be in so called 'localtime'. is hypervisor specific. ``localtime`` The guest clock will be synchronized to the host's configured timezone - when booted, if any. :since:`Since 0.9.11`, the ``adjustment`` attribute + when booted, if any. :since:`Since 0.9.11,` the ``adjustment`` attribute behaves the same as in 'utc' mode. ``timezone`` The guest clock will be synchronized to the requested timezone using the @@ -2328,8 +2304,8 @@ Windows, however, expects it to be in so called 'localtime'. epoch timestamp. :since:`Since 8.4.0`. - A ``clock`` may have zero or more ``timer`` sub-elements. - :since:`Since 0.8.0` + A ``clock`` may have zero or more ``timer`` sub-elements. :since:`Since + 0.8.0` ``timer`` Each timer element requires a ``name`` attribute, and has other optional @@ -2973,14 +2949,14 @@ paravirtualized driver is specified via the ``disk`` element. ``snapshot`` The ``name`` attribute of ``snapshot`` element can optionally specify an internal snapshot name to be used as the source for storage protocols. - Supported for 'rbd' :since:`since 1.2.11 (QEMU only)`. + Supported for 'rbd' :since:`since 1.2.11 (QEMU only).` ``config`` The ``file`` attribute for the ``config`` element provides a fully qualified path to a configuration file to be provided as a parameter to the client of a networked storage protocol. Supported for 'rbd' - :since:`since 1.2.11 (QEMU only)`. + :since:`since 1.2.11 (QEMU only).` ``auth`` - :since:`Since 3.9.0`, the ``auth`` element is supported for a + :since:`Since libvirt 3.9.0` , the ``auth`` element is supported for a disk ``type`` "network" that is using a ``source`` element with the ``protocol`` attributes "rbd", "iscsi", or "ssh". If present, the ``auth`` element provides the authentication credentials needed to access @@ -2996,14 +2972,14 @@ paravirtualized driver is specified via the ``disk`` element. ``usage`` attribute matching the key that was specified in the secret object. ``encryption`` - :since:`Since 3.9.0`, the ``encryption`` can be a sub-element of + :since:`Since libvirt 3.9.0` , the ``encryption`` can be a sub-element of the ``source`` element for encrypted storage sources. If present, specifies how the storage source is encrypted See the `Storage Encryption `__ page for more information. Note that the 'qcow' format of encryption is broken and thus is no longer - supported for use with disk images. ( :since:`Since 4.5.0` ) + supported for use with disk images. ( :since:`Since libvirt 4.5.0` ) ``reservations`` - :since:`Since 4.4.0`, the ``reservations`` can be a sub-element + :since:`Since libvirt 4.4.0` , the ``reservations`` can be a sub-element of the ``source`` element for storage sources (QEMU driver only). If present it enables persistent reservations for SCSI based disks. The element has one mandatory attribute ``managed`` with accepted values @@ -3016,7 +2992,7 @@ paravirtualized driver is specified via the ``disk`` element. specifying the role of hypervisor. It's recommended to allow libvirt manage the persistent reservations. ``initiator`` - :since:`Since 4.7.0`, the ``initiator`` element is supported for + :since:`Since libvirt 4.7.0` , the ``initiator`` element is supported for a disk ``type`` "network" that is using a ``source`` element with the ``protocol`` attribute "iscsi". If present, the ``initiator`` element provides the initiator IQN needed to access the source via mandatory @@ -3112,7 +3088,7 @@ paravirtualized driver is specified via the ``disk`` element. ``backingStore`` This element describes the backing store used by the disk specified by - sibling ``source`` element. :since:`Since 1.2.4`. If the hypervisor driver + sibling ``source`` element. :since:`Since 1.2.4.` If the hypervisor driver does not support the `backingStoreInput `__ ( :since:`Since 5.10.0` ) domain feature the ``backingStore`` is ignored on @@ -3165,14 +3141,14 @@ paravirtualized driver is specified via the ``disk`` element. ``type`` attribute of the mirror, similar to what is done for the overall ``disk`` device element. The ``job`` attribute mentions which API started the operation ("copy" for the ``virDomainBlockRebase`` API, or "active-commit" - for the ``virDomainBlockCommit`` API), :since:`since 1.2.7`. The attribute + for the ``virDomainBlockCommit`` API), :since:`since 1.2.7` . The attribute ``ready``, if present, tracks progress of the job: ``yes`` if the disk is - known to be ready to pivot, or, :since:`since 1.2.7`, ``abort`` or ``pivot`` + known to be ready to pivot, or, :since:`since 1.2.7` , ``abort`` or ``pivot`` if the job is in the process of completing. If ``ready`` is not present, the disk is probably still copying. For now, this element only valid in output; it is ignored on input. The ``source`` sub-element exists for all two-phase - jobs :since:`since 1.2.6`. Older libvirt supported only block copy to a - file, :since:`since 0.9.12`; for compatibility with older clients, such jobs + jobs :since:`since 1.2.6` . Older libvirt supported only block copy to a + file, :since:`since 0.9.12` ; for compatibility with older clients, such jobs include redundant information in the attributes ``file`` and ``format`` in the ``mirror`` element. ``target`` @@ -3182,7 +3158,7 @@ paravirtualized driver is specified via the ``disk`` element. name in the guest OS. Treat it as a device ordering hint. The optional ``bus`` attribute specifies the type of disk device to emulate; possible values are driver specific, with typical values being "ide", "scsi", - "virtio", "xen", "usb", "sata", or "sd" :since:`"sd" since 1.1.2`. If + "virtio", "xen", "usb", "sata", or "sd" :since:`"sd" since 1.1.2` . If omitted, the bus type is inferred from the style of the device name (e.g. a device named 'sda' will typically be exported using a SCSI bus). The optional attribute ``tray`` indicates the tray status of the removable disks (i.e. @@ -3207,8 +3183,8 @@ paravirtualized driver is specified via the ``disk`` element. this to the ``blkiotune`` element (See `Block I/O Tuning`_), which applies globally to the domain). Currently, the only tuning available is Block I/O throttling for qemu. This element has optional sub-elements; any sub-element - not specified or given with a value of 0 implies no limit. - :since:`Since 0.9.8` + not specified or given with a value of 0 implies no limit. :since:`Since + 0.9.8` ``total_bytes_sec`` The optional ``total_bytes_sec`` element is the total throughput limit in @@ -3303,26 +3279,23 @@ paravirtualized driver is specified via the ``disk`` element. "qcow2", and "qed". - The optional ``cache`` attribute controls the cache mechanism, possible values are "default", "none", "writethrough", "writeback", "directsync" - (:since:`since 0.9.5`; like "writethrough", but it bypasses the host page - cache) and "unsafe" (:since:`since 0.9.7`; host may cache all disk io, - and sync requests from guest are ignored). - :since:`Since 0.6.0` + (like "writethrough", but it bypasses the host page cache) and "unsafe" + (host may cache all disk io, and sync requests from guest are ignored). + :since:`Since 0.6.0, "directsync" since 0.9.5, "unsafe" since 0.9.7` - The optional ``error_policy`` attribute controls how the hypervisor will behave on a disk read or write error, possible values are "stop", - "report" (:since:`since 0.9.7`), "ignore", and "enospace". - The default is left to the discretion of the hypervisor. - :since:`Since 0.8.0`. - - The optional ``rerror_policy`` attribute controls behavior for read - errors only. If no rerror_policy is given, error_policy is + "report", "ignore", and "enospace". :since:`Since 0.8.0, "report" since + 0.9.7` The default is left to the discretion of the hypervisor. There is + also an optional ``rerror_policy`` that controls behavior for read errors + only. :since:`Since 0.9.7` . If no rerror_policy is given, error_policy is used for both read and write errors. If rerror_policy is given, it overrides the ``error_policy`` for read errors. Also note that "enospace" is not a valid policy for read errors, so if ``error_policy`` is set to "enospace" and no ``rerror_policy`` is given, the read error policy will be left at its default. - :since:`Since 0.9.7` - The optional ``io`` attribute controls specific policies on I/O; qemu - guests support "threads" and "native" :since:`Since 0.8.8`, io_uring - :since:`Since 6.3.0 (QEMU 5.0)`. + guests support "threads" and "native" :since:`Since 0.8.8` , io_uring + :since:`Since 6.3.0 (QEMU 5.0)` . - The optional ``ioeventfd`` attribute allows users to set `domain I/O asynchronous handling `__ for disk device. The default is left to the discretion of the hypervisor. @@ -3338,9 +3311,8 @@ paravirtualized driver is specified via the ``disk`` element. reduce the number of interrupts and exits for the guest. The default is determined by QEMU; usually if the feature is supported, default is on. In case there is a situation where this behavior is suboptimal, this - attribute provides a way to force the feature off. - :since:`Since 0.9.5 (QEMU and KVM only)` - **In general you should leave this option alone, + attribute provides a way to force the feature off. :since:`Since 0.9.5 + (QEMU and KVM only)` **In general you should leave this option alone, unless you are very certain you know what you are doing.** - The optional ``copy_on_read`` attribute controls whether to copy read backing file into the image file. The value can be either "on" or "off". @@ -3350,8 +3322,8 @@ paravirtualized driver is specified via the ``disk`` element. - The optional ``discard`` attribute controls whether discard requests (also known as "trim" or "unmap") are ignored or passed to the filesystem. The value can be either "unmap" (allow the discard request to be passed) or - "ignore" (ignore the discard request). - :since:`Since 1.0.6 (QEMU and KVM only)` + "ignore" (ignore the discard request). :since:`Since 1.0.6 (QEMU and KVM + only)` - The optional ``detect_zeroes`` attribute controls whether to detect zero write requests. The value can be "off", "on" or "unmap". First two values turn the detection off and on, respectively. The third value ("unmap") @@ -3365,31 +3337,11 @@ paravirtualized driver is specified via the ``disk`` element. `IOThreads Allocation`_). Multiple disks may be assigned to the same IOThread and are numbered from 1 to the domain iothreads value. Available for a disk device ``target`` configured to use - "virtio" ``bus`` and "pci" or "ccw" ``address`` types. - :since:`Since 1.2.8 (QEMU 2.1)` - *Note:* ``iothread`` is mutually exclusive with ``iothreads``. - - The optional ``iothreads`` sub-element allows specifying multiple IOThreads - via the ``iothread`` sub-element with attribute ``id`` the disk will use - for I/O operations. Optionally the ``iothread`` element can have multiple - ``queue`` subelements specifying that given iothread should be used to - handle given queues. :since:`Since 10.0.0 (QEMU 9.0, virtio disks only)`. - Example:: - - - - - - - - - - - - - + "virtio" ``bus`` and "pci" or "ccw" ``address`` types. :since:`Since 1.2.8 + (QEMU 2.1)` - The optional ``queues`` attribute specifies the number of virt queues for virtio-blk ( :since:`Since 3.9.0` ) or vhost-user-blk - ( :since:`Since 7.1.0` ) + ( :since `Since 7.1.0` ) - The optional ``queue_size`` attribute specifies the size of each virt queue for virtio-blk or vhost-user-blk. ( :since:`Since 7.8.0` ) - For virtio disks, `Virtio-related options`_ can also @@ -3409,8 +3361,8 @@ paravirtualized driver is specified via the ``disk`` element. image. When enabled, a discard request from within the guest will mark the qcow2 cluster as zero, but will keep the reference/offset of that cluster. But it will still pass the discard further to the lower layer. - This will resolve fragmentation within the qcow2 image. - :since:`Since 9.5.0 (QEMU 8.1)` + This will resolve fragmentation within the qcow2 image. :since:`Since 9.5.0 + (QEMU 8.1)` In the majority of cases the default configuration used by the hypervisor is sufficient so modifying this setting should not be necessary. For @@ -3453,7 +3405,7 @@ paravirtualized driver is specified via the ``disk`` element. together with general boot elements in `BIOS bootloader`_ section. :since:`Since 0.8.8` ``encryption`` - since:`Since 3.9.0` the ``encryption`` element is preferred + Starting with :since:`libvirt 3.9.0` the ``encryption`` element is preferred to be a sub-element of the ``source`` element. If present, specifies how the volume is encrypted using "qcow". See the `Storage Encryption `__ page for more information. @@ -3510,20 +3462,20 @@ paravirtualized driver is specified via the ``disk`` element. The ``type`` attribute is mandatory, and is typically "pci" or "drive". For a "pci" controller, additional attributes for ``bus``, ``slot``, and ``function`` must be present, as well as optional ``domain`` and - ``multifunction`` (:since:`since 0.9.7`). Multifunction defaults to 'off'. - For a "drive" controller, additional attributes ``controller``, ``bus``, - ``target`` (:since:`since 0.9.11`), and ``unit`` are available, each - defaulting to 0. + ``multifunction``. Multifunction defaults to 'off'; any other value requires + QEMU 0.1.3 and :since:`libvirt 0.9.7` . For a "drive" controller, additional + attributes ``controller``, ``bus``, ``target`` ( :since:`libvirt 0.9.11` ), + and ``unit`` are available, each defaulting to 0. ``auth`` - :since:`Since 3.9.0`, the ``auth`` element is preferred to be + Starting with :since:`libvirt 3.9.0` the ``auth`` element is preferred to be a sub-element of the ``source`` element. The element is still read and managed as a ``disk`` sub-element. It is invalid to use ``auth`` as both a - sub-element of ``disk`` and ``source``. - :since:`Since 0.9.7` + sub-element of ``disk`` and ``source``. The ``auth`` element was introduced + as a ``disk`` sub-element in :since:`libvirt 0.9.7.` ``geometry`` The optional ``geometry`` element provides the ability to override geometry settings. This mostly useful for S390 DASD-disks or older DOS-disks. - :since:`Since 0.10.0` + :since:`0.10.0` ``cyls`` The ``cyls`` attribute is the number of cylinders. @@ -3596,21 +3548,12 @@ A directory on the host that can be accessed directly from the guest. - - - - - - - - - ... ... @@ -3620,17 +3563,16 @@ A directory on the host that can be accessed directly from the guest. possible values are: ``mount`` - A host directory to mount in the guest. Used by LXC, OpenVZ - :since:`(since 0.6.2)` and QEMU/KVM :since:`(since 0.8.5)`. - This is the default ``type`` + A host directory to mount in the guest. Used by LXC, OpenVZ :since:`(since + 0.6.2)` and QEMU/KVM :since:`(since 0.8.5)` . This is the default ``type`` if one is not specified. This mode also has an optional sub-element ``driver``, with an attribute ``type='path'`` or ``type='handle'`` - :since:`(since 0.9.7)`. The driver block has an optional attribute + :since:`(since 0.9.7)` . The driver block has an optional attribute ``wrpolicy`` that further controls interaction with the host page cache; omitting the attribute gives default behavior, while the value ``immediate`` means that a host writeback is immediately triggered for all pages touched during a guest file write operation :since:`(since 0.9.10)` - . :since:`Since 6.2.0`, ``type='virtiofs'`` is also supported. Using + . :since:`Since 6.2.0` , ``type='virtiofs'`` is also supported. Using virtiofs requires setting up shared memory, see the guide: `Virtiofs `__ ``template`` @@ -3640,7 +3582,7 @@ A directory on the host that can be accessed directly from the guest. filesystem format will be autodetected. Only used by LXC driver. ``block`` A host block device to mount in the guest. The filesystem format will be - autodetected. Only used by LXC driver :since:`(since 0.9.5)`. + autodetected. Only used by LXC driver :since:`(since 0.9.5)` . ``ram`` An in-memory filesystem, using memory from the host OS. The source element has a single attribute ``usage`` which gives the memory usage limit in @@ -3651,7 +3593,7 @@ A directory on the host that can be accessed directly from the guest. guest. Only used by LXC driver :since:`(since 0.9.13)` The filesystem element has an optional attribute ``accessmode`` which - specifies the security mode for accessing the source :since:`(since 0.8.5)`. + specifies the security mode for accessing the source :since:`(since 0.8.5)` . Currently this only works with ``type='mount'`` for the QEMU/KVM driver. For driver type ``virtiofs``, only ``passthrough`` is supported. For other driver types, the possible values are: @@ -3670,16 +3612,15 @@ A directory on the host that can be accessed directly from the guest. usable for people who run the hypervisor as non-root. `More info `__ - :since:`Since 5.2.0`, the filesystem element has an optional attribute + :since:`Since 5.2.0` , the filesystem element has an optional attribute ``model`` with supported values "virtio-transitional", "virtio-non-transitional", or "virtio". See `Virtio transitional devices`_ for more details. The filesystem element has optional attributes ``fmode`` and ``dmode``. These two attributes control the creation mode for files and directories - when used with the ``mapped`` value for ``accessmode`` - (:since:`since 6.10.0, requires QEMU 2.10` ). - If not specified, QEMU creates files with mode + when used with the ``mapped`` value for ``accessmode`` (:since:`since 6.10.0, + requires QEMU 2.10` ). If not specified, QEMU creates files with mode ``600`` and directories with mode ``700``. The setuid, setgid, and sticky bit are unsupported. @@ -3723,8 +3664,6 @@ A directory on the host that can be accessed directly from the guest. can also be set. ( :since:`Since 3.5.0` ) - For ``virtiofs``, the ``queue`` attribute can be used to specify the queue size (i.e. how many requests can the queue fit). ( :since:`Since 6.2.0` ) - - QEMU supports ``mtp`` which exposes a virtual USB MTP device to the - guest. ( :since:`Since 10.2.0` ) ``binary`` The optional ``binary`` element can tune the options for virtiofsd. All of @@ -3744,10 +3683,6 @@ A directory on the host that can be accessed directly from the guest. The thread pool helps increase the number of requests in flight when used with storage that has a higher latency. However, it has an overhead, and so for fast, low latency filesystems, it may be best to turn it off. ( :since:`Since 8.5.0` ) - Element ``openfiles`` accepts one attribute ``max`` which defines the - maximum number of file descriptors. Non-positive values are forbidden. - The upper bound on the number of open files is implementation defined. - ( :since:`Since 10.6.0` ) ``source`` The resource on the host that is being accessed in the guest. The ``name`` attribute must be used with ``type='template'``, and the ``dir`` attribute @@ -3762,10 +3697,6 @@ A directory on the host that can be accessed directly from the guest. Where the ``source`` can be accessed in the guest. For most drivers this is an automatic mount point, but for QEMU/KVM this is merely an arbitrary string tag that is exported to the guest as a hint for where to mount. -``idmap`` - For ``virtiofs``, an ``idmap`` element can be specified to map IDs in the user - namespace. See the `Container boot`_ section for the syntax of the element. - :since:`Since 10.0.0` ``readonly`` Enables exporting filesystem as a readonly mount for guest, by default read-write access is given (currently only works for QEMU/KVM driver; not @@ -3804,9 +3735,8 @@ control where on the bus the device will be placed: 0xff, inclusive), ``slot`` (a hex value between 0x0 and 0x1f, inclusive), and ``function`` (a value between 0 and 7, inclusive). Also available is the ``multifunction`` attribute, which controls turning on the multifunction bit - for a particular slot/function in the PCI control register - ( :since:`since 0.9.7, requires QEMU 0.13` ). - ``multifunction`` defaults to 'off', but should + for a particular slot/function in the PCI control register ( :since:`since + 0.9.7, requires QEMU 0.13` ). ``multifunction`` defaults to 'off', but should be set to 'on' for function 0 of a slot that will have multiple functions used. ( :since:`Since 4.10.0` ), PCI address extensions depending on the architecture are supported. For example, PCI addresses for S390 guests will @@ -3814,7 +3744,7 @@ control where on the bus the device will be placed: between 0x0001 and 0xffff, inclusive), and ``fid`` (a hex value between 0x00000000 and 0xffffffff, inclusive) used by PCI devices on S390 for User-defined Identifiers and Function Identifiers. - :since:`Since 1.3.5`, some hypervisor drivers may accept an + :since:`Since 1.3.5` , some hypervisor drivers may accept an ``
`` element with no other attributes as an explicit request to assign a PCI address for the device rather than some other type of address that may also be appropriate for that same device (e.g. virtio-mmio). @@ -3832,7 +3762,7 @@ control where on the bus the device will be placed: ``ccid`` A CCID address, for smart-cards, has the following additional attributes: ``bus`` (a 2-digit bus number), and ``slot`` attribute (a 2-digit slot within - the bus). :since:`Since 0.8.8`. + the bus). :since:`Since 0.8.8.` ``usb`` USB addresses have the following additional attributes: ``bus`` (a hex value between 0 and 0xfff, inclusive), and ``port`` (a dotted notation of up to @@ -3843,7 +3773,7 @@ control where on the bus the device will be placed: assigned at a non-zero multiple of 0x00001000, but other addresses are valid and permitted by libvirt. Each address has the following additional attribute: ``reg`` (the hex value address of the starting register). - :since:`Since 0.9.9`. + :since:`Since 0.9.9.` ``ccw`` S390 guests with a ``machine`` value of s390-ccw-virtio use the native CCW bus for I/O devices. CCW bus addresses have the following additional @@ -3904,7 +3834,7 @@ you know what you are doing. Virtio transitional devices ~~~~~~~~~~~~~~~~~~~~~~~~~~~ -:since:`Since 5.2.0`, some of QEMU's virtio devices, when used with PCI/PCIe +:since:`Since 5.2.0` , some of QEMU's virtio devices, when used with PCI/PCIe machine types, accept the following ``model`` values: ``virtio-transitional`` @@ -3982,7 +3912,7 @@ specific features, such as: ``virtio-serial`` The ``virtio-serial`` controller has two additional optional attributes ``ports`` and ``vectors``, which control how many devices can be connected - through the controller. :since:`Since 5.2.0`, it supports an optional + through the controller. :since:`Since 5.2.0` , it supports an optional attribute ``model`` which can be 'virtio', 'virtio-transitional', or 'virtio-non-transitional'. See `Virtio transitional devices`_ for more details. ``scsi`` @@ -3996,18 +3926,18 @@ specific features, such as: "piix3-uhci", "piix4-uhci", "ehci", "ich9-ehci1", "ich9-uhci1", "ich9-uhci2", "ich9-uhci3", "vt82c686b-uhci", "pci-ohci", "nec-xhci", "qusb1" (xen pvusb with qemu backend, version 1.1), "qusb2" (xen pvusb with qemu backend, - version 2.0) or "qemu-xhci". Additionally, :since:`since 0.10.0`, if the USB + version 2.0) or "qemu-xhci". Additionally, :since:`since 0.10.0` , if the USB bus needs to be explicitly disabled for the guest, ``model='none'`` may be - used. :since:`Since 1.0.5`, no default USB controller will be built on s390. - :since:`Since 1.3.5`, USB controllers accept a ``ports`` attribute to + used. :since:`Since 1.0.5` , no default USB controller will be built on s390. + :since:`Since 1.3.5` , USB controllers accept a ``ports`` attribute to configure how many devices can be connected to the controller. ``ide`` :since:`Since 3.10.0` for the vbox driver, the ``ide`` controller has an optional attribute ``model``, which is one of "piix3", "piix4" or "ich6". ``xenbus`` - :since:`Since 5.2.0`, the ``xenbus`` controller has an optional attribute + :since:`Since 5.2.0` , the ``xenbus`` controller has an optional attribute ``maxGrantFrames``, which specifies the maximum number of grant frames the - controller makes available for connected devices. :since:`Since 6.3.0`, the + controller makes available for connected devices. :since:`Since 6.3.0` , the xenbus controller supports the optional ``maxEventChannels`` attribute, which specifies maximum number of event channels (PV interrupts) that can be used by the guest. @@ -4026,8 +3956,8 @@ An optional sub-element ``driver`` can specify the driver specific options: matching the number of vCPUs. :since:`Since 1.0.5 (QEMU and KVM only)` ``cmd_per_lun`` The optional ``cmd_per_lun`` attribute specifies the maximum number of - commands that can be queued on devices controlled by the host. - :since:`Since 1.2.7 (QEMU and KVM only)` + commands that can be queued on devices controlled by the host. :since:`Since + 1.2.7 (QEMU and KVM only)` ``max_sectors`` The optional ``max_sectors`` attribute specifies the maximum amount of data in bytes that will be transferred to or from the device in a single command. @@ -4039,7 +3969,7 @@ An optional sub-element ``driver`` can specify the driver specific options: or not. Accepted values are "on" and "off". :since:`Since 1.2.18` ``iothread`` Supported for controller type ``scsi`` using model ``virtio-scsi`` for - ``address`` types ``pci`` and ``ccw`` :since:`since 1.3.5 (QEMU 2.4)`. The + ``address`` types ``pci`` and ``ccw`` :since:`since 1.3.5 (QEMU 2.4)` . The optional ``iothread`` attribute assigns the controller to an IOThread as defined by the range for the domain ``iothreads`` (See `IOThreads Allocation`_). Each SCSI ``disk`` @@ -4097,7 +4027,7 @@ emulating (e.g. "i82801b11-bridge") rather than simply the class of device ("pcie-to-pci-bridge", "pci-bridge"), which is set in the controller element's model **attribute**. In almost all cases, you should not manually add a ```` subelement to a controller, nor should you modify one that is -automatically generated by libvirt. :since:`Since 1.2.19 (QEMU only)`. +automatically generated by libvirt. :since:`Since 1.2.19 (QEMU only).` PCI controllers also have an optional subelement ```` with the attributes and subelements listed below. These are configurable items that 1) @@ -4105,7 +4035,7 @@ are visible to the guest OS so must be preserved for guest ABI compatibility, and 2) are usually left to default values or derived automatically by libvirt. In almost all cases, you should not manually add a ```` subelement to a controller, nor should you modify the values in the those that are automatically -generated by libvirt. :since:`Since 1.2.19 (QEMU only)`. +generated by libvirt. :since:`Since 1.2.19 (QEMU only).` ``chassisNr`` PCI controllers that have attribute model="pci-bridge", can also have a @@ -4163,7 +4093,7 @@ generated by libvirt. :since:`Since 1.2.19 (QEMU only)`. ``node`` Some PCI controllers (``pci-expander-bus`` for the pc machine type, - ``pcie-expander-bus`` for the q35 machine type and, :since:`since 3.6.0`, + ``pcie-expander-bus`` for the q35 machine type and, :since:`since 3.6.0` , ``pci-root`` for the pseries machine type) can have an optional ```` subelement within the ```` subelement, which is used to set the NUMA node reported to the guest OS for that bus - the guest OS will then know that @@ -4173,12 +4103,6 @@ generated by libvirt. :since:`Since 1.2.19 (QEMU only)`. ``index`` pci-root controllers for pSeries guests use this attribute to record the order they will show up in the guest. :since:`Since 3.6.0` -``memReserve`` - Some PCI devices have non-prefetchable memory bar larger than 2MiB. Use this - attribute to override value computed by firmware and thus make controller - reserve more memory (in KiB) so that such PCI device can be hot plugged. - For cold plugged PCI devices, the firmware will automatically reserve the - correct amount of memory. :since:`Since 10.3.0` For machine types which provide an implicit PCI bus, the pci-root controller with index=0 is auto-added and required to use PCI devices. pci-root has no @@ -4227,8 +4151,8 @@ bridge device that can connect only to one of the 31 slots on the pcie-root bus on its upstream side, and makes a single (PCIe, hotpluggable) port available on the downstream side (at slot='0'). pcie-root-port can be used to provide a single slot to later hotplug a PCIe device (but is not itself hotpluggable - it -must be in the configuration when the domain is started). -( :since:`since 1.2.19` ) +must be in the configuration when the domain is started). ( :since:`since +1.2.19` ) pcie-switch-upstream-port is a more flexible (but also more complex) device that can only plug into a pcie-root-port or pcie-switch-downstream-port on the @@ -4296,9 +4220,9 @@ Host device assignment USB / PCI / SCSI devices ^^^^^^^^^^^^^^^^^^^^^^^^ -USB (:since:`since 0.4.4`), PCI (:since:`since 0.6.0, KVM only`) and -SCSI (:since:`since 1.0.6, KVM only`) devices attached to the host can be -passed through to the guest using the ``hostdev`` element. +USB, PCI and SCSI devices attached to the host can be passed through to the +guest using the ``hostdev`` element. :since:`since after 0.4.4 for USB, 0.6.0 +for PCI (KVM only) and 1.0.6 for SCSI (KVM only)` : :: @@ -4416,14 +4340,6 @@ or: starting the guest or hot-plugging the device and ``virNodeDeviceReAttach`` (or ``virsh nodedev-reattach``) after hot-unplug or stopping the guest. - :since:`Since 10.3.0` an optional ``display`` attribute may be used to - enable using a vgpu device as a display device for the guest. Supported - values are either ``on`` or ``off`` (default). There is also an optional - ``ramfb`` attribute with values of either ``on`` or ``off`` (default). - When enabled, the ``ramfb`` attribute provides a memory framebuffer device - to the guest. This framebuffer allows the vgpu to be used as a boot display - before the gpu driver is loaded within the guest. ``ramfb`` requires the - ``display`` attribute to be set to ``on``. ``scsi`` For SCSI devices, user is responsible to make sure the device is not used by host. If supported by the hypervisor and OS, the optional ``sgio`` ( @@ -4437,7 +4353,7 @@ or: ``scsi_host`` :since:`since 2.5.0` For SCSI devices, user is responsible to make sure the device is not used by host. This ``type`` passes all LUNs presented by - a single HBA to the guest. :since:`Since 5.2.0`, the ``model`` attribute + a single HBA to the guest. :since:`Since 5.2.0,` the ``model`` attribute can be specified further with "virtio-transitional", "virtio-non-transitional", or "virtio". `Virtio transitional devices`_ for more details. @@ -4457,7 +4373,7 @@ or: are either ``on`` or ``off`` (default is 'off'). It is required to use a graphical framebuffer (See `Graphical framebuffers`_) in order to use this attribute, currently only supported with VNC, Spice and egl-headless graphics - devices. :since:`Since version 5.10.0`, there is an optional ``ramfb`` + devices. :since:`Since version 5.10.0` , there is an optional ``ramfb`` attribute for devices with ``model='vfio-pci'``. Supported values are either ``on`` or ``off`` (default is 'off'). When enabled, this attribute provides a memory framebuffer device to the guest. This framebuffer will @@ -4482,7 +4398,7 @@ or: ``vendor`` and ``product`` elements or by the device's address on the host using the ``address`` element. - :since:`Since 1.0.0`, the ``source`` element of USB devices may contain + :since:`Since 1.0.0` , the ``source`` element of USB devices may contain ``startupPolicy`` attribute which can be used to define policy what to do if the specified host USB device is not found. The attribute accepts the following values: @@ -4508,7 +4424,7 @@ or: ``pci`` PCI devices can only be described by their ``address``. - :since:`Since 6.8.0 (Xen only)`, the ``source`` element of a PCI device + :since:`Since 6.8.0 (Xen only)` , the ``source`` element of a PCI device may contain the ``writeFiltering`` attribute to control write access to the PCI configuration space. By default Xen only allows writes of known safe values to the configuration space. Setting ``writeFiltering='no'`` @@ -4521,7 +4437,7 @@ or: hypervisors support larger ``target`` and ``unit`` values. It is up to each hypervisor to determine the maximum value supported for the adapter. - :since:`Since 1.2.8`, the ``source`` element of a SCSI device may contain + :since:`Since 1.2.8` , the ``source`` element of a SCSI device may contain the ``protocol`` attribute. When the attribute is set to "iscsi", the host device XML follows the network disk device (See `Hard drives, floppy disks, CDROMs`_) using the @@ -4533,7 +4449,7 @@ or: subelement. ``scsi_host`` - :since:`Since 2.5.0`, multiple LUNs behind a single SCSI HBA are + :since:`Since 2.5.0` , multiple LUNs behind a single SCSI HBA are described by a ``protocol`` attribute set to "vhost" and a ``wwpn`` attribute that is the vhost_scsi wwpn (16 hexadecimal digits with a prefix of "naa.") established in the host configfs. @@ -4559,17 +4475,16 @@ or: memory map. (In PCI documentation, the "rombar" setting controls the presence of the Base Address Register for the ROM). If no rom bar is specified, the qemu default will be used (older versions of qemu used a default of "off", - while newer qemus have a default of "on"). - :since:`Since 0.9.7 (QEMU and KVM only)`. - The optional ``file`` attribute contains an absolute path to a + while newer qemus have a default of "on"). :since:`Since 0.9.7 (QEMU and KVM + only)` . The optional ``file`` attribute contains an absolute path to a binary file to be presented to the guest as the device's ROM BIOS. This can be useful, for example, to provide a PXE boot ROM for a virtual function of an sr-iov capable ethernet device (which has no boot ROMs for the VFs). - :since:`Since 0.9.10 (QEMU and KVM only)`. The optional ``enabled`` + :since:`Since 0.9.10 (QEMU and KVM only)` . The optional ``enabled`` attribute can be set to ``no`` to disable PCI ROM loading completely for the device; if PCI ROM loading is disabled through this attribute, attempts to tweak the loading process further using the ``bar`` or ``file`` attributes - will be rejected. :since:`Since 4.3.0 (QEMU and KVM only)`. + will be rejected. :since:`Since 4.3.0 (QEMU and KVM only)` . ``address`` The ``address`` element for USB devices has a ``bus`` and ``device`` attribute to specify the USB bus and device number the device appears at on @@ -4585,56 +4500,35 @@ or: an error. See the `Device Addresses`_ section for more details on the address element. ``driver`` - PCI hostdev devices can have an optional ``driver`` subelement that - specifies which host driver to bind to the device when preparing it - for assignment to a guest. - :since:`Since 10.0.0 (useful for QEMU and KVM only)`. - This is done by setting the ```` element's ``model`` - attribute, for example:: - - ... - - - ... - - tells libvirt to bind the driver "vfio-pci-igb" to the device on - the host before handing it off to QEMU for assignment to the - guest. Normally libvirt will bind the device to the "best match" - VFIO-type driver that it finds in the kernel's modules.alias file - (based on matching the corresponding fields of the device's - modalias file in sysfs) or to the generic "vfio-pci" driver if no - better match is found (vfio-pci is always used prior to libvirt - 10.0.0), but in cases when the correct driver isn't listed in - modules.alias then the desired device-specific driver can be forced - by setting driver name, or if the device-specific driver that is - found is "problematic" in some way, the generic vfio-pci driver - similarly be forced. - - (Note: :since:`Since 1.0.5`, the ``name`` attribute has been - described to be used to select the type of PCI device assignment - ("vfio", "kvm", or "xen"), but those values have been mostly - useless, since the type of device assignment is actually determined - by which hypservisor is in use. This means that you may - occasionally see ```` or ```` in a domain's status XML, or more rarely in config, - but those specific values are essentially ignored.) - + PCI devices can have an optional ``driver`` subelement that specifies which + backend driver to use for PCI device assignment. Use the ``name`` attribute + to select either "vfio" (for the new VFIO device assignment backend, which is + compatible with UEFI SecureBoot) or "kvm" (the legacy device assignment + handled directly by the KVM kernel module) :since:`Since 1.0.5 (QEMU and KVM + only, requires kernel 3.6 or newer)` . When specified, device assignment will + fail if the requested method of device assignment isn't available on the + host. When not specified, the default is "vfio" on systems where the VFIO + driver is available and loaded, and "kvm" on older systems, or those where + the VFIO driver hasn't been loaded :since:`Since 1.1.3` (prior to that the + default was always "kvm"). ``readonly`` Indicates that the device is readonly, only supported by SCSI host device now. :since:`Since 1.0.6 (QEMU and KVM only)` ``shareable`` If present, this indicates the device is expected to be shared between domains (assuming the hypervisor and OS support this). Only supported by SCSI - host device. :since:`Since 1.0.6`, but only works as expected - :since:`since 1.2.2`. + host device. :since:`Since 1.0.6` + + Note: Although ``shareable`` was introduced :since:`in 1.0.6` , it did not + work as as expected until :since:`1.2.2` . Block / character devices ^^^^^^^^^^^^^^^^^^^^^^^^^ Block / character devices from the host can be passed through to the guest using the ``hostdev`` element. This is only possible with container based -virtualization. Devices are specified by a fully qualified path. -:since:`since after 1.0.1 for LXC`: +virtualization. Devices are specified by a fully qualified path. :since:`since +after 1.0.1 for LXC` : :: @@ -4681,8 +4575,8 @@ virtualization. Devices are specified by a fully qualified path. Redirected devices ~~~~~~~~~~~~~~~~~~ -USB device redirection through a character device is supported -:since:`since after 0.9.5 (KVM only)`: +USB device redirection through a character device is supported :since:`since +after 0.9.5 (KVM only)` : :: @@ -4776,7 +4670,7 @@ behaves like a physical USB CCID (Chip/Smart Card Interface Device) card. Rather than requiring a smartcard to be plugged into the host, it is possible to provide three NSS certificate names residing in a database on the host. These certificates can be generated via the command - ``certutil -d /etc/pki/nssdb -x -t CT,CT,CT -S -s CN=cert1 -n cert1``, + ``certutil -d /etc/pki/nssdb -x -t CT,CT,CT -S -s CN=cert1 -n cert1``, and the resulting three certificate names must be supplied as the content of each of three ```` sub-elements. An additional sub-element ```` can specify the absolute path to an alternate directory @@ -4836,7 +4730,7 @@ Each ```` element has an optional ``
`` sub-element that can tie the interface to a particular pci slot, with attribute ``type='pci'`` as documented in the `Device Addresses`_ section. -:since:`Since 6.6.0`, one can force libvirt to keep the provided MAC address +:since:`Since 6.6.0` , one can force libvirt to keep the provided MAC address when it's in the reserved VMware range by adding a ``type="static"`` attribute to the ```` element. Note that this attribute is useless if the provided MAC address is outside of the reserved VMWare ranges. @@ -4861,7 +4755,8 @@ network may be totally isolated (no ```` element given), NAT'ing to an explicit network device or to the default route (````), routed with no NAT (````), or connected directly to one of the host's network interfaces (via macvtap) or bridge devices -(```` :since:`Since 0.9.4`) +((```` :since:`Since +0.9.4` ) For networks with a forward mode of bridge, private, vepa, and passthrough, it is assumed that the host has any necessary DNS and DHCP services already setup @@ -4877,7 +4772,7 @@ with the element (see `Overriding the target element`_). When the source of an interface is a network, a ``portgroup`` can be specified along with the name of the network; one network may have multiple portgroups defined, with each portgroup containing slightly different configuration -information for different classes of network connections. :since:`Since 0.9.4`. +information for different classes of network connections. :since:`Since 0.9.4` . When a guest is running an interface of type ``network`` may include a ``portid`` attribute. This provides the UUID of an associated virNetworkPortPtr @@ -4888,8 +4783,8 @@ automatically during startup and shutdown. :since:`Since 5.1.0` Also, similar to ``direct`` network connections (described below), a connection of type ``network`` may specify a ``virtualport`` element, with configuration data to be forwarded to a vepa (802.1Qbg) or 802.1Qbh compliant switch ( -:since:`Since 0.8.2` ), or to an Open vSwitch virtual switch -( :since:`Since 0.9.11` ). +:since:`Since 0.8.2` ), or to an Open vSwitch virtual switch ( :since:`Since +0.9.11` ). Since the actual type of switch may vary depending on the configuration in the ```` on the host, it is acceptable to omit the virtualport ``type`` @@ -5142,9 +5037,8 @@ device is useful because it permits a virtual machine managed by an unprivileged libvirtd to have emulated network devices based on tap devices. After creating/opening the tap device, an optional shell script (given in the -``path`` attribute of the ``
diff --git a/docs/js/main.js b/docs/js/main.js index bb94c5ac..57e1faf0 100644 --- a/docs/js/main.js +++ b/docs/js/main.js @@ -40,13 +40,12 @@ function advancedsearch(e) { var form = document.createElement("form"); form.method = "get"; - var q = document.getElementById("searchq"); var newq = document.createElement("input"); newq.type = "hidden"; newq.name = "q"; - newq.value = q.value; form.appendChild(newq); + var q = document.getElementById("searchq"); var whats = document.getElementsByName("what"); var what = "website"; for (var i = 0; i < whats.length; i++) { @@ -57,20 +56,15 @@ function advancedsearch(e) { } if (what == "website" || what == "wiki") { - form.action = "https://duckduckgo.com/"; - - var newsite = document.createElement("input"); - newsite.type = "hidden"; - newsite.name = "sites"; - form.appendChild(newsite); - + form.action = "https://google.com/search"; if (what == "website") { - newsite.value = "libvirt.org"; + newq.value = "site:libvirt.org " + q.value; } else { - newsite.value = "wiki.libvirt.org"; + newq.value = "site:wiki.libvirt.org " + q.value; } } else if (what == "devs" || "users") { form.action = "https://lists.libvirt.org/archives/search"; + newq.value = q.value; var newl = document.createElement("input"); newl.type = "hidden"; @@ -89,3 +83,65 @@ function advancedsearch(e) { return false; } + +function fetchRSS() { + if (document.location.protocol == "file:") + return; + + var planet = document.getElementById("planet"); + if (planet === null) + return; + + var req = new XMLHttpRequest(); + req.open("GET", "https://planet.virt-tools.org/atom.xml"); + req.setRequestHeader("Accept", "application/atom+xml, text/xml"); + req.onerror = function(e) { + if (this.statusText != "") + console.error(this); + }; + req.onload = function(e) { + if (this.readyState !== 4) + return; + + if (this.status != 200) { + console.error(this.statusText); + return; + } + + if (this.responseXML === null) { + console.error("Atom response is not an XML"); + return; + } + + var dl = document.createElement("dl"); + var dateOpts = { day: "numeric", month: "short", year: "numeric"}; + + var entries = this.responseXML.querySelectorAll("feed > entry:not(:nth-of-type(1n+5))"); + + entries.forEach(function(e) { + var name = e.querySelector("author > name").textContent; + var title = e.querySelector("title").textContent; + var updated = e.querySelector("updated").textContent; + var link = e.querySelector("link").attributes.href.textContent; + + var a = document.createElement("a"); + a.href = link; + a.innerText = title; + + var dt = document.createElement("dt"); + dt.appendChild(a); + dl.appendChild(dt); + + var date = new Date(updated); + date = date.toLocaleDateString("default", dateOpts); + + var dd = document.createElement("dd"); + dd.innerText = ` by ${name} on ${date}`; + + dl.appendChild(dd); + }); + + planet.appendChild(dl); + }; + req.send(); +} diff --git a/docs/js/meson.build b/docs/js/meson.build index e83d1c92..9f77b0d8 100644 --- a/docs/js/meson.build +++ b/docs/js/meson.build @@ -1,6 +1,5 @@ docs_js_files = [ 'main.js', - 'virt-tools-blog-planet.js', ] install_data(docs_js_files, install_dir: docs_html_dir / 'js') diff --git a/docs/js/virt-tools-blog-planet.js b/docs/js/virt-tools-blog-planet.js deleted file mode 100644 index 7f4e2bf3..00000000 --- a/docs/js/virt-tools-blog-planet.js +++ /dev/null @@ -1,65 +0,0 @@ -"use strict"; - -function fetchRSS() { - if (document.location.protocol == "file:") - return; - - var planet = document.getElementById("planet"); - if (planet === null) - return; - - var req = new XMLHttpRequest(); - req.open("GET", "https://planet.virt-tools.org/atom.xml"); - req.setRequestHeader("Accept", "application/atom+xml, text/xml"); - req.onerror = function(e) { - if (this.statusText != "") - console.error(this); - }; - req.onload = function(e) { - if (this.readyState !== 4) - return; - - if (this.status != 200) { - console.error(this.statusText); - return; - } - - if (this.responseXML === null) { - console.error("Atom response is not an XML"); - return; - } - - var dl = document.createElement("dl"); - var dateOpts = { day: "numeric", month: "short", year: "numeric"}; - - var entries = this.responseXML.querySelectorAll("feed > entry:not(:nth-of-type(1n+5))"); - - entries.forEach(function(e) { - var name = e.querySelector("author > name").textContent; - var title = e.querySelector("title").textContent; - var updated = e.querySelector("updated").textContent; - var link = e.querySelector("link").attributes.href.textContent; - - var a = document.createElement("a"); - a.href = link; - a.innerText = title; - - var dt = document.createElement("dt"); - dt.appendChild(a); - dl.appendChild(dt); - - var date = new Date(updated); - date = date.toLocaleDateString("default", dateOpts); - - var dd = document.createElement("dd"); - dd.innerText = ` by ${name} on ${date}`; - - dl.appendChild(dd); - }); - - planet.appendChild(dl); - }; - req.send(); -} - -window.addEventListener("load", function() { fetchRSS() }); diff --git a/docs/kbase/debuglogs.rst b/docs/kbase/debuglogs.rst index dff2cfd1..f08132d0 100644 --- a/docs/kbase/debuglogs.rst +++ b/docs/kbase/debuglogs.rst @@ -25,7 +25,7 @@ the system clears this setting:: # virt-admin -c virtqemud:///system daemon-log-outputs "3:journald 1:file:/var/log/libvirt/libvirtd.log" # virt-admin -c virtqemud:///system daemon-log-filters "3:remote 4:event 3:util.json 3:util.object 3:util.dbus 3:util.netlink 3:node_device 3:rpc 3:access 1:*" - # virt-admin -c virtqemud:///system daemon-timeout --timeout 0 + # virt-admin -c virtqemud:///system daemon-timeout 0 The last command disabling timeout of the daemon is available since ``libvirt-8.6.0``. With older versions make sure to reproduce the issue within @@ -224,7 +224,7 @@ is re-started with another command. To prevent auto-shutdown of the daemon you can use the following command:: - virt-admin daemon-timeout --timeout 0 + virt-admin daemon-timeout 0 The above is introduced in libvirt-8.6.0. diff --git a/docs/kbase/failed_connection_after_install.rst b/docs/kbase/failed_connection_after_install.rst deleted file mode 100644 index cea57c46..00000000 --- a/docs/kbase/failed_connection_after_install.rst +++ /dev/null @@ -1,58 +0,0 @@ -======================================== -Libvirt does not work after installation -======================================== - -.. contents:: - -TL;DR -===== - -Most probably you want to start a virtqemud socket: - -:: - - # systemctl start virtqemud.socket - -If you are unsure whether to do this, please read the rest of this document. - -Symptom -======= - -After installing libvirt or a virt tool that uses libvirt, commands do -not work when run as root: - -:: - - # virsh list - error: failed to connect to the hypervisor - error: Operation not supported: Cannot use direct socket mode if no URI is set. - For more information see https://libvirt.org/kbase/failed_connection_after_install.html - -Root cause -========== - -Distribution guidelines and/or configurations may discourage or prohibit -starting services as part of a package installation. And because libvirt cannot -know where you might want to connect it cannot start it on its own. - -Solution -======== - -After installing libvirt you may need to start a particular libvirt daemon on -the local machine, set a (default) URI to connect to or, alternatively, -rebooting the machine might work. - -If you are trying to connect to a remote libvirt daemon you need to specify a `connection URI <../uri.html>`__. - -If you are trying to control a local hypervisor, then the solution depends on various factors. You should know: - -- what hypervisor driver you want to connect to, whether it is ``virtqemud`` for QEMU, ``virtchd`` for Cloud Hypervisor, etc. and -- how to start a service or socket (in case of systemd) on you system. - -Example of the most common solution, trying to use QEMU/KVM on Linux with systemd as an init system, is: - -:: - - # systemctl start virtqemud.socket - -also provided on the top of the page. diff --git a/docs/kbase/index.rst b/docs/kbase/index.rst index e51b35cb..896ececd 100644 --- a/docs/kbase/index.rst +++ b/docs/kbase/index.rst @@ -64,9 +64,6 @@ Usage `Secure Boot `__ Enable and disable the Secure Boot feature -`Connection fail after installation `__ - Explanation of a common issue users stumble upon after installation - Debugging --------- diff --git a/docs/kbase/live_full_disk_backup.rst b/docs/kbase/live_full_disk_backup.rst index f20169e3..562a9e87 100644 --- a/docs/kbase/live_full_disk_backup.rst +++ b/docs/kbase/live_full_disk_backup.rst @@ -12,7 +12,7 @@ space requirements. The following outlines an efficient method to do that using libvirt's APIs. This method involves concepts: the notion of `backing chains `_, `QCOW2 overlays -`_, +`_, and a special operation called "active block-commit", which allows live-merging an overlay disk image into its backing file. diff --git a/docs/kbase/meson.build b/docs/kbase/meson.build index 6d4ca902..5b608293 100644 --- a/docs/kbase/meson.build +++ b/docs/kbase/meson.build @@ -2,7 +2,6 @@ docs_kbase_files = [ 'backing_chains', 'debuglogs', 'domainstatecapture', - 'failed_connection_after_install', 'index', 'kvm-realtime', 'launch_security_sev', diff --git a/docs/kbase/qemu-passthrough-security.rst b/docs/kbase/qemu-passthrough-security.rst index ae395de4..ef10d8af 100644 --- a/docs/kbase/qemu-passthrough-security.rst +++ b/docs/kbase/qemu-passthrough-security.rst @@ -157,7 +157,7 @@ will affect all virtual machines. These settings are all made in * Cgroups - set ``cgroup_device_acl`` to include the desired device node, or ``cgroup_controllers = [...]`` to exclude the ``devices`` controller. -Private mount namespace +Private monunt namespace ---------------------------- As mentioned above, libvirt launches each QEMU process in its own ``mount`` diff --git a/docs/kbase/virtiofs.rst b/docs/kbase/virtiofs.rst index 457c15da..5940092d 100644 --- a/docs/kbase/virtiofs.rst +++ b/docs/kbase/virtiofs.rst @@ -59,25 +59,6 @@ Sharing a host directory with a guest Note: this requires virtiofs support in the guest kernel (Linux v5.4 or later) -Running unprivileged -==================== - -In unprivileged mode (``qemu:///session``), mapping user/group IDs is available -(since libvirt version 10.0.0). The root user (ID 0) in the guest will be mapped -to the current user on the host. - -The rest of the IDs will be mapped to the subordinate user IDs specified -in `/etc/subuid`: - -:: - - $ cat /etc/subuid - jtomko:100000:65536 - $ cat /etc/subgid - jtomko:100000:65536 - -To manually tweak the user ID mapping, the `idmap` element can be used. - Optional parameters =================== diff --git a/docs/logos/meson.build b/docs/logos/meson.build index 2d9d0fcb..c3f4c9f5 100644 --- a/docs/logos/meson.build +++ b/docs/logos/meson.build @@ -26,8 +26,7 @@ foreach file : docs_logo_files # This hack enables us to view the web pages # from within the uninstalled build tree if meson.version().version_compare('>=0.64.0') - logofile = fs.copyfile(file) - install_web_deps += logofile + fs.copyfile(file) else configure_file(input: file, output: file, copy: true) endif diff --git a/docs/manpages/libvirt-guests.rst b/docs/manpages/libvirt-guests.rst index 42dae283..f27eaad6 100644 --- a/docs/manpages/libvirt-guests.rst +++ b/docs/manpages/libvirt-guests.rst @@ -113,28 +113,6 @@ The following variables are supported: this requires guest agent with support for time synchronization running in the guest. By default, this functionality is turned off. -- PERSISTENT_ONLY=default - - Defines what type of guest virtual machine ON_SHUTDOWN action is applied to - - * default - - This implements the already existing default behavior. - If ON_SHUTDOWN action is shutdown, transient and persistent guest virtual - machines are asked to shutdown. - If ON_SHUTDOWN action is suspend, only persistent guest virtual machines - are asked to suspend. - - * true - - ON_SHUTDOWN action is executed only on persistent guest virtual machines. - Transient guest virtual machines are not affected. - - * false - - ON_SHUTDOWN action is executed on persistent and transient guest virtual - machines. - BUGS ==== diff --git a/docs/manpages/virsh.rst b/docs/manpages/virsh.rst index f02a2815..3e7a4c6c 100644 --- a/docs/manpages/virsh.rst +++ b/docs/manpages/virsh.rst @@ -326,6 +326,8 @@ Will change current directory to *directory*. The default directory for the ``cd`` command is the home directory or, if there is no *HOME* variable in the environment, the root directory. +This command is only available in interactive mode. + pwd --- @@ -648,7 +650,7 @@ list list [--inactive | --all] [--managed-save] [--title] - { [--table] | --name | --id } [--uuid] + { [--table] | --name | --uuid | --id } [--persistent] [--transient] [--with-managed-save] [--without-managed-save] [--autostart] [--no-autostart] @@ -791,12 +793,12 @@ are printed instead of names. If *--id* is specified then domain's ID's are printed indead of names. However, it is possible to combine *--name*, *--uuid* and *--id* to select only desired fields for printing. Flag *--table* specifies that the legacy table-formatted -output should be used, but it is mutually exclusive with *--name*, and *--id*. -This is the default and will be used if neither of *--name*, *--uuid* or *--id* -is specified. If neither *--name* nor *--uuid* is specified, but *--id* is, -then only active domains are listed, even with the *--all* parameter as otherwise -the output would just contain bunch of lines with just *-1*. If *--table* is -combined with *--uuid*, then domain uuid is printed as an extra column. +output should be used, but it is mutually exclusive with *--name*, +*--uuid* and *--id*. This is the default and will be used if neither of +*--name*, *--uuid* or *--id* is specified. If neither *--name* nor *--uuid* is +specified, but *--id* is, then only active domains are listed, even with the +*--all* parameter as otherwise the output would just contain bunch of lines +with just *-1*. If *--title* is specified, then the short domain description (title) is printed in an extra column. This flag is usable only with the default @@ -1419,7 +1421,7 @@ blockresize :: - blockresize domain path ([size] | [--capacity]) + blockresize domain path size Resize a block device of domain while the domain is running, *path* specifies the absolute path of the block device; it corresponds @@ -1427,10 +1429,6 @@ to a unique target name () or source file () for one of the disk devices attached to *domain* (see also ``domblklist`` for listing these names). -For image formats without metadata (raw) stored inside fixed-size storage (e.g. -block devices) the --capacity flag can be used to resize the device to the -full size of the backing device. - *size* is a scaled integer (see ``NOTES`` above) which defaults to KiB (blocks of 1024 bytes) if there is no suffix. You must use a suffix of "B" to get bytes (note that for historical reasons, this differs from @@ -1781,21 +1779,6 @@ included in the URI. If *--all* is specified, then all show all possible graphical displays, for a VM could have more than one graphical displays. -domdisplay-reload ------------------ - -**Syntax:** - -:: - - domdisplay-reload [--type ] - -Reload the domain's graphical display. This reloads its TLS certificates -without restarting the domain. ``type`` can be any constant from the -`virDomainGraphicsReloadType` enum. By default any supported type is reloaded -(so far only VNC). - - domfsfreeze ----------- @@ -5344,25 +5327,6 @@ If *--validate* is specified, validates the format of the XML document against an internal RNG schema. -nodedev-update --------------- - -**Syntax:** - -:: - - nodedev-update device FILE [[--live] [--config] | [--current]] - -Update a device on the host. *device* can be either device name or wwn pair -in "wwnn,wwpn" format (only works for vHBA currently). *file* -contains xml for a top-level description of the node device. -*--current* can be either or both of *live* and *config*, depends on -the hypervisor's implementation. -Both *--live* and *--config* flags may be given, but *--current* is -exclusive. If no flag is specified, behavior is different depending -on hypervisor. - - nodedev-destroy --------------- @@ -5454,17 +5418,14 @@ nodedev-dumpxml :: - nodedev-dumpxml [--inactive] [--xpath EXPRESSION] [--wrap] device + nodedev-dumpxml [--xpath EXPRESSION] [--wrap] device Dump a XML representation for the given node device, including such information as the device name, which bus owns the device, the vendor and product id, and any capabilities of the device usable by libvirt (such as whether device reset is supported). *device* can be either device name or wwn pair in "wwnn,wwpn" format (only works -for HBA). An additional option affecting the XML dump may be -used. *--inactive* tells virsh to dump the node device configuration -that will be used on next start of the node device as opposed to the -current node device configuration. +for HBA). If the **--xpath** argument provides an XPath expression, it will be evaluated against the output XML and only those matching nodes will @@ -5493,7 +5454,7 @@ nodedev-list :: - nodedev-list [--cap capability] [--tree] [--inactive | --all] [--persistent | --transient] + nodedev-list [--cap capability] [--tree] [--inactive | --all] List all of the devices available on the node that are known by libvirt. *cap* is used to filter the list by capability types, the types must be @@ -5502,13 +5463,9 @@ separated by comma, e.g. --cap pci,scsi. Valid capability types include 'scsi', 'storage', 'fc_host', 'vports', 'scsi_generic', 'drm', 'mdev', 'mdev_types', 'ccw', 'css', 'ap_card', 'ap_queue', 'ap_matrix'. By default, only active devices are listed. *--inactive* is used to list only inactive -devices, and *--all* is used to list both active and inactive devices. -*--persistent* is used to list only persistent devices, and *--transient* is -used to list only transient devices. Not providing *--persistent* or -*--transient* will list all devices unless filtered otherwise. *--transient* -is mutually exclusive with *--persistent* and *--inactive*. +devices, and *-all* is used to list both active and inactive devices. If *--tree* is used, the output is formatted in a tree representing parents of -each node. *--tree* is mutually exclusive with all other options but *--all*. +each node. *--tree* is mutually exclusive with all other options. nodedev-reattach @@ -7671,11 +7628,9 @@ If *--parent* is specified, add a column to the output table giving the name of the parent of each snapshot. If *--roots* is specified, the list will be filtered to just snapshots that have no parents. If *--tree* is specified, the output will be in a tree format, listing -just snapshot names. These three options are mutually exclusive. - -If *--name* is specified only the snapshot name is printed optionally -followed by a tab-separated name of the parent snapshot if *--parent* is used -as well. This option is mutually exclusive with *--tree*. +just snapshot names. These three options are mutually exclusive. If +*--name* is specified only the snapshot name is printed. This option is +mutually exclusive with *--tree*. If *--from* is provided, filter the list to snapshots which are children of the given ``snapshot``; or if *--current* is provided, @@ -7989,11 +7944,8 @@ the name of the parent of each checkpoint. If *--roots* is specified, the list will be filtered to just checkpoints that have no parents. If *--tree* is specified, the output will be in a tree format, listing just checkpoint names. These three options are -mutually exclusive. - -If *--name* is specified only the checkpoint name is printed optionally -followed by a tab-separated name of the parent checkpoint if *--parent* is used -as well. This option is mutually exclusive with *--tree*. +mutually exclusive. If *--name* is specified only the checkpoint name +is printed. This option is mutually exclusive with *--tree*. If *--from* is provided, filter the list to checkpoints which are children of the given ``checkpoint``. When used in isolation or with diff --git a/docs/manpages/virt-admin.rst b/docs/manpages/virt-admin.rst index 54a6512e..51087816 100644 --- a/docs/manpages/virt-admin.rst +++ b/docs/manpages/virt-admin.rst @@ -320,7 +320,7 @@ daemon-timeout :: - daemon-timeout [--timeout] NUM + daemon-timeout --timeout NUM Sets the daemon timeout to the value of '--timeout' argument. Use ``--timeout 0`` to disable auto-shutdown of the daemon. diff --git a/docs/manpages/virt-pki-validate.rst b/docs/manpages/virt-pki-validate.rst index 932c677c..063448f4 100644 --- a/docs/manpages/virt-pki-validate.rst +++ b/docs/manpages/virt-pki-validate.rst @@ -15,7 +15,7 @@ SYNOPSIS ======== -``virt-pki-validate`` [*OPTION*] [trust|server|client] +``virt-pki-validate`` [*OPTION*] DESCRIPTION @@ -26,9 +26,6 @@ a secure libvirt server or client using the TLS encryption protocol. It will report any missing certificate or key files on the host. It should be run as root to ensure it can read all the necessary files -With no arguments it will check the trusted CA config, the server -config and the client config. The optional positional argument can -be used to restrict the checks to just one of these three sets. OPTIONS ======= @@ -51,7 +48,7 @@ failure a non-zero status will be set. AUTHOR ====== -Daniel Veillard, Daniel P. Berrangé +Richard Jones BUGS @@ -73,7 +70,7 @@ Alternatively, you may report bugs to your software distributor / vendor. COPYRIGHT ========= -Copyright (C) 2006-2024 by Red Hat, Inc. +Copyright (C) 2006-2012 by Red Hat, Inc. LICENSE diff --git a/docs/manpages/virt-sanlock-cleanup.rst b/docs/manpages/virt-sanlock-cleanup.rst index bf3ef674..3ad70ce6 100644 --- a/docs/manpages/virt-sanlock-cleanup.rst +++ b/docs/manpages/virt-sanlock-cleanup.rst @@ -75,5 +75,5 @@ PURPOSE SEE ALSO ======== -virsh(1), `online instructions `_, +virsh(1), `online instructions `_, `https://libvirt.org/ `_ diff --git a/docs/manpages/virtinterfaced.rst b/docs/manpages/virtinterfaced.rst index ef63f4c2..247a8c40 100644 --- a/docs/manpages/virtinterfaced.rst +++ b/docs/manpages/virtinterfaced.rst @@ -211,3 +211,4 @@ SEE ALSO virsh(1), libvirtd(8), `https://libvirt.org/daemons.html `_, +`https://libvirt.org/drvinterface.html `_ diff --git a/docs/manpages/virtnetworkd.rst b/docs/manpages/virtnetworkd.rst index 3bd1dd32..22b3fc0f 100644 --- a/docs/manpages/virtnetworkd.rst +++ b/docs/manpages/virtnetworkd.rst @@ -211,3 +211,4 @@ SEE ALSO virsh(1), libvirtd(8), `https://libvirt.org/daemons.html `_, +`https://libvirt.org/drvnetwork.html `_ diff --git a/docs/manpages/virtnwfilterd.rst b/docs/manpages/virtnwfilterd.rst index 1ec11c24..b1fc45e7 100644 --- a/docs/manpages/virtnwfilterd.rst +++ b/docs/manpages/virtnwfilterd.rst @@ -211,3 +211,4 @@ SEE ALSO virsh(1), libvirtd(8), `https://libvirt.org/daemons.html `_, +`https://libvirt.org/drvnwfilter.html `_ diff --git a/docs/manpages/virtstoraged.rst b/docs/manpages/virtstoraged.rst index 8747f7d0..70863282 100644 --- a/docs/manpages/virtstoraged.rst +++ b/docs/manpages/virtstoraged.rst @@ -211,4 +211,4 @@ SEE ALSO virsh(1), libvirtd(8), `https://libvirt.org/daemons.html `_, -`https://libvirt.org/storage.html `_ +`https://libvirt.org/drvstorage.html `_ diff --git a/docs/manpages/virtvzd.rst b/docs/manpages/virtvzd.rst index 52aac225..aa44885d 100644 --- a/docs/manpages/virtvzd.rst +++ b/docs/manpages/virtvzd.rst @@ -211,4 +211,4 @@ SEE ALSO virsh(1), libvirtd(8), `https://libvirt.org/daemons.html `_, -`https://libvirt.org/drvopenvz.html `_ +`https://libvirt.org/drvvz.html `_ diff --git a/docs/meson.build b/docs/meson.build index 53b518f9..87d72821 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -97,7 +97,6 @@ docs_rst_files = [ 'python', 'remote', 'securityprocess', - 'ssh-proxy', 'storage', 'strategy', 'styleguide', @@ -361,7 +360,6 @@ if tests_enabled[0] '--webroot', meson.project_build_root() / 'docs' ], - depends: install_web_deps, env: runutf8, suite: 'script' ) diff --git a/docs/newapi.xsl b/docs/newapi.xsl index aff4cf0d..19a440bb 100644 --- a/docs/newapi.xsl +++ b/docs/newapi.xsl @@ -17,43 +17,42 @@ + + html + ../ - -
- -
Access control parameter checks
- - - - - - - - - -
ObjectPermissionCondition
-
- -
Access control return value filters
- - - - - - - - -
ObjectPermission
-
-
+ +
Access control parameter checks
+ + + + + + + + + +
ObjectPermissionCondition
+
+ +
Access control return value filters
+ + + + + + + + +
ObjectPermission
@@ -62,7 +61,7 @@ - + @@ -222,19 +221,6 @@ - - - - - -
- - - -
-
-
- #define @@ -300,10 +286,11 @@

- +
+ - description +
         enum 
@@ -317,9 +304,9 @@
           
             
              = 
-            
             
               
+                
                 
                   
@@ -329,7 +316,7 @@ - + @@ -355,10 +342,11 @@ ;
- +
+ - description +
@@ -384,7 +372,7 @@ - union { + union { @@ -397,35 +385,31 @@ - + +
- + +
- - -
- - - - } - + + } + + - -
- - - -
-
- +
+ + + +
- +
+
@@ -437,16 +421,15 @@ - - + +
-
- - + +
@@ -468,11 +451,11 @@

#define 
- +
+ - description - +
@@ -620,10 +603,11 @@ ) - +
+ - description +
@@ -695,11 +679,11 @@ ) - +
+ - description - +
@@ -721,9 +705,11 @@
- - - +
+ + + +
@@ -826,13 +812,10 @@ + indent="yes" + encoding="UTF-8"> - - diff --git a/docs/nss.rst b/docs/nss.rst index 53955a32..8f983302 100644 --- a/docs/nss.rst +++ b/docs/nss.rst @@ -152,10 +152,3 @@ If there's no record for either of the aforementioned commands, it's very likely that NSS module won't find anything and vice versa. As of ``v3.0.0`` libvirt provides ``libvirt_guest`` NSS module that doesn't have this limitation. However, the statement is still true for the ``libvirt`` NSS module. - -Alternatives ------------- - -As of ``v10.3.0`` libvirt implements an `SSH proxy `__ which -doesn't require any network interface to SSH into the guest as SSH flows -through a VSOCK device. diff --git a/docs/page.xsl b/docs/page.xsl index 71c7cfba..27607e4d 100644 --- a/docs/page.xsl +++ b/docs/page.xsl @@ -7,21 +7,25 @@ exclude-result-prefixes="xsl exsl html" version="1.0"> + + + + + + - - <!DOCTYPE html> - + This file is autogenerated from Do not edit this file. Changes will be lost. @@ -32,7 +36,7 @@ - + @@ -44,9 +48,8 @@ - - @@ -64,26 +67,26 @@