diff --git a/.gitignore b/.gitignore index 72db243..8bef6e3 100644 --- a/.gitignore +++ b/.gitignore @@ -5,21 +5,3 @@ /aerc-0.10.0.tar.gz /aerc-0.12.0.tar.gz /aerc-0.13.0.tar.gz -/aerc-0.14.0.tar.gz -/aerc-0.15.2.tar.gz -/aerc-0.16.0.tar.gz -/aerc-0.16.0-vendor.tar.gz -/aerc-0.17.0.tar.gz -/aerc-0.17.0-vendor.tar.gz -/aerc-0.18.0.tar.gz -/aerc-0.18.0-vendor.tar.bz2 -/aerc-0.18.2.tar.gz -/aerc-0.18.2-vendor.tar.bz2 -/aerc-0.19.0.tar.gz -/aerc-0.19.0-vendor.tar.bz2 -/aerc-0.20.0.tar.gz -/aerc-0.20.0-vendor.tar.bz2 -/aerc-0.20.1.tar.gz -/aerc-0.20.1-vendor.tar.bz2 -/aerc-0.21.0.tar.gz -/aerc-0.21.0-vendor.tar.bz2 diff --git a/aerc.spec b/aerc.spec index d3ceec8..02bfb9c 100644 --- a/aerc.spec +++ b/aerc.spec @@ -1,111 +1,87 @@ -# Generated by go2rpm 1.14.0 -%bcond check 1 - -# We use vendored deps, as aerc has a lot of dependencies and is picky about -# them. Upstream does a good job at keeping them updated. aerc is prone to -# crashes with Fedora's dependency versions, many of which are out of date. +# Generated by go2rpm 1.6.0 +%bcond_without check # https://git.sr.ht/~rjarry/aerc %global goipath git.sr.ht/~rjarry/aerc -%global version0 0.21.0 +Version: 0.13.0 +%global topdir %{name}-%{version} -%gometa -L -f +%gometa %global common_description %{expand: -Aerc is an email client that runs in your terminal. It is highly +Aerc is an email client that runs in your terminal. It's highly efficient and extensible, perfect for the discerning hacker.} +%global golicenses LICENSE +%global godocs doc README.md + Name: aerc -Version: %{forgeversion} Release: %autorelease Summary: Email client for your terminal -SourceLicense: MIT -# Generated by go-vendor-tools -License: MIT AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC +License: MIT URL: %{gourl} -Source0: %{gosource} -# Generated by go-vendor-tools -Source1: %{archivename}-vendor.tar.bz2 -Source2: go-vendor-tools.toml +# The forge macros don't support Sourcehut. +# https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/209 +Source: %{gourl}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +BuildRequires: scdoc BuildRequires: desktop-file-utils -# wrap and colorize filters are written in C -BuildRequires: gcc -BuildRequires: glibc-all-langpacks -BuildRequires: go-vendor-tools BuildRequires: gnupg BuildRequires: notmuch-devel -BuildRequires: scdoc -# used in the builtin `html` filter -Requires: w3m -# aerc is mainly targeted at developers using a git+email workflow -Recommends: git-email -# for email signing/verification, encryption/decryption -Recommends: gnupg2 -# for network isolation with unshare in the builtin `html` filter -Recommends: util-linux +Requires: notmuch -%description %{common_description} +%description +%{common_description} %prep -%goprep -A -%setup -q -T -D -a1 %{forgesetupargs} -%autopatch -p1 +%goprep + +# Disable building of aerc that we handle manually in the SPEC and +# preserve mtimes +sed -e 's|install: $(DOCS) aerc|install: $(DOCS)|' \ + -e 's|install -m|install -pm|' \ + -i Makefile + +# From go.mod replace statements: +# replace golang.org/x/crypto => github.com/ProtonMail/go-crypto v0.0.0-20200420072808-71bec3603bf3 +# replace github.com/zenhack/go.notmuch => github.com/brunnre8/go.notmuch v0.0.0-20201126061756-caa2daf7093c +sed -i "s|golang.org/x/crypto|github.com/ProtonMail/go-crypto|" $(find . -name "*.go" -type f) +sed -i "s|github.com/zenhack/go.notmuch|github.com/brunnre8/go.notmuch|" $(find . -name "*.go" -type f) %generate_buildrequires -%go_vendor_license_buildrequires -c %{S:2} - +%go_generate_buildrequires +echo 'golang(github.com/brunnre8/go.notmuch)' %build -%set_build_flags -# GO_BUILDTAGS: Enable notmuch explicitly instead of relying on auto-detection -# in build script. -# GO_LDFLAGS: Set to an empty string so the C LDFLAGS set by %%set_build_flags -# aren't read instead. -GO_BUILDTAGS=notmuch GO_LDFLAGS="" - -# BUILD_OPTS: Set `go build` flags -# DATE: Set DATE based on SOURCE_DATE_EPOCH. The Makefile sets it based on the -# current time. -# GOFLAGS: Set to an empty string. We want to clear the definition from the Makefile. -# GO_EXTRA_LDFLAGS: Set `go build -ldflags` argument -# Other values should be self-explanatory -%make_build \ - BUILD_OPTS=%{gobuild_baseflags_shescaped} \ - DATE="$(date -d "@${SOURCE_DATE_EPOCH}" +%Y-%m-%d)" \ - GOFLAGS= \ - GO_EXTRA_LDFLAGS=%{gobuild_ldflags_shescaped} \ - PREFIX=%{_prefix} \ - VERSION=%{version} \ +export BUILDTAGS=notmuch +export LDFLAGS="-X main.Prefix=%{_prefix} \ + -X main.ShareDir=%{_datadir}/aerc \ + -X git.sr.ht/~rjarry/aerc/config.shareDir=%{_datadir} + -X main.Version=%{version} " +%gobuild -o aerc %{goipath} %install export PREFIX=%{_prefix} %make_install desktop-file-validate %{buildroot}/%{_datadir}/applications/aerc.desktop -%go_vendor_license_install -c %{S:2} -%check -%go_vendor_license_check -c %{S:2} %if %{with check} -LANG=en_US.UTF-8 ./filters/test.sh +%check %gocheck %endif -%files -f %{go_vendor_license_filelist} -%license vendor/modules.txt -%doc README.md CHANGELOG.md +%files +%license LICENSE +%doc doc README.md %{_bindir}/aerc -%{_bindir}/carddav-query -%{_datadir}/aerc/ +%{_mandir}/man1/%{name}.1* +%{_mandir}/man1/%{name}-*.1.* +%{_mandir}/man5/%{name}-*.5.* +%{_mandir}/man7/%{name}-*.7.* +%{_datadir}/aerc %{_datadir}/applications/aerc.desktop -%{_libexecdir}/aerc/ -%{_mandir}/man1/aerc-*.1.* -%{_mandir}/man1/carddav-query.1* -%{_mandir}/man1/aerc.1* -%{_mandir}/man5/aerc-*.5.* -%{_mandir}/man7/aerc-*.7.* %changelog %autochangelog diff --git a/go-vendor-tools.toml b/go-vendor-tools.toml deleted file mode 100644 index a04291c..0000000 --- a/go-vendor-tools.toml +++ /dev/null @@ -1,2 +0,0 @@ -[licensing] -detector = "trivy" diff --git a/sources b/sources index 12ae86a..1f20daa 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (aerc-0.21.0.tar.gz) = b58b3ba9fe36a22b5717d48d7b1caf37303003cb4f32138e79f9775a96dbc5d8b27700091dbfe56f31954be5881467a7c5d8c1895d9161eda19a0d7e5c4750aa -SHA512 (aerc-0.21.0-vendor.tar.bz2) = 5deb3e85cdeed9d0366e08ba851bbc4382dfafd3e2ecfb561cfc9b0afdd90183d72683a4c055d95a474144a2a5ba816c2946a1ade9acc85119d0e3242ef8af60 +SHA512 (aerc-0.13.0.tar.gz) = b7cb67ebcae3a809b365cbf8bb5d52b8525059c70665d27bcab93b697fe3eceb51807f26e953a6a50b4fc4b8acceb27693510b65495d5cd9c1fb4a5e7ded48e2