- Update to version 1.55.2 (jsc#PED-8910)
* lib/inspect-osinfo.c: Add Windows Server 2025 osinfo * appliance: Use stable owner, group and mtime in appliance tarballs * mltools: Replace jansson with json-c * lib/info.c: Replace jansson with json-c * lib/qemu.c: Replace jansson with json-c * lib: direct: Remove test for qemu mandatory locking * Various language translations * Fix dhcpcd failing on systemd-resolved stub * mlcustomize: Add heuristic support for Windows Server 2025 * mlcustomize/customize_run.ml: Move 'in' to new line * mlstdutils/guestfs_config: Define host_os * mlcustomize, mltools: Check guest OS is compatible before allowing --run * generator: Remove common/mlv2v/uefi.ml{,i} files * qemuopts: Add ability to add raw, unquoted output to qemu scripts * qemuopts: Fix missing break statement * mlstdutils: Remove Option module * Remove test for caml_alloc_initialized_string * build: Move baseline OCaml to 4.08 OBS-URL: https://build.opensuse.org/package/show/Virtualization/libguestfs?expand=0&rev=593
This commit is contained in:
commit
b0d567393a
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
3
README
Normal file
3
README
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
The ntfs-3g tools contained in this archive are provided for the exclusive
|
||||||
|
use of guestfs tools. Any use of these ntfs-3g tools outside the guestfs
|
||||||
|
tools context is unsupported and strictly forbidden.
|
6
guestfish.sh
Normal file
6
guestfish.sh
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# Guestfish colour prompts. See PROMPT in guestfish(1).
|
||||||
|
GUESTFISH_PS1='\[\e[1;32m\]><fs>\[\e[0;31m\] '
|
||||||
|
GUESTFISH_OUTPUT='\e[0m'
|
||||||
|
GUESTFISH_RESTORE="$GUESTFISH_OUTPUT"
|
||||||
|
GUESTFISH_INIT='\e[1;34m'
|
||||||
|
export GUESTFISH_PS1 GUESTFISH_OUTPUT GUESTFISH_RESTORE GUESTFISH_INIT
|
3
libguestfs-1.52.1.tar.gz
Normal file
3
libguestfs-1.52.1.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:fc906e0b0dfcceb434e382d63071c3a66a787ee4b33301cf3a96be8e00ff57db
|
||||||
|
size 19062613
|
17
libguestfs-1.52.1.tar.gz.sig
Normal file
17
libguestfs-1.52.1.tar.gz.sig
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQJFBAABCAAvFiEE93dPsa0HSn6Mh2fqkXOPc+G3aKAFAmZCG5sRHHJpY2hAYW5u
|
||||||
|
ZXhpYS5vcmcACgkQkXOPc+G3aKD4Tw/+MDRiFsfE5i1/3T6LubEr2Hye4s4sMJ9/
|
||||||
|
BZr1dSzPI3HW5V9D3Cx+D7hf+7qyIMg2KP2Ow/01usKoLp9Ow8NUj5H0CePxvEhL
|
||||||
|
uDrtx/nlfEZRqHIzfKdPVixMddLcli4j8K7w0dQW3cn+H70szAv8Pqv2JjJeMH2r
|
||||||
|
SFzOvw4AujW876LlEzYo6cKHwPMtX3lBKBo0HDECnopDgEc64iTT/yunTR2y0qEn
|
||||||
|
ARJ6nY0q6cTyT06KQd2PTDgTlAlMOCLLksqLtxbwhkNtS1EYcDboM7bkZQHF2c6P
|
||||||
|
2OVmMV9oUZSBGFoAHMLZEjCTeiDrFGELQzK5Qn7f6jw643sn3pT8oMCRBWOJ93rI
|
||||||
|
DEpEFzlI7il0OB+c+0LzJWDxXi+FiPT6cFIMoVSE4YoBLkn0mJ5HAerYzpftwtT3
|
||||||
|
PXZ++dzqZThvCuSB3Tt/w8fVo55qTLV1zs7g61Gv7Q18BvxiYYWvGPLvVHeH7dLz
|
||||||
|
wNky5w36VSFj1gMUXqBoXcGJE0T74z3ze4Ohh4Exy156pDX5WaTUQkf2uvqn9QiA
|
||||||
|
6kvcJE8ykivFrOKXlbLLwmb/Lzx6jZoGqWok7pZZfNDLecL6/0fQ79e7gZvOgvUs
|
||||||
|
+rHgvVLTS9SUSk84wt86IkwfPHZ13w/y1tjYneYlWLQ6Qvsd8FURjlkyR6XHBKDD
|
||||||
|
i2zY0ZD5SfM=
|
||||||
|
=4/dV
|
||||||
|
-----END PGP SIGNATURE-----
|
3
libguestfs-1.53.5.tar.gz
Normal file
3
libguestfs-1.53.5.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:87553ec542a9c28ec0035dc1ed130477f887f2d8d94fe1a5fd9c0df32915345c
|
||||||
|
size 19067317
|
17
libguestfs-1.53.5.tar.gz.sig
Normal file
17
libguestfs-1.53.5.tar.gz.sig
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQJFBAABCAAvFiEE93dPsa0HSn6Mh2fqkXOPc+G3aKAFAmaMBWgRHHJpY2hAYW5u
|
||||||
|
ZXhpYS5vcmcACgkQkXOPc+G3aKCn9RAAusfYJg/fgCCIjenKin4ezPruVqzlU9FA
|
||||||
|
appdhVgf4rx28OdpZRzoWrV76PK+8okO4sQUrUoUFsWIJYoAZcIeIFg1Eun78vUk
|
||||||
|
t4PhmtEHeNzvMK3Pfgx6xz0pfbuHrxd8r3BGzpSsk1Rjq0yqjEZyPfMtsIkkfjNe
|
||||||
|
iUiC1+dmnVBD6ZaFscUkOUS/a0ARoGkZNYY9k4Q/SBcptIcJqMjSc9EXgcyEsU2L
|
||||||
|
0cElxUg8rSctqN9vjYw+oC7YapJq0Hy1morDQtS4enMFDrksf4tRjYu2Ce/v/SuB
|
||||||
|
F1GhFVoV3IIKgCfVVfzxwhJe3bG6qWiJbgunKo79gDDJJKkcSsy2E34my1CGdx45
|
||||||
|
36vMlahphHzM7mgWTzcWLMpyfp0TzBJzZNsnPwAwvEr4l2ckh8d26+0o8BT1p0zU
|
||||||
|
+d2f3b5IIkUvQh3VIvfAdJRGQ3V7ExPkhKs4cIxVBtq3aBrDunCsTs43t4E9Zo4r
|
||||||
|
ghWKLFI3sxp+r0E+HOCpUOIb/UN+KgzK3cTf7dxJnQX7jczZFoUAaZNGuuZdF5cO
|
||||||
|
WaBQ61MBnAORSRBi8kU9pbB5cf+TaJ1rFFHFlOE0jTg6Ur4hcbLyRi1jh2pFRy6X
|
||||||
|
KWHkAHU5A7z4512C9czLfU49EH5KZKJay5BlGrJ0pho/yAaON9zArmgBxvdcM0+9
|
||||||
|
eCAUIQ+c2h8=
|
||||||
|
=i02X
|
||||||
|
-----END PGP SIGNATURE-----
|
3
libguestfs-1.53.6.tar.gz
Normal file
3
libguestfs-1.53.6.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:e0f21322023cacfac04902096f389793a045d818f955404888953f2d78ccecd7
|
||||||
|
size 19084237
|
17
libguestfs-1.53.6.tar.gz.sig
Normal file
17
libguestfs-1.53.6.tar.gz.sig
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQJFBAABCAAvFiEE93dPsa0HSn6Mh2fqkXOPc+G3aKAFAma/YloRHHJpY2hAYW5u
|
||||||
|
ZXhpYS5vcmcACgkQkXOPc+G3aKDs5A//dEgzW/mjrxNjR/EdH9pPGE/xmhB7XbPz
|
||||||
|
2hNUP0GF2JnFBt104MRmuexivpFGvJHAt94DrVIikM41X0VO1yBStKDHqWYS1EWx
|
||||||
|
OyK7Lq5T1uxTnt3CTHmzve6MmiVwIZXC+BVOWfUcDZHtLufYwZE0HQQVe4IccaqM
|
||||||
|
rEfmKA12CDW0ZrtsYIZ+XYZTmSMNuuZ4/2l4IzaZnboCCyaOJOihwqGxDRFDMehb
|
||||||
|
1KFDX2s7IOOC6dx4wTFE954HSzQu4Xu3HlIznlVw6Vh51fJsC63VMU/QNOARsVVt
|
||||||
|
X9fo0zJS2zbja4q3xJ4c7v0mH1AYAmxfrOiD7eplQllsYKTjUSjd9B2BWjB99B+p
|
||||||
|
liki07SoEjOTuQanCsN+HGHTwjHqe/NkuFzmy3zONA5FeTYrslNWFLgtXL26LlAc
|
||||||
|
lcglwE7KFT+YEmEjbq0aSL1ofca6W9dX7AiQdtI0TD4NOkQZD5B4gFfpGBaWQWSh
|
||||||
|
XnYJIbVg7C/fN/46n1Bv773MI58kYleTvh1xsIf858CH10FG19aIXQIGy5iQ8/iQ
|
||||||
|
YyzzEGjvm5w/B6LC4NC8C5nqHQuRD0rHUac6EIiL8z0twx6wf+aPKH2LpvCRBDyp
|
||||||
|
sYTmC/mhXYiISWycNakzlTV4tq87fVZZosHMIki+/z6jxvUrjMzmWh8LfNH2hjJj
|
||||||
|
sb0ibmtllDk=
|
||||||
|
=okef
|
||||||
|
-----END PGP SIGNATURE-----
|
BIN
libguestfs-1.54.0.tar.gz
(Stored with Git LFS)
Normal file
BIN
libguestfs-1.54.0.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
17
libguestfs-1.54.0.tar.gz.sig
Normal file
17
libguestfs-1.54.0.tar.gz.sig
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQJFBAABCAAvFiEE93dPsa0HSn6Mh2fqkXOPc+G3aKAFAmcFNYwRHHJpY2hAYW5u
|
||||||
|
ZXhpYS5vcmcACgkQkXOPc+G3aKAn2xAArWoo5hKyREZW+WqEv40ZDD9jRG2WNUyl
|
||||||
|
BJcEvLEtcAySv71nftVQOhxoZhcfRbanSFKCTD0O/rzf5MjDhPIi9jbeGkFDg22c
|
||||||
|
zyuSJ4vGnkUCa1dDg5hJZdhCfe/gSb5RHR8GF+QRZDVXqCZg/PO+KEFh0112htUW
|
||||||
|
1y6rc9oe2f5aSNO9wgsVCYLXGcZ80wT/JyXe/NhqJoZOvps4SlEFHcpoYdV0wzOG
|
||||||
|
1UkuPy1UteDOTLHGx5JyMqR/+mzy3O59FaIU1eAXwrtlksBfzgmMyEt7ntizk3/M
|
||||||
|
qGgaE4KK3GURZUoDNc6WS856EMaoeMy6Dd6np8rMKeDn3d0PCNcrn2+7kSiNyRP0
|
||||||
|
guM+7gwcZUnI9UOi6/vwbmmDCAgRkSPP130fKagBtK2BqQ1FyTow4mOLXkVpHrlZ
|
||||||
|
zF2lDIBs/rDC1fdDXtcsZ/N4nc2OkZwvZ+jxjhsY4xnSLaZSK+C3Le7Yqj04vOzh
|
||||||
|
KfqgqorqaEw1MnqRY6czGc5VntXsK/5f+zBeS4KGn7znJN/jVXzjFDn3o0X6R1MW
|
||||||
|
IMv2ZHk0NInGFaVHyBD7ob3vh2+hWX0QIVTouqmPRVPIbVs4hAIVHGeOkkUCO8y9
|
||||||
|
MerGQuJSPlaegndGfRmp4R6q882QxTXRiY4tAnhdoDj5bLzss89kSKqxUHBDknZA
|
||||||
|
Fe+4R67G9zg=
|
||||||
|
=RmmC
|
||||||
|
-----END PGP SIGNATURE-----
|
3
libguestfs-1.55.2.tar.gz
Normal file
3
libguestfs-1.55.2.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:7054c46451249de95e9e4f98da25dd6f73e2360e5f058d27a200923f2b1c1041
|
||||||
|
size 19073984
|
17
libguestfs-1.55.2.tar.gz.sig
Normal file
17
libguestfs-1.55.2.tar.gz.sig
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
|
||||||
|
iQJFBAABCAAvFiEE93dPsa0HSn6Mh2fqkXOPc+G3aKAFAmc7UaMRHHJpY2hAYW5u
|
||||||
|
ZXhpYS5vcmcACgkQkXOPc+G3aKAPjQ/+LzrzUp46xkyQulpT1xSNy1dy/AiHUMTh
|
||||||
|
foiS7TbP23r+3/07Hyr/7/K3Z+XvJxQMwS/9n/VuS1uV53ryrEh1rtxCkheVqswD
|
||||||
|
dHL5xfKXM4oVKkww6eiHgi3EVyssVXdJo8QH8VeH216wsHOHj+XF1sVR0JKfAoyI
|
||||||
|
RuBOgYavYwJnUe2HKQN4tVdks/iV8zNbGXK0A5QCLfi4vD2q5OVj4q513x2W9Q1t
|
||||||
|
OmyUX2raSB9Mi2PFe3XTggMKJuIU+oxNUNvvnwPB2KMBIpf4rHpWqZs8lGQhF2C7
|
||||||
|
CLGEt1tWaWNFA3mlTBq5wQYetjMpAKMBY+nTRVUie0M2uc00ENobRzOcDdZTPtxQ
|
||||||
|
7lHKtZYcedI0CPiXrmC2yTTPdhRE887TZ6DgG+nJCLvJFWBLwGZw0jX0IZgxGNp5
|
||||||
|
SysiVLbZR/h2yJJdle3f5Ab6kUewPTDPzrDpHg+bAOZxJnoCGR43oebybWdJWr+M
|
||||||
|
Fu6TV0fohr8mhtNHXOqGqlRPj6zYgaiRTer9BqxDV1WPoKVFFs0bbyBRqS0s1Kve
|
||||||
|
j4QNpw0vyN8Z13c2saLmc7LVoqOFBJqVffuIrns2s6gYoDMhA4AALhsejIopFRf3
|
||||||
|
8NgVWbhvJwqv4jei+CQCAsz9ZoQkVI0m/MgJH225u9mlQITBk/JxZRKCGCcUpjEn
|
||||||
|
sxIZL8QOU5g=
|
||||||
|
=Zwb/
|
||||||
|
-----END PGP SIGNATURE-----
|
2550
libguestfs.changes
Normal file
2550
libguestfs.changes
Normal file
File diff suppressed because it is too large
Load Diff
7
libguestfs.rpmlintrc
Normal file
7
libguestfs.rpmlintrc
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
addFilter("shlib-policy-nonversioned-dir")
|
||||||
|
addFilter("shlib-policy-missing-lib")
|
||||||
|
addFilter("shlib-policy-name-error")
|
||||||
|
addFilter("shlib-fixed-dependency")
|
||||||
|
# This script is supposed to be run from within the appliance only
|
||||||
|
addFilter("non-executable-script /usr/share/virt-p2v/launch-virt-p2v")
|
||||||
|
addFilter("non-standard-group Development/Languages")
|
745
libguestfs.spec
Normal file
745
libguestfs.spec
Normal file
@ -0,0 +1,745 @@
|
|||||||
|
#
|
||||||
|
# spec file for package libguestfs
|
||||||
|
#
|
||||||
|
# Copyright (c) 2025 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
Name: libguestfs
|
||||||
|
ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64 riscv64
|
||||||
|
Version: 1.55.2
|
||||||
|
Release: 0
|
||||||
|
Summary: Access and modify virtual machine disk images
|
||||||
|
License: GPL-2.0-or-later
|
||||||
|
URL: http://libguestfs.org
|
||||||
|
|
||||||
|
Source0: %{name}-%{version}.tar.gz
|
||||||
|
Source1: %{name}-%{version}.tar.gz.sig
|
||||||
|
Source3: libguestfs.rpmlintrc
|
||||||
|
Source5: guestfish.sh
|
||||||
|
Source100: mount-rootfs-and-chroot.sh
|
||||||
|
Source101: README
|
||||||
|
|
||||||
|
# Patches
|
||||||
|
Patch1: use-rtc-driftfix-slew-for-x86-only.patch
|
||||||
|
|
||||||
|
BuildRequires: bison
|
||||||
|
BuildRequires: file-devel
|
||||||
|
BuildRequires: flex
|
||||||
|
BuildRequires: gawk
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: gobject-introspection-devel
|
||||||
|
BuildRequires: gperf
|
||||||
|
BuildRequires: libjson-c-devel
|
||||||
|
BuildRequires: libtool
|
||||||
|
BuildRequires: ocaml-augeas-devel
|
||||||
|
BuildRequires: ocaml-hivex-devel
|
||||||
|
BuildRequires: ocaml-rpm-macros
|
||||||
|
BuildRequires: po4a
|
||||||
|
BuildRequires: readline-devel
|
||||||
|
BuildRequires: supermin >= 5.1.18
|
||||||
|
BuildRequires: zstd
|
||||||
|
BuildRequires: ocaml(ocaml_base_version) >= 4.07
|
||||||
|
BuildRequires: ocamlfind(findlib)
|
||||||
|
BuildRequires: perl(Getopt::Long)
|
||||||
|
BuildRequires: perl(Locale::TextDomain)
|
||||||
|
BuildRequires: perl(Module::Build)
|
||||||
|
BuildRequires: perl(Pod::Man)
|
||||||
|
BuildRequires: perl(Pod::Simple)
|
||||||
|
BuildRequires: perl(Pod::Usage)
|
||||||
|
BuildRequires: perl(Test::More)
|
||||||
|
BuildRequires: pkgconfig(augeas)
|
||||||
|
BuildRequires: pkgconfig(bash-completion)
|
||||||
|
BuildRequires: pkgconfig(fuse)
|
||||||
|
BuildRequires: pkgconfig(hivex)
|
||||||
|
BuildRequires: pkgconfig(jansson)
|
||||||
|
BuildRequires: pkgconfig(libacl)
|
||||||
|
BuildRequires: pkgconfig(libcap)
|
||||||
|
BuildRequires: pkgconfig(libconfig)
|
||||||
|
BuildRequires: pkgconfig(liblzma)
|
||||||
|
BuildRequires: pkgconfig(libpcre2-8)
|
||||||
|
BuildRequires: pkgconfig(libtirpc)
|
||||||
|
BuildRequires: pkgconfig(libvirt)
|
||||||
|
BuildRequires: pkgconfig(libxml-2.0)
|
||||||
|
BuildRequires: pkgconfig(libzstd)
|
||||||
|
BuildRequires: pkgconfig(ncurses)
|
||||||
|
BuildRequires: pkgconfig(python3)
|
||||||
|
BuildRequires: pkgconfig(rpm) >= 4.6.0
|
||||||
|
BuildRequires: pkgconfig(tinfo)
|
||||||
|
|
||||||
|
Requires: libguestfs-appliance
|
||||||
|
Obsoletes: guestfs-tools <= 1.44.2
|
||||||
|
|
||||||
|
%description
|
||||||
|
Libguestfs is a library for accessing and modifying virtual machine
|
||||||
|
disk images. http://libguestfs.org
|
||||||
|
|
||||||
|
Libguestfs uses Linux kernel and qemu code, and can access any type of
|
||||||
|
guest filesystem that Linux and qemu can, including but not limited
|
||||||
|
to: ext2/3/4, btrfs, FAT and NTFS, LVM, many different disk partition
|
||||||
|
schemes, qcow, qcow2, vmdk.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1
|
||||||
|
|
||||||
|
sed -i 's|RPMVSF_MASK_NOSIGNATURES|_RPMVSF_NOSIGNATURES|' daemon/rpm-c.c
|
||||||
|
sed -i 's/tar zcf/tar -zcf/' appliance/Makefile.am
|
||||||
|
|
||||||
|
%build
|
||||||
|
# provide a wrapper to tar that creates bit-reproducible output (boo#1218191)
|
||||||
|
# used in supermin for base.tar.gz, in %install for zz-winsupport.tar.gz zz-scripts.tar.gz and in appliance/Makefile.am for 3 more .tar.gz files
|
||||||
|
SOURCE_DATE_EPOCH=${SOURCE_DATE_EPOCH:-$(date -r %{SOURCE0} +%%s)}
|
||||||
|
mkdir -p ~/bin ; cat >~/bin/tar <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
exec /usr/bin/tar \
|
||||||
|
--sort=name --clamp-mtime --mtime=@$SOURCE_DATE_EPOCH \
|
||||||
|
--owner=0 --group=0 --numeric-owner \
|
||||||
|
--pax-option=exthdr.name=%%d/PaxHeaders/%%f,delete=atime,delete=ctime \
|
||||||
|
"\$@"
|
||||||
|
EOF
|
||||||
|
chmod a+x ~/bin/tar
|
||||||
|
PATH=~/bin:$PATH
|
||||||
|
|
||||||
|
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
|
||||||
|
# use 'env LIBGUESTFS_HV=/path/to/kvm libguestfs-test-tool' to verify
|
||||||
|
%define kvm_binary /bin/false
|
||||||
|
%ifarch aarch64
|
||||||
|
%define kvm_binary %{_bindir}/qemu-system-aarch64
|
||||||
|
%endif
|
||||||
|
%ifarch ppc64le
|
||||||
|
%define kvm_binary %{_bindir}/qemu-system-ppc64
|
||||||
|
%endif
|
||||||
|
%ifarch ppc64
|
||||||
|
%define kvm_binary %{_bindir}/qemu-system-ppc64
|
||||||
|
%endif
|
||||||
|
%ifarch riscv64
|
||||||
|
%define kvm_binary %{_bindir}/qemu-system-riscv64
|
||||||
|
%endif
|
||||||
|
%ifarch s390x
|
||||||
|
%define kvm_binary %{_bindir}/qemu-system-s390x
|
||||||
|
%endif
|
||||||
|
%ifarch x86_64
|
||||||
|
%define kvm_binary %{_bindir}/qemu-system-x86_64
|
||||||
|
%endif
|
||||||
|
#
|
||||||
|
%define guestfs_docdir %{_defaultdocdir}/%{name}
|
||||||
|
|
||||||
|
export AWK='%{_bindir}/gawk'
|
||||||
|
export CPIO='%{_bindir}/cpio'
|
||||||
|
export GPERF='%{_bindir}/gperf'
|
||||||
|
export MKISOFS='%{_bindir}/xorrisofs'
|
||||||
|
export XMLLINT='%{_bindir}/xmllint'
|
||||||
|
export PO4A_GETTEXTIZE='%{_bindir}/po4a-gettextize'
|
||||||
|
export PO4A_TRANSLATE='%{_bindir}/po4a-translate'
|
||||||
|
export SQLITE3='%{_bindir}/sqlite3'
|
||||||
|
export PBMTEXT='%{_bindir}/pbmtext'
|
||||||
|
export PNMTOPNG='%{_bindir}/pnmtopng'
|
||||||
|
export BMPTOPNM='%{_bindir}/bmptopnm'
|
||||||
|
export PAMCUT='%{_bindir}/pamcut'
|
||||||
|
export WRESTOOL='%{_bindir}/wrestool'
|
||||||
|
export XZCAT='%{_bindir}/xzcat'
|
||||||
|
export VALGRIND='%{_bindir}/valgrind'
|
||||||
|
export FUSER='%{_bindir}/fuser'
|
||||||
|
export TOOL_TRUE='%{_bindir}/true'
|
||||||
|
export XGETTEXT='%{_bindir}/xgettext'
|
||||||
|
export MSGCAT='%{_bindir}/msgcat'
|
||||||
|
export MSGFMT='%{_bindir}/msgfmt'
|
||||||
|
export MSGMERGE='%{_bindir}/msgmerge'
|
||||||
|
export RPCGEN='%{_bindir}/rpcgen'
|
||||||
|
export SUPERMIN='%{_bindir}/supermin'
|
||||||
|
export QEMU="%{kvm_binary}"
|
||||||
|
export vmchannel_test=no
|
||||||
|
export PERL='%{_bindir}/perl'
|
||||||
|
export PYTHON='%{_bindir}/python3'
|
||||||
|
|
||||||
|
sed -i~ '
|
||||||
|
/test-data/d
|
||||||
|
' configure.ac
|
||||||
|
diff -u "$_"~ "$_" && exit 0
|
||||||
|
sed -i~ '
|
||||||
|
/SUBDIRS/s@test-data@@
|
||||||
|
' Makefile.am
|
||||||
|
diff -u "$_"~ "$_" && exit 0
|
||||||
|
autoreconf -fi
|
||||||
|
|
||||||
|
%configure --help
|
||||||
|
%configure \
|
||||||
|
--docdir=%{guestfs_docdir} \
|
||||||
|
--with-distro=SUSE \
|
||||||
|
--with-readline \
|
||||||
|
--with-guestfs-path=%{_libdir}/guestfs \
|
||||||
|
--with-qemu=$QEMU \
|
||||||
|
--with-supermin-packager-config="$PWD/zypper.priv.conf --use-installed --verbose" \
|
||||||
|
--without-java \
|
||||||
|
--enable-appliance-format-auto \
|
||||||
|
--enable-daemon \
|
||||||
|
--enable-install-daemon \
|
||||||
|
--enable-ocaml \
|
||||||
|
--enable-perl \
|
||||||
|
--enable-python \
|
||||||
|
--disable-erlang \
|
||||||
|
--disable-haskell \
|
||||||
|
--disable-php \
|
||||||
|
--disable-rpath \
|
||||||
|
--disable-static \
|
||||||
|
%nil
|
||||||
|
|
||||||
|
# 'INSTALLDIRS' ensures that perl libs are installed in the vendor dir instead of the site dir
|
||||||
|
build_it() {
|
||||||
|
make \
|
||||||
|
INSTALLDIRS=vendor \
|
||||||
|
LD_RUN_PATH= \
|
||||||
|
"$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
build_it %{?_smp_mflags} || build_it
|
||||||
|
|
||||||
|
%install
|
||||||
|
PATH=~/bin:$PATH
|
||||||
|
%make_install \
|
||||||
|
INSTALLDIRS=vendor \
|
||||||
|
udevrulesdir=%{_udevrulesdir}
|
||||||
|
find %buildroot -ls
|
||||||
|
|
||||||
|
rm -f $( find %buildroot -name '*.a' | grep -v /ocaml/ )
|
||||||
|
|
||||||
|
find %buildroot -name '*.la' -delete
|
||||||
|
|
||||||
|
mkdir -p %{buildroot}/etc/profile.d
|
||||||
|
cp %{S:5} %{buildroot}/etc/profile.d
|
||||||
|
|
||||||
|
# Perl
|
||||||
|
find %{buildroot}/ -name "*.bs" -size 0c -print -delete
|
||||||
|
%perl_process_packlist
|
||||||
|
|
||||||
|
# OCaml
|
||||||
|
%ocaml_create_file_list
|
||||||
|
# Supermin
|
||||||
|
# Use RPMs from packagelist for the packages file. Sort and clean leading whitespace.
|
||||||
|
sort -u appliance/packagelist | awk '{$1=$1};1' > %buildroot%_libdir/guestfs/supermin.d/packages
|
||||||
|
pushd $RPM_BUILD_ROOT%{_libdir}/guestfs/supermin.d
|
||||||
|
|
||||||
|
function remove
|
||||||
|
{
|
||||||
|
grep -Ev "^$1$" < packages > packages-t
|
||||||
|
mv packages-t packages
|
||||||
|
}
|
||||||
|
|
||||||
|
function move_to
|
||||||
|
{
|
||||||
|
if ! grep -Esq "^$1$" packages; then
|
||||||
|
echo "move_to $1: package name not found in packages file"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
remove "$1"
|
||||||
|
echo "$1" >> "$2"
|
||||||
|
}
|
||||||
|
|
||||||
|
move_to iputils zz-packages-rescue
|
||||||
|
move_to lsof zz-packages-rescue
|
||||||
|
move_to pciutils zz-packages-rescue
|
||||||
|
move_to strace zz-packages-rescue
|
||||||
|
move_to vim zz-packages-rescue
|
||||||
|
move_to rsync zz-packages-rsync
|
||||||
|
move_to xfsprogs zz-packages-xfs
|
||||||
|
|
||||||
|
popd
|
||||||
|
|
||||||
|
# Remove the .gitignore file from ocaml/html which will be copied to docdir.
|
||||||
|
rm ocaml/html/.gitignore
|
||||||
|
|
||||||
|
%find_lang %{name}
|
||||||
|
|
||||||
|
# Appliance NTFS files
|
||||||
|
# Just copy the content of the ntfs packages
|
||||||
|
mkdir winsupport
|
||||||
|
for pkg in $(rpm -qa | grep ntfs); do
|
||||||
|
rpm -ql $pkg > $pkg.list
|
||||||
|
rsync -av --files-from $pkg.list / winsupport
|
||||||
|
done
|
||||||
|
|
||||||
|
cp %{S:101} winsupport
|
||||||
|
|
||||||
|
pushd winsupport
|
||||||
|
tar -czf %{buildroot}%{_libdir}/guestfs/supermin.d/zz-winsupport.tar.gz .
|
||||||
|
popd
|
||||||
|
|
||||||
|
cat > %{buildroot}%{_libdir}/guestfs/supermin.d/zz-packages-winsupport << EOF
|
||||||
|
libfuse2
|
||||||
|
hwinfo
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Do some cleanup so that rpm can properly empty directories without permission denied
|
||||||
|
# The winsupport directory has already been tar'ed up, so we don't care much
|
||||||
|
find winsupport -type d -exec chmod 755 {} \;
|
||||||
|
|
||||||
|
mkdir -p %{buildroot}/tmp/usr/bin
|
||||||
|
cp %{S:100} %{buildroot}/tmp/usr/bin
|
||||||
|
chmod a+x %{buildroot}/tmp/usr/bin/*
|
||||||
|
pushd %{buildroot}/tmp
|
||||||
|
tar -czf %{buildroot}/%{_libdir}/guestfs/supermin.d/zz-scripts.tar.gz usr
|
||||||
|
popd
|
||||||
|
rm -rf %{buildroot}/tmp
|
||||||
|
|
||||||
|
%package -n libguestfs0
|
||||||
|
Summary: Runtime library of libguestfs
|
||||||
|
Requires: %{kvm_binary}
|
||||||
|
|
||||||
|
%description -n libguestfs0
|
||||||
|
Shared object library for libguestfs tools which are used to access
|
||||||
|
and modify virtual machines.
|
||||||
|
|
||||||
|
%package -n libguestfsd
|
||||||
|
Summary: Daemon for the libguestfs appliance
|
||||||
|
Provides: guestfsd = %{version}
|
||||||
|
Obsoletes: guestfsd < %{version}
|
||||||
|
|
||||||
|
%description -n libguestfsd
|
||||||
|
guestfsd runs within the libguestfs appliance. It receives commands from the host
|
||||||
|
and performs the requested action by calling the helper binaries.
|
||||||
|
This package is only required for building the appliance.
|
||||||
|
|
||||||
|
%package -n libguestfs-appliance
|
||||||
|
BuildRequires: augeas-lenses
|
||||||
|
BuildRequires: bc
|
||||||
|
BuildRequires: btrfsprogs
|
||||||
|
BuildRequires: bzip2
|
||||||
|
BuildRequires: coreutils
|
||||||
|
BuildRequires: cpio
|
||||||
|
BuildRequires: cryptsetup
|
||||||
|
BuildRequires: dhcp-client
|
||||||
|
BuildRequires: diffutils
|
||||||
|
BuildRequires: dosfstools
|
||||||
|
BuildRequires: e2fsprogs
|
||||||
|
BuildRequires: file
|
||||||
|
BuildRequires: findutils
|
||||||
|
BuildRequires: glibc
|
||||||
|
BuildRequires: gptfdisk
|
||||||
|
BuildRequires: grep
|
||||||
|
BuildRequires: gzip
|
||||||
|
BuildRequires: initviocons
|
||||||
|
BuildRequires: iproute2
|
||||||
|
BuildRequires: jfsutils
|
||||||
|
BuildRequires: ldmtool
|
||||||
|
BuildRequires: lvm2
|
||||||
|
BuildRequires: mdadm
|
||||||
|
BuildRequires: mkisofs
|
||||||
|
BuildRequires: module-init-tools
|
||||||
|
BuildRequires: ncurses-utils
|
||||||
|
BuildRequires: nfs-client
|
||||||
|
BuildRequires: ntfs-3g
|
||||||
|
BuildRequires: ntfsprogs
|
||||||
|
BuildRequires: pam-config
|
||||||
|
BuildRequires: parted
|
||||||
|
BuildRequires: psmisc
|
||||||
|
BuildRequires: sg3_utils
|
||||||
|
BuildRequires: strace
|
||||||
|
BuildRequires: sysconfig-netconfig
|
||||||
|
%ifarch %ix86 x86_64
|
||||||
|
BuildRequires: syslinux
|
||||||
|
%endif
|
||||||
|
BuildRequires: tar
|
||||||
|
BuildRequires: terminfo-base
|
||||||
|
BuildRequires: tunctl
|
||||||
|
BuildRequires: udev
|
||||||
|
BuildRequires: util-linux
|
||||||
|
BuildRequires: util-linux-lang
|
||||||
|
BuildRequires: xfsprogs
|
||||||
|
BuildRequires: xz
|
||||||
|
|
||||||
|
# Needed by guestfsd which is burried in the appliance
|
||||||
|
#
|
||||||
|
# The problem with this design is that rpm can't find the
|
||||||
|
# library dependencies from the guestfsd hidden in the
|
||||||
|
# daemon.tar.gz tarball. Supermin will compute an appliance
|
||||||
|
# at runtime based on the packages it will find on the host.
|
||||||
|
# Thus if there is no libaugeas, libhivex, etc on the host,
|
||||||
|
# the appliance will fail to start the guestfsd.
|
||||||
|
Requires: augeas
|
||||||
|
Requires: augeas-lenses
|
||||||
|
Requires: dhcp-client
|
||||||
|
Requires: libaugeas0
|
||||||
|
Requires: libcap2
|
||||||
|
Requires: libguestfs0
|
||||||
|
Requires: libhivex0
|
||||||
|
Requires: libpcre1
|
||||||
|
|
||||||
|
# For core disk features
|
||||||
|
Requires: qemu-tools
|
||||||
|
Requires: btrfsprogs
|
||||||
|
Requires: cryptsetup
|
||||||
|
Requires: dosfstools
|
||||||
|
Requires: e2fsprogs
|
||||||
|
Requires: gptfdisk
|
||||||
|
Requires: jfsutils
|
||||||
|
Requires: ldmtool
|
||||||
|
Requires: mdadm
|
||||||
|
Requires: mkisofs
|
||||||
|
Recommends: ntfsprogs
|
||||||
|
Requires: parted
|
||||||
|
Requires: supermin >= 5.1.18
|
||||||
|
Requires: xfsprogs
|
||||||
|
Recommends: zerofree
|
||||||
|
|
||||||
|
Summary: Virtual machine needed for libguestfs
|
||||||
|
Provides: guestfs-data = %{version}
|
||||||
|
Obsoletes: guestfs-data < %{version}
|
||||||
|
|
||||||
|
%description -n libguestfs-appliance
|
||||||
|
libguestfs-appliance provides the appliance used by libguestfs.
|
||||||
|
|
||||||
|
%package winsupport
|
||||||
|
Summary: Windows guest support in libguestfs
|
||||||
|
Requires: libguestfs >= 1.32
|
||||||
|
BuildRequires: ntfs-3g
|
||||||
|
BuildRequires: ntfsprogs
|
||||||
|
BuildRequires: rsync
|
||||||
|
Requires: ntfs-3g
|
||||||
|
Requires: ntfsprogs
|
||||||
|
Provides: guestfs-winsupport = %{version}
|
||||||
|
Obsoletes: guestfs-winsupport < %{version}
|
||||||
|
|
||||||
|
%description winsupport
|
||||||
|
Provides the needed pieces for libguestfs to handle Windows guests.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Development files for libguestfs
|
||||||
|
Requires: libguestfs0 = %{version}
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
Development files for libguestfs.
|
||||||
|
|
||||||
|
libguestfs is a set of tools for accessing and modifying virtual machine (VM)
|
||||||
|
disk images. You can use this for viewing and editing files inside guests,
|
||||||
|
scripting changes to VMs, monitoring disk used/free statistics, P2V, V2V,
|
||||||
|
performing partial backups, cloning VMs, and much else besides.
|
||||||
|
|
||||||
|
%package bash-completion
|
||||||
|
Summary: Bash tab-completion scripts for %{name} tools
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: bash-completion >= 2.0
|
||||||
|
|
||||||
|
%description bash-completion
|
||||||
|
Install this package if you want intelligent bash tab-completion
|
||||||
|
for guestfish, guestmount and various virt-* tools.
|
||||||
|
|
||||||
|
%package inspect-icons
|
||||||
|
Summary: Additional dependencies for inspecting guest icons
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
%if 0%{?suse_version} > 1500
|
||||||
|
Requires: icoutils
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description inspect-icons
|
||||||
|
%{name}-inspect-icons is a metapackage that pulls in additional
|
||||||
|
dependencies required by libguestfs to pull icons out of non-Linux
|
||||||
|
guests. Install this package if you want libguestfs to be able to
|
||||||
|
inspect non-Linux guests and display icons from them.
|
||||||
|
|
||||||
|
The only reason this is a separate package is to avoid core libguestfs
|
||||||
|
having to depend on Perl.
|
||||||
|
|
||||||
|
%package -n ocaml-%{name}
|
||||||
|
Summary: OCaml bindings for %{name}
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n ocaml-%{name}
|
||||||
|
ocaml-%{name} contains OCaml bindings for %{name}.
|
||||||
|
|
||||||
|
This is for toplevel and scripting access only. To compile OCaml
|
||||||
|
programs which use %{name} you will also need ocaml-%{name}-devel.
|
||||||
|
|
||||||
|
%package -n ocaml-%{name}-devel
|
||||||
|
Summary: OCaml bindings for %{name}
|
||||||
|
Requires: ocaml-%{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description -n ocaml-%{name}-devel
|
||||||
|
ocaml-%{name}-devel contains development libraries
|
||||||
|
required to use the OCaml bindings for %{name}.
|
||||||
|
|
||||||
|
%package -n perl-Sys-Guestfs
|
||||||
|
Summary: Perl bindings for %{name} (Sys::Guestfs)
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||||
|
|
||||||
|
%description -n perl-Sys-Guestfs
|
||||||
|
perl-Sys-Guestfs contains Perl bindings for %{name} (Sys::Guestfs).
|
||||||
|
|
||||||
|
%package -n python3-%{name}
|
||||||
|
Summary: Python 3 bindings for %{name}
|
||||||
|
BuildRequires: python-rpm-macros
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
%{?python_provide:%python_provide python3-%{name}}
|
||||||
|
|
||||||
|
%description -n python3-%{name}
|
||||||
|
python3-%{name} contains Python 3 bindings for %{name}.
|
||||||
|
|
||||||
|
%package -n rubygem-%{name}
|
||||||
|
Summary: Ruby bindings for %{name}
|
||||||
|
BuildRequires: ruby
|
||||||
|
BuildRequires: ruby-devel
|
||||||
|
BuildRequires: rubygem(rake)
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Requires: ruby
|
||||||
|
|
||||||
|
%description -n rubygem-%{name}
|
||||||
|
ruby-%{name} contains Ruby bindings for %{name}.
|
||||||
|
|
||||||
|
%package -n lua-%{name}
|
||||||
|
Summary: Lua bindings for %{name}
|
||||||
|
BuildRequires: lua-devel
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Requires: lua
|
||||||
|
|
||||||
|
%description -n lua-%{name}
|
||||||
|
lua-%{name} contains Lua bindings for %{name}.
|
||||||
|
|
||||||
|
%package gobject-1_0
|
||||||
|
Summary: GObject bindings for %{name}
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Obsoletes: libguestfs0 <= 1.44.2
|
||||||
|
|
||||||
|
%description gobject-1_0
|
||||||
|
%{name}-gobject-1_0 contains GObject bindings for %{name}.
|
||||||
|
|
||||||
|
To develop software against these bindings, you need to install
|
||||||
|
%{name}-gobject-devel.
|
||||||
|
|
||||||
|
%package typelib-Guestfs-1_0
|
||||||
|
Summary: Libguestfs GObject introspection data
|
||||||
|
Group: System/Libraries
|
||||||
|
|
||||||
|
%description typelib-Guestfs-1_0
|
||||||
|
This package contains the GObject introspection data.
|
||||||
|
|
||||||
|
%package gobject-devel
|
||||||
|
Summary: GObject bindings for %{name}
|
||||||
|
Requires: %{name}-gobject-1_0 = %{version}-%{release}
|
||||||
|
Requires: glib2-devel
|
||||||
|
|
||||||
|
%description gobject-devel
|
||||||
|
%{name}-gobject contains GObject bindings for %{name}.
|
||||||
|
|
||||||
|
This package is needed if you want to write software using the
|
||||||
|
GObject bindings. It also contains GObject Introspection information.
|
||||||
|
|
||||||
|
%package rescue
|
||||||
|
Summary: Virt-rescue shell
|
||||||
|
BuildRequires: iputils
|
||||||
|
BuildRequires: lsof
|
||||||
|
BuildRequires: pciutils
|
||||||
|
BuildRequires: strace
|
||||||
|
BuildRequires: vim
|
||||||
|
|
||||||
|
%description rescue
|
||||||
|
This adds the virt-rescue shell which is a "rescue disk" for virtual
|
||||||
|
machines, and additional tools to use inside the shell such as ssh,
|
||||||
|
network utilities, editors and debugging utilities.
|
||||||
|
|
||||||
|
%package rsync
|
||||||
|
Summary: Rsync support for %{name}
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
BuildRequires: rsync
|
||||||
|
|
||||||
|
%description rsync
|
||||||
|
This adds rsync support to %{name}. Install it if you want to use
|
||||||
|
rsync to upload or download files into disk images.
|
||||||
|
|
||||||
|
%package xfs
|
||||||
|
Summary: XFS support for %{name}
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description xfs
|
||||||
|
This adds XFS support to %{name}. Install it if you want to process
|
||||||
|
disk images containing XFS.
|
||||||
|
|
||||||
|
%package man-pages-ja
|
||||||
|
Summary: Japanese (ja) man pages for %{name}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description man-pages-ja
|
||||||
|
%{name}-man-pages-ja contains Japanese (ja) man pages
|
||||||
|
for %{name}.
|
||||||
|
|
||||||
|
%package man-pages-uk
|
||||||
|
Summary: Ukrainian (uk) man pages for %{name}
|
||||||
|
BuildArch: noarch
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
|
||||||
|
%description man-pages-uk
|
||||||
|
%{name}-man-pages-uk contains Ukrainian (uk) man pages
|
||||||
|
for %{name}.
|
||||||
|
|
||||||
|
%post -n %{name} -p /sbin/ldconfig
|
||||||
|
%postun -n %{name} -p /sbin/ldconfig
|
||||||
|
%post -n libguestfs0 -p /sbin/ldconfig
|
||||||
|
%postun -n libguestfs0 -p /sbin/ldconfig
|
||||||
|
%post -n %{name}-gobject-1_0 -p /sbin/ldconfig
|
||||||
|
%postun -n %{name}-gobject-1_0 -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%files -f %{name}.lang
|
||||||
|
%license README COPYING
|
||||||
|
%{_bindir}/guestfish
|
||||||
|
%{_bindir}/guestmount
|
||||||
|
%{_bindir}/guestunmount
|
||||||
|
%{_bindir}/libguestfs-test-tool
|
||||||
|
%{_bindir}/virt-copy-in
|
||||||
|
%{_bindir}/virt-copy-out
|
||||||
|
%{_bindir}/virt-tar-in
|
||||||
|
%{_bindir}/virt-tar-out
|
||||||
|
%{_mandir}/man1/guestfish.1*
|
||||||
|
%{_mandir}/man1/guestfs-faq.1*
|
||||||
|
%{_mandir}/man1/guestfs-performance.1*
|
||||||
|
%{_mandir}/man1/guestfs-recipes.1*
|
||||||
|
%{_mandir}/man1/guestfs-release-notes.1.gz
|
||||||
|
%{_mandir}/man1/guestfs-release-notes-1*.1*
|
||||||
|
%{_mandir}/man1/guestfs-security.1*
|
||||||
|
%{_mandir}/man1/guestmount.1*
|
||||||
|
%{_mandir}/man1/guestunmount.1*
|
||||||
|
%{_mandir}/man1/libguestfs-test-tool.1*
|
||||||
|
%{_mandir}/man1/virt-copy-in.1*
|
||||||
|
%{_mandir}/man1/virt-copy-out.1*
|
||||||
|
%{_mandir}/man1/virt-tar-in.1*
|
||||||
|
%{_mandir}/man1/virt-tar-out.1*
|
||||||
|
%{_mandir}/man5/libguestfs-tools.conf.5*
|
||||||
|
%config %{_sysconfdir}/profile.d/guestfish.sh
|
||||||
|
%config(noreplace) %{_sysconfdir}/libguestfs-tools.conf
|
||||||
|
|
||||||
|
%files -n libguestfs0
|
||||||
|
%license COPYING.LIB
|
||||||
|
%{_libdir}/libguestfs.so.*
|
||||||
|
|
||||||
|
%files -n libguestfs-appliance
|
||||||
|
%dir %{_libdir}/guestfs
|
||||||
|
%dir %{_libdir}/guestfs/supermin.d
|
||||||
|
%{_libdir}/guestfs/supermin.d/base.tar.gz
|
||||||
|
%{_libdir}/guestfs/supermin.d/daemon.tar.gz
|
||||||
|
%{_libdir}/guestfs/supermin.d/init.tar.gz
|
||||||
|
%{_libdir}/guestfs/supermin.d/udev-rules.tar.gz
|
||||||
|
%{_libdir}/guestfs/supermin.d/excludefiles
|
||||||
|
%{_libdir}/guestfs/supermin.d/hostfiles
|
||||||
|
%{_libdir}/guestfs/supermin.d/packages
|
||||||
|
%{_libdir}/guestfs/supermin.d/zz-scripts.tar.gz
|
||||||
|
|
||||||
|
%files winsupport
|
||||||
|
%{_libdir}/guestfs/supermin.d/zz-*winsupport*
|
||||||
|
|
||||||
|
%files bash-completion
|
||||||
|
%dir %{_datadir}/bash-completion/completions
|
||||||
|
%{_datadir}/bash-completion/completions/guestfish
|
||||||
|
%{_datadir}/bash-completion/completions/guestmount
|
||||||
|
%{_datadir}/bash-completion/completions/guestunmount
|
||||||
|
%{_datadir}/bash-completion/completions/libguestfs-test-tool
|
||||||
|
%{_datadir}/bash-completion/completions/virt-copy-in
|
||||||
|
%{_datadir}/bash-completion/completions/virt-copy-out
|
||||||
|
%{_datadir}/bash-completion/completions/virt-rescue
|
||||||
|
%{_datadir}/bash-completion/completions/virt-tar-in
|
||||||
|
%{_datadir}/bash-completion/completions/virt-tar-out
|
||||||
|
|
||||||
|
%files inspect-icons
|
||||||
|
# no files
|
||||||
|
|
||||||
|
%files -n ocaml-%{name} -f %name.files
|
||||||
|
|
||||||
|
%files -n ocaml-%{name}-devel -f %name.files.devel
|
||||||
|
%doc ocaml/examples/*.ml ocaml/html
|
||||||
|
%{_mandir}/man3/guestfs-ocaml.3*
|
||||||
|
|
||||||
|
%files -n perl-Sys-Guestfs
|
||||||
|
%{perl_vendorarch}/*
|
||||||
|
%doc perl/examples/*.pl
|
||||||
|
%{_mandir}/man3/Sys::Guestfs.3pm*
|
||||||
|
%{_mandir}/man3/guestfs-perl.3*
|
||||||
|
|
||||||
|
%files -n python3-%{name}
|
||||||
|
%doc python/examples/*.py
|
||||||
|
%{python3_sitearch}/libguestfsmod*.so
|
||||||
|
%{python3_sitearch}/guestfs.py
|
||||||
|
%{_mandir}/man3/guestfs-python.3*
|
||||||
|
|
||||||
|
%files -n rubygem-%{name}
|
||||||
|
%doc ruby/examples/*.rb
|
||||||
|
%doc ruby/doc/site/*
|
||||||
|
%{_libdir}/ruby
|
||||||
|
%{_mandir}/man3/guestfs-ruby.3*
|
||||||
|
|
||||||
|
%files -n lua-%{name}
|
||||||
|
%doc lua/examples/*.lua
|
||||||
|
%doc lua/examples/LICENSE
|
||||||
|
%{_libdir}/lua
|
||||||
|
%{_mandir}/man3/guestfs-lua.3*
|
||||||
|
|
||||||
|
%files gobject-1_0
|
||||||
|
%{_libdir}/libguestfs-gobject-1.0.so.0*
|
||||||
|
|
||||||
|
%files typelib-Guestfs-1_0
|
||||||
|
%{_libdir}/girepository-1.0/Guestfs-1.0.typelib
|
||||||
|
|
||||||
|
%files gobject-devel
|
||||||
|
%{_libdir}/libguestfs-gobject-1.0.so
|
||||||
|
%{_includedir}/guestfs-gobject.h
|
||||||
|
%dir %{_includedir}/guestfs-gobject
|
||||||
|
%{_includedir}/guestfs-gobject/*.h
|
||||||
|
%{_datadir}/gir-1.0/Guestfs-1.0.gir
|
||||||
|
%{_libdir}/pkgconfig/libguestfs-gobject-1.0.pc
|
||||||
|
%{_mandir}/man3/guestfs-gobject.3*
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%doc examples/*.c
|
||||||
|
%{_sbindir}/libguestfs-make-fixed-appliance
|
||||||
|
%{_libdir}/*.so
|
||||||
|
%{_libdir}/pkgconfig/libguestfs.pc
|
||||||
|
%{_includedir}/guestfs.h
|
||||||
|
%{_mandir}/man1/guestfs-building.1*
|
||||||
|
%{_mandir}/man1/guestfs-hacking.1*
|
||||||
|
%{_mandir}/man1/guestfs-internals.1*
|
||||||
|
%{_mandir}/man1/guestfs-testing.1*
|
||||||
|
%{_mandir}/man1/libguestfs-make-fixed-appliance.1*
|
||||||
|
%{_mandir}/man3/guestfs.3*
|
||||||
|
%{_mandir}/man3/guestfs-examples.3*
|
||||||
|
%{_mandir}/man3/libguestfs.3*
|
||||||
|
|
||||||
|
%files -n libguestfsd
|
||||||
|
%{_udevrulesdir}
|
||||||
|
%{_sbindir}/guestfsd
|
||||||
|
%{_mandir}/man8/*
|
||||||
|
|
||||||
|
%files rescue
|
||||||
|
%{_libdir}/guestfs/supermin.d/zz-packages-rescue
|
||||||
|
%{_bindir}/virt-rescue
|
||||||
|
%{_mandir}/man1/virt-rescue.1*
|
||||||
|
|
||||||
|
%files rsync
|
||||||
|
%{_libdir}/guestfs/supermin.d/zz-packages-rsync
|
||||||
|
|
||||||
|
%files xfs
|
||||||
|
%{_libdir}/guestfs/supermin.d/zz-packages-xfs
|
||||||
|
|
||||||
|
%files man-pages-ja
|
||||||
|
%lang(ja) %{_mandir}/ja/man1/*.1*
|
||||||
|
%lang(ja) %{_mandir}/ja/man3/*.3*
|
||||||
|
%lang(ja) %{_mandir}/ja/man5/*.5*
|
||||||
|
|
||||||
|
%files man-pages-uk
|
||||||
|
%if 0%{?suse_version} <= 1500
|
||||||
|
%dir %{_mandir}/uk
|
||||||
|
%dir %{_mandir}/uk/man{1,3,5}
|
||||||
|
%endif
|
||||||
|
%lang(uk) %{_mandir}/uk/man1/*.1*
|
||||||
|
%lang(uk) %{_mandir}/uk/man3/*.3*
|
||||||
|
%lang(uk) %{_mandir}/uk/man5/*.5*
|
||||||
|
|
||||||
|
%changelog
|
45
mount-rootfs-and-chroot.sh
Normal file
45
mount-rootfs-and-chroot.sh
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Usage: $0 /dev/sda5
|
||||||
|
rootfs=$1
|
||||||
|
mnt=/sysroot
|
||||||
|
mounts=
|
||||||
|
|
||||||
|
if test -b "${rootfs}"
|
||||||
|
then
|
||||||
|
|
||||||
|
mkdir -v -p "${mnt}"
|
||||||
|
|
||||||
|
if mount -v "${rootfs}" "${mnt}"
|
||||||
|
then
|
||||||
|
|
||||||
|
for i in dev dev/pts proc sys selinux
|
||||||
|
do
|
||||||
|
if test -d /${i} && test -d "${mnt}/${i}" && test "`stat -c %D /`" != "`stat -c %D ${i}`"
|
||||||
|
then
|
||||||
|
mount -v --bind /${i} "${mnt}/${i}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
chroot "${mnt}" su -
|
||||||
|
|
||||||
|
while read b m rest
|
||||||
|
do
|
||||||
|
case "${m}" in
|
||||||
|
${mnt}*)
|
||||||
|
mounts="${m} ${mounts}"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done <<-EOF
|
||||||
|
`
|
||||||
|
cat < /proc/mounts
|
||||||
|
`
|
||||||
|
EOF
|
||||||
|
|
||||||
|
for i in ${mounts}
|
||||||
|
do
|
||||||
|
umount -v "${i}"
|
||||||
|
done
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
13
use-rtc-driftfix-slew-for-x86-only.patch
Normal file
13
use-rtc-driftfix-slew-for-x86-only.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
--- a/lib/launch-direct.c
|
||||||
|
+++ b/lib/launch-direct.c
|
||||||
|
@@ -645,7 +645,10 @@ launch_direct (guestfs_h *g, void *datav
|
||||||
|
flag ("-no-reboot");
|
||||||
|
|
||||||
|
/* These are recommended settings, see RHBZ#1053847. */
|
||||||
|
+#if defined(__i386__) || defined(__x86_64__)
|
||||||
|
+ /* Man page states, "Enable driftfix (i386 targets only)" */
|
||||||
|
arg ("-rtc", "driftfix=slew");
|
||||||
|
+#endif
|
||||||
|
if (guestfs_int_qemu_supports (g, data->qemu_data, "-no-hpet"))
|
||||||
|
flag ("-no-hpet");
|
||||||
|
#if defined(__i386__) || defined(__x86_64__)
|
Loading…
x
Reference in New Issue
Block a user