Skip to content

Commit

Permalink
move content to zine, add github page
Browse files Browse the repository at this point in the history
  • Loading branch information
matu3ba committed Dec 20, 2024
1 parent 47322e9 commit e98deb6
Show file tree
Hide file tree
Showing 46 changed files with 1,333 additions and 40 deletions.
55 changes: 55 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# List of SHENNANIGAN
# 1. IndentAccessModifiers: true causes useless indentation in structs, but
# false makes access modifiers like public be on same line as member fields.
# 2. Unintuitive setup for cases like `enum Color { red, green, blue };` via
# config BasedOnStyle: WebKit instead of LLVM
# 3. default ColumnLimit: 80 instead of more sane 100 or 120

# clang-format < 16
# AlignTrailingComments: true/false
# clang-format >= 16
# AlignTrailingComments:
# Kind: Always
# OverEmptyLines: 0

# C and C++
---
AlignEscapedNewlines: Left
AlignTrailingComments: true
BasedOnStyle: LLVM
BraceWrapping:
AfterCaseLabel: false
AfterClass: false
AfterControlStatement: Never
AfterFunction: false
AfterEnum: false
AfterNamespace: false
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: false
BeforeElse: false
BeforeLambdaBody: false
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: true
BreakConstructorInitializers: BeforeComma
ColumnLimit: 120
IndentAccessModifiers: false
IndentCaseLabels: true
IndentPPDirectives: None
IndentRequiresClause: false
IndentWidth: 2
InsertNewlineAtEOF: true
# clang clang-format 19
# KeepEmptyLines:
# AtEndOfFile: true
LineEnding: LF
NamespaceIndentation: None
QualifierAlignment: Right
ReflowComments: false
RemoveSemicolon: true
RequiresClausePosition: WithFollowing
RequiresExpressionIndentation: OuterScope
SpaceAfterTemplateKeyword: false
TabWidth: 2
UseTab: Never
7 changes: 2 additions & 5 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,10 @@ charset = utf-8
end_of_line = lf
indent_size = 2
indent_style = space
insert_final_newline = false
trim_trailing_whitespace = true

[*.{c,h,lua}]
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
[*.{md,smd}]
trim_trailing_whitespace = false

[*.{zig,zon}]
Expand Down
30 changes: 30 additions & 0 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: github pages

on:
push:
branches:
- master
jobs:
deploy:
timeout-minutes: 20
runs-on: "ubuntu-latest"
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0 # Change if you need git info

- name: Setup Zig
uses: mlugg/setup-zig@v1
with:
version: 0.13.0

- name: Build
run: zig build --summary new

- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/master'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./zig-out
26 changes: 26 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
### Usage

../zig-linux-x86_64-0.13.0/zig build serve

### Markdown languages

- https://github.com/neurocyte/flow-syntax
- src/file_types.zig

### SHENNANIGANS when working with zine

```
[scripty] sections must be top level elements or be embedded in headings
content/articles/shennanigans_in_c.smd:28:3:
- []($section.id("pointer_semantics"))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
```
So one has to workaround this via
```
<pre>
<code class="c"
:html="$page.asset('./articles/shennanigans_in_c/ex1.c').syntaxHighLight('c')"
></code>
</pre>
```
or including sections into the item.
78 changes: 76 additions & 2 deletions assets/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,82 @@ code {
* std.debug.->print<-("test123\n", .{});
* }
**/
code.zig {

code.bash {
.comment { color: var(--gray); }
/* .constant { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; } */
}

code.c {
.comment { color: var(--gray); }
.constant.builtin { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; }
.function.method { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; }
.function { color: light-dark(var(--darkred), var(--brightred)); font-weight: bold; }
.keyword { color: light-dark(var(--black), var(--white)); font-weight: bold; }
.number { color: light-dark(var(--darkcyan), var(--lighttcyan)); }
.operator { color: light-dark(var(--black), var(--white)); font-weight: bold; }
.string { color: var(--red); }
.type { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; }
/* .variable */

/* .attribute { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; } */
/* .boolean { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .function.builtin { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; } */
/* .keyword.function { color: light-dark(var(--black), var(--white)); font-weight: bold; } */
/* .null { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .qualifier { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; } */
/* .undefined { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .bracket */
/* .field */
}

code.cpp {
.comment { color: var(--gray); }
.constant.builtin { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; }
.function.method { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; }
.function { color: light-dark(var(--darkred), var(--brightred)); font-weight: bold; }
.keyword { color: light-dark(var(--black), var(--white)); font-weight: bold; }
.number { color: light-dark(var(--darkcyan), var(--lighttcyan)); }
.operator { color: light-dark(var(--black), var(--white)); font-weight: bold; }
.string { color: var(--red); }
.type { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; }
/* .variable */

/* .attribute { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; } */
/* .boolean { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .function.builtin { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; } */
/* .keyword.function { color: light-dark(var(--black), var(--white)); font-weight: bold; } */
/* .null { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .qualifier { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; } */
/* .undefined { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .bracket */
/* .field */
}

code.python {
.comment { color: var(--gray); }
.constant.builtin { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; }
.function.method { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; }
.function { color: light-dark(var(--darkred), var(--brightred)); font-weight: bold; }
.keyword { color: light-dark(var(--black), var(--white)); font-weight: bold; }
.number { color: light-dark(var(--darkcyan), var(--lighttcyan)); }
.operator { color: light-dark(var(--black), var(--white)); font-weight: bold; }
.string { color: var(--red); }
.type { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; }
/* .variable */

/* .attribute { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; } */
/* .boolean { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .function.builtin { color: light-dark(var(--lm_blue), var(--dm_blue)); font-weight: normal; } */
/* .keyword.function { color: light-dark(var(--black), var(--white)); font-weight: bold; } */
/* .null { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .qualifier { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; } */
/* .undefined { color: light-dark(var(--darkcyan), var(--lighttcyan)); } */
/* .bracket */
/* .field */
}

code.zig {
.attribute { color: light-dark(var(--lm_bluegray), var(--dm_bluegray)); font-weight: bold; }
.boolean { color: light-dark(var(--darkcyan), var(--lighttcyan)); }
.comment { color: var(--gray); }
Expand Down Expand Up @@ -165,4 +239,4 @@ code.zig {
/* @media screen and (max-width: var(--content_width)) { .home_page { display: block; } } */
/* @media screen and (max-width: var(--content_width)) { .static_grid { display: block; } } */
@media screen and (max-width: 1200px) { .home_page { display: block; } }
@media screen and (max-width: 1200px) { .static_grid { display: block; } }
@media screen and (max-width: 1200px) { .static_grid { display: block; } }
24 changes: 22 additions & 2 deletions content/articles/ci_library.smd
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
.title = "CI Library",
.title = "Towards an extensible continuous integration library.",
.description = "Personal Website",
.author = "Jan Philipp Hafer",
.date = @date("2024-11-10T00:00:00"),
Expand All @@ -8,4 +8,24 @@
.draft = false,
---

TODO
This article describes

motivation for writing continuous integration as a library with main advantages being control, isolation and debuggability
maintenance effort
security tradeoffs
obstacles on cross operating system remote debugging
options to handle untrusted operating systems

for uniform execution representation and setup to efficiently mix and match the appropriate technique.

Motivation.
Maintenance effort.
Security tradeoffs.
Cross operating system remote debugging.
Untrusted operating systems.

Motivation.
Maintenance effort.
Security tradeoffs.
Cross operating system remote debugging.
Untrusted operating systems.
Loading

0 comments on commit e98deb6

Please sign in to comment.