Compare commits

..

No commits in common. "rawhide" and "f33" have entirely different histories.

6 changed files with 152 additions and 114 deletions

24
.gitignore vendored
View file

@ -1,25 +1 @@
/aerc-1687e558d3fae4d5622677c031bb9365a8c3e261.tar.gz
/aerc-c303b953360994966ff657c4e17670853198ecf7.tar.gz
/aerc-f81d8871c7007c7fa17f3779f711631d747f22df.tar.gz
/aerc-0.7.1.tar.gz
/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

60
aerc-fix-makefile.patch Normal file
View file

@ -0,0 +1,60 @@
diff -up aerc-1687e558d3fae4d5622677c031bb9365a8c3e261/Makefile.orig aerc-1687e558d3fae4d5622677c031bb9365a8c3e261/Makefile
--- aerc-1687e558d3fae4d5622677c031bb9365a8c3e261/Makefile.orig 2021-04-28 07:54:16.000000000 +0200
+++ aerc-1687e558d3fae4d5622677c031bb9365a8c3e261/Makefile 2021-06-15 20:43:41.767856772 +0200
@@ -59,7 +59,7 @@ DOCS := \
doc: $(DOCS)
-all: aerc aerc.conf doc
+all: aerc.conf doc
# Exists in GNUMake but not in NetBSD make and others.
RM?=rm -f
@@ -70,27 +70,26 @@ clean:
install: all
mkdir -m755 -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1 $(DESTDIR)$(MANDIR)/man5 $(DESTDIR)$(MANDIR)/man7 \
$(DESTDIR)$(SHAREDIR) $(DESTDIR)$(SHAREDIR)/filters $(DESTDIR)$(SHAREDIR)/templates $(DESTDIR)$(SHAREDIR)/stylesets
- install -m755 aerc $(DESTDIR)$(BINDIR)/aerc
- install -m644 aerc.1 $(DESTDIR)$(MANDIR)/man1/aerc.1
- install -m644 aerc-search.1 $(DESTDIR)$(MANDIR)/man1/aerc-search.1
- install -m644 aerc-config.5 $(DESTDIR)$(MANDIR)/man5/aerc-config.5
- install -m644 aerc-imap.5 $(DESTDIR)$(MANDIR)/man5/aerc-imap.5
- install -m644 aerc-maildir.5 $(DESTDIR)$(MANDIR)/man5/aerc-maildir.5
- install -m644 aerc-sendmail.5 $(DESTDIR)$(MANDIR)/man5/aerc-sendmail.5
- install -m644 aerc-notmuch.5 $(DESTDIR)$(MANDIR)/man5/aerc-notmuch.5
- install -m644 aerc-smtp.5 $(DESTDIR)$(MANDIR)/man5/aerc-smtp.5
- install -m644 aerc-tutorial.7 $(DESTDIR)$(MANDIR)/man7/aerc-tutorial.7
- install -m644 aerc-templates.7 $(DESTDIR)$(MANDIR)/man7/aerc-templates.7
- install -m644 aerc-stylesets.7 $(DESTDIR)$(MANDIR)/man7/aerc-stylesets.7
- install -m644 config/accounts.conf $(DESTDIR)$(SHAREDIR)/accounts.conf
- install -m644 aerc.conf $(DESTDIR)$(SHAREDIR)/aerc.conf
- install -m644 config/binds.conf $(DESTDIR)$(SHAREDIR)/binds.conf
- install -m755 filters/hldiff $(DESTDIR)$(SHAREDIR)/filters/hldiff
- install -m755 filters/html $(DESTDIR)$(SHAREDIR)/filters/html
- install -m755 filters/plaintext $(DESTDIR)$(SHAREDIR)/filters/plaintext
- install -m644 templates/quoted_reply $(DESTDIR)$(SHAREDIR)/templates/quoted_reply
- install -m644 templates/forward_as_body $(DESTDIR)$(SHAREDIR)/templates/forward_as_body
- install -m644 config/default_styleset $(DESTDIR)$(SHAREDIR)/stylesets/default
+ install -pm644 aerc.1 $(DESTDIR)$(MANDIR)/man1/aerc.1
+ install -pm644 aerc-search.1 $(DESTDIR)$(MANDIR)/man1/aerc-search.1
+ install -pm644 aerc-config.5 $(DESTDIR)$(MANDIR)/man5/aerc-config.5
+ install -pm644 aerc-imap.5 $(DESTDIR)$(MANDIR)/man5/aerc-imap.5
+ install -pm644 aerc-maildir.5 $(DESTDIR)$(MANDIR)/man5/aerc-maildir.5
+ install -pm644 aerc-sendmail.5 $(DESTDIR)$(MANDIR)/man5/aerc-sendmail.5
+ install -pm644 aerc-notmuch.5 $(DESTDIR)$(MANDIR)/man5/aerc-notmuch.5
+ install -pm644 aerc-smtp.5 $(DESTDIR)$(MANDIR)/man5/aerc-smtp.5
+ install -pm644 aerc-tutorial.7 $(DESTDIR)$(MANDIR)/man7/aerc-tutorial.7
+ install -pm644 aerc-templates.7 $(DESTDIR)$(MANDIR)/man7/aerc-templates.7
+ install -pm644 aerc-stylesets.7 $(DESTDIR)$(MANDIR)/man7/aerc-stylesets.7
+ install -pm644 config/accounts.conf $(DESTDIR)$(SHAREDIR)/accounts.conf
+ install -pm644 aerc.conf $(DESTDIR)$(SHAREDIR)/aerc.conf
+ install -pm644 config/binds.conf $(DESTDIR)$(SHAREDIR)/binds.conf
+ install -pm755 filters/hldiff $(DESTDIR)$(SHAREDIR)/filters/hldiff
+ install -pm755 filters/html $(DESTDIR)$(SHAREDIR)/filters/html
+ install -pm755 filters/plaintext $(DESTDIR)$(SHAREDIR)/filters/plaintext
+ install -pm644 templates/quoted_reply $(DESTDIR)$(SHAREDIR)/templates/quoted_reply
+ install -pm644 templates/forward_as_body $(DESTDIR)$(SHAREDIR)/templates/forward_as_body
+ install -pm644 config/default_styleset $(DESTDIR)$(SHAREDIR)/stylesets/default
RMDIR_IF_EMPTY:=sh -c '\
if test -d $$0 && ! ls -1qA $$0 | grep -q . ; then \

172
aerc.spec
View file

@ -1,111 +1,121 @@
# Generated by go2rpm 1.14.0
%bcond check 1
# Generated by go2rpm 1.3
%bcond_without check
# 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.
# https://git.sr.ht/~sircmpwn/aerc
%global goipath git.sr.ht/~sircmpwn/aerc
%global forgeurl https://git.sr.ht/~sircmpwn/aerc
Version: 0.5.2
%global tag 0.5.2
# /!\ Prerelease to fix compilation with go-pgpmail
%global commit 1687e558d3fae4d5622677c031bb9365a8c3e261
%global repo aerc
%global archivename %{repo}-%{commit}
%global archiveext tar.gz
%global archiveurl %{forgeurl}/archive/%{commit}.%{archiveext}
%global topdir %{repo}-%{commit}
%global extractdir %{repo}-%{commit}
%global scm git
# https://git.sr.ht/~rjarry/aerc
%global goipath git.sr.ht/~rjarry/aerc
%global version0 0.21.0
%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
Release: 2%{?dist}
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
# Disable building of aerc that we handle manually in the SPEC
Patch0: aerc-fix-makefile.patch
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
BuildRequires: golang(git.sr.ht/~sircmpwn/getopt)
BuildRequires: golang(github.com/creack/pty)
BuildRequires: golang(github.com/danwakefield/fnmatch)
BuildRequires: golang(github.com/ddevault/go-libvterm)
BuildRequires: golang(github.com/emersion/go-imap)
BuildRequires: golang(github.com/emersion/go-imap-idle)
BuildRequires: golang(github.com/emersion/go-imap-sortthread)
BuildRequires: golang(github.com/emersion/go-imap/client)
BuildRequires: golang(github.com/emersion/go-maildir)
BuildRequires: golang(github.com/emersion/go-message)
BuildRequires: golang(github.com/emersion/go-message/charset)
BuildRequires: golang(github.com/emersion/go-message/mail)
BuildRequires: golang(github.com/emersion/go-message/textproto)
BuildRequires: golang(github.com/emersion/go-pgpmail)
BuildRequires: golang(github.com/emersion/go-sasl)
BuildRequires: golang(github.com/emersion/go-smtp)
BuildRequires: golang(github.com/fsnotify/fsnotify)
BuildRequires: golang(github.com/gdamore/tcell/v2)
BuildRequires: golang(github.com/gdamore/tcell/v2/views)
BuildRequires: golang(github.com/go-ini/ini)
BuildRequires: golang(github.com/google/shlex)
BuildRequires: golang(github.com/imdario/mergo)
BuildRequires: golang(github.com/kyoh86/xdg)
BuildRequires: golang(github.com/mattn/go-isatty)
BuildRequires: golang(github.com/mattn/go-runewidth)
BuildRequires: golang(github.com/miolini/datacounter)
BuildRequires: golang(github.com/mitchellh/go-homedir)
BuildRequires: golang(github.com/pkg/errors)
BuildRequires: golang(github.com/riywo/loginshell)
BuildRequires: golang(golang.org/x/crypto/openpgp)
BuildRequires: golang(golang.org/x/crypto/openpgp/errors)
BuildRequires: golang(golang.org/x/crypto/openpgp/packet)
BuildRequires: golang(golang.org/x/oauth2)
Requires: notmuch
# 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
%if %{with check}
# Tests
BuildRequires: golang(github.com/stretchr/testify/assert)
%endif
%description %{common_description}
%description
%{common_description}
%prep
%goprep -A
%setup -q -T -D -a1 %{forgesetupargs}
%autopatch -p1
%generate_buildrequires
%go_vendor_license_buildrequires -c %{S:2}
%goprep
%patch0 -p1
# 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)
%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 GOFLAGS=-tags=notmuch
export LDFLAGS="-X main.Prefix=%{_prefix} \
-X main.ShareDir=%{_datadir}/aerc \
-X main.Version=%{version} "
%gobuild -o %{gobuilddir}/bin/aerc %{goipath}
%install
install -m 0755 -vd %{buildroot}%{_bindir}
install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/
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
%{_bindir}/aerc
%{_bindir}/carddav-query
%{_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.*
%files
%license LICENSE
%doc doc README.md
%{_bindir}/*
%{_mandir}/man1/%{name}.1*
%{_mandir}/man1/%{name}-*.1.*
%{_mandir}/man5/%{name}-*.5.*
%{_mandir}/man7/%{name}-*.7.*
%{_datadir}/aerc
%changelog
%autochangelog
* Tue Jun 15 20:29:04 CEST 2021 Robert-André Mauchin <zebob.m@gmail.com> - 0.5.2-2.20210615git1687e55
- Initial package

View file

@ -1,5 +0,0 @@
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jun 15 20:29:04 CEST 2021 Robert-André Mauchin <zebob.m@gmail.com> - 0.5.2-2.20210615git1687e55
- Initial package

View file

@ -1,2 +0,0 @@
[licensing]
detector = "trivy"

View file

@ -1,2 +1 @@
SHA512 (aerc-0.21.0.tar.gz) = b58b3ba9fe36a22b5717d48d7b1caf37303003cb4f32138e79f9775a96dbc5d8b27700091dbfe56f31954be5881467a7c5d8c1895d9161eda19a0d7e5c4750aa
SHA512 (aerc-0.21.0-vendor.tar.bz2) = 5deb3e85cdeed9d0366e08ba851bbc4382dfafd3e2ecfb561cfc9b0afdd90183d72683a4c055d95a474144a2a5ba816c2946a1ade9acc85119d0e3242ef8af60
SHA512 (aerc-1687e558d3fae4d5622677c031bb9365a8c3e261.tar.gz) = 7cf2bb538d61ce2cda81dfeefade91b50ce22502f75f14e2248452c8f64736fae975e3673c05106c00532639feef4f9e44c40b866fce65aaefad94b409649260