Skip to content
Snippets Groups Projects
Commit 29f431e8 authored by Mike McQuaid's avatar Mike McQuaid Committed by GitHub
Browse files

Merge pull request #2266 from MikeMcQuaid/docs-homebrew-layout

docs.brew.sh: use brew.sh theming.
parents fd333392 eaf8cc1b
No related branches found
No related tags found
No related merge requests found
Showing
with 754 additions and 8 deletions
......@@ -31,7 +31,7 @@ You can also view all the information that is sent by Homebrew's analytics by se
It is impossible for the Homebrew developers to match any particular event to any particular user, even if we had access to the Homebrew analytics user ID (which we do not). An example of the most user-specific information we can see from Google Analytics:
![Aggregate user analytics](images/analytics.png)
![Aggregate user analytics](img/docs/analytics.png)
As far as we can tell it would be impossible for Google to match the randomly generated Homebrew-only analytics user ID to any other Google Analytics user ID. If Google turned evil the only thing they could do would be to lie about anonymising IP addresses and attempt to match users based on IP addresses.
......
......@@ -18,21 +18,21 @@ For example, a job which has been queued but not yet started will have a
section in the pull request that looks like this:
![Triggered Pull Request](images/brew-test-bot-triggered-pr.png)
![Triggered Pull Request](img/docs/brew-test-bot-triggered-pr.png)
---
A failed build looks like this:
![Failed Pull Request](images/brew-test-bot-failed-pr.png)
![Failed Pull Request](img/docs/brew-test-bot-failed-pr.png)
---
A passed build looks like this:
![Passed Pull Request](images/brew-test-bot-passed-pr.png)
![Passed Pull Request](img/docs/brew-test-bot-passed-pr.png)
---
......@@ -44,14 +44,14 @@ When you click this you'll see the results.
A passed build looks like this:
![Passed Jenkins Build](images/brew-test-bot-passed-jenkins.png)
![Passed Jenkins Build](img/docs/brew-test-bot-passed-jenkins.png)
---
A failed build looks like this:
![Failed Jenkins Build](images/brew-test-bot-failed-jenkins.png)
![Failed Jenkins Build](img/docs/brew-test-bot-failed-jenkins.png)
---
......@@ -59,6 +59,6 @@ You can click the test results link
(e.g. `brew-test-bot.el_capitan.install openssl`) to
view the failed test output:
![Failed Test](images/brew-test-bot-failed-test.png)
![Failed Test](img/docs/brew-test-bot-failed-test.png)
---
theme: jekyll-theme-cayman
exclude: [bin, vendor, CNAME, Gemfile, Gemfile.lock]
gems:
- jekyll-feed
- jekyll-seo-tag
<!DOCTYPE html>
<html {% if page.direction == "rtl" %}dir="rtl" {% endif %}lang="{{ page.lang }}">
<head>
<meta charset="utf-8">
<meta name="dc.creator" content="Rémi Prévost - http://exomel.com">
{% if page.title %}
<title>{{ page.title }} — Homebrew</title>
{% elsif page.direction == "rtl" %}
<title>{{ page.subtitle }} — Homebrew</title>
{% else %}
<title>Homebrew — {{ page.subtitle }}</title>
{% endif %}
{% seo title=false %}
{% feed_meta %}
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="/img/favicon.ico">
<link rel="icon" sizes="16x16" href="/img/favicon-16x16.png" >
<link rel="icon" sizes="32x32" href="/img/favicon-32x32.png">
<link rel="icon" sizes="96x96" href="/img/favicon-96x96.png">
<link rel="icon" sizes="192x192" href="/img/favicon-192x192.png">
<link rel="apple-touch-icon-precomposed" sizes="57x57" href="/img/apple-touch-icon-57x57-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="/img/apple-touch-icon-72x72-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="76x76" href="/img/apple-touch-icon-76x76-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="/img/apple-touch-icon-114x114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="120x120" href="/img/apple-touch-icon-120x120-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="/img/apple-touch-icon-144x144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="152x152" href="/img/apple-touch-icon-152x152-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="180x180" href="/img/apple-touch-icon-180x180-precomposed.png">
<link rel="stylesheet" href="/css/screen.css" type="text/css" media="screen">
<link rel="stylesheet" href="/css/pygments.css" type="text/css" media="screen">
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-76679469-2', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
</script>
{% for lang in site.langs %}
{% if lang.langcode == "en" %}
<link rel="alternate" hreflang="en" href="{{ site.url }}" />
<link rel="alternate" hreflang="x-default" href="{{ site.url }}" />
{% else %}
<link rel="alternate" hreflang="{{ lang.langcode }}" href="{{ lang.langcode | downcase | append: '.html' | prepend: '/index_' | prepend: site.url }}" />
{% endif %}
{% endfor %}
</head>
<body>
<div id="wrap">
<div id="header" class="{{ page.header-class }}">
<img alt="Homebrew logo" src="/img/homebrew-256x256.png" width="128" height="128">
<h1><a href="/">Homebrew</a></h1>
{% if page.subtitle %}
<p id="subtitle"><strong>{{ page.subtitle }}</strong></p>
{% endif %}
{% if page.lang %}
<select id="language" onchange="loadLanguage(this.options[this.selectedIndex].value)">
{% for lang in site.langs %}
{% if page.lang == lang.langcode %}
<option value="{{ lang.langcode | downcase }}" selected="selected">{{ lang.lang_string }}</option>
{% else %}
<option value="{{ lang.langcode | downcase }}">{{ lang.lang_string }}</option>
{% endif %}
{% endfor %}
</select>
{% endif %}
</div>
{{ content }}
</div>
<a href="https://github.com/Homebrew/brew/"><img id="forkme" src="https://aral.github.io/fork-me-on-github-retina-ribbons/right-grey@2x.png" alt="Fork me on GitHub"></a>
<script>
function selectText(elem) {
if (document.selection) {
var range = document.body.createTextRange();
range.moveToElementText(elem);
range.select();
} else if (window.getSelection) {
var range = document.createRange();
range.selectNode(elem);
window.getSelection().addRange(range);
}
}
function loadLanguage(lang) {
if (lang === {{ page.lang | jsonify }}) {
return;
} else if (lang === "en") {
window.location.replace("/");
} else {
window.location.replace("/index_" + lang + ".html");
}
}
</script>
</body>
</html>
---
layout: base
---
<div id="home">
{{ content }}
</div>
---
layout: base
---
<div id="informations">
<ul>
<li>
<div class="group row">
<h2 id="install">{{ page.pagecontent.install.install }}</h2>
<br>
<pre style='clear:both;text-align:center;margin-bottom:0.9em'><code id='selectable' onclick="selectText(this)">/usr/bin/ruby -e &quot;$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)&quot;</code></pre>
<div class="col-1">
<p>{{ page.pagecontent.install.paste }}</p>
</div>
<div class="col-2">
<p>{{ page.pagecontent.install.what }}</p>
</div>
</div>
</li>
<li>
<div class="group row">
<h2 id="question">{{ page.pagecontent.question }}</h2>
<br>
<div class="col-1">
<p>{{ page.pagecontent.what }}</p>
</div>
<div class="col-2">
{% highlight bash %}
$ brew install wget
{% endhighlight %}
</div>
</div>
</li>
<li>
<div class="group row">
<div class="col-1">
<p>{{ page.pagecontent.how }}</p>
</div>
<div class="col-2">
{% highlight bash %}
$ cd /usr/local
$ find Cellar
Cellar/wget/1.16.1
Cellar/wget/1.16.1/bin/wget
Cellar/wget/1.16.1/share/man/man1/wget.1
$ ls -l bin
bin/wget -> ../Cellar/wget/1.16.1/bin/wget
{% endhighlight %}
</div>
</div>
</li>
<li>
<div class="group row">
<div class="col-1">
<p>{{ page.pagecontent.prefix }}</p>
</div>
</div>
</li>
<li>
<div class="group row">
<div class="col-1">
<p>{{ page.pagecontent.createpackages }}</p>
</div>
<div class="col-2">
{% highlight bash %}
$ brew create https://foo.com/bar-1.0.tgz
Created /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/bar.rb
{% endhighlight %}
</div>
</div>
</li>
<li>
<div class="group row">
<div class="col-1">
<p>{{ page.pagecontent.hack }}</p>
</div>
<div class="col-2">
{% highlight bash %}
$ brew edit wget # {{ page.pagecontent.editor }}
{% endhighlight %}
</div>
</div>
</li>
<li>
<div class="group row">
<div class="col-1">
<p>{{ page.pagecontent.formula }}</p>
</div>
<div class="col-2">
{% highlight ruby %}
class Wget < Formula
homepage "https://www.gnu.org/software/wget/"
url "https://ftp.gnu.org/gnu/wget/wget-1.15.tar.gz"
sha256 "52126be8cf1bddd7536886e74c053ad7d0ed2aa89b4b630f76785bac21695fcd"
def install
system "./configure", "--prefix=#{prefix}"
system "make", "install"
end
end
{% endhighlight %}
</div>
</div>
</li>
<li>
<div class="group row">
<div class="col-1">
<p>{{ page.pagecontent.complement }}</p>
</div>
</div>
</li>
<li>
<div class="group row">
<h2 id="further-doc">{{ page.pagecontent.doc.further }}</h2>
<div class="button">
<p><a href="http://docs.brew.sh">docs.brew.sh</a></p>
</div>
</div>
</li>
<li>
<div class="group row">
<h2 id="homebrew-community">{{ page.pagecontent.doc.community }}</h2>
<div class="button">
<p><a href="http://discourse.brew.sh">discourse.brew.sh</a></p>
</div>
</div>
</li>
<li>
<div class="group row">
<h2 id="homebrew-blog">{{ page.pagecontent.doc.blog }}</h2>
<div class="button">
<p><a href="/blog">brew.sh/blog</a></p>
</div>
</div>
</li>
<li>
<div class="group row credits">
<p>{{ page.pagecontent.foot.code }} {{ page.pagecontent.foot.page }} {{ page.pagecontent.foot.translation }}</p>
</div>
</li>
</ul>
</div>
---
layout: base
---
<div id="page">
{{ content }}
</div>
---
layout: base
---
<div id="post">
<h2>{{ page.title }}</h2>
<h3>{{ page.date | date_to_long_string }}</h3>
<h3 class="author"><a href="https://github.com/{{ page.author }}"><img class="avatar" src="https://avatars2.githubusercontent.com/{{ page.author }}?v=3&amp;s=80" alt="{{ page.author }}" width="40" height="40">{{ page.author }}</a></h3>
<div class="postcontent singlepostcontent">
{{ content }}
</div>
</div>
.hll { background-color: #ffffcc }
.c { color: #999988; font-style: italic } /* Comment */
.err { color: #a61717; background-color: #e3d2d2 } /* Error */
.k { font-weight: bold } /* Keyword */
.o { font-weight: bold } /* Operator */
.cm { color: #999988; font-style: italic } /* Comment.Multiline */
.cp { color: #999999; font-weight: bold } /* Comment.Preproc */
.c1 { color: #999988; font-style: italic } /* Comment.Single */
.cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
.gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.ge { font-style: italic } /* Generic.Emph */
.gr { color: #aa0000 } /* Generic.Error */
.gh { color: #999999 } /* Generic.Heading */
.gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.go { color: #888888 } /* Generic.Output */
.gp { color: #555555 } /* Generic.Prompt */
.gs { font-weight: bold } /* Generic.Strong */
.gu { color: #aaaaaa } /* Generic.Subheading */
.gt { color: #aa0000 } /* Generic.Traceback */
.kc { font-weight: bold } /* Keyword.Constant */
.kd { font-weight: bold } /* Keyword.Declaration */
.kn { font-weight: bold } /* Keyword.Namespace */
.kp { font-weight: bold } /* Keyword.Pseudo */
.kr { font-weight: bold } /* Keyword.Reserved */
.kt { color: #445588; font-weight: bold } /* Keyword.Type */
.m { color: #009999 } /* Literal.Number */
.s { color: #bb8844 } /* Literal.String */
.na { color: #008080 } /* Name.Attribute */
.nb { color: #999999 } /* Name.Builtin */
.nc { color: #999999; font-weight: bold } /* Name.Class */
.no { color: #666666 } /* Name.Constant */
.ni { color: #800080 } /* Name.Entity */
.ne { color: #990000; font-weight: bold } /* Name.Exception */
.nf { color: #999999; font-weight: bold } /* Name.Function */
.nn { color: #555555 } /* Name.Namespace */
.nt { color: #000080 } /* Name.Tag */
.nv { color: #008080 } /* Name.Variable */
.ow { font-weight: bold } /* Operator.Word */
.w { color: #bbbbbb } /* Text.Whitespace */
.mf { color: #009999 } /* Literal.Number.Float */
.mh { color: #009999 } /* Literal.Number.Hex */
.mi { color: #009999 } /* Literal.Number.Integer */
.mo { color: #009999 } /* Literal.Number.Oct */
.sb { color: #bb8844 } /* Literal.String.Backtick */
.sc { color: #bb8844 } /* Literal.String.Char */
.sd { color: #bb8844 } /* Literal.String.Doc */
.s2 { color: #9c7645 } /* Literal.String.Double */
.se { color: #bb8844 } /* Literal.String.Escape */
.sh { color: #bb8844 } /* Literal.String.Heredoc */
.si { color: #bb8844 } /* Literal.String.Interpol */
.sx { color: #bb8844 } /* Literal.String.Other */
.sr { color: #808000 } /* Literal.String.Regex */
.s1 { color: #9c7645 } /* Literal.String.Single */
.ss { color: #bb8844 } /* Literal.String.Symbol */
.bp { color: #999999 } /* Name.Builtin.Pseudo */
.vc { color: #008080 } /* Name.Variable.Class */
.vg { color: #008080 } /* Name.Variable.Global */
.vi { color: #008080 } /* Name.Variable.Instance */
.il { color: #009999 } /* Literal.Number.Integer.Long */
/* http://meyerweb.com/eric/tools/css/reset/ */
/* v1.0 | 20080212 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
/* remember to define focus styles! */
:focus {
outline: 0;
}
/* remember to highlight inserts somehow! */
ins {
text-decoration: none;
}
del {
text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
border-collapse: collapse;
border-spacing: 0;
}
/* ****************************************************
@file screen.css
@description Screen stylesheet
vim: set noet ts=4 fdm=marker fenc=utf-8:
***************************************************** */
@import url("./reset.css");
/* @section Basic {{{
******************************************************************************/
html {
font-size: 62.5%;
font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif;
}
html, body { height: 100%; }
body {
font-size: 150%;
line-height: 1.4;
color: #F9D094;
background: #2E2A24;
position: relative;
behavior: url("/js/ie6/csshover.htc");
padding: 0 30px;
}
p,ul,ol,dl,table,pre { margin-bottom: 1em; }
ul { margin-left: 20px; }
a { text-decoration: none; cursor: pointer; color: #ba832c; font-weight: bold; }
a:focus { outline: 1px dotted; }
a:visited { }
a:hover, a:focus { color: #d3a459; text-decoration: none; }
a *, button * { cursor: pointer; }
hr { display: none; }
small { font-size: 90%; }
input, select, button, textarea, option { font-size: 100%; }
button, label, select, option, input[type=submit] { cursor: pointer; }
.group:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } .group {display: inline-block;}
/* Hides from IE-mac \*/ * html .group {height: 1%;} .group {display: block;} /* End hide from IE-mac */
sup { font-size: 80%; line-height: 1; vertical-align: super; }
button::-moz-focus-inner { border: 0; padding: 1px; }
span.amp { font-weight: normal; font-style: italic; font-size: 1.2em; line-height: 0.8; }
h1,h2,h3,h4,h5,h6 { line-height: 1.1; }
::selection { background: #745626; }
::-moz-selection { background: #745626; }
h1, h2, h3 {
font-size: 420%;
margin: 0 0 0.1em;
font-weight: 900;
text-shadow: 1px 1px 10px rgba(0,0,0,0.25);
}
h2 {
font-size: 300%;
text-align: center;
font-weight: 800;
color: #F9D094;
margin-top: 0.5em;
margin-bottom: 0.1em;
}
h3 {
font-size: 125%;
text-align: center;
font-weight: 800;
color: #F9D094;
margin-top: 0.5em;
margin-bottom: 0.1em;
}
#forkme {
width: 149px;
height: 149px;
position: absolute;
top: 0;
right: 0;
border: 0
}
h1 a,
h1 a:hover {
color: #F9D094;
font-weight: 900;
text-decoration: none;
}
#wrap {
width: 57em;
/*width: 760px;*/
max-width: 100%;
margin: 0 auto;
padding: 15px 0 0;
}
#header {
text-align: center;
margin-bottom: 1em;
}
#language {
margin-bottom: 2em;
}
pre {
background: rgba(0,0,0,0.3);
color: #fff;
padding: 8px 10px;
border-radius: 0.4em;
-moz-border-radius: 0.4em;
-webkit-border-radius: 0.4em;
overflow-x: auto;
}
pre code {
font-family: "Monaco", "Menlo", monospace;
font-size: 11px;
line-height: 1.6;
}
#selectable {
font-size: 13px;
}
.avatar {
border-radius: 0.4em;
overflow: hidden;
margin-right: 0.5em;
vertical-align: middle;
}
#home, #page, .postcontent {
font-size: 1.2em;
min-width: 25em;
max-width: 35em;
margin: 0 auto;
margin-top: 1em;
padding-top: 1em;
padding-bottom: 1em;
}
#home img, #page img, .postcontent img {
min-width: 25em;
max-width: 35em;
}
#home th, #page th, .postcontent th, #home td, #page td, .postcontent td {
padding: 0.25em 0.5em;
}
#post, #home, #page, .singlepostcontent, .posts li {
border-top: 1px solid rgba(255,255,255,0.08);
box-shadow: 0 -1px 0 rgba(0,0,0,0.5);
}
#home ul, #page ul, .postcontent ul {
list-style: inherit;
}
#home h1, #page h1 {
font-size: 250%;
font-weight: 800;
text-align: center;
padding-bottom: 0.5em;
}
#home h2, #page h2 {
font-size: 175%;
font-weight: 700;
text-align: left;
padding-bottom: 0.3em;
}
#home h3, #page h3 {
font-size: 150%;
font-weight: 700;
text-align: left;
padding-bottom: 0.3em;
}
#home code, #page code {
font-size: 100%;
}
#home pre code, #page pre code {
font-size: 80%;
}
/*}}}*/
/* @section Informations {{{
******************************************************************************/
#informations {
border-top: 1px solid rgba(0,0,0,0.5);
}
#informations ul {
margin: 0;
}
#informations .row, #border-bottom {
border-bottom: 1px solid rgba(0,0,0,0.5);
border-top: 1px solid rgba(255,255,255,0.08);
padding: 2em 20px 0;
}
#informations .row .col-1 {
width: 49%;
float: left;
padding: 0 0 1em;
}
#informations .row .col-2 {
width: 49%;
float: right;
padding: 0 0 1em;
}
@media screen and (min-width: 700px) {
#informations .highlight {
margin-inline-end: 0;
-moz-margin-end: 0;
-webkit-margin-end: 0;
}
}
.button {
text-align: center;
margin: 1em 0 2em;
}
#informations .button a {
background: rgba(162,107,20,0.3);
padding: 8px 10px 6px;
border-radius: 0.4em;
-moz-border-radius: 0.4em;
-webkit-border-radius: 0.4em;
box-shadow: 0 0 5px rgba(0,0,0,0.4);
-moz-box-shadow: 0 0 5px rgba(0,0,0,0.4);
-webkit-box-shadow: 0 0 5px rgba(0,0,0,0.4);
text-decoration: none;
font-size: larger;
}
#informations .button a:hover {
background: rgba(162,107,20,0.25);
}
#informations .button-large {
padding: 2em 0 1em;
font-size: 120%;
}
#informations .quote {
text-align: center;
color: #816f51;
padding-bottom: 2em;
}
#informations .quote blockquote {
font-size: 140%;
padding: 0 15%;
}
#informations .quote blockquote span {
font-size: 140%;
line-height: 0.5;
vertical-align: sub;
}
#informations .quote cite {
font-style: normal;
}
#informations .quote cite a {
font-weight: normal;
}
#informations .credits, #border-no-bottom {
border-bottom: none;
font-size: 70%;
text-align: center;
padding-top: 1.8em;
opacity: 0.5;
}
#informations .credits p {
margin: 0;
padding: 0 0 0.7em;
}
/*}}}*/
/* @section Mobile {{{
******************************************************************************/
@media screen and (max-width: 700px) {
body {
padding: 0px;
}
h1 {
font-size: 350%;
}
h2 {
font-size: 250%;
}
#forkme {
width: 100px;
height: 100px;
}
#informations .row .col-1 {
width: 100%;
padding: 0;
margin: 0;
}
#informations .row .col-2 {
width: 100%;
float: left;
}
pre code#selectable {
width: 90%;
margin: 0 auto;
}
}
/*}}}*/
/* @section RTL {{{
******************************************************************************/
[dir="rtl"] ul { margin-left: 0; margin-right: 20px; }
[dir="rtl"] pre {
direction: ltr;
text-align: left;
}
[dir="rtl"] #informations .row .col-1 {
float: right;
}
[dir="rtl"] #informations .row .col-2 {
float: left;
}
@media screen and (max-width: 700px) {
[dir="rtl"] #informations .row .col-2 {
float: right;
}
}
img/favicon.ico
\ No newline at end of file
docs/img/apple-touch-icon-114x114-precomposed.png

9.11 KiB

docs/img/apple-touch-icon-120x120-precomposed.png

9.81 KiB

docs/img/apple-touch-icon-144x144-precomposed.png

12 KiB

docs/img/apple-touch-icon-152x152-precomposed.png

12.6 KiB

docs/img/apple-touch-icon-180x180-precomposed.png

15.2 KiB

docs/img/apple-touch-icon-57x57-precomposed.png

4.54 KiB

docs/img/apple-touch-icon-72x72-precomposed.png

5.78 KiB

docs/img/apple-touch-icon-76x76-precomposed.png

6.1 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment