Initial commit

This commit is contained in:
Nox Sluijtman 2022-08-10 15:27:44 +02:00
commit d703c1bfad
31 changed files with 297 additions and 0 deletions

32
.github/workflows/upload.yml vendored Normal file
View file

@ -0,0 +1,32 @@
name: CI
# Controls when the action will run.
on:
# Triggers the workflow on push to master (including merged PRs)
push:
branches: [ master ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
update:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: Updating website.
uses: appleboy/ssh-action@master
with:
host: lukesmith.xyz
username: lugo
key: ${{ secrets.lugo_ssh }}
passphrase: ${{ secrets.lugo_pass }}
port: 22
script: |
cd /var/www/lugo
git stash
git pull --force origin master

3
README.md Normal file
View file

@ -0,0 +1,3 @@
# Voidcruiser Hugo theme
Hacked together based on the CSS I used before hugo andm a whole bunch of examples on the internet

6
archetypes/default.md Normal file
View file

@ -0,0 +1,6 @@
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---

11
config.toml Normal file
View file

@ -0,0 +1,11 @@
title = "Website Name"
baseURL = 'https://example.org'
yggURL = 'http://[201:1bf3:e688:a7ba:48f0:761a:c187:3550]'
onion = 'https://example.org'
i2p = 'https://example.org'
languageCode = 'en-us'
[params]
# "relatedtext" is the text that appears above the tag list at the bottom of pages.
#relatedtext = "Related:"
favicon = "/favicon.ico"

View file

@ -0,0 +1,13 @@
{{ partial "header.html" . -}}
<h1 class="page-head">{{ .Title }}</h1>
<main>
<article>
{{ .Content -}}
<ul>
{{- range.Pages }}
<li><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format "2006 Jan 02" }}</time> &ndash; <a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
{{ end -}}
</ul>
</article>
</main>
{{- partial "footer.html" . }}

26
layouts/_default/rss.xml Normal file
View file

@ -0,0 +1,26 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>{{ .Site.Title }}</title>
<link>{{ .Permalink }}</link>
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
<language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
<managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
<webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
<copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
{{ with .OutputFormats.Get "RSS" }}
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
{{ end }}
{{ range .Pages }}
<item>
<title>{{ .Title }}</title>
<link>{{ .Permalink }}</link>
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
{{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
<guid>{{ .Permalink }}</guid>
<description>{{- .Content | html -}}</description>
</item>
{{ end }}
</channel>
</rss>

View file

@ -0,0 +1,6 @@
{{ partial "header.html" . -}}
<h1 class="page-head">{{ .Title }}</h1>
<main>
{{ .Content -}}
</main>
{{ partial "footer.html" . }}

View file

@ -0,0 +1,11 @@
<!--{{ partial "nextprev.html" . -}}
{{ partial "taglist.html" . -}}-->
<footer>
<div class="mirror">[<a href="http://fxawfamgojpoxxgzmmjiro4wx4eycempujmryk6miz4a64ljl6sz7dqd.onion">onion</a>|<a href="http://lmwr2pugnmv4pkkxlneeepi4oysfly33zfuj7x25s6hfydysnpfq.b32.i2p">i2p</a>|<a href="http://[201:e2aa:7c70:666b:9a28:6406:be7f:bf0d]">yggdrasil</a>]
<a rel="lisence" href="http://creativecommons.org/licenses/by-sa/4.0/"><img alt="CC BY-SA 4.0" src="/stickers/cc4.png"></a>
<a rel="rss" href="/index.xml"><img src="/rss.svg" style="max-height:1em"></a>
<!--<a href="/index.xml"><img src="/rss.svg" style="max-height:1em" alt="RSS Feed" title="Subscribe via RSS for updates."></a>-->
</div>
</footer>
</body>
</html>

View file

@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="{{ .Site.Language }}">
<head>
<title>{{ if not .IsHome }}{{ .Title | title }} | {{ end }}{{ .Site.Title }}</title>
<!--<title>{{ .Title }} | {{ .Site.Title }}</title>-->
<link rel="canonical" href="{{ .Site.BaseURL }}">
<link rel='alternate' type='application/rss+xml' title="{{ .Site.Title }} RSS" href='/index.xml'>
<link rel='stylesheet' type='text/css' href='/style.css'>
{{ with .Site.Params.favicon }}<link rel="icon" href="{{ . }}">
{{ end -}}
<meta name="description" content="{{ with .Params.description }}{{ . }}{{ else }}{{ .Summary }}{{ end }}">
{{ if isset .Params "tags" }}<meta name="keywords" content="{{ with .Params.tags }}{{ delimit . ", " }}{{ end }}">
{{ end -}}
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="robots" content="index, follow">
<meta charset="utf-8">
</head>
<body>
<h1 class="logo" id="{{ .Site.Title }}">{{ .Site.Title | title }}</h1>
{{ partial "nav.html" . }}

13
layouts/partials/nav.html Normal file
View file

@ -0,0 +1,13 @@
<nav>
<details open="">
<summary>Nav</summary>
<a href="/">Home</a>
{{- $sec := .Page.Section }}{{ $file := .File.TranslationBaseName -}}
{{ range.Site.Menus.main.ByWeight }}{{ $base := path.Base .URL }}
<li><a {{ if or ( eq $sec $base ) ( eq $file $base ) ( and (eq $sec "") ( eq $file "_index") (eq $base "/") ) }}class="menuactive" {{ end }}href="{{ .URL }}"><span class=pre>{{ .Pre }}</span><span class=menuname>{{ .Name }}</span></a></li>
{{- end }}
{{ range .Site.RegularPages }}
<a href="{{ .RelPermalink }}">{{ .Title }}</a>
{{ end }}
</details>
</nav>

View file

@ -0,0 +1,10 @@
{{ if or .Next .Prev -}}
<div id="nextprev">
{{- with .Prev }}
<a href="{{ .RelPermalink}}"><div id="prevart">Previous:<br>{{.Title}}</div></a>
{{ end -}}
{{- with .Next -}}
<a href="{{ .RelPermalink}}"><div id="nextart">Next:<br>{{.Title}}</div></a>
{{ end -}}
</div>
{{ end -}}

View file

@ -0,0 +1,8 @@
<div class="stickers">
<a target="_blank" href="https://blackgnu.net/on-blockchain.html" ><img alt="Web 3 is a scam" src="/stickers/notoweb3.gif" /></a>
<a target="_blank" href="https://gemini.circumlunar.space/" ><img alt="Fuck Chromium" src="/stickers/same-shit-different-asshole_banner.gif" /></a>
<a target="_blank" href="https://www.vim.org" ><img alt="I ♡ vim" src="/stickers/edited-with-vim_banner.gif" /></a>
<a target="_blank" href="https://yewtu.be/watch?v=TdkdR92a7dU"><img alt="Nazi punks, fuck off!" src="/stickers/nonazis.png"></a>
<a target="_blank" href="https://wiby.me"><img alt="Wiby is great" src="/stickers/wiby.gif"></a>
<a target="_blank" href="https://anybrowser.org/campaign/"><img alt="Viewable in any browser" src="/stickers/4nobody.gif"></a>
</div>

View file

@ -0,0 +1,13 @@
{{- if isset .Params "tags" -}}
{{- $tagsLen := len .Params.tags -}}
{{- if gt $tagsLen 0 -}}
<div style="clear:both" class=taglist>
{{- with .Site.Params.relatedtext }}{{ . }}<br>{{ end -}}
{{- range $k, $v := .Params.tags -}}
{{- $url := printf "tags/%s" (. | urlize | lower) -}}
<a id="tag_{{ . | lower }}" href="{{ $url | absURL }}">{{ . | title }}</a>
{{- if lt $k (sub $tagsLen 1) }} &middot; {{ end -}}
{{- end -}}
</div>
{{- end -}}
{{- end }}

View file

@ -0,0 +1,13 @@
<!--
class: class of the figure
link: url the image directs to
alt: alternative text
caption: caption
mouse: what the image says when moused over ("title" in HTML)
-->
<audio controls="true">
<source src="{{.Get "src" }}" type="audio/{{.Get "audio" }}">
Sorry mate, your browser doesn't support playing audio files.
</source>
</audio>

View file

@ -0,0 +1 @@
<article>

View file

@ -0,0 +1 @@
</article>

View file

@ -0,0 +1,10 @@
<details>
<summary>Click to reveal video.</summary>
<iframe src="{{ index .Params 0 }}"
loading="lazy"
sandbox="allow-same-origin allow-scripts allow-popups"
allowfullscreen frameborder="0"
class="embvid"
title="Embedded Video">
</iframe>
</details>

View file

@ -0,0 +1,20 @@
<!--
class: class of the figure
link: url the image directs to
alt: alternative text
caption: caption
mouse: what the image says when moused over ("title" in HTML)
-->
<figure {{ with .Get "class" }}class="{{.}}"{{ end -}}>
{{- with .Get "link"}}<a href="{{.}}">{{ end -}}
<img src="{{ .Get "src" }}"
{{- with .Get "mouse" }} title="{{.}}"{{ end -}}
{{- with .Get "alt" }} alt="{{.}}"{{ end -}}
>
{{- if .Get "link"}}</a>{{ end -}}
{{- with .Get "caption" -}}
<figcaption>
{{- . -}}
</figcaption>
{{- end -}}
</figure>

View file

@ -0,0 +1,3 @@
{{ if isset .Site.Taxonomies "tags" }}{{ if not (eq (len .Site.Taxonomies.tags) 0) }} <ul id="tagcloud">
{{ range $name, $items := .Site.Taxonomies.tags }}{{ $url := printf "%s/%s" "tags" ($name | urlize | lower)}}<li><a href="{{ $url | absURL }}" id="tag_{{ $name }}">{{ $name | title }}</a></li>
{{ end }}</ul>{{ end }}{{ end }}

View file

@ -0,0 +1 @@
{{ .TableOfContents }}

View file

@ -0,0 +1,6 @@
<iframe src="{{ index .Params 0 }}"
loading="lazy"
sandbox="allow-same-origin allow-scripts allow-popups"
allowfullscreen frameborder="0"
title="Embedded Video">
</iframe>

1
static/rss.svg Normal file
View file

@ -0,0 +1 @@
<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 455.731 455.731" style="enable-background:new 0 0 455.731 455.731;" xml:space="preserve"><g><rect x="0" y="0" style="fill:#F78422;" width="455.731" height="455.731"/><g><path style="fill:#FFFFFF;" d="M296.208,159.16C234.445,97.397,152.266,63.382,64.81,63.382v64.348 c70.268,0,136.288,27.321,185.898,76.931c49.609,49.61,76.931,115.63,76.931,185.898h64.348 C391.986,303.103,357.971,220.923,296.208,159.16z"/><path style="fill:#FFFFFF;" d="M64.143,172.273v64.348c84.881,0,153.938,69.056,153.938,153.939h64.348 C282.429,270.196,184.507,172.273,64.143,172.273z"/><circle style="fill:#FFFFFF;" cx="109.833" cy="346.26" r="46.088"/></g></g></svg>

After

Width:  |  Height:  |  Size: 920 B

BIN
static/stickers/4nobody.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

View file

@ -0,0 +1,7 @@
<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx</center>
</body>
</html>

BIN
static/stickers/cc4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
static/stickers/nonazis.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
static/stickers/wiby.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

62
static/style.css Normal file
View file

@ -0,0 +1,62 @@
:root{
scrollbar-color: #333747 #1d1f21;
}
::selection{
background-color: #333747;
color:#c397d8;
}
html{
color: #eaeaea;
background-color: #1d1f21;
}
body{ padding: 0; margin: 0; }
a{ color: #f0c674; }
a:hover{ color: #1d1f21; background-color: #f0c674; }
a:hover::selection{ color: #f0c674; }
audio{ width: 100%; display: block; margin-top: 1em; }
main{ margin-left: 12em; margin-right: 1em; padding: 1em; border:1pt solid; margin-bottom: 1em;}
main h1{border-bottom: 1pt solid;}
article{padding:1em; border:#282a2e 1pt solid;}
nav{height: 100%;padding: 0.5em; float:left; background: #282a2e; border-right:solid 1pt; border-bottom: solid 1pt; width: 10em;}
nav li{list-style: none; list-style-position:outside;}
nav a{ display: block;}
summary{cursor:pointer;}
summary:hover{ color: #1d1f21; background-color: #f0c674; }
footer{text-align:center; border-top:1pt solid; margin-top: 1em;}
footer a{text-decoration:none;}
footer .mirror{text-align:center; color: #f0c674;}
code{ background: #282a2e; border-radius: 1em; padding: 2pt;}
pre{ background: #282a2e; padding: 1em; border-radius: 1em;}
.logo{
padding: 5pt 0;
margin:0;
width:100%;
border-bottom: 2pt solid;
background-color: #282a2e;
background: linear-gradient(to right,#b294bb,#282a2e);
}
.about ul{list-style:none;}
.about img{height:10em; float:left;}
header{text-transform: capitalize; text-align:center;border-bottom:2pt solid; font-weight:bold;}
.page-head{text-transform: capitalize; text-align:center;border-bottom:2pt solid; font-weight:bold;}
@media (max-width: 800px){
main{max-width:100%; margin: 1em;}
nav{padding:0; width: 100%; border-right:solid 0pt;}
nav a{ padding-left: 1em;}
}
.stickers{ text-align:center; }
.gay{
background:linear-gradient(-45deg, #cc6666, #f0c674, #b5bd68, #8abeb7, #81a2b3, #b294bb);
background-clip: text;
background-size:300%;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
animation:gay 8s ease-in-out infinite;
-moz-animation: gay 8s ease-in-out infinite;
-webkit-animation: gay 8s ease-in-out infinite;
}
@keyframes gay {
0%{background-position: 0px 50%;}
50%{background-position: 100% 50%;}
10%{background-position: 0px 50%;}
}