diff --git a/.gitignore b/.gitignore index 1229603..4bd7ec0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ /clog /nbdkit-*.tar.gz /nbdkit-*.tar.gz.sig -/*~ diff --git a/0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch b/0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch deleted file mode 100644 index ab06e22..0000000 --- a/0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 4076ff58512ee98928b1bdb13274466b175e1a97 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Fri, 2 Jan 2026 11:59:11 +0000 -Subject: [PATCH] tests/test-ocaml-debug-hexdump.sh: Fix test that plugin was - built - -This is supposed to check that the test plugin was built and skip if -not. However because the 'requires' function call was missing, it -actually failed the test if not built. - -Fixes: commit ec3be5030656a9126abbb0bceeb5a1ecf6898c6a ---- - tests/test-ocaml-debug-hexdump.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/test-ocaml-debug-hexdump.sh b/tests/test-ocaml-debug-hexdump.sh -index 5cc71375..3954225e 100755 ---- a/tests/test-ocaml-debug-hexdump.sh -+++ b/tests/test-ocaml-debug-hexdump.sh -@@ -36,7 +36,7 @@ set -x - set -u - - plugin=$abs_top_srcdir/tests/test-ocaml-debug-hexdump-plugin.$SOEXT --test -x "$plugin" -+requires test -x "$plugin" - - requires_run - requires_nbdsh_uri --- -2.52.0 - diff --git a/copy-patches.sh b/copy-patches.sh deleted file mode 100755 index 2682a17..0000000 --- a/copy-patches.sh +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/bash - - -set -e - -# Maintainer script to copy patches from the git repo to the current -# directory. Use it like this: -# ./copy-patches.sh - -rhel_version=8.3 - -# Check we're in the right directory. -if [ ! -f nbdkit.spec ]; then - echo "$0: run this from the directory containing 'nbdkit.spec'" - exit 1 -fi - -git_checkout=$HOME/d/nbdkit-rhel-$rhel_version -if [ ! -d $git_checkout ]; then - echo "$0: $git_checkout does not exist" - echo "This script is only for use by the maintainer when preparing a" - echo "nbdkit release on RHEL." - exit 1 -fi - -# Get the base version of nbdkit. -version=`grep '^Version:' nbdkit.spec | awk '{print $2}'` -tag="v$version" - -# Remove any existing patches. -git rm -f [0-9]*.patch ||: -rm -f [0-9]*.patch - -# Get the patches. -(cd $git_checkout; rm -f [0-9]*.patch; git format-patch -N $tag) -mv $git_checkout/[0-9]*.patch . - -# Remove any not to be applied. -rm -f *NOT-FOR-RPM*.patch - -# Add the patches. -git add [0-9]*.patch - -# Print out the patch lines. -echo -echo "--- Copy the following text into nbdkit.spec file" -echo - -echo "# Patches." -for f in [0-9]*.patch; do - n=`echo $f | awk -F- '{print $1}'` - echo "Patch$n: $f" -done - -echo -echo "--- End of text" diff --git a/gating.yaml b/gating.yaml deleted file mode 100755 index 2c7ed80..0000000 --- a/gating.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- !Policy -product_versions: - - rhel-* -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} diff --git a/libguestfs.keyring b/libguestfs.keyring index f0508c8..bb3eb55 100644 Binary files a/libguestfs.keyring and b/libguestfs.keyring differ diff --git a/nbdkit-find-provides b/nbdkit-find-provides deleted file mode 100755 index 7013ccd..0000000 --- a/nbdkit-find-provides +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash - - -# Generate RPM provides automatically for nbdkit packages and filters. -# Copyright (C) 2009-2022 Red Hat Inc. - -# To test: -# find /usr/lib64/nbdkit/plugins | ./nbdkit-find-provides VER REL -# find /usr/lib64/nbdkit/filters | ./nbdkit-find-provides VER REL - -ver="$1" -rel="$2" - -function process_file -{ - if [[ $1 =~ /plugins/nbdkit-.*-plugin ]] || - [[ $1 =~ /filters/nbdkit-.*-filter ]]; then - echo "Provides:" "$(basename $1 .so)" "=" "$ver-$rel" - fi -} - -while read line; do - process_file "$line" -done diff --git a/nbdkit.attr b/nbdkit.attr deleted file mode 100644 index 2757679..0000000 --- a/nbdkit.attr +++ /dev/null @@ -1,3 +0,0 @@ -%__nbdkit_provides %{_rpmconfigdir}/nbdkit-find-provides %{version} %{release} -%__nbdkit_path %{_libdir}/nbdkit/(plugins|filters)/nbdkit-.*-(plugin|filter)(\.so)?$ -%__nbdkit_flags exeonly diff --git a/nbdkit.fc b/nbdkit.fc deleted file mode 100644 index 4877736..0000000 --- a/nbdkit.fc +++ /dev/null @@ -1,3 +0,0 @@ -/usr/sbin/nbdkit -- gen_context(system_u:object_r:nbdkit_exec_t,s0) - -/usr/lib/systemd/system/nbdkit.* gen_context(system_u:object_r:nbdkit_unit_file_t,s0) diff --git a/nbdkit.if b/nbdkit.if deleted file mode 100644 index 315fead..0000000 --- a/nbdkit.if +++ /dev/null @@ -1,207 +0,0 @@ -## policy for nbdkit - -######################################## -## -## Execute nbdkit_exec_t in the nbdkit domain. -## -## -## -## Domain allowed to transition. -## -## -# -interface(`nbdkit_domtrans',` - gen_require(` - type nbdkit_t, nbdkit_exec_t; - ') - - corecmd_search_bin($1) - domtrans_pattern($1, nbdkit_exec_t, nbdkit_t) -') - -###################################### -## -## Execute nbdkit in the caller domain. -## -## -## -## Domain allowed access. -## -## -# -interface(`nbdkit_exec',` - gen_require(` - type nbdkit_exec_t; - ') - - corecmd_search_bin($1) - can_exec($1, nbdkit_exec_t) -') - -######################################## -## -## Execute nbdkit in the nbdkit domain, and -## allow the specified role the nbdkit domain. -## -## -## -## Domain allowed to transition -## -## -## -## -## The role to be allowed the nbdkit domain. -## -## -# -interface(`nbdkit_run',` - gen_require(` - type nbdkit_t; - attribute_role nbdkit_roles; - ') - - nbdkit_domtrans($1) - roleattribute $2 nbdkit_roles; -') - -######################################## -## -## Role access for nbdkit -## -## -## -## Role allowed access -## -## -## -## -## User domain for the role -## -## -# -interface(`nbdkit_role',` - gen_require(` - type nbdkit_t; - attribute_role nbdkit_roles; - ') - - roleattribute $1 nbdkit_roles; - - nbdkit_domtrans($2) - - ps_process_pattern($2, nbdkit_t) - allow $2 nbdkit_t:process { signull signal sigkill }; -') - -######################################## -## -## Allow attempts to connect to nbdkit -## with a unix stream socket. -## -## -## -## Domain to not audit. -## -## -# -interface(`nbdkit_stream_connect',` - gen_require(` - type nbdkit_t; - ') - - allow $1 nbdkit_t:unix_stream_socket connectto; -') - -######################################## -## -## Allow nbdkit_exec_t to be an entrypoint -## of the specified domain -## -## -## -## Domain allowed access. -## -## -## -# -interface(`nbdkit_entrypoint',` - gen_require(` - type nbdkit_exec_t; - ') - allow $1 nbdkit_exec_t:file entrypoint; -') - -# ---------------------------------------------------------------------- -# RWMJ: See: -# https://issues.redhat.com/browse/RHEL-5174?focusedId=23387259&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-23387259 -# Remove this when virt.if gets updated. - -######################################## -# -# Interface compatibility blocks -# -# The following definitions ensure compatibility with distribution policy -# versions that do not contain given interfaces (epel, or older Fedora -# releases). -# Each block tests for existence of given interface and defines it if needed. -# - -######################################## -## -## Read and write to svirt_image dirs. -## -## -## -## Domain allowed access. -## -## -# -ifndef(`virt_rw_svirt_image_dirs',` - interface(`virt_rw_svirt_image_dirs',` - gen_require(` - type svirt_image_t; - ') - - allow $1 svirt_image_t:dir rw_dir_perms; - ') -') - -######################################## -## -## Create svirt_image sock_files. -## -## -## -## Domain allowed access. -## -## -# -ifndef(`virt_create_svirt_image_sock_files',` - interface(`virt_create_svirt_image_sock_files',` - gen_require(` - type svirt_image_t; - ') - - allow $1 svirt_image_t:sock_file create_sock_file_perms; - ') -') - -######################################## -## -## Read and write virtlogd pipes. -## -## -## -## Domain allowed access. -## -## -# -ifndef(`virtlogd_rw_pipes',` - interface(`virtlogd_rw_pipes',` - gen_require(` - type virtlogd_t; - ') - - allow $1 virtlogd_t:fifo_file rw_fifo_file_perms; - ') -') diff --git a/nbdkit.spec b/nbdkit.spec index c306b50..f28aafd 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,213 +1,106 @@ %global _hardened_build 1 -%ifarch %{kernel_arches} -# ppc64le broken in rawhide: -# https://bugzilla.redhat.com/show_bug.cgi?id=2006709 -# riscv64 tests fail with -# qemu-system-riscv64: invalid accelerator kvm -# qemu-system-riscv64: falling back to tcg -# qemu-system-riscv64: unable to find CPU model 'host' -# This seems to require changes in libguestfs and/or qemu to support -# -cpu max or -cpu virt. -# s390x builders can't run libguestfs -%ifnarch %{power64} riscv64 s390 s390x +%ifarch aarch64 %{arm} %{ix86} x86_64 ppc %{power64} %global have_libguestfs 1 %endif -%endif -# We can only compile the OCaml plugin on platforms which have native -# OCaml support (not bytecode). -%ifarch %{ocaml_native_compiler} -%global have_ocaml 1 -%endif - -# libblkio was broken on i686: https://bugzilla.redhat.com/2229372 -# but somehow "fixed itself", keep an eye on it. -%global have_blkio 1 - -# Enable mingw subpackage on Fedora only. -%if 0%{?fedora} -%global have_mingw 1 -%endif - -# Enable nbdkit-selinux package. -%global with_selinux 1 -%global modulename nbdkit -%global selinuxtype targeted - -# Architectures where we run the complete test suite including -# the libguestfs tests. +# Architectures where the complete test suite must pass. # # On all other architectures, a simpler test suite must pass. This # omits any tests that run full qemu, since running qemu under TCG is # often broken on non-x86_64 arches. %global complete_test_arches x86_64 -# If the test suite is broken on a particular architecture, document -# it as a bug and add it to this list. -%global broken_test_arches NONE +# Currently everything has Python 2. RHEL 7 doesn't have Python 3. +%if 0%{?rhel} != 7 +%global have_python3 1 +%endif + +# Disable libvirt on riscv64 for now. +%ifnarch riscv64 +%global have_libvirt 1 +%endif # If we should verify tarball signature with GPGv2. %global verify_tarball_signature 1 +# If there are patches which touch autotools files, set this to 1. +%global patches_touch_autotools %{nil} + # The source directory. -%global source_directory 1.47-development +%global source_directory 1.10-stable Name: nbdkit -Version: 1.47.1 +Version: 1.10.3 Release: 1%{?dist} Summary: NBD server -License: BSD-3-Clause -URL: https://gitlab.com/nbdkit/nbdkit - -%if 0%{?rhel} >= 8 -# On RHEL 8+, we cannot build the package on i686 (no virt stack). -ExcludeArch: i686 -%endif +License: BSD +URL: https://github.com/libguestfs/nbdkit Source0: http://libguestfs.org/download/nbdkit/%{source_directory}/%{name}-%{version}.tar.gz %if 0%{verify_tarball_signature} Source1: http://libguestfs.org/download/nbdkit/%{source_directory}/%{name}-%{version}.tar.gz.sig # Keyring used to verify tarball signature. -Source2: libguestfs.keyring +Source2: libguestfs.keyring %endif -# Maintainer script which helps with handling patches. -Source3: copy-patches.sh +%if 0%{patches_touch_autotools} +BuildRequires: autoconf, automake, libtool +%endif -# For automatic RPM Provides generation. -# See: https://rpm-software-management.github.io/rpm/manual/dependency_generators.html -Source4: nbdkit.attr -Source5: nbdkit-find-provides +%if 0%{?rhel} == 7 +# On RHEL 7, nothing in the virt stack is shipped on aarch64 and +# libguestfs was not shipped on POWER (fixed in 7.5). We could in +# theory make all of this work by having lots more conditionals, but +# for now limit this package to x86_64 on RHEL. +ExclusiveArch: x86_64 +%endif -# For nbdkit-selinux package: -Source6: %{modulename}.te -Source7: %{modulename}.if -Source8: %{modulename}.fc - -# Fix for broken test, upstream in nbdkit >= 1.47.2 -Patch: 0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch - -# For applying the patches: -BuildRequires: git - -# For rebuilding autoconf cruft: +%ifnarch %{complete_test_arches} BuildRequires: autoconf, automake, libtool - -BuildRequires: make -BuildRequires: libxcrypt-devel -BuildRequires: gcc, gcc-c++ -BuildRequires: %{_bindir}/pod2man -BuildRequires: pkgconfig(gnutls) -BuildRequires: pkgconfig(libselinux) -%if !0%{?rhel} && 0%{?have_libguestfs} -BuildRequires: pkgconfig(libguestfs) %endif -BuildRequires: pkgconfig(libvirt) -BuildRequires: pkgconfig(liblzma) -BuildRequires: pkgconfig(zlib) -%if !0%{?rhel} -BuildRequires: pkgconfig(zlib-ng) +BuildRequires: /usr/bin/pod2man +BuildRequires: gnutls-devel +BuildRequires: libselinux-devel +%if 0%{?have_libguestfs} +BuildRequires: libguestfs-devel %endif -BuildRequires: pkgconfig(bzip2) -BuildRequires: pkgconfig(libzstd) -BuildRequires: pkgconfig(libcurl) -BuildRequires: pkgconfig(libnbd) -%if !0%{?rhel} -# We require libnfs >= 6, but the internal version is >= 16 -BuildRequires: pkgconfig(libnfs) >= 16 -%endif -BuildRequires: pkgconfig(libssh) -BuildRequires: e2fsprogs -BuildRequires: pkgconfig(ext2fs) -BuildRequires: pkgconfig(com_err) -%if !0%{?rhel} -BuildRequires: xorriso -BuildRequires: pkgconfig(libtorrent-rasterbar) -%endif -%if 0%{?have_blkio} -BuildRequires: pkgconfig(blkio) -%endif -%if !0%{?rhel} -BuildRequires: pkgconfig(OpenCL) +%if 0%{?have_libvirt} +BuildRequires: libvirt-devel %endif +BuildRequires: xz-devel +BuildRequires: zlib-devel +BuildRequires: libcurl-devel +BuildRequires: e2fsprogs-devel +BuildRequires: genisoimage BuildRequires: bash-completion -%if 0%{?fedora} || 0%{?rhel} >= 11 -BuildRequires: bash-completion-devel -%endif BuildRequires: perl-devel BuildRequires: perl(ExtUtils::Embed) -%if 0%{?rhel} == 8 -BuildRequires: platform-python-devel -%else +BuildRequires: python2-devel +%if 0%{?fedora} >= 29 +BuildRequires: python-unversioned-command +%endif +%if 0%{?have_python3} BuildRequires: python3-devel %endif -%if !0%{?rhel} -BuildRequires: python3-boto3 -%endif -%if !0%{?rhel} -%if 0%{?have_ocaml} -BuildRequires: ocaml >= 4.03 -BuildRequires: ocaml-ocamldoc -%endif -BuildRequires: pkgconfig(tcl) -BuildRequires: pkgconfig(lua) +%ifarch %{ocaml_native_compiler} +# Requires OCaml 4.02.2 which contains fix for +# http://caml.inria.fr/mantis/view.php?id=6693 +BuildRequires: ocaml >= 4.02.2 %endif +BuildRequires: ruby-devel +BuildRequires: tcl-devel +BuildRequires: lua-devel %if 0%{verify_tarball_signature} BuildRequires: gnupg2 %endif # Only for running the test suite: -BuildRequires: /usr/bin/bc BuildRequires: /usr/bin/certtool -BuildRequires: /usr/bin/cut -BuildRequires: expect -BuildRequires: glibc-utils -BuildRequires: /usr/bin/hexdump -BuildRequires: /usr/sbin/ip -BuildRequires: jq -%if !0%{?rhel} -BuildRequires: /usr/bin/lzip -%endif -BuildRequires: /usr/bin/nbdcopy -BuildRequires: /usr/bin/nbdinfo -BuildRequires: /usr/bin/nbdsh -%ifnarch %{ix86} BuildRequires: /usr/bin/qemu-img -BuildRequires: /usr/bin/qemu-io -BuildRequires: /usr/bin/qemu-nbd -%endif -BuildRequires: /usr/sbin/sfdisk -%if !0%{?rhel} BuildRequires: /usr/bin/socat -%endif BuildRequires: /usr/sbin/ss -BuildRequires: /usr/bin/stat - -# This package has RPM rules that create the automatic Provides: for -# nbdkit plugins and filters. This means nbdkit build depends on -# itself, but it's a simple noarch package so easy to install. -BuildRequires: nbdkit-srpm-macros >= 1.30.0 - -%if 0%{?have_mingw} -BuildRequires: mingw32-filesystem -BuildRequires: mingw64-filesystem -BuildRequires: mingw32-gcc -BuildRequires: mingw64-gcc -BuildRequires: mingw32-gcc-c++ -BuildRequires: mingw64-gcc-c++ -BuildRequires: mingw32-dlfcn -BuildRequires: mingw64-dlfcn -BuildRequires: mingw32-gnutls -BuildRequires: mingw64-gnutls -BuildRequires: mingw32-winpthreads -BuildRequires: mingw64-winpthreads -BuildRequires: mingw32-xz -BuildRequires: mingw64-xz -BuildRequires: mingw32-zlib -BuildRequires: mingw64-zlib -%endif # nbdkit is a metapackage pulling the server and a useful subset # of the plugins and filters. @@ -215,13 +108,6 @@ Requires: nbdkit-server%{?_isa} = %{version}-%{release} Requires: nbdkit-basic-plugins%{?_isa} = %{version}-%{release} Requires: nbdkit-basic-filters%{?_isa} = %{version}-%{release} -%if 0%{?with_selinux} -# This ensures that the nbdkit-selinux package and all its -# dependencies are not pulled into containers and other systems that -# do not use SELinux. -Requires: (%{name}-selinux if selinux-policy-%{selinuxtype}) -%endif - %description NBD is a protocol for accessing block devices (hard disks and @@ -245,10 +131,8 @@ The key features are: * Filters can be stacked in front of plugins to transform the output. -* Server can run standalone or can be invoked from other programs. - -'%{name}' is a meta-package which pulls in the core server and a -useful subset of plugins and filters with minimal dependencies. +In Fedora, '%{name}' is a meta-package which pulls in the core server +and a useful subset of plugins and filters. If you want just the server, install '%{name}-server'. @@ -258,62 +142,67 @@ reading the nbdkit(1) and nbdkit-plugin(3) manual pages. %package server Summary: The %{name} server +License: BSD + %description server -This package contains the %{name} server with only the null plugin -and no filters. To install a basic set of plugins and filters you -need to install "nbdkit-basic-plugins", "nbdkit-basic-filters" or -the metapackage "nbdkit". +This package contains the %{name} server with no plugins or filters. %package basic-plugins Summary: Basic plugins for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove these in Fedora 30. +Obsoletes: %{name}-plugin-file < 1.1.19-1 +Obsoletes: %{name}-plugin-nbd < 1.1.19-1 +Obsoletes: %{name}-plugin-streaming < 1.1.19-1 + %description basic-plugins -This package contains plugins for %{name} which only depend on simple -C libraries: glibc, gnutls, zlib and zstd. Other plugins for nbdkit -with more complex dependencies are packaged separately. +This package contains some basic plugins for %{name} which have only +trivial dependencies. -nbdkit-data-plugin Serve small amounts of data from the command line. +nbdkit-data-plugin Serve small amounts of data from the command line. -nbdkit-eval-plugin Write a shell script plugin on the command line. +nbdkit-file-plugin The normal file plugin for serving files. -nbdkit-file-plugin The normal file plugin for serving files. +nbdkit-floppy-plugin Create a virtual floppy disk from a directory. -nbdkit-floppy-plugin Create a virtual floppy disk from a directory. +nbdkit-full-plugin A virtual disk that returns ENOSPC errors. -nbdkit-full-plugin A virtual disk that returns ENOSPC errors. +nbdkit-memory-plugin A virtual memory plugin. -nbdkit-info-plugin Serve client and server information. +nbdkit-nbd-plugin An NBD forwarding plugin. -nbdkit-memory-plugin A virtual memory plugin. +nbdkit-null-plugin A null (bitbucket) plugin. -nbdkit-ones-plugin Fill disk with repeated 0xff or other bytes. +nbdkit-pattern-plugin Fixed test pattern. -nbdkit-pattern-plugin Fixed test pattern. +nbdkit-partitioning-plugin Create virtual disks from partitions. -nbdkit-partitioning-plugin Create virtual disks from partitions. +nbdkit-random-plugin Random content plugin for testing. -nbdkit-random-plugin Random content plugin for testing. +nbdkit-sh-plugin Write plugins as shell scripts or executables. -nbdkit-sh-plugin Write plugins as shell scripts or executables. +nbdkit-split-plugin Concatenate one or more files. -nbdkit-sparse-random-plugin Make sparse random disks. +nbdkit-streaming-plugin A streaming file serving plugin. -nbdkit-split-plugin Concatenate one or more files. - -nbdkit-zero-plugin Zero-length plugin for testing. +nbdkit-zero-plugin Zero-length plugin for testing. %package example-plugins Summary: Example plugins for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} -%if !0%{?rhel} -# example4 is written in Perl. -Requires: %{name}-perl-plugin -%endif + +# For upgrade path, remove this in Fedora 30. +Obsoletes: %{name}-plugin-examples < 1.1.19-1 + %description example-plugins This package contains example plugins for %{name}. @@ -322,93 +211,93 @@ This package contains example plugins for %{name}. # The plugins below have non-trivial dependencies are so are # packaged separately. -%if 0%{?have_blkio} -%package blkio-plugin -Summary: libblkio NVMe, vhost-user, vDPA, VFIO plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description blkio-plugin -This package contains libblkio (NVMe, vhost-user, vDPA, VFIO) support -for %{name}. -%endif - - -%if !0%{?rhel} -%package cc-plugin -Summary: Write small inline C plugins and scripts for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -Requires: gcc -Requires: /usr/bin/cat - -%description cc-plugin -This package contains support for writing inline C plugins and scripts -for %{name}. NOTE this is NOT the right package for writing plugins -in C, install %{name}-devel for that. -%endif - - -%if !0%{?rhel} -%package cdi-plugin -Summary: Containerized Data Import plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -Requires: jq -Requires: podman - -%description cdi-plugin -This package contains Containerized Data Import support for %{name}. -%endif - - %package curl-plugin -Summary: HTTP/FTP (cURL) plugin for %{name} +Summary: HTTP/FTP/SSH (cURL) plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-curl = %{version}-%{release} +Obsoletes: %{name}-plugin-curl <= %{version}-%{release} + + %description curl-plugin -This package contains cURL (HTTP/FTP) support for %{name}. +This package contains cURL (HTTP/FTP/SSH) support for %{name}. -%if !0%{?rhel} -# In theory this is noarch, but because plugins are placed in _libdir -# which varies across architectures, RPM does not allow this. -%package gcs-plugin -Summary: Gooogle Cloud Storage plugin %{name} -Requires: %{name}-python-plugin%{?_isa} = %{version}-%{release} +%package ext2-plugin +Summary: ext2, ext3 and ext4 filesystem support for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} -# XXX Should not need to add this. -Requires: python3-google-cloud-storage -%description gcs-plugin -This package lets you open disk images stored in Google -Cloud Storage using %{name}. -%endif +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-ext2 = %{version}-%{release} +Obsoletes: %{name}-plugin-ext2 <= %{version}-%{release} -%if !0%{?rhel} && 0%{?have_libguestfs} +%description ext2-plugin +This package contains ext2, ext3 and ext4 filesystem support for +%{name}. + + +%if 0%{?have_libguestfs} %package guestfs-plugin Summary: libguestfs plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-guestfs = %{version}-%{release} +Obsoletes: %{name}-plugin-guestfs <= %{version}-%{release} + + %description guestfs-plugin This package is a libguestfs plugin for %{name}. %endif -%if !0%{?rhel} +%package gzip-plugin +Summary: GZip file serving plugin for %{name} +License: BSD + +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-gzip = %{version}-%{release} +Obsoletes: %{name}-plugin-gzip <= %{version}-%{release} + + +%description gzip-plugin +This package is a gzip file serving plugin for %{name}. + + %package iso-plugin Summary: Virtual ISO 9660 plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} -Requires: xorriso +Requires: genisoimage + %description iso-plugin This package is a virtual ISO 9660 (CD-ROM) plugin for %{name}. -%endif -%if !0%{?rhel} +%if 0%{?have_libvirt} %package libvirt-plugin Summary: Libvirt plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-libvirt = %{version}-%{release} +Obsoletes: %{name}-plugin-libvirt <= %{version}-%{release} + + %description libvirt-plugin This package is a libvirt plugin for %{name}. It lets you access libvirt guest disks readonly. It is implemented using the libvirt @@ -416,50 +305,33 @@ virDomainBlockPeek API. %endif -%package linuxdisk-plugin -Summary: Virtual Linux disk plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -# for mke2fs -Requires: e2fsprogs - -%description linuxdisk-plugin -This package is a virtual Linux disk plugin for %{name}. - - -%if !0%{?rhel} %package lua-plugin Summary: Lua plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-lua = %{version}-%{release} +Obsoletes: %{name}-plugin-lua <= %{version}-%{release} + + %description lua-plugin This package lets you write Lua plugins for %{name}. -%endif -%package nbd-plugin -Summary: NBD proxy / forward plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description nbd-plugin -This package lets you forward NBD connections from %{name} -to another NBD server. - - -%if !0%{?rhel} -%package nfs-plugin -Summary: NFS (Network File Server) plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description nfs-plugin -This package contains Network File Server (NFS) support for %{name}. -%endif - - -%if !0%{?rhel} && 0%{?have_ocaml} +%ifarch %{ocaml_native_compiler} %package ocaml-plugin Summary: OCaml plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-ocaml = %{version}-%{release} +Obsoletes: %{name}-plugin-ocaml <= %{version}-%{release} + + %description ocaml-plugin This package lets you run OCaml plugins for %{name}. @@ -469,112 +341,151 @@ To compile OCaml plugins you will also need to install %package ocaml-plugin-devel Summary: OCaml development environment for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: %{name}-ocaml-plugin%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-ocaml-devel = %{version}-%{release} +Obsoletes: %{name}-plugin-ocaml-devel <= %{version}-%{release} + + %description ocaml-plugin-devel This package lets you write OCaml plugins for %{name}. %endif -%package ondemand-plugin -Summary: Create filesystems on demand for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -# For mkfs and mke2fs (defaults). -Requires: util-linux, e2fsprogs -# For other filesystems. -Suggests: xfsprogs -%if !0%{?rhel} -Suggests: ntfsprogs, dosfstools -%endif - -%description ondemand-plugin -This package is a plugin to create filesystems on demand for %{name}. - - -%if !0%{?rhel} %package perl-plugin Summary: Perl plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-perl = %{version}-%{release} +Obsoletes: %{name}-plugin-perl <= %{version}-%{release} + + %description perl-plugin This package lets you write Perl plugins for %{name}. -%endif -%package python-plugin +%package python-plugin-common +Summary: Python 2 and 3 plugin common files for %{name} +License: BSD + +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-python-common = %{version}-%{release} +Obsoletes: %{name}-plugin-python-common <= %{version}-%{release} + + +%description python-plugin-common +This package contains common files shared between Python 2 +and Python 3 %{name} plugins. + +You should not install this package directly. Instead install +either %{name}-python2-plugin or %{name}-python3-plugin. + + +%package python2-plugin +Summary: Python 2 plugin for %{name} +License: BSD + +Requires: %{name}-server%{?_isa} = %{version}-%{release} +Requires: %{name}-python-plugin-common = %{version}-%{release} + +# For upgrade path, remove this in Fedora 30. +Provides: %{name}-plugin-python = %{version}-%{release} +Obsoletes: %{name}-plugin-python <= %{version}-%{release} + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-python2 = %{version}-%{release} +Obsoletes: %{name}-plugin-python2 <= %{version}-%{release} + + +%description python2-plugin +This package lets you write Python 2 plugins for %{name}. + + +%if 0%{?have_python3} +%package python3-plugin Summary: Python 3 plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} +License: BSD -%description python-plugin +Requires: %{name}-server%{?_isa} = %{version}-%{release} +Requires: %{name}-python-plugin-common = %{version}-%{release} + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-python3 = %{version}-%{release} +Obsoletes: %{name}-plugin-python3 <= %{version}-%{release} + + +%description python3-plugin This package lets you write Python 3 plugins for %{name}. - - -%if !0%{?rhel} -# In theory this is noarch, but because plugins are placed in _libdir -# which varies across architectures, RPM does not allow this. -%package S3-plugin -Summary: Amazon S3 and Ceph plugin for %{name} -Requires: %{name}-python-plugin%{?_isa} = %{version}-%{release} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -# XXX Should not need to add this. -Requires: python3-boto3 - -%description S3-plugin -This package lets you open disk images stored in Amazon S3 -or Ceph using %{name}. %endif -%package ssh-plugin -Summary: SSH plugin for %{name} +%package ruby-plugin +Summary: Ruby plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} -%description ssh-plugin -This package contains SSH support for %{name}. +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-ruby = %{version}-%{release} +Obsoletes: %{name}-plugin-ruby <= %{version}-%{release} + + +%description ruby-plugin +This package lets you write Ruby plugins for %{name}. + + +%package tar-plugin +Summary: Tar archive plugin for %{name} +License: BSD + +Requires: %{name}-server%{?_isa} = %{version}-%{release} +# XXX This dependency should be autogenerated. +Requires: %{name}-perl-plugin + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-tar = %{version}-%{release} +Obsoletes: %{name}-plugin-tar <= %{version}-%{release} + + +%description tar-plugin +This package is a tar archive plugin for %{name}. -%if !0%{?rhel} %package tcl-plugin Summary: Tcl plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-tcl = %{version}-%{release} +Obsoletes: %{name}-plugin-tcl <= %{version}-%{release} + + %description tcl-plugin This package lets you write Tcl plugins for %{name}. -%endif -%package tmpdisk-plugin -Summary: Remote temporary filesystem disk plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -# For mkfs and mke2fs (defaults). -Requires: util-linux, e2fsprogs -# For other filesystems. -Suggests: xfsprogs -%if !0%{?rhel} -Suggests: ntfsprogs, dosfstools -%endif - -%description tmpdisk-plugin -This package is a remote temporary filesystem disk plugin for %{name}. - - -%if !0%{?rhel} -%package torrent-plugin -Summary: BitTorrent plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description torrent-plugin -This package is a BitTorrent plugin for %{name}. -%endif - - -%ifarch x86_64 +%ifarch %{ix86} x86_64 %package vddk-plugin Summary: VMware VDDK plugin for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} -# https://bugzilla.redhat.com/show_bug.cgi?id=1931818 -Requires: libxcrypt-compat%{?_isa} + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-vddk = %{version}-%{release} +Obsoletes: %{name}-plugin-vddk <= %{version}-%{release} + %description vddk-plugin This package is a plugin for %{name} which connects to @@ -582,520 +493,229 @@ VMware VDDK for accessing VMware disks and servers. %endif -%if !0%{?rhel} -%package vram-plugin -Summary: use GPU Video RAM as a network block device -Requires: %{name}-server%{?_isa} = %{version}-%{release} -Recommends: %{_bindir}/clinfo +%package xz-plugin +Summary: XZ file serving plugin for %{name} +License: BSD -%description vram-plugin -This package contains GPU Video RAM support for %{name}. -%endif +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +# For upgrade path, remove this in Fedora 31. +Provides: %{name}-plugin-xz = %{version}-%{release} +Obsoletes: %{name}-plugin-xz <= %{version}-%{release} + + +%description xz-plugin +This package is a xz file serving plugin for %{name}. + +This is deprecated and will be removed in %{name} 1.12. You should +start to use %{name}-xz-filter instead. %package basic-filters Summary: Basic filters for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} + %description basic-filters -This package contains filters for %{name} which only depend on simple -C libraries: glibc, gnutls, zlib and zstd. Other filters for nbdkit -with more complex dependencies are packaged separately. +This package contains some basic filters for %{name} which have only +trivial dependencies. nbdkit-blocksize-filter Adjust block size of requests sent to plugins. -nbdkit-blocksize-policy-filter Set block size constraints and policy. - nbdkit-cache-filter Server-side cache. -nbdkit-checkwrite-filter Check writes match contents of plugin. - -nbdkit-count-filter Count bytes read, written, zeroed and trimmed. - nbdkit-cow-filter Copy-on-write overlay for read-only plugins. -nbdkit-ddrescue-filter Filter for serving from ddrescue dump. - nbdkit-delay-filter Inject read and write delays. nbdkit-error-filter Inject errors. -nbdkit-evil-filter Add random data corruption to reads. - -nbdkit-exitlast-filter Exit on last client connection. - -nbdkit-exitwhen-filter Exit gracefully when an event occurs. - -nbdkit-exportname-filter Adjust export names between client and plugin. - -nbdkit-extentlist-filter Place extent list over a plugin. - nbdkit-fua-filter Modify flush behaviour in plugins. -nbdkit-gzip-filter Decompress a .gz file - -nbdkit-indexed-gzip-filter Access .gz contents efficiently. - -nbdkit-ip-filter Filter clients by IP address. - -nbdkit-limit-filter Limit nr clients that can connect concurrently. - nbdkit-log-filter Log all transactions to a file. -nbdkit-luks-filter Read and write LUKS-encrypted disks. - -nbdkit-map-filter Remap disk blocks. - -nbdkit-multi-conn-filter Enable, emulate or disable multi-conn. - -nbdkit-nocache-filter Disable cache requests in the underlying plugin. - -nbdkit-noextents-filter Disable extents in the underlying plugin. - -nbdkit-nofilter-filter Passthrough filter. - -nbdkit-noparallel-filter Serialize requests to the underlying plugin. - nbdkit-nozero-filter Adjust handling of zero requests by plugins. nbdkit-offset-filter Serve an offset and range. -nbdkit-openonce-filter Open the underlying plugin once. - nbdkit-partition-filter Serve a single partition. -nbdkit-pause-filter Pause NBD requests. - -nbdkit-protect-filter Write-protect parts of a plugin. - -%if !0%{?rhel} -nbdkit-qcow2dec-filter Decode qcow2 files. - -%endif -nbdkit-rate-filter Limit bandwidth by connection or server. - -nbdkit-readahead-filter Prefetch data when reading sequentially. - -nbdkit-readonly-filter Switch a plugin between read-only and writable. - -nbdkit-retry-filter Reopen connection on error. - -nbdkit-retry-request-filter Retry single requests on error. - -nbdkit-rotational-filter Set if a plugin is rotational or not. - -nbdkit-scan-filter Prefetch data ahead of sequential reads. - -nbdkit-spinning-filter Add seek delays to simulate a spinning hard disk. - -nbdkit-swab-filter Filter for swapping byte order. - -nbdkit-time-limit-filter Set an overall time limit for each connection. - -nbdkit-tls-fallback-filter TLS protection filter. - nbdkit-truncate-filter Truncate, expand, round up or round down size. -%package bzip2-filter -Summary: BZip2 filter for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description bzip2-filter -This package is a bzip2 filter for %{name}. - - -%if !0%{?rhel} -%package ext2-filter -Summary: ext2, ext3 and ext4 filesystem support for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description ext2-filter -This package contains ext2, ext3 and ext4 filesystem support for -%{name}. -%endif - - -%package stats-filter -Summary: Statistics filter for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description stats-filter -Display statistics about operations. - - -%package tar-filter -Summary: Tar archive filter for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} -Requires: tar - -%description tar-filter -This package is a tar archive filter for %{name}. - - %package xz-filter -Summary: XZ and lzip filters for %{name} +Summary: XZ filter for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} + %description xz-filter -This package contains the xz and lzip filters for %{name}. +This package is the xz filter for %{name}. %package devel Summary: Development files and documentation for %{name} +License: BSD + Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: pkgconfig + %description devel This package contains development files and documentation for %{name}. Install this package if you want to develop plugins for %{name}. -%package srpm-macros -Summary: RPM Provides rules for %{name} plugins and filters -BuildArch: noarch - -%description srpm-macros -This package contains RPM rules that create the automatic Provides: -for %{name} plugins and filters found in the plugins directory. - - %package bash-completion Summary: Bash tab-completion for %{name} BuildArch: noarch Requires: bash-completion >= 2.0 Requires: %{name}-server = %{version}-%{release} + %description bash-completion Install this package if you want intelligent bash tab-completion for %{name}. -%if 0%{?with_selinux} -%package selinux -Summary: %{name} SELinux policy -BuildArch: noarch -Requires: selinux-policy-%{selinuxtype} -Requires(post):selinux-policy-%{selinuxtype} -BuildRequires: selinux-policy-devel -%{?selinux_requires} - -%description selinux -%{name} SELinux policy module. -%endif - - -%if 0%{?have_mingw} -%package -n mingw32-%{name} -Summary: nbdkit binary, plugins, filters, development files for Windows -BuildArch: noarch -Requires: mingw32-filesystem -Requires: pkgconfig - -%description -n mingw32-%{name} -NBD is a protocol for accessing block devices (hard disks and -disk-like things) over the network. - -nbdkit is a toolkit for creating NBD servers. - -This package contains the nbdkit binary, plugins, filters and -development kit for 32 bit versions of Windows. - - -%package -n mingw64-%{name} -Summary: nbdkit binary, plugins, filters, development files for Windows -BuildArch: noarch -Requires: mingw64-filesystem -Requires: pkgconfig - -%description -n mingw64-%{name} -NBD is a protocol for accessing block devices (hard disks and -disk-like things) over the network. - -nbdkit is a toolkit for creating NBD servers. - -This package contains the nbdkit binary, plugins, filters and -development kit for 64 bit versions of Windows. - - -%{?mingw_debug_package} -%endif - - %prep %if 0%{verify_tarball_signature} -%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' +tmphome="$(mktemp -d)" +gpgv2 --homedir "$tmphome" --keyring %{SOURCE2} %{SOURCE1} %{SOURCE0} %endif -%autosetup -p1 -S git +%autosetup -p1 +%if 0%{patches_touch_autotools} autoreconf -i +%endif + +%ifnarch %{complete_test_arches} +# Simplify the test suite so it doesn't require qemu. +sed -i -e '/^if HAVE_LIBGUESTFS/,/^endif HAVE_LIBGUESTFS/d' tests/Makefile.am +sed -i -e '/^if HAVE_GUESTFISH/,/^endif HAVE_GUESTFISH/d' tests/Makefile.am +autoreconf -i +%endif %build -mkdir build_native -pushd build_native -%global _configure ../configure +# Build for Python 3 in a separate subdirectory. Upstream does not +# support srcdir!=builddir so copy the whole source. +copy="$(mktemp -d)" +cp -a . "$copy" +mv "$copy" python3 -# Golang bindings are not enabled in the build since they don't -# need to be. Most people would use them by copying the upstream -# package into their vendor/ directory. -export PYTHON=%{__python3} %configure \ --disable-static \ - --with-extra='%{name}-%{version}-%{release}' \ - --with-tls-priority=@NBDKIT,SYSTEM \ - --with-bash-completions \ - --with-curl \ - --with-gnutls \ - --with-liblzma \ - --with-libnbd \ - --with-manpages \ - --with-selinux \ - --with-ssh \ - --with-zlib \ -%if !0%{?rhel} - --with-zlib-ng \ -%else - --without-zlib-ng \ -%endif - --enable-linuxdisk \ - --enable-python \ - --disable-golang \ - --disable-rust \ - --disable-valgrind \ -%if !0%{?rhel} && 0%{?have_ocaml} - --enable-ocaml \ -%else - --disable-ocaml \ -%endif -%if !0%{?rhel} - --enable-lua \ - --enable-perl \ - --enable-tcl \ - --enable-torrent \ - --enable-vram \ - --with-ext2 \ - --with-iso \ - --with-libvirt \ -%else - --disable-lua \ - --disable-perl \ - --disable-tcl \ - --disable-torrent \ - --disable-vram \ - --without-ext2 \ - --without-iso \ - --without-libvirt \ -%endif -%if 0%{?have_blkio} - --with-libblkio \ -%else - --without-libblkio \ -%endif -%ifarch x86_64 - --enable-vddk \ -%else - --disable-vddk \ -%endif -%if !0%{?rhel} && 0%{?have_libguestfs} +%if 0%{?have_libguestfs} --with-libguestfs \ %else --without-libguestfs \ %endif -%ifarch !0%{?rhel} && 0%{?have_libguestfs} && %{complete_test_arches} - --enable-libguestfs-tests \ +%if 0%{?have_libvirt} + --with-libvirt \ %else - --disable-libguestfs-tests \ + --without-libvirt \ %endif - %{nil} + --with-tls-priority=@NBDKIT,SYSTEM +make %{?_smp_mflags} +%if 0%{?have_python3} +pushd python3 +export PYTHON=%{_bindir}/python3 +%configure \ + --disable-static \ + --disable-lua \ + --disable-perl \ + --disable-ocaml \ + --disable-ruby \ + --disable-tcl \ + --without-curl \ + --without-ext2 \ + --without-libvirt \ + --without-liblzma \ + --without-zlib # Verify that it picked the correct version of Python # to avoid RHBZ#1404631 happening again silently. grep '^PYTHON_VERSION = 3' Makefile - -%make_build - -%if 0%{?with_selinux} -# SELinux policy (originally from selinux-policy-contrib) -# this policy module will override the production module -mkdir selinux -cp -p %{SOURCE6} selinux/ -cp -p %{SOURCE7} selinux/ -cp -p %{SOURCE8} selinux/ - -make -f %{_datadir}/selinux/devel/Makefile %{modulename}.pp -bzip2 -9 %{modulename}.pp -%endif - +make %{?_smp_mflags} +unset PYTHON popd - -%if 0%{?have_mingw} -%mingw_configure \ - --disable-static \ - --enable-shared \ - --with-extra='%{name}-%{version}-%{release}' \ - --with-tls-priority=@NBDKIT,SYSTEM \ - --disable-golang \ - --disable-libguestfs-tests \ - --disable-linuxdisk \ - --disable-lua \ - --disable-ocaml \ - --disable-perl \ - --disable-python \ - --disable-rust \ - --disable-tcl \ - --disable-torrent \ - --disable-valgrind \ - --disable-vddk \ - --disable-vram \ - --without-bash-completions \ - --without-curl \ - --without-ext2 \ - --with-gnutls \ - --without-iso \ - --without-libblkio \ - --without-libguestfs \ - --without-libnbd \ - --without-libvirt \ - --with-liblzma \ - --without-manpages \ - --without-selinux \ - --without-ssh \ - --with-zlib \ - %{nil} - -%mingw_make %{?_smp_mflags} %endif %install -pushd build_native +# Install for Python 2 and Python 3 separately. +# We do the Python 3 install first since that build is +# incomplete. +%if 0%{?have_python3} +pushd python3 %make_install +popd + +pushd $RPM_BUILD_ROOT%{_libdir}/nbdkit/plugins/ +mv nbdkit-python-plugin.so nbdkit-python3-plugin.so +popd +%endif + +%make_install + +pushd $RPM_BUILD_ROOT%{_libdir}/nbdkit/plugins/ +mv nbdkit-python-plugin.so nbdkit-python2-plugin.so +# For backwards compatibility, "the" python plugin is Python 2. +# Probably we will change this in future if Fedora switches +# exclusively to Python 3. +ln -s nbdkit-python2-plugin.so nbdkit-python-plugin.so +popd # Delete libtool crap. find $RPM_BUILD_ROOT -name '*.la' -delete -# If cargo happens to be installed on the machine then the -# rust plugin is built. Delete it if this happens. -rm -f $RPM_BUILD_ROOT%{_mandir}/man3/nbdkit-rust-plugin.3* - -%if 0%{?rhel} -# In RHEL, remove some plugins and filters we cannot --disable. -for f in cc cdi ; do - rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin.so - rm -f $RPM_BUILD_ROOT%{_mandir}/man?/nbdkit-$f-plugin.* -done -for f in gcs S3 ; do - rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin - rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-$f-plugin.1* -done -rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/filters/nbdkit-qcow2dec-filter.so -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-qcow2dec-filter.1* -%endif - -# Install RPM dependency generator. -mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/ -install -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/ -install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_rpmconfigdir}/ - -%if 0%{?with_selinux} -install -D -m 0644 %{modulename}.pp.bz2 $RPM_BUILD_ROOT%{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2 -install -D -p -m 0644 selinux/%{modulename}.if $RPM_BUILD_ROOT%{_datadir}/selinux/devel/include/distributed/%{modulename}.if -%endif -popd - -%if 0%{?have_mingw} -%mingw_make_install - -# Remove .la files -rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/*.la -rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/*.la - -# The .def files aren't interesting for other binaries -rm -f $RPM_BUILD_ROOT%{mingw32_bindir}/*.def -rm -f $RPM_BUILD_ROOT%{mingw64_bindir}/*.def - -# Remove man pages which duplicate stuff in Fedora already. -rm -rf $RPM_BUILD_ROOT%{mingw32_mandir} -rm -rf $RPM_BUILD_ROOT%{mingw64_mandir} - -%mingw_debug_install_post +# Delete the VDDK plugin on !x86 architectures since it is not +# applicable there. +%ifnarch %{ix86} x86_64 +rm $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-vddk-plugin.so +rm $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-vddk-plugin.1* %endif %check -%ifnarch %{broken_test_arches} -pushd build_native -function skip_test () -{ - for f in "$@"; do - rm -f "$f" - echo 'exit 77' > "$f" - chmod +x "$f" - done -} - # Workaround for broken libvirt (RHBZ#1138604). mkdir -p $HOME/.cache/libvirt -# tests/test-captive.sh is racy especially on s390x. We need to -# rethink this test upstream. -skip_test tests/test-captive.sh - -%ifarch s390x -# Temporarily kill tests/test-cache-max-size.sh since it fails -# sometimes on s390x for unclear reasons. -skip_test tests/test-cache-max-size.sh -%endif - -# Temporarily kill test-nbd-tls.sh and test-nbd-tls-psk.sh -# https://www.redhat.com/archives/libguestfs/2020-March/msg00191.html -skip_test tests/test-nbd-tls.sh tests/test-nbd-tls-psk.sh - -# This test fails on RHEL 9 aarch64 & ppc64le with the error: -# nbdkit: error: allocator=malloc: mlock: Cannot allocate memory -# It could be the mlock limit on the builder is too low. -# https://bugzilla.redhat.com/show_bug.cgi?id=2044432 -%if 0%{?rhel} -%ifarch aarch64 %{power64} -skip_test tests/test-memory-allocator-malloc-mlock.sh -%endif -%endif - # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 -%make_build check || { +# On Fedora 28, qemu-io < 3.0.0 does not exit with an error on +# failure, causing these tests to fail. +rm tests/test-error10.sh tests/test-error100.sh +touch tests/test-error10.sh tests/test-error100.sh +chmod +x tests/test-error10.sh tests/test-error100.sh + +make check -j1 || { + cat tests/test-suite.log + exit 1 + } + +%ifarch %{complete_test_arches} +%if 0%{?have_libguestfs} +%if 0%{?have_python3} +pushd python3 +make check -j1 -C tests TESTS=test-python || { cat tests/test-suite.log exit 1 } popd %endif - - -%if 0%{?have_ocaml} -%ldconfig_scriptlets plugin-ocaml +%endif %endif -%if 0%{?with_selinux} -# SELinux contexts are saved so that only affected files can be -# relabeled after the policy module installation -%pre selinux -%selinux_relabel_pre -s %{selinuxtype} - -%post selinux -%selinux_modules_install -s %{selinuxtype} %{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2 - -%postun selinux -if [ $1 -eq 0 ]; then - %selinux_modules_uninstall -s %{selinuxtype} %{modulename} -fi - -%posttrans selinux -%selinux_relabel_post -s %{selinuxtype} -# if with_selinux +%ifarch %{ocaml_native_compiler} +%ldconfig_scriptlets plugin-ocaml %endif @@ -1104,175 +724,118 @@ fi %files server -%doc README.md +%doc README %license LICENSE %{_sbindir}/nbdkit %dir %{_libdir}/%{name} %dir %{_libdir}/%{name}/plugins -%{_libdir}/%{name}/plugins/nbdkit-null-plugin.so %dir %{_libdir}/%{name}/filters %{_mandir}/man1/nbdkit.1* %{_mandir}/man1/nbdkit-captive.1* -%{_mandir}/man1/nbdkit-client.1* %{_mandir}/man1/nbdkit-loop.1* -%{_mandir}/man1/nbdkit-null-plugin.1* %{_mandir}/man1/nbdkit-probing.1* %{_mandir}/man1/nbdkit-protocol.1* %{_mandir}/man1/nbdkit-service.1* -%{_mandir}/man1/nbdkit-security.1* %{_mandir}/man1/nbdkit-tls.1* %files basic-plugins -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-data-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-eval-plugin.so %{_libdir}/%{name}/plugins/nbdkit-file-plugin.so %{_libdir}/%{name}/plugins/nbdkit-floppy-plugin.so %{_libdir}/%{name}/plugins/nbdkit-full-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-info-plugin.so %{_libdir}/%{name}/plugins/nbdkit-memory-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-ones-plugin.so +%{_libdir}/%{name}/plugins/nbdkit-nbd-plugin.so +%{_libdir}/%{name}/plugins/nbdkit-null-plugin.so %{_libdir}/%{name}/plugins/nbdkit-partitioning-plugin.so %{_libdir}/%{name}/plugins/nbdkit-pattern-plugin.so %{_libdir}/%{name}/plugins/nbdkit-random-plugin.so %{_libdir}/%{name}/plugins/nbdkit-sh-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-sparse-random-plugin.so %{_libdir}/%{name}/plugins/nbdkit-split-plugin.so +%{_libdir}/%{name}/plugins/nbdkit-streaming-plugin.so %{_libdir}/%{name}/plugins/nbdkit-zero-plugin.so %{_mandir}/man1/nbdkit-data-plugin.1* -%{_mandir}/man1/nbdkit-eval-plugin.1* %{_mandir}/man1/nbdkit-file-plugin.1* %{_mandir}/man1/nbdkit-floppy-plugin.1* %{_mandir}/man1/nbdkit-full-plugin.1* -%{_mandir}/man1/nbdkit-info-plugin.1* %{_mandir}/man1/nbdkit-memory-plugin.1* -%{_mandir}/man1/nbdkit-ones-plugin.1* +%{_mandir}/man1/nbdkit-nbd-plugin.1* +%{_mandir}/man1/nbdkit-null-plugin.1* %{_mandir}/man1/nbdkit-partitioning-plugin.1* %{_mandir}/man1/nbdkit-pattern-plugin.1* %{_mandir}/man1/nbdkit-random-plugin.1* %{_mandir}/man3/nbdkit-sh-plugin.3* -%{_mandir}/man1/nbdkit-sparse-random-plugin.1* %{_mandir}/man1/nbdkit-split-plugin.1* +%{_mandir}/man1/nbdkit-streaming-plugin.1* %{_mandir}/man1/nbdkit-zero-plugin.1* %files example-plugins -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-example*-plugin.so -%if !0%{?rhel} %{_libdir}/%{name}/plugins/nbdkit-example4-plugin -%endif %{_mandir}/man1/nbdkit-example*-plugin.1* -%if 0%{?have_blkio} -%files blkio-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-blkio-plugin.so -%{_mandir}/man1/nbdkit-blkio-plugin.1* -%endif - - -%if !0%{?rhel} -%files cc-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-cc-plugin.so -%{_mandir}/man3/nbdkit-cc-plugin.3* -%endif - - -%if !0%{?rhel} -%files cdi-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-cdi-plugin.so -%{_mandir}/man1/nbdkit-cdi-plugin.1* -%endif - - %files curl-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-curl-plugin.so %{_mandir}/man1/nbdkit-curl-plugin.1* -%if !0%{?rhel} -%files gcs-plugin -%doc README.md +%files ext2-plugin +%doc README %license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-gcs-plugin -%{_mandir}/man1/nbdkit-gcs-plugin.1* -%endif +%{_libdir}/%{name}/plugins/nbdkit-ext2-plugin.so +%{_mandir}/man1/nbdkit-ext2-plugin.1* -%if !0%{?rhel} && 0%{?have_libguestfs} +%if 0%{?have_libguestfs} %files guestfs-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-guestfs-plugin.so %{_mandir}/man1/nbdkit-guestfs-plugin.1* %endif -%if !0%{?rhel} +%files gzip-plugin +%doc README +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-gzip-plugin.so +%{_mandir}/man1/nbdkit-gzip-plugin.1* + + %files iso-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-iso-plugin.so %{_mandir}/man1/nbdkit-iso-plugin.1* -%endif -%if !0%{?rhel} +%if 0%{?have_libvirt} %files libvirt-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-libvirt-plugin.so %{_mandir}/man1/nbdkit-libvirt-plugin.1* %endif -%files linuxdisk-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-linuxdisk-plugin.so -%{_mandir}/man1/nbdkit-linuxdisk-plugin.1* - - -%if !0%{?rhel} %files lua-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-lua-plugin.so %{_mandir}/man3/nbdkit-lua-plugin.3* -%endif -%files nbd-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-nbd-plugin.so -%{_mandir}/man1/nbdkit-nbd-plugin.1* - - -%if !0%{?rhel} -%files nfs-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-nfs-plugin.so -%{_mandir}/man1/nbdkit-nfs-plugin.1* -%endif - - -%if !0%{?rhel} && 0%{?have_ocaml} +%ifarch %{ocaml_native_compiler} %files ocaml-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/libnbdkitocaml.so.* @@ -1280,1632 +843,173 @@ fi %{_libdir}/libnbdkitocaml.so %{_libdir}/ocaml/NBDKit.* %{_mandir}/man3/nbdkit-ocaml-plugin.3* -%{_mandir}/man3/NBDKit.3* %endif -%files ondemand-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-ondemand-plugin.so -%{_mandir}/man1/nbdkit-ondemand-plugin.1* - - -%if !0%{?rhel} %files perl-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-perl-plugin.so %{_mandir}/man3/nbdkit-perl-plugin.3* -%endif -%files python-plugin -%doc README.md +%files python-plugin-common +%doc README %license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-python-plugin.so %{_mandir}/man3/nbdkit-python-plugin.3* -%if !0%{?rhel} -%files S3-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-S3-plugin -%{_mandir}/man1/nbdkit-S3-plugin.1* +%files python2-plugin +%{_libdir}/%{name}/plugins/nbdkit-python-plugin.so +%{_libdir}/%{name}/plugins/nbdkit-python2-plugin.so + + +%if 0%{?have_python3} +%files python3-plugin +%{_libdir}/%{name}/plugins/nbdkit-python3-plugin.so %endif -%files ssh-plugin -%doc README.md +%files ruby-plugin +%doc README %license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-ssh-plugin.so -%{_mandir}/man1/nbdkit-ssh-plugin.1* +%{_libdir}/%{name}/plugins/nbdkit-ruby-plugin.so +%{_mandir}/man3/nbdkit-ruby-plugin.3* + + +%files tar-plugin +%doc README +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-tar-plugin +%{_mandir}/man1/nbdkit-tar-plugin.1* -%if !0%{?rhel} %files tcl-plugin -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-tcl-plugin.so %{_mandir}/man3/nbdkit-tcl-plugin.3* -%endif -%files tmpdisk-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-tmpdisk-plugin.so -%{_mandir}/man1/nbdkit-tmpdisk-plugin.1* - - -%if !0%{?rhel} -%files torrent-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-torrent-plugin.so -%{_mandir}/man1/nbdkit-torrent-plugin.1* -%endif - - -%ifarch x86_64 +%ifarch %{ix86} x86_64 %files vddk-plugin -%doc README.md plugins/vddk/README.VDDK +%doc README %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-vddk-plugin.so %{_mandir}/man1/nbdkit-vddk-plugin.1* %endif -%if !0%{?rhel} -%files vram-plugin -%doc README.md +%files xz-plugin +%doc README %license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-vram-plugin.so -%{_mandir}/man1/nbdkit-vram-plugin.1* -%endif +%{_libdir}/%{name}/plugins/nbdkit-xz-plugin.so +%{_mandir}/man1/nbdkit-xz-plugin.1* %files basic-filters -%doc README.md +%doc README %license LICENSE %{_libdir}/%{name}/filters/nbdkit-blocksize-filter.so -%{_libdir}/%{name}/filters/nbdkit-blocksize-policy-filter.so %{_libdir}/%{name}/filters/nbdkit-cache-filter.so -%{_libdir}/%{name}/filters/nbdkit-checkwrite-filter.so -%{_libdir}/%{name}/filters/nbdkit-count-filter.so %{_libdir}/%{name}/filters/nbdkit-cow-filter.so -%{_libdir}/%{name}/filters/nbdkit-ddrescue-filter.so %{_libdir}/%{name}/filters/nbdkit-delay-filter.so %{_libdir}/%{name}/filters/nbdkit-error-filter.so -%{_libdir}/%{name}/filters/nbdkit-evil-filter.so -%{_libdir}/%{name}/filters/nbdkit-exitlast-filter.so -%{_libdir}/%{name}/filters/nbdkit-exitwhen-filter.so -%{_libdir}/%{name}/filters/nbdkit-exportname-filter.so -%{_libdir}/%{name}/filters/nbdkit-extentlist-filter.so %{_libdir}/%{name}/filters/nbdkit-fua-filter.so -%{_libdir}/%{name}/filters/nbdkit-gzip-filter.so -%{_libdir}/%{name}/filters/nbdkit-indexed-gzip-filter.so -%{_libdir}/%{name}/filters/nbdkit-ip-filter.so -%{_libdir}/%{name}/filters/nbdkit-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-log-filter.so -%{_libdir}/%{name}/filters/nbdkit-luks-filter.so -%{_libdir}/%{name}/filters/nbdkit-map-filter.so -%{_libdir}/%{name}/filters/nbdkit-multi-conn-filter.so -%{_libdir}/%{name}/filters/nbdkit-nocache-filter.so -%{_libdir}/%{name}/filters/nbdkit-noextents-filter.so -%{_libdir}/%{name}/filters/nbdkit-nofilter-filter.so -%{_libdir}/%{name}/filters/nbdkit-noparallel-filter.so %{_libdir}/%{name}/filters/nbdkit-nozero-filter.so %{_libdir}/%{name}/filters/nbdkit-offset-filter.so -%{_libdir}/%{name}/filters/nbdkit-openonce-filter.so %{_libdir}/%{name}/filters/nbdkit-partition-filter.so -%{_libdir}/%{name}/filters/nbdkit-pause-filter.so -%{_libdir}/%{name}/filters/nbdkit-protect-filter.so -%if !0%{?rhel} -%{_libdir}/%{name}/filters/nbdkit-qcow2dec-filter.so -%endif -%{_libdir}/%{name}/filters/nbdkit-rate-filter.so -%{_libdir}/%{name}/filters/nbdkit-readahead-filter.so -%{_libdir}/%{name}/filters/nbdkit-readonly-filter.so -%{_libdir}/%{name}/filters/nbdkit-retry-filter.so -%{_libdir}/%{name}/filters/nbdkit-retry-request-filter.so -%{_libdir}/%{name}/filters/nbdkit-rotational-filter.so -%{_libdir}/%{name}/filters/nbdkit-scan-filter.so -%{_libdir}/%{name}/filters/nbdkit-spinning-filter.so -%{_libdir}/%{name}/filters/nbdkit-swab-filter.so -%{_libdir}/%{name}/filters/nbdkit-time-limit-filter.so -%{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so %{_libdir}/%{name}/filters/nbdkit-truncate-filter.so %{_mandir}/man1/nbdkit-blocksize-filter.1* -%{_mandir}/man1/nbdkit-blocksize-policy-filter.1* %{_mandir}/man1/nbdkit-cache-filter.1* -%{_mandir}/man1/nbdkit-checkwrite-filter.1* -%{_mandir}/man1/nbdkit-count-filter.1* %{_mandir}/man1/nbdkit-cow-filter.1* -%{_mandir}/man1/nbdkit-ddrescue-filter.1* %{_mandir}/man1/nbdkit-delay-filter.1* %{_mandir}/man1/nbdkit-error-filter.1* -%{_mandir}/man1/nbdkit-evil-filter.1* -%{_mandir}/man1/nbdkit-exitlast-filter.1* -%{_mandir}/man1/nbdkit-exitwhen-filter.1* -%{_mandir}/man1/nbdkit-exportname-filter.1* -%{_mandir}/man1/nbdkit-extentlist-filter.1* %{_mandir}/man1/nbdkit-fua-filter.1* -%{_mandir}/man1/nbdkit-gzip-filter.1* -%{_mandir}/man1/nbdkit-indexed-gzip-filter.1* -%{_mandir}/man1/nbdkit-ip-filter.1* -%{_mandir}/man1/nbdkit-limit-filter.1* %{_mandir}/man1/nbdkit-log-filter.1* -%{_mandir}/man1/nbdkit-luks-filter.1* -%{_mandir}/man1/nbdkit-map-filter.1* -%{_mandir}/man1/nbdkit-multi-conn-filter.1* -%{_mandir}/man1/nbdkit-nocache-filter.1* -%{_mandir}/man1/nbdkit-noextents-filter.1* -%{_mandir}/man1/nbdkit-nofilter-filter.1* -%{_mandir}/man1/nbdkit-noparallel-filter.1* %{_mandir}/man1/nbdkit-nozero-filter.1* %{_mandir}/man1/nbdkit-offset-filter.1* -%{_mandir}/man1/nbdkit-openonce-filter.1* %{_mandir}/man1/nbdkit-partition-filter.1* -%{_mandir}/man1/nbdkit-pause-filter.1* -%{_mandir}/man1/nbdkit-protect-filter.1* -%if !0%{?rhel} -%{_mandir}/man1/nbdkit-qcow2dec-filter.1* -%endif -%{_mandir}/man1/nbdkit-rate-filter.1* -%{_mandir}/man1/nbdkit-readahead-filter.1* -%{_mandir}/man1/nbdkit-readonly-filter.1* -%{_mandir}/man1/nbdkit-retry-filter.1* -%{_mandir}/man1/nbdkit-retry-request-filter.1* -%{_mandir}/man1/nbdkit-rotational-filter.1* -%{_mandir}/man1/nbdkit-scan-filter.1* -%{_mandir}/man1/nbdkit-spinning-filter.1* -%{_mandir}/man1/nbdkit-swab-filter.1* -%{_mandir}/man1/nbdkit-time-limit-filter.1* -%{_mandir}/man1/nbdkit-tls-fallback-filter.1* %{_mandir}/man1/nbdkit-truncate-filter.1* -%files bzip2-filter -%doc README.md -%license LICENSE -%{_libdir}/%{name}/filters/nbdkit-bzip2-filter.so -%{_mandir}/man1/nbdkit-bzip2-filter.1* - - -%if !0%{?rhel} -%files ext2-filter -%doc README.md -%license LICENSE -%{_libdir}/%{name}/filters/nbdkit-ext2-filter.so -%{_mandir}/man1/nbdkit-ext2-filter.1* -%endif - - -%files stats-filter -%doc README.md -%license LICENSE -%{_libdir}/%{name}/filters/nbdkit-stats-filter.so -%{_mandir}/man1/nbdkit-stats-filter.1* - - -%files tar-filter -%doc README.md -%license LICENSE -%{_libdir}/%{name}/filters/nbdkit-tar-filter.so -%{_mandir}/man1/nbdkit-tar-filter.1* - - %files xz-filter -%doc README.md +%doc README %license LICENSE -%{_libdir}/%{name}/filters/nbdkit-lzip-filter.so %{_libdir}/%{name}/filters/nbdkit-xz-filter.so -%{_mandir}/man1/nbdkit-lzip-filter.1* %{_mandir}/man1/nbdkit-xz-filter.1* %files devel -%doc BENCHMARKING OTHER_PLUGINS README.md SECURITY.md TODO.md +%doc OTHER_PLUGINS README TODO %license LICENSE # Include the source of the example plugins in the documentation. %doc plugins/example*/*.c -%if !0%{?rhel} -%doc build_native/plugins/example4/nbdkit-example4-plugin +%doc plugins/example4/nbdkit-example4-plugin %doc plugins/lua/example.lua -%endif -%if !0%{?rhel} && 0%{?have_ocaml} -%doc plugins/ocaml/example.ml -%endif -%if !0%{?rhel} %doc plugins/perl/example.pl -%endif -%doc plugins/python/examples/*.py -%doc plugins/sh/examples/*.sh -%if !0%{?rhel} +%doc plugins/python/example.py +%doc plugins/ruby/example.rb +%doc plugins/sh/example.sh %doc plugins/tcl/example.tcl -%endif %{_includedir}/nbdkit-common.h %{_includedir}/nbdkit-filter.h %{_includedir}/nbdkit-plugin.h -%{_includedir}/nbdkit-version.h -%{_includedir}/nbd-protocol.h %{_mandir}/man3/nbdkit-filter.3* %{_mandir}/man3/nbdkit-plugin.3* -%{_mandir}/man3/nbdkit_*.3* -%{_mandir}/man1/nbdkit-release-notes-1.*.1* -%{_mandir}/man3/nbdkit-tracing.3* %{_libdir}/pkgconfig/nbdkit.pc -%files srpm-macros -%license LICENSE -%{_rpmconfigdir}/fileattrs/nbdkit.attr -%{_rpmconfigdir}/nbdkit-find-provides - - %files bash-completion %license LICENSE -%if 0%{?fedora} || 0%{?rhel} >= 11 -%dir %{bash_completions_dir} -%{bash_completions_dir}/nbdkit -%else %dir %{_datadir}/bash-completion/completions %{_datadir}/bash-completion/completions/nbdkit -%endif - - -%if 0%{?with_selinux} -%files selinux -%{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.* -%{_datadir}/selinux/devel/include/distributed/%{modulename}.if -%ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{modulename} -%endif - - -%if 0%{?have_mingw} -%files -n mingw32-%{name} -%license LICENSE -%{mingw32_sbindir}/nbdkit.exe -%{mingw32_libdir}/%{name}/ -%{mingw32_libdir}/libnbdkit.a -%{mingw32_libdir}/pkgconfig/%{name}.pc -%{mingw32_includedir}/*.h - - -%files -n mingw64-%{name} -%license LICENSE -%{mingw64_sbindir}/nbdkit.exe -%{mingw64_libdir}/%{name}/ -%{mingw64_libdir}/libnbdkit.a -%{mingw64_libdir}/pkgconfig/%{name}.pc -%{mingw64_includedir}/*.h -%endif %changelog -* Fri Jan 02 2026 Richard W.M. Jones - 1.47.1-1 -- New upstream development version 1.47.1 +* Wed Jan 30 2019 Richard W.M. Jones - 1.10.3-1 +- New upstream version 1.10.3. -* Sat Dec 20 2025 Richard W.M. Jones - 1.46.0-1 -- New upstream stable version 1.46.0 +* Mon Jan 28 2019 Richard W.M. Jones - 1.10.2-1 +- New upstream version 1.10.2. -* Thu Dec 18 2025 Richard W.M. Jones - 1.45.17-1 -- New upstream version 1.45.17 - -* Mon Dec 15 2025 Richard W.M. Jones - 1.45.16-1 -- New upstream version 1.45.16 - -* Tue Dec 02 2025 Richard W.M. Jones - 1.45.15-1 -- New upstream version 1.45.15 - -* Fri Nov 14 2025 Richard W.M. Jones - 1.45.13-1 -- New upstream version 1.45.13 - -* Mon Oct 27 2025 Richard W.M. Jones - 1.45.12-1 -- New upstream version 1.45.12 -- Add new nbdkit-vram-plugin - -* Mon Oct 20 2025 Richard W.M. Jones - 1.45.11-1 -- New upstream version 1.45.11 - -* Thu Oct 16 2025 Richard W.M. Jones - 1.45.10-1 -- New upstream version 1.45.10 -- Remove OCaml 5.4.0 fix, which is included upstream. - -* Wed Oct 15 2025 Richard W.M. Jones - 1.45.9-2 -- OCaml 5.4.0 rebuild - -* Fri Oct 3 2025 Richard W.M. Jones - 1.45.9-1 -- New upstream version 1.45.9 -- Reenable the tests on all arches, since we can now handle missing qemu-img - -* Thu Oct 2 2025 Daniel P. Berrangé - 1.45.8-2 -- Stop using QEMU for tests on 32-bit - -* Sat Sep 13 2025 Richard W.M. Jones - 1.45.8-1 -- New upstream version 1.45.8 - -* Tue Aug 26 2025 Richard W.M. Jones - 1.45.7-1 -- New upstream version 1.45.7 - -* Sat Aug 23 2025 Richard W.M. Jones - 1.45.6-1 -- New upstream version 1.45.6 - -* Wed Aug 20 2025 Richard W.M. Jones - 1.45.5-1 -- New upstream version 1.45.5 -- Remove obsolete Obsoletes now this is Fedora 43+. -- Add new nbdkit-indexed-gzip-filter. - -* Mon Aug 11 2025 Richard W.M. Jones - 1.45.4-1 -- New upstream version 1.45.4 - -* Tue Jul 29 2025 Richard W.M. Jones - 1.45.3-1 -- New upstream version 1.45.3 - -* Wed Jul 23 2025 Richard W.M. Jones - 1.45.2-1 -- New upstream version 1.45.2 -- New map filter. - -* Fri Jul 11 2025 Jerry James - 1.45.1-5 -- Rebuild to fix OCaml dependencies - -* Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-4 -- Perl 5.42 re-rebuild updated packages - -* Wed Jul 09 2025 Richard W.M. Jones - 1.45.1-3 -- Remove cacheextents filter (deprecated & removed upstream) - -* Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-2 -- Perl 5.42 re-rebuild updated packages - -* Tue Jul 08 2025 Richard W.M. Jones - 1.45.1-1 -- New upstream development branch 1.45.1 -- New nbdkit-count-filter. - -* Mon Jul 07 2025 Jitka Plesnikova - 1.44.1-2 -- Perl 5.42 rebuild - -* Sat Jul 05 2025 Richard W.M. Jones - 1.44.1-1 -- New upstream stable branch version 1.44.1 -- Contains data integrity fix: "server: Fix .zero fallback path" - -* Tue Jul 01 2025 Richard W.M. Jones - 1.44.0-1 -- New upstream stable branch version 1.44.0 - -* Mon Jun 23 2025 Richard W.M. Jones - 1.43.13-1 -- New upstream development branch version 1.43.13 - -* Sat Jun 14 2025 Richard W.M. Jones - 1.43.12-1 -- New upstream development branch version 1.43.12 - -* Fri Jun 06 2025 Python Maint - 1.43.11-2 -- Rebuilt for Python 3.14 - -* Thu Jun 05 2025 Richard W.M. Jones - 1.43.11-1 -- New upstream development branch version 1.43.11 - -* Mon Jun 02 2025 Richard W.M. Jones - 1.43.10-1 -- New upstream development branch version 1.43.10 - -* Sat May 17 2025 Richard W.M. Jones - 1.43.9-1 -- New upstream development branch version 1.43.9 -- New nbdkit-openonce-filter - -* Mon May 12 2025 Richard W.M. Jones - 1.43.8-1 -- New upstream development branch version 1.43.8 - -* Fri May 09 2025 Richard W.M. Jones - 1.43.7-1 -- New upstream development branch version 1.43.7 - -* Thu May 01 2025 Richard W.M. Jones - 1.43.6-1 -- New upstream development branch version 1.43.6 - -* Thu Apr 10 2025 Richard W.M. Jones - 1.43.5-1 -- New upstream development branch version 1.43.5 -- New subpackage nbdkit-nfs-plugin - -* Wed Apr 02 2025 Richard W.M. Jones - 1.43.4-1 -- New upstream development branch version 1.43.4 - -* Mon Mar 31 2025 Richard W.M. Jones - 1.43.3-1 -- New upstream development branch version 1.43.3 - -* Thu Mar 27 2025 Richard W.M. Jones - 1.43.2-1 -- New upstream development branch version 1.43.2 - -* Wed Mar 26 2025 Tim Landscheidt - 1.43.1-2 -- Fix description for nbdkit-selinux - -* Thu Mar 13 2025 Richard W.M. Jones - 1.43.1-1 -- New upstream development branch version 1.43.1 - -* Mon Mar 03 2025 Richard W.M. Jones - 1.42.1-1 -- New upstream stable branch version 1.42.1 - -* Fri Feb 28 2025 Björn Esser - 1.42.0-3 -- Change Requires: libxcrypt-compat to be archful - -* Mon Feb 24 2025 Richard W.M. Jones - 1.42.0-2 -- Reenable tests - -* Tue Feb 11 2025 Richard W.M. Jones - 1.42.0-1 -- New upstream stable branch version 1.42.0 - -* Sat Feb 01 2025 Björn Esser - 1.41.9-5 -- Add explicit BR: libxcrypt-devel - -* Fri Jan 17 2025 Fedora Release Engineering - 1.41.9-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Sun Jan 12 2025 Zbigniew Jędrzejewski-Szmek - 1.41.9-3 -- Rebuilt for the bin-sbin merge (2nd attempt) - -* Thu Jan 9 2025 Jerry James - 1.41.9-2 -- OCaml 5.3.0 rebuild for Fedora 42 - -* Wed Jan 08 2025 Richard W.M. Jones - 1.41.9-1 -- New upstream development branch version 1.41.9 - -* Mon Oct 14 2024 Richard W.M. Jones - 1.41.8-1 -- New upstream development branch version 1.41.8 - -* Fri Oct 04 2024 Richard W.M. Jones - 1.41.7-1 -- New upstream development branch version 1.41.7 - -* Wed Sep 25 2024 Richard W.M. Jones - 1.41.6-1 -- New upstream development branch version 1.41.6 - -* Tue Sep 24 2024 Yaakov Selkowitz - 1.41.5-2 -- Avoid lzip dependency on RHEL - -* Sun Sep 22 2024 Richard W.M. Jones - 1.41.5-1 -- New upstream development branch version 1.41.5 -- Add lzip filter to the existing nbdkit-xz-filter package -- Reenable MC in mingw build - -* Fri Sep 13 2024 Richard W.M. Jones - 1.41.4-1 -- New upstream development branch version 1.41.4 - -* Thu Sep 12 2024 Richard W.M. Jones - 1.41.3-1 -- New upstream development branch version 1.41.3 -- New nbdkit-time-limit-filter - -* Sun Sep 08 2024 Richard W.M. Jones - 1.41.2-1 -- New upstream development branch version 1.41.2 - -* Sat Aug 24 2024 Richard W.M. Jones - 1.41.1-1 -- New upstream development branch version 1.41.1 - -* Mon Jul 29 2024 Richard W.M. Jones - 1.40.1-1 -- New upstream stable branch version 1.40.1 - -* Sun Jul 21 2024 Richard W.M. Jones - 1.40.0-1 -- New upstream stable branch version 1.40.0 - -* Thu Jul 18 2024 Fedora Release Engineering - 1.39.10-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Sun Jul 14 2024 Richard W.M. Jones - 1.39.10-2 -- New upstream development version 1.39.10 -- Combine nbdkit-gzip-filter with basic filters - -* Sat Jul 13 2024 Zbigniew Jędrzejewski-Szmek - 1.39.9-2 -- Rebuilt for the bin-sbin merge (again) - -* Tue Jul 09 2024 Richard W.M. Jones - 1.39.9-1 -- New upstream development version 1.39.9 - -* Tue Jul 09 2024 Zbigniew Jędrzejewski-Szmek - 1.39.8-2 -- Rebuilt for the bin-sbin merge - -* Thu Jun 27 2024 Richard W.M. Jones - 1.39.8-1 -- New upstream development version 1.39.8 - -* Wed Jun 19 2024 Richard W.M. Jones - 1.39.7-6 -- OCaml 5.2.0 ppc64le fix - -* Wed Jun 12 2024 Jitka Plesnikova - 1.39.7-5 -- Perl 5.40 rebuild - -* Sat Jun 08 2024 Python Maint - 1.39.7-4 -- Rebuilt for Python 3.13 - -* Wed May 29 2024 Richard W.M. Jones - 1.39.7-3 -- OCaml 5.2.0 for Fedora 41 - -* Tue May 28 2024 Richard W.M. Jones - 1.39.7-2 -- New upstream development version 1.39.7 -- Add nbdkit-bzip2-filter subpackage. -- Prefer BR pkgconfig(foo) instead of BR foo-devel. - -* Fri May 17 2024 Adam Williamson - 1.39.6-2 -- Rebuild with fixed SELinux macros - -* Thu May 16 2024 Richard W.M. Jones - 1.39.6-1 -- New upstream development version 1.39.6 - -* Tue May 7 2024 Richard W.M. Jones - 1.39.5-1 -- New upstream development version 1.39.5 - -* Sat Apr 20 2024 Richard W.M. Jones - 1.39.4-1 -- New upstream development version 1.39.4 -- Remove the Ruby plugin. - -* Thu Apr 11 2024 Richard W.M. Jones - 1.39.3-1 -- New upstream development version 1.39.3 - -* Tue Apr 9 2024 Richard W.M. Jones - 1.39.2-1 -- New upstream development version 1.39.2 -- Add new nbdkit_*.3 man pages (plugin developer documentation) - -* Sun Apr 7 2024 Richard W.M. Jones - 1.39.1-1 -- New upstream development version 1.39.1 -- New filters: rotational, spinning - -* Thu Apr 4 2024 Richard W.M. Jones - 1.38.0-1 -- New stable branch version 1.38.0 -- Rebuild autoconf cruft unconditionally. - -* Mon Mar 25 2024 Richard W.M. Jones - 1.37.13-2 -- Use %%{bash_completions_dir} macro - -* Mon Mar 18 2024 Richard W.M. Jones - 1.37.13-1 -- New upstream development version 1.37.13 - -* Fri Mar 15 2024 Richard W.M. Jones - 1.37.12-1 -- New upstream development version 1.37.12 - -* Mon Mar 11 2024 Richard W.M. Jones - 1.37.11-1 -- New upstream development version 1.37.11 - -* Mon Mar 04 2024 Richard W.M. Jones - 1.37.10-1 -- New upstream development version 1.37.10 - -* Thu Feb 22 2024 Richard W.M. Jones - 1.37.9-1 -- New upstream development version 1.37.9 - -* Sat Feb 17 2024 Richard W.M. Jones - 1.37.8-1 -- New upstream development version 1.37.8 - -* Wed Feb 14 2024 Richard W.M. Jones - 1.37.7-2 -- Fix gcs & S3 plugin requirements - -* Sun Feb 11 2024 Richard W.M. Jones - 1.37.7-1 -- New upstream development version 1.37.7 -- New nbdkit-gcs-plugin for Google Cloud Storage - -* Thu Feb 01 2024 Richard W.M. Jones - 1.37.6-1 -- New upstream development version 1.37.6 - -* Tue Jan 23 2024 Richard W.M. Jones - 1.37.5-3 -- Add mingw{32,64}-nbdkit subpackages - -* Sun Jan 21 2024 Fedora Release Engineering - 1.37.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Tue Jan 16 2024 Richard W.M. Jones - 1.37.5-1 -- New upstream development version 1.37.5 - -* Wed Jan 03 2024 Mamoru TASAKA - 1.37.4-2 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 - -* Tue Dec 19 2023 Richard W.M. Jones - 1.37.4-1 -- New upstream development version 1.37.4 - -* Mon Dec 18 2023 Richard W.M. Jones - 1.37.3-4 -- OCaml 5.1.1 + s390x code gen fix for Fedora 40 - -* Thu Dec 14 2023 Richard W.M. Jones - 1.37.3-3 -- OCaml 5.1.1 rebuild for Fedora 40 - -* Mon Dec 04 2023 Richard W.M. Jones - 1.37.3-2 -- Add upstream fix for GCC 14 - -* Sun Nov 26 2023 Richard W.M. Jones - 1.37.3-1 -- New upstream development version 1.37.3 - -* Tue Nov 07 2023 Richard W.M. Jones - 1.37.2-1 -- New upstream development version 1.37.2 -- New nbdkit-readonly-filter. - -* Wed Nov 01 2023 Richard W.M. Jones - 1.37.1-2 -- Add experimental SELinux support (RHEL-5174) - -* Mon Oct 23 2023 Richard W.M. Jones - 1.37.1-1 -- New upstream development version 1.37.1 - -* Fri Oct 06 2023 Richard W.M. Jones - 1.36.0-3 -- OCaml 5.1 rebuild for Fedora 40 - -* Wed Sep 27 2023 Richard W.M. Jones - 1.36.0-2 -- New upstream stable version 1.36.0 -- Enable blkio support again on Fedora i686. - -* Mon Sep 11 2023 Richard W.M. Jones - 1.35.13-1 -- New upstream development version 1.35.13 - -* Fri Sep 08 2023 Richard W.M. Jones - 1.35.12-1 -- New upstream development version 1.35.12 - -* Wed Aug 30 2023 Richard W.M. Jones - 1.35.11-2 -- New upstream development version 1.35.11 - -* Sat Aug 12 2023 Richard W.M. Jones - 1.35.10-1 -- New upstream development version 1.35.10 -- Use zlib-ng on Fedora but not RHEL. - -* Sat Aug 05 2023 Richard W.M. Jones - 1.35.9-1 -- New upstream development version 1.35.9 -- Disable libblkio on i686 (RHBZ#2229372) - -* Tue Aug 01 2023 Richard W.M. Jones - 1.35.8-1 -- New upstream development version 1.35.8 - -* Sun Jul 23 2023 Richard W.M. Jones - 1.35.7-2 -- New upstream development version 1.35.7 -- New nbdkit-qcow2dec-filter. - -* Thu Jul 20 2023 Fedora Release Engineering - 1.35.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Fri Jul 14 2023 Richard W.M. Jones - 1.35.6-1 -- New upstream development version 1.35.6 - -* Thu Jul 13 2023 Jitka Plesnikova - 1.35.5-6 -- Perl 5.38 re-rebuild updated packages - -* Wed Jul 12 2023 Richard W.M. Jones - 1.35.5-5 -- OCaml 5.0 rebuild for Fedora 39 - -* Tue Jul 11 2023 Jitka Plesnikova - 1.35.5-4 -- Perl 5.38 rebuild - -* Mon Jul 10 2023 Jerry James - 1.35.5-3 -- OCaml 5.0.0 rebuild - -* Tue Jul 04 2023 Python Maint - 1.35.5-2 -- Rebuilt for Python 3.12 - -* Mon Jun 12 2023 Richard W.M. Jones - 1.35.5-1 -- New upstream development version 1.35.5 - -* Mon Jun 05 2023 Richard W.M. Jones - 1.35.4-2 -- Migrated to SPDX license - -* Sun May 28 2023 Richard W.M. Jones - 1.35.4-1 -- New upstream development version 1.35.4 - -* Thu May 18 2023 Richard W.M. Jones - 1.35.3-1 -- New upstream development version 1.35.3 -- New plugin: ones -- New filter: evil - -* Wed May 10 2023 Richard W.M. Jones - 1.35.2-1 -- New upstream development version 1.35.2 - -* Sat Apr 29 2023 Richard W.M. Jones - 1.35.1-1 -- New upstream development version 1.35.1 - -* Tue Apr 18 2023 Richard W.M. Jones - 1.34.1-1 -- New upstream stable version 1.34.1 - -* Fri Apr 14 2023 Richard W.M. Jones - 1.34.0-1 -- New upstream stable version 1.34.0 - -* Thu Apr 13 2023 Richard W.M. Jones - 1.33.12-1 -- New upstream development version 1.33.12 - -* Thu Mar 09 2023 Richard W.M. Jones - 1.33.11-1 -- New upstream development version 1.33.11 - -* Tue Feb 28 2023 Richard W.M. Jones - 1.33.10-1 -- New upstream development version 1.33.10 - -* Sat Feb 25 2023 Richard W.M. Jones - 1.33.9-1 -- New upstream development version 1.33.9 - -* Tue Feb 07 2023 Richard W.M. Jones - 1.33.8-1 -- New upstream development version 1.33.8 - -* Tue Jan 24 2023 Richard W.M. Jones - 1.33.7-3 -- Rebuild OCaml packages for F38 - -* Thu Jan 19 2023 Fedora Release Engineering - 1.33.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Sat Jan 14 2023 Richard W.M. Jones - 1.33.7-1 -- New upstream development version 1.33.7 - -* Wed Jan 11 2023 Richard W.M. Jones - 1.33.6-1 -- New upstream development version 1.33.6 -- New plugin: nbdkit-blkio-plugin - -* Wed Jan 04 2023 Mamoru TASAKA - 1.33.5-2 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 - -* Tue Jan 03 2023 Richard W.M. Jones - 1.33.5-1 -- New upstream development version 1.33.5 - -* Sat Dec 03 2022 Richard W.M. Jones - 1.33.4-1 -- New upstream development version 1.33.4 - -* Fri Nov 18 2022 Richard W.M. Jones - 1.33.3-1 -- New upstream development version 1.33.3 - -* Tue Oct 11 2022 Richard W.M. Jones - 1.33.2-1 -- New upstream development version 1.33.2 - -* Thu Aug 18 2022 Richard W.M. Jones - 1.33.1-1 -- New upstream development version 1.33.1 - -* Thu Aug 11 2022 Richard W.M. Jones - 1.32.1-1 -- New upstream stable version 1.32.1 - -* Mon Aug 01 2022 Richard W.M. Jones - 1.32.0-1 -- New upstream stable version 1.32.0 - -* Fri Jul 29 2022 Richard W.M. Jones - 1.31.15-1 -- New upstream development version 1.31.15 - -* Sun Jul 24 2022 Richard W.M. Jones - 1.31.14-1 -- New upstream development version 1.31.14 - -* Fri Jul 22 2022 Fedora Release Engineering - 1.31.13-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Tue Jul 19 2022 Richard W.M. Jones - 1.31.13-1 -- New upstream development version 1.31.13 - -* Sun Jul 17 2022 Richard W.M. Jones - 1.31.12-1 -- New upstream development version 1.31.12 - -* Sun Jul 10 2022 Richard W.M. Jones - 1.31.11-1 -- New upstream development version 1.31.11 - -* Mon Jun 27 2022 Richard W.M. Jones - 1.31.10-1 -- New upstream development version 1.31.10 - -* Mon Jun 20 2022 Richard W.M. Jones - 1.31.9-3 -- OCaml 4.14.0 rebuild - -* Mon Jun 13 2022 Python Maint - 1.31.9-2 -- Rebuilt for Python 3.11 - -* Mon Jun 13 2022 Richard W.M. Jones - 1.31.9-1 -- New upstream development version 1.31.9 - -* Thu Jun 09 2022 Richard W.M. Jones - 1.31.8-1 -- New upstream development version 1.31.8 -- Rename README file. - -* Wed Jun 01 2022 Jitka Plesnikova - 1.31.7-2 -- Perl 5.36 rebuild - -* Thu May 19 2022 Richard W.M. Jones - 1.31.7-1 -- New upstream development version 1.31.7 - -* Sat May 14 2022 Richard W.M. Jones - 1.31.6-1 -- New upstream development version 1.31.6 -- New filter: scan - -* Mon May 09 2022 Richard W.M. Jones - 1.31.5-1 -- New upstream development version 1.31.5 - -* Mon May 09 2022 Richard W.M. Jones - 1.31.4-1 -- New upstream development version 1.31.4 -- Add new luks filter. - -* Sat May 07 2022 Richard W.M. Jones - 1.31.3-1 -- New upstream development version 1.31.3 -- Stats filter is now written in C++, move to a new subpackage. - -* Tue Apr 26 2022 Richard W.M. Jones - 1.31.2-1 -- New upstream development version 1.31.2 - -* Wed Apr 20 2022 Richard W.M. Jones - 1.31.1-1 -- New upstream development version 1.31.1 - -* Sat Apr 16 2022 Richard W.M. Jones - 1.30.3-1 -- New stable version 1.30.3 -- Remove dependency on ssh-keygen which was never really used. - -* Sat Apr 02 2022 Richard W.M. Jones - 1.30.2-1 -- New stable version 1.30.2 - -* Tue Mar 15 2022 Richard W.M. Jones - 1.30.1-1 -- New stable version 1.30.1 - -* Mon Feb 28 2022 Richard W.M. Jones - 1.30.0-3 -- Add nbdkit-srpm-macros - -* Thu Feb 24 2022 Richard W.M. Jones - 1.30.0-1 -- New stable version 1.30.0 - -* Sat Feb 19 2022 Richard W.M. Jones - 1.29.16-1 -- New upstream development version 1.29.16 -- New nbdkit-blocksize-policy-filter. - -* Tue Feb 15 2022 Richard W.M. Jones - 1.29.15-1 -- New upstream development version 1.29.15 - -* Thu Jan 27 2022 Mamoru TASAKA - 1.29.14-2 -- F-36: rebuild against ruby31 - -* Thu Jan 20 2022 Richard W.M. Jones - 1.29.14-1 -- New upstream development version 1.29.14 - -* Thu Jan 20 2022 Fedora Release Engineering - 1.29.13-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Sat Jan 15 2022 Richard W.M. Jones - 1.29.13-1 -- New upstream development version 1.29.13 - -* Tue Jan 04 2022 Richard W.M. Jones - 1.29.12-1 -- New upstream development version 1.29.12 - -* Sat Dec 18 2021 Richard W.M. Jones - 1.29.11-1 -- New upstream development version 1.29.11 -- Use new --disable-libguestfs-tests on non-guestfs arches. - -* Tue Dec 07 2021 Richard W.M. Jones - 1.29.9-1 -- New upstream development version 1.29.9 - -* Sat Dec 04 2021 Richard W.M. Jones - 1.29.8-1 -- New upstream development version 1.29.8 -- Add nbdkit-protect-filter. - -* Thu Nov 25 2021 Richard W.M. Jones - 1.29.7-2 -- Bump release and rebuild - -* Tue Nov 23 2021 Richard W.M. Jones - 1.29.7-1 -- New upstream development version 1.29.7 - -* Fri Nov 19 2021 Richard W.M. Jones - 1.29.6-1 -- New upstream development version 1.29.6 - -* Tue Nov 09 2021 Richard W.M. Jones - 1.29.5-1 -- New upstream development version 1.29.5 -- New minimum OCaml is 4.03 - -* Thu Nov 04 2021 Richard W.M. Jones - 1.29.4-1 -- New upstream development version 1.29.4 -- Remove references to nbdkit-streaming-plugin (now removed upstream) -- Move nbdkit-null-plugin to the nbdkit-server package - -* Tue Nov 02 2021 Richard W.M. Jones - 1.29.3-2 -- Switch to xorriso (instead of genisoimage) - -* Thu Oct 28 2021 Richard W.M. Jones - 1.29.3-1 -- New upstream development version 1.29.3 - -* Mon Oct 25 2021 Richard W.M. Jones - 1.29.2-1 -- New upstream development version 1.29.2 - -* Tue Oct 19 2021 Richard W.M. Jones - 1.29.1-1 -- New upstream development version 1.29.1 -- New filter: nbdkit-retry-request-filter - -* Mon Oct 04 2021 Richard W.M. Jones - 1.28.0-2 -- OCaml 4.13.1 build - -* Thu Sep 23 2021 Richard W.M. Jones - 1.28.0-1 -- New upstream stable branch version 1.28.0 - -* Tue Sep 21 2021 Richard W.M. Jones - 1.27.10-1 -- New upstream development version 1.27.10. - -* Tue Sep 14 2021 Sahana Prasad - 1.27.9-2 -- Rebuilt with OpenSSL 3.0.0 - -* Sat Sep 4 2021 Richard W.M. Jones - 1.27.9-1 -- New upstream development version 1.27.9. -- Remove patches which are upstream. - -* Wed Sep 1 2021 Richard W.M. Jones - 1.27.8-3 -- Re-enable tests on armv7. - -* Tue Aug 31 2021 Richard W.M. Jones - 1.27.8-2 -- Fix for qemu 6.1. - -* Mon Aug 23 2021 Richard W.M. Jones - 1.27.8-1 -- New upstream development version 1.27.8. -- Remove patch which is included upstream. - -* Thu Aug 19 2021 Eric Blake - 1.27.7-2 -- Include followup patch related to CVE-2021-3716. - -* Thu Aug 19 2021 Eric Blake - 1.27.7-1 -- New upstream development version 1.27.7; addresses CVE-2021-3716. - -* Fri Aug 13 2021 Eric Blake - 1.27.5-1 -- New upstream development version 1.27.5. - -* Thu Aug 05 2021 Richard W.M. Jones - 1.27.4-1 -- New upstream development version 1.27.4. - -* Fri Jul 23 2021 Richard W.M. Jones - 1.27.3-1 -- New upstream development version 1.27.3. - -* Thu Jul 22 2021 Fedora Release Engineering - 1.27.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Mon Jul 05 2021 Richard W.M. Jones - 1.27.2-1 -- New upstream development version 1.27.2. - -* Fri Jun 11 2021 Richard W.M. Jones - 1.27.1-1 -- New upstream development version 1.27.1. - -* Mon Jun 07 2021 Richard W.M. Jones - 1.26.0-1 -- New upstream version 1.26.0. - -* Fri Jun 04 2021 Python Maint - 1.25.9-2 -- Rebuilt for Python 3.10 - -* Thu Jun 03 2021 Richard W.M. Jones - 1.25.9-1 -- New upstream version 1.25.9. - -* Tue May 25 2021 Jitka Plesnikova - 1.25.8-2 -- Perl 5.34 re-rebuild of updated packages - -* Tue May 25 2021 Richard W.M. Jones - 1.25.8-1 -- New upstream version 1.25.8. - -* Tue May 25 2021 Jitka Plesnikova - 1.25.7-4 -- Perl 5.34 re-rebuild updated packages - -* Tue May 25 2021 Leigh Scott - 1.25.7-3 -- Rebuild for new libtorrent - -* Fri May 21 2021 Jitka Plesnikova - 1.25.7-2 -- Perl 5.34 rebuild - -* Wed May 05 2021 Richard W.M. Jones - 1.25.7-1 -- New upstream version 1.25.7. -- Disable libguestfs tests on riscv64. - -* Sat Apr 10 2021 Richard W.M. Jones - 1.25.6-1 -- New upstream version 1.25.6. - -* Sat Apr 03 2021 Richard W.M. Jones - 1.25.5-1 -- New upstream version 1.25.5. - -* Mon Mar 15 2021 Richard W.M. Jones - 1.25.4-2 -- Fix upstream URL. -- Enable non-guestfs tests on all arches. - -* Wed Mar 10 2021 Richard W.M. Jones - 1.25.4-1 -- New upstream development version 1.25.4. -- New filter: multi-conn - -* Tue Mar 9 2021 Richard W.M. Jones - 1.25.3-3 -- Make nbdkit-vddk-plugin depend on libxcrypt-compat (RHBZ#1931818). - -* Thu Mar 4 2021 Richard W.M. Jones - 1.25.3-2 -- Remove socat dependency in RHEL 9. - -* Tue Mar 2 2021 Richard W.M. Jones - 1.25.3-1 -- New upstream development version 1.25.3. - -* Tue Mar 2 2021 Richard W.M. Jones - 1.25.2-2 -- OCaml 4.12.0 build (RHBZ#1934138). - -* Wed Feb 03 2021 Richard W.M. Jones - 1.25.2-1 -- New upstream development version 1.25.2. -- Remove all remaining traces of nbdkit-gzip-plugin and nbdkit-tar-plugin. -- Remove nbdkit-streaming-plugin (deprecated upstream). -- Remove obsoletes of old nbdkit-ext2-plugin. - -* Tue Jan 26 2021 Fedora Release Engineering - 1.25.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jan 20 2021 Richard W.M. Jones - 1.25.1-1 -- New upstream development version 1.25.1. - -* Tue Jan 19 2021 Richard W.M. Jones - 1.24.0-3 -- Obsolete nbdkit-tar-plugin to provide smooth upgrades to F33+. - -* Fri Jan 08 2021 Mamoru TASAKA - 1.24.0-2 -- F-34: rebuild against ruby 3.0 - -* Thu Jan 07 2021 Richard W.M. Jones - 1.24.0-1 -- New upstream version 1.24.0. - -* Thu Jan 07 2021 Mamoru TASAKA - 1.23.13-2 -- F-34: rebuild against ruby 3.0 - -* Tue Dec 29 2020 Richard W.M. Jones - 1.23.13-1 -- New upstream development version 1.23.13. -- Add configure --with-extra. - -* Tue Dec 22 2020 Richard W.M. Jones - 1.23.11-1 -- New upstream development version 1.23.11. -- New nbdkit-checkwrite-filter. - -* Thu Dec 10 2020 Richard W.M. Jones - 1.23.10-2 -- Avoid boto3 dependency on RHEL. - -* Tue Dec 08 2020 Richard W.M. Jones - 1.23.10-1 -- New upstream development version 1.23.10. -- New nbdkit-sparse-random-plugin. - -* Thu Dec 03 2020 Richard W.M. Jones - 1.23.9-2 -- Move gzip and tar filters with other filters. -- Remove nbdkit-tar-plugin (replaced with nbdkit-tar-filter), except RHEL 8. -- Do not ship nbdkit-S3-plugin on RHEL. - -* Thu Nov 19 2020 Richard W.M. Jones - 1.23.9-1 -- New upstream development version 1.23.9. -- Add nbdkit-S3-plugin. - -* Mon Nov 02 2020 Richard W.M. Jones - 1.23.8-1 -- New upstream development version 1.23.8. -- Add nbdkit-exitwhen-filter. - -* Mon Oct 05 2020 Richard W.M. Jones - 1.23.7-1 -- New upstream development version 1.23.7. -- Add new NBDKit(3) man page for the OCaml plugin. - -* Tue Sep 22 2020 Richard W.M. Jones - 1.23.6-1 -- New upstream development version 1.23.6. -- New exportname filter. -- Add patch to fix tests. - -* Wed Sep 16 2020 Richard W.M. Jones - 1.23.5-1 -- New upstream development version 1.23.5. - -* Tue Sep 08 2020 Richard W.M. Jones - 1.23.4-1 -- New upstream development version 1.23.4. - -* Sat Sep 05 2020 Richard W.M. Jones - 1.23.3-1 -- New upstream development version 1.23.3. - -* Tue Sep 01 2020 Richard W.M. Jones - 1.23.2-2 -- OCaml 4.11.1 rebuild - -* Tue Sep 01 2020 Richard W.M. Jones - 1.23.2-1 -- New upstream development version 1.23.2. - -* Tue Sep 01 2020 Richard W.M. Jones - 1.22.0-2 -- Reenable sfdisk test because util-linux contains fix. - -* Thu Aug 27 2020 Richard W.M. Jones - 1.22.0-1 -- New stable version 1.22.0. - -* Mon Aug 24 2020 Richard W.M. Jones - 1.21.26-2 -- OCaml 4.11.0 rebuild - -* Thu Aug 20 2020 Richard W.M. Jones - 1.21.26-1 -- New upstream version 1.21.26. - -* Sun Aug 16 2020 Richard W.M. Jones - 1.21.25-1 -- New upstream version 1.21.25. -- New nbdkit-ondemand-plugin. -- New nbdkit-client(1) man page. - -* Tue Aug 11 2020 Richard W.M. Jones - 1.21.24-1 -- New upstream version 1.21.24. -- Add nbdkit-tls-fallback-filter. - -* Mon Aug 10 2020 Merlin Mathesius - 1.21.23-1 -- Enable libguestfs tests only on %%{kernel_arches} - -* Sat Aug 8 2020 Richard W.M. Jones - 1.21.23-1 -- New upstream version 1.21.23. - -* Thu Aug 6 2020 Richard W.M. Jones - 1.21.22-1 -- New upstream version 1.21.22. -- Note this requires updated libnbd 1.3.11 because of bugs in 1.3.10. - -* Tue Aug 4 2020 Richard W.M. Jones - 1.21.21-1 -- New upstream version 1.21.21. -- Remove patches, all upstream. - -* Sat Aug 1 2020 Richard W.M. Jones - 1.21.20-6 -- Add upstream patches to try to track down test failure in Koji. - -* Tue Jul 28 2020 Fedora Release Engineering - 1.21.20-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Fri Jul 24 2020 Richard W.M. Jones - 1.21.20-1 -- New upstream development version 1.21.20. -- Disable test-partition1.sh because of sfdisk bug. - -* Tue Jul 21 2020 Tom Stellard - 1.21.19-2 -- Use make macros -- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro - -* Sat Jul 18 2020 Richard W.M. Jones - 1.21.19-1 -- New upstream development version 1.21.19. -- New nbdkit-cdi-plugin. - -* Mon Jul 13 2020 Richard W.M. Jones - 1.21.18-1 -- New upstream development version 1.21.18. -- Fixes nbdkit-gzip-filter. - -* Sat Jul 11 2020 Richard W.M. Jones - 1.21.17-1 -- New upstream development version 1.21.17. -- New nbdkit-gzip-filter. -- Remove deprecated nbdkit-gzip-plugin. - -* Thu Jul 9 2020 Richard W.M. Jones - 1.21.16-1 -- New upstream development version 1.21.16. -- New nbdkit-tar-filter. -- nbdkit-ext2-plugin has been removed, no need to delete it. - -* Mon Jul 6 2020 Richard W.M. Jones - 1.21.15-1 -- New upstream development version 1.21.15. -- New nbdkit-swab-filter. - -* Fri Jul 3 2020 Richard W.M. Jones - 1.21.14-1 -- New upstream development version 1.21.14. -- New nbdkit-pause-filter. - -* Mon Jun 29 2020 Richard W.M. Jones - 1.21.13-1 -- New upstream development version 1.21.13. -- Tar plugin rewritten again in C. -- New nbdkit-torrent-plugin. -- Remove various upgrade paths which are no longer needed in F33. - -* Sat Jun 27 2020 Jitka Plesnikova - 1.21.12-3 -- Perl 5.32 re-rebuild updated packages - -* Thu Jun 25 2020 Richard W.M. Jones - 1.21.12-2 -- Fix dependencies of nbdkit-tar-plugin since rewritten in Python. - -* Tue Jun 23 2020 Richard W.M. Jones - 1.21.12-1 -- New upstream development version 1.21.12. -- Use new --disable-rust configure option. - -* Mon Jun 22 2020 Jitka Plesnikova - 1.21.11-2 -- Perl 5.32 rebuild - -* Fri Jun 19 2020 Richard W.M. Jones - 1.21.11-1 -- New upstream development version 1.21.11. - -* Mon Jun 15 2020 Richard W.M. Jones - 1.21.10-1 -- New upstream development version 1.21.10. -- This makes nbdkit-basic-plugins depend on zstd. - -* Sun Jun 14 2020 Richard W.M. Jones - 1.21.9-1 -- New upstream development version 1.21.9. - -* Tue Jun 9 2020 Richard W.M. Jones - 1.21.8-1 -- New upstream development version 1.21.8. -- Remove upstream patches. - -* Thu Jun 4 2020 Richard W.M. Jones - 1.21.7-1 -- New upstream development version 1.21.7. -- New nbdkit-cc-plugin subpackage. - -* Tue Jun 2 2020 Richard W.M. Jones - 1.21.6-1 -- New upstream development version 1.21.6. - -* Sat May 30 2020 Richard W.M. Jones - 1.21.5-1 -- New upstream development version 1.21.5. -- New ddrescue filter. - -* Tue May 26 2020 Miro Hrončok - 1.21.4-3 -- Rebuilt for Python 3.9 - -* Wed May 20 2020 Richard W.M. Jones - 1.21.4-2 -- Add upstream patch to make tests/test-truncate4.sh more stable on s390x. - -* Tue May 19 2020 Richard W.M. Jones - 1.21.4-1 -- New upstream development version 1.21.4. - -* Sun May 10 2020 Richard W.M. Jones - 1.21.3-1 -- New upstream development version 1.21.3. - -* Thu May 07 2020 Richard W.M. Jones - 1.21.2-1 -- New upstream development version 1.21.2. - -* Tue May 05 2020 Richard W.M. Jones - 1.20.1-2 -- Bump and rebuild for OCaml 4.11.0+dev2-2020-04-22 rebuild. - -* Mon May 4 2020 Richard W.M. Jones - 1.20.1-2 -- New upstream version 1.20.1. - -* Sat May 2 2020 Richard W.M. Jones - 1.20.0-2 -- New upstream version 1.20.0. - -* Thu Apr 30 2020 Richard W.M. Jones - 1.19.12-1 -- New upstream version 1.19.12. - -* Tue Apr 28 2020 Richard W.M. Jones - 1.19.11-1 -- New upstream version 1.19.11. - -* Fri Apr 24 2020 Richard W.M. Jones - 1.19.10-1 -- New upstream version 1.19.10. - -* Thu Apr 23 2020 Richard W.M. Jones - 1.19.9-1 -- New upstream version 1.19.9. - -* Thu Apr 16 2020 Richard W.M. Jones - 1.19.8-1 -- New upstream version 1.19.8. - -* Wed Apr 8 2020 Richard W.M. Jones - 1.19.7-1 -- New upstream version 1.19.7. -- Disable VDDK on i386, support for VDDK 5.1.1 was removed upstream. - -* Tue Mar 31 2020 Richard W.M. Jones - 1.19.6-1 -- New upstream version 1.19.6. - -* Sat Mar 28 2020 Richard W.M. Jones - 1.19.5-1 -- New upstream version 1.19.5. - -* Fri Mar 20 2020 Richard W.M. Jones - 1.19.4-1 -- New upstream version 1.19.4. - -* Thu Mar 19 2020 Richard W.M. Jones - 1.19.3-2 -- Kill some upstream tests which are problematic. -- Restore test-shutdown.sh (it was renamed to test-delay-shutdown.sh) - -* Tue Mar 17 2020 Richard W.M. Jones - 1.19.3-1 -- New upstream version 1.19.3. -- New plugin and subpackage: tmpdisk. - -* Sat Mar 07 2020 Richard W.M. Jones - 1.19.2-1 -- New upstream version 1.19.2. -- New filters: exitlast, limit. - -* Fri Mar 06 2020 Richard W.M. Jones - 1.19.1-1 -- New upstream version 1.19.1. - -* Thu Feb 27 2020 Richard W.M. Jones - 1.18.0-1 -- New upstream stable branch version 1.18.0. - -* Wed Feb 26 2020 Richard W.M. Jones - 1.17.11-2 -- OCaml 4.10.0 final. - -* Tue Feb 25 2020 Richard W.M. Jones - 1.17.11-1 -- New upstream development version 1.17.11. - -* Wed Feb 19 2020 Richard W.M. Jones - 1.17.10-1 -- New upstream development version 1.17.10. - -* Tue Feb 18 2020 Richard W.M. Jones - 1.17.9-1 -- New upstream development version 1.17.9. - -* Wed Feb 12 2020 Richard W.M. Jones - 1.17.8-1 -- New upstream development version 1.17.8. -- New filter: ext2. -- Deprecate and remove ext2 plugin. - -* Wed Jan 29 2020 Fedora Release Engineering - 1.17.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Sat Jan 25 2020 Richard W.M. Jones - 1.17.7-1 -- New upstream development version 1.17.7. -- New filter: extentlist. - -* Tue Jan 21 2020 Richard W.M. Jones - 1.17.6-1 -- New upstream development version 1.17.6. - -* Sun Dec 15 2019 Richard W.M. Jones - 1.17.5-1 -- New upstream development version 1.17.5. -- Remove upstream patches. - -* Sat Dec 14 2019 Richard W.M. Jones - 1.17.4-2 -- Improve test times. - -* Fri Dec 13 2019 Richard W.M. Jones - 1.17.4-1 -- New upstream development version 1.17.4. -- New filter: nofilter. -- Remove upstream patches. - -* Tue Dec 10 2019 Richard W.M. Jones - 1.17.3-2 -- New upstream development version 1.17.3. -- Add upstream patch to fix IPv6 support in tests. - -* Sat Dec 7 2019 Richard W.M. Jones - 1.17.2-2 -- Reenable OCaml plugin on riscv64 again, should now work with 4.09. - -* Tue Dec 3 2019 Richard W.M. Jones - 1.17.2-1 -- New upstream development version 1.17.2. -- Enable armv7 again. - -* Sun Dec 1 2019 Richard W.M. Jones - 1.17.1-1 -- New upstream development version 1.17.1. -- Add nbdkit-eval-plugin. -- Add nbdkit-ip-filter. - -* Wed Nov 27 2019 Richard W.M. Jones - 1.16.0-6 -- Use gpgverify macro instead of explicit gpgv2 command. - -* Fri Nov 15 2019 Richard W.M. Jones - 1.16.0-5 -- Enable libvirt plugin on all architectures. -- Disable OCaml plugin on riscv64 temporarily. - -* Thu Nov 14 2019 Richard W.M. Jones - 1.16.0-1 -- New stable release 1.16.0. - -* Sat Nov 09 2019 Richard W.M. Jones - 1.15.8-1 -- New upstream version 1.15.8. -- Add new nbdkit-release-notes-* man pages. - -* Wed Nov 06 2019 Richard W.M. Jones - 1.15.7-1 -- New upstream version 1.15.7. - -* Fri Oct 25 2019 Richard W.M. Jones - 1.15.6-1 -- New upstream version 1.15.6. - -* Sat Oct 19 2019 Richard W.M. Jones - 1.15.5-1 -- New upstream release 1.15.5. - -* Tue Oct 1 2019 Richard W.M. Jones - 1.15.4-1 -- New upstream release 1.15.4. -- New nbdkit-security(1) man page. -- Rename nbdkit-reflection-plugin to nbdkit-info-plugin. - -* Wed Sep 25 2019 Richard W.M. Jones - 1.15.3-1 -- New upstream release 1.15.3. -- Add new header file nbd-protocol.h to devel subpackage. - -* Fri Sep 20 2019 Richard W.M. Jones - 1.15.2-1 -- New upstream version 1.15.2. -- Fixes second Denial of Service attack: - https://www.redhat.com/archives/libguestfs/2019-September/msg00272.html -- Add new nbdkit-reflection-plugin. -- Add new nbdkit-retry-filter. - -* Thu Sep 12 2019 Richard W.M. Jones - 1.15.1-1 -- New upstream version 1.15.1. -- Fixes Denial of Service / Amplication Attack: - https://www.redhat.com/archives/libguestfs/2019-September/msg00084.html -- Add nbdsh BR for tests. -- Package . - -* Thu Aug 29 2019 Richard W.M. Jones - 1.14.0-2 -- Split out nbdkit-nbd-plugin subpackage. - -* Wed Aug 28 2019 Richard W.M. Jones - 1.14.0-1 -- New upstream version 1.14.0. - -* Wed Aug 21 2019 Richard W.M. Jones - 1.13.9-3 -- Temporarily kill tests/test-shutdown.sh - -* Wed Aug 21 2019 Miro Hrončok - 1.13.9-2 -- Rebuilt for Python 3.8 - -* Wed Aug 21 2019 Richard W.M. Jones - 1.13.9-1 -- New upstream version 1.13.9. - -* Wed Aug 21 2019 Richard W.M. Jones - 1.13.8-7 -- Add provides for all basic plugins and filters. - -* Tue Aug 20 2019 Richard W.M. Jones - 1.13.8-5 -- BR libnbd 0.9.8. - -* Mon Aug 19 2019 Miro Hrončok - 1.13.8-4 -- Rebuilt for Python 3.8 - -* Mon Aug 19 2019 Richard W.M. Jones - 1.13.8-3 -- Fix for libnbd 0.9.8. - -* Mon Aug 19 2019 Miro Hrončok - 1.13.8-2 -- Rebuilt for Python 3.8 - -* Fri Aug 2 2019 Richard W.M. Jones - 1.13.8-1 -- New upstream version 1.13.8. - -* Wed Jul 31 2019 Richard W.M. Jones - 1.13.7-2 -- Add upstream patch to deal with qemu-img 4.1 output change. - -* Tue Jul 30 2019 Richard W.M. Jones - 1.13.7-1 -- New upstream version 1.13.7. - -* Fri Jul 26 2019 Richard W.M. Jones - 1.13.6-1 -- New upstream version 1.13.6. -- Add BR libnbd-devel. -- New filter: cacheextents. -- Disable guestfs plugin on i686. - -* Thu Jul 25 2019 Fedora Release Engineering - 1.13.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Mon Jun 10 2019 Richard W.M. Jones - 1.13.5-2 -- Further fix for Python 3.8 embed brokenness. - -* Sun Jun 09 2019 Richard W.M. Jones - 1.13.5-1 -- New upstream version 1.13.5. - -* Thu May 30 2019 Jitka Plesnikova - 1.13.4-2 -- Perl 5.30 rebuild - -* Tue May 21 2019 Richard W.M. Jones - 1.13.4-1 -- New upstream version 1.13.4. -- Add new filters: nocache, noparallel. - -* Sat Apr 27 2019 Richard W.M. Jones - 1.13.3-1 -- New upstream version 1.13.3. -- Add OCaml example to devel subpackage. - -* Wed Apr 24 2019 Richard W.M. Jones - 1.13.2-1 -- New upstream version 1.13.2. - -* Tue Apr 23 2019 Richard W.M. Jones - 1.13.1-1 -- New upstream version 1.13.1. -- Distribute BENCHMARKING and SECURITY files. -- Includes a fix for possible remote memory heap leak with user plugins. - -* Sat Apr 13 2019 Richard W.M. Jones - 1.13.0-1 -- New upstream version 1.13.0. -- Add stats filter. - -* Wed Apr 10 2019 Richard W.M. Jones - 1.12.0-1 -- New upstream version 1.12.0. -- Add noextents filter. - -* Mon Apr 08 2019 Richard W.M. Jones - 1.11.15-1 -- New upstream version 1.11.15. - -* Sat Apr 06 2019 Richard W.M. Jones - 1.11.14-1 -- New upstream version 1.11.14. -- Remove deprecated nbdkit-xz-plugin (replaced by nbdkit-xz-filter). - -* Tue Apr 02 2019 Richard W.M. Jones - 1.11.13-1 -- New upstream version 1.11.13. - -* Tue Apr 02 2019 Richard W.M. Jones - 1.11.12-1 -- New upstream version 1.11.12. -- New nbdkit-readahead-filter. - -* Fri Mar 29 2019 Richard W.M. Jones - 1.11.11-1 -- New upstream version 1.11.11. - -* Thu Mar 28 2019 Richard W.M. Jones - 1.11.10-1 -- New upstream version 1.11.10. - -* Sat Mar 23 2019 Richard W.M. Jones - 1.11.9-1 -- New upstream version 1.11.9. - -* Tue Mar 12 2019 Richard W.M. Jones - 1.11.8-1 -- New upstream version 1.11.8. - -* Thu Mar 07 2019 Richard W.M. Jones - 1.11.7-3 -- Remove Python 2 plugin completely. - https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal - -* Thu Mar 07 2019 Richard W.M. Jones - 1.11.7-2 -- Remove Provides/Obsoletes in Fedora 31. -- Remove workaround for QEMU bug which is fixed in Fedora 30+. -- Make the tests run in parallel, otherwise they are too slow. - -* Thu Mar 07 2019 Richard W.M. Jones - 1.11.7-1 -- New upstream version 1.11.7. -- Add nbdkit ssh plugin. -- Remove patches already upstream. - -* Tue Mar 05 2019 Richard W.M. Jones - 1.11.6-2 -- Add nbdkit rate filter. - -* Fri Mar 01 2019 Richard W.M. Jones - 1.11.6-1 -- New upstream version 1.11.6. -- Add linuxdisk plugin. -- Remove rust plugin if compiled. - -* Tue Feb 05 2019 Richard W.M. Jones - 1.11.5-1 -- New upstream version 1.11.5. - -* Fri Feb 01 2019 Fedora Release Engineering - 1.11.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Wed Jan 30 2019 Richard W.M. Jones - 1.11.4-1 -- New upstream version 1.11.4. - -* Mon Jan 28 2019 Richard W.M. Jones - 1.11.3-1 -- New upstream version 1.11.3. - -* Thu Jan 24 2019 Mamoru TASAKA - 1.11.2-2 -- F-30: rebuild against ruby26 - -* Thu Jan 24 2019 Richard W.M. Jones - 1.11.2-1 -- New upstream version 1.11.2. -- Drop patches included in upstream tarball. - -* Thu Jan 24 2019 Mamoru TASAKA - 1.11.1-2 -- F-30: rebuild again against ruby26 - -* Tue Jan 22 2019 Richard W.M. Jones - 1.11.1-1 -- New upstream version 1.11.1. - -* Mon Jan 21 2019 Mamoru TASAKA - 1.10.0-2 -- F-30: rebuild against ruby26 +* Sat Jan 26 2019 Richard W.M. Jones - 1.10.1-1 +- New upstream version 1.10.1. * Fri Jan 18 2019 Richard W.M. Jones - 1.10.0-1 - New upstream version 1.10.0. - -* Tue Jan 15 2019 Richard W.M. Jones - 1.9.10-1 -- New upstream version 1.9.10. - -* Mon Jan 14 2019 Björn Esser - 1.9.9-2 -- Rebuilt for libcrypt.so.2 (#1666033) - -* Mon Jan 7 2019 Richard W.M. Jones - 1.9.9-1 -- New upstream version 1.9.9. - -* Tue Jan 1 2019 Richard W.M. Jones - 1.9.8-1 -- New upstream version 1.9.8. - -* Mon Dec 17 2018 Richard W.M. Jones - 1.9.7-2 +- Add: nbdkit-full-plugin. +- Add: nbdkit-xz-filter. +- Add: nbdkit-loop(1) man page. - Remove misguided LDFLAGS hack which removed server hardening. https://bugzilla.redhat.com/show_bug.cgi?id=1624149#c6 -* Sat Dec 15 2018 Richard W.M. Jones - 1.9.7-1 -- New upstream version 1.9.7. +* Mon Jan 7 2019 Richard W.M. Jones - 1.8.3-1 +- New upstream version 1.8.3. -* Thu Dec 13 2018 Richard W.M. Jones - 1.9.6-1 -- New upstream version 1.9.6. -- Add nbdkit-full-plugin. - -* Mon Dec 10 2018 Richard W.M. Jones - 1.9.5-1 -- New upstream version 1.9.5. - -* Tue Dec 04 2018 Richard W.M. Jones - 1.9.4-1 -- New upstream version 1.9.4. +* Tue Dec 04 2018 Richard W.M. Jones - 1.8.2-1 +- New upstream version 1.8.2. - Fix low priority security issue with TLS: https://www.redhat.com/archives/libguestfs/2018-December/msg00047.html -- New man page nbdkit-loop(1). -* Thu Nov 29 2018 Richard W.M. Jones - 1.9.3-1 -- New upstream version 1.9.3. - -* Thu Nov 22 2018 Richard W.M. Jones - 1.9.2-1 -- New upstream version 1.9.2. -- Add new filter subpackage: nbdkit-xz-filter. -- Deprecate (but do not remove) nbdkit-xz-plugin. - -* Sun Nov 18 2018 Richard W.M. Jones - 1.9.1-1 -- New upstream version 1.9.1. - -* Wed Nov 14 2018 Richard W.M. Jones - 1.9.0-1 -- New upstream version 1.9.0. -- New development branch. +* Sun Nov 18 2018 Richard W.M. Jones - 1.8.1-1 +- New upstream version 1.8.1. * Mon Nov 12 2018 Richard W.M. Jones - 1.8.0-1 -- New stable branch version 1.8.0. +- Rebase to new stable version 1.8.0. -* Fri Nov 09 2018 Richard W.M. Jones - 1.7.10-1 -- New upstream version 1.7.10, possibly final before 1.8. - -* Tue Nov 06 2018 Richard W.M. Jones - 1.7.9-2 +* Tue Nov 06 2018 Richard W.M. Jones - 1.6.3-2 - nbdkit metapackage should depend on versioned -server subpackage etc. -* Tue Nov 06 2018 Richard W.M. Jones - 1.7.9-1 -- New upstream version 1.7.9. +* Tue Nov 06 2018 Richard W.M. Jones - 1.6.3-1 +- New upstream version 1.6.3. -* Tue Oct 30 2018 Richard W.M. Jones - 1.7.8-1 -- New upstream version 1.7.8. +* Tue Sep 18 2018 Richard W.M. Jones - 1.6.2-1 +- New upstream version 1.6.2. -* Mon Oct 29 2018 Richard W.M. Jones - 1.7.7-1 -- New upstream version 1.7.7. -- New nbdkit-floppy-plugin subpackage. - -* Wed Oct 17 2018 Richard W.M. Jones - 1.7.6-1 -- New upstream version 1.7.6. -- New nbdkit-iso-plugin subpackage. - -* Tue Oct 16 2018 Richard W.M. Jones - 1.7.5-1 -- New upstream version 1.7.5. - -* Tue Oct 2 2018 Richard W.M. Jones - 1.7.4-1 -- New upstream version 1.7.4. - -* Tue Sep 18 2018 Richard W.M. Jones - 1.7.3-1 -- New upstream version 1.7.3. -- Add partitioning plugin. - -* Thu Sep 13 2018 Richard W.M. Jones - 1.7.2-1 -- New upstream version 1.7.2. - -* Mon Sep 10 2018 Richard W.M. Jones - 1.7.1-1 -- New upstream version 1.7.1. - -* Sat Sep 08 2018 Richard W.M. Jones - 1.7.0-1 -- New upstream version 1.7.0, development branch. -- Add nbdkit-sh-plugin. +* Sat Sep 08 2018 Richard W.M. Jones - 1.6.1-1 +- New upstream version 1.6.1. * Tue Aug 28 2018 Richard W.M. Jones - 1.6.0-1 - New upstream version 1.6.0, stable branch. diff --git a/nbdkit.te b/nbdkit.te deleted file mode 100644 index dbc518e..0000000 --- a/nbdkit.te +++ /dev/null @@ -1,100 +0,0 @@ -policy_module(nbdkit, 1.0.0) - -######################################## -# -# Declarations -# - -gen_require(` - type unconfined_t; -') - -type nbdkit_t; -type nbdkit_exec_t; -application_domain(nbdkit_t, nbdkit_exec_t) -mcs_constrained(nbdkit_t) -role system_r types nbdkit_t; - -type nbdkit_home_t; -userdom_user_home_content(nbdkit_home_t) - -type nbdkit_tmp_t; -files_tmp_file(nbdkit_tmp_t) - -type nbdkit_unit_file_t; -systemd_unit_file(nbdkit_unit_file_t) - -permissive nbdkit_t; - -######################################## -# -# nbdkit local policy -# -allow nbdkit_t self:capability { setgid setuid }; -allow nbdkit_t self:fifo_file rw_fifo_file_perms; -allow nbdkit_t self:netlink_route_socket rw_netlink_socket_perms; -allow nbdkit_t self:process { fork setsockcreate signal_perms }; -allow nbdkit_t self:tcp_socket create_stream_socket_perms; -allow nbdkit_t self:udp_socket create_socket_perms; - -manage_dirs_pattern(nbdkit_t, nbdkit_tmp_t, nbdkit_tmp_t) -manage_files_pattern(nbdkit_t, nbdkit_tmp_t, nbdkit_tmp_t) -userdom_user_tmp_filetrans(nbdkit_t, nbdkit_tmp_t, { dir file }) - -manage_dirs_pattern(nbdkit_t, nbdkit_home_t, nbdkit_home_t) -manage_files_pattern(nbdkit_t, nbdkit_home_t, nbdkit_home_t) -userdom_user_home_dir_filetrans(nbdkit_t, nbdkit_home_t, { dir file }) - -corenet_tcp_connect_http_port(nbdkit_t) -corenet_tcp_connect_ssh_port(nbdkit_t) -corenet_tcp_connect_tftp_port(nbdkit_t) -corenet_tcp_bind_generic_port(nbdkit_t) -corenet_tcp_bind_generic_node(nbdkit_t) - -domain_use_interactive_fds(nbdkit_t) - -files_read_etc_files(nbdkit_t) - -init_abstract_socket_activation(nbdkit_t) -init_ioctl_stream_sockets(nbdkit_t) -init_rw_stream_sockets(nbdkit_t) - -optional_policy(` - auth_use_nsswitch(nbdkit_t) -') - -optional_policy(` - logging_send_syslog_msg(nbdkit_t) -') - -optional_policy(` - miscfiles_read_localization(nbdkit_t) - miscfiles_read_generic_certs(nbdkit_t) -') - -optional_policy(` - sysnet_dns_name_resolve(nbdkit_t) - sysnet_read_config(nbdkit_t) -') - -optional_policy(` - userdom_read_user_home_content_files(nbdkit_t) - userdom_use_inherited_user_ptys(nbdkit_t) -') - -optional_policy(` - virt_create_svirt_image_sock_files(nbdkit_t) - virt_read_qemu_pid_files(nbdkit_t) - virtlogd_rw_pipes(nbdkit_t) - virt_rw_svirt_image(nbdkit_t) - virt_rw_svirt_image_dirs(nbdkit_t) - virt_search_lib(nbdkit_t) - virt_stream_connect_svirt(nbdkit_t) -') - - -# FIXME: It would be nice to allow libvirt to transition nbdkit_exec_t to -# nbdkit_t when libvirtd was started manually from the commandline (i.e. in -# unconfined_t), but we don't want this transition to happen automatically -# when starting directly from the shell. I'm not sure how to achieve this... -#nbdkit_domtrans(unconfined_t, nbdkit_exec_t, nbdkit_t) diff --git a/sources b/sources index f8f8acc..f22feaa 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.47.1.tar.gz) = 0c9d1da067bf1f7b6ba38dad33e86dff1fe893ff2e4a349dfcd6b259295fd00670e6af6c195e130d8a847520a78a730003315e60afda8eb94758e2195bd1a775 -SHA512 (nbdkit-1.47.1.tar.gz.sig) = 131d9bc191155186408ef7a577f9d2a2cc1fd1b53cbda755d19ff8de1341479a517fab79cc87f04a1bca5518046c24a8647cb4949d5c4d6fdca19ca968604c16 +SHA512 (nbdkit-1.10.3.tar.gz) = 8faed51b89c020ed480eb8c1e16ac628471cd62638a2a0ac993bf16f286ad9938532bf73c2d780a7dd0f13cabe38c3ccd2e2647ef88b7163287e02ceb1cc1b41 +SHA512 (nbdkit-1.10.3.tar.gz.sig) = fb4929454b43fb08367972f9a46892e36300f38dc3e02597b2f5e32c91ef626d2f5a4999a8c489077e78e8cdfa73c0ee95ffa3fa47c8689f5838ca97df8b7d59 diff --git a/tests/basic-test.sh b/tests/basic-test.sh deleted file mode 100755 index 07eb459..0000000 --- a/tests/basic-test.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -set -e -set -x - -# Run nbdkit and check that nbdinfo can connect back to it. -nbdkit -U - memory 1G --run 'nbdinfo "$uri"' diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100755 index 28c6a43..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,12 +0,0 @@ -- hosts: localhost - roles: - - role: standard-test-basic - tags: - - classic - required_packages: - - libnbd - - nbdkit - tests: - - simple: - dir: . - run: ./basic-test.sh