%global bubblewrap_version 0.1.1
Summary: Client side upgrade program
Name: rpm-ostree-client
Version: 2016.13
Release: 1.atomic%{?dist}
#VCS: https://github.com/cgwalters/rpm-ostree
# This tarball is generated via "make -f Makefile.dist-packaging dist-snapshot-without-compose-tooling"
Source0: rpm-ostree-client-%{version}.tar.xz
License: LGPLv2+
URL: https://github.com/projectatomic/rpm-ostree
Source1: bubblewrap-%{bubblewrap_version}.tar.gz
Patch1: 0001-Revert-selector-prefer-obsoletes-Related-RhBug-10965.patch
Requires: ostree-fuse
# We always run autogen.sh
BuildRequires: autoconf automake libtool git
# For docs
BuildRequires: chrpath
BuildRequires: gtk-doc
BuildRequires: gnome-common
BuildRequires: gobject-introspection
# Core requirements
BuildRequires: pkgconfig(ostree-1) >= 2015.1
BuildRequires: pkgconfig(libgsystem)
BuildRequires: pkgconfig(json-glib-1.0)
BuildRequires: pkgconfig(rpm)
BuildRequires: pkgconfig(libarchive)
BuildRequires: pkgconfig(libsystemd)
BuildRequires: gperf
BuildRequires: libcap-devel
BuildRequires: libattr-devel
# libhif bundling
# We currently interact directly with librepo
BuildRequires: pkgconfig(librepo)
# We're using RPATH to pick up our bundled version
%global __requires_exclude ^libhif[.]so[.].*$
BuildRequires: cmake
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(check)
BuildRequires: python-devel
BuildRequires: python-sphinx
%if (0%{?rhel} != 0 && 0%{?rhel} <= 7)
BuildRequires: libsolv-devel
%else
BuildRequires: pkgconfig(libsolv)
%endif
Conflicts: rpm-ostree
%description
This tool binds together the world of RPM packages with
the OSTree model of bootable filesystem trees. It provides commands
usable on client systems to upgrade and rollback.
%prep
%autosetup -Sgit -n %{name}-%{version}
tar xf %{SOURCE1}
%build
(cd bubblewrap-%{bubblewrap_version} &&
env NOCONFIGURE=1 ./autogen.sh &&
%configure --disable-silent-rules
make %{?_smp_mflags}
)
env NOCONFIGURE=1 ./autogen.sh
%configure --disable-silent-rules --enable-gtk-doc --with-bubblewrap=%{_libdir}/rpm-ostree/bwrap --disable-compose-tooling
make %{?_smp_mflags}
%install
(cd bubblewrap-%{bubblewrap_version} &&
install -d -m 0755 $RPM_BUILD_ROOT/%{_libdir}/rpm-ostree
install -m 0755 bwrap $RPM_BUILD_ROOT/%{_libdir}/rpm-ostree
)
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p -c"
find $RPM_BUILD_ROOT -name '*.la' -delete
rm $RPM_BUILD_ROOT/%{_libdir}/lib*.so
rm $RPM_BUILD_ROOT/%{_includedir} -rf
rm $RPM_BUILD_ROOT/%{_libdir}/pkgconfig -rf
rm $RPM_BUILD_ROOT/%{_datadir}/gtk-doc/html -rf
rm $RPM_BUILD_ROOT/%{_datadir}/gir-1.0 -rf
# I try to do continuous delivery via rpmdistro-gitoverlay while
# reusing the existing spec files. Currently RPM only supports
# mandatory file entries. What this is doing is making each file
# entry optional - if it exists it will be picked up. That
# way the same spec file works more easily across multiple versions where e.g. an
# older version might not have a systemd unit file.
cat > autofiles.py <<EOF
#!/usr/bin/python
import os,sys,glob
os.chdir(os.environ['RPM_BUILD_ROOT'])
for line in sys.argv[1:]:
if line == '':
break
assert(line[0] == '/')
files = glob.glob(line[1:])
if len(files) > 0:
sys.stderr.write('{0} matched {1} files\n'.format(line, len(files)))
sys.stdout.write(line)
sys.stdout.write('\n')
else:
sys.stderr.write('{0} did not match any files\n'.format(line))
EOF
python autofiles.py > files \
'%{_bindir}/*' \
'%{_libdir}/rpm-ostree/' \
'%{_libdir}/*.so.*' \
'%{_mandir}/man*/*' \
'%{_libdir}/girepository-1.0/*.typelib' \
'%{_sysconfdir}/dbus-1/system.d/*' \
'%{_prefix}/lib/systemd/system/*' \
'%{_libexecdir}/rpm-ostree*' \
'%{_datadir}/dbus-1/system-services'
%files -f files
%doc COPYING README.md
%changelog
* Mon Dec 12 2016 walters@redhat.com - 2016.13-1.atomic
- New upstream version
- Resolves: #1403933
* Mon Oct 24 2016 Colin Walters <walters@redhat.com>
- New upstream version
* Thu Sep 08 2016 walters@redhat.com - 2016.10-1
- New upstream version
* Mon Jul 25 2016 Colin Walters <walters@redhat.com> - 2016.5-1.atomic
- New upstream version
* Fri Jul 08 2016 Colin Walters <walters@redhat.com> - 2016.4-2.atomic
- New upstream version
* Tue Dec 15 2015 Colin Walters <walters@redhat.com> - 2015.11-1.atomic.1
- New upstream version
* Tue Oct 06 2015 Colin Walters <walters@redhat.com> - 2015.9-2.atomic.1
- New upstream version
* Fri Sep 25 2015 Colin Walters <walters@redhat.com> - 2015.5-4.atomic.1
- Rebuild
* Wed Jun 10 2015 Colin Walters <walters@redhat.com> - 2015.5-4.atomic
- Backport version number patch
* Mon May 18 2015 Colin Walters <walters@redhat.com> - 2015.5-3.atomic
- Drop devel subpackage, use the main rpm-ostree client package for that
* Mon May 18 2015 Colin Walters <walters@redhat.com> - 2015.5-2.atomic
- Rebuild against latest libhif
* Fri May 15 2015 Colin Walters <walters@redhat.com> - 2015.5-1.atomic
- Rebase to Fedora rawhide
* Fri Apr 17 2015 Colin Walters <walters@redhat.com> - 2015.3-3.atomic
- Backport client side GPG verification status patches
* Fri Jan 23 2015 Colin Walters <walters@redhat.com> - 2015.3-2.atomic
- New usptream release
* Fri Jan 23 2015 Colin Walters <walters@redhat.com> - 2015.2-3.atomic
- Drop /usr/bin/atomic symlink, this name is now taken by the docker
package.
* Fri Jan 09 2015 Colin Walters <walters@redhat.com> - 2015.2-2.atomic
- New upstream version
* Fri Dec 19 2014 Colin Walters <walters@redhat.com> - 2014.109-3.atomic
- Rebuild for 7.1
* Fri Oct 24 2014 Colin Walters <walters@redhat.com> - 2014.109-2.atomic
- New upstream version
* Thu Oct 16 2014 Colin Walters <walters@redhat.com> - 2014.108-2.atomic
- New upstream version
* Mon Sep 29 2014 Colin Walters <walters@redhat.com> - 2014.106.2.g0f16e2e-4.atomic
- rebuilt
* Mon Sep 29 2014 Colin Walters <walters@redhat.com> - 2014.106.2.g0f16e2e-3.atomic
- rebuilt
* Mon Sep 29 2014 Colin Walters <walters@redhat.com> - 2014.106.2.g0f16e2e-2.atomic
- rebuilt
* Wed Sep 17 2014 Colin Walters <walters@redhat.com>
- Initial split package for compose tooling