aboutsummaryrefslogtreecommitdiffstats
path: root/posts/201501-publishing-with-pelican.rst
blob: bab3fd8a551f027e8efa4f55e0b36ae732de67c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
.. title: Publishing with Pelican
.. date: 2015-01-27 06:00 UTC+02:00
.. modified: 2015-01-26 21:30
.. tags: pelican, nginx, networksec, frqrec, social media, vim
.. slug: publishing-with-pelican
.. category: webdev
.. summary: Some links and information on publishing with Pelican
.. authors: David Runge

| I haven't done serious web development work in quite some time. There are reasons for that.
| Mostly because I have been busy being a |sys_admin| instead...
|
| A reason for now doing this kind of work for myself again, is my departure from a lot of social media websites like Facebook (no, no link here).
| The reasons for that are quite obvious, apart from the general evilness of large companies, agencies and governments alike (especially when looking at the developments in European and US-American politics in the past few months, or rather years).
|
| After some changes in my hosting plans (moving away from |hosteurope| to |nwsec|, but more on that soon), this also involved dividing private content from that of the association (|frqrec|) I am working with.
|
| Ultimately this led me to the decision to find a publishing tool that was not depending on a database setup (like |wordpress| is), but rather something text file based (also because I am a daily |vim| user).
| Say hello to |pelican|, a Python based static website generator!
| With Pelican one can write content in |markdown| or |restructuredtext| and have simple |pelican-themes|) and the site generator take care of the rest. Pretty awesome! A separate |makefile| (besides the easy possibility of local testing) makes it possible to push a new website version directly to the webserver or other destinations.
| Currently I've started work on some static pages and my own theme, cloned from the |notmyidea-theme|. Now my whole website can be conveniently developed in my own |website-git| repository.
|
| Although for newbie users a login backend for administering a website (like the one Wordpress offers) is a very easy solution, it also introduces security issues (bad passwords, hacked computers & malware, PHP bugs, bad content, bad plugins, etc.).
| I'm glad I've found a very lightweight and fast solution in Pelican, that works well with |nginx|.


.. |sys_admin| raw:: html

  <a href="http://www.math.tu-berlin.de/iuk/lehrrechnerbereich" target="_blank">sys admin</a>

.. |hosteurope| raw:: html

  <a href="https://www.hosteurope.de/" target="_blank">Hosteurope</a>

.. |nwsec| raw:: html

  <a href="https://networksec.de" target="_blank">NetworkSEC</a>

.. |frqrec| raw:: html

  <a href="http://frqrec.de" target="_blank">Freakquenzy Records</a>

.. |wordpress| raw:: html

  <a href="http://www.wordpress.org/" target="_blank">Wordpress</a>

.. |vim| raw:: html

  <a href="http://www.vim.org/" target="_blank">Vim</a>

.. |pelican| raw:: html

  <a href="http://blog.getpelican.com/" target="_blank">Pelican</a>

.. |markdown| raw:: html

  <a href="https://en.wikipedia.org/wiki/Markdown" target="_blank">Markdown</a>

.. |restructuredtext| raw:: html

  <a href="https://en.wikipedia.org/wiki/ReStructuredText" target="_blank">ReStructuredText</a>

.. |pelican-themes| raw:: html

  <a href="http://pelican-themes-gallery.place.org/" target="_blank">themes</a>

.. |makefile| raw:: html

  <a href="https://en.wikipedia.org/wiki/Makefile" target="_blank">Makefile</a>

.. |notmyidea-theme| raw:: html

  <a href="https://github.com/getpelican/pelican-themes/tree/master/notmyidea-cms" target="_blank">notmyidea cms theme</a>

.. |website-git| raw:: html

  <a href="https://git.sleepmap.de/websites/sleepmap.git/" target="_blank">git</a>

.. |nginx| raw:: html

  <a href="https://nginx.org/" target="_blank">nginx</a>