Added skeleton content
This commit is contained in:
parent
c28e591961
commit
09955fc68e
6
css/jfdic.css → css/skeleton.css
vendored
6
css/jfdic.css → css/skeleton.css
vendored
|
@ -81,6 +81,12 @@ h1, h2, h3, h4, h5, h6 {
|
||||||
.masthead-title a {
|
.masthead-title a {
|
||||||
color: #505050;
|
color: #505050;
|
||||||
}
|
}
|
||||||
|
.masthead-title img {
|
||||||
|
max-width: 10%;
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
.masthead-title small {
|
.masthead-title small {
|
||||||
font-size: 75%;
|
font-size: 75%;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
23
default.nix
23
default.nix
|
@ -1 +1,22 @@
|
||||||
(import ./release.nix { }).project
|
{ nixpkgs ? import <nixpkgs> { }, compiler ? "default" }:
|
||||||
|
let
|
||||||
|
inherit (nixpkgs) pkgs;
|
||||||
|
haskellPackages = if compiler == "default" then
|
||||||
|
pkgs.haskellPackages
|
||||||
|
else
|
||||||
|
pkgs.haskell.packages.${compiler};
|
||||||
|
skeleton-org = haskellPackages.callPackage ./skeleton-web.nix { };
|
||||||
|
in nixpkgs.stdenv.mkDerivation {
|
||||||
|
name = "skeleton-org-website";
|
||||||
|
buildInputs = [ skeleton-org ];
|
||||||
|
src = ./.;
|
||||||
|
buildPhase = ''
|
||||||
|
echo "Setting LC_ALL to C.UTF-8 to avoid invalid byte sequence."
|
||||||
|
export LC_ALL=C.UTF-8
|
||||||
|
site build
|
||||||
|
'';
|
||||||
|
installPhase = ''
|
||||||
|
mkdir $out
|
||||||
|
cp -R _site/* $out
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
|
|
@ -12,15 +12,15 @@
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"branch": "nixpkgs-unstable",
|
"branch": "nixos-21.05",
|
||||||
"description": "A read-only mirror of NixOS/nixpkgs tracking the released channels. Send issues and PRs to",
|
"description": "Nix Packages collection",
|
||||||
"homepage": "https://github.com/NixOS/nixpkgs",
|
"homepage": "",
|
||||||
"owner": "NixOS",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs-channels",
|
"repo": "nixpkgs",
|
||||||
"rev": "10100a97c8964e82b30f180fda41ade8e6f69e41",
|
"rev": "9e86f5f7a19db6da2445f07bafa6694b556f9c6d",
|
||||||
"sha256": "011f36kr3c1ria7rag7px26bh73d1b0xpqadd149bysf4hg17rln",
|
"sha256": "0i2j7bf6jq3s13n12xahramami0n6zn1mksqgi01k7flpgyymcck",
|
||||||
"type": "tarball",
|
"type": "tarball",
|
||||||
"url": "https://github.com/NixOS/nixpkgs-channels/archive/10100a97c8964e82b30f180fda41ade8e6f69e41.tar.gz",
|
"url": "https://github.com/nixos/nixpkgs/archive/9e86f5f7a19db6da2445f07bafa6694b556f9c6d.tar.gz",
|
||||||
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
124
nix/sources.nix
124
nix/sources.nix
|
@ -6,52 +6,63 @@ let
|
||||||
# The fetchers. fetch_<type> fetches specs of type <type>.
|
# The fetchers. fetch_<type> fetches specs of type <type>.
|
||||||
#
|
#
|
||||||
|
|
||||||
fetch_file = pkgs: spec:
|
fetch_file = pkgs: name: spec:
|
||||||
|
let
|
||||||
|
name' = sanitizeName name + "-src";
|
||||||
|
in
|
||||||
if spec.builtin or true then
|
if spec.builtin or true then
|
||||||
builtins_fetchurl { inherit (spec) url sha256; }
|
builtins_fetchurl { inherit (spec) url sha256; name = name'; }
|
||||||
else
|
else
|
||||||
pkgs.fetchurl { inherit (spec) url sha256; };
|
pkgs.fetchurl { inherit (spec) url sha256; name = name'; };
|
||||||
|
|
||||||
fetch_tarball = pkgs: spec:
|
fetch_tarball = pkgs: name: spec:
|
||||||
|
let
|
||||||
|
name' = sanitizeName name + "-src";
|
||||||
|
in
|
||||||
if spec.builtin or true then
|
if spec.builtin or true then
|
||||||
builtins_fetchTarball { inherit (spec) url sha256; }
|
builtins_fetchTarball { name = name'; inherit (spec) url sha256; }
|
||||||
else
|
else
|
||||||
pkgs.fetchzip { inherit (spec) url sha256; };
|
pkgs.fetchzip { name = name'; inherit (spec) url sha256; };
|
||||||
|
|
||||||
fetch_git = spec:
|
fetch_git = name: spec:
|
||||||
builtins.fetchGit { url = spec.repo; inherit (spec) rev ref; };
|
let
|
||||||
|
ref =
|
||||||
|
if spec ? ref then spec.ref else
|
||||||
|
if spec ? branch then "refs/heads/${spec.branch}" else
|
||||||
|
if spec ? tag then "refs/tags/${spec.tag}" else
|
||||||
|
abort "In git source '${name}': Please specify `ref`, `tag` or `branch`!";
|
||||||
|
in
|
||||||
|
builtins.fetchGit { url = spec.repo; inherit (spec) rev; inherit ref; };
|
||||||
|
|
||||||
fetch_builtin-tarball = spec:
|
fetch_local = spec: spec.path;
|
||||||
builtins.trace
|
|
||||||
''
|
|
||||||
WARNING:
|
|
||||||
The niv type "builtin-tarball" will soon be deprecated. You should
|
|
||||||
instead use `builtin = true`.
|
|
||||||
|
|
||||||
$ niv modify <package> -a type=tarball -a builtin=true
|
fetch_builtin-tarball = name: throw
|
||||||
''
|
''[${name}] The niv type "builtin-tarball" is deprecated. You should instead use `builtin = true`.
|
||||||
builtins_fetchTarball { inherit (spec) url sha256; };
|
$ niv modify ${name} -a type=tarball -a builtin=true'';
|
||||||
|
|
||||||
fetch_builtin-url = spec:
|
fetch_builtin-url = name: throw
|
||||||
builtins.trace
|
''[${name}] The niv type "builtin-url" will soon be deprecated. You should instead use `builtin = true`.
|
||||||
''
|
$ niv modify ${name} -a type=file -a builtin=true'';
|
||||||
WARNING:
|
|
||||||
The niv type "builtin-url" will soon be deprecated. You should
|
|
||||||
instead use `builtin = true`.
|
|
||||||
|
|
||||||
$ niv modify <package> -a type=file -a builtin=true
|
|
||||||
''
|
|
||||||
(builtins_fetchurl { inherit (spec) url sha256; });
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Various helpers
|
# Various helpers
|
||||||
#
|
#
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/pull/83241/files#diff-c6f540a4f3bfa4b0e8b6bafd4cd54e8bR695
|
||||||
|
sanitizeName = name:
|
||||||
|
(
|
||||||
|
concatMapStrings (s: if builtins.isList s then "-" else s)
|
||||||
|
(
|
||||||
|
builtins.split "[^[:alnum:]+._?=-]+"
|
||||||
|
((x: builtins.elemAt (builtins.match "\\.*(.*)" x) 0) name)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
# The set of packages used when specs are fetched using non-builtins.
|
# The set of packages used when specs are fetched using non-builtins.
|
||||||
mkPkgs = sources:
|
mkPkgs = sources: system:
|
||||||
let
|
let
|
||||||
sourcesNixpkgs =
|
sourcesNixpkgs =
|
||||||
import (builtins_fetchTarball { inherit (sources.nixpkgs) url sha256; }) {};
|
import (builtins_fetchTarball { inherit (sources.nixpkgs) url sha256; }) { inherit system; };
|
||||||
hasNixpkgsPath = builtins.any (x: x.prefix == "nixpkgs") builtins.nixPath;
|
hasNixpkgsPath = builtins.any (x: x.prefix == "nixpkgs") builtins.nixPath;
|
||||||
hasThisAsNixpkgsPath = <nixpkgs> == ./.;
|
hasThisAsNixpkgsPath = <nixpkgs> == ./.;
|
||||||
in
|
in
|
||||||
|
@ -71,14 +82,27 @@ let
|
||||||
|
|
||||||
if ! builtins.hasAttr "type" spec then
|
if ! builtins.hasAttr "type" spec then
|
||||||
abort "ERROR: niv spec ${name} does not have a 'type' attribute"
|
abort "ERROR: niv spec ${name} does not have a 'type' attribute"
|
||||||
else if spec.type == "file" then fetch_file pkgs spec
|
else if spec.type == "file" then fetch_file pkgs name spec
|
||||||
else if spec.type == "tarball" then fetch_tarball pkgs spec
|
else if spec.type == "tarball" then fetch_tarball pkgs name spec
|
||||||
else if spec.type == "git" then fetch_git spec
|
else if spec.type == "git" then fetch_git name spec
|
||||||
else if spec.type == "builtin-tarball" then fetch_builtin-tarball spec
|
else if spec.type == "local" then fetch_local spec
|
||||||
else if spec.type == "builtin-url" then fetch_builtin-url spec
|
else if spec.type == "builtin-tarball" then fetch_builtin-tarball name
|
||||||
|
else if spec.type == "builtin-url" then fetch_builtin-url name
|
||||||
else
|
else
|
||||||
abort "ERROR: niv spec ${name} has unknown type ${builtins.toJSON spec.type}";
|
abort "ERROR: niv spec ${name} has unknown type ${builtins.toJSON spec.type}";
|
||||||
|
|
||||||
|
# If the environment variable NIV_OVERRIDE_${name} is set, then use
|
||||||
|
# the path directly as opposed to the fetched source.
|
||||||
|
replace = name: drv:
|
||||||
|
let
|
||||||
|
saneName = stringAsChars (c: if isNull (builtins.match "[a-zA-Z0-9]" c) then "_" else c) name;
|
||||||
|
ersatz = builtins.getEnv "NIV_OVERRIDE_${saneName}";
|
||||||
|
in
|
||||||
|
if ersatz == "" then drv else
|
||||||
|
# this turns the string into an actual Nix path (for both absolute and
|
||||||
|
# relative paths)
|
||||||
|
if builtins.substring 0 1 ersatz == "/" then /. + ersatz else /. + builtins.getEnv "PWD" + "/${ersatz}";
|
||||||
|
|
||||||
# Ports of functions for older nix versions
|
# Ports of functions for older nix versions
|
||||||
|
|
||||||
# a Nix version of mapAttrs if the built-in doesn't exist
|
# a Nix version of mapAttrs if the built-in doesn't exist
|
||||||
|
@ -87,23 +111,37 @@ let
|
||||||
listToAttrs (map (attr: { name = attr; value = f attr set.${attr}; }) (attrNames set))
|
listToAttrs (map (attr: { name = attr; value = f attr set.${attr}; }) (attrNames set))
|
||||||
);
|
);
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/blob/0258808f5744ca980b9a1f24fe0b1e6f0fecee9c/lib/lists.nix#L295
|
||||||
|
range = first: last: if first > last then [] else builtins.genList (n: first + n) (last - first + 1);
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/blob/0258808f5744ca980b9a1f24fe0b1e6f0fecee9c/lib/strings.nix#L257
|
||||||
|
stringToCharacters = s: map (p: builtins.substring p 1 s) (range 0 (builtins.stringLength s - 1));
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/blob/0258808f5744ca980b9a1f24fe0b1e6f0fecee9c/lib/strings.nix#L269
|
||||||
|
stringAsChars = f: s: concatStrings (map f (stringToCharacters s));
|
||||||
|
concatMapStrings = f: list: concatStrings (map f list);
|
||||||
|
concatStrings = builtins.concatStringsSep "";
|
||||||
|
|
||||||
|
# https://github.com/NixOS/nixpkgs/blob/8a9f58a375c401b96da862d969f66429def1d118/lib/attrsets.nix#L331
|
||||||
|
optionalAttrs = cond: as: if cond then as else {};
|
||||||
|
|
||||||
# fetchTarball version that is compatible between all the versions of Nix
|
# fetchTarball version that is compatible between all the versions of Nix
|
||||||
builtins_fetchTarball = { url, sha256 }@attrs:
|
builtins_fetchTarball = { url, name ? null, sha256 }@attrs:
|
||||||
let
|
let
|
||||||
inherit (builtins) lessThan nixVersion fetchTarball;
|
inherit (builtins) lessThan nixVersion fetchTarball;
|
||||||
in
|
in
|
||||||
if lessThan nixVersion "1.12" then
|
if lessThan nixVersion "1.12" then
|
||||||
fetchTarball { inherit url; }
|
fetchTarball ({ inherit url; } // (optionalAttrs (!isNull name) { inherit name; }))
|
||||||
else
|
else
|
||||||
fetchTarball attrs;
|
fetchTarball attrs;
|
||||||
|
|
||||||
# fetchurl version that is compatible between all the versions of Nix
|
# fetchurl version that is compatible between all the versions of Nix
|
||||||
builtins_fetchurl = { url, sha256 }@attrs:
|
builtins_fetchurl = { url, name ? null, sha256 }@attrs:
|
||||||
let
|
let
|
||||||
inherit (builtins) lessThan nixVersion fetchurl;
|
inherit (builtins) lessThan nixVersion fetchurl;
|
||||||
in
|
in
|
||||||
if lessThan nixVersion "1.12" then
|
if lessThan nixVersion "1.12" then
|
||||||
fetchurl { inherit url; }
|
fetchurl ({ inherit url; } // (optionalAttrs (!isNull name) { inherit name; }))
|
||||||
else
|
else
|
||||||
fetchurl attrs;
|
fetchurl attrs;
|
||||||
|
|
||||||
|
@ -115,14 +153,15 @@ let
|
||||||
then abort
|
then abort
|
||||||
"The values in sources.json should not have an 'outPath' attribute"
|
"The values in sources.json should not have an 'outPath' attribute"
|
||||||
else
|
else
|
||||||
spec // { outPath = fetch config.pkgs name spec; }
|
spec // { outPath = replace name (fetch config.pkgs name spec); }
|
||||||
) config.sources;
|
) config.sources;
|
||||||
|
|
||||||
# The "config" used by the fetchers
|
# The "config" used by the fetchers
|
||||||
mkConfig =
|
mkConfig =
|
||||||
{ sourcesFile ? ./sources.json
|
{ sourcesFile ? if builtins.pathExists ./sources.json then ./sources.json else null
|
||||||
, sources ? builtins.fromJSON (builtins.readFile sourcesFile)
|
, sources ? if isNull sourcesFile then {} else builtins.fromJSON (builtins.readFile sourcesFile)
|
||||||
, pkgs ? mkPkgs sources
|
, system ? builtins.currentSystem
|
||||||
|
, pkgs ? mkPkgs sources system
|
||||||
}: rec {
|
}: rec {
|
||||||
# The sources, i.e. the attribute set of spec name to spec
|
# The sources, i.e. the attribute set of spec name to spec
|
||||||
inherit sources;
|
inherit sources;
|
||||||
|
@ -130,5 +169,6 @@ let
|
||||||
# The "pkgs" (evaluated nixpkgs) to use for e.g. non-builtin fetchers
|
# The "pkgs" (evaluated nixpkgs) to use for e.g. non-builtin fetchers
|
||||||
inherit pkgs;
|
inherit pkgs;
|
||||||
};
|
};
|
||||||
|
|
||||||
in
|
in
|
||||||
mkSources (mkConfig {}) // { __functor = _: settings: mkSources (mkConfig settings); }
|
mkSources (mkConfig {}) // { __functor = _: settings: mkSources (mkConfig settings); }
|
||||||
|
|
|
@ -2,6 +2,9 @@
|
||||||
title: About
|
title: About
|
||||||
---
|
---
|
||||||
|
|
||||||
We're the spiritual successor to `C@T`_.
|
"With the abolition of private property, then, we shall have true, beautiful,
|
||||||
|
healthy Individualism. Nobody will waste his life in accumulating things, and
|
||||||
|
the symbols for things. One will live. To live is the rarest thing in the
|
||||||
|
world. Most people exist, that is all."
|
||||||
|
|
||||||
.. _C@T:: https://web.archive.org/web/20070102063147/http://cat.org.au/
|
-- Oscar Wilde
|
||||||
|
|
|
@ -2,4 +2,21 @@
|
||||||
title: Contact
|
title: Contact
|
||||||
---
|
---
|
||||||
|
|
||||||
You can contact the JFDI collective via our Matrix room.
|
We have always lived in slums and holes in the wall. We will know how to
|
||||||
|
accommodate ourselves for a while.
|
||||||
|
|
||||||
|
For you must not forget that we can also build.
|
||||||
|
|
||||||
|
It is we who built these palaces and cities, here in Spain and America and
|
||||||
|
everywhere. We, the workers. We can build others to take their place. And
|
||||||
|
better ones.
|
||||||
|
|
||||||
|
We are not in the least afraid of ruins.
|
||||||
|
|
||||||
|
We are going to inherit the earth; there is not the slightest doubt about that. The bourgeoisie might blast and ruin its own world before it leaves the stage of history.
|
||||||
|
|
||||||
|
We carry a new world here, in our hearts.
|
||||||
|
|
||||||
|
That world is growing in this minute.
|
||||||
|
|
||||||
|
-- Buenaventura Durruti
|
||||||
|
|
30
posts/1902-05-01-mutual-aid.rst
Normal file
30
posts/1902-05-01-mutual-aid.rst
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
---
|
||||||
|
title: "Mutual Aid: A Factor Of Evolution"
|
||||||
|
author: Pyotr Kropotkin
|
||||||
|
tags: jfdi
|
||||||
|
---
|
||||||
|
|
||||||
|
Each time, however, that an attempt to return to this old principle was made,
|
||||||
|
it's fundamental idea itself was widened. From the clan it was extended to the
|
||||||
|
stem, to the federation of stems, to the nation, and finally—in ideal, at
|
||||||
|
least—to the whole of mankind. It was also refined at the same time. In
|
||||||
|
primitive Buddhism, in primitive Christianity, in the writings of some of the
|
||||||
|
Mussulman teachers, in the early movements of the Reform, and especially in the
|
||||||
|
ethical and philosophical movements of the last century and of our own times,
|
||||||
|
the total abandonment of the idea of revenge, or of “due reward”—of good for
|
||||||
|
good and evil for evil—is affirmed more and more vigorously. The higher
|
||||||
|
conception of “no revenge for wrongs,” and of freely giving more than one
|
||||||
|
expects to receive from his neighbours, is proclaimed as being the real
|
||||||
|
principle of morality—a principle superior to mere equivalence, equity, or
|
||||||
|
justice, and more conducive to happiness. And man is appealed to to be guided
|
||||||
|
in his acts, not merely by love, which is always personal, or at the best
|
||||||
|
tribal, but by the perception of his oneness with each human being.
|
||||||
|
|
||||||
|
In the practice of mutual aid, which we can retrace to the earliest
|
||||||
|
beginnings of evolution, we thus find the positive and undoubted origin of
|
||||||
|
our ethical conceptions;
|
||||||
|
|
||||||
|
and we can affirm that in the ethical progress of man, mutual support not
|
||||||
|
mutual struggle—has had the leading part. In its wide extension, even at the
|
||||||
|
present time, we also see the best guarantee of a still loftier evolution of
|
||||||
|
our species.
|
20
posts/1908-07-19-what_i_believe.rst
Normal file
20
posts/1908-07-19-what_i_believe.rst
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
---
|
||||||
|
title: What I Believe
|
||||||
|
author: Emma Goldman
|
||||||
|
published: 1908-07-19
|
||||||
|
tags: skeleton
|
||||||
|
---
|
||||||
|
|
||||||
|
The student of the history of progressive thought is well aware that every idea
|
||||||
|
in its early stages has been misrepresented, and the adherents of such ideas
|
||||||
|
have been maligned and persecuted. One need not go back two thousand years to
|
||||||
|
the time when those who believed in the gospel of Jesus were thrown into the
|
||||||
|
arena or hunted into dungeons to realize how little great beliefs or earnest
|
||||||
|
believers are understood.
|
||||||
|
|
||||||
|
The history of progress is written in the blood of men and women who have
|
||||||
|
dared to espouse an unpopular cause, as, for instance, the black man’s right
|
||||||
|
to his body, or woman’s right to her soul.
|
||||||
|
|
||||||
|
If, then, from time immemorial, the New has met with opposition and
|
||||||
|
condemnation, why should my beliefs be exempt from a crown of thorns?
|
19
posts/1974-05-01-the_dispossessed.rst
Normal file
19
posts/1974-05-01-the_dispossessed.rst
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
---
|
||||||
|
title: The Dispossessed
|
||||||
|
author: Ursula K. Le Guin
|
||||||
|
published: 1974-05-01
|
||||||
|
tags: skeleton
|
||||||
|
---
|
||||||
|
|
||||||
|
It is our suffering that brings us together. It is not love. Love does not obey
|
||||||
|
the mind, and turns to hate when forced. The bond that binds us is beyond
|
||||||
|
choice. We are brothers. We are brothers in what we share. In pain, which each
|
||||||
|
of us must suffer alone, in hunger, in poverty, in hope, we know our
|
||||||
|
brotherhood. We know it, because we have had to learn it.
|
||||||
|
|
||||||
|
We know that there is no help for us but from one another, that no hand will
|
||||||
|
save us if we do not reach out our hand. And the hand that you reach out is
|
||||||
|
empty, as mine is.
|
||||||
|
|
||||||
|
You have nothing. You possess nothing. You own nothing. You are free. All you have
|
||||||
|
is what you are, and what you give.
|
19
posts/1986-05-01-connotations_of_anarchy.rst
Normal file
19
posts/1986-05-01-connotations_of_anarchy.rst
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
---
|
||||||
|
title: Connotations of Anarchy
|
||||||
|
author: Dr Joseph Toscano
|
||||||
|
published: 1986-05-01
|
||||||
|
tags: skeleton
|
||||||
|
---
|
||||||
|
|
||||||
|
Anarchy is a bogey word: we are coming out of the closet, as it were, to show
|
||||||
|
that we do not have horns or tails. We are simply Australians who have a
|
||||||
|
different philosophy of life. We don't believe in Big Government: in fact, we
|
||||||
|
don't believe in government at all. Government, any government is based on
|
||||||
|
violence and power. If you don't believe it, just look at your headlines over
|
||||||
|
the past few weeks.
|
||||||
|
|
||||||
|
Anarchy doesn't mean bombs in the street or supersonic bomber raids, it
|
||||||
|
means 'without rulers'.
|
||||||
|
|
||||||
|
Anarchy means voluntary co-operation and self-management, equality, shared
|
||||||
|
economic decision making.
|
|
@ -1,60 +0,0 @@
|
||||||
---
|
|
||||||
title: S.P.Q.R.
|
|
||||||
tags: Mauris, lorem
|
|
||||||
---
|
|
||||||
|
|
||||||
Mauris in lorem nisl. Maecenas tempus facilisis ante, eget viverra nisl
|
|
||||||
tincidunt et. Donec turpis lectus, mattis ac malesuada a, accumsan eu libero.
|
|
||||||
Morbi condimentum, tortor et tincidunt ullamcorper, sem quam pretium nulla, id
|
|
||||||
convallis lectus libero nec turpis. Proin dapibus nisi id est sodales nec
|
|
||||||
ultrices tortor pellentesque. Vivamus vel nisi ac lacus sollicitudin vulputate
|
|
||||||
ac ut ligula. Nullam feugiat risus eget eros gravida in molestie sapien euismod.
|
|
||||||
Nunc sed hendrerit orci. Nulla mollis consequat lorem ac blandit. Ut et turpis
|
|
||||||
mauris. Nulla est odio, posuere id ullamcorper sit amet, tincidunt vel justo.
|
|
||||||
Curabitur placerat tincidunt varius. Nulla vulputate, ipsum eu consectetur
|
|
||||||
mollis, dui nibh aliquam neque, at ultricies leo ligula et arcu. Proin et mi
|
|
||||||
eget tellus sodales lobortis. Sed tempor, urna vel pulvinar faucibus, lectus
|
|
||||||
urna vehicula ante, at facilisis dolor odio at lorem. Morbi vehicula euismod
|
|
||||||
urna, et imperdiet urna ornare vitae.
|
|
||||||
|
|
||||||
Sed tincidunt sollicitudin ultrices. In hac habitasse platea dictumst. Morbi
|
|
||||||
ligula lectus, egestas at ultricies nec, fringilla et tellus. Duis urna lorem,
|
|
||||||
bibendum a ornare sed, euismod sed nunc. Aliquam tempor massa at velit fringilla
|
|
||||||
fringilla. Praesent sit amet tempor felis. Maecenas id felis ac velit aliquam
|
|
||||||
tempor a sit amet orci. Nunc placerat nulla pellentesque sem commodo cursus.
|
|
||||||
Praesent quis sapien orci, quis ultricies augue. Nam vestibulum sem non augue
|
|
||||||
semper tincidunt pellentesque ipsum volutpat. Duis congue, nunc a aliquam
|
|
||||||
luctus, quam ante convallis nisi, ac pellentesque lacus orci vel turpis. Cum
|
|
||||||
sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus
|
|
||||||
mus. Suspendisse hendrerit nisl eu felis sagittis faucibus. Nunc eu congue
|
|
||||||
lorem. Quisque non nibh nisi, et ultrices massa. Sed vitae erat vitae nulla
|
|
||||||
pellentesque fermentum.
|
|
||||||
|
|
||||||
Ut diam nunc, consectetur ut ultrices eu, iaculis sed felis. Sed lacinia, odio
|
|
||||||
et accumsan luctus, arcu ipsum accumsan erat, sit amet malesuada libero lacus et
|
|
||||||
velit. Donec accumsan tristique tristique. Proin a metus magna, vitae mattis
|
|
||||||
nisl. Integer a libero ipsum. Mauris faucibus eleifend metus id sodales. Morbi
|
|
||||||
ornare, nibh nec facilisis imperdiet, turpis sem commodo lorem, id commodo
|
|
||||||
mauris metus vitae justo. Etiam at pellentesque tortor. Proin mollis accumsan
|
|
||||||
ligula, nec tempus augue auctor quis. Nulla lacinia, mi quis lobortis auctor,
|
|
||||||
nisi diam posuere dui, pulvinar feugiat dui libero eget quam. Fusce eu risus
|
|
||||||
nunc, a consectetur orci. Class aptent taciti sociosqu ad litora torquent per
|
|
||||||
conubia nostra, per inceptos himenaeos. Maecenas venenatis aliquet orci, a
|
|
||||||
ultricies sem facilisis eu. Donec dolor purus, porta condimentum convallis nec,
|
|
||||||
dignissim nec libero.
|
|
||||||
|
|
||||||
Etiam rutrum ultricies dui, et interdum metus elementum et. Nulla sapien nunc,
|
|
||||||
interdum tristique porttitor in, laoreet vitae mi. Ut vehicula auctor mauris sit
|
|
||||||
amet bibendum. Phasellus adipiscing mattis libero, eget adipiscing erat
|
|
||||||
dignissim at. Vivamus convallis malesuada metus nec cursus. Ut cursus, lorem
|
|
||||||
eleifend sollicitudin condimentum, felis tortor sodales augue, ac tempus lacus
|
|
||||||
ipsum vitae quam. Vestibulum vitae lacus non tortor vehicula iaculis faucibus
|
|
||||||
quis massa.
|
|
||||||
|
|
||||||
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus
|
|
||||||
mus. Duis malesuada neque nec ante porttitor accumsan. Suspendisse potenti.
|
|
||||||
Aliquam in lacus magna, imperdiet laoreet lectus. Praesent id diam nec ante
|
|
||||||
commodo rhoncus nec vel augue. Pellentesque tortor massa, dignissim ut sagittis
|
|
||||||
sed, hendrerit vitae nunc. Nam gravida, urna vitae hendrerit rutrum, felis augue
|
|
||||||
vulputate tortor, ut varius velit libero nec lectus. In adipiscing massa in est
|
|
||||||
scelerisque ullamcorper. Vivamus in nisi metus.
|
|
|
@ -1,47 +0,0 @@
|
||||||
---
|
|
||||||
title: Rosa Rosa Rosam
|
|
||||||
author: Ovidius
|
|
||||||
tags: lorem
|
|
||||||
---
|
|
||||||
|
|
||||||
Suspendisse pharetra ullamcorper sem et auctor. Suspendisse vitae tellus eu
|
|
||||||
turpis dignissim gravida ut ut tortor. Cum sociis natoque penatibus et magnis
|
|
||||||
dis parturient montes, nascetur ridiculus mus. Morbi aliquam sapien quis nisl
|
|
||||||
sodales non aliquet nisl iaculis. Curabitur fermentum orci vel sapien
|
|
||||||
pellentesque id condimentum metus vehicula. Curabitur turpis purus, scelerisque
|
|
||||||
at interdum quis, placerat sit amet tortor. Aliquam erat volutpat.
|
|
||||||
|
|
||||||
Integer posuere felis non arcu suscipit ullamcorper. Nam tempus risus venenatis
|
|
||||||
orci sagittis eu aliquam ante tincidunt. Aenean vehicula ipsum id sapien
|
|
||||||
tincidunt commodo. Aliquam erat volutpat. Curabitur vehicula libero ac turpis
|
|
||||||
cursus consectetur. Praesent posuere egestas purus et dapibus. Mauris egestas,
|
|
||||||
lectus vitae scelerisque ultricies, metus lorem tempor nisi, sed vehicula tortor
|
|
||||||
mauris nec urna. Quisque urna tellus, facilisis at mollis eget, adipiscing in
|
|
||||||
nisl. Proin quam arcu, euismod et imperdiet sed, ultricies sed orci.
|
|
||||||
|
|
||||||
Nulla malesuada sem eget lectus scelerisque nec rhoncus metus interdum. In dui
|
|
||||||
felis, rhoncus id scelerisque eget, vulputate id sem. Nulla facilisi. Vestibulum
|
|
||||||
eleifend, metus dignissim lacinia ornare, magna nulla vehicula nisi, sed
|
|
||||||
molestie mauris ipsum vel turpis. Class aptent taciti sociosqu ad litora
|
|
||||||
torquent per conubia nostra, per inceptos himenaeos. Nulla urna leo, vehicula
|
|
||||||
eget dignissim a, hendrerit ut risus. Fusce ultricies elementum placerat. Nam at
|
|
||||||
dolor sed nisi mollis sollicitudin vitae at urna. Vestibulum iaculis adipiscing
|
|
||||||
eros et mollis.
|
|
||||||
|
|
||||||
Phasellus ultricies elit eu risus sagittis eu dictum ante ultrices. Nulla
|
|
||||||
congue, augue ac placerat tempor, orci mi luctus nisi, at varius ipsum sem sed
|
|
||||||
eros. Vivamus eget velit eget felis posuere ornare. In sed metus non est iaculis
|
|
||||||
facilisis dapibus sit amet enim. Aliquam viverra tortor eget neque volutpat in
|
|
||||||
auctor urna rutrum. Aliquam ligula augue, congue sit amet rutrum in, semper vel
|
|
||||||
nulla. Sed tempus porttitor faucibus. Donec cursus sodales nulla, quis lacinia
|
|
||||||
mi vehicula vel. Sed nec purus orci. Nam leo sapien, rutrum a ultrices quis,
|
|
||||||
placerat vel ligula. Donec massa quam, pellentesque et molestie nec, hendrerit
|
|
||||||
id mauris. In hac habitasse platea dictumst. Cras quis quam sem. Curabitur in
|
|
||||||
arcu diam, in interdum mauris.
|
|
||||||
|
|
||||||
Proin lorem sapien, iaculis et faucibus nec, dictum sed nunc. Pellentesque in
|
|
||||||
purus justo. Vestibulum facilisis rutrum nisi, a egestas nunc suscipit sed. Ut
|
|
||||||
quis tortor a arcu bibendum placerat non sed ante. Praesent orci sem, posuere
|
|
||||||
sit amet cursus molestie, volutpat ut purus. Curabitur aliquam, purus in
|
|
||||||
pharetra viverra, lorem leo aliquam tellus, vel consequat felis neque et mauris.
|
|
||||||
Aliquam erat volutpat.
|
|
|
@ -1,51 +0,0 @@
|
||||||
---
|
|
||||||
title: Carpe Diem
|
|
||||||
tags: lorem, quam
|
|
||||||
---
|
|
||||||
|
|
||||||
Fusce tortor quam, egestas in posuere quis, porttitor vel turpis. Donec
|
|
||||||
vulputate porttitor augue at rhoncus. Proin iaculis consectetur sagittis.
|
|
||||||
Curabitur venenatis turpis sit amet purus tristique nec posuere risus laoreet.
|
|
||||||
Nullam nisi sem, dapibus id semper id, egestas vel arcu. Morbi porttitor ipsum
|
|
||||||
placerat erat consequat sed consequat purus feugiat. Donec auctor elit ut risus
|
|
||||||
mattis facilisis. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
|
|
||||||
|
|
||||||
Proin vulputate sapien facilisis leo ornare pulvinar. Fusce tempus massa a risus
|
|
||||||
semper iaculis. Suspendisse sollicitudin posuere nunc, sit amet rutrum leo
|
|
||||||
facilisis mattis. Sed ornare auctor dui, vitae rutrum neque auctor sit amet.
|
|
||||||
Proin ac dui magna. Mauris vehicula interdum augue, nec ultrices libero egestas
|
|
||||||
quis. Nunc convallis euismod ipsum, id sollicitudin orci consequat ac. Fusce
|
|
||||||
bibendum congue libero, in rutrum nulla congue non. Cras sit amet risus tortor,
|
|
||||||
eu pellentesque dui. Phasellus euismod enim non nibh sodales quis consectetur
|
|
||||||
lorem laoreet. Vivamus a egestas quam. Curabitur in tortor augue, vitae varius
|
|
||||||
tellus. Integer varius, elit ac gravida suscipit, eros erat pellentesque nisi,
|
|
||||||
et tristique augue odio id nulla. Aliquam sit amet nunc vel tellus hendrerit
|
|
||||||
tempus ac vel sem.
|
|
||||||
|
|
||||||
Aenean tincidunt sollicitudin sapien ut porttitor. Curabitur molestie adipiscing
|
|
||||||
lorem vel scelerisque. Donec vitae interdum est. Proin rutrum vulputate
|
|
||||||
faucibus. Suspendisse sit amet felis odio, non volutpat ante. Sed eu lectus
|
|
||||||
quam. Curabitur tristique rhoncus est, vel commodo tortor suscipit semper.
|
|
||||||
Maecenas feugiat vestibulum nisi id facilisis. Nulla non tincidunt libero.
|
|
||||||
Praesent ultrices interdum commodo. Sed euismod nisl auctor leo ultrices rutrum.
|
|
||||||
Aliquam nibh felis, congue molestie blandit at, bibendum at eros. Aenean
|
|
||||||
tincidunt, tortor iaculis placerat sollicitudin, lorem justo tempor diam, et
|
|
||||||
posuere sapien leo et magna. Quisque vel aliquam mauris.
|
|
||||||
|
|
||||||
Proin varius tempus fermentum. Cum sociis natoque penatibus et magnis dis
|
|
||||||
parturient montes, nascetur ridiculus mus. Sed tincidunt nunc id magna
|
|
||||||
adipiscing non sollicitudin turpis tempor. Etiam vel elit ipsum, quis euismod
|
|
||||||
velit. Quisque elementum magna vitae quam venenatis lacinia. Sed at arcu ipsum.
|
|
||||||
Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos
|
|
||||||
himenaeos. Donec ut lorem ac sapien cursus lacinia sit amet mollis dolor.
|
|
||||||
Vivamus tempus odio nec magna faucibus sed hendrerit lorem tempor.
|
|
||||||
|
|
||||||
Vestibulum eu nisi arcu. Curabitur nisi risus, fermentum ut lacinia ut, interdum
|
|
||||||
nec magna. Nunc aliquet gravida massa, eu aliquam lorem faucibus at. Sed
|
|
||||||
sollicitudin volutpat velit id tempor. In nibh justo, pharetra et pretium
|
|
||||||
dignissim, tempus in turpis. Phasellus eget lobortis nisl. Phasellus sed
|
|
||||||
fermentum diam. Nam tempus pharetra odio, quis congue eros imperdiet eu. Aliquam
|
|
||||||
dui eros, hendrerit et vulputate vel, porta eu eros. Nullam nisi dui, commodo
|
|
||||||
eget pharetra ut, ornare sit amet nunc. Fusce vel neque urna. Maecenas nulla
|
|
||||||
ante, egestas at consequat quis, fermentum a enim. Aliquam id tristique urna.
|
|
||||||
Integer augue justo, scelerisque et consectetur id, rhoncus eget enim.
|
|
|
@ -1,59 +0,0 @@
|
||||||
---
|
|
||||||
title: Tu Quoque
|
|
||||||
author: Julius
|
|
||||||
tags: lorem, quam
|
|
||||||
---
|
|
||||||
|
|
||||||
Vestibulum leo turpis, dignissim quis ultrices sit amet, iaculis ac ligula.
|
|
||||||
Pellentesque tristique, velit eget scelerisque scelerisque, est dolor ultrices
|
|
||||||
arcu, quis ullamcorper justo arcu luctus mauris. Integer congue molestie nisi id
|
|
||||||
posuere. Fusce pellentesque gravida tempus. Integer viverra tortor nec eros
|
|
||||||
mollis quis convallis sem laoreet. Nulla id libero ac erat varius laoreet. Proin
|
|
||||||
sed est est. Curabitur lacinia fermentum lorem, elementum malesuada ipsum
|
|
||||||
malesuada ut. Donec suscipit elit id leo vehicula mattis non sed leo. Morbi
|
|
||||||
varius eleifend varius. Nulla vestibulum, neque vitae aliquam eleifend, nisi
|
|
||||||
tellus placerat nunc, quis suscipit elit turpis eu tortor. Etiam euismod
|
|
||||||
convallis lectus quis venenatis. Phasellus laoreet magna in nibh cursus eu
|
|
||||||
egestas nulla convallis. Aliquam vel ullamcorper risus. Fusce dictum, massa id
|
|
||||||
consequat viverra, nulla ante tristique est, a faucibus nisi enim nec dui. Donec
|
|
||||||
metus ligula, condimentum at porttitor eget, lobortis at quam.
|
|
||||||
|
|
||||||
Aenean vel libero in magna ultricies congue in a odio. Donec faucibus rutrum
|
|
||||||
ornare. Fusce dictum eleifend fermentum. Vestibulum vel nibh a metus porttitor
|
|
||||||
rhoncus. Pellentesque id quam neque, eget molestie arcu. Integer in elit vel
|
|
||||||
neque viverra ultricies in eget massa. Nam ut convallis est. Pellentesque eros
|
|
||||||
eros, sodales non vehicula et, tincidunt ut odio. Cras suscipit ultrices metus
|
|
||||||
sit amet molestie. Fusce enim leo, vehicula sed sodales quis, adipiscing at
|
|
||||||
ipsum.
|
|
||||||
|
|
||||||
Nunc tempor dignissim enim, sed tincidunt eros bibendum quis. Curabitur et dolor
|
|
||||||
augue, id laoreet mi. Nulla cursus felis id dui vehicula vitae ornare lorem
|
|
||||||
blandit. Cras eget dui nec odio volutpat pharetra. Fusce hendrerit justo justo,
|
|
||||||
vel imperdiet enim. Vivamus elit risus, interdum ultrices accumsan eleifend,
|
|
||||||
vestibulum vitae sapien. Integer bibendum ullamcorper tristique. Nulla quis odio
|
|
||||||
lectus, quis eleifend augue. Integer a ligula mauris. Aenean et tempus tortor.
|
|
||||||
Quisque at tortor mi. Vivamus accumsan feugiat est a blandit. Sed vitae enim ut
|
|
||||||
dolor semper sodales. Duis tristique, ante et placerat elementum, nulla tellus
|
|
||||||
pellentesque sapien, quis posuere velit mi eget nulla. Sed vestibulum nunc non
|
|
||||||
est porttitor ut rutrum nibh semper. Pellentesque habitant morbi tristique
|
|
||||||
senectus et netus et malesuada fames ac turpis egestas.
|
|
||||||
|
|
||||||
Nulla adipiscing ultricies lobortis. Vivamus iaculis nisl vitae tellus laoreet
|
|
||||||
vitae aliquet lacus mollis. Phasellus ut lacus urna, sed sagittis ante. Etiam
|
|
||||||
consectetur pretium nisl sed dignissim. Pellentesque convallis, nisl eget
|
|
||||||
commodo mollis, sem magna consequat arcu, sed pretium ipsum arcu sit amet neque.
|
|
||||||
Aliquam erat volutpat. Morbi sed mi sed urna vestibulum placerat vitae vel
|
|
||||||
metus. Fusce ac ante at justo pharetra vehicula. Vivamus vel tortor eget augue
|
|
||||||
aliquet aliquet at vel odio. Nunc venenatis, magna quis facilisis fringilla,
|
|
||||||
augue tellus varius neque, in vulputate est eros ut tortor. Duis lorem neque,
|
|
||||||
aliquam congue posuere id, condimentum non dui. Phasellus ut dui massa,
|
|
||||||
porttitor suscipit augue. Praesent quis tellus quam, vel volutpat metus. Vivamus
|
|
||||||
enim est, aliquam in imperdiet et, sagittis eu ligula. Vestibulum hendrerit
|
|
||||||
placerat orci et aliquet. Cras pharetra, dolor placerat lobortis tempor, metus
|
|
||||||
odio cursus ligula, et posuere lacus ligula quis dui.
|
|
||||||
|
|
||||||
Donec a lectus eu nibh malesuada aliquam. Proin at metus quam, et tincidunt leo.
|
|
||||||
Quisque lacus justo, scelerisque sodales pulvinar sed, dignissim ut sapien.
|
|
||||||
Vivamus diam felis, adipiscing sollicitudin ultricies id, accumsan ac felis. In
|
|
||||||
eu posuere ligula. Suspendisse potenti. Donec porttitor dictum dui id vehicula.
|
|
||||||
Integer ante velit, congue id dictum et, adipiscing a tortor.
|
|
34
release.nix
Normal file
34
release.nix
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
let sources = import ./nix/sources.nix;
|
||||||
|
in { compiler ? "ghc8104", pkgs ? import sources.nixpkgs { } }:
|
||||||
|
|
||||||
|
let
|
||||||
|
inherit (pkgs.lib.trivial) flip pipe;
|
||||||
|
inherit (pkgs.haskell.lib) appendPatch appendConfigureFlags;
|
||||||
|
|
||||||
|
haskellPackages = pkgs.haskell.packages.${compiler}.override {
|
||||||
|
overrides = hpNew: hpOld: {
|
||||||
|
hakyll = pipe hpOld.hakyll [
|
||||||
|
(flip appendPatch ./hakyll.patch)
|
||||||
|
(flip appendConfigureFlags [ "-f" "watchServer" "-f" "previewServer" ])
|
||||||
|
];
|
||||||
|
|
||||||
|
skeleton-web = hpNew.callCabal2nix "skeleton-web" ./. { };
|
||||||
|
|
||||||
|
niv = import sources.niv { };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
project = haskellPackages.skeleton-web;
|
||||||
|
in {
|
||||||
|
project = project;
|
||||||
|
|
||||||
|
shell = haskellPackages.shellFor {
|
||||||
|
packages = p: with p; [ project ];
|
||||||
|
buildInputs = with haskellPackages; [
|
||||||
|
ghcid # GHCi based IDE
|
||||||
|
hlint # or ormolu
|
||||||
|
pkgs.niv # Nix dependency management
|
||||||
|
];
|
||||||
|
withHoogle = true;
|
||||||
|
};
|
||||||
|
}
|
20
site.hs
20
site.hs
|
@ -118,11 +118,11 @@ postsPageId n = fromFilePath $ if (n == 1) then "index.html" else show n ++ "/in
|
||||||
|
|
||||||
feedConfig :: FeedConfiguration
|
feedConfig :: FeedConfiguration
|
||||||
feedConfig = FeedConfiguration
|
feedConfig = FeedConfiguration
|
||||||
{ feedTitle = "JFDI Collective"
|
{ feedTitle = "Skeleton Site"
|
||||||
, feedDescription = "Just Effing Doing It"
|
, feedDescription = "you should set this feed description"
|
||||||
, feedAuthorName = "JFDI Collective"
|
, feedAuthorName = "set this name"
|
||||||
, feedAuthorEmail = "collective@jfdic.org"
|
, feedAuthorEmail = "collective@jfdic.org"
|
||||||
, feedRoot = "https://jfdic.org"
|
, feedRoot = "https://skeleton.jfdic.org"
|
||||||
}
|
}
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
@ -130,16 +130,16 @@ feedConfig = FeedConfiguration
|
||||||
siteCtx :: Context String
|
siteCtx :: Context String
|
||||||
siteCtx =
|
siteCtx =
|
||||||
baseCtx `mappend`
|
baseCtx `mappend`
|
||||||
constField "site_description" "JFDI Collective" `mappend`
|
constField "site_description" "Skeleton Site" `mappend`
|
||||||
constField "site-url" "https://jfdic.org" `mappend`
|
constField "site-url" "https://skeleton.jfdic.org" `mappend`
|
||||||
constField "tagline" "Just Effing Doing It" `mappend`
|
constField "tagline" "you should set this tag line" `mappend`
|
||||||
constField "site-title" "JFDI Collective" `mappend`
|
constField "site-title" "Skeleton Site" `mappend`
|
||||||
constField "copy-year" "2021" `mappend`
|
constField "copy-year" "2021" `mappend`
|
||||||
constField "github-repo" "https://source.jfdic.org/jfdic/jfdic-web" `mappend`
|
constField "github-repo" "https://source.jfdic.org/jfdic/hakyll-skeleton" `mappend`
|
||||||
defaultContext
|
defaultContext
|
||||||
|
|
||||||
baseCtx =
|
baseCtx =
|
||||||
constField "baseurl" "http://localhost:8000"
|
constField "baseurl" "https://skeleton.jfdic.org"
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
name: jfdic-web
|
name: skeleton-web
|
||||||
version: 0.1.0.0
|
version: 0.1.0.0
|
||||||
build-type: Simple
|
build-type: Simple
|
||||||
cabal-version: >= 1.10
|
cabal-version: >= 1.10
|
|
@ -13,6 +13,7 @@
|
||||||
<div class="masthead">
|
<div class="masthead">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h3 class="masthead-title">
|
<h3 class="masthead-title">
|
||||||
|
<img src=/images/hakyll-logo.svg" class=logo style="display: inline;"/>
|
||||||
<a href="$baseurl$" title="Home">$site-title$</a>
|
<a href="$baseurl$" title="Home">$site-title$</a>
|
||||||
<small>$tagline$</small>
|
<small>$tagline$</small>
|
||||||
</h3>
|
</h3>
|
||||||
|
@ -26,7 +27,7 @@
|
||||||
|
|
||||||
<label for="sidebar-checkbox" class="sidebar-toggle"></label>
|
<label for="sidebar-checkbox" class="sidebar-toggle"></label>
|
||||||
|
|
||||||
<script src='$baseurl$/public/js/script.js'></script>
|
<script src="/js/script.js"></script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
|
|
|
@ -20,9 +20,9 @@
|
||||||
$endif$
|
$endif$
|
||||||
$endif$
|
$endif$
|
||||||
|
|
||||||
<link rel="stylesheet" href="$baseurl$/css/base.css">
|
<link rel="stylesheet" href="/css/base.css">
|
||||||
<link rel="stylesheet" href="$baseurl$/css/syntax.css">
|
<link rel="stylesheet" href="/css/syntax.css">
|
||||||
<link rel="stylesheet" href="$baseurl$/css/jfdic.css">
|
<link rel="stylesheet" href="/css/skeleton.css">
|
||||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=PT+Serif:400,400italic,700%7CPT+Sans:400">
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=PT+Serif:400,400italic,700%7CPT+Sans:400">
|
||||||
|
|
||||||
<!---
|
<!---
|
||||||
|
|
|
@ -9,17 +9,17 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<nav class="sidebar-nav">
|
<nav class="sidebar-nav">
|
||||||
<a class="sidebar-nav-item$if(home)$ active$endif$" href="$baseurl$">Home</a>
|
<a class="sidebar-nav-item$if(home)$ active$endif$" href="/">Home</a>
|
||||||
|
|
||||||
<!--- The code below dynamically generates a sidebar nav of the files in the folder /pages -->
|
<!--- The code below dynamically generates a sidebar nav of the files in the folder /pages -->
|
||||||
|
|
||||||
$for(list_pages)$
|
$for(list_pages)$
|
||||||
$if(title)$
|
$if(title)$
|
||||||
<a class="sidebar-nav-item$if(eval(title))$ active$endif$" href="$baseurl$$node-url$">$title$</a>
|
<a class="sidebar-nav-item$if(eval(title))$ active$endif$" href="$node-url$">$title$</a>
|
||||||
$endif$
|
$endif$
|
||||||
$endfor$
|
$endfor$
|
||||||
|
|
||||||
<a class="sidebar-nav-item$if(archive)$ active$endif$" href="$baseurl$/archive.html">Archive</a>
|
<a class="sidebar-nav-item$if(archive)$ active$endif$" href="/archive.html">Archive</a>
|
||||||
|
|
||||||
<a class="sidebar-nav-item" href="$github-repo$">GitHub project</a>
|
<a class="sidebar-nav-item" href="$github-repo$">GitHub project</a>
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
© $copy-year$. All rights reserved.
|
© $copy-year$. All rights reserved.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<img src="$baseurl$/images/haskell-logo.png" class=logo style="display: inline;"/>
|
<img src="/images/haskell-logo.png" class=logo style="display: inline;"/>
|
||||||
Site created with
|
Site created with
|
||||||
<a href="https://jaspervdj.be/hakyll">Hakyll</a>.
|
<a href="https://jaspervdj.be/hakyll">Hakyll</a>.
|
||||||
</p>
|
</p>
|
||||||
|
|
Loading…
Reference in a new issue