diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..77f3be0 --- /dev/null +++ b/CNAME @@ -0,0 +1,2 @@ +awoo.onl +www.awoo.onl diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..76a1594 --- /dev/null +++ b/Gemfile @@ -0,0 +1,4 @@ +source 'https://rubygems.org' + +gem 'jekyll', '~> 3.5.0' +gem 'redcarpet' diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..7d56cbe --- /dev/null +++ b/_config.yml @@ -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" diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 0000000..e956f19 --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,35 @@ + + + + {{ page.title }}{% if page.title != '' %}—{% endif %}awooOS + + + + + + + + +{% if page.has_code %} + +{% endif %} + + + +
+

awooOS

+ + +
+
+{{ content }} +
+ + diff --git a/_layouts/post.html b/_layouts/post.html new file mode 100644 index 0000000..a14c1dd --- /dev/null +++ b/_layouts/post.html @@ -0,0 +1,20 @@ +--- +layout: default +--- + +

{{ page.title }}

+ +

Share on Twitter

+ + +{{ content }} + + diff --git a/css/application.css b/css/application.css new file mode 100644 index 0000000..fa7de0b --- /dev/null +++ b/css/application.css @@ -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; +} diff --git a/css/pygments.css b/css/pygments.css new file mode 100644 index 0000000..1224755 --- /dev/null +++ b/css/pygments.css @@ -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 */ + diff --git a/index.markdown b/index.markdown new file mode 100644 index 0000000..fe9b2a0 --- /dev/null +++ b/index.markdown @@ -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 — 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* — event management system. +* *hal-i386* — the hardware abstraction layer implementation for + the i386 platform. +* *ktest* — kernel testing framework. +* *libpanic* — a framework for kernel panics. +* *scheduler* — process scheduler. +* [*dmm*](https://github.com/awooos/dmm) — memory management library. diff --git a/nightlies/index.html b/nightlies/index.html new file mode 100644 index 0000000..febb17b --- /dev/null +++ b/nightlies/index.html @@ -0,0 +1,54 @@ +--- +title: nightly builds +layout: default +--- + + +