merge 'origin/develop' into master
All checks were successful
continuous-integration/drone/push Build is passing

* changed theme to `hermit`
* enhanced pipeline to autodeploy using rsync after a successful build
* added site content and reworked the logic a tiny bit
* added custom Gitea and Docker SVGs so I could use them
* used `hugo --minify` for tinier builds

Signed-off-by: surtur <a_mirre@utb.cz>
This commit is contained in:
surtur 2020-03-08 05:21:30 +01:00
commit 1004979dde
Signed by: wanderer
GPG Key ID: 19CE1EC1D9E0486D
20 changed files with 1399 additions and 73 deletions

@ -1,7 +1,7 @@
---
kind: pipeline
type: docker
name: hugo-builder
name: test-build
steps:
- name: hugo-extended
@ -11,9 +11,30 @@ steps:
- git submodule init
- git submodule update
- hugo version
- hugo --gc=true
- hugo --gc=true --minify
---
kind: pipeline
type: docker
name: deploy
steps:
- name: hugo-rsync-deploy
pull: always
image: immawanderer/archlinux-hugo:latest
commands:
- git submodule init
- git submodule update
- rm -rfv ./public
- hugo --gc=true --minify
- cat $hugo_key > hugo_deploy
- rsync -avze 'ssh -i hugo_deploy' --delete public/ $hugo_user@$hugo_host:$hugo_dir
- shred -zuv 7 hugo_deploy || true
when:
status:
- success
---
kind: pipeline
name: notifications
@ -28,6 +49,7 @@ clone:
trigger:
branch:
- master
- "dev*"
- "release/*"
event:
- push
@ -37,7 +59,7 @@ trigger:
- failure
depends_on:
- hugo-builder
- test-build
steps:
- name: discord
@ -73,7 +95,7 @@ trigger:
- failure
depends_on:
- hugo-builder
- test-build
steps:
- name: discord
@ -85,3 +107,34 @@ steps:
from_secret: discord_webhook_hourly_id
webhook_token:
from_secret: discord_webhook_hourly_token
---
kind: pipeline
name: notifications-deploy
platform:
os: linux
arch: amd64
clone:
disable: true
trigger:
status:
- success
- failure
depends_on:
- deploy
steps:
- name: discord
pull: always
image: appleboy/drone-discord:1.2.4
settings:
message: "{{#success build.status}} ✅ Build #{{build.number}} of `{{repo.name}}` has been successfully deployed.\n\n📝 Commit by {{commit.author}} on `{{commit.branch}}`:\n``` {{commit.message}} ```\n\n🌐 {{ build.link }} {{else}} ❌ Build #{{build.number}} of `{{repo.name}}` failed to deploy.\n\n📝 Commit by {{commit.author}} on `{{commit.branch}}`:\n``` {{commit.message}} ```\n🌐 {{ build.link }} {{/success}}\n\n"
webhook_id:
from_secret: discord_webhook_id
webhook_token:
from_secret: discord_webhook_token

3
.gitignore vendored

@ -1,2 +1,3 @@
#do not push builds
public/
public/
resources/

6
.gitmodules vendored

@ -1,3 +1,3 @@
[submodule "themes/hello-friend-ng"]
path = themes/hello-friend-ng
url = https://github.com/rhazdon/hugo-theme-hello-friend-ng.git
[submodule "themes/hermit"]
path = themes/hermit
url = https://github.com/Track3/hermit.git

10
archetypes/posts.md Normal file

@ -0,0 +1,10 @@
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
toc: false
images:
tags:
- untagged
---

@ -0,0 +1,33 @@
// Colors
//
$theme: #D8D8D8;
$text: #D8D8D8;
$light-grey: #282a2b; // Background
$dark-grey: #282a2b; // Hover Bar
$highlight-grey: #151718; // Highlight background of `keyword`
$midnightblue: #151718; // Code Background
// Fonts
//
$fonts: "Trebuchet MS", Verdana, "Verdana Ref", "Segoe UI", Candara, "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Tahoma, sans-serif;
$code-fonts: Consolas, "Andale Mono WT", "Andale Mono", Menlo, Monaco, "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", "Courier New", Courier, "YaHei Consolas Hybrid", monospace, "Segoe UI Emoji", "PingFang SC", "Microsoft YaHei";
// Mixins
//
@mixin dimmed {
opacity: .6;
}
@mixin aTag {
a {
word-wrap: break-word;
border: none;
box-shadow: inset 0 -1px 0 $theme;
transition-property: box-shadow;
transition-duration: .1s;
&:hover {
box-shadow: inset 0 -1em 0 $theme;
}
}
}

899
assets/scss/style.scss Normal file

@ -0,0 +1,899 @@
@import "predefined.scss";
@import "normalize.scss";
@import "syntax.scss";
@import "animate.scss";
/* Webkit Scrollbar Customize */
::-webkit-scrollbar {
width: 8px;
height: 8px;
background: $midnightblue;
}
::-webkit-scrollbar-thumb {
background: #888;
&:hover {
background: $text;
}
}
html {
background: $light-grey;
line-height: 1.6;
letter-spacing: .06em;
scroll-behavior: smooth;
}
body,
button,
input,
select,
textarea {
color: $text;
font-family: $fonts;
}
pre,
code,
pre tt {
font-family: $code-fonts;
}
pre {
padding: .7em 1.1em;
overflow: auto;
font-size: .9em;
line-height: 1.5;
letter-spacing: normal;
white-space: pre;
color: #eee;
background: $midnightblue;
border-radius: 4px;
// -webkit-overflow-scrolling: touch;
code {
padding: 0;
margin: 0;
background: $midnightblue;
}
}
code {
color: #eee;
background: $highlight-grey;
border-radius: 3px;
padding: 0 3px;
margin: 0 4px;
word-wrap: break-word;
letter-spacing: normal;
}
blockquote {
border-left: .25em solid;
margin: 1em;
padding: 0 1em;
font-style: italic;
cite {
font-weight: bold;
font-style: normal;
&::before {
content: "—— ";
}
}
}
a {
color: $text;
text-decoration: none;
border: none;
transition-property: color;
transition-duration: .4s;
transition-timing-function: ease-out;
&:hover {
color: #fff;
text-shadow: 0 0 1px #fff;
}
}
hr {
opacity: .2;
border-width: 0 0 5px 0;
border-style: dashed;
background: transparent;
width: 50%;
margin: 1.8em auto;
}
table {
border-collapse: collapse;
border-spacing: 0;
empty-cells: show;
width: 100%;
max-width: 100%;
th,
td {
padding: 1.5%;
border: 1px solid;
}
th {
font-weight: 700;
vertical-align: bottom;
}
}
.section-inner {
margin: 0 auto;
max-width: 1200px;
width: 93%;
}
.thin {
max-width: 720px;
margin: auto;
}
.feather {
display: inline-block;
vertical-align: -.125em;
width: 1em;
height: 1em;
}
.sub-menu {
font-size: .7em;
}
.desktop-only, .desktop-only-ib {
display: none;
}
// Code copy buttons
//
.highlight {
position: relative;
}
.highlight pre {
padding-right: 75px;
}
.highlight-copy-btn {
position: absolute;
bottom: 7px;
right: 7px;
border: 0;
border-radius: 4px;
padding: 1px;
font-size: 0.7em;
line-height: 1.8;
color: #fff;
background-color: #777;
opacity: 0.6;
min-width: 55px;
text-align: center;
}
.highlight-copy-btn:hover {
background-color: #666;
}
// Accessibility
//
.screen-reader-text {
border: 0;
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute !important;
width: 1px;
word-wrap: normal !important;
}
.screen-reader-text:focus {
background-color: #f1f1f1;
border-radius: 3px;
box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
clip: auto !important;
clip-path: none;
color: #21759b;
display: block;
font-size: 14px;
font-size: 0.875rem;
font-weight: bold;
height: auto;
left: 5px;
line-height: normal;
padding: 15px 23px 14px;
text-decoration: none;
top: 5px;
width: auto;
z-index: 100000;
}
// Header & Footer
//
#site-header {
position: fixed;
z-index: 1;
bottom: 0;
width: 100%;
box-sizing: border-box;
box-shadow: -1px -2px 3px rgba(0, 0, 0, 0.45);
background-color: $dark-grey;
}
.hdr-wrapper {
display: flex;
justify-content: space-between;
align-items: center;
padding: .5em 0;
font-size: 1.2rem;
.site-branding {
display: inline-block;
margin-right: .8em;
font-size: 1.2em;
}
.site-nav {
display: inline-block;
font-size: 1.1em;
opacity: .8;
.has-children {
padding-right: .5em;
border-right: 2px solid $highlight-grey;
}
.sub-menu > a{
margin-left: .3em;
}
a {
margin-left: .8em;
}
}
}
.hdr-icons {
font-size: 1.2em;
}
.hdr-social {
display: inline-block;
margin-left: .6em;
&>a {
margin-left: .4em;
}
}
.hdr-btn {
border: none;
background: none;
padding: 0;
margin-left: .4em;
cursor: pointer;
}
#menu-btn {
display: none;
margin-left: .6em;
cursor: pointer;
}
#mobile-menu {
position: fixed;
bottom: 4.8em;
right: 1.5em;
display: none;
padding: .6em 1.8em;
z-index: 1;
box-sizing: border-box;
box-shadow: -1px -2px 3px 0px rgba(0, 0, 0, 0.45);
background-color: $dark-grey;
ul {
list-style: none;
margin: 0;
padding: 0;
line-height: 2;
font-size: 1.2em;
}
}
#site-footer {
text-align: center;
font-size: .9em;
margin-bottom: 96px;
margin-top: 64px;
p {
margin: 0;
}
}
// Spotlight
//
#spotlight {
display: flex;
min-height: 100vh;
flex-direction: column;
align-items: center;
justify-content: center;
max-width: 93%;
margin: auto;
font-size: 1.5rem;
&.error-404 {
flex-direction: row;
line-height: normal;
}
}
p.img-404 {
margin: 0;
svg {
width: 180px;
max-width: 100%;
height: auto;
}
}
.banner-404 {
margin-left: 2em;
h1 {
font-size: 3em;
margin: .5rem 0;
}
p {
margin-top: 0;
}
.btn-404 {
font-size: .8em;
a {
display: inline-block;
border: 2px solid $text;
border-radius: 5px;
padding: 5px;
transition-property: color, border-color;
&:first-child {
margin-right: 1em;
}
&:hover {
border-color: #fff;
}
svg {
margin-right: .5em;
}
}
}
}
#home-center {
display: flex;
flex-grow: 1;
flex-direction: column;
justify-content: center;
}
#home-title {
margin: 0;
text-align: center;
}
#home-subtitle {
margin-top: 0;
margin-bottom: 1.5em;
text-align: center;
line-height: normal;
font-size: .7em;
font-style: italic;
opacity: .9;
}
#home-social {
font-size: 1.4em;
text-align: center;
opacity: .8;
a {
margin: 0 .2em;
}
}
#home-nav {
opacity: .8;
a {
display: block;
text-align: center;
margin-top: .5em;
}
}
#home-footer {
text-align: center;
font-size: .6em;
line-height: normal;
@include dimmed;
p {
margin-top: 0;
}
}
// list.html
//
.posts-group {
display: flex;
margin-bottom: 1.9em;
line-height: normal;
.post-year {
padding-top: 6px;
margin-right: 1.8em;
font-size: 1.6em;
@include dimmed;
&:hover {
text-decoration: underline;
cursor: pointer;
}
}
.posts-list {
flex-grow: 1;
margin: 0;
padding: 0;
list-style: none;
}
.post-item {
border-bottom: 1px $highlight-grey dashed;
a {
display: flex;
justify-content: space-between;
align-items: baseline;
padding: 12px 0;
}
}
.post-day {
flex-shrink: 0;
margin-left: 1em;
@include dimmed;
}
}
// single.html
//
.bg-img {
width: 100vw;
height: 100vh;
opacity: .03;
z-index: -1;
position: fixed;
top: 0;
background-attachment: fixed;
background-repeat: no-repeat;
background-size: cover;
background-position: center;
transition: opacity .5s;
}
.show-bg-img {
z-index: 100;
opacity: 1;
cursor: pointer;
}
.post-header {
margin-top: 1.2em;
line-height: normal;
.post-meta {
font-size: .9em;
letter-spacing: normal;
@include dimmed;
}
h1 {
margin-top: .1em;
}
}
hr.post-end {
width: 50%;
margin-top: 1.6em;
margin-bottom: .8em;
margin-left: 0;
border-style: solid;
border-bottom-width: 4px;
}
.content {
{{- with .Site.Params.justifyContent }}
text-align: justify;
text-justify: inter-ideograph; //For IE/Edge
{{- end }}
@include aTag;
figure {
max-width: 100%;
height: auto;
margin: 0;
text-align: center;
p {
font-size: .8em;
font-style: italic;
@include dimmed;
}
}
figure.left {
float: left;
margin-right: 1.5em;
max-width: 50%;
}
figure.right {
float: right;
margin-left: 1.5em;
max-width: 50%;
}
figure.big {
max-width: 100vw;
}
img {
display: block;
max-width: 100%;
height: auto;
margin: auto;
border-radius: 4px;
}
ul,
ol {
padding: 0;
margin-left: 1.8em;
}
a.anchor {
float: left;
margin-left: -20px;
padding-right: 6px;
box-shadow: none;
opacity: .8;
&:hover {
background: none;
color: $theme;
opacity: 1;
}
svg {
display: inline-block;
width: 14px;
height: 14px;
vertical-align: baseline;
visibility: hidden;
}
&:focus svg {
visibility: visible;
}
}
h1:hover a.anchor svg,
h2:hover a.anchor svg,
h3:hover a.anchor svg,
h4:hover a.anchor svg,
h5:hover a.anchor svg,
h6:hover a.anchor svg {
visibility: visible;
}
}
.footnotes {
font-size: .85em;
a {
box-shadow: none;
text-decoration: underline;
transition-property: color;
&:hover {
background: transparent;
}
&.footnote-return {
text-decoration: none;
}
}
ol {
line-height: 1.8;
}
}
.footnote-ref a {
box-shadow: none;
text-decoration: none;
padding: 2px;
border-radius: 2px;
background-color: $midnightblue;
}
.post-info {
font-size: .8rem;
line-height: normal;
@include dimmed;
p {
margin: .8em 0;
}
a:hover {
border-bottom: 1px solid $theme;
}
svg {
margin-right: .8em;
}
.tag {
margin-right: .5em;
&::before {
content: "#"
}
}
}
#toc {
position: fixed;
left: 50%;
top: 0;
display: none;
}
.toc-title {
margin-left: 1em;
margin-bottom: .5em;
font-size: .8em;
font-weight: bold;
}
#TableOfContents {
font-size: .8em;
@include dimmed;
ul {
padding-left: 1em;
margin: 0;
}
&>ul {
list-style-type: none;
ul ul {
font-size: .9em;
}
}
a:hover {
border-bottom: $theme 1px solid;
}
}
.post-nav {
display: flex;
justify-content: space-between;
margin-top: 1.5em;
margin-bottom: 2.5em;
font-size: 1.2em;
a {
flex-basis: 50%;
flex-grow: 1;
}
.next-post {text-align: left; padding-right: 5px;}
.prev-post {text-align: right; padding-left: 5px;}
.post-nav-label {
font-size: .8em;
opacity: .8;
text-transform: uppercase;
}
}
.related-posts {
padding: .8em;
margin-top: 1.5em;
font-size: .8rem;
border: 3px dashed rgba(255, 255, 255, .2);
border-radius: 5px;
h2{
margin: 0;
line-height: normal;
}
ul {
margin-top: .5em;
margin-bottom: 0;
}
}
// Media Queries
//
@media (min-width: 800px) {
.site-main {
margin-top: 3em;
}
hr.post-end {
width: 40%;
}
}
@media (min-width: 960px) {
.site-main {
margin-top: 6em;
}
}
@media (min-width: 1300px) {
.site-main {
margin-top: 8em;
}
.desktop-only,
#toc.show-toc {
display: block;
}
.desktop-only-ib {
display: inline-block;
}
figure.left {
margin-left: -240px;
p {
text-align: left;
}
}
figure.right {
margin-right: -240px;
p {
text-align: right;
}
}
figure.big {
width: 1200px;
margin-left: -240px;
}
hr.post-end {
width: 30%;
}
#toc {
top: 13em;
margin-left: 370px;
max-width: 220px;
}
}
@media (min-width: 1800px) {
.site-main {
margin-top: 10em;
}
.section-inner {
max-width: 1600px;
}
.thin {
max-width: 960px;
}
figure.left {
max-width: 75%;
margin-left: -320px;
}
figure.right {
max-width: 75%;
margin-right: -320px;
}
figure.big {
width: 1600px;
margin-left: -320px;
}
hr.post-end {
width: 30%;
}
#toc {
top: 15em;
margin-left: 490px;
max-width: 300px;
}
}
@media (max-width: 760px) {
.hide-in-mobile,
.site-nav.hide-in-mobile {
display: none;
}
#menu-btn {
display: inline-block;
}
.posts-group {
display: block;
.post-year {
margin: -6px 0 4px;
}
}
#spotlight.error-404 {
flex-direction: column;
text-align: center;
.banner-404 {
margin: 0;
}
}
}
@media (max-width: 520px) {
.content figure.left,
.content figure.right {
float: unset;
max-width: 100%;
margin: 0;
}
hr.post-end {
width: 60%;
}
#mobile-menu {
right: 1.2em;
}
}

@ -1,6 +1,10 @@
baseurl = "/"
languageCode = "en-us"
theme = "hello-friend-ng"
theme = "hermit"
copyright = '<a href="http://www.wtfpl.net/about/" rel="noopener">WTFPL</a>'
pygmentsCodefences = true
pygmentsUseClasses = true
[author]
name = "dotya.ml"
@ -8,13 +12,16 @@ theme = "hello-friend-ng"
[params]
dateform = "Jan 2, 2006"
dateformShort = "Jan 2"
dateformNum = "2006-01-02"
dateformNumTime = "2006-01-02 15:04 -0700"
dateformNum = "2006-02-01"
dateformNumTime = "2006-02-01 15:04 +0000"
# Metadata mostly used in document's head
description = "dotya.ml"
keywords = "homepage, development, git, programming"
images = [""]
themeColor = "#282a2b"
justifyContent = false
relatedPosts = false
# Directory name of your blog content (default is `content/posts`)
contentTypeName = "posts"
@ -28,28 +35,30 @@ theme = "hello-friend-ng"
logoHomeLink = "/"
[[params.social]]
name = "telegram"
url = "https://t.me/#"
name = "gitea"
url = "https://git.dotya.ml/wanderer?tab=activity"
alt = "a gitea instance"
[[params.social]]
name = "email"
url = "mailto:"
name = "github"
url = "https://github.com/wULLSnpAXbWZGYDYyhWTKKspEQoaYxXyhoisqHf"
alt = "github profile page"
[[params.social]]
name = "dockerhub"
url = "https://hub.docker.com/r/immawanderer"
alt = "dockerhub profile page"
[languages]
[languages.en]
title = "dotya.ml"
subtitle = ""
keywords = "homepage, development, git, programming"
copyright = '<a href="http://www.wtfpl.net/about/" rel="noopener">WTFPL</a>'
readOtherPosts = ""
[languages.en.params.logo]
logoText = "dotya.ml"
logoHomeLink = "/"
# or
#
# path = "/img/your-example-logo.svg"
# alt = "Your example logo alt text"
# You can create a language based menu
[languages.en.menu]
@ -57,26 +66,31 @@ theme = "hello-friend-ng"
identifier = "about"
name = "about"
url = "/about"
alt = "dotya.ml status"
weight = 1
# [[languages.en.menu.main]]
# identifier = "posts"
# name = "posts"
# url = "/posts"
# alt = "dotya.ml posts"
# weight = 2
[[languages.en.menu.main]]
identifier = "gitea"
name = "gitea"
url = "https://git.dotya.ml"
[[languages.en.menu.main]]
identifier = "drone"
name = "drone"
url = "https://drone.dotya.ml"
[[languages.en.menu.main]]
identifier = "status"
name = "status"
url = "/status"
identifier = "contact"
name = "contact"
url = "/contact"
alt = "dotya.ml contact"
weight = 3
# And you can even create generic menu
[menu]
[[menu.main]]
identifier = "about"
name = "about"
url = "/about"
[[menu.main]]
identifier = ""
name = ""
url = "#"
[privacy]
[privacy.disqus]
disable = true
[privacy.googleAnalytics]
disable = true
[privacy.instagram]
disable = true
[privacy.twitter]
disable = true
[privacy.vimeo]
disable = true
[privacy.youtube]
disable = true

114
content/28bd2388.md Normal file

@ -0,0 +1,114 @@
---
title: "0x28bd2388"
date: 2020-03-07T16:22:03+01:00
draft: false
---
```bash
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
yeM11efP7Tnvf97HXMQTJP1FqaONAuFBG/TD
=80c5
-----END PGP PUBLIC KEY BLOCK-----
```

11
content/about.md Normal file

@ -0,0 +1,11 @@
---
title: "about dotya.ml"
date: 2020-03-07T02:12:03+01:00
draft: false
---
Free services provided for fun as a hobby. So far we have [gitea](https://git.dotya.ml) and a [drone](https://drone.dotya.ml) ci/cd instance.
You can see the current status [here](/status).
## [contact](/contact)

@ -1,3 +0,0 @@
# about dotya.ml
Free services provided for fun as a hobby. So far we have [gitea](https://git.dotya.ml) and a [drone](https://drone.dotya.ml) ci/cd instance.

53
content/contact.md Normal file

@ -0,0 +1,53 @@
---
title: "contact"
date: 2020-03-07T01:53:03+01:00
draft: false
---
\-- wanderer
## e-mail
```
< a_mirre AT utb DOT cz >
```
## gpg
#### fingerprint:
```bash
E860 AB3C D007 8D30 E86C DA74 7B28 D8DC 28BD 2388
```
the corresponding pubkey: [0x28bd2388](/28bd2388)\
always **verify** that the fingerprint matches the one on this page
```bash
$ curl -sS https://dotya.ml/store/28bd2388.asc | gpg -
```
you can then import the [key](/store/0x28bd2388.asc) to your keyring, like so
```bash
$ curl -sS https://dotya.ml/28bd2388.asc | gpg --import -
```
communication using gpg is *preferable*
## Privacy policy
Since I don't like such practices myself, this site *does* **not** collect
*any* kind of user/browser/device/user agent/network identifier,
which - for simplicity's sake is - ANY data.\
Period.\
No IP addresses are stored, no user
agents logged, no cookies are used to identify users.
Therefore **no data is collected** and can't be passed on to third parties,
nor is there any intention of ever doing so.
## Long live the libre world!
Feel at home.\
Cheers.

11
content/status.md Normal file

@ -0,0 +1,11 @@
---
title: "dotya.ml status"
date: 2020-03-07T02:13:07+01:00
draft: false
---
Any information regarding status of the site and services will be posted here.
* HTTP headers insight as per [Mozilla HTTP Observatory](https://observatory.mozilla.org/analyze/dotya.ml)
* SSL Labs [TLS rating](https://www.ssllabs.com/ssltest/analyze.html?d=dotya.ml)

@ -1,4 +0,0 @@
# dotya.ml status
![Mozilla HTTP Observatory Grade](https://img.shields.io/mozilla-observatory/grade/dotya.ml)
Any information regarding status of the site and services will be posted here.

@ -1,24 +0,0 @@
<footer class="footer">
<div class="footer__inner">
<div class="footer__content">
<span>&copy; {{ now.Format "2006" }}</span>
{{ if .Site.Author.name }}
<span><a href="{{ .Site.BaseURL }}">{{ .Site.Author.name }}</a></span>
{{ end }}
<span>{{ .Site.Copyright| safeHTML }}</span>
<span>{{- with (not (in (.Site.Language.Get "disableKinds") "RSS")) }} <a href="{{ "posts/index.xml" | absURL }}" target="_blank" title="rss"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 20 20" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-rss"><path d="M4 11a9 9 0 0 1 9 9"></path><path d="M4 4a16 16 0 0 1 16 16"></path><circle cx="5" cy="19" r="1"></circle></svg></a>{{ end }}</span>
</div>
</div>
<div class="footer__inner">
<div class="footer__content">
</div>
</div>
<div class="footer__inner">
<div class="footer__content">
<span>Powered by <a href="http://gohugo.io">Hugo</a></span>
<span>Thanks to <a href="https://github.com/rhazdon">rhazdon</a> for the <a href="https://themes.gohugo.io/hugo-theme-hello-friend-ng/">theme</a></span>
</div>
</div>
</footer>

50
layouts/partials/svg.html Normal file

File diff suppressed because one or more lines are too long

1
static/docker.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 1.7 KiB

1
static/gitea.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 1.3 KiB

106
static/store/0x28bd2388.asc Normal file

@ -0,0 +1,106 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
yeM11efP7Tnvf97HXMQTJP1FqaONAuFBG/TD
=80c5
-----END PGP PUBLIC KEY BLOCK-----

@ -1 +0,0 @@
Subproject commit b2f7b9eabfcb59a8f0d16c529a6b53d82248e6c2

1
themes/hermit Submodule

@ -0,0 +1 @@
Subproject commit fc2dea04366bc3416aa1f35bbfa860d7843b0ca7