bstinson / rpms / rpm-ostree

Forked from rpms/rpm-ostree 5 years ago
Clone

Blame SPECS/rpm-ostree.spec

7e991d
%global bubblewrap_version 0.2.0
ce65f3
Summary: Client side upgrade program and server side compose tool
ce65f3
Name: rpm-ostree
7e991d
Version: 2018.1
7e991d
Release: 3.atomic%{?dist}
ce65f3
#VCS: https://github.com/cgwalters/rpm-ostree
ce65f3
# This tarball is generated via "make -f Makefile.dist-packaging dist-snapshot"
ad8abb
# because github doesn't support placing submodules in tarballs and RPM
ad8abb
# doesn't understand git.
ce65f3
Source0: rpm-ostree-%{version}.tar.xz
ce65f3
License: LGPLv2+
c1ce34
URL: https://github.com/projectatomic/rpm-ostree
7d8bc5
Source1: https://github.com/projectatomic/bubblewrap/releases/download/v%{bubblewrap_version}/bubblewrap-%{bubblewrap_version}.tar.xz
bf70fe
7e991d
Patch0: 0001-postprocess-Special-case-NFS-state-files.patch
7e991d
bf70fe
Requires: ostree-fuse
ad8abb
ce65f3
# We always run autogen.sh
ad8abb
BuildRequires: autoconf automake libtool git
ce65f3
# For docs
ad8abb
BuildRequires: chrpath
ce65f3
BuildRequires: gtk-doc
ce65f3
BuildRequires: gnome-common
50e168
BuildRequires: /usr/bin/g-ir-scanner
ad8abb
# Core requirements
7e991d
BuildRequires: pkgconfig(ostree-1) >= 2017.15
50e168
BuildRequires: pkgconfig(polkit-gobject-1)
ce65f3
BuildRequires: pkgconfig(json-glib-1.0)
ce65f3
BuildRequires: pkgconfig(rpm)
ad8abb
BuildRequires: pkgconfig(libarchive)
bf70fe
BuildRequires: pkgconfig(libsystemd)
bf70fe
BuildRequires: gperf
ce65f3
BuildRequires: libcap-devel
c1ce34
BuildRequires: libattr-devel
ce65f3
ad8abb
# We currently interact directly with librepo
ad8abb
BuildRequires: pkgconfig(librepo)
ad8abb
31db85
# libdnf bundling
ad8abb
# We're using RPATH to pick up our bundled version
0a1e61
%global __requires_exclude ^libdnf[.]so[.].*$
ad8abb
9376d4
# Our bundled libdnf.so.1 is for us only
9376d4
%global __provides_exclude_from ^%{_libdir}/%{name}/.*$
9376d4
ad8abb
BuildRequires: cmake
ad8abb
BuildRequires: pkgconfig(expat)
ad8abb
BuildRequires: pkgconfig(check)
ad8abb
BuildRequires: python-devel
ad8abb
BuildRequires: python-sphinx
ad8abb
%if (0%{?rhel} != 0 && 0%{?rhel} <= 7)
ad8abb
BuildRequires: libsolv-devel
ad8abb
%else
ad8abb
BuildRequires: pkgconfig(libsolv)
ad8abb
%endif
ce65f3
50e168
# explicit requires since we don't version symbols
50e168
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
50e168
ce65f3
%description
ce65f3
This tool binds together the world of RPM packages with the OSTree
ce65f3
model of bootable filesystem trees.  It provides commands usable both
ce65f3
on client systems as well as server-side composes.
ce65f3
50e168
%package libs
50e168
Summary: Shared library for rpm-ostree
50e168
Group: Development/Libraries
50e168
50e168
%description libs
50e168
The %{name}-libs package includes the shared library for %{name}.
50e168
88798c
%package devel
88798c
Summary: Development headers for %{name}
88798c
Group: Development/Libraries
50e168
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
88798c
88798c
%description devel
50e168
The %{name}-devel package includes the header files for %{name}-libs.
88798c
ce65f3
%prep
f13179
%autosetup -Sgit -n %{name}-%{version}
ad8abb
tar xf %{SOURCE1}
ce65f3
ce65f3
%build
bf70fe
(cd bubblewrap-%{bubblewrap_version} &&
7d8bc5
 if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; fi &&
bf70fe
 %configure --disable-silent-rules
ad8abb
 make %{?_smp_mflags}
ad8abb
)
ce65f3
env NOCONFIGURE=1 ./autogen.sh
bf70fe
%configure --disable-silent-rules --enable-gtk-doc  --with-bubblewrap=%{_libdir}/rpm-ostree/bwrap
ce65f3
make %{?_smp_mflags}
ce65f3
ce65f3
%install
bf70fe
(cd bubblewrap-%{bubblewrap_version} &&
bf70fe
 install -d -m 0755 $RPM_BUILD_ROOT/%{_libdir}/rpm-ostree
bf70fe
 install -m 0755 bwrap $RPM_BUILD_ROOT/%{_libdir}/rpm-ostree
ad8abb
)
ce65f3
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p -c"
88798c
find $RPM_BUILD_ROOT -name '*.la' -delete
ce65f3
c1ce34
# I try to do continuous delivery via rpmdistro-gitoverlay while
c1ce34
# reusing the existing spec files.  Currently RPM only supports
c1ce34
# mandatory file entries.  What this is doing is making each file
c1ce34
# entry optional - if it exists it will be picked up.  That
c1ce34
# way the same spec file works more easily across multiple versions where e.g. an
c1ce34
# older version might not have a systemd unit file.
c1ce34
cat > autofiles.py <
c1ce34
#!/usr/bin/python
c1ce34
import os,sys,glob
c1ce34
os.chdir(os.environ['RPM_BUILD_ROOT'])
c1ce34
for line in sys.argv[1:]:
c1ce34
    if line == '':
c1ce34
        break
c1ce34
    if line[0] != '/':
c1ce34
        sys.stdout.write(line + '\n')
c1ce34
    else:
c1ce34
        files = glob.glob(line[1:])
c1ce34
        if len(files) > 0:
c1ce34
            sys.stderr.write('{0} matched {1} files\n'.format(line, len(files)))
c1ce34
            sys.stdout.write(line + '\n')
c1ce34
        else:
c1ce34
            sys.stderr.write('{0} did not match any files\n'.format(line))
c1ce34
EOF
c1ce34
python autofiles.py > files \
c1ce34
  '%{_bindir}/*' \
c1ce34
  '%{_libdir}/%{name}' \
c1ce34
  '%{_mandir}/man*/*' \
c1ce34
  '%{_sysconfdir}/dbus-1/system.d/*' \
7e991d
  '%{_sysconfdir}/rpm-ostreed.conf' \
c1ce34
  '%{_prefix}/lib/systemd/system/*' \
c1ce34
  '%{_libexecdir}/rpm-ostree*' \
50e168
  '%{_datadir}/polkit-1/actions/*.policy' \
c1ce34
  '%{_datadir}/dbus-1/system-services'
50e168
python autofiles.py > files.lib \
50e168
  '%{_libdir}/*.so.*' \
50e168
  '%{_libdir}/girepository-1.0/*.typelib'
c1ce34
python autofiles.py > files.devel \
c1ce34
  '%{_libdir}/lib*.so' \
c1ce34
  '%{_includedir}/*' \
50e168
  '%{_datadir}/dbus-1/interfaces/org.projectatomic.rpmostree1.xml' \
c1ce34
  '%{_libdir}/pkgconfig/*' \
c1ce34
  '%{_datadir}/gtk-doc/html/*' \
c1ce34
  '%{_datadir}/gir-1.0/*-1.0.gir'
c1ce34
c1ce34
%files -f files
ce65f3
%doc COPYING README.md
88798c
50e168
%files libs -f files.lib
50e168
c1ce34
%files devel -f files.devel
ce65f3
ce65f3
%changelog
7e991d
* Wed Feb 21 2018 Jonathan Lebon <jlebon@redhat.com> - 2018.1-3.atomic
7e991d
- Actually add NFS patch to spec file
7e991d
7e991d
* Tue Feb 06 2018 Colin Walters <walters@redhat.com> - 2018.1-2.atomic
7e991d
- Add patch for NFS state files
7e991d
- Resolves: #1427537
7e991d
7e991d
* Thu Feb 01 2018 Jonathan Lebon <jlebon@redhat.com> - 2018.1-1.atomic
7e991d
- New upstream release
7e991d
- Resolves: #1536616
7e991d
31db85
* Tue Dec 05 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.11-1.atomic
31db85
- New upstream release
31db85
- Resolves: #1518282
31db85
50e168
* Tue Sep 26 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.9-2.atomic
50e168
- Add explicit req on -libs subpackage
50e168
50e168
* Mon Sep 25 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.9-1.atomic
50e168
- New upstream release
50e168
- Resolves: #1494120
50e168
43e38f
* Tue Aug 08 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.6-4.atomic
43e38f
- Backport fix to allow rollback more than once
43e38f
- Resolves: #1478083
43e38f
9376d4
* Fri Jul 07 2017 Colin Walters <walters@redhat.com> - 2017.6-3.atomic
9376d4
- Backport patch to fix metadata-only repos
9376d4
9376d4
* Thu Jun 15 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.6-2.atomic
9376d4
- Backport patch to fix SELinux workaround for policy move to /var
9376d4
- Backport patch to fix /var/run potentially being a directory
9376d4
9376d4
* Fri Jun 02 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.6-1.atomic
9376d4
- New upstream release
9376d4
- Resolves: #1457964
9376d4
bd4bcc
* Tue May 02 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.5-1.atomic
bd4bcc
- New upstream release
bd4bcc
- Resolves: #1447070
bd4bcc
0a1e61
* Tue Mar 21 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.3-2.atomic
0a1e61
- Add BR on gobject-introspection-devel.
0a1e61
0a1e61
* Fri Mar 17 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.3-1.atomic
0a1e61
- New upstream release
0a1e61
- Resolves: #1433392
0a1e61
7d8bc5
* Tue Feb 14 2017 Colin Walters <walters@verbum.org> - 2017.1-5.atomic
7d8bc5
- Add patch to do GPG checking before importing/installing RPMs
7d8bc5
- Resolves: #1422157
7d8bc5
7d8bc5
* Tue Feb 14 2017 Colin Walters <walters@verbum.org> - 2017.1-4.atomic
7d8bc5
- Backport patch for unconfigured-state handling
7d8bc5
- Resolves: #1421867
7d8bc5
7d8bc5
* Mon Feb 13 2017 Jonathan Lebon <jlebon@redhat.com> - 2017.1-3.atomic
7d8bc5
- Resolves: #1421781
7d8bc5
7d8bc5
* Tue Jan 24 2017 Colin Walters <walters@verbum.org> - 2017.1-2.atomic
7d8bc5
- New upstream version
7d8bc5
  Resolves: #1416089
7d8bc5
- Bump bubblewrap to latest release too
7d8bc5
4e5422
* Mon Dec 12 2016 walters@redhat.com - 2016.13-1.atomic
4e5422
- New upstream version
4e5422
- Resolves: #1403933
4e5422
cc7205
* Mon Oct 24 2016 Colin Walters <walters@redhat.com>
cc7205
- New upstream version
cc7205
5b423c
* Thu Sep 08 2016 walters@redhat.com - 2016.10-1
5b423c
- New upstream version
5b423c
bf70fe
* Mon Jul 25 2016 Colin Walters <walters@redhat.com> - 2016.5-1.atomic
bf70fe
- New upstream version
bf70fe
bf70fe
* Fri Jul 08 2016 Colin Walters <walters@redhat.com> - 2016.4-2.atomic
bf70fe
- New upstream version
bf70fe
ad8abb
* Tue Jun 14 2016 Colin Walters <walters@redhat.com> - 2016.3-3.atomic
ad8abb
- New upstream version
ad8abb
ad8abb
* Tue Apr 19 2016 Colin Walters <walters@redhat.com> - 2016.1-2.atomic
ad8abb
- New upstream version
ad8abb
c1ce34
* Tue Jan 12 2016 Colin Walters <walters@redhat.com> - 2015.11-2.atomic
c1ce34
- New upstream version
c1ce34
  Resolves: #1291841
c1ce34
  Resolves: #1274070
c1ce34
c1ce34
* Tue Oct 06 2015 Colin Walters <walters@redhat.com> - 2015.9-2.atomic
c1ce34
- New upstream version
c1ce34
c1ce34
* Fri Sep 25 2015 Colin Walters <walters@redhat.com> - 2015.5-3.atomic
c1ce34
- Rebuild
c1ce34
88798c
* Mon May 18 2015 Colin Walters <walters@redhat.com> - 2015.5-2.atomic
88798c
- Rebuild against latest libhif
88798c
88798c
* Fri May 15 2015 Colin Walters <walters@redhat.com> - 2015.5-1.atomic
88798c
- Rebase to Fedora rawhide
88798c
88798c
* Wed May 13 2015 Colin Walters <walters@redhat.com> - 2015.3-4.atomic
88798c
- Drop /usr/bin/atomic like we did for -client; this fixes installing
88798c
  with the new atomic package.
88798c
f13179
* Fri Apr 17 2015 Colin Walters <walters@redhat.com> - 2015.3-3.atomic
f13179
- Backport client side GPG verification status patches
f13179
ce65f3
* Fri Jan 23 2015 Colin Walters <walters@redhat.com> - 2015.3-2.atomic
ce65f3
- New upstream release
ce65f3
ce65f3
* Fri Jan 09 2015 Colin Walters <walters@redhat.com> - 2015.2-2.atomic
ce65f3
- New upstream release
ce65f3
ce65f3
* Fri Dec 19 2014 Colin Walters <walters@redhat.com> - 2014.114-2.atomic
ce65f3
- Rebuild for 7.1
ce65f3
ce65f3
* Fri Dec 05 2014 Colin Walters <walters@redhat.com> - 2014.114-1.atomic
ce65f3
- New upstream release
ce65f3
ce65f3
* Thu Nov 20 2014 Colin Walters <walters@redhat.com> - 2014.111-2.atomic
ce65f3
- New upstream release
ce65f3
ce65f3
* Fri Oct 24 2014 Colin Walters <walters@redhat.com> - 2014.109-1.atomic
ce65f3
- New upstream release
ce65f3
ce65f3
* Thu Oct 16 2014 Colin Walters <walters@redhat.com>
ce65f3
- New upstream version
ce65f3
ce65f3
* Tue Oct 07 2014 Colin Walters <walters@redhat.com> - 2014.107-2.atomic
ce65f3
- New upstream version
ce65f3
ce65f3
* Mon Sep 29 2014 Colin Walters <walters@redhat.com> - 2014.106-4.atomic
ce65f3
- rebuilt
ce65f3
ce65f3
* Mon Sep 29 2014 Colin Walters <walters@redhat.com> - 2014.106-3.atomic
ce65f3
- rebuilt
ce65f3
ce65f3
* Tue Sep 09 2014 Colin Walters <walters@redhat.com> - 2014.106-2.atomic
ce65f3
- New upstream release
ce65f3
- BR/R OSTree 2014.6
ce65f3
ce65f3
* Fri Aug 08 2014 Colin Walters <walters@redhat.com> - 2014.105-2.atomic
ce65f3
- New upstream release
ce65f3
ce65f3
* Mon Jul 14 2014 Colin Walters <walters@redhat.com>
ce65f3
- New upstream version
ce65f3
ce65f3
* Fri May 23 2014 Colin Walters <walters@redhat.com>
ce65f3
- Previous autobuilder code is split off into rpm-ostree-toolbox
ce65f3
ce65f3
* Sat Mar 22 2014 Colin Walters <walters@verbum.org> - 2014.6.3.g5707fa7-1
ce65f3
- New git snapshot, add rpm-ostree-sign to file list
ce65f3
ce65f3
* Sat Mar 22 2014 Colin Walters <walters@verbum.org> - 2014.6-1
ce65f3
- New upstream version
ce65f3
ce65f3
* Fri Mar 07 2014 Colin Walters <walters@verbum.org> - 2014.5-1
ce65f3
- Initial package
ce65f3