init hugo
0
.hugo_build.lock
Normal file
@ -1,5 +0,0 @@
|
|||||||
# Revision history for chaoszone
|
|
||||||
|
|
||||||
## 0.0.0.0 -- YYYY-mm-dd
|
|
||||||
|
|
||||||
* First version. Released on an unsuspecting world.
|
|
5
archetypes/default.md
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
+++
|
||||||
|
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||||
|
date = {{ .Date }}
|
||||||
|
draft = true
|
||||||
|
+++
|
@ -1,29 +0,0 @@
|
|||||||
-- Initial chaoszone.cabal generated by cabal init. For further
|
|
||||||
-- documentation, see http://haskell.org/cabal/users-guide/
|
|
||||||
|
|
||||||
name: chaoszone
|
|
||||||
version: 0.0.0.0
|
|
||||||
synopsis: build files for the chaoszone.cz website
|
|
||||||
-- description:
|
|
||||||
homepage: https://chaoszone.cz
|
|
||||||
license: PublicDomain
|
|
||||||
author: nek0
|
|
||||||
maintainer: nek0@chelnok.de
|
|
||||||
category: Web
|
|
||||||
build-type: Simple
|
|
||||||
extra-source-files: ChangeLog.md
|
|
||||||
cabal-version: >=1.10
|
|
||||||
|
|
||||||
executable chaoszone
|
|
||||||
main-is: Main.hs
|
|
||||||
-- other-modules:
|
|
||||||
other-extensions: OverloadedStrings
|
|
||||||
build-depends: base >=4.10 && < 5
|
|
||||||
, time
|
|
||||||
, filepath >=1.4
|
|
||||||
, hakyll >=4.9.8.0
|
|
||||||
, HTTP
|
|
||||||
, aeson
|
|
||||||
hs-source-dirs: src
|
|
||||||
default-language: Haskell2010
|
|
||||||
ghc-options: -Wall -threaded
|
|
4
content/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
public/
|
||||||
|
resources/
|
||||||
|
deploy
|
||||||
|
.hugo_build.lock
|
13
content/_index.md
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
+++
|
||||||
|
date = 2025-06-01T22:39:26+02:00
|
||||||
|
draft = true
|
||||||
|
+++
|
||||||
|
|
||||||
|
ChaosZone is the project to setting up a collaborative assembly at the Chaos
|
||||||
|
Communication Congress and similar events.
|
||||||
|
|
||||||
|
ChaosZone wants to become a place -- a platform -- to unite hackerspaces from
|
||||||
|
eastern germany and further east.
|
||||||
|
|
||||||
|
We are focused on hacking (software, hardware and other stuff). We are
|
||||||
|
providing a friendly environment for learning from each other.
|
4
hugo.yaml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
baseURL: https://chaoszone.cz/
|
||||||
|
languageCode: en-us
|
||||||
|
title: ChaosZone
|
||||||
|
theme: zone
|
36
newpost.sh
@ -1,36 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
|
|
||||||
date=$(date +%Y-%m-%d)
|
|
||||||
title=
|
|
||||||
author=
|
|
||||||
|
|
||||||
function input {
|
|
||||||
echo "Enter post title:"
|
|
||||||
read title
|
|
||||||
echo "Enter author name:"
|
|
||||||
read author
|
|
||||||
}
|
|
||||||
|
|
||||||
function confirmation {
|
|
||||||
echo "Is the following correct?"
|
|
||||||
echo "title: $title"
|
|
||||||
echo "author: $author"
|
|
||||||
echo "y/n"
|
|
||||||
}
|
|
||||||
|
|
||||||
function main {
|
|
||||||
local conf="n"
|
|
||||||
while [ "$conf" != "y" ]
|
|
||||||
do
|
|
||||||
input
|
|
||||||
confirmation
|
|
||||||
read conf
|
|
||||||
done
|
|
||||||
postname="./site/posts/$date-${title// /-}.md"
|
|
||||||
echo -e "---\ntitle: ${title}\nauthor: ${author}\ndescription: \n---" >> $postname
|
|
||||||
${VISUAL:-vim} $postname
|
|
||||||
}
|
|
||||||
|
|
||||||
main
|
|
||||||
|
|
||||||
unset date title author
|
|
10
shell.nix
@ -2,13 +2,9 @@
|
|||||||
, chaoszone ? import ./default.nix { inherit pkgs; packageName = "chaoszone"; }
|
, chaoszone ? import ./default.nix { inherit pkgs; packageName = "chaoszone"; }
|
||||||
}:
|
}:
|
||||||
|
|
||||||
pkgs.haskellPackages.shellFor {
|
pkgs.mkShell {
|
||||||
packages = p: [ chaoszone ];
|
packages = with pkgs; [
|
||||||
withHoogle = true;
|
hugo
|
||||||
buildInputs = with pkgs.haskellPackages; with pkgs; [
|
|
||||||
haskell-language-server
|
|
||||||
ghcid
|
|
||||||
cabal-install
|
|
||||||
vim
|
vim
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
---
|
|
||||||
title: About
|
|
||||||
---
|
|
||||||
|
|
||||||
ChaosZone is the project to setting up an collaborative Assembly at the 37th
|
|
||||||
Chaos Communication Congress.
|
|
||||||
|
|
||||||
ChaosZone wants to become a place - a platform - to unite hackspaces from
|
|
||||||
eastern germany and farther east
|
|
||||||
|
|
||||||
We are focused on hacking (software, hardware and other stuff). We are
|
|
||||||
providing a friendly environment for learning from each other.
|
|
@ -1,7 +0,0 @@
|
|||||||
---
|
|
||||||
title: Contact
|
|
||||||
---
|
|
||||||
|
|
||||||
If you want to talk to the people behind ChaosZone, head on over to [our Matrix Channel](https://app.element.io/#/room/#chaoszone:matrix.eigenbaukombinat.de).
|
|
||||||
|
|
||||||
To contact the administrator of this site, write to <nek0@chaoszone.cz>.
|
|
@ -1,204 +0,0 @@
|
|||||||
body {
|
|
||||||
color: black;
|
|
||||||
font-family: 'CMUTypewriter';
|
|
||||||
font-size: 23pt;
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
padding: 0 2rem 0;
|
|
||||||
margin: 0;
|
|
||||||
display: grid;
|
|
||||||
min-height: 100vh;
|
|
||||||
grid-template-columns: [leftcol] 23rem [maincol] auto [rightcol] 1fr;
|
|
||||||
grid-template-rows: [headerrow] 6rem [mainrow] auto [footerrow] 2rem;
|
|
||||||
grid-template-areas:
|
|
||||||
"logo header header"
|
|
||||||
"logo main main"
|
|
||||||
"logo footer footer";
|
|
||||||
background-color: #a21d10;
|
|
||||||
}
|
|
||||||
|
|
||||||
body::before {
|
|
||||||
z-index: -1;
|
|
||||||
content: ' ';
|
|
||||||
position: fixed;
|
|
||||||
top: 0;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
background-image: url(/images/Chaoszone.black.svg);
|
|
||||||
background-size: contain;
|
|
||||||
background-attachment:fixed;
|
|
||||||
background-repeat:no-repeat;
|
|
||||||
background-position: center;
|
|
||||||
opacity: 0.05;
|
|
||||||
}
|
|
||||||
|
|
||||||
header {
|
|
||||||
border-bottom: 2px solid white;
|
|
||||||
margin-bottom: 30px;
|
|
||||||
padding: 12px 0px 12px 0px;
|
|
||||||
grid-area: header;
|
|
||||||
}
|
|
||||||
|
|
||||||
header, header a {
|
|
||||||
font-family: 'CMUTypewriter';
|
|
||||||
font-size: 23pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1, h2, h3, h4, h5 {
|
|
||||||
font-family: 'CMUTypewriter';
|
|
||||||
}
|
|
||||||
|
|
||||||
a {
|
|
||||||
color: #ccc000;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
a:hover {
|
|
||||||
color: #aaa000;
|
|
||||||
text-decoration: underline
|
|
||||||
}
|
|
||||||
|
|
||||||
#logo {
|
|
||||||
grid-area: logo;
|
|
||||||
}
|
|
||||||
|
|
||||||
#logo, #logo img {
|
|
||||||
max-width: 23rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
#logo {
|
|
||||||
position: fixed;
|
|
||||||
padding-top: 1rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
div#logo a {
|
|
||||||
color: white;
|
|
||||||
font-weight: bold;
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav ul{
|
|
||||||
text-align: left;
|
|
||||||
list-style: none;
|
|
||||||
display: inline-block;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav li {
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav li a {
|
|
||||||
color: white;
|
|
||||||
font-weight: bold;
|
|
||||||
margin-left: 12px;
|
|
||||||
text-decoration: none;
|
|
||||||
text-transform: uppercase;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav li a:first-child {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
article {
|
|
||||||
grid-area: main;
|
|
||||||
}
|
|
||||||
|
|
||||||
article img {
|
|
||||||
max-width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
footer {
|
|
||||||
grid-area: footer;
|
|
||||||
border-top: solid 2px white;
|
|
||||||
font-size: 12px;
|
|
||||||
padding: 12px 0px 12px 0px;
|
|
||||||
text-align: right;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
h1 {
|
|
||||||
font-size: 24pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
h2 {
|
|
||||||
font-size: 20pt;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
div.info {
|
|
||||||
font-size: 14px;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pagination {
|
|
||||||
display: inline-block;
|
|
||||||
width: 100%
|
|
||||||
}
|
|
||||||
|
|
||||||
.wrapper {
|
|
||||||
flex: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.left, .right {
|
|
||||||
display: inline-block;
|
|
||||||
fill: curentColor;
|
|
||||||
}
|
|
||||||
|
|
||||||
.left {
|
|
||||||
float: left;
|
|
||||||
margin-left: 10%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.right {
|
|
||||||
float: right;
|
|
||||||
margin-right: 10%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.left svg, .right svg {
|
|
||||||
margin-bottom: -3px;
|
|
||||||
margin-left: 0.8ex;
|
|
||||||
margin-right: 0.8ex;
|
|
||||||
}
|
|
||||||
|
|
||||||
#yacs {
|
|
||||||
width: 100%
|
|
||||||
}
|
|
||||||
|
|
||||||
.page img {
|
|
||||||
width: 100%
|
|
||||||
}
|
|
||||||
|
|
||||||
.authors_comments {
|
|
||||||
border: 1px solid white;
|
|
||||||
border-radius: 5px;
|
|
||||||
padding: 0 1em 0;
|
|
||||||
background-color: #454545;
|
|
||||||
box-shadow: 5px 5px 5px #ffffff;
|
|
||||||
margin: 2em 0 2em;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 750px){
|
|
||||||
body {
|
|
||||||
grid-template-columns: [maincol] auto;
|
|
||||||
grid-template-rows: [logorow] 20rem [headerrow] 6rem [mainrow] auto [footerrow] 2rem;
|
|
||||||
grid-template-areas:
|
|
||||||
"logo"
|
|
||||||
"header"
|
|
||||||
"main"
|
|
||||||
"footer";
|
|
||||||
}
|
|
||||||
#logo {
|
|
||||||
position: initial;
|
|
||||||
}
|
|
||||||
|
|
||||||
#logo img {
|
|
||||||
max-width: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
@font-face {
|
|
||||||
font-family: 'Xolonium';
|
|
||||||
src: url('/fonts/Xolononiu-Regular.otf') format('opentype');
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: 'MontserratBlack';
|
|
||||||
src: url('/fonts/Montserrat/Montserrat-Black.otf') format('opentype');
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: 'MontserratLight';
|
|
||||||
src: url('/fonts/Montserrat/Montserrat-Light.otf') format('opentype');
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: 'CMUTypewriter';
|
|
||||||
src: url('/fonts/cmuntt.ttf') format('truetype');
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face {
|
|
||||||
font-family: 'LePatinHelvete';
|
|
||||||
src: url('/fonts/Le-patin-helvete.ttf') format('truetype');
|
|
||||||
font-weight: normal;
|
|
||||||
font-style: normal;
|
|
||||||
}
|
|
@ -1,93 +0,0 @@
|
|||||||
Copyright 2011 The Montserrat Project Authors (https://github.com/JulietaUla/Montserrat)
|
|
||||||
|
|
||||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
|
||||||
This license is copied below, and is also available with a FAQ at:
|
|
||||||
http://scripts.sil.org/OFL
|
|
||||||
|
|
||||||
|
|
||||||
-----------------------------------------------------------
|
|
||||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
|
||||||
-----------------------------------------------------------
|
|
||||||
|
|
||||||
PREAMBLE
|
|
||||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
|
||||||
development of collaborative font projects, to support the font creation
|
|
||||||
efforts of academic and linguistic communities, and to provide a free and
|
|
||||||
open framework in which fonts may be shared and improved in partnership
|
|
||||||
with others.
|
|
||||||
|
|
||||||
The OFL allows the licensed fonts to be used, studied, modified and
|
|
||||||
redistributed freely as long as they are not sold by themselves. The
|
|
||||||
fonts, including any derivative works, can be bundled, embedded,
|
|
||||||
redistributed and/or sold with any software provided that any reserved
|
|
||||||
names are not used by derivative works. The fonts and derivatives,
|
|
||||||
however, cannot be released under any other type of license. The
|
|
||||||
requirement for fonts to remain under this license does not apply
|
|
||||||
to any document created using the fonts or their derivatives.
|
|
||||||
|
|
||||||
DEFINITIONS
|
|
||||||
"Font Software" refers to the set of files released by the Copyright
|
|
||||||
Holder(s) under this license and clearly marked as such. This may
|
|
||||||
include source files, build scripts and documentation.
|
|
||||||
|
|
||||||
"Reserved Font Name" refers to any names specified as such after the
|
|
||||||
copyright statement(s).
|
|
||||||
|
|
||||||
"Original Version" refers to the collection of Font Software components as
|
|
||||||
distributed by the Copyright Holder(s).
|
|
||||||
|
|
||||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
|
||||||
or substituting -- in part or in whole -- any of the components of the
|
|
||||||
Original Version, by changing formats or by porting the Font Software to a
|
|
||||||
new environment.
|
|
||||||
|
|
||||||
"Author" refers to any designer, engineer, programmer, technical
|
|
||||||
writer or other person who contributed to the Font Software.
|
|
||||||
|
|
||||||
PERMISSION & CONDITIONS
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
|
||||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
|
||||||
redistribute, and sell modified and unmodified copies of the Font
|
|
||||||
Software, subject to the following conditions:
|
|
||||||
|
|
||||||
1) Neither the Font Software nor any of its individual components,
|
|
||||||
in Original or Modified Versions, may be sold by itself.
|
|
||||||
|
|
||||||
2) Original or Modified Versions of the Font Software may be bundled,
|
|
||||||
redistributed and/or sold with any software, provided that each copy
|
|
||||||
contains the above copyright notice and this license. These can be
|
|
||||||
included either as stand-alone text files, human-readable headers or
|
|
||||||
in the appropriate machine-readable metadata fields within text or
|
|
||||||
binary files as long as those fields can be easily viewed by the user.
|
|
||||||
|
|
||||||
3) No Modified Version of the Font Software may use the Reserved Font
|
|
||||||
Name(s) unless explicit written permission is granted by the corresponding
|
|
||||||
Copyright Holder. This restriction only applies to the primary font name as
|
|
||||||
presented to the users.
|
|
||||||
|
|
||||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
|
||||||
Software shall not be used to promote, endorse or advertise any
|
|
||||||
Modified Version, except to acknowledge the contribution(s) of the
|
|
||||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
|
||||||
permission.
|
|
||||||
|
|
||||||
5) The Font Software, modified or unmodified, in part or in whole,
|
|
||||||
must be distributed entirely under this license, and must not be
|
|
||||||
distributed under any other license. The requirement for fonts to
|
|
||||||
remain under this license does not apply to any document created
|
|
||||||
using the Font Software.
|
|
||||||
|
|
||||||
TERMINATION
|
|
||||||
This license becomes null and void if any of the above conditions are
|
|
||||||
not met.
|
|
||||||
|
|
||||||
DISCLAIMER
|
|
||||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
|
||||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
|
||||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
||||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
|
||||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
|
||||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
|
Before Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 200 KiB |
@ -1,13 +0,0 @@
|
|||||||
---
|
|
||||||
title: ChaosZone
|
|
||||||
---
|
|
||||||
|
|
||||||
Hello there!
|
|
||||||
|
|
||||||
Here you will find more information on ChaosZone and its member hackerspaces.
|
|
||||||
|
|
||||||
Our recent Posts:
|
|
||||||
|
|
||||||
$partial("templates/post-list.html")$
|
|
||||||
|
|
||||||
and there are even more in the [archive](/archive.html).
|
|
@ -1,17 +0,0 @@
|
|||||||
---
|
|
||||||
title: Hello World!
|
|
||||||
author: nek0
|
|
||||||
description: The ChaosZone introduces itself
|
|
||||||
---
|
|
||||||
|
|
||||||
Hi there!
|
|
||||||
|
|
||||||
We are the ChaosZone, an assembly of hackers from eastern countries at the 34th
|
|
||||||
Chaos Communication Congress in Leipzig.
|
|
||||||
|
|
||||||
We aim to provide a comfy coding space with lots of collaboration, information
|
|
||||||
and knowledge sharing. There will surely be blinkenlights and mate!
|
|
||||||
|
|
||||||
I am nek0, the main curator of this site and I will be also present at the
|
|
||||||
congress. I am looking forward to seeing all of you and wish you a pleasant time
|
|
||||||
until then.
|
|
@ -1,19 +0,0 @@
|
|||||||
---
|
|
||||||
title: Work in Progress
|
|
||||||
author: nek0
|
|
||||||
description: we work hard to make things happen
|
|
||||||
---
|
|
||||||
|
|
||||||
Today we are planning out things for the Assembly and hopefully also our Chaos
|
|
||||||
Competence Center. We will build a nice shelter to make the space comfy, we have
|
|
||||||
also some workshops in mind to be held at that location.
|
|
||||||
|
|
||||||
I am also pleased to announce, that we have subassemblies. These are:
|
|
||||||
|
|
||||||
- [Dezentrale][dz]
|
|
||||||
- [Chaostreff Chemnitz][chch]
|
|
||||||
- [CTJB][ctjb]
|
|
||||||
|
|
||||||
[dz]: https://events.ccc.de/congress/2017/wiki/index.php/Assembly:Dezentrale
|
|
||||||
[chch]: https://events.ccc.de/congress/2017/wiki/index.php/Assembly:Chaostreff_Chemnitz
|
|
||||||
[ctjb]: https://events.ccc.de/congress/2017/wiki/index.php/Assembly:CTJB
|
|
@ -1,15 +0,0 @@
|
|||||||
---
|
|
||||||
title: Let the Chaos begin!
|
|
||||||
author: nek0
|
|
||||||
description:
|
|
||||||
---
|
|
||||||
|
|
||||||
Today is day 0 before congress, the day where most of the assembly build up
|
|
||||||
happens. We are also working on building a nice and comfy coding place. We
|
|
||||||
brought a lot of couches from different hackerspaces and lots of good mood.
|
|
||||||
|
|
||||||
So if you want to come, see colourful flashy lights, code on a comfy couch or
|
|
||||||
hang out woth us, you can find us in
|
|
||||||
[Hall 2](https://34c3.c3nav.de/l/chaoszone/@0,469.58,373.33,5).
|
|
||||||
|
|
||||||
I wish you all a nice time at the 34th Chaos Communication Congress.
|
|
@ -1,7 +0,0 @@
|
|||||||
---
|
|
||||||
title: Until next year
|
|
||||||
author: nek0
|
|
||||||
description:
|
|
||||||
---
|
|
||||||
|
|
||||||
Congress is over, I hope you had much fun. See you all next year
|
|
@ -1,18 +0,0 @@
|
|||||||
---
|
|
||||||
title: Here comes another year
|
|
||||||
author: nek0
|
|
||||||
description:
|
|
||||||
---
|
|
||||||
|
|
||||||
Hello folks,
|
|
||||||
|
|
||||||
As the 35C3 grows nearer, our plans for this years ChaosZone assembly grow more
|
|
||||||
concrete. Our plans are ambitions but not imposible, but we still need all
|
|
||||||
helping hands we can get. Let's make this year's Congress excellent for
|
|
||||||
everyone.
|
|
||||||
|
|
||||||
If You want to participate, help or just seek contakt, you can subscribe to the
|
|
||||||
mailing list "Zone" at <https://lists.c3d2.de> or join the channel #chaoszone on
|
|
||||||
[Hackint](https://hackint.org/).
|
|
||||||
|
|
||||||
Happy hacking until then!
|
|
@ -1,17 +0,0 @@
|
|||||||
---
|
|
||||||
title: ChaosZone at 36C3
|
|
||||||
author: nek0
|
|
||||||
description: Another year, another ChaosZone
|
|
||||||
---
|
|
||||||
|
|
||||||
Hi folks,
|
|
||||||
|
|
||||||
Like the previous years, we banded together again to make ChaosZone happen again
|
|
||||||
at 36C3. We are expecting a lot of people from everywhere. We even managed to
|
|
||||||
have a stage again, this time a lot bigger. To see the schedule, please follow
|
|
||||||
the link below.
|
|
||||||
Happy hacking everyone!
|
|
||||||
|
|
||||||
[][fahrplan]
|
|
||||||
|
|
||||||
[fahrplan]: https://cfp.chaoszone.cz/36c3/schedule/ "Link to the stage schedule"
|
|
@ -1,36 +0,0 @@
|
|||||||
---
|
|
||||||
title: ChaosZone goes 37c3 ~ Kombinate aller Länder vereinigt euch! ~
|
|
||||||
author: chaoszone
|
|
||||||
description: KOmmt uns auf dem Kongress besuchen!
|
|
||||||
---
|
|
||||||
|
|
||||||

|
|
||||||
|
|
||||||
## ostdeutsch
|
|
||||||
Genossinnen und Genossen!
|
|
||||||
Wir machen uns auf ins kapitalistische Ausland, um dort an der diesjährigen [Messe](https://events.ccc.de/category/37c3/) für Rechentechnik und Signalverarbeitung teilzunehmen.
|
|
||||||
Unsere Schwestern und Brüder im elektronischen Geiste aus Hamburg heißen uns Willkommen. Uns soll Platz zugewießen werden, so sagt man, mit Tischen und Stühlen bestückt. Eine Ecke zum Werken und Wirken soll es auch geben.
|
|
||||||
Desweiteren werden, mit etwas Glück, Eisbowlen gereicht und neumodische Anstecknadeln produziert.
|
|
||||||
Kommen Sie, schauen Sie und sprechen Sie uns an! Wir werden Sie gerne in die sozialistische Arbeit einführen.
|
|
||||||
Nach Ankunft werden wir ein Signal über [Sputnik42](https://chaos.social/@chaoszone) absenden, somit Sie uns finden können.
|
|
||||||
Solidarische Grüße,
|
|
||||||
Nerdschaft!
|
|
||||||
|
|
||||||
## deutsch
|
|
||||||
Einige Wesen der Chaoszone werden am diesjährigen [Congress](https://events.ccc.de/category/37c3/) des Chaos Computer Clubs in Hamburg teilnehmen.
|
|
||||||
Wir werden dort eine Assemblyfläche mit ein paar Tischen, Stühlen und einer kleinen Workshopecke haben! :)
|
|
||||||
Wenn alles klappt werden wir auch eine Slushimaschine und eine Buttonmaschine dahaben und Live Slushis und Buttons machen. ^^
|
|
||||||
Komm gerne vorbei! Eine genauere Ortsangabe wird später via [Mastodon](https://chaos.social/@chaoszone) bekannt gegeben.
|
|
||||||
|
|
||||||
|
|
||||||
## english
|
|
||||||
Some Chaoszone creatures will be attending this year's Chaos Computer Club [Congress](https://events.ccc.de/category/37c3/) in Hamburg.
|
|
||||||
We will have an assembly area with a few tables, chairs and a small workshop corner! :)
|
|
||||||
If everything works out well we will also have a slushi machine and a button machine there and make live slushis and buttons. ^^
|
|
||||||
Feel free to come by! A more exact location will be announced later via [Mastodon](https://chaos.social/@chaoszone).
|
|
||||||
|
|
||||||
## česky
|
|
||||||
Některé z bytostí Chaoszone se zúčastní letošního [kongresu](https://events.ccc.de/category/37c3/) Chaos Computer Clubu v Hamburgu.
|
|
||||||
Budeme tam mít prostor s několika stoly, židlemi a malým workshopovým koutkem! :)
|
|
||||||
Pokud vše vyjde, budeme tam mít také stroj na slushie, stroj na placky a budeme vyrábět živě slushie a placky. ^^
|
|
||||||
Neváhejte a přijďte! Přesnější místo oznámíme později prostřednictvím [Mastodonu](https://chaos.social/@chaoszone).
|
|
182
src/Main.hs
@ -1,182 +0,0 @@
|
|||||||
--------------------------------------------------------------------------------
|
|
||||||
{-# LANGUAGE OverloadedStrings #-}
|
|
||||||
import Data.Monoid ((<>))
|
|
||||||
import Hakyll
|
|
||||||
-- import Hakyll.Web.Sass
|
|
||||||
|
|
||||||
import Data.Time.Clock (UTCTime, getCurrentTime)
|
|
||||||
import Data.Time.Format (parseTimeM, defaultTimeLocale, formatTime)
|
|
||||||
import Data.List
|
|
||||||
import Data.Maybe (fromMaybe)
|
|
||||||
import System.FilePath (takeFileName)
|
|
||||||
import Control.Monad (liftM)
|
|
||||||
import Network.HTTP.Base (urlEncode)
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
baseUrl :: String
|
|
||||||
baseUrl = "https://chaoszone.cz"
|
|
||||||
|
|
||||||
main :: IO ()
|
|
||||||
main = do
|
|
||||||
curtime <- formatTime defaultTimeLocale "%A %F %H:%M" <$> getCurrentTime
|
|
||||||
hakyllWith config $ do
|
|
||||||
|
|
||||||
let defaultCtx = constField "curtime" curtime <> defaultContext
|
|
||||||
|
|
||||||
is <- sortIdentifiersByDate <$> getMatches "site/posts/*.md"
|
|
||||||
|
|
||||||
match "templates/*" $ compile templateBodyCompiler
|
|
||||||
|
|
||||||
match
|
|
||||||
( "site/images/*"
|
|
||||||
.||. "site/fonts/**"
|
|
||||||
.||. "site/humans.txt"
|
|
||||||
.||. "site/robots.txt"
|
|
||||||
) $ do
|
|
||||||
route myRoute
|
|
||||||
compile copyFileCompiler
|
|
||||||
|
|
||||||
match "site/css/*.css" $ do
|
|
||||||
route myRoute
|
|
||||||
compile compressCssCompiler
|
|
||||||
|
|
||||||
match (fromList ["site/about.md", "site/contact.md"]) $ do
|
|
||||||
route $ myRoute `composeRoutes` setExtension "html"
|
|
||||||
compile $ do
|
|
||||||
pandocCompiler
|
|
||||||
>>= loadAndApplyTemplate "templates/default.html"
|
|
||||||
-- (menuCtx firstUrl latestUrl)
|
|
||||||
defaultCtx
|
|
||||||
>>= relativizeUrls
|
|
||||||
|
|
||||||
-- create ["index.html"] $ do
|
|
||||||
-- route idRoute
|
|
||||||
-- compile $ do
|
|
||||||
-- post <- fmap head . recentFirst =<< (loadAll "site/posts/*"
|
|
||||||
-- :: Compiler [Item String])
|
|
||||||
-- let indexCtx =
|
|
||||||
-- constField "date" "%B %e, %Y" <>
|
|
||||||
-- defaultCtx
|
|
||||||
-- makeItem (itemBody post)
|
|
||||||
-- >>= relativizeUrls
|
|
||||||
|
|
||||||
match "site/index.md" $ do
|
|
||||||
route $ myRoute `composeRoutes` setExtension "html"
|
|
||||||
compile $ do
|
|
||||||
posts <- fmap (take 5) . recentFirst =<< loadAll "site/posts/*"
|
|
||||||
let indexCtx = listField "posts" postCtx (return posts) <>
|
|
||||||
constField "title" "Home" <>
|
|
||||||
defaultCtx
|
|
||||||
getResourceBody
|
|
||||||
>>= applyAsTemplate indexCtx
|
|
||||||
>>= renderPandoc
|
|
||||||
>>= loadAndApplyTemplate "templates/default.html" defaultCtx
|
|
||||||
>>= relativizeUrls
|
|
||||||
|
|
||||||
create ["archive.html"] $ do
|
|
||||||
route idRoute
|
|
||||||
compile $ do
|
|
||||||
posts <- recentFirst =<< loadAll "site/posts/*"
|
|
||||||
let archiveCtx =
|
|
||||||
listField "posts" postCtx (return posts) <>
|
|
||||||
constField "title" "Archives" <>
|
|
||||||
-- (menuCtx firstUrl latestUrl)
|
|
||||||
defaultCtx
|
|
||||||
makeItem ""
|
|
||||||
>>= loadAndApplyTemplate "templates/archive.html" archiveCtx
|
|
||||||
>>= loadAndApplyTemplate "templates/default.html" archiveCtx
|
|
||||||
>>= relativizeUrls
|
|
||||||
|
|
||||||
pages <- buildPaginateWith
|
|
||||||
(liftM (paginateEvery 1) . sortRecentFirst)
|
|
||||||
"site/posts/*.md"
|
|
||||||
(\n -> is !! (n - 1))
|
|
||||||
|
|
||||||
paginateRules pages $ \num pat -> do
|
|
||||||
route $ myRoute `composeRoutes` setExtension "html"
|
|
||||||
compile $ do
|
|
||||||
ident <- getUnderlying
|
|
||||||
title <- getMetadataField' ident "title"
|
|
||||||
url <- return . fromMaybe "" =<< getRoute ident
|
|
||||||
compiled <- getResourceBody >>= renderPandoc
|
|
||||||
let pageCtx = paginateContext pages num
|
|
||||||
let flattrCtx = constField "enctitle" (urlEncode title) <>
|
|
||||||
constField "encurl" (urlEncode $ baseUrl ++ url)
|
|
||||||
let ctx = postCtx <> pageCtx <> flattrCtx
|
|
||||||
full <- loadAndApplyTemplate "templates/post.html" ctx compiled
|
|
||||||
_ <- saveSnapshot "content" compiled
|
|
||||||
loadAndApplyTemplate "templates/default.html"
|
|
||||||
defaultCtx full
|
|
||||||
>>= relativizeUrls
|
|
||||||
|
|
||||||
create ["atom.xml"] $ do
|
|
||||||
route idRoute
|
|
||||||
compile $ do
|
|
||||||
loadAllSnapshots "site/posts/*.md" "content"
|
|
||||||
>>= recentFirst
|
|
||||||
>>= renderAtom feedConf feedCtx
|
|
||||||
|
|
||||||
create ["rss.xml"] $ do
|
|
||||||
route idRoute
|
|
||||||
compile $ do
|
|
||||||
loadAllSnapshots "site/posts/*.md" "content"
|
|
||||||
>>= recentFirst
|
|
||||||
>>= renderRss feedConf feedCtx
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
myRoute :: Routes
|
|
||||||
myRoute = gsubRoute "site/" (const "")
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
postCtx :: Context String
|
|
||||||
postCtx =
|
|
||||||
dateField "date" "%B %e, %Y" <>
|
|
||||||
defaultContext
|
|
||||||
|
|
||||||
-- menuCtx :: String -> String -> Context String
|
|
||||||
-- menuCtx first latest =
|
|
||||||
-- constField "first" first <>
|
|
||||||
-- constField "latest" latest <>
|
|
||||||
-- defaultCtx
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
config :: Configuration
|
|
||||||
config = defaultConfiguration
|
|
||||||
{ deployCommand = "rsync --del --checksum -arve 'ssh -p 5557 ' _site/* chaoszone@chaoszone.cz:/home/chaoszone/www/chaoszone"
|
|
||||||
}
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
feedCtx :: Context String
|
|
||||||
feedCtx = mconcat
|
|
||||||
[ bodyField "description"
|
|
||||||
, defaultContext
|
|
||||||
]
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
feedConf :: FeedConfiguration
|
|
||||||
feedConf = FeedConfiguration
|
|
||||||
{ feedTitle = "Chaosone news"
|
|
||||||
, feedDescription = "News from eastern european hackerspaces"
|
|
||||||
, feedAuthorName = "Chaoszone members"
|
|
||||||
, feedAuthorEmail = "nek0@chaoszone.cz"
|
|
||||||
, feedRoot = "https://chaoszone.cz"
|
|
||||||
}
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
sortIdentifiersByDate :: [Identifier] -> [Identifier]
|
|
||||||
sortIdentifiersByDate =
|
|
||||||
sortBy byDate
|
|
||||||
where
|
|
||||||
byDate id1 id2 =
|
|
||||||
let fn1 = takeFileName $ toFilePath id1
|
|
||||||
fn2 = takeFileName $ toFilePath id2
|
|
||||||
parseTime' fn = parseTimeM True defaultTimeLocale "%Y-%m-%d" $
|
|
||||||
intercalate "-" $ take 3 $ splitAll "-" fn
|
|
||||||
in compare
|
|
||||||
(parseTime' fn1 :: Maybe UTCTime)
|
|
||||||
(parseTime' fn2 :: Maybe UTCTime)
|
|
@ -1,3 +0,0 @@
|
|||||||
Here you can find all previous posts:
|
|
||||||
|
|
||||||
$partial("templates/post-list.html")$
|
|
@ -1,50 +0,0 @@
|
|||||||
<!doctype html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8">
|
|
||||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>
|
|
||||||
ChaosZone - $title$
|
|
||||||
</title>
|
|
||||||
<link rel="stylesheet" href="/css/default.css" />
|
|
||||||
<link rel="stylesheet" href="/css/font.css" />
|
|
||||||
<link rel="icon" type="image/svg+xml" href="/images/Chaoszone.svg">
|
|
||||||
|
|
||||||
<!-- RSS -->
|
|
||||||
<link rel="alternate" type="application/rss+xml" title="Chaoszone news" href="/rss.xml">
|
|
||||||
|
|
||||||
<!-- ATOM -->
|
|
||||||
<link rel="alternate" type="application/atom+xml" title="Chaoszone news" href="/atom.xml">
|
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div id="logo">
|
|
||||||
<a href="/">
|
|
||||||
<img src="/images/Chaoszone_crest.36c3.svg" alt="ChaosZone">
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<header id="header">
|
|
||||||
<nav class="menu">
|
|
||||||
<ul>
|
|
||||||
<li><a href="/">Home</a></li>
|
|
||||||
<li><a href="/about.html">About</a></li>
|
|
||||||
<li><a href="/contact.html">Contact</a></li>
|
|
||||||
<li><a href="/archive.html">Archive</a></li>
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<article id="content">
|
|
||||||
<h1>$title$</h1>
|
|
||||||
$body$
|
|
||||||
</article>
|
|
||||||
|
|
||||||
<footer id="footer">
|
|
||||||
last updated on: $curtime$ |
|
|
||||||
Site proudly generated by
|
|
||||||
<a href="http://jaspervdj.be/hakyll">Hakyll</a>
|
|
||||||
</footer>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,5 +0,0 @@
|
|||||||
<ul>
|
|
||||||
$for(posts)$
|
|
||||||
<li><a href="$url$">$title$</a> - $date$</li>
|
|
||||||
$endfor$
|
|
||||||
</ul>
|
|
@ -1,17 +0,0 @@
|
|||||||
<div class="info">
|
|
||||||
Posted on $date$
|
|
||||||
$if(author)$
|
|
||||||
by $author$
|
|
||||||
$endif$
|
|
||||||
</div>
|
|
||||||
|
|
||||||
$body$
|
|
||||||
|
|
||||||
<div class="pagination">
|
|
||||||
$if(previousPageNum)$
|
|
||||||
<a class="left" href="$previousPageUrl$"><svg width="1em" height="1em" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1664 896v128q0 53-32.5 90.5t-84.5 37.5h-704l293 294q38 36 38 90t-38 90l-75 76q-37 37-90 37-52 0-91-37l-651-652q-37-37-37-90 0-52 37-91l651-650q38-38 91-38 52 0 90 38l75 74q38 38 38 91t-38 91l-293 293h704q52 0 84.5 37.5t32.5 90.5z" fill="#fff"/></svg>previous page</a>
|
|
||||||
$endif$
|
|
||||||
$if(nextPageNum)$
|
|
||||||
<a class="right" href="$nextPageUrl$">next page<svg width="1em" height="1em" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1600 960q0 54-37 91l-651 651q-39 37-91 37-51 0-90-37l-75-75q-38-38-38-91t38-91l293-293h-704q-52 0-84.5-37.5t-32.5-90.5v-128q0-53 32.5-90.5t84.5-37.5h704l-293-294q-38-36-38-90t38-90l75-75q38-38 90-38 53 0 91 38l651 651q37 35 37 90z" fill="#fff"/></svg></a>
|
|
||||||
$endif$
|
|
||||||
</div>
|
|
21
themes/zone/LICENSE
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) [year] [fullname]
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
7
themes/zone/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# Theme Name
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
## Configuration
|
5
themes/zone/archetypes/default.md
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
+++
|
||||||
|
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
|
||||||
|
date = {{ .Date }}
|
||||||
|
draft = true
|
||||||
|
+++
|
22
themes/zone/assets/css/main.css
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
body {
|
||||||
|
color: #222;
|
||||||
|
font-family: sans-serif;
|
||||||
|
line-height: 1.5;
|
||||||
|
margin: 1rem;
|
||||||
|
max-width: 768px;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
border-bottom: 1px solid #222;
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
border-top: 1px solid #222;
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #00e;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
1
themes/zone/assets/js/main.js
Normal file
@ -0,0 +1 @@
|
|||||||
|
console.log('This site was generated by Hugo.');
|
23
themes/zone/hugo.toml
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
baseURL = 'https://example.org/'
|
||||||
|
languageCode = 'en-us'
|
||||||
|
title = 'My New Hugo Site'
|
||||||
|
|
||||||
|
[[menus.main]]
|
||||||
|
name = 'Home'
|
||||||
|
pageRef = '/'
|
||||||
|
weight = 10
|
||||||
|
|
||||||
|
[[menus.main]]
|
||||||
|
name = 'Posts'
|
||||||
|
pageRef = '/posts'
|
||||||
|
weight = 20
|
||||||
|
|
||||||
|
[[menus.main]]
|
||||||
|
name = 'Tags'
|
||||||
|
pageRef = '/tags'
|
||||||
|
weight = 30
|
||||||
|
|
||||||
|
[module]
|
||||||
|
[module.hugoVersion]
|
||||||
|
extended = false
|
||||||
|
min = "0.116.0"
|
9
themes/zone/layouts/404.html
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{{ partial "header.html" . }}
|
||||||
|
|
||||||
|
<h1>Page Not Found</h1>
|
||||||
|
|
||||||
|
<p>This page doesn't exist.</p>
|
||||||
|
|
||||||
|
<p><a href="/">Go back to the home page</a></p>
|
||||||
|
|
||||||
|
{{ partial "footer.html" . }}
|
18
themes/zone/layouts/_default/list.html
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
{{ partial "header.html" . }}
|
||||||
|
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
|
||||||
|
{{ .Content }}
|
||||||
|
|
||||||
|
{{ range.Data.Pages }}
|
||||||
|
<article class="post-snippet">
|
||||||
|
<h3>
|
||||||
|
<a href="{{ .RelPermalink }}">{{ .Title }}</a>
|
||||||
|
</h3>
|
||||||
|
<time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">
|
||||||
|
{{ .Date.Format "January 2, 2006" }}
|
||||||
|
</time>
|
||||||
|
</article>
|
||||||
|
{{ end }}
|
||||||
|
|
||||||
|
{{ partial "footer.html" . }}
|
7
themes/zone/layouts/_default/single.html
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
{{ partial "header.html" . }}
|
||||||
|
|
||||||
|
<h1>{{ .Title }}</h1>
|
||||||
|
|
||||||
|
{{ .Content }}
|
||||||
|
|
||||||
|
{{ partial "footer.html" . }}
|
5
themes/zone/layouts/index.html
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
{{ partial "header.html" . }}
|
||||||
|
|
||||||
|
{{ .Content }}
|
||||||
|
|
||||||
|
{{ partial "footer.html" . }}
|
8
themes/zone/layouts/partials/footer.html
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
</main>
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>©{{ dateFormat "2006" now }} {{ .Site.Title }}</p>
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
24
themes/zone/layouts/partials/header.html
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
|
||||||
|
<title>{{ if not .IsHome }}{{ .Title }} | {{ end }}{{ .Site.Title }}</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="/css/style.css" type="text/css" media="all" />
|
||||||
|
<link rel="icon" type="image/svg+xml" href="/img/Chaoszone.svg">
|
||||||
|
|
||||||
|
|
||||||
|
{{ with .OutputFormats.Get "rss" -}}
|
||||||
|
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||||
|
{{ end -}}
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
{{ partial "nav.html" . }}
|
||||||
|
|
||||||
|
<main class="content">
|
14
themes/zone/layouts/partials/nav.html
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
<header class="site-header">
|
||||||
|
<nav class="site-nav">
|
||||||
|
<a class="logo" href="{{ .Site.BaseURL }}">
|
||||||
|
<img src="/img/Chaoszone_crest.png">
|
||||||
|
</a>
|
||||||
|
<ul class="main-menu">
|
||||||
|
{{ range.Site.Menus.main }}
|
||||||
|
<li>
|
||||||
|
<a href="{{ .URL }}">{{ .Name }}</a>
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
BIN
themes/zone/static/css/.style.css.swp
Normal file
58
themes/zone/static/css/style.css
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
:root {
|
||||||
|
--bg-color: #DE4129;
|
||||||
|
--hl-color: #A72119;
|
||||||
|
--menu-font-color: white;
|
||||||
|
--font-color: #430C08;
|
||||||
|
--box-bg: #FF664B;
|
||||||
|
--main-font: 'Cubellan';
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Cubellan';
|
||||||
|
src: url('../font/Cubellan.ttf') format('truetype');
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
background-color: var(--bg-color);
|
||||||
|
color: var(--font-color);
|
||||||
|
font-family: var(--main-font);
|
||||||
|
min-height: 100vh;
|
||||||
|
font-size: 20pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav a, nav a:visited {
|
||||||
|
color: var(--menu-font-color);
|
||||||
|
font-size: 120%;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav ul {
|
||||||
|
list-style: none;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
nav li {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 0.5em;
|
||||||
|
border-radius: 23px;
|
||||||
|
background-color: var(--hl-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.logo img {
|
||||||
|
max-width: 8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
main {
|
||||||
|
padding: 2em;
|
||||||
|
border-radius: 23px;
|
||||||
|
background-color: var(--box-bg);
|
||||||
|
}
|
BIN
themes/zone/static/favicon.ico
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
themes/zone/static/font/Cubellan.ttf
Normal file
16
themes/zone/static/img/Chaoszone.svg
Normal file
After Width: | Height: | Size: 19 KiB |
Before Width: | Height: | Size: 180 KiB After Width: | Height: | Size: 180 KiB |
31
themes/zone/theme.toml
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
name = 'Theme name'
|
||||||
|
license = 'MIT'
|
||||||
|
licenselink = 'https://github.com/owner/repo/LICENSE'
|
||||||
|
description = 'Theme description'
|
||||||
|
|
||||||
|
# The home page of the theme, where the source can be found
|
||||||
|
homepage = 'https://github.com/owner/repo'
|
||||||
|
|
||||||
|
# If you have a running demo of the theme
|
||||||
|
demosite = 'https://owner.github.io/repo'
|
||||||
|
|
||||||
|
# Taxonomy terms
|
||||||
|
tags = ['blog', 'company']
|
||||||
|
features = ['some', 'awesome', 'features']
|
||||||
|
|
||||||
|
# If the theme has multiple authors
|
||||||
|
authors = [
|
||||||
|
{name = 'Name of author', homepage = 'Website of author'},
|
||||||
|
{name = 'Name of author', homepage = 'Website of author'}
|
||||||
|
]
|
||||||
|
|
||||||
|
# If the theme has a single author
|
||||||
|
[author]
|
||||||
|
name = 'Your name'
|
||||||
|
homepage = 'Your website'
|
||||||
|
|
||||||
|
# If porting an existing theme
|
||||||
|
[original]
|
||||||
|
author = 'Name of original author'
|
||||||
|
homepage = 'Website of original author'
|
||||||
|
repo = 'https://github.com/owner/repo'
|