diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..becfbca --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/aerc-1687e558d3fae4d5622677c031bb9365a8c3e261.tar.gz diff --git a/aerc-fix-makefile.patch b/aerc-fix-makefile.patch new file mode 100644 index 0000000..aa2e36c --- /dev/null +++ b/aerc-fix-makefile.patch @@ -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 \ diff --git a/aerc.spec b/aerc.spec new file mode 100644 index 0000000..f511f20 --- /dev/null +++ b/aerc.spec @@ -0,0 +1,121 @@ +# Generated by go2rpm 1.3 +%bcond_without check + +# 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 + +%gometa + +%global common_description %{expand: +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 +Release: 2%{?dist} +Summary: Email client for your terminal + +License: MIT +URL: %{gourl} +Source0: %{gosource} +# Disable building of aerc that we handle manually in the SPEC +Patch0: aerc-fix-makefile.patch + +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 + +%if %{with check} +# Tests +BuildRequires: golang(github.com/stretchr/testify/assert) +%endif + +%description +%{common_description} + +%prep +%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 +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 + +%if %{with check} +%check +%gocheck +%endif + +%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 +* Tue Jun 15 20:29:04 CEST 2021 Robert-André Mauchin - 0.5.2-2.20210615git1687e55 +- Initial package diff --git a/sources b/sources new file mode 100644 index 0000000..d9fea8d --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (aerc-1687e558d3fae4d5622677c031bb9365a8c3e261.tar.gz) = 7cf2bb538d61ce2cda81dfeefade91b50ce22502f75f14e2248452c8f64736fae975e3673c05106c00532639feef4f9e44c40b866fce65aaefad94b409649260