aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTing-Wei Lan <lantw44@gmail.com>2019-09-18 20:49:50 +0800
committerTing-Wei Lan <lantw44@gmail.com>2019-09-18 20:49:50 +0800
commit2d97b369d9db2d147cb4d9e07a82e38bb7c08322 (patch)
treeb249784a500be25d6afe94edd3b0d8c3ceacc925
parent5a29928ac7d8c480a31b83567c2f939fae1b8806 (diff)
downloadcopr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.tar
copr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.tar.gz
copr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.tar.bz2
copr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.tar.lz
copr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.tar.xz
copr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.tar.zst
copr-rpm-spec-2d97b369d9db2d147cb4d9e07a82e38bb7c08322.zip
guix: Guix 1.0.1 -> 1.0.2-0.1.20190917
Upstream still calls this version 1.0.1, but it seems that the preferred way to package unreleased snapshots in RPM is to use the next version number. The commit hash used here is obtained from the source code of guix itself. The reason to update it to a git snapshot is to fix test failure and 'guix pull' command, which has been broken for months. https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/package-management.scm?id=f8ddfb505a51a2c794531e090dd7ee97022d1096#n121
-rw-r--r--guix/guile-json/guile-json.spec7
-rw-r--r--guix/guix/guix.spec57
-rw-r--r--guix/lzlib/lzlib.spec70
3 files changed, 115 insertions, 19 deletions
diff --git a/guix/guile-json/guile-json.spec b/guix/guile-json/guile-json.spec
index d03d58b..0543f4b 100644
--- a/guix/guile-json/guile-json.spec
+++ b/guix/guile-json/guile-json.spec
@@ -1,8 +1,8 @@
%global debug_package %{nil}
Name: guile-json
-Version: 1.3.2
-Release: 4%{?dist}
+Version: 3.2.0
+Release: 1%{?dist}
Summary: JSON module for Guile
License: GPLv3+
@@ -54,6 +54,9 @@ features:
%changelog
+* Wed Sep 18 2019 Ting-Wei Lan <lantw44@gmail.com> - 3.2.0-1
+- Update to 3.2.0
+
* Tue Sep 17 2019 Ting-Wei Lan <lantw44@gmail.com> - 1.3.2-4
- Rebuilt for Fedora 31 and 32
diff --git a/guix/guix/guix.spec b/guix/guix/guix.spec
index 50037c2..dd04f7b 100644
--- a/guix/guix/guix.spec
+++ b/guix/guix/guix.spec
@@ -1,3 +1,6 @@
+%global commit 0ed97e69805253656df929a6ad678016aa81f08a
+%global shortcommit %(c=%{commit}; echo ${c:0:7})
+
# Bootstrap binaries provided by guix don't have build IDs
%global _missing_build_ids_terminate_build 0
@@ -5,13 +8,14 @@
%global selinuxmodule guix-daemon
Name: guix
-Version: 1.0.1
-Release: 2%{?dist}
+Version: 1.0.2
+Release: 0.1.20190917git%{shortcommit}%{?dist}
Summary: A purely functional package manager for the GNU system
License: GPLv3+
URL: https://www.gnu.org/software/guix
-Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
+# Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
+Source0: https://git.savannah.gnu.org/cgit/guix.git/snapshot/guix-%{commit}.tar.gz
%global guix_user guixbuild
%global guix_group guixbuild
@@ -39,12 +43,14 @@ Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
# bytecode and recompile them from sources to pass the test.
BuildRequires: gcc-c++
+BuildRequires: autoconf, automake, gettext-devel, po4a, help2man, texinfo
BuildRequires: pkgconfig(guile-2.2) >= 2.2.4
BuildRequires: pkgconfig(sqlite3)
-BuildRequires: zlib-devel, bzip2-devel, libgcrypt-devel
+BuildRequires: zlib-devel, lzlib-devel, bzip2-devel, libgcrypt-devel
BuildRequires: gettext, help2man, graphviz
BuildRequires: bash-completion, fish
-BuildRequires: guile-git, guile-gcrypt, guile-json, guile-sqlite3, guile-ssh
+BuildRequires: guile-git, guile-gcrypt, guile-json >= 3, guile-sqlite3
+BuildRequires: guile-ssh
%if 0%{?fedora} >= 31
BuildRequires: gnutls-guile
%else
@@ -56,7 +62,7 @@ BuildRequires: systemd
%{?systemd_requires}
Requires: guile22 >= 2.2.4
-Requires: guile-git, guile-gcrypt, guile-sqlite3
+Requires: guile-git, guile-gcrypt, guile-json >= 3, guile-sqlite3
%if 0%{?fedora} >= 31
Requires: gnutls-guile
%else
@@ -65,6 +71,8 @@ Requires: gnutls-guile22
Requires: gzip, bzip2, xz
Requires: selinux-policy
Requires: %{_bindir}/dot
+Requires: %{_libdir}/libz.so
+Requires: %{_libdir}/liblz.so
Requires: %{_libdir}/libgcrypt.so
Requires(post): /usr/sbin/useradd
Requires(post): /usr/sbin/usermod
@@ -75,7 +83,7 @@ Requires(post): libselinux-utils, policycoreutils
Requires(post): info
Requires(preun): info
-Recommends: guile-json, guile-ssh
+Recommends: guile-ssh
Suggests: emacs-guix
%description
@@ -88,10 +96,16 @@ composed.
%prep
-%autosetup -p1
+%autosetup -n %{name}-%{commit} -p1
+# The commit hash is too long to run tests. We have to make it shorter.
+cd ..
+rm -rf %{name}-%{shortcommit}
+mv %{name}-%{commit} %{name}-%{shortcommit}
+%setup -n %{name}-%{shortcommit} -D -T
%build
+./bootstrap
# Rename test-tmp to t to save the length of the path.
%configure \
--disable-rpath \
@@ -136,10 +150,16 @@ if [ "$(id -u)" = 0 ]; then
chown -R nobody:nobody %{_topdir}
setfacl -m u:nobody:x /builddir
fi
- runuser -u nobody -- %{__make} %{?_smp_mflags} check && exit 0
+ runuser -u nobody -- %{__make} %{?_smp_mflags} check
else
- %{__make} %{?_smp_mflags} check && exit 0
+ %{__make} %{?_smp_mflags} check
+fi
+# print the log on failure
+ret="$?"
+if [ "${ret}" != 0 ]; then
+ cat test-suite.log
fi
+exit "${ret}"
%install
@@ -239,12 +259,6 @@ fi
%doc AUTHORS ChangeLog CODE-OF-CONDUCT NEWS README ROADMAP THANKS TODO
%{_bindir}/guix
%{_bindir}/guix-daemon
-%dir %{_libexecdir}/guix
-%{_libexecdir}/guix/authenticate
-%{_libexecdir}/guix/download
-%{_libexecdir}/guix/list-runtime-roots
-%{_libexecdir}/guix/offload
-%{_libexecdir}/guix/substitute
%{guile_source_dir}/gnu.scm
%{guile_ccache_dir}/gnu.go
%dir %{guile_source_dir}/gnu
@@ -269,6 +283,12 @@ fi
%{guile_source_dir}/gnu/installer/logo.txt
%dir %{guile_source_dir}/gnu/installer/newt
%{guile_source_dir}/gnu/installer/newt/*.scm
+%{guile_source_dir}/gnu/machine.scm
+%{guile_ccache_dir}/gnu/machine.go
+%dir %{guile_source_dir}/gnu/machine
+%dir %{guile_ccache_dir}/gnu/machine
+%{guile_source_dir}/gnu/machine/ssh.scm
+%{guile_ccache_dir}/gnu/machine/ssh.go
%{guile_source_dir}/gnu/packages.scm
%{guile_ccache_dir}/gnu/packages.go
%dir %{guile_source_dir}/gnu/packages
@@ -387,7 +407,6 @@ fi
%{_datadir}/guix/ci.guix.gnu.org.pub
%{_datadir}/guix/ci.guix.info.pub
%{_datadir}/guix/berlin.guixsd.org.pub
-%{_datadir}/guix/hydra.gnu.org.pub
%{_datadir}/selinux/packages/%{selinuxmodule}.cil
%{_infodir}/%{name}.info*
%{_infodir}/%{name}.de.info*
@@ -438,6 +457,10 @@ fi
%changelog
+* Wed Sep 18 2019 Ting-Wei Lan <lantw44@gmail.com> - 1.0.2-0.1.20190917git0ed97e6
+- Update to a git snapshot from master branch to fix tests
+- Move guile-json from Recommends to Requires because emacs-guix needs it
+
* Tue Sep 17 2019 Ting-Wei Lan <lantw44@gmail.com> - 1.0.1-2
- Use gnutls-guile on Fedora 31 and later
diff --git a/guix/lzlib/lzlib.spec b/guix/lzlib/lzlib.spec
new file mode 100644
index 0000000..15e02e4
--- /dev/null
+++ b/guix/lzlib/lzlib.spec
@@ -0,0 +1,70 @@
+# This spec file is based on:
+# [1] https://github.com/PhantomX/chinforpms/blob/991712ffa984e7fa/lzlib/lzlib.spec
+
+Name: lzlib
+Version: 1.11
+Release: 2%{?dist}
+Summary: A compression library for the lzip file format
+
+License: GPLv2+
+URL: https://www.nongnu.org/lzip/%{name}.html
+Source0: https://download.savannah.gnu.org/releases/lzip/%{name}/%{name}-%{version}.tar.gz
+
+BuildRequires: gcc
+
+
+%description
+Lzlib is a data compression library providing in-memory LZMA compression
+and decompression functions, including integrity checking of the
+decompressed data.
+
+
+%package devel
+Summary: Development files for %{name}
+Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
+
+%description devel
+The %{name}-devel package contains libraries and header files for
+developing applications that use %{name}.
+
+
+%prep
+%autosetup -p1
+
+
+%build
+%configure \
+ --disable-static \
+ --enable-shared \
+ --disable-ldconfig \
+ CFLAGS+='%{build_cflags}' \
+ LDFLAGS='%{build_ldflags}'
+%make_build
+
+
+%install
+%make_install
+
+
+
+%files
+%license COPYING COPYING.GPL
+%doc AUTHORS ChangeLog NEWS README
+%{_libdir}/liblz.so.*
+%{_infodir}/%{name}.info*
+%exclude %{_infodir}/dir
+
+%files devel
+%{_includedir}/%{name}.h
+%{_libdir}/liblz.so
+
+
+%changelog
+* Wed Sep 18 2019 Ting-Wei Lan <lantw44@gmail.com> - 1.11-2
+- Use HTTPS links
+- Use CFLAGS+= instead of CFLAGS=
+- Use exclude macro to drop info dir file
+- Don't use wildcards to specify the name of the library
+
+* Fri May 31 2019 Phantom X <megaphantomx at bol dot com dot br> - 1.11-1
+- Initial spec