summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--_includes/dl_os_icon.html6
-rw-r--r--_includes/footer.html2
-rw-r--r--_layouts/welcome.html6
-rw-r--r--assets/css/style.css102
-rw-r--r--assets/js/irssi.js85
-rw-r--r--assets/obs.pngbin0 -> 3308 bytes
-rw-r--r--download/index.markdown133
7 files changed, 284 insertions, 50 deletions
diff --git a/_includes/dl_os_icon.html b/_includes/dl_os_icon.html
new file mode 100644
index 0000000..2dbbad2
--- /dev/null
+++ b/_includes/dl_os_icon.html
@@ -0,0 +1,6 @@
+<input id="in-{{ include.name }}" type="radio" name="distro" />
+<label for="in-{{ include.name }}" class="icon btn btn-default" onclick="chooseDlc(this, '{{ include.name }}')" markdown="1">
+<img src="{{ site.baseurl }}/assets/{{ include.name }}.png" class="osimg" /><br />
+ {{ include.text }}
+</label>{% comment %}
+{% endcomment %}
diff --git a/_includes/footer.html b/_includes/footer.html
index 2ec5d5a..1e2cfae 100644
--- a/_includes/footer.html
+++ b/_includes/footer.html
@@ -13,4 +13,4 @@
</p>
</div>
</footer>
-<script src="/assets/js/irssi.js"></script>
+<script src="{{ site.baseurl }}/assets/js/irssi.js"></script>
diff --git a/_layouts/welcome.html b/_layouts/welcome.html
index 8cf0f40..95cafd5 100644
--- a/_layouts/welcome.html
+++ b/_layouts/welcome.html
@@ -25,8 +25,8 @@
-->
</p>
<p class="hidden-xs">Irssi is free software licensed under the GPLv2, available for Linux, BSD, Solaris, Apple, Cygwin, &hellip;</p>
- <p style="line-height: 3"><a class="btn btn-lg btn-danger" href="/download/" role="button">Getting Irssi »</a>
- <a class="btn btn-lg btn-info" href="/documentation/" role="button">Read tutorials and docs »</a>
+ <p style="line-height: 3"><a class="btn btn-lg btn-danger" href="{{ site.baseurl }}/download/" role="button">Getting Irssi »</a>
+ <a class="btn btn-lg btn-info" href="{{ site.baseurl }}/documentation/" role="button">Read tutorials and docs »</a>
</p>
</div>
<div class="visible-xs col-xs-1"></div>
@@ -83,7 +83,7 @@
<p>
Irssi makes it easy to write protocol modules in
C. You can enjoy the chatting power of Irssi in
- combination with IRC, ICB or SILC. Find more modules on the <a href="/modules/">Modules</a> page.</p>
+ combination with IRC, ICB or SILC. Find more modules on the <a href="{{ site.baseurl }}/modules/">Modules</a> page.</p>
</div>
<div class="col-sm-4 col-md-3">
<h3>Scripting</h3>
diff --git a/assets/css/style.css b/assets/css/style.css
index c14ed25..f7b4213 100644
--- a/assets/css/style.css
+++ b/assets/css/style.css
@@ -56,6 +56,18 @@ p.center {
margin-top: -65px;
height: 65px;
visibility: hidden;
+ position: relative;
+ z-index: -1;
+ pointer-events: none;
+}
+*[id]:not(button):not(input):not([href]):not(#navbar) {
+ position: inherit;
+ /* z-index: -1; */
+ /* pointer-events: none; */
+}
+/* there is this weird issue with above code making links not clickable below anchors... */
+.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
+ position: inherit;
}
#___gcse_0:before { display: inline; }
@@ -122,7 +134,7 @@ a[rel="external"]:hover:after,a.rel-external:hover:after {
/* Tweak to make the menu visible (otherwise Bugs is cut off) */
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
- max-height: 412px;
+ max-height: 416px;
}
@@ -184,11 +196,97 @@ blockquote {
height: 80vh !important;
}
-.osicon {
+/* download page */
+.osicon, .obsicon {
padding-right: 1ex;
margin-bottom: 1ex;
}
+.obsicon {
+ float: left;
+}
+
+.dlc .osimg {
+}
+
+.dlc input {
+ opacity: 0;
+ position: fixed;
+}
+.dlc .info h3 {
+ display: none;
+}
+
+.dlc .icon {
+ display: inline-block;
+ width: 105px;
+ text-align: center;
+ white-space: normal;
+ margin-top: 1ex;
+}
+
+.dlc input:checked + label {
+ background-color: #e6e6e6;
+}
+
+.dlc input:focus + label {
+ border: 1px dashed #666666;
+}
+
+@media (max-width: 768px) {
+ .irssi-release,.irssi-git { display: inline-block; }
+}
+
+.dlc .info, .dlc .obs-info { display: none; }
+.row.obs-info, .row.obs-info .btn { font-size: small; }
+
+.dlc input:nth-of-type(1):checked ~ .info:nth-of-type(1),
+.dlc input:nth-of-type(2):checked ~ .info:nth-of-type(2),
+.dlc input:nth-of-type(3):checked ~ .info:nth-of-type(3),
+.dlc input:nth-of-type(4):checked ~ .info:nth-of-type(4),
+.dlc input:nth-of-type(5):checked ~ .info:nth-of-type(5),
+.dlc input:nth-of-type(6):checked ~ .info:nth-of-type(6),
+.dlc input:nth-of-type(7):checked ~ .info:nth-of-type(7),
+.dlc input:nth-of-type(8):checked ~ .info:nth-of-type(8),
+.dlc input:nth-of-type(9):checked ~ .info:nth-of-type(9),
+.dlc input:nth-of-type(10):checked ~ .info:nth-of-type(10),
+.dlc input:nth-of-type(11):checked ~ .info:nth-of-type(11),
+.dlc input:nth-of-type(12):checked ~ .info:nth-of-type(12),
+.dlc input:nth-of-type(13):checked ~ .info:nth-of-type(13),
+.dlc input:nth-of-type(14):checked ~ .info:nth-of-type(14),
+.dlc input:nth-of-type(15):checked ~ .info:nth-of-type(15),
+.dlc input:nth-of-type(16):checked ~ .info:nth-of-type(16),
+.dlc input:nth-of-type(17):checked ~ .info:nth-of-type(17),
+.dlc input:nth-of-type(18):checked ~ .info:nth-of-type(18),
+.dlc input:nth-of-type(19):checked ~ .info:nth-of-type(19),
+.dlc input ~ .no-info
+{
+ display: block;
+ margin: 2em;
+ padding: 1em;
+ border: 1ex solid #d9edf7; /* @bg-info color */
+ border-radius: 4px; /* like @btn */
+}
+
+.dlc input ~ .no-info {
+ border-color: #f7ecb5; /* @bg-warning:hover color */
+}
+.dlc input:checked ~ .no-info { display: none; }
+
+/* here the hard-coded item numbers which show obs download info */
+.dlc input:nth-of-type(2):checked ~ .obs-info,
+.dlc input:nth-of-type(3):checked ~ .obs-info,
+.dlc input:nth-of-type(6):checked ~ .obs-info,
+.dlc input:nth-of-type(7):checked ~ .obs-info,
+.dlc input:nth-of-type(8):checked ~ .obs-info {
+ display: block;
+ padding: 1em;
+}
+/* no irssi-git for arch linux currently */
+.dlc input:nth-of-type(7):checked ~ .obs-info .irssi-git { display: none; }
+
+
+/* collapsing the about-page columns */
@media (min-width:992px) {
.two-column {
-moz-column-count: 2;
diff --git a/assets/js/irssi.js b/assets/js/irssi.js
index eb088aa..460f76a 100644
--- a/assets/js/irssi.js
+++ b/assets/js/irssi.js
@@ -10,3 +10,88 @@ function initMenu() {
document.addEventListener("DOMContentLoaded", function(event) {
initMenu();
});
+
+// http://stackoverflow.com/a/34003331
+if (Element.prototype.scrollIntoView && !Element.prototype.scrollIntoViewIfNeeded) {
+ Element.prototype.scrollIntoViewIfNeeded = function (centerIfNeeded) {
+ function withinBounds(value, min, max, extent) {
+ if (false === centerIfNeeded || max <= value + extent && value <= min + extent) {
+ return Math.min(max, Math.max(min, value));
+ } else {
+ return (min + max) / 2;
+ }
+ }
+
+ function makeArea(left, top, width, height) {
+ return { "left": left, "top": top, "width": width, "height": height
+ , "right": left + width, "bottom": top + height
+ , "translate":
+ function (x, y) {
+ return makeArea(x + left, y + top, width, height);
+ }
+ , "relativeFromTo":
+ function (lhs, rhs) {
+ var newLeft = left, newTop = top;
+ lhs = lhs.offsetParent;
+ rhs = rhs.offsetParent;
+ if (lhs === rhs) {
+ return area;
+ }
+ for (; lhs; lhs = lhs.offsetParent) {
+ newLeft += lhs.offsetLeft + lhs.clientLeft;
+ newTop += lhs.offsetTop + lhs.clientTop;
+ }
+ for (; rhs; rhs = rhs.offsetParent) {
+ newLeft -= rhs.offsetLeft + rhs.clientLeft;
+ newTop -= rhs.offsetTop + rhs.clientTop;
+ }
+ return makeArea(newLeft, newTop, width, height);
+ }
+ };
+ }
+
+ var parent, elem = this, area = makeArea(
+ this.offsetLeft, this.offsetTop,
+ this.offsetWidth, this.offsetHeight);
+ while ((parent = elem.parentNode) instanceof HTMLElement) {
+ var clientLeft = parent.offsetLeft + parent.clientLeft;
+ var clientTop = parent.offsetTop + parent.clientTop;
+
+ // Make area relative to parent's client area.
+ area = area.
+ relativeFromTo(elem, parent).
+ translate(-clientLeft, -clientTop);
+
+ parent.scrollLeft = withinBounds(
+ parent.scrollLeft,
+ area.right - parent.clientWidth, area.left,
+ parent.clientWidth);
+
+ parent.scrollTop = withinBounds(
+ parent.scrollTop,
+ area.bottom - parent.clientHeight, area.top,
+ parent.clientHeight);
+
+ // Determine actual scroll amount by reading back scroll properties.
+ area = area.translate(clientLeft - parent.scrollLeft,
+ clientTop - parent.scrollTop);
+ elem = parent;
+ }
+ };
+}
+
+function chooseDlc(e, name) {
+ var e1 = document.getElementsByClassName('about-' + name)[0];
+
+ var ec = e.control;
+ var checked = ec ? ec.checked : null;
+ window.setTimeout(function() {
+ if (e1 && e1.scrollIntoViewIfNeeded) {
+ e1.scrollIntoViewIfNeeded(false);
+ }
+ if (checked) {
+ ec.checked = false;
+ }
+ }, 0);
+ return true;
+}
diff --git a/assets/obs.png b/assets/obs.png
new file mode 100644
index 0000000..9c58da4
--- /dev/null
+++ b/assets/obs.png
Binary files differ
diff --git a/download/index.markdown b/download/index.markdown
index f4376b6..43a2cba 100644
--- a/download/index.markdown
+++ b/download/index.markdown
@@ -5,113 +5,156 @@ permalink: /download/
categories: [ _nav, _6 ]
---
-There are several ways you can get Irssi:
+There are several ways you can get Irssi<span class="hidden-md hidden-lg">:</span>
-0. [Ready-Made Packages](#distributions-packages)
-0. [Compiling from Sources](#sources)
+<div class="hidden-md hidden-lg" markdown="1">
-## Distributions' Packages
+0. [Binary Packages](#binary-packages)
+0. [Compiling from Sources](#release-sources)
-<div class="row">
-<div class="col-md-4" markdown="1">
+</div>
+
+<div class="col-md-7 col-sm-12" markdown="1">
+
+## Binary Packages
+
+<div class="dlc row">{%
+include dl_os_icon.html name="Windows" text="**Windows**" %}{%
+include dl_os_icon.html name="debian" text="**Debian**" %}{%
+include dl_os_icon.html name="ubuntu" text="**Ubuntu**" %}{%
+include dl_os_icon.html name="macosx" text="**OS X**" %}{%
+include dl_os_icon.html name="gentoo" text="**Gentoo**" %}{%
+include dl_os_icon.html name="openSUSE" text="**SuSE**" %}{%
+include dl_os_icon.html name="arch" text="**ArchLinux**" %}{%
+include dl_os_icon.html name="fedora" text="**Fedora/RHEL**" %}{%
+include dl_os_icon.html name="opencsw" text="**Solaris**" %}{%
+include dl_os_icon.html name="slackware" text="**Slackware**"
+%}
+
+<!-- the following sections are opened purely based on the order, it
+ has to follow the buttons above. scrolling is done with javascript to
+ the about-class -->
+<div class="info about-Windows" markdown="1">
-![][1]{:class='osicon'}**Windows**
+### Windows
Download setup.exe from [Cygwin][2]{:rel='external'} and select irssi during the package selection step. To start irssi, open MinTTY (link should be on your Desktop) and type `irssi`
-[1]: /assets/Windows.png
[2]: https://www.cygwin.com/
</div>
-<div class="col-md-4" markdown="1">
+<div class="info about-debian" markdown="1">
-![][3]{:class='osicon'}![][4]{:class='osicon'}**Debian/Ubuntu**
+### Debian
`apt-get install irssi`.
You may find more up to date version on [Debian Backports][5]{:rel='external'}
-[3]: /assets/debian.png
-[4]: /assets/ubuntu.png
[5]: http://backports.debian.org/
</div>
-<div class="col-md-4" markdown="1">
+<div class="info about-ubuntu" markdown="1">
+
+### Ubuntu
+
+`apt-get install irssi`.
+
+</div>
+<div class="info about-macosx" markdown="1">
-![][6]{:class='osicon'}**OS X**
+### OS X
Install [Homebrew][7]{:rel='external'}, then
`brew install irssi`
You can also install Git with `--HEAD`
-[6]: /assets/macosx.png
[7]: http://brew.sh/
</div>
-</div>
-<div class="row">
-<div class="col-md-4" markdown="1">
+<div class="info about-gentoo" markdown="1">
-![][8]{:class='osicon'}**Gentoo**
+### Gentoo
`emerge irssi`
-[8]: /assets/gentoo.png
-
</div>
-<div class="col-md-4" markdown="1">
+<div class="info about-openSUSE" markdown="1">
-![][19]{:class='osicon'}**SuSE**
+### SuSE
`zypper in irssi`.
You may find more up to date versions on [openSUSE Package Search][20]{:rel='external'}
-[19]: /assets/openSUSE.png
[20]: http://software.opensuse.org/package/irssi
</div>
-<div class="col-md-4" markdown="1">
+<div class="info about-arch" markdown="1">
-![][9]{:class='osicon'}**ArchLinux**
+### ArchLinux
`pacman -S irssi`
-[9]: /assets/arch.png
-
</div>
-</div>
-<div class="row">
-<div class="col-md-4" markdown="1">
+<div class="info about-fedora" markdown="1">
-![][10]{:class='osicon'}**Fedora/Red Hat**
+### Fedora
`dnf install irssi` or
`yum install irssi`
-[10]: /assets/fedora.png
-
</div>
-<div class="col-md-4" markdown="1">
+<div class="info about-opencsw" markdown="1">
-![][11]{:class='osicon'}**Solaris**
+### Solaris
`pkg-get install irssi`
-[11]: /assets/opencsw.png
-
</div>
-<div class="col-md-4" markdown="1">
+<div class="info about-slackware" markdown="1">
-![][12]{:class='osicon'}**Slackware**
+### Slackware
`slackpkg install irssi`
-[12]: /assets/slackware.png
+</div>
+<div class="no-info" markdown="1">
+
+If your system is not listed, you can still check your systems' package manager or otherwise compile Irssi from source<span class="visible-xs-inline visible-sm-inline">.</span><span class="hidden-xs hidden-sm"> **&#10230;**</span>
+
+</div>
+
+<!-- unfortunately we have to hard-code the display criteria for obs-info in the style.css -->
+<div class="row obs-info" markdown="1">
+<div class="col-sm-2 col-md-3" markdown="1">
+
+![][19]{:class='obsicon'}
+
+</div>
+<div class="col-sm-10 col-md-9">
+<div class="col-sm-12 col-lg-6" markdown="1">
+
+The [openSUSE Build Service](http://build.opensuse.org/){:rel='external'} is building Irssi release packages and Irssi git snapshot packages for Debian, Fedora, Ubuntu, and openSUSE.
</div>
+<div class="irssi-git col-sm-6" markdown="1">
+
+[Install irssi-git](//software.opensuse.org/download.html?project=home:ailin_nemui:irssi-git;package=irssi-git){:class='btn btn-info'}
+
</div>
+<div class="irssi-release col-sm-6" markdown="1">
-## Sources
+[Install irssi release](//software.opensuse.org/download.html?project=home:ailin_nemui:irssi-test;package=irssi){:class='btn btn-success'}
+
+</div>
+</div>
+</div>
+</div>
+
+</div>
+<div class="col-md-5" markdown="1">
+
+## Release Sources
Latest release version: **0.8.19** – [Downloads][14]{:rel='external'}
@@ -127,7 +170,7 @@ You shouldn't really trust this key without verifying its fingerprint. See it wi
(This key is different from the one used to sign binaries of versions before 0.8.10. More gpg help can be found from GPG manual)
-### Development sources
+## Development sources
[Git][16]{:rel='external'} – You can also get the development version. To check it out, run
@@ -137,10 +180,12 @@ After check-out, you **must** run `./autogen.sh`. It may be necessary to install
See also: [Commit Log][18]{:rel='external'}
+</div>
+
[13]: //github.com/irssi-import/irssi/releases
[14]: //github.com/irssi/irssi/releases
[15]: //github.com/irssi/irssi/blob/master/INSTALL
[16]: //github.com/irssi/irssi
[17]: //github.com/shabble/irssi-docs/wiki/Irssi-0.8.17#compiling-from-git
[18]: //github.com/irssi/irssi/commits/master
-
+[19]: {{ site.baseurl }}/assets/obs.png \ No newline at end of file