Skip to content

Commit

Permalink
???????
Browse files Browse the repository at this point in the history
  • Loading branch information
duckinator committed Jan 3, 2018
1 parent f360019 commit bc50a78
Show file tree
Hide file tree
Showing 9 changed files with 383 additions and 0 deletions.
2 changes: 2 additions & 0 deletions CNAME
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
awoo.onl
www.awoo.onl
4 changes: 4 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
source 'https://rubygems.org'

gem 'jekyll', '~> 3.5.0'
gem 'redcarpet'
24 changes: 24 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
safe: true
include: [_headers]
exclude: [.gitignore, _bin, CNAME, LICENSE, Gemfile, Gemfile.lock]
timezone: America/New_York

markdown: redcarpet
redcarpet:
extensions: [with_toc_data]

url: https://awoo.onl

permalink: /blog/:title/

defaults:
-
scope:
path: "" # All files in the project.
values:
layout: "default"
-
scope:
path: "_posts"
values:
layout: "post"
35 changes: 35 additions & 0 deletions _layouts/default.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<!DOCTYPE html>
<html>
<head>
<title>{{ page.title }}{% if page.title != '' %}&mdash;{% endif %}awooOS</title>

<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="ID=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<!--<link rel="icon" type="image/png" href="/favicon.png">-->

<link rel="stylesheet" href="/css/application.css?cachebust={{ site.time | date: '%s.%N' }}">
{% if page.has_code %}
<link rel="stylesheet" href="/css/pygments.css?cachebust={{ site.time | date: '%s.%N' }}">
{% endif %}
</head>

<body>
<header>
<h1>awooOS</h1>

<nav>
<ul>
<li><a href="/">home</a></li><!--
--><li><a href="https://github.com/awooos/awooos">source</a></li><!--
--><li><a href="/nightlies/">nightly builds</a></li><!--
--><!--<li><a href="/blog/">blog</a></li>-->
</ul>
</nav>
</header>
<main>
{{ content }}
</main>
</body>
</html>
20 changes: 20 additions & 0 deletions _layouts/post.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
layout: default
---

<h2>{{ page.title }}</h2>

<p><a href="https://twitter.com/intent/tweet?text={{ page.title | url_encode }}&amp;url={{ page.url | absolute_url }}&amp;via=duckinator"><img src="https://img.shields.io/twitter/url/http/shields.io.svg?style=social" alt="Share on Twitter"></a></p>


{{ content }}

<script>
function add_tabindex() {
var code_divs = [].slice.call(document.querySelectorAll('.highlight'));

code_divs.forEach(function (div) { div.setAttribute('tabindex', 0); })
}

window.addEventListener('load', add_tabindex);
</script>
160 changes: 160 additions & 0 deletions css/application.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,160 @@
/* vim: set fs=css */

html {
box-sizing: border-box;
text-rendering: optimizeLegibility;
font-family: sans-serif;
}
*, *:before, *:after {
box-sizing: inherit;
}

body {
font-family: Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
font-size: 100%;
line-height: 1.5em;
color: #24292e;
background-color: #fff;
}

main, header, nav { display: block; }
header {
text-align: center;
margin-bottom: 2em;
}

main {
max-width: 65ch;
padding-bottom: 3em;
margin: auto;
}

main :first-child { margin-top: 0; }

code, kbd, pre, samp {
font-family: monospace;
font-size: 1em;
}

.highlight {
background: #fafafa;
overflow: auto;
}

.highlight pre {
padding: 2em;
}

/* 100ch is some arbitrary number that seems to work. */
@media(min-width: 100ch) {
.highlight {
transition: width 1s;
width: 65ch;
}

.highlight:hover, .highlight:focus, .highlight.active {
width: 85ch;
}
}

a {
color: #0366d6;
text-decoration: none;
}
a:hover, a:focus, a:active {
text-decoration: underline;
}

h1, h2 { border-bottom: 1px solid #eaecef; }

h1, h2, h3, h4 {
margin-top: 1em;
margin-bottom: 0em;
font-weight: 600;
line-height: 1em;
}

h1 { font-size: 2em; }
h2 { font-size: 1.75em; }
h3 { font-size: 1.5em; }
h4 { font-size: 1.25em; }

h3:target a:before,
h3 a:hover:before,
h3 a:focus:before,
h4:target a:before,
h4 a:hover:before,
h4 a:focus:before {
display: block;
content: '\25ba'; /* ► */
position: absolute;
margin-left: -1.25em;
color: #0366d6;
margin-top: -0.1em; /* HACK: Why does this fix alignment? */
}

p { margin-top: 1em; margin-bottom: 0; }
p.urgent {
border: 3px solid red;
margin: 2em 0;
padding: 1em;
}

ul { margin-top: 0.25em; }

h1 + ul, h2 + ul, h3 + ul, h4 + ul {
margin-top: 1em;
}

header h1 { padding-bottom: 0.25em; }

nav ul {
list-style: none;
padding: 0;
margin-top: 1em;
}
nav li {
display: inline-block;
}
nav li:after {
content: '\2022';
}
nav li:last-child:after {
content: '';
}

nav li a {
padding: 1em;
}

#table-of-contents, #table-of-contents + ol {
margin: 1em auto;
max-width: 40ch;
}

#table-of-contents {
margin-top: 2em;
margin-bottom: 0;
}

#table-of-contents + ol {
margin-top: 0;
padding-left: 1em;
margin-bottom: 2em;
}

#table-of-contents + ol li > a {
display: inline-block;
padding: 0.5em;
}

.vimeo-video {
margin-top: 1em;
border: 1px solid #ccc;
}

.vimeo-video p {
display: inline-block;
padding: 0.5em 1em;
margin-top: -0.5em;
}
62 changes: 62 additions & 0 deletions css/pygments.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
.hll { background-color: #ffffcc }
.c { color: #408080; font-style: italic } /* Comment */
.err { border: 1px solid #FF0000 } /* Error */
.k { color: #008000; font-weight: bold } /* Keyword */
.o { color: #666666 } /* Operator */
.cm { color: #408080; font-style: italic } /* Comment.Multiline */
.cp { color: #BC7A00 } /* Comment.Preproc */
.c1 { color: #408080; font-style: italic } /* Comment.Single */
.cs { color: #408080; font-style: italic } /* Comment.Special */
.gd { color: #A00000 } /* Generic.Deleted */
.ge { font-style: italic } /* Generic.Emph */
.gr { color: #FF0000 } /* Generic.Error */
.gh { color: #000080; font-weight: bold } /* Generic.Heading */
.gi { color: #00A000 } /* Generic.Inserted */
.go { color: #808080 } /* Generic.Output */
.gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.gs { font-weight: bold } /* Generic.Strong */
.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.gt { color: #0040D0 } /* Generic.Traceback */
.kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.kp { color: #008000 } /* Keyword.Pseudo */
.kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.kt { color: #B00040 } /* Keyword.Type */
.m { color: #666666 } /* Literal.Number */
.s { color: #BA2121 } /* Literal.String */
.na { color: #7D9029 } /* Name.Attribute */
.nb { color: #008000 } /* Name.Builtin */
.nc { color: #0000FF; font-weight: bold } /* Name.Class */
.no { color: #880000 } /* Name.Constant */
.nd { color: #AA22FF } /* Name.Decorator */
.ni { color: #999999; font-weight: bold } /* Name.Entity */
.ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.nf { color: #0000FF } /* Name.Function */
.nl { color: #A0A000 } /* Name.Label */
.nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.nt { color: #008000; font-weight: bold } /* Name.Tag */
.nv { color: #19177C } /* Name.Variable */
.ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.w { color: #bbbbbb } /* Text.Whitespace */
.mf { color: #666666 } /* Literal.Number.Float */
.mh { color: #666666 } /* Literal.Number.Hex */
.mi { color: #666666 } /* Literal.Number.Integer */
.mo { color: #666666 } /* Literal.Number.Oct */
.sb { color: #BA2121 } /* Literal.String.Backtick */
.sc { color: #BA2121 } /* Literal.String.Char */
.sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.s2 { color: #BA2121 } /* Literal.String.Double */
.se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.sh { color: #BA2121 } /* Literal.String.Heredoc */
.si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.sx { color: #008000 } /* Literal.String.Other */
.sr { color: #BB6688 } /* Literal.String.Regex */
.s1 { color: #BA2121 } /* Literal.String.Single */
.ss { color: #19177C } /* Literal.String.Symbol */
.bp { color: #008000 } /* Name.Builtin.Pseudo */
.vc { color: #19177C } /* Name.Variable.Class */
.vg { color: #19177C } /* Name.Variable.Global */
.vi { color: #19177C } /* Name.Variable.Instance */
.il { color: #666666 } /* Literal.Number.Integer.Long */

22 changes: 22 additions & 0 deletions index.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
---

awooOS is an experimental microkernel-based operating system. it aims to
use libraries and services for as much as possible, with a small core
kernel.

it's built around event-based architecture &mdash; even initializing the
hardware abstraction layer is done via an event system.

there are plans to pull out the various libraries into individual
standalone repositories.

some of the libraries are:

* *eventually* &mdash; event management system.
* *hal-i386* &mdash; the hardware abstraction layer implementation for
the i386 platform.
* *ktest* &mdash; kernel testing framework.
* *libpanic* &mdash; a framework for kernel panics.
* *scheduler* &mdash; process scheduler.
* [*dmm*](https://github.com/awooos/dmm) &mdash; memory management library.
54 changes: 54 additions & 0 deletions nightlies/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
title: nightly builds
layout: default
---

<ul id="nightlies"></ul>
<script>
var endpoint = "https://awooos.nyc3.digitaloceanspaces.com/";

function addRelease(release) {
var ul = document.getElementById("nightlies");
var li = document.createElement("li");
var a = document.createElement("a");
var url = endpoint + release["Key"];
var name = release["Key"].split("/").reverse()[0];

console.log(release);
a.setAttribute('href', url);
a.innerHTML = name;

li.appendChild(a);
ul.appendChild(li);
}

function pluck_text(node, element) {
return node.getElementsByTagName(element)[0].textContent;
}

function normalizeNode(node) {
var keys = ["Key", "LastModified", "ETag", "Size", "StorageClass", "Owner"];
var data = {};

keys.forEach(function (key) { data[key] = pluck_text(node, key); });

return data;
}

function addReleases(xml) {
releases = xml.getElementsByTagName("Contents");

// The .slice(1) is to drop the broken /nightlies/... file.
[].slice.call(releases).slice(1).map(normalizeNode).reverse().forEach(addRelease);
}

window.onload = function() {
fetch(endpoint).then(function (response) {
return response.text();
}).then(function (text) {
var parser = new DOMParser();
xml = parser.parseFromString(text, "text/xml");
addReleases(xml);
});;
};
</script>

0 comments on commit bc50a78

Please sign in to comment.