Skip to content

Commit e28c4be

Browse files
committedApr 16, 2020
website: import full sources
Import full website sources, rather than relying on external auto-generation. Signed-off-by: David Rheinsberg <[email protected]>
1 parent 4f76e6d commit e28c4be

24 files changed

+255
-809
lines changed
 

Diff for: ‎_collections/_projects_nettools/n-acd.md

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
title: n-acd
3+
description: IPv4 Address Conflict Detection
4+
licenses:
5+
- Apache Software License 2.0
6+
- Lesser General Public License 2.1+
7+
---
8+
The *n-acd* project implements the *IPv4 Address Conflict Detection* standard
9+
as defined in *RFC-5227*. The state machine is implemented in a shared library
10+
and provides a stable *ISO-C11* API. The implementation is linux-only and
11+
relies heavily on the API behavior of recent linux kernel releases.

Diff for: ‎_collections/_projects_nettools/n-dhcp4.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
title: n-dhcp4
3+
description: Dynamic Host Configuration Protocol for IPv4
4+
licenses:
5+
- Apache Software License 2.0
6+
- Lesser General Public License 2.1+
7+
---
8+
The n-dhcp4 project implements the IPv4 Dynamic Host Configuration Protocol as
9+
defined in RFC-2132+.

Diff for: ‎_collections/_projects_nettools/n-ipv4ll.md

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
title: n-ipv4ll
3+
description: IPv4 Link-Local Address Selection
4+
licenses:
5+
- Apache Software License 2.0
6+
- Lesser General Public License 2.1+
7+
---
8+
The *n-ipv4ll* project implements link-local address selection for IPv4 as
9+
defined in *RFC-3927*. The implementation is linux-only and relies on modern
10+
linux kernel behavior and features.

Diff for: ‎_config.yml

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# Site configuration
2+
title: "nettools"
3+
name: "Nettools"
4+
description: "Linux Network Management Tools"
5+
author: "Nettools Project"
6+
7+
# Resource configuration
8+
avatar: "images/nettools.svg"
9+
favicon: "images/nettools.ico"
10+
url: "https://nettools.github.io"
11+
12+
# Media handles
13+
media:
14+
email: "nettools-devel@googlegroups.com"
15+
github: "nettools"
16+
17+
#
18+
# Generic Setup
19+
#
20+
21+
collections:
22+
projects_nettools:
23+
output: true
24+
25+
defaults:
26+
- scope:
27+
path: ""
28+
type: "pages"
29+
values:
30+
layout: "page"
31+
- scope:
32+
path: "_collections/_projects_*"
33+
values:
34+
layout: "project"
35+
permalink: "/:title/"
36+
37+
collections_dir: "_collections"
38+
39+
plugins:
40+
- jekyll-sitemap

Diff for: ‎_includes/head.html

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<head>
2+
<meta charset="utf-8" />
3+
<meta content='text/html; charset=utf-8' http-equiv='Content-Type'>
4+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
5+
6+
{% if page.title %}
7+
<title>{{ page.title }}</title>
8+
<meta name="title" content="{{ page.title }}" />
9+
<meta property="og:title" content="{{ page.title }}" />
10+
{% else %}
11+
<title>{{ site.name }} – {{ site.description }}</title>
12+
<meta name="title" content="{{ site.name }} – {{ site.description }}" />
13+
<meta property="og:title" content="{{ site.name }} – {{ site.description }}" />
14+
{% endif %}
15+
16+
{% if page.excerpt %}
17+
<meta name="description" content="{{ page.excerpt | strip_html }}" />
18+
<meta property="og:description" content="{{ page.excerpt | strip_html }}" />
19+
{% else %}
20+
<meta name="description" content="{{ site.description }}">
21+
<meta property="og:description" content="{{ site.description }}" />
22+
{% endif %}
23+
24+
<meta name="author" content="{{ site.author }}" />
25+
26+
<link rel="shortcut icon" href="{{ site.baseurl }}/{{ site.favicon }}" />
27+
<link rel="stylesheet" type="text/css" href="{{ site.baseurl }}/stylesheets/style.css" />
28+
<link rel="stylesheet" type="text/css" href="{{ site.baseurl }}/stylesheets/media-icons.css" />
29+
<link rel="stylesheet" type="text/css" href="{{ site.baseurl }}/stylesheets/syntax.css" />
30+
</head>

Diff for: ‎_includes/media-icons.html

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
{% if site.media.email %}<a href="mailto:{{ site.media.email }}"><i class="media-icon email"></i></a>{% endif %}
2+
{% if site.media.github %}<a href="https://github.com/{{ site.media.github }}"><i class="media-icon github"></i></a>{% endif %}

Diff for: ‎_layouts/page.html

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
layout: root
3+
---
4+
<article>
5+
{{ content }}
6+
</article>

Diff for: ‎_layouts/project.html

+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
layout: root
3+
style_pair_key: "fl cl mr2 b"
4+
---
5+
<article>
6+
<h1>{{ page.title }}</h1>
7+
8+
<dl class="ml4">
9+
<dt class="{{ layout.style_pair_key }}">Repository:</dt>
10+
<dd>
11+
<a href="https://github.com/{{ site.title }}/{{ page.title }}">@GitHub</a>
12+
</dd>
13+
<dt class="{{ layout.style_pair_key }}">Issue-Tracker:</dt>
14+
<dd>
15+
<a href="https://github.com/{{ site.title }}/{{ page.title }}/issues">@GitHub</a></li>
16+
</dd>
17+
{% if page.documentation %}
18+
<dt class="{{ layout.style_pair_key }}">Documentation:</dt>
19+
<dd>
20+
{{ page.documentation }}
21+
</dd>
22+
{% endif %}
23+
{% if page.licenses %}
24+
<dt class="{{ layout.style_pair_key }}">Licenses:</dt>
25+
<dd class="cl">
26+
<ul class="ma0">
27+
{% for license in page.licenses %}
28+
<li class="i">{{ license }}</li>
29+
{% endfor %}
30+
</ul>
31+
</dd>
32+
{% endif %}
33+
</dl>
34+
35+
{{ content }}
36+
</article>

Diff for: ‎_layouts/root.html

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
---
3+
<!DOCTYPE html>
4+
<html>
5+
{% include head.html %}
6+
7+
<body>
8+
<header class="tc pv4">
9+
<div>
10+
<a href="{{ '' | relative_url }}/">
11+
<img class="h3 w3"
12+
alt="Back to home"
13+
src="{{ site.avatar | relative_url }}" />
14+
</a>
15+
<h1 class="f5 f4-ns fw6 black-70">{{ site.name }}</h1>
16+
<h2 class="f6 black-70 fw2 ttu tracked">{{ site.description }}</h2>
17+
</div>
18+
19+
<nav class="lh-copy">
20+
<a href="{{ '' | relative_url }}/"
21+
class="mh2 link blue hover-mid-gray">Home</a>
22+
{% if site.media.github %}
23+
<a href="https://github.com/{{ site.media.github }}"
24+
class="mh2 link blue hover-mid-gray">@GitHub</a>
25+
{% endif %}
26+
</nav>
27+
</header>
28+
29+
<main class="mw7 overflow-hidden
30+
center pv4 ph2
31+
bt b--light-gray
32+
lh-copy markdown">
33+
{{ content }}
34+
</main>
35+
36+
<footer class="tc pv3 bt bb b--light-silver bg-light-gray">
37+
{% include media-icons.html %}
38+
</footer>
39+
</body>
40+
</html>

Diff for: ‎images/c-util.ico

-4.19 KB
Binary file not shown.

Diff for: ‎images/c-util.png

-26.1 KB
Binary file not shown.

Diff for: ‎images/c-util.svg

-110
This file was deleted.

Diff for: ‎images/converse1.ico

-4.19 KB
Binary file not shown.

Diff for: ‎images/converse1.png

-29 KB
Binary file not shown.

Diff for: ‎images/converse1.svg

-82
This file was deleted.

Diff for: ‎images/r-util.ico

-4.19 KB
Binary file not shown.

Diff for: ‎images/r-util.png

-29.7 KB
Binary file not shown.

Diff for: ‎images/r-util.svg

-110
This file was deleted.

Diff for: ‎index.html

+71-179
Original file line numberDiff line numberDiff line change
@@ -1,199 +1,91 @@
1-
<!DOCTYPE html>
2-
<html>
3-
<head>
4-
<meta charset="utf-8" />
5-
<meta content='text/html; charset=utf-8' http-equiv='Content-Type'>
6-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
1+
---
2+
---
3+
{% capture overview %}
4+
# Overview
75

8-
9-
<title>Nettools – Linux Network Management Tools</title>
10-
<meta name="title" content="Nettools – Linux Network Management Tools" />
11-
<meta property="og:title" content="Nettools – Linux Network Management Tools" />
12-
13-
14-
15-
<meta name="description" content="Linux Network Management Tools">
16-
<meta property="og:description" content="Linux Network Management Tools" />
17-
18-
19-
<meta name="author" content="Nettools Project" />
20-
21-
<link rel="shortcut icon" href="/images/nettools.ico" />
22-
<link rel="stylesheet" type="text/css" href="/stylesheets/style.css" />
23-
<link rel="stylesheet" type="text/css" href="/stylesheets/media-icons.css" />
24-
<link rel="stylesheet" type="text/css" href="/stylesheets/syntax.css" />
25-
</head>
26-
27-
28-
<body>
29-
<header class="tc pv4">
30-
<div>
31-
<a href="/">
32-
33-
<img class="h3 w3"
34-
alt="Back to home"
35-
src="/images/nettools.svg" />
36-
37-
</a>
38-
<h1 class="f5 f4-ns fw6 black-70">Nettools</h1>
39-
<h2 class="f6 black-70 fw2 ttu tracked">Linux Network Management Tools</h2>
40-
</div>
41-
42-
<nav class="lh-copy">
43-
<a href="/"
44-
class="mh2 link blue hover-mid-gray">Home</a>
45-
46-
<a href="https://github.com/nettools"
47-
class="mh2 link blue hover-mid-gray">@GitHub</a>
48-
49-
</nav>
50-
</header>
51-
52-
<main class="mw7 overflow-hidden
53-
center pv4 ph2
54-
bt b--light-gray
55-
lh-copy markdown">
56-
<article>
57-
58-
59-
<h1 id="overview">Overview</h1>
60-
61-
<p>The Nettools Project is a reusable implementation of network configuration
6+
The Nettools Project is a reusable implementation of network configuration
627
standards for Linux. At its core, it provides independent libraries that
638
implement the most common RFCs related to network configuration and management.
649
On top of these, it provides services that extend these libraries, as well as
6510
other networking resources, to provide an integrated view of all these sources
66-
at runtime.</p>
11+
at runtime.
6712

68-
<p>The Nettools Project implements standards that are at the core of network
13+
The Nettools Project implements standards that are at the core of network
6914
configuration. While many of these have been around for decades, the
70-
implementations provided by the Nettools Project focus on a few key aspects:</p>
71-
72-
<ul>
73-
<li>
74-
<p><strong>No Policy</strong>: Every network standard that is implemented by the Nettools
75-
Project comes with a pure library implementation, that
76-
provides access to the standard without placing additional
77-
policies. These libraries provide networking standards that
78-
are as close to the respective specifications as possible,
79-
while placing limited to no restrictions on top.
80-
On the contrary, these implementations are explicitly written
81-
without any specific environments in mind, but allow any
82-
networking manager or service to make use of them. This also
83-
implies that the APIs allow full control of the protocol
84-
behavior.</p>
85-
</li>
86-
<li>
87-
<p><strong>Asynchronous</strong>: Since network safety is crucial today, all implementations
88-
and services are provided with a fully asynchronous API.
89-
This allows placing their instances into isolated
90-
environments, while mapping the API to an asynchronous
91-
message-based interface. That is, while the libraries
92-
provide in-process APIs, they are explicitly written in a
93-
way that they can be mapped easily to a message-based
94-
communication channel. Adopters of these libraries are
95-
highly recommended to isolate execution of these protocols
96-
and make use of the asynchronous API.</p>
97-
</li>
98-
<li>
99-
<p><strong>21st Century</strong>: Networking standards like <em>DHCP</em> and <em>ACD</em> have been
100-
around for decades. Thus, they were written against
101-
hardware that was obsoleted many years ago. Modern
102-
hardware often no longer fits the models used in the
103-
70ths. Therefore, the nettools implementations try to port
104-
old standards to modern hardware, providing knobs to tune
105-
parameters that no longer apply in the 21st century (no,
106-
today it is no longer acceptable to wait 9s on local links
107-
for address conflict detection to finish).</p>
108-
</li>
109-
<li>
110-
<p><strong>Linux-Only</strong>: Network configuration requires explicit knowledge of the
111-
corresponding counter-parts in the kernel. While high-level
112-
APIs may resemble each other across UNIX Derivatives, the
113-
underlying technologies differ. The Nettools Project aligns
114-
all implementations with modern Linux Kernel releases and
115-
makes use of linux-only features to improve performance and
116-
security of these implementations.</p>
117-
</li>
118-
</ul>
119-
120-
15+
implementations provided by the Nettools Project focus on a few key aspects:
16+
17+
* **No Policy**: Every network standard that is implemented by the Nettools
18+
Project comes with a pure library implementation, that
19+
provides access to the standard without placing additional
20+
policies. These libraries provide networking standards that
21+
are as close to the respective specifications as possible,
22+
while placing limited to no restrictions on top.
23+
On the contrary, these implementations are explicitly written
24+
without any specific environments in mind, but allow any
25+
networking manager or service to make use of them. This also
26+
implies that the APIs allow full control of the protocol
27+
behavior.
28+
29+
* **Asynchronous**: Since network safety is crucial today, all implementations
30+
and services are provided with a fully asynchronous API.
31+
This allows placing their instances into isolated
32+
environments, while mapping the API to an asynchronous
33+
message-based interface. That is, while the libraries
34+
provide in-process APIs, they are explicitly written in a
35+
way that they can be mapped easily to a message-based
36+
communication channel. Adopters of these libraries are
37+
highly recommended to isolate execution of these protocols
38+
and make use of the asynchronous API.
39+
40+
* **21st Century**: Networking standards like *DHCP* and *ACD* have been
41+
around for decades. Thus, they were written against
42+
hardware that was obsoleted many years ago. Modern
43+
hardware often no longer fits the models used in the
44+
70ths. Therefore, the nettools implementations try to port
45+
old standards to modern hardware, providing knobs to tune
46+
parameters that no longer apply in the 21st century (no,
47+
today it is no longer acceptable to wait 9s on local links
48+
for address conflict detection to finish).
49+
50+
* **Linux-Only**: Network configuration requires explicit knowledge of the
51+
corresponding counter-parts in the kernel. While high-level
52+
APIs may resemble each other across UNIX Derivatives, the
53+
underlying technologies differ. The Nettools Project aligns
54+
all implementations with modern Linux Kernel releases and
55+
makes use of linux-only features to improve performance and
56+
security of these implementations.
57+
{% endcapture %}
58+
{{ overview | markdownify }}
12159

12260
<h2 id="projects">Projects</h2>
12361
<ul>
124-
125-
126-
127-
<li>
128-
<p>
129-
<a href="/n-acd/"><strong>n-acd</strong></a>:
130-
<em>IPv4 Address Conflict Detection</em>
131-
</p>
132-
<p>The <em>n-acd</em> project implements the <em>IPv4 Address Conflict Detection</em> standard
133-
as defined in <em>RFC-5227</em>. The state machine is implemented in a shared library
134-
and provides a stable <em>ISO-C11</em> API. The implementation is linux-only and
135-
relies heavily on the API behavior of recent linux kernel releases.</p>
136-
137-
<ul>
138-
<li><strong>Repository</strong>: <a href="https://github.com/nettools/n-acd">@github</a></li>
139-
</ul>
140-
</li>
141-
62+
{% assign projects_name = "projects_" | append: site.title %}
63+
{% assign projects = site[projects_name] | sort: 'title' %}
64+
{% for project in projects %}
14265
<li>
14366
<p>
144-
<a href="/n-dhcp4/"><strong>n-dhcp4</strong></a>:
145-
<em>Dynamic Host Configuration Protocol for IPv4</em>
67+
<a href="{{ project.url | relative_url }}"><strong>{{ project.title }}</strong></a>:
68+
<em>{{ project.description }}</em>
14669
</p>
147-
<p>The n-dhcp4 project implements the IPv4 Dynamic Host Configuration Protocol as
148-
defined in RFC-2132+.</p>
149-
70+
{{ project.excerpt }}
15071
<ul>
151-
<li><strong>Repository</strong>: <a href="https://github.com/nettools/n-dhcp4">@github</a></li>
72+
<li><strong>Repository</strong>: <a href="https://github.com/{{ site.title }}/{{ project.title }}">@github</a></li>
15273
</ul>
15374
</li>
154-
155-
<li>
156-
<p>
157-
<a href="/n-ipv4ll/"><strong>n-ipv4ll</strong></a>:
158-
<em>IPv4 Link-Local Address Selection</em>
159-
</p>
160-
<p>The <em>n-ipv4ll</em> project implements link-local address selection for IPv4 as
161-
defined in <em>RFC-3927</em>. The implementation is linux-only and relies on modern
162-
linux kernel behavior and features.</p>
163-
164-
<ul>
165-
<li><strong>Repository</strong>: <a href="https://github.com/nettools/n-ipv4ll">@github</a></li>
166-
</ul>
167-
</li>
168-
75+
{% endfor %}
16976
</ul>
17077

78+
{% capture underview %}
79+
## Maintenance
17180

81+
All nettools projects are released under the terms of the *Apache Software
82+
License 2.0, Copyright © 2015-2019 Red Hat, Inc.* as well as the terms of the
83+
*Lesser General Public License 2.1+*.
17284

173-
<h2 id="maintenance">Maintenance</h2>
174-
175-
<p>All nettools projects are released under the terms of the <em>Apache Software
176-
License 2.0, Copyright © 2015-2019 Red Hat, Inc.</em> as well as the terms of the
177-
<em>Lesser General Public License 2.1+</em>.</p>
178-
179-
<ul>
180-
<li><strong>License</strong>: <em>Apache Software License 2.0</em></li>
181-
<li><strong>License</strong>: <em>Lesser General Public License 2.1+</em></li>
182-
<li><strong>Maintainers</strong>: <a href="https://github.com/dvdhrm">David Rheinsberg</a>,
183-
<a href="https://github.com/teg">Tom Gundersen</a></li>
184-
<li><strong>Mailing-List</strong>: <em>nettools-devel</em> <a href="https://groups.google.com/forum/#!forum/nettools-devel">@googlegroups</a></li>
185-
</ul>
186-
187-
188-
189-
</article>
190-
191-
</main>
192-
193-
<footer class="tc pv3 bt bb b--light-silver bg-light-gray">
194-
<a href="mailto:nettools-devel@googlegroups.com"><i class="media-icon email"></i></a>
195-
<a href="https://github.com/nettools"><i class="media-icon github"></i></a>
196-
197-
</footer>
198-
</body>
199-
</html>
85+
* **License**: *Apache Software License 2.0*
86+
* **License**: *Lesser General Public License 2.1+*
87+
* **Maintainers**: [David Rheinsberg](https://github.com/dvdhrm),
88+
[Tom Gundersen](https://github.com/teg)
89+
* **Mailing-List**: *nettools-devel* [@googlegroups](https://groups.google.com/forum/#!forum/nettools-devel)
90+
{% endcapture %}
91+
{{ underview | markdownify }}

Diff for: ‎n-acd/index.html

-106
This file was deleted.

Diff for: ‎n-dhcp4/index.html

-100
This file was deleted.

Diff for: ‎n-ipv4ll/index.html

-103
This file was deleted.

Diff for: ‎robots.txt

-1
This file was deleted.

Diff for: ‎sitemap.xml

-18
This file was deleted.

0 commit comments

Comments
 (0)
Please sign in to comment.