hugo/hugo.spec

285 lines
10 KiB
RPMSpec

%bcond_without check
# https://github.com/gohugoio/hugo
%global goipath github.com/gohugoio/hugo
Version: 0.55.6
%gometa
%global common_description %{expand:
Hugo is a static HTML and CSS website generator written in Go. It is optimized
for speed, easy use and configurability. Hugo takes a directory with content
and templates and renders them into a full HTML website.}
%global golicenses LICENSE docs/LICENSE.md docs/themes/gohugoioTheme/license.md
%global godocs docs examples README.md CONTRIBUTING.md
Name: hugo
Release: 3%{?dist}
Summary: A Fast and Flexible Static Site Generator built with love in GoLang
# Upstream license specification: Apache-2.0 and MIT
License: ASL 2.0 and MIT
URL: %{gourl}
Source0: %{gosource}
%if %{?fedora} > 29
# Fix build against golang-github-kyokomi-emoji 2.1
Patch0002: 0001-Fix-tests-against-latest-emoji-package.patch
%endif
BuildRequires: golang(github.com/alecthomas/chroma)
BuildRequires: golang(github.com/alecthomas/chroma/formatters)
BuildRequires: golang(github.com/alecthomas/chroma/formatters/html)
BuildRequires: golang(github.com/alecthomas/chroma/lexers)
BuildRequires: golang(github.com/alecthomas/chroma/styles)
BuildRequires: golang(github.com/bep/debounce)
BuildRequires: golang(github.com/bep/gitmap)
BuildRequires: golang(github.com/bep/go-tocss/scss)
BuildRequires: golang(github.com/BurntSushi/locker)
BuildRequires: golang(github.com/BurntSushi/toml)
BuildRequires: golang(github.com/chaseadamsio/goorgeous)
BuildRequires: golang(github.com/disintegration/imaging)
BuildRequires: golang(github.com/eknkc/amber)
BuildRequires: golang(github.com/fsnotify/fsnotify)
BuildRequires: golang(github.com/gobwas/glob)
BuildRequires: golang(github.com/gorilla/websocket)
BuildRequires: golang(github.com/hashicorp/go-immutable-radix)
BuildRequires: golang(github.com/jdkato/prose/transform)
BuildRequires: golang(github.com/kyokomi/emoji)
BuildRequires: golang(github.com/markbates/inflect)
BuildRequires: golang(github.com/mattn/go-isatty)
BuildRequires: golang(github.com/miekg/mmark)
BuildRequires: golang(github.com/mitchellh/hashstructure)
BuildRequires: golang(github.com/mitchellh/mapstructure)
BuildRequires: golang(github.com/muesli/smartcrop)
BuildRequires: golang(github.com/nicksnyder/go-i18n/i18n/bundle)
BuildRequires: golang(github.com/nicksnyder/go-i18n/i18n/language)
BuildRequires: golang(github.com/nicksnyder/go-i18n/i18n/translation)
BuildRequires: golang(github.com/olekukonko/tablewriter)
BuildRequires: golang(github.com/pkg/errors)
BuildRequires: golang(github.com/PuerkitoBio/purell)
BuildRequires: golang(gopkg.in/russross/blackfriday.v1)
BuildRequires: golang(github.com/spf13/afero)
BuildRequires: golang(github.com/spf13/cast)
BuildRequires: golang(github.com/spf13/cobra)
BuildRequires: golang(github.com/spf13/cobra/doc)
BuildRequires: golang(github.com/spf13/fsync)
BuildRequires: golang(github.com/spf13/jwalterweatherman)
BuildRequires: golang(github.com/spf13/pflag)
BuildRequires: golang(github.com/spf13/viper)
BuildRequires: (golang(github.com/tdewolff/minify) >= 2 with golang(github.com/tdewolff/minify) < 3)
BuildRequires: (golang(github.com/tdewolff/minify/css) >= 2 with golang(github.com/tdewolff/minify/css) < 3)
BuildRequires: (golang(github.com/tdewolff/minify/html) >= 2 with golang(github.com/tdewolff/minify/html) < 3)
BuildRequires: (golang(github.com/tdewolff/minify/js) >= 2 with golang(github.com/tdewolff/minify/js) < 3)
BuildRequires: (golang(github.com/tdewolff/minify/json) >= 2 with golang(github.com/tdewolff/minify/json) < 3)
BuildRequires: (golang(github.com/tdewolff/minify/svg) >= 2 with golang(github.com/tdewolff/minify/svg) < 3)
BuildRequires: (golang(github.com/tdewolff/minify/xml) >= 2 with golang(github.com/tdewolff/minify/xml) < 3)
BuildRequires: golang(github.com/yosssi/ace)
BuildRequires: golang(golang.org/x/image/webp)
BuildRequires: golang(golang.org/x/sync/errgroup)
BuildRequires: golang(golang.org/x/text/runes)
BuildRequires: golang(golang.org/x/text/transform)
BuildRequires: golang(golang.org/x/text/unicode/norm)
BuildRequires: golang(gopkg.in/yaml.v2)
%if %{with check}
# Tests
BuildRequires: golang(github.com/alecthomas/assert)
BuildRequires: golang(github.com/fortytw2/leaktest)
BuildRequires: golang(github.com/sanity-io/litter)
BuildRequires: golang(github.com/stretchr/testify/assert)
BuildRequires: golang(github.com/stretchr/testify/require)
BuildRequires: python3-docutils
BuildRequires: python3-pygments
BuildRequires: rubygem-asciidoctor
%endif
%description
%{common_description}
%gopkg
%prep
%goprep
%if %{?fedora} > 29
%patch0002 -p1
%endif
# Replace blackfriday import path to avoid conflict with v2
# Depend on unversioned tdewolff/minify until Go modules are supported in Fedora
sed -i \
-e 's|"github.com/russross/blackfriday|"gopkg.in/russross/blackfriday.v1|' \
-e 's|"github.com/tdewolff/minify/v2|"github.com/tdewolff/minify|' \
$(find . -name '*.go')
# Skip test that assumes directory is in a git repository
sed -i '/TestPageWithLastmodFromGitInfo/a t.Skip()' hugolib/page_test.go
%build
%gobuild -o %{gobuilddir}/bin/hugo %{goipath}
%{gobuilddir}/bin/hugo gen autocomplete --completionfile hugo-completion
%{gobuilddir}/bin/hugo gen man
%install
%gopkginstall
install -d -p %{buildroot}%{_bindir}
install -Dp -m 0755 %{gobuilddir}/bin/hugo %{buildroot}%{_bindir}
install -Dp hugo-completion %{buildroot}%{_datadir}/bash-completion/completions/hugo
install -Dp man/* -t %{buildroot}%{_mandir}/man1
%if %{with check}
%check
# releaser: We do not want to test upstream release process (needs git repo)
# tpl/time: A test depends on the host timezone, we do now want to test it.
# time_test.go:49: [3] DateFormat failed: Unable to Cast 1421733600 to Time # line 35 returns different results
%gocheck -d releaser -d tpl/time
%endif
%files
%doc CONTRIBUTING.md README.md docs examples
%license LICENSE
%{_bindir}/hugo
%{_datadir}/bash-completion/completions/hugo
%{_mandir}/man1/*.1*
%gopkgfiles
%changelog
* Thu Aug 01 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.55.6-3
- Update to latest Go macros
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.55.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat May 18 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.55.6-1
- Update to latest version
* Sat May 11 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.55.5-1
- Update to latest version
* Wed Apr 24 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.55.3-1
- Update to latest version
* Sat Apr 13 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.55.1-1
- Update to latest version
* Wed Apr 10 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.55.0-1
- Update to latest version
* Fri Mar 22 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.54.0-2
- Add bash-completion
- Add man pages
* Mon Mar 04 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.54.0-1
- Update to latest version
* Thu Feb 28 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.38-4
- Fix FTBFS (#1675118)
* Tue Feb 26 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 0.38-4
- Rewrite spec using latest template
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.38-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.38-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Wed Apr 04 2018 Pierre-Alain TORET <pierre-alain.toret@protonmail.com> - 0.38-1
- Update version
* Thu Mar 08 2018 Athos Ribeiro <athoscr@fedoraproject.org> - 0.37.1-1
- Update version
* Thu Mar 01 2018 Athos Ribeiro <athoscr@fedoraproject.org> - 0.37-1
- Update version
* Wed Feb 21 2018 Athos Ribeiro <athoscr@fedoraproject.org> - 0.36.1-2
- Include resource/testdata in unit tests package
* Fri Feb 16 2018 Athos Ribeiro <athoscr@fedoraproject.org> - 0.36.1-1
- Update version
* Tue Feb 13 2018 Athos Ribeiro <athoscr@fedoraproject.org> - 0.36-1
- Update version
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.31.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Mon Dec 11 2017 Pierre-Alain TORET <pierre-alain.toret@protonmail.com> - 0.31.1-1
- Update Version
* Mon Nov 20 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.31-1
- Update Version
* Sat Oct 21 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.30.2-1
- Update Version
* Tue Oct 17 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.30-1
- Update Version
* Wed Oct 11 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.29-1
- Update Version
* Fri Sep 15 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.27.1-2
- Add MIT License
* Wed Sep 13 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.27.1-1
- Update version
* Tue Sep 12 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.27-1
- Update version
* Fri Aug 11 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.26-2
- Substitute bep/inflect for markbates/inflect
* Fri Aug 11 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.26-1
- Update version
* Mon Jul 31 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.25.1-1
- Update version
- Fix unit-test subpackage requires to correct devel package
- Use global instead of define for gobuild
* Mon Jun 26 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.24-2
- Add external test dependencies
* Fri Jun 23 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.24-1
- New version
- Regenerate specfile with gofed
* Fri Mar 17 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.19-4
- Remove empty conditionals
* Sun Mar 12 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.19-3
- Use dist tag
* Fri Mar 03 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.19-2
- Move test data to unit-test subpackage path
* Fri Mar 03 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.19-1
- New version
* Fri Mar 03 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.18.1-5
- Include testdata in unit-test-devel subpackage
* Wed Mar 01 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.18.1-4
- Change binary name
* Wed Mar 01 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.18.1-3
- Use lowercase for jww package
* Tue Feb 28 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.18.1-2
- Use cammelcase for jww package
* Sun Feb 26 2017 Athos Ribeiro <athoscr@fedoraproject.org> - 0.18.1-1
- Initial package