stackage-server/templates/home.hamlet
2020-11-02 18:23:15 +08:00

64 lines
3.9 KiB
Plaintext

<div .container>
<div>
<div .span5>
<img src=@{StaticR img_logo_png} .logo>
<div .span3>
<p>
<form class="hoogle" action="/#{latestLtsNameWithHoogle}/hoogle">
<div class="input-append hoogle-q">
<input class="search span3" type="search" autofocus="" name="q" value="" placeholder="Hoogle search LTS">
<button class="btn" type="submit">
Search
<label class="checkbox exact-lookup" for="exact" title="Only find identifiers matching your search term precisely">
<input type="checkbox" name="exact" id="exact">
Exact lookup
<div>
<div .span6>
<h3>Stable Haskell package sets
<ul>
<li>A distribution of compatible Haskell packages from <a href="https://hackage.haskell.org">Hackage</a> that build together
<li>Stackage is a community project: <a href="https://github.com/fpco/stackage/blob/master/MAINTAINERS.md#adding-a-package"><b>how to add packages to Stackage</b></a>
<li><a href="https://haskellstack.org">stack</a> makes using Stackage easy
<div .span6>
<h3>News</h3>
$maybe post <- mrecentBlog
<p>
<a href=@{BlogPostR (postYear post) (postMonth post) (postSlug post)}>#{postTitle post}</a>,
<abbr title=#{show $ postTime post}>#{dateDiff now' (utctDay $ postTime post)}</abbr>
<div .span6>
<h3>
Latest releases per GHC version
<ul>
$forall stackages <- latestNightly
$forall (ident, title, uploaded) <- stackages
<li>
<a href=@{SnapshotR ident StackageHomeR}>#{title}</a>, #{uploaded}
$forall (major, minor, ghc, date) <- latestLtsByGhc
<li>
<a href=@{SnapshotR (SNLts major minor) StackageHomeR}>LTS #{major}.#{minor} for #{ghc}#
\, published #{dateDiff now' date}
<div .span6>
<h3 id="about">
About Stackage
<p>
Stackage provides consistent sets of Haskell packages, known to build together and pass their tests before becoming <a href="/nightly">Stackage Nightly</a> snapshots and <a href="/lts">LTS</a>
(<a href="https://github.com/fpco/lts-haskell#readme">Long Term Support</a>) releases.
<p>
It is a distribution of a subset packages from <a href="https://hackage.haskell.org">Hackage</a>, each package chosen at a version to make the set self-consistent. Note that Stackage does not patch any packages.
<p>
We recommend using the <a href="https://haskellstack.org">stack</a> tool, which makes using Stackage snapshots easy and convenient.
But Stackage can also be used in other ways: as a source of consistent packages that work well together, or to ensure that Haskell packages you author or care about work well with others.
<a href="https://haskell.fpcomplete.com/get-started">Get started with Stack</a>
<p>
Stackage is a community project: Haskell users around the world work together to keep Stackage snapshots up to date with recent package versions:
Stackage itself and all the tools surrounding it are open-source.
See <a href="https://github.com/fpco/stackage/blob/master/MAINTAINERS.md#adding-a-package">
<b>how to add packages to Stackage</b></a>
<p>
Have more questions? We have a #
<a href="https://github.com/fpco/stackage#frequently-asked-questions">FAQ section on Github</a>.
<p>
Stackage's infrastructure, build machines, initial creation and ongoing maintenance, are proudly sponsored by <a href="https://www.fpcomplete.com">FP Complete</a>.