Browse Source

Switch to nikola

Piotr Orzechowski 1 year ago
parent
commit
ecc831672a

+ 3
- 1
.gitignore View File

@@ -1,3 +1,5 @@
1 1
 .*
2 2
 *~
3
-dist/*
3
+__pycache__
4
+cache
5
+output

+ 11
- 14
Makefile View File

@@ -1,28 +1,25 @@
1
-src = src
2
-dst = dist
3
-css = ${dst}/static/css
1
+dst = output
2
+css = ${dst}/assets/css
3
+js = ${dst}/assets/js
4 4
 
5 5
 .PHONY: build
6 6
 build:
7
-	DEBUG=false pipenv run python ${src}/site.py build
7
+	pipenv run nikola build --strict -n 2
8 8
 
9
-	yui-compressor -o ${css}/base.css ${css}/base.css
10
-	yui-compressor -o ${css}/default.css ${css}/default.css
11
-	yui-compressor -o ${css}/error.css ${css}/error.css
12
-
13
-	cat ${css}/base.css ${css}/default.css > ${css}/tmp.css
14
-	mv ${css}/tmp.css ${css}/default.css
15
-	cat ${css}/base.css ${css}/error.css > ${css}/tmp.css
16
-	mv ${css}/tmp.css ${css}/error.css
17
-	rm ${css}/base.css
9
+	cd ${css} && yui-compressor -o '.css$$:.css' all.css all-nocdn.css
10
+	cd ${js} && yui-compressor -o '.js$$:.js' all.js all-nocdn.js
18 11
 
19 12
 .PHONY: rebuild
20 13
 rebuild: clean build
21 14
 
22 15
 .PHONY: clean
23 16
 clean:
17
+	pipenv run nikola clean
18
+
19
+.PHONY: distclean
20
+distclean:
24 21
 	rm -rf ${dst}
25 22
 
26 23
 .PHONY: run
27 24
 run:
28
-	DEBUG=true pipenv run python ${src}/site.py run
25
+	pipenv run nikola serve -b

+ 4
- 5
Pipfile View File

@@ -1,15 +1,14 @@
1 1
 [[source]]
2 2
 
3
+name = "pypi"
3 4
 verify_ssl = true
4 5
 url = "https://pypi.python.org/simple"
5
-name = "pypi"
6 6
 
7 7
 
8
-[packages]
8
+[dev-packages]
9 9
 
10
+nikola = {extras = ["extras"]}
10 11
 
11 12
 
12
-[dev-packages]
13
+[packages]
13 14
 
14
-frozen-flask = "*"
15
-flask-flatpages = "*"

+ 538
- 26
Pipfile.lock View File

@@ -1,7 +1,7 @@
1 1
 {
2 2
     "_meta": {
3 3
         "hash": {
4
-            "sha256": "2203d79b296329a1e9151ce4adce0e5b791db798ae48882defa155aa017d2acf"
4
+            "sha256": "41f102711d6daebb2a235a9cae84f86cd29316a0aa68749f279c9eadb181b51d"
5 5
         },
6 6
         "host-environment-markers": {
7 7
             "implementation_name": "cpython",
@@ -9,9 +9,9 @@
9 9
             "os_name": "posix",
10 10
             "platform_machine": "x86_64",
11 11
             "platform_python_implementation": "CPython",
12
-            "platform_release": "4.4.0-112-generic",
12
+            "platform_release": "4.4.0-116-generic",
13 13
             "platform_system": "Linux",
14
-            "platform_version": "#135-Ubuntu SMP Fri Jan 19 11:48:36 UTC 2018",
14
+            "platform_version": "#140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018",
15 15
             "python_full_version": "3.5.2",
16 16
             "python_version": "3.5",
17 17
             "sys_platform": "linux"
@@ -28,39 +28,131 @@
28 28
     },
29 29
     "default": {},
30 30
     "develop": {
31
-        "click": {
31
+        "argh": {
32 32
             "hashes": [
33
-                "sha256:29f99fc6125fbc931b758dc053b3114e55c77a6e4c6c3a2674a2dc986016381d",
34
-                "sha256:f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b"
33
+                "sha256:a9b3aaa1904eeb78e32394cd46c6f37ac0fb4af6dc488daa58971bdc7d7fcaf3",
34
+                "sha256:e9535b8c84dc9571a48999094fda7f33e63c3f1b74f3e5f3ac0105a58405bb65"
35 35
             ],
36
-            "version": "==6.7"
36
+            "version": "==0.26.2"
37 37
         },
38
-        "flask": {
38
+        "bleach": {
39 39
             "hashes": [
40
-                "sha256:0749df235e3ff61ac108f69ac178c9770caeaccad2509cb762ce1f65570a8856",
41
-                "sha256:49f44461237b69ecd901cc7ce66feea0319b9158743dd27a2899962ab214dac1"
40
+                "sha256:cf567e7ed30ea5e05b31231d88ae170af1c5544758b9d7bebbc20590b7c30b1e",
41
+                "sha256:38fc8cbebea4e787d8db55d6f324820c7f74362b70db9142c1ac7920452d1a19"
42 42
             ],
43
-            "version": "==0.12.2"
43
+            "version": "==2.1.2"
44 44
         },
45
-        "flask-flatpages": {
45
+        "blinker": {
46 46
             "hashes": [
47
-                "sha256:8a35eaf8b3ccb111a3d634e64f56853e22d2d8017928497af323df6557ad142a",
48
-                "sha256:b52d502579a0903c8660816a77c17f61f5cb526b5091fbe910a2ee17d2063bf2"
47
+                "sha256:471aee25f3992bd325afa3772f1063dbdbbca947a041b8b89466dc00d606f8b6"
49 48
             ],
50
-            "version": "==0.6"
49
+            "version": "==1.4"
51 50
         },
52
-        "frozen-flask": {
51
+        "certifi": {
53 52
             "hashes": [
54
-                "sha256:0a7a71334210ce84f8cbd1dc23c8b265d3e21748805c09c77d0e6fbcc4faab14",
55
-                "sha256:83858d6ed8b9d3fa7fc9523e415e65fb86b99352798d7695f63cffbd59a56269"
53
+                "sha256:14131608ad2fd56836d33a71ee60fa1c82bc9d2c8d98b7bdbc631fe1b3cd1296",
54
+                "sha256:edbc3f203427eef571f79a7692bb160a2b0f7ccaa31953e99bd17e307cf63f7d"
56 55
             ],
57
-            "version": "==0.15"
56
+            "version": "==2018.1.18"
58 57
         },
59
-        "itsdangerous": {
58
+        "chardet": {
60 59
             "hashes": [
61
-                "sha256:cbb3fcf8d3e33df861709ecaf89d9e6629cff0a217bc2848f1b41cd30d360519"
60
+                "sha256:fc323ffcaeaed0e0a02bf4d117757b98aed530d9ed4531e3e15460124c106691",
61
+                "sha256:84ab92ed1c4d4f16916e05906b6b75a6c0fb5db821cc65e70cbd64a3e2a5eaae"
62 62
             ],
63
-            "version": "==0.24"
63
+            "version": "==3.0.4"
64
+        },
65
+        "cloudpickle": {
66
+            "hashes": [
67
+                "sha256:604c1cb39c2043ba44f017444dd89b7f82541701dfa8a64f5ae72e6346755c0b",
68
+                "sha256:b0e63dd89ed5285171a570186751bc9b84493675e99e12789e9a5dc5490ef554"
69
+            ],
70
+            "version": "==0.5.2"
71
+        },
72
+        "decorator": {
73
+            "hashes": [
74
+                "sha256:94d1d8905f5010d74bbbd86c30471255661a14187c45f8d7f3e5aa8540fdb2e5",
75
+                "sha256:7d46dd9f3ea1cf5f06ee0e4e1277ae618cf48dfb10ada7c8427cd46c42702a0e"
76
+            ],
77
+            "version": "==4.2.1"
78
+        },
79
+        "docutils": {
80
+            "hashes": [
81
+                "sha256:7a4bd47eaf6596e1295ecb11361139febe29b084a87bf005bf899f9a42edc3c6",
82
+                "sha256:02aec4bd92ab067f6ff27a38a38a41173bf01bed8f89157768c1573f53e474a6",
83
+                "sha256:51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274"
84
+            ],
85
+            "version": "==0.14"
86
+        },
87
+        "doit": {
88
+            "hashes": [
89
+                "sha256:2988c8450fb3fb281877eb9a16860e1a8873c6ee0bb75ef0d78bb03a18d59ab9"
90
+            ],
91
+            "markers": "python_version >= '3.4'",
92
+            "version": "==0.30.3"
93
+        },
94
+        "entrypoints": {
95
+            "hashes": [
96
+                "sha256:10ad569bb245e7e2ba425285b9fa3e8178a0dc92fc53b1e1c553805e15a8825b",
97
+                "sha256:d2d587dde06f99545fb13a383d2cd336a8ff1f359c5839ce3a64c917d10c029f"
98
+            ],
99
+            "version": "==0.2.3"
100
+        },
101
+        "ghp-import2": {
102
+            "hashes": [
103
+                "sha256:1172fa772abc3dba7f3ff902e7b202eb8ebaf4a463e9d63b8e90cc9edd57330e",
104
+                "sha256:fdf95846b26c5b42964b3146ffc4f22107bbba7baa42659f0f22bfe08ec96d7f"
105
+            ],
106
+            "version": "==1.0.1"
107
+        },
108
+        "html5lib": {
109
+            "hashes": [
110
+                "sha256:20b159aa3badc9d5ee8f5c647e5efd02ed2a66ab8d354930bd9ff139fc1dc0a3",
111
+                "sha256:66cb0dcfdbbc4f9c3ba1a63fdb511ffdbd4f513b2b6d81b80cd26ce6b3fb3736"
112
+            ],
113
+            "version": "==1.0.1"
114
+        },
115
+        "husl": {
116
+            "hashes": [
117
+                "sha256:8a1d622565a01ca553a87f52de97244f33d04c20d9e4d0dac76ddfeccb6850b9"
118
+            ],
119
+            "version": "==4.0.3"
120
+        },
121
+        "idna": {
122
+            "hashes": [
123
+                "sha256:8c7309c718f94b3a625cb648ace320157ad16ff131ae0af362c9f21b80ef6ec4",
124
+                "sha256:2c6a5de3089009e3da7c5dde64a141dbc8551d5b7f6cf4ed7c2568d0cc520a8f"
125
+            ],
126
+            "version": "==2.6"
127
+        },
128
+        "ipykernel": {
129
+            "hashes": [
130
+                "sha256:395f020610e33ffa0b0c9c0cd1a1d927d51ab9aa9f30a7ae36bb0c908a33e89c",
131
+                "sha256:935941dba29d856eee34b8b5261d971bd5012547239ed73ddfff099143748c37",
132
+                "sha256:c091449dd0fad7710ddd9c4a06e8b9e15277da306590bc07a3a1afa6b4453c8f"
133
+            ],
134
+            "version": "==4.8.2"
135
+        },
136
+        "ipython": {
137
+            "hashes": [
138
+                "sha256:fcc6d46f08c3c4de7b15ae1c426e15be1b7932bcda9d83ce1a4304e8c1129df3",
139
+                "sha256:51c158a6c8b899898d1c91c6b51a34110196815cc905f9be0fa5878e19355608"
140
+            ],
141
+            "version": "==6.2.1"
142
+        },
143
+        "ipython-genutils": {
144
+            "hashes": [
145
+                "sha256:72dd37233799e619666c9f639a9da83c34013a73e8bbc79a7a6348d93c61fab8",
146
+                "sha256:eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8"
147
+            ],
148
+            "version": "==0.2.0"
149
+        },
150
+        "jedi": {
151
+            "hashes": [
152
+                "sha256:d795f2c2e659f5ea39a839e5230d70a0b045d0daee7ca2403568d8f348d0ad89",
153
+                "sha256:d6e799d04d1ade9459ed0f20de47c32f2285438956a677d083d3c98def59fa97"
154
+            ],
155
+            "version": "==0.11.1"
64 156
         },
65 157
         "jinja2": {
66 158
             "hashes": [
@@ -69,6 +161,78 @@
69 161
             ],
70 162
             "version": "==2.10"
71 163
         },
164
+        "jsonschema": {
165
+            "hashes": [
166
+                "sha256:000e68abd33c972a5248544925a0cae7d1125f9bf6c58280d37546b946769a08",
167
+                "sha256:6ff5f3180870836cae40f06fa10419f557208175f13ad7bc26caa77beb1f6e02"
168
+            ],
169
+            "version": "==2.6.0"
170
+        },
171
+        "jupyter-client": {
172
+            "hashes": [
173
+                "sha256:e144e7ba1670424b1670a6325b00dae7f7b043f99486d2f77bdbc14cc90f2c2f",
174
+                "sha256:83d5e23132f0d8f79ccd3939f53fb9fa97f88a896a85114dc48d0e86909b06c4"
175
+            ],
176
+            "version": "==5.2.2"
177
+        },
178
+        "jupyter-core": {
179
+            "hashes": [
180
+                "sha256:927d713ffa616ea11972534411544589976b2493fc7e09ad946e010aa7eb9970",
181
+                "sha256:ba70754aa680300306c699790128f6fbd8c306ee5927976cbe48adacf240c0b7"
182
+            ],
183
+            "version": "==4.4.0"
184
+        },
185
+        "logbook": {
186
+            "hashes": [
187
+                "sha256:fe205ca51aa004ee83a0218e40a214308b6723b2186c7f04f134f94410286aae",
188
+                "sha256:645e50279e0e8121a5f622cf640a9d83fc0e0f1b78b29e01cf5e13e487b9f6fb",
189
+                "sha256:969161f46d5562e041f4d01cdf413114fe8012038e7d69052dff6b1f0ba2803d",
190
+                "sha256:bc345cef7b58f745da01feee461f6941d08260026b41586a77f5112c12355488",
191
+                "sha256:7ef1857de50bb6e70b1e4ef034f1c032d37577ce9eb70e164974a0ae8177b537",
192
+                "sha256:6b6da02a51cace9e851b05789cc841d39dec33c8b083ce727bf061fac1611c06",
193
+                "sha256:ac201ccdb5b37170602a26d8a47df735e8904f11d51a73fa84f09a3014fc6001"
194
+            ],
195
+            "version": "==1.2.1"
196
+        },
197
+        "lxml": {
198
+            "hashes": [
199
+                "sha256:41f59cbdab232f11680d5d4dec9f2e6782fd24d78e37ee833447702e34e675f4",
200
+                "sha256:e7e41d383f19bab9d57f5f3b18d158655bcd682e7e723f441b9e183e1e35a6b5",
201
+                "sha256:155521c337acecf8202091cff85bb9f709f238130ebadf04280fb1db11f5ad8b",
202
+                "sha256:d2c985d2460b81c6ca5feb8b86f1bc594ad59405d0bdf68626b85852b701553c",
203
+                "sha256:950e63387514aa1b881eba5ac6cb2ec51a118b3dafe99dd80ca19d8fb0142f30",
204
+                "sha256:470d7ce41e8047208ba1a376560bad17f1468df1f3097bc83902b26cfafdbb0c",
205
+                "sha256:e608839a5ee2180164424ccf279c8e2d9bbe8816d002c58fd97d6b621ba4aa94",
206
+                "sha256:87a66bcadac270fc010cb029022a93fc722bf1204a8b03e782d4c790f0edf7ca",
207
+                "sha256:2dedfeeecc2d5a939cf622602f5a1ce443ca82407f386880f739f1a9f08053ad",
208
+                "sha256:ba05732e4bcf59e948f61588851dcf620fd60d5bbd9d704203e5f59bbaa60219",
209
+                "sha256:2190266059fec3c5a55f9d6c30532c64c6d414d3228909c0af573fe4907e78d1",
210
+                "sha256:dd291debfaa535d9cb6cee8d7aca2328775e037d02d13f1634e57f49bc302cc4",
211
+                "sha256:29a36e354c39b2e24bc4ee103de53417ebb80f976a6ab9e8d093d559e2ac03e1",
212
+                "sha256:e37427d5a27eefbcfc48847e0b37f348113fac7280bc857421db39ffc6372570",
213
+                "sha256:b106d4d2383382399ad82108fd187e92f40b1c90f55c2d36bbcb1c44bcf940fc",
214
+                "sha256:0ee07da52d240f1dc3c83eef5cd5f1b7f018226c1121f2a54d446645779a6d17",
215
+                "sha256:3b33549fb8f91b38a7500078242b03cca513f3412a2cdae722e89bf83f95971d",
216
+                "sha256:4c12e90886d9c53ab434c8d0cebea122321cce19614c3c6b6d1a7700d7cc6212",
217
+                "sha256:79322000279cda10b53c374d53ca632ead3bc51c6aebf8e62c8fa93a4d08b750",
218
+                "sha256:6cba398eb37e0631e60e0e080c101cfe91769b2c8267105b64b4625e2581ea21",
219
+                "sha256:49a655956f8de69e1258bc0fcfc43eb3bd1e038655784d77d1869b4b81444e37",
220
+                "sha256:af8a5373241d09b8fc53e0490e1719ce5dc90a21b19db89b6596c1adcdd52270",
221
+                "sha256:e6b6698415c7e8d227a47a3b1038e1b37c2b438a1b48c2db7ad9e74ddbcd1149",
222
+                "sha256:155c916cf2645b4a8f2bd5d09065e92d1b67b8d464bdc001e0b524af84bedf6f",
223
+                "sha256:fa7320679ced5e25b20203d157280680fc84eb783b6cc650cb0c98e1858b7dd3",
224
+                "sha256:4187c4b0cefc3353181db048c51f42c489d9ac51e40b86c4851dc0671372971d",
225
+                "sha256:d5d29663e979e83b3fc361e97200f959cddb3a14797391d15273d84a5a8ae44b",
226
+                "sha256:940caef1ec7c78e0c34b0f6b94fe42d0f2022915ffc78643d28538a5cfd0f40e"
227
+            ],
228
+            "version": "==4.1.1"
229
+        },
230
+        "mako": {
231
+            "hashes": [
232
+                "sha256:4e02fde57bd4abb5ec400181e4c314f56ac3e49ba4fb8b0d50bba18cb27d25ae"
233
+            ],
234
+            "version": "==1.0.7"
235
+        },
72 236
         "markdown": {
73 237
             "hashes": [
74 238
                 "sha256:9ba587db9daee7ec761cfc656272be6aabe2ed300fece21208e4aab2e457bc8f",
@@ -82,6 +246,203 @@
82 246
             ],
83 247
             "version": "==1.0"
84 248
         },
249
+        "micawber": {
250
+            "hashes": [
251
+                "sha256:d61b31a06c28f3653d58d997e63ac3a6a302807bb98198618e9b90e09034d85e"
252
+            ],
253
+            "version": "==0.3.5"
254
+        },
255
+        "mistune": {
256
+            "hashes": [
257
+                "sha256:b4c512ce2fc99e5a62eb95a4aba4b73e5f90264115c40b70a21e1f7d4e0eac91",
258
+                "sha256:bc10c33bfdcaa4e749b779f62f60d6e12f8215c46a292d05e486b869ae306619"
259
+            ],
260
+            "version": "==0.8.3"
261
+        },
262
+        "natsort": {
263
+            "hashes": [
264
+                "sha256:a9156f61336a8d743f67a8c9f336b1287529f67a07fe6001c7d4b5673a42308e",
265
+                "sha256:c960082d2145b04723041c4b85092546560538e29664dd197a1344d5b090bc91"
266
+            ],
267
+            "version": "==5.2.0"
268
+        },
269
+        "nbconvert": {
270
+            "hashes": [
271
+                "sha256:260d390b989a647575b8ecae2cd06a9eaead10d396733d6e50185d5ebd08996e",
272
+                "sha256:12b1a4671d4463ab73af6e4cbcc965b62254e05d182cd54995dda0d0ef9e2db9"
273
+            ],
274
+            "version": "==5.3.1"
275
+        },
276
+        "nbformat": {
277
+            "hashes": [
278
+                "sha256:b9a0dbdbd45bb034f4f8893cafd6f652ea08c8c1674ba83f2dc55d3955743b0b",
279
+                "sha256:f7494ef0df60766b7cabe0a3651556345a963b74dbc16bc7c18479041170d402"
280
+            ],
281
+            "version": "==4.4.0"
282
+        },
283
+        "nikola": {
284
+            "hashes": [
285
+                "sha256:3b61f785c973637e9a5439ca0b25ece9a7f9066252b2aa2c8f2010c170a4507d",
286
+                "sha256:10d95b3af84e61496ef729665eafa2235fd0fd4cc6c57644dd0f2c19a968dd0f"
287
+            ],
288
+            "version": "==7.8.11"
289
+        },
290
+        "notebook": {
291
+            "hashes": [
292
+                "sha256:9063a0daaac7816e1b7fc7dfcf69ee173904dcf3b460b45f5b6df06818969bd6",
293
+                "sha256:dd431fad9bdd25aa9ff8265da096ef770475e21bf1d327982611a7de5cd904ca"
294
+            ],
295
+            "version": "==5.4.0"
296
+        },
297
+        "pandocfilters": {
298
+            "hashes": [
299
+                "sha256:b3dd70e169bb5449e6bc6ff96aea89c5eea8c5f6ab5e207fc2f521a2cf4a0da9"
300
+            ],
301
+            "version": "==1.4.2"
302
+        },
303
+        "parso": {
304
+            "hashes": [
305
+                "sha256:a7bb86fe0844304869d1c08e8bd0e52be931228483025c422917411ab82d628a",
306
+                "sha256:5815f3fe254e5665f3c5d6f54f086c2502035cb631a91341591b5a564203cffb"
307
+            ],
308
+            "version": "==0.1.1"
309
+        },
310
+        "pathtools": {
311
+            "hashes": [
312
+                "sha256:7c35c5421a39bb82e58018febd90e3b6e5db34c5443aaaf742b3f33d4655f1c0"
313
+            ],
314
+            "version": "==0.1.2"
315
+        },
316
+        "pexpect": {
317
+            "hashes": [
318
+                "sha256:6ff881b07aff0cb8ec02055670443f784434395f90c3285d2ae470f921ade52a",
319
+                "sha256:67b85a1565968e3d5b5e7c9283caddc90c3947a2625bed1905be27bd5a03e47d"
320
+            ],
321
+            "markers": "sys_platform != 'win32'",
322
+            "version": "==4.4.0"
323
+        },
324
+        "phpserialize": {
325
+            "hashes": [
326
+                "sha256:bf672d312d203d09a84c26366fab8f438a3ffb355c407e69974b7ef2d39a0fa7"
327
+            ],
328
+            "version": "==1.3"
329
+        },
330
+        "pickleshare": {
331
+            "hashes": [
332
+                "sha256:c9a2541f25aeabc070f12f452e1f2a8eae2abd51e1cd19e8430402bdf4c1d8b5",
333
+                "sha256:84a9257227dfdd6fe1b4be1319096c20eb85ff1e82c7932f36efccfe1b09737b"
334
+            ],
335
+            "version": "==0.7.4"
336
+        },
337
+        "piexif": {
338
+            "hashes": [
339
+                "sha256:47befcbc9a6ee171a0b8c35b981eb02df2120427eb19418d257450b055c622ac",
340
+                "sha256:1d3dde03bd6298393645bc11d585b67a6ea98fd7e9e1aded6d5d6ec3e4cfbdda"
341
+            ],
342
+            "version": "==1.0.13"
343
+        },
344
+        "pillow": {
345
+            "hashes": [
346
+                "sha256:718ec7a122b28d64afc5fbc3a9b99bb0545ef511373cac06fe7624520e82cb20",
347
+                "sha256:801cca8923508311bf5d6d0f7da5362552e8208ebd8ec0d7b9f2cd2ff5705734",
348
+                "sha256:43334f9581cd067945b8898cef9eb5714ee4883f8de0304c011f1dbdb1d4e2aa",
349
+                "sha256:153ec6f18f7b61641e0e6e502acfaf4a06c9aba2ea11c0b4b3578ea9f13a4a4a",
350
+                "sha256:25193f934d37d836a6b1f4c062ce574a96cbca7c6d9dc8ddfbbac7f9c54deaa4",
351
+                "sha256:b85f703c2ffe539313e39ce0676bed0f355cec45a16e58c9ab7417445843047c",
352
+                "sha256:8580fc58074a16b749905b26cf8363f7b628dd167ba0130f5382cdc91c86b509",
353
+                "sha256:2fcde9954c8882d1c7f93bb828caa34a4c5e3ee69dbc7895dc8652ad972b455a",
354
+                "sha256:1a5b93084e01328a1cb1ecdad99d11d75e881e89a95f88d85b523646553b36c2",
355
+                "sha256:b2240f298482f823576f397bb9f32ea913ad9456c526e141bc6f0a022b37a3e8",
356
+                "sha256:b1d33c63a55d0d85df0ad02b2c16158fb4d8153afa7b908f1a67330fac694cd6",
357
+                "sha256:6977cf073d83358b34f93abf5c1f1193b88675fe0e4441e0e28318bc3dcba7a0",
358
+                "sha256:1912b7230459fd53682dae32b83cbd8e5d642ba36d4be18566f00a9c063aa13d",
359
+                "sha256:4bd4a71501b6d51db4abc07e1f43f5a6fed0a1a9583cca0b401d6af50284b0db",
360
+                "sha256:0013f590a8f260df60bcfd65db19d18efc04e7f046c3c82a40e2e2b3292a937c",
361
+                "sha256:a224651a81e45ef4f1d0164e256c5f6b4abb49f2ae8f22ba2f3a9d0ff338e608",
362
+                "sha256:c793dfaa130847ccff958492b76ae8b9304e60b8a79a92962cb19e368276a22b",
363
+                "sha256:0b899ee80920bb533f26581af9b4660bc12aff4562555afe74e429101ebf3c94",
364
+                "sha256:9525cd680a6f9e80c6c0af03cf973e6505c59f60b4745f682cd1a449e54b31bb",
365
+                "sha256:35f7d998b8e82fb3fb51ff88b30485eb81cd7dd56ec7e1a8deba23eb88532d44",
366
+                "sha256:5b0d657460d9f3615876fec6306e97ca15a471f6169b622d76a47e270998acf1",
367
+                "sha256:ddd16ab250b4fc97db1c47407e78c25216a75c29d29d10ad37e51b7a2ec7b2c3",
368
+                "sha256:b9f63451084a718eccdeb1e382768c94647915653af4d6019f64560d9e98642b",
369
+                "sha256:a370d1c570f1d72e877099651e752332444b1c5009381f043c9da5fd47f3ebae",
370
+                "sha256:dc4b018d5c9b636f7546583c5591b9ea00c328c3e5871992ef5b95bac353f097",
371
+                "sha256:e126ff4fed71e78333840c07279e1617f63cfca76d63ad5b27d65a7277206a3d",
372
+                "sha256:fcf64c91fd44485100a2965d23bb0e227d093e91f7e776c5ca3b32574766eb56",
373
+                "sha256:2c042352b430d678db50c78c5214e19638eff8b688941271da2de21fd298dfe5",
374
+                "sha256:17fe25efc785194d48c38fad85dce470013ba19d2fb66639e149f14bccf1327f",
375
+                "sha256:2e818dbe445e86fc6c266973fe540c35125c42eb2cf13a6095e9adaa89c0deb5",
376
+                "sha256:135e9aa65150c53f7db85bf2bebb8a0e1a48ea850e80cf66e16dd04fa09d309c",
377
+                "sha256:7dfbefdb3fb911ca9faed307bf309861e9995e36cca6b761c7ba6d9b77a9744a",
378
+                "sha256:12f29d6c23424f704c66b5b68c02fe0b571504459605cfe36ab8158359b0e1bb",
379
+                "sha256:f8d49be8c282df8d2e1ab6ab53ab8abd859b1fa6fed384457ee85c9eff64ef97",
380
+                "sha256:82b172e3264e62372c01b5b009b5b1a02fbb9276cbe5cc57ab00a6d6e5ed9a18",
381
+                "sha256:57aa6198ba8acba1313c3b743e267d821a60cac77e6026caf0b55ca58d3d23be",
382
+                "sha256:d60c1625b108432ace8b1fa1a584017e5efa73f107d0f493c7f39c79bebf1d41",
383
+                "sha256:82d1ff571489765df2816785d532e243bde213752156c227fca595723ec5ff42",
384
+                "sha256:37cc0339abfa9e295c75d9a7f227d35cb44716feb95057f9449c4a9e9a17daf7",
385
+                "sha256:931030d1d6282b7900e6b0a7ff9ecdb503b5e1e6781800dab2b71a9f39405bff",
386
+                "sha256:5cd36804f9f06a914a883fe682df5711d16d7b4f44d43189c5f013e7cd91e149"
387
+            ],
388
+            "version": "==5.0.0"
389
+        },
390
+        "prompt-toolkit": {
391
+            "hashes": [
392
+                "sha256:3f473ae040ddaa52b52f97f6b4a493cfa9f5920c255a12dc56a7d34397a398a4",
393
+                "sha256:1df952620eccb399c53ebb359cc7d9a8d3a9538cb34c5a1344bdbeb29fbcc381",
394
+                "sha256:858588f1983ca497f1cf4ffde01d978a3ea02b01c8a26a8bbc5cd2e66d816917"
395
+            ],
396
+            "version": "==1.0.15"
397
+        },
398
+        "ptyprocess": {
399
+            "hashes": [
400
+                "sha256:e8c43b5eee76b2083a9badde89fd1bbce6c8942d1045146e100b7b5e014f4f1a",
401
+                "sha256:e64193f0047ad603b71f202332ab5527c5e52aa7c8b609704fc28c0dc20c4365"
402
+            ],
403
+            "markers": "os_name != 'nt'",
404
+            "version": "==0.5.2"
405
+        },
406
+        "pygal": {
407
+            "hashes": [
408
+                "sha256:27abab93cbc31e21f3c6bdecc05bda6cd3570cbdbd8297b7caa6904051b50d72",
409
+                "sha256:9204f05380b02a8a32f9bf99d310b51aa2a932cba5b369f7a4dc3705f0a4ce83"
410
+            ],
411
+            "version": "==2.4.0"
412
+        },
413
+        "pygments": {
414
+            "hashes": [
415
+                "sha256:78f3f434bcc5d6ee09020f92ba487f95ba50f1e3ef83ae96b9d5ffa1bab25c5d",
416
+                "sha256:dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc"
417
+            ],
418
+            "version": "==2.2.0"
419
+        },
420
+        "pyinotify": {
421
+            "hashes": [
422
+                "sha256:9c998a5d7606ca835065cdabc013ae6c66eb9ea76a00a1e3bc6e0cfe2b4f71f4"
423
+            ],
424
+            "version": "==0.9.6"
425
+        },
426
+        "pyphen": {
427
+            "hashes": [
428
+                "sha256:3ad2ae9b5a077c234cdc18329e7a4aad58c0d1bf0ab0ddd2be938a4292b3ade9",
429
+                "sha256:abfa9a0ab055341f6e250c1a6bef395c3a06f0e4cba216eeef37f617b32c0bd7"
430
+            ],
431
+            "version": "==0.9.4"
432
+        },
433
+        "pyrss2gen": {
434
+            "hashes": [
435
+                "sha256:7960aed7e998d2482bf58716c316509786f596426f879b05f8d84e98b82c6ee7"
436
+            ],
437
+            "version": "==1.1"
438
+        },
439
+        "python-dateutil": {
440
+            "hashes": [
441
+                "sha256:95511bae634d69bc7329ba55e646499a842bc4ec342ad54a8cdb65645a0aad3c",
442
+                "sha256:891c38b2a02f5bb1be3e4793866c8df49c7d19baabf9c1bad62547e0b4866aca"
443
+            ],
444
+            "version": "==2.6.1"
445
+        },
85 446
         "pyyaml": {
86 447
             "hashes": [
87 448
                 "sha256:3262c96a1ca437e7e4763e2843746588a965426550f3797a79fca9c6199c431f",
@@ -101,12 +462,163 @@
101 462
             ],
102 463
             "version": "==3.12"
103 464
         },
104
-        "werkzeug": {
465
+        "pyzmq": {
466
+            "hashes": [
467
+                "sha256:2fb4d745ffe0a65ebf8fd29df093bb5c0ac96a506cb05b9a7b7c94b2524ae7f6",
468
+                "sha256:b89268020a843d4c3cc04180577ec061fe96d35f267b0b672cb006e4d70560da",
469
+                "sha256:d51eb3902d27d691483243707bfa67972167a70269bbbc172b74eeac4f780a1d",
470
+                "sha256:e5578ae84bb94e97adadfcb00106a1cb161cb8017f89b01f6c3737f356257811",
471
+                "sha256:4193cc666591495ab7fe8d24fa8374a35f9775f16dc7c46e03615559e1fc1855",
472
+                "sha256:b328c538061757f627d32f7f8885c16f1d2f59f5374e057822f3c8e6cd94c41b",
473
+                "sha256:18de8a02768b1c0b3495ac635b24bd902fafc08befb70a6e68c4d343ccbd6cbd",
474
+                "sha256:fb983aec4bddee3680a0b7395f99e4595d70d81841370da736c5dc642bad4cd2",
475
+                "sha256:ad5a8b19b6671b52d30ccfc3a0f4c600e49c4e2dcc88caf4106ed5958dec8d5e",
476
+                "sha256:767e1d0b1f7fff1950127abc08c5a5af2754987bc6480c6d641bed6971278a7a",
477
+                "sha256:c30d27c9b35285597b8ef3019f97b9b98457b053f65dcc87a90dfdd4db09ca78",
478
+                "sha256:bdb12b485b3440b5193cd337d27cc126cdfc54ea9f38df237e1ead6216435cbe",
479
+                "sha256:ba0b43aebf856e5e249250d74c1232d6600b6859328920d12e2ba72a565ab1b1",
480
+                "sha256:630fb21f7474eb9e409a1ad476bf1ec489a69eb021172d422f2485cc3a44cd79",
481
+                "sha256:6c3632d2c17cf03ce728ffaa328d45bb053623b3a0aa9747adcde81778d5a4d5",
482
+                "sha256:538dfdd9542cf9ff37cd958da03b58d56b53b90800159ea07adc51a8ec7ffcb8",
483
+                "sha256:613ac1fc4591b1c6a0a52ce3ed17dbffd6a17e985df504e8b4cdb987f97285b1",
484
+                "sha256:a0ecf4c3eccd92f030a4e3e334b9da6fa3ee86be00249343c74e476d70567d0f",
485
+                "sha256:863ec1bfa52da6eaa5c4aa59143eeaeb4ef7a076862407a548ec645f25e6d6df",
486
+                "sha256:f35b4cdeffff79357a9d929daa2a8620fb362b2cbeebdc5dd2cf9fcd27c44821",
487
+                "sha256:445fed4d71ac48da258ba38f2e29c88c5091124212a4004a0a6a42e6586a7de1",
488
+                "sha256:b31f2b50ad2920f21b904f5edf66bee324e42bb978df1407ecf381b210d4678e",
489
+                "sha256:0145ae59139b41f65e047a3a9ed11bbc36e37d5e96c64382fcdff911c4d8c3f0"
490
+            ],
491
+            "version": "==17.0.0"
492
+        },
493
+        "requests": {
494
+            "hashes": [
495
+                "sha256:6a1b267aa90cac58ac3a765d067950e7dbbf75b1da07e895d1f594193a40a38b",
496
+                "sha256:9c443e7324ba5b85070c4a818ade28bfabedf16ea10206da1132edaa6dda237e"
497
+            ],
498
+            "version": "==2.18.4"
499
+        },
500
+        "send2trash": {
501
+            "hashes": [
502
+                "sha256:f1691922577b6fa12821234aeb57599d887c4900b9ca537948d2dac34aea888b",
503
+                "sha256:60001cc07d707fe247c94f74ca6ac0d3255aabcb930529690897ca2a39db28b2"
504
+            ],
505
+            "version": "==1.5.0"
506
+        },
507
+        "simplegeneric": {
508
+            "hashes": [
509
+                "sha256:dc972e06094b9af5b855b3df4a646395e43d1c9d0d39ed345b7393560d0b9173"
510
+            ],
511
+            "version": "==0.8.1"
512
+        },
513
+        "six": {
514
+            "hashes": [
515
+                "sha256:832dc0e10feb1aa2c68dcc57dbb658f1c7e65b9b61af69048abc87a2db00a0eb",
516
+                "sha256:70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"
517
+            ],
518
+            "version": "==1.11.0"
519
+        },
520
+        "smartypants": {
521
+            "hashes": [
522
+                "sha256:8db97f7cbdf08d15b158a86037cd9e116b4cf37703d24e0419a0d64ca5808f0d"
523
+            ],
524
+            "version": "==2.0.1"
525
+        },
526
+        "terminado": {
527
+            "hashes": [
528
+                "sha256:65011551baff97f5414c67018e908110693143cfbaeb16831b743fe7cad8b927",
529
+                "sha256:55abf9ade563b8f9be1f34e4233c7b7bde726059947a593322e8a553cc4c067a"
530
+            ],
531
+            "version": "==0.8.1"
532
+        },
533
+        "testpath": {
534
+            "hashes": [
535
+                "sha256:039fa6a6c9fd3488f8336d23aebbfead5fa602c4a47d49d83845f55a595ec1b4",
536
+                "sha256:0d5337839c788da5900df70f8e01015aec141aa3fe7936cb0d0a2953f7ac7609"
537
+            ],
538
+            "version": "==0.3.1"
539
+        },
540
+        "toml": {
541
+            "hashes": [
542
+                "sha256:b3953bffe848ad9a6d554114d82f2dcb3e23945e90b4d9addc9956f37f336594"
543
+            ],
544
+            "version": "==0.9.2"
545
+        },
546
+        "tornado": {
547
+            "hashes": [
548
+                "sha256:92b7ca81e18ba9ec3031a7ee73d4577ac21d41a0c9b775a9182f43301c3b5f8e",
549
+                "sha256:b36298e9f63f18cad97378db2222c0e0ca6a55f6304e605515e05a25483ed51a",
550
+                "sha256:ab587996fe6fb9ce65abfda440f9b61e4f9f2cf921967723540679176915e4c3",
551
+                "sha256:5ef073ac6180038ccf99411fe05ae9aafb675952a2c8db60592d5daf8401f803",
552
+                "sha256:6d14e47eab0e15799cf3cdcc86b0b98279da68522caace2bd7ce644287685f0a"
553
+            ],
554
+            "version": "==4.5.3"
555
+        },
556
+        "traitlets": {
557
+            "hashes": [
558
+                "sha256:c6cb5e6f57c5a9bdaa40fa71ce7b4af30298fbab9ece9815b5d995ab6217c7d9",
559
+                "sha256:9c4bd2d267b7153df9152698efb1050a5d84982d3384a37b2c1f7723ba3e7835"
560
+            ],
561
+            "version": "==4.3.2"
562
+        },
563
+        "typogrify": {
564
+            "hashes": [
565
+                "sha256:8be4668cda434163ce229d87ca273a11922cb1614cb359970b7dc96eed13cb38"
566
+            ],
567
+            "version": "==2.0.7"
568
+        },
569
+        "unidecode": {
570
+            "hashes": [
571
+                "sha256:72f49d3729f3d8f5799f710b97c1451c5163102e76d64d20e170aedbbd923582",
572
+                "sha256:8c33dd588e0c9bc22a76eaa0c715a5434851f726131bd44a6c26471746efabf5"
573
+            ],
574
+            "version": "==1.0.22"
575
+        },
576
+        "urllib3": {
577
+            "hashes": [
578
+                "sha256:06330f386d6e4b195fbfc736b297f58c5a892e4440e54d294d7004e3a9bbea1b",
579
+                "sha256:cc44da8e1145637334317feebd728bd869a35285b93cbb4cca2577da7e62db4f"
580
+            ],
581
+            "version": "==1.22"
582
+        },
583
+        "watchdog": {
584
+            "hashes": [
585
+                "sha256:7e65882adb7746039b6f3876ee174952f8eaaa34491ba34333ddf1fe35de4162"
586
+            ],
587
+            "version": "==0.8.3"
588
+        },
589
+        "wcwidth": {
590
+            "hashes": [
591
+                "sha256:f4ebe71925af7b40a864553f761ed559b43544f8f71746c2d756c7fe788ade7c",
592
+                "sha256:3df37372226d6e63e1b1e1eda15c594bca98a22d33a23832a90998faa96bc65e"
593
+            ],
594
+            "version": "==0.1.7"
595
+        },
596
+        "webassets": {
597
+            "hashes": [
598
+                "sha256:e7d9c8887343123fd5b32309b33167428cb1318cdda97ece12d0907fd69d38db"
599
+            ],
600
+            "version": "==0.12.1"
601
+        },
602
+        "webencodings": {
603
+            "hashes": [
604
+                "sha256:a0af1213f3c2226497a97e2b3aa01a7e4bee4f403f95be16fc9acd2947514a78",
605
+                "sha256:b36a1c245f2d304965eb4e0a82848379241dc04b865afcc4aab16748587e1923"
606
+            ],
607
+            "version": "==0.5.1"
608
+        },
609
+        "ws4py": {
610
+            "hashes": [
611
+                "sha256:7ac69ce3e6ec6917a5d678b65f0a18e244a4dc670db6414bc0271b3f4911237f"
612
+            ],
613
+            "version": "==0.4.2"
614
+        },
615
+        "yapsy": {
105 616
             "hashes": [
106
-                "sha256:d5da73735293558eb1651ee2fddc4d0dedcfa06538b8813a2e20011583c9e49b",
107
-                "sha256:c3fd7a7d41976d9f44db327260e263132466836cef6f91512889ed60ad26557c"
617
+                "sha256:428d7e3037d5ea02870d5c52d2fb383877621ed7e62e03158ffbda3fca9f6e12",
618
+                "sha256:c1968456ed490107371895423b42062308aba11f9ff4619a7653485fdd64cf41",
619
+                "sha256:45bb39a72461913388d7f3e92ce33816e84fff59946c45e16796eb1fb1d5f2a6"
108 620
             ],
109
-            "version": "==0.14.1"
621
+            "version": "==1.11.223"
110 622
         }
111 623
     }
112 624
 }

+ 1406
- 0
conf.py
File diff suppressed because it is too large
View File


+ 15
- 0
pages/404.md View File

@@ -0,0 +1,15 @@
1
+<!--
2
+.. title: Page Not Found
3
+.. slug: 404
4
+.. date: 
5
+.. tags: 
6
+.. category: 
7
+.. link: 
8
+.. description: 
9
+.. type: text
10
+.. template: error.tmpl
11
+-->
12
+
13
+# 404
14
+
15
+### It looks like your quest has not yet come to an end. ;)

+ 15
- 0
pages/404.pl.md View File

@@ -0,0 +1,15 @@
1
+<!--
2
+.. title: Nie odnaleziono strony
3
+.. slug: 404
4
+.. date: 
5
+.. tags: 
6
+.. category: 
7
+.. link: 
8
+.. description: 
9
+.. type: text
10
+.. template: error.tmpl
11
+-->
12
+
13
+# 404
14
+
15
+### Wygląda na to, że Twoje poszukiwania nie dobiegły jeszcze końca. ;)

src/content/welcome.md → pages/index.md View File

@@ -1,8 +1,15 @@
1
-lang: en
2
-langs: [{'href': '/witaj', 'caption': 'polski'}]
3
-title: Welcome
4
-
5
-# Few things about my repositories
1
+<!--
2
+.. title: Welcome, here are few informations...
3
+.. slug: index
4
+.. date: 
5
+.. tags: 
6
+.. category: 
7
+.. link: 
8
+.. description: 
9
+.. type: text
10
+-->
11
+
12
+## ... about my repositories
6 13
 
7 14
 **My applications**
8 15
 
@@ -35,7 +42,7 @@ title: Welcome
35 42
 * [Real World Haskell](/git/orzech/real-world-haskell) - solutions for exercises from the
36 43
   [book](http://book.realworldhaskell.org){: rel="noopener noreferrer" } with the same title.
37 44
 
38
-# Few things about me
45
+## ... about me
39 46
 
40 47
 * Son of Mieczysław and Sylwia; Wioleta's fiancé.
41 48
 * True-born islander - born on

src/content/welcome_pl.md → pages/index.pl.md View File

@@ -1,8 +1,15 @@
1
-lang: pl
2
-langs: [{'href': '/welcome', 'caption': 'English'}]
3
-title: Witaj
4
-
5
-# Kilka informacji o moich repozytoriach
1
+<!--
2
+.. title: Witaj, oto kilka informacji...
3
+.. slug: index
4
+.. date: 
5
+.. tags: 
6
+.. category: 
7
+.. link: 
8
+.. description: 
9
+.. type: text
10
+-->
11
+
12
+## ... o moich repozytoriach
6 13
 
7 14
 **Moje aplikacje**
8 15
 
@@ -37,7 +44,7 @@ title: Witaj
37 44
 * [Real World Haskell](/git/orzech/real-world-haskell) - rozwiązania zadań z
38 45
   [książki](http://book.realworldhaskell.org){: rel="noopener noreferrer" } o tym samym tytule.
39 46
 
40
-# Kilka informacji o mnie
47
+## ... o mnie
41 48
 
42 49
 * Syn Mieczysława i Sylwii; narzeczony Wiolety.
43 50
 * Wyspiarz z krwi i kości - urodzony na

+ 0
- 7
src/content/404.md View File

@@ -1,7 +0,0 @@
1
-lang: en
2
-title: Page not found
3
-
4
-# 404
5
-
6
-## It looks like your quest has not yet come to an end. ;)
7
-

+ 0
- 7
src/content/404_pl.md View File

@@ -1,7 +0,0 @@
1
-lang: pl
2
-title: Nie odnaleziono strony
3
-
4
-# 404
5
-
6
-## Wygląda na to, że Twoje poszukiwania nie dobiegły jeszcze końca. ;)
7
-

+ 0
- 88
src/site.py View File

@@ -1,88 +0,0 @@
1
-#!/usr/bin/python3
2
-
3
-import argparse
4
-import os
5
-import sys
6
-
7
-from datetime import date
8
-from flask import Flask, render_template
9
-from flask_flatpages import FlatPages, pygments_style_defs
10
-from flask_frozen import Freezer
11
-
12
-DEBUG = os.environ['DEBUG'] == 'true'
13
-
14
-SITE_AUTHOR = 'Piotr Orzechowski'
15
-SITE_DOMAIN = 'orzechowski.tech'
16
-SITE_DOMAIN_LINK = '<a href="//{0}">{0}</a>'.format(SITE_DOMAIN)
17
-SITE_START_YEAR = '2012'
18
-SITE_CURRENT_YEAR = '{}'.format(date.today().year)
19
-SITE_LANG_ENGLISH = 'en'
20
-SITE_LANG_POLISH = 'pl'
21
-SITE_GENERATOR_LINK = ('<a href="//pythonhosted.org/Frozen-Flask" rel="noopener noreferrer">'
22
-                       'Frozen-Flask'
23
-                       '</a>')
24
-
25
-FREEZER_BASE_URL = 'https://{}'.format(SITE_DOMAIN)
26
-FREEZER_DESTINATION = '../dist'
27
-
28
-FLATPAGES_AUTO_RELOAD = DEBUG
29
-FLATPAGES_ROOT = 'content'
30
-FLATPAGES_EXTENSION = '.md'
31
-FLATPAGES_MARKDOWN_EXTENSIONS = ['codehilite', 'attr_list']
32
-
33
-app = Flask(__name__)
34
-flatpages = FlatPages(app)
35
-freezer = Freezer(app)
36
-
37
-app.config.from_object(__name__)
38
-
39
-app.jinja_env.globals['DEBUG'] = DEBUG
40
-app.jinja_env.globals['SITE_AUTHOR'] = SITE_AUTHOR
41
-app.jinja_env.globals['SITE_DOMAIN'] = SITE_DOMAIN
42
-app.jinja_env.globals['SITE_DOMAIN_LINK'] = SITE_DOMAIN_LINK
43
-app.jinja_env.globals['SITE_START_YEAR'] = SITE_START_YEAR
44
-app.jinja_env.globals['SITE_CURRENT_YEAR'] = SITE_CURRENT_YEAR
45
-app.jinja_env.globals['SITE_LANG_ENGLISH'] = SITE_LANG_ENGLISH
46
-app.jinja_env.globals['SITE_LANG_POLISH'] = SITE_LANG_POLISH
47
-app.jinja_env.globals['SITE_GENERATOR_LINK'] = SITE_GENERATOR_LINK
48
-
49
-
50
-def page(name):
51
-    page = flatpages.get(name)
52
-    return render_template('default.html', page=page)
53
-
54
-
55
-@app.route('/welcome/')
56
-def welcome():
57
-    return page('welcome')
58
-
59
-
60
-@app.route('/witaj/')
61
-def welcome_pl():
62
-    return page('welcome_pl')
63
-
64
-
65
-@app.route('/en/404/')
66
-def page_not_found():
67
-    return page_not_found('404')
68
-
69
-
70
-@app.route('/pl/404/')
71
-def page_not_found_pl():
72
-    return page_not_found('404_pl')
73
-
74
-
75
-def page_not_found(name):
76
-    page = flatpages.get(name)
77
-    return render_template('error.html', page=page)
78
-
79
-
80
-if __name__ == '__main__':
81
-    parser = argparse.ArgumentParser()
82
-    parser.add_argument('action', choices=['build', 'run'])
83
-
84
-    args = parser.parse_args()
85
-    if args.action == 'build':
86
-        freezer.freeze()
87
-    elif args.action == 'run':
88
-        app.run(host='localhost', debug=True)

+ 0
- 185
src/static/css/base.css View File

@@ -1,185 +0,0 @@
1
-/*------------------------------------------------------------------------------
2
-CSS reset
3
-------------------------------------------------------------------------------*/
4
-html {
5
-    font-family: sans-serif;
6
-    font-size: 62.5%;
7
-}
8
-
9
-body {
10
-    margin: 0;
11
-}
12
-
13
-/*------------------------------------------------------------------------------
14
-Typography
15
-------------------------------------------------------------------------------*/
16
-body {
17
-    font-size: 1.4em;
18
-    line-height: 1.5;
19
-    font-weight: 400;
20
-    font-family: "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
21
-    color: #333;
22
-    background-color: #373737;
23
-}
24
-
25
-.header {
26
-    color: #f2f2f2;
27
-    font-weight: 400;
28
-    margin: 0;
29
-    padding: 14px 20px 0;
30
-}
31
-
32
-.header h1 {
33
-    margin-top: 0;
34
-    margin-bottom: 0;
35
-    padding-bottom: 0.8rem;
36
-}
37
-
38
-.header-sep {
39
-    color: #33a7ff;
40
-}
41
-
42
-.menu {
43
-    color: #f2f2f2;
44
-    background-color: #373737;
45
-    border-top: 1px solid #33a7ff;
46
-    margin-bottom: 6px;
47
-    overflow: auto;
48
-}
49
-
50
-.content-background {
51
-    background-color: #f2f2f2;
52
-}
53
-
54
-.content {
55
-    padding: 15px 20px 20px;
56
-}
57
-
58
-ul {
59
-    list-style-type: square;
60
-    margin: 0 0 1rem 0;
61
-    padding-left: 3rem;
62
-}
63
-
64
-a {
65
-    color: #33a7ff;
66
-    text-decoration: none;
67
-}
68
-
69
-a:hover {
70
-    text-decoration: underline;
71
-}
72
-
73
-h1 {
74
-    font-size: 3rem;
75
-    line-height: 1.2;
76
-}
77
-
78
-h2 {
79
-    font-size: 2.6rem;
80
-    line-height: 1.25;
81
-}
82
-
83
-h1, h2 {
84
-    margin: 0;
85
-    margin-bottom: 1rem;
86
-    font-weight: 700;
87
-}
88
-
89
-.content h1 {
90
-    color: #0073cc;
91
-}
92
-
93
-.content a {
94
-    color: #0073cc;
95
-    text-decoration: none;
96
-}
97
-
98
-.content a:hover {
99
-    text-decoration: underline;
100
-}
101
-
102
-h1 small {
103
-    font-size: 0.75em;
104
-    font-weight: 400;
105
-}
106
-
107
-.footer {
108
-    color: #f2f2f2;
109
-    padding: 10px 20px 30px;
110
-}
111
-
112
-/*------------------------------------------------------------------------------
113
-No-grid layout
114
-------------------------------------------------------------------------------*/
115
-@supports not(display: grid) {
116
-    .site {
117
-        max-witdh: 50em;
118
-        margin: 0 auto;
119
-    }
120
-}
121
-
122
-/*------------------------------------------------------------------------------
123
-Grid layout
124
-------------------------------------------------------------------------------*/
125
-@media screen and (min-width: 600px) {
126
-    @supports (display: grid) {
127
-        .site {
128
-            display: grid;
129
-            grid-template-columns: 1fr minmax(auto, 940px) 1fr;
130
-            grid-template-rows: minmax(1em, auto) auto minmax(1em, auto);
131
-        }
132
-
133
-        .header {
134
-            display: grid;
135
-            grid-template-columns: auto auto;
136
-            grid-template-rows: auto auto;
137
-            grid-column: 2;
138
-            grid-row: 1;
139
-        }
140
-
141
-        .title {
142
-            grid-column: 1;
143
-            grid-row: 1;
144
-            justify-self: start;
145
-        }
146
-
147
-        .lang-menu {
148
-            grid-column: 2;
149
-            grid-row: 1;
150
-            justify-self: end;
151
-        }
152
-
153
-        .menu {
154
-            grid-column: span 2;
155
-            grid-row: 2;
156
-        }
157
-
158
-        .content-background {
159
-            display: grid;
160
-            grid-template-columns: 1fr minmax(auto, 940px) 1fr;
161
-            grid-column: span 3;
162
-            grid-row: 2;
163
-        }
164
-
165
-        .content {
166
-            grid-column: 2;
167
-        }
168
-
169
-        .footer {
170
-            display: grid;
171
-            grid-template-columns: auto auto;
172
-            grid-column: 2;
173
-            grid-row: 3;
174
-        }
175
-
176
-        .generator {
177
-            grid-column: 1;
178
-        }
179
-
180
-        .copyright {
181
-            grid-column: 2;
182
-            justify-self: end;
183
-        }
184
-    }
185
-}

+ 0
- 35
src/static/css/default.css View File

@@ -1,35 +0,0 @@
1
-.main-menu ul {
2
-    list-style: none outside;
3
-    padding: 0;
4
-}
5
-
6
-.main-menu a {
7
-    color: #f2f2f2;
8
-    padding: 10px 15px;
9
-    float: left;
10
-    border: 1px solid transparent;
11
-    text-decoration: none;
12
-}
13
-
14
-.main-menu a:hover {
15
-    border: 1px solid #f2f2f2;
16
-    border-radius: 5px;
17
-}
18
-
19
-.menu li {
20
-    margin: 5px 0;
21
-}
22
-
23
-.lang-menu a {
24
-    color: #33a7ff;
25
-    padding: 0.65rem 2.2rem;
26
-    border: 1px solid #33a7ff;
27
-    border-radius: 5px;
28
-    margin: .35rem 0;
29
-    font-weight: bold;
30
-}
31
-
32
-.lang-menu a:hover {
33
-    color: #f2f2f2;
34
-    border-color: #f2f2f2;
35
-}

+ 0
- 16
src/static/css/error.css View File

@@ -1,16 +0,0 @@
1
-h1, h2 {
2
-    text-align: center;
3
-}
4
-
5
-h2 {
6
-    font-size: 1.4em;
7
-}
8
-
9
-.content-background {
10
-    margin-top: 4rem;
11
-}
12
-
13
-.content {
14
-    padding-top: 125px;
15
-    padding-bottom: 175px;
16
-}

+ 0
- 15
src/templates/copyright.html View File

@@ -1,15 +0,0 @@
1
-<div class="generator">
2
-{% if page.lang == SITE_LANG_POLISH -%}
3
-    Ta strona została wygenerowana przy użyciu {{ SITE_GENERATOR_LINK | safe }}.
4
-{%- else -%}
5
-    This page was generated with {{ SITE_GENERATOR_LINK | safe }}.
6
-{%- endif %}
7
-</div>
8
-
9
-<div class="copyright">
10
-{% if page.lang == SITE_LANG_POLISH -%}
11
-    Copyright ©{{ SITE_START_YEAR }}–{{ SITE_CURRENT_YEAR }} Piotr Orzechowski [{{ SITE_DOMAIN_LINK | safe }}].
12
-{%- else -%}
13
-    Copyright ©{{ SITE_START_YEAR }}–{{ SITE_CURRENT_YEAR }} Piotr Orzechowski [{{ SITE_DOMAIN_LINK | safe }}].
14
-{%- endif %}
15
-</div>

+ 0
- 57
src/templates/default.html View File

@@ -1,57 +0,0 @@
1
-<!DOCTYPE html>
2
-{% if page.lang != '' -%}
3
-<html lang="{{ page.lang }}">
4
-{%- else -%}
5
-<html>
6
-{%- endif %}
7
-    <head>
8
-        <meta charset="UTF-8" />
9
-        <meta name="viewport" content="width=device-width, initial-scale=1" />
10
-        {% if page.title -%}
11
-        <title>{{ page.title }} · {{ SITE_AUTHOR }}</title>
12
-        {%- else -%}
13
-        <title>{{ SITE_AUTHOR }}</title>
14
-        {%- endif %}
15
-        {% if DEBUG -%}
16
-        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/base.css') }}" />
17
-        {% endif -%}
18
-        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/default.css') }}" />
19
-    </head>
20
-    <body>
21
-        <div class="site">
22
-            <div class="header">
23
-                <div class="title">
24
-                    <h1>
25
-                        {% if page.title -%}
26
-                        {{ SITE_AUTHOR }} <span class="header-sep">·</span> <small>{{ page.title }}</small>
27
-                        {%- else -%}
28
-                        {{ SITE_AUTHOR }}
29
-                        {%- endif %}
30
-                    </h1>
31
-                </div>
32
-
33
-                <div class="lang-menu main-menu">
34
-                    <ul>
35
-                        {% for lang in page.langs -%}
36
-                        <li><a href="{{ lang['href'] }}">{{ lang['caption'] }}</a></li>
37
-                        {%- endfor %}
38
-                    </ul>
39
-                </div>
40
-
41
-                <div class="menu main-menu">
42
-                    {% include 'menu.html' %}
43
-                </div>
44
-            </div>
45
-
46
-            <div class="content-background">
47
-                <div class="content">
48
-                    {{ page.html | safe }}
49
-                </div>
50
-            </div>
51
-
52
-            <div class="footer">
53
-                {% include 'copyright.html' %}
54
-            </div>
55
-        </div>
56
-    </body>
57
-</html>

+ 0
- 48
src/templates/error.html View File

@@ -1,48 +0,0 @@
1
-<!DOCTYPE html>
2
-{% if page.lang != '' -%}
3
-<html lang="{{ page.lang }}">
4
-{%- else -%}
5
-<html>
6
-{%- endif %}
7
-    <head>
8
-        <meta charset="UTF-8" />
9
-        <meta name="viewport" content="width=device-width, initial-scale=1" />
10
-        {% if page.title -%}
11
-        <title>{{ page.title }} · {{ SITE_AUTHOR }}</title>
12
-        {%- else -%}
13
-        <title>{{ SITE_AUTHOR }}</title>
14
-        {%- endif %}
15
-        {% if DEBUG -%}
16
-        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/base.css') }}" />
17
-        {% endif -%}
18
-        <link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='css/error.css') }}" />
19
-    </head>
20
-    <body>
21
-        <div class="site">
22
-            <div class="header">
23
-                <div class="title">
24
-                    <h1>
25
-                        {% if page.title -%}
26
-                        {{ SITE_AUTHOR }} <span class="header-sep">·</span> <small>{{ page.title }}</small>
27
-                        {%- else -%}
28
-                        {{ SITE_AUTHOR }}
29
-                        {%- endif %}
30
-                    </h1>
31
-                </div>
32
-
33
-                <div class="lang-menu main-menu"></div>
34
-                <div class="menu main-menu"></div>
35
-            </div>
36
-
37
-            <div class="content-background">
38
-                <div class="content">
39
-                    {{ page.html | safe }}
40
-                </div>
41
-            </div>
42
-
43
-            <div class="footer">
44
-                {% include 'copyright.html' %}
45
-            </div>
46
-        </div>
47
-    </body>
48
-</html>

+ 0
- 9
src/templates/menu.html View File

@@ -1,9 +0,0 @@
1
-<ul>
2
-{% if page.lang == SITE_LANG_POLISH -%}
3
-    <li><a href="{{ url_for('welcome_pl') }}">Witaj</a></li>
4
-    <li><a href="/git/orzech?tab=activity">Ostatnie zmiany</a></li>
5
-{%- else -%}
6
-    <li><a href="{{ url_for('welcome') }}">Welcome</a></li>
7
-    <li><a href="/git/orzech?tab=activity">Latest changes</a></li>
8
-{%- endif %}
9
-</ul>

+ 88
- 0
themes/orzech-slate/assets/css/custom.css View File

@@ -0,0 +1,88 @@
1
+/* COLORS */
2
+
3
+body {
4
+    background-color: #f2f2f2;
5
+}
6
+
7
+a, h1, h2, article > .entry-content h3 {
8
+    color: #0073cc;
9
+}
10
+
11
+.navbar {
12
+    background-color: #373737;
13
+}
14
+
15
+.navbar > .container::after {
16
+    border-bottom: 1px solid #33a7ff;
17
+    width: 100%;
18
+}
19
+
20
+.navbar-header > a > span,
21
+.navbar-inverse .navbar-nav > li > a {
22
+    color: #f2f2f2;
23
+}
24
+
25
+.navbar-header > a > span:hover,
26
+.navbar-header > a > span:focus,
27
+.navbar-inverse .navbar-nav > li > a:hover,
28
+.navbar-inverse .navbar-nav > li > a:focus {
29
+    color: #33a7ff;
30
+}
31
+
32
+.errorpage > .entry-content h4 {
33
+    color: #373737;
34
+}
35
+
36
+/* FONTS */
37
+
38
+.navbar-header > a > span {
39
+    font-size: 1.75em;
40
+    font-weight: bold;
41
+}
42
+
43
+.errorpage > .entry-content h2,
44
+.errorpage > .entry-content h4 {
45
+    font-weight: bold;
46
+}
47
+
48
+/* SHAPES */
49
+
50
+ul {
51
+    list-style-type: square;
52
+}
53
+
54
+/* LAYOUT */
55
+
56
+body {
57
+    margin-bottom: 15px;
58
+}
59
+
60
+.navbar {
61
+    padding-bottom: 5px;
62
+    margin-bottom: 5px;
63
+}
64
+
65
+.errorpage > .entry-content {
66
+    padding-top: 125px;
67
+    padding-bottom: 175px;
68
+}
69
+
70
+.errorpage > .entry-content h2,
71
+.errorpage > .entry-content h4 {
72
+    text-align: center;
73
+}
74
+
75
+footer {
76
+    text-align: center;
77
+}
78
+
79
+@media (min-width: 1024px) {
80
+    .navbar > .container {
81
+        padding: 10px 15% 10px 15%;
82
+    }
83
+
84
+    body > .container {
85
+        padding-left: 15%;
86
+        padding-right: 15%;
87
+    }
88
+}

+ 10
- 0
themes/orzech-slate/orzech-slate.theme View File

@@ -0,0 +1,10 @@
1
+[Theme]
2
+engine = jinja
3
+parent = bootstrap3-jinja
4
+author = Piotr Orzechowski [orzechowski.tech]
5
+author_url = https://orzechowski.tech
6
+based_on = Bootstrap3 <https://themes.getnikola.com/v8/bootstrap3-jinja/>, Slate <https://github.com/pages-themes/slate>
7
+tags = bootstrap3, jinja
8
+
9
+[Family]
10
+family = bootstrap3-jinja

+ 1
- 0
themes/orzech-slate/parent View File

@@ -0,0 +1 @@
1
+bootstrap3-jinja

+ 10
- 0
themes/orzech-slate/templates/error.tmpl View File

@@ -0,0 +1,10 @@
1
+{#  -*- coding: utf-8 -*- #}
2
+{% extends 'post.tmpl' %}
3
+
4
+{% block content %}
5
+<article class="post-{{ post.meta('type') }} storypage errorpage" itemscope="itemscope" itemtype="http://schema.org/Article">
6
+    <div class="e-content entry-content" itemprop="articleBody text">
7
+    {{ post.text() }}
8
+    </div>
9
+</article>
10
+{% endblock %}

Loading…
Cancel
Save