From 20ba1e69dd8c2823e8e8679476e3e0f8ffbb0711 Mon Sep 17 00:00:00 2001 From: Dibyashanu Pati <> Date: Tue, 4 Jun 2024 21:32:01 +0530 Subject: [PATCH] Added initial files to the website --- .gitignore | 2 + FAQ.org | 24 ++ about.org | 24 ++ blog-table-latest-10.txt | 4 + blogs/blog-list.org | 29 ++ blogs/blog-table-complete.txt | 4 + blogs/blog.setup | 46 +++ blogs/test_blog_3.org | 11 + contact.org | 151 ++++++++ i2p-b32-address.txt | 1 + index.org | 28 ++ link-list.txt | 3 + links.org | 50 +++ main.org | 706 ++++++++++++++++++++++++++++++++++ main.setup | 58 +++ news.org | 39 ++ tor-onionv3-address.txt | 1 + 17 files changed, 1181 insertions(+) create mode 100644 .gitignore create mode 100644 FAQ.org create mode 100644 about.org create mode 100644 blog-table-latest-10.txt create mode 100644 blogs/blog-list.org create mode 100644 blogs/blog-table-complete.txt create mode 100644 blogs/blog.setup create mode 100644 blogs/test_blog_3.org create mode 100644 contact.org create mode 100644 i2p-b32-address.txt create mode 100644 index.org create mode 100644 link-list.txt create mode 100644 links.org create mode 100644 main.org create mode 100644 main.setup create mode 100644 news.org create mode 100644 tor-onionv3-address.txt diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bfbb5d1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/cosmicpirates.space-gmi/ +/cosmicpirates.space-html/ diff --git a/FAQ.org b/FAQ.org new file mode 100644 index 0000000..a682175 --- /dev/null +++ b/FAQ.org @@ -0,0 +1,24 @@ +#+title: Faq +#+setupfile: main.setup + +#+begin_center +: +-------------------------------------------+ +: | ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ | +: | ▐░░░░░░░░░░░▌ ▐░░░░░░░░░░░▌ ▐░░░░░░░░░░░▌ | +: | ▐░█▀▀▀▀▀▀▀▀▀ ▐░█▀▀▀▀▀▀▀█░▌ ▐░█▀▀▀▀▀▀▀█░▌ | +: | ▐░▌ ▐░▌ ▐░▌ ▐░▌ ▐░▌ | +: | ▐░█▄▄▄▄▄▄▄▄▄ ▐░█▄▄▄▄▄▄▄█░▌ ▐░▌ ▐░▌ | +: | ▐░░░░░░░░░░░▌ ▐░░░░░░░░░░░▌ ▐░▌ ▐░▌ | +: | ▐░█▀▀▀▀▀▀▀▀▀ ▐░█▀▀▀▀▀▀▀█░▌ ▐░█▄▄▄▄▄▄▄█░▌ | +: | ▐░▌ ▐░▌ ▐░▌ ▐░░░░░░░░░░░▌ | +: | ▐░▌ ▐░▌ ▐░▌ ▀▀▀▀▀▀█░█▀▀ | +: | ▐░▌ ▐░▌ ▐░▌ ▐░▌ | +: | ▀ ▀ ▀ ▀ | +: +-------------------------------------------+ +#+end_center + +#+name: link-list.txt +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + diff --git a/about.org b/about.org new file mode 100644 index 0000000..fdaa1b2 --- /dev/null +++ b/about.org @@ -0,0 +1,24 @@ +#+title: About +#+created: [2024-03-02 Sat] +#+setupfile: main.setup + +#+begin_center +: +--------------------------------------+ +: | ___ _ _ | +: | / _ \ | | | | | +: |/ /_\ \ | |__ ___ _ _ | |_ | +: || _ | | '_ \ / _ \ | | | | | __| | +: || | | | | |_) | | (_) | | |_| | | |_ | +: |\_| |_/ |_.__/ \___/ \__,_| \__| | +: +--------------------------------------+ +#+end_center + +#+name: link-list.txt +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + + +We think that knowledge should be open to everyone and freely accessible. +This website will document our projects, interests and ideas. + diff --git a/blog-table-latest-10.txt b/blog-table-latest-10.txt new file mode 100644 index 0000000..bd80909 --- /dev/null +++ b/blog-table-latest-10.txt @@ -0,0 +1,4 @@ +|- +|Title|Last Modified|Created| +|- +|[[file:./blogs/test_blog_3.org][Test Blog]]||[2024-02-05 Thu]| diff --git a/blogs/blog-list.org b/blogs/blog-list.org new file mode 100644 index 0000000..2aaef7c --- /dev/null +++ b/blogs/blog-list.org @@ -0,0 +1,29 @@ +#+title: Blogs List +#+created: [2024-03-01 Fri] +#+OPTIONS: num:nil ^:{} title:nil toc:nil +#+setupfile: ../main.setup + +#+begin_center +: +-----------------------------------------------------+ +: |oooooooooo. oooo | +: |`888' `Y8b `888 | +: | 888 888 888 .ooooo. .oooooooo .oooo.o | +: | 888oooo888' 888 d88' `88b 888' `88b d88( "8 | +: | 888 `88b 888 888 888 888 888 `"Y88b. | +: | 888 .88P 888 888 888 `88bod8P' o. )88b | +: |o888bood8P' o888o `Y8bod8P' `8oooooo. 8""888P' | +: | d" YD | +: | "Y88888P' | +: +-----------------------------------------------------+ +#+end_center + +[[../index.org][Home]] + +* A list of All Blogs + +#+name: blog-table-complete.txt +|- +|Title|Last Modified|Created| +|- +|[[file:test_blog_3.org][Test Blog]]||[2024-02-05 Thu]| + diff --git a/blogs/blog-table-complete.txt b/blogs/blog-table-complete.txt new file mode 100644 index 0000000..cf7c463 --- /dev/null +++ b/blogs/blog-table-complete.txt @@ -0,0 +1,4 @@ +|- +|Title|Last Modified|Created| +|- +|[[file:test_blog_3.org][Test Blog]]||[2024-02-05 Thu]| diff --git a/blogs/blog.setup b/blogs/blog.setup new file mode 100644 index 0000000..028e3fb --- /dev/null +++ b/blogs/blog.setup @@ -0,0 +1,46 @@ +# -*- mode: org; -*- + +# These are the options for blog pages +# title is automatically set to blog name + +#+OPTIONS: num:nil ^:{} toc:nil + +The following are the html customiation options + +Setting the background color to black +#+HTML_HEAD: +#+HTML_HEAD: + +* Margins +** p +#+HTML_HEAD: +** h2 +#+HTML_HEAD: + + +Alligning center blocks to the center +#+HTML_HEAD: + +Setting up tables to always be in the center +#+HTML_HEAD: + +Setting up the h2(main) heading +#+HTML_HEAD: + +Setting up the h3 heading +#+HTML_HEAD: +#+HTML_HEAD: diff --git a/blogs/test_blog_3.org b/blogs/test_blog_3.org new file mode 100644 index 0000000..6f773cf --- /dev/null +++ b/blogs/test_blog_3.org @@ -0,0 +1,11 @@ +#+title: Test Blog +#+created: [2024-02-05 Thu] +#+last_modified: +#+setupfile: blog.setup +#+author: Dibyashanu Pati + +* Introduction +Hello World + +* About +This is just a test blog diff --git a/contact.org b/contact.org new file mode 100644 index 0000000..00b321f --- /dev/null +++ b/contact.org @@ -0,0 +1,151 @@ +#+title: Contact +#+created: [2024-03-02 Sat] +#+setupfile: main.setup + +#+begin_center +: +----------------------------+ +: | ╔═╗ ┌─┐ ┌┐┌ ┌┬┐ ┌─┐ ┌─┐ ┌┬┐| +: | ║ │ │ │││ │ ├─┤ │ │ | +: | ╚═╝ └─┘ ┘└┘ ┴ ┴ ┴ └─┘ ┴ | +: +----------------------------+ +#+end_center + + +#+name: link-list.txt +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + + +* Dibyashanu Pati +#+begin_center +: ┌─┐ ┌┬┐ ┌─┐ ┬ ┬ +: ├┤ │││ ├─┤ │ │ +: └─┘ ┴ ┴ ┴ ┴ ┴ ┴─┘ + +: ┌┬┐ ┬ ┌┐ ┬ ┬ ┌─┐ ┌─┐ ┬ ┬ ┌─┐ ┌┐┌ ┬ ┬ ┌─┐ ┌─┐ ┬─┐ ┌─┐ ┌┬┐ ┌─┐ ┌┐┌ ┌┬┐ ┌─┐ ┬ ┬ ┌─┐ ┌─┐ ┌┬┐ +: ││ │ ├┴┐ └┬┘ ├─┤ └─┐ ├─┤ ├─┤ │││ │ │ │└┘ ├─┘ ├┬┘ │ │ │ │ │ │││ │││ ├─┤ │ │ │ │ │ │││ +: ─┴┘ ┴ └─┘ ┴ ┴ ┴ └─┘ ┴ ┴ ┴ ┴ ┘└┘ └─┘ └── ┴ ┴└─ └─┘ ┴ └─┘ ┘└┘ ┴ ┴ ┴ ┴ ┴ ┴─┘ o └─┘ └─┘ ┴ ┴ +#+end_center + +** PGP Keys +#+begin_src +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +Uwr5q7YlZSsd+DyyEU6tpNO98Afjk+0= +=JCgB +-----END PGP PUBLIC KEY BLOCK----- +#+end_src + +* Pranav Kalsi +#+begin_center +: ┌─┐ ┌┬┐ ┌─┐ ┬ ┬ +: ├┤ │││ ├─┤ │ │ +: └─┘ ┴ ┴ ┴ ┴ ┴ ┴─┘ + +: ┌─┐ ┬─┐ ┌─┐ ┌┐┌ ┌─┐ ┬ ┬ ┬┌─ ┌─┐ ┬ ┌─┐ ┬ ┌─┐ ┌─┐ ┬─┐ ┌─┐ ┌┬┐ ┌─┐ ┌┐┌ ┌┬┐ ┌─┐ +: ├─┘ ├┬┘ ├─┤ │││ ├─┤ └┐┌┘ ├┴┐ ├─┤ │ └─┐ │ │└┘ ├─┘ ├┬┘ │ │ │ │ │ │││ │││ ├┤ +: ┴ ┴└─ ┴ ┴ ┘└┘ ┴ ┴ └┘ ┴ ┴ ┴ ┴ ┴─┘ └─┘ ┴ └── ┴ ┴└─ └─┘ ┴ └─┘ ┘└┘ o ┴ ┴ └─┘ +#+end_center +** PGP Keys +#+begin_src +-----BEGIN PGP PUBLIC KEY BLOCK----- + +mQINBGXjQi0BEADscnldocIP8mZND6lrt8RHawdIYenzT0ZrbRV6K9ZBeN7gRAtX +5zPPSpSS0p6XNPJ9Jfl1hEoY9cU3M5yGtj3ax+q+pRJddJ/mAQmqwdnrITmJdcpl +e1KQcQLStjNrlpsevgssFjEzicm5a4c4QSNSJI7uv0vjQh+tPlzQw15C1kMB+8RX +NHgB3fG+JDJx1xinnV+dyvOlsUqJpiWBM+JP0O1+/moSo4Ca6xhn2y4QP+jPr5ka +tDxVmG9iqTq4aLxWrRLQLj04LhV58fUZJTQ4gW+9/u9ue4H/H7+ZUbIUe5UTlcjC +IdgZMZq6zQWbqtpBdL7LKXvoCADpLuWg1atwSrDdVtw6kbYDoniEhOIU5zggI+tm +vF9ZeVefHYpG9itxnJSUaap99LvvD2hP5nHTfrHps+TpSZ+dy3JVgIsOyGkxlZgO +sTMsloCz86TNAbaOikGOSAQOQrIsmsIKc+1H7k2gk21XbcVMcGlf15T2K4/OcF74 +TG7VtdNs4MCR3qmapz9viqDY5i3pfghf0633Nf2ga2XGV4uohJeohUyg9qXqgYwV +I5c+nnbRyijwruzBpXD3iOrUtarHwWCNdu8QuZ3PhMJnNKJcFp3NG+D7OYQgxdDs +jDyTUveBfsYcNZHnOAkl9vL6mmLqed88kqLkyvnAPf1EJ8tFFjeWYPzMKwARAQAB +tE1QcmFuYXYgS2Fsc2kgKHRoZXNlIGtleXMgd2VyZSBnZW5lcmF0ZWQgZm9yIHdl +YnNpdGUxKSA8cHJhbmF2a2Fsc2lAcHJvdG9uLm1lPokCUQQTAQgAOxYhBMp1f+d7 +eHhbxJ6gtg3AlnfN1q0dBQJl40ItAhsDBQsJCAcCAiICBhUKCQgLAgQWAgMBAh4H +AheAAAoJEA3AlnfN1q0d5gIP/RbilxvW0h2CmpjNIrB67LIdbbl6P4lttqkXLfFs +2csZnSSnDsMULYStrYzS8APWZN3oUAZcAMshAZS0dG2uGjcRcuHTyaRkhMafLKVg +zbEjNkrZocufI56S/jXSam2LzpJd7Zq9TDC3dTbgHrRdpdbkLRJdoEUMW/VshKfp +2LZdJmTRym2l5falOEPnniO3vm9VdU0kHEWJbtAmqxnXntCF6ev+Y13eK2U+w/7W +yUUaIj9y37Zzm8DtQ+C/2q0KCzrkF8jfqgQKSzQCFQuGXPviKDgT6ISlsIJ3WJWW +9OTNTB6Lp15ZlVQ1Jved39LAPnldj6zrI/fl6li0qJX3FC9anQAukxN6clLkdsrp +hdzME2QMkUol1IhSxI+0FeAbrDG7DB5SwXPc/66RlGKNsu2Dg6MLxgrdE2O2dFYl +hryrxGPhT9qvqu3gAmAr1UehVgePpFYLKcDFhY0LFDzKQAT7uRtC4krvZefoC+UN +kdKT3ncp4iFb2sINxazZrJ0C2av2/2uEnp+/BPmCMZbTLRu4CSqwRn1Lniax48m5 +OIBfGh7YOXxiQ3bCkFIBznevPLhlnO51L18xG3oo0TWAg8RasuWhhtIauXLUupco +66oTvG8rp62/qfijXsErv/NuOTJYK2GjmINlyxAmnicgyg8MJe/DA0LS4Isu+Kg/ +m5jPuQINBGXjQi0BEADZxSCV6vy/j4agmZPOUsxjjxKumGNHbwptJJuDLIHt7r+W +I8/L7yZREfgg2y9zXvGjt37gHI35n3D2sdOk6Rasx7dDnKsbDBXz0dn2Wla8fnpl +RyRQjYhzG+LtSy1zQtnAczdGRrKU6GGIi3zQ6rtXlQP2Ll8XNd3lEKPcN/pF+0U5 +JfDwILpZNo2h+3wq8qwmtMxqyzq/nAX0zTeFtKXETpyfseUTCBJZedwaCNV0Jteb +nsmURQtpqXlbHDy75Br0ge/DQ/yoW8N88fvKPc2fLZJnPlSzP6OpkUPnA5qxNuAs +97RPSnhdLGGcbtn1EYRBmty4/XcEcCgAvrzIGiBuTS34ODOU2qGvWNJzUruilQYm +ijCvSX/3oXTwaYCY61YdnduCXYtbrufTqXLEvyYU8wrJVjsNN1XElJfiVuWJdqW/ +zeJzWRFRoaRuLOqewXNWg2F0yULS4e9uv5yuZH4YUNL6QSB4YixCwnYkTrziKgUR +rL1egGK/H85NNiCL/0WVZHtNF+A3qbQ4Q+CPS6r4E7Yf6XWV8w0hO2A4PL9B4+iW +s+TLb1cgbz/WGIEXgbe6dUWDJXqll4mulouuJJKTw6eIW16gE30P78T2047mPpEU +1qXi+jdpNpJLYdPCJRuE9g+IYlIj7SZZT6yL4lG/hbbpujZwNHeKe6/uASzHAwAR +AQABiQI2BBgBCAAgFiEEynV/53t4eFvEnqC2DcCWd83WrR0FAmXjQi0CGwwACgkQ +DcCWd83WrR3sQhAA6BYv5Cst0D8Xn30KODCdqb9ah3wUIOUcVTQLH9V/zrhXlyds +HN0Ior+AZvQlYnZKyMDwozS25Kk2D1XZ3QH6eEZbjWJhhb2gwZFLO/xupS5xLrJZ +WfM0zne0aCTKckUv3WVLi25CcLEnS2JBmlqDMDPntzX9M1ZHqYLKeaHlErNkGoRj +EQ5g2nBobx/hpph09li03yEi97CvJb7XWLNn7ZWFPzLfsbOHq9mhTxM082LLnJAu +++/JGzBQDdxi9pz9AD7CHCfSdooSgjZumH9ImjvsjJnq7iqU+01rEq0gAZMIjCVR +pfwl5KGmtSiuPLXppOBiwDw3sde4f53Ld2figvtj4/G0QNAno2QZMYNZuSpASoWR +fQ6QMNRyR2fjX0AntKjZTT6kfdRwShOAWxu1IR1NE1FWEDS5s0qG7S9ks8u614Pe +wRs8QbS+iVFuFOYMSuy/q5l3I2hVgmLim0kstPUG37iUt9Pll0SvRFluRBO/Vxdu +7hPWruxQre5+d8q/J3MBeos7RrbldgpyhvSfS7z4vLsW/cDpshGuCZV/dC6QuKb4 +V+Of+dpfiGZpyoXFVA6N13SNys0AagzPzGKsESrFtTtTjUXXbQtRMAYCYolo71cf +kFUVWJEsf6JYxcrmKn3zxlDpNi+LLkSLyvsAj5SdskW+N07yjzTldsORD1g= +=OaHj +-----END PGP PUBLIC KEY BLOCK----- +#+end_src diff --git a/i2p-b32-address.txt b/i2p-b32-address.txt new file mode 100644 index 0000000..a6a40cf --- /dev/null +++ b/i2p-b32-address.txt @@ -0,0 +1 @@ +http://dbtjoqs5jnsyq6m6r35a47jix2v4zeloz5fpxi6htwihpnv3fcxq.b32.i2p diff --git a/index.org b/index.org new file mode 100644 index 0000000..1bd7426 --- /dev/null +++ b/index.org @@ -0,0 +1,28 @@ +#+TITLE: Home +#+created: [2024-03-01 Fri] +#+setupfile: main.setup + +#+begin_center +: +------------------------------------------------------------------------------------------------------------------------+ +: | ██████╗ ██████╗ ███████╗ ███╗ ███╗ ██╗ ██████╗ ██████╗ ██╗ ██████╗ █████╗ ████████╗ ███████╗ ███████╗ | +: | ██╔════╝ ██╔═══██╗ ██╔════╝ ████╗ ████║ ██║ ██╔════╝ ██╔══██╗ ██║ ██╔══██╗ ██╔══██╗ ╚══██╔══╝ ██╔════╝ ██╔════╝ | +: | ██║ ██║ ██║ ███████╗ ██╔████╔██║ ██║ ██║ █████╗ ██████╔╝ ██║ ██████╔╝ ███████║ ██║ █████╗ ███████╗ | +: | ██║ ██║ ██║ ╚════██║ ██║╚██╔╝██║ ██║ ██║ ╚════╝ ██╔═══╝ ██║ ██╔══██╗ ██╔══██║ ██║ ██╔══╝ ╚════██║ | +: | ╚██████╗ ╚██████╔╝ ███████║ ██║ ╚═╝ ██║ ██║ ╚██████╗ ██║ ██║ ██║ ██║ ██║ ██║ ██║ ███████╗ ███████║ | +: | ╚═════╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚══════╝ ╚══════╝ | +: +------------------------------------------------------------------------------------------------------------------------+ +#+end_center + +#+name: link-list.txt +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + +* Latest Blogs +Here is a list of our latest blog posts + +#+name: blog-table-latest-10.txt +|- +|Title|Last Modified|Created| +|- +|[[file:./blogs/test_blog_3.org][Test Blog]]||[2024-02-05 Thu]| diff --git a/link-list.txt b/link-list.txt new file mode 100644 index 0000000..d627749 --- /dev/null +++ b/link-list.txt @@ -0,0 +1,3 @@ +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| diff --git a/links.org b/links.org new file mode 100644 index 0000000..104fb4e --- /dev/null +++ b/links.org @@ -0,0 +1,50 @@ +#+title: Links +#+created: [2024-03-06 Wed] +#+last_modified: [2024-03-06 Wed] +#+setupfile: main.setup + + +#+HTML_HEAD: + + + +#+begin_center +: +------------------------------------------+ +: | '|| '|| | +: | || '' || | +: | || || `||''|, || //` ('''' | +: | || || || || ||<< `'') | +: | .||...| .||. .|| ||. .|| \\. `...' | +: +------------------------------------------+ +#+end_center + +#+name: link-list.txt +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + +#+TOC: headlines 1 + +* cosmicpirates.space +** Clearnet +https://cosmicpirates.space/ + + +** TOR +#+name: tor-onionv3-address.txt +http://acfc2abqv65bdiwimrx74vrlxy6eel66cjlmgqqvdekcrx7ufl3c2cad.onion + + +** I2P +#+name: i2p-b32-address.txt +http://dbtjoqs5jnsyq6m6r35a47jix2v4zeloz5fpxi6htwihpnv3fcxq.b32.i2p diff --git a/main.org b/main.org new file mode 100644 index 0000000..5486b37 --- /dev/null +++ b/main.org @@ -0,0 +1,706 @@ +#+title: Main +#+startup: overview + +* Usage Instructions and Best Practices +** Basic Plan ++ The entire organization of the website is generated by the scripts in this file. ++ These scripts generated org files which are later published in other formats + +** TODO Software and tools ++ [[https://www.gnu.org/software/emacs/][Emacs]] + + [[https://github.com/doomemacs/doomemacs][doomemacs]] +** How to use this file +This file contains all the information for the website and updating the website consist of the following steps +1. Run all scripts on this page by running org-babel-execut-buffer(C-c C-v b) +2. Publish the Project org-Publish (SPC-m P p) +3. Check the local copy of the website +4. If sure sync the local copy with the server copy +** Advice ++ Do not use the #+include tag +Writing dynamic content to files and then using #+include to include them in other files has unreliable link conversion + + +* Static content and Sample code snippets +** Generating the ASCII headings +*** Main Heading +#+name: main-heading-text +#+begin_src python :results output +# Enter the Text you want to be converted +text = "Cosmic - Pirates" + +# Choose the font +font = "ANSI Shadow" +from jimner import jimner +j = jimner() + +result = j.get_banner_from_text(font,text) +print(result) +#+end_src + +#+RESULTS: main-heading-text +: ██████╗ ██████╗ ███████╗ ███╗ ███╗ ██╗ ██████╗ ██████╗ ██╗ ██████╗ █████╗ ████████╗ ███████╗ ███████╗ +: ██╔════╝ ██╔═══██╗ ██╔════╝ ████╗ ████║ ██║ ██╔════╝ ██╔══██╗ ██║ ██╔══██╗ ██╔══██╗ ╚══██╔══╝ ██╔════╝ ██╔════╝ +: ██║ ██║ ██║ ███████╗ ██╔████╔██║ ██║ ██║ █████╗ ██████╔╝ ██║ ██████╔╝ ███████║ ██║ █████╗ ███████╗ +: ██║ ██║ ██║ ╚════██║ ██║╚██╔╝██║ ██║ ██║ ╚════╝ ██╔═══╝ ██║ ██╔══██╗ ██╔══██║ ██║ ██╔══╝ ╚════██║ +: ╚██████╗ ╚██████╔╝ ███████║ ██║ ╚═╝ ██║ ██║ ╚██████╗ ██║ ██║ ██║ ██║ ██║ ██║ ██║ ███████╗ ███████║ +: ╚═════╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚══════╝ ╚══════╝ +: +: +: None +*** About Heading +#+name: about-heading-text +#+begin_src python :results output +# Enter the Text you want to be converted +text = "About" + +# Choose the font +font = "Doom" +from jimner import jimner +j = jimner() + +print(j.get_banner_from_text(font,text)) +#+end_src + +#+RESULTS: about-heading-text +#+begin_example + ___ _ _ + / _ \ | | | | +/ /_\ \ | |__ ___ _ _ | |_ +| _ | | '_ \ / _ \ | | | | | __| +| | | | | |_) | | (_) | | |_| | | |_ +\_| |_/ |_.__/ \___/ \__,_| \__| + + + +None +#+end_example + +*** News Heading +#+name: news-heading-text +#+begin_src python :results output +# Enter the Text you want to be converted +text = "News" + +# Choose the font +font = "Ivrit" +from jimner import jimner +j = jimner() + +print(j.get_banner_from_text(font,text)) +#+end_src + +#+RESULTS: news-heading-text +: _ _ +: | \ | | ___ __ __ ___ +: | \| | / _ \ \ \ /\ / / / __| +: | |\ | | __/ \ V V / \__ \ +: |_| \_| \___| \_/\_/ |___/ +: +: +: None + +*** FAQ Heading + +#+name: FAQ-heading-text +#+begin_src python :results output +# Enter the Text you want to be converted +text = "FAQ" + +# Choose the font +font = "Electronic" +from jimner import jimner +j = jimner() + +print(j.get_banner_from_text(font,text)) +#+end_src + +#+RESULTS: FAQ-heading-text +#+begin_example + ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ +▐░░░░░░░░░░░▌ ▐░░░░░░░░░░░▌ ▐░░░░░░░░░░░▌ +▐░█▀▀▀▀▀▀▀▀▀ ▐░█▀▀▀▀▀▀▀█░▌ ▐░█▀▀▀▀▀▀▀█░▌ +▐░▌ ▐░▌ ▐░▌ ▐░▌ ▐░▌ +▐░█▄▄▄▄▄▄▄▄▄ ▐░█▄▄▄▄▄▄▄█░▌ ▐░▌ ▐░▌ +▐░░░░░░░░░░░▌ ▐░░░░░░░░░░░▌ ▐░▌ ▐░▌ +▐░█▀▀▀▀▀▀▀▀▀ ▐░█▀▀▀▀▀▀▀█░▌ ▐░█▄▄▄▄▄▄▄█░▌ +▐░▌ ▐░▌ ▐░▌ ▐░░░░░░░░░░░▌ +▐░▌ ▐░▌ ▐░▌ ▀▀▀▀▀▀█░█▀▀ +▐░▌ ▐░▌ ▐░▌ ▐░▌ + ▀ ▀ ▀ ▀ + + +None +#+end_example + +*** Links Heading +#+name: Links-heading-text +#+begin_src python :results output +# Enter the Text you want to be converted +text = "Links" + +# Choose the font +font = "Fender" +from jimner import jimner +j = jimner() + +print(j.get_banner_from_text(font,text)) +#+end_src + +#+RESULTS: Links-heading-text +: '|| '|| +: || '' || +: || || `||''|, || //` ('''' +: || || || || ||<< `'') +: .||...| .||. .|| ||. .|| \\. `...' +: +: +: +: None + +*** Contact Heading + +#+begin_src python :results output +# Enter the Text you want to be converted +text = "Contact" + +# Choose the font +font = "Calvin S" +from jimner import jimner +j = jimner() + +print(j.get_banner_from_text(font,text)) +#+end_src + +#+RESULTS: +: ╔═╗ ┌─┐ ┌┐┌ ┌┬┐ ┌─┐ ┌─┐ ┌┬┐ +: ║ │ │ │││ │ ├─┤ │ │ +: ╚═╝ └─┘ ┘└┘ ┴ ┴ ┴ └─┘ ┴ +: +: None + +*** Blog List Heading +#+name: Blogs-heading-text +#+begin_src python :results output +# Enter the Text you want to be converted +text = "Blogs" + +# Choose the font +font = "Roman" +from jimner import jimner +j = jimner() + +print(j.get_banner_from_text(font,text)) +#+end_src + +#+RESULTS: Blogs-heading-text +#+begin_example +oooooooooo. oooo +`888' `Y8b `888 + 888 888 888 .ooooo. .oooooooo .oooo.o + 888oooo888' 888 d88' `88b 888' `88b d88( "8 + 888 `88b 888 888 888 888 888 `"Y88b. + 888 .88P 888 888 888 `88bod8P' o. )88b +o888bood8P' o888o `Y8bod8P' `8oooooo. 8""888P' + d" YD + "Y88888P' + + +None +#+end_example + + +** File Read Write functions +*** Write in the place with a given #+name tag +#+begin_src python +def write_output_to_org_file(file_path, name, output): + with open(file_path, 'r') as file: + data = file.readlines() + + with open(file_path, 'w') as file: + for line in data: + if '#+name: ' in line and name in line: + file.write(line) + file.write(output) + else: + file.write(line) +#+end_src + +#+RESULTS: +: None + +*** Read txt files +#+begin_src python +def read_file(file_path): + try: + with open(file_path, 'r') as file: + file_contents = file.read() + return file_contents + except FileNotFoundError: + return "Not found" +#+end_src + +#+RESULTS: +: None + + +* Administrative-scripts +:PROPERTIES: +:EXPORT_EXCLUDE_TAGS: noexport +:END: +** Blogs +*** Main Blog list +**** Generate Main blog list for [[file:blogs/blog-list.org]] +The following script looks at all org files(except [[blogs/Blog-list.org][blog-list.org]]) in the [[file:blogs]] directory and finds there title, creation date, and last modified date and then displays it in the file in the form of a org table then this table is exported to [[Blogs/blog-table-complete.org]] which ultimately included in [[Blog/Blog-list.org]]. +This could also have been done using the :results_switches parameter but then the result text would have to be in python(ie the same language as the generating block) so instead I used the elisp block [[file:::blog-list-table-result-writer]]. +# begin_src python :results output raw :exports results +#+name: blog-table-generator +#+begin_src python :results output raw :exports none +import os +from datetime import datetime + +# path of the blog directory +blogs_directory = "./blogs/" + + +# get a list of all things in blogs_directory +blog_list = os.listdir(blogs_directory) +max_lines_to_scan = 10 + +#Only include files which are .org and do no include the main Blog-list.org file which serves as an index +b = [] +for i in range(0,len(blog_list)): + if blog_list[i].endswith(".org") and blog_list[i] != 'blog-list.org': + b.append(blog_list[i]) +blog_list=b + +#Sort blog files by last modified time +# blog_list.sort(key=lambda x: os.path.getmtime(blogs_directory+x),reverse=True) + +#prints the heading of the list. +print("|-") +print("|Title|Last Modified|Created|") + +titles = [] +title_found = False +creation_dates = [] +creation_found = False +last_modified_found = False +last_modified_dates = [] +# finds the title, last modified time and creation time +for blog_no in range(0,len(blog_list)): + with open(blogs_directory +'/'+ blog_list[blog_no], "r") as file: + creation_found = False + last_modified_found = False + title_found = False + for line_no in range(max_lines_to_scan): + try: + line = str(next(file)) + except Exception as e: + break + if (line.lower()).startswith('#+title') and title_found == False: + titles.append((line.split(':',1)[1]).strip()) + title_found = True + elif (line.lower()).startswith('#+created') and creation_found == False: + creation_dates.append((line.split(':',1)[1]).strip()) + creation_found = True + elif (line.lower()).startswith('#+last_modified') and last_modified_found == False: + last_modified_dates.append((line.split(':',1)[1]).strip()) + last_modified_found = True + if title_found == True and last_modified_found == True and creation_found == True: + break + if last_modified_found == False: + last_modified_dates.append('unknown') + if creation_found == False: + creation_dates.append('unknown') + if title_found == False: + titles.append('unknown') +print("|-") + +def sort_multiple_lists(*args): + """This function sorts multiple lists according to the sorting of the first list and returns the sorted lists as a tuple""" + + #Extract the firstlist from the argumnts and find its length + first_list = args[0] + list_length = len(first_list) + + # Group all corresponding elements into a list of tuples + tuples_list = list(zip(*args)) + + # Sort the tuples according to there first elements + sorted_tuples_list = sorted(tuples_list,key = lambda x: first_list.index(x[0]),reverse = False) + + # Extract the sorted lists and return them + return(list(zip(*sorted_tuples_list))) + +# print((creation_dates,last_modified_dates,blog_list)) + +# Sort all lists according to creation_date +sorted_creation_dates,sorted_titles,sorted_last_modified_dates,sorted_blog_list = sort_multiple_lists(creation_dates,titles,last_modified_dates,blog_list) + +# print((creation_dates,last_modified_dates,blog_list)) +# creation_dates,blog_list= zip(*sorted(zip(creation_dates,blog_list),reverse = True)) + +#prints the rest of the list +for blog_no in range(0,len(blog_list)): + print( "|"+ '[[file:'+ sorted_blog_list[blog_no]+ ']' + '['+sorted_titles[blog_no] + ']]'+ '|' +sorted_last_modified_dates[blog_no] + '|' + sorted_creation_dates[blog_no] + '|') + +#+end_src + +#+RESULTS: blog-table-generator +|- +|Title|Last Modified|Created| +|- +|[[file:test_blog_3.org][Test Blog]]||[2024-02-05 Thu]| + +**** Write the main blog list in [[file:blogs/blog-table-complete.txt]] +The snippet below writes the table above to a text file [[file:blogs/blog-table-complete.txt]] +#+name: blog-list-table-result-writer +#+begin_src emacs-lisp :results silent +(save-excursion + (org-babel-goto-named-result "blog-table-generator") + (forward-line) + (write-region (point) (org-babel-result-end) "blogs/blog-table-complete.txt") + ) +#+end_src + +**** Read and write the main blog list into [[file:blogs/blog-list.org]] +#+begin_src python :results silent +def write_output_to_org_file(file_path, name, output): + erase_until_newline_after_name(file_path) + with open(file_path, 'r') as file: + data = file.readlines() + + with open(file_path, 'w') as file: + for line in data: + if '#+name: ' in line and name in line: + file.write(line) + file.write(output) + else: + file.write(line) + +def erase_until_newline_after_name(filename): + with open(filename, 'r') as file: + lines = file.readlines() + + with open(filename, 'w') as file: + erase = False + for line in lines: + if "#+name" in line: + erase = True + file.write(line) + if erase: + if line == '\n': + erase = False + file.write(line) + else: + file.write(line) + +def read_file(file_path): + try: + with open(file_path, 'r') as file: + file_contents = file.read() + return file_contents + except FileNotFoundError: + return "Not found" + +write_output_to_org_file( "blogs/blog-list.org", "blog-table-complete.txt", read_file('blogs/blog-table-complete.txt')) + +#+end_src + +*** Latest Blogs +**** Generating a list of 10 latest blogs +This snippet just extracts the first 10 lines from file:blogs/blog-table-complete.txt +#+name: latest-10-blog-table-generator +#+begin_src python :results output raw :exports none +def extract_first_n_lines(file_path, n: int): + """Helper function to extract n lines from a text file""" + lines =[] + with open(file_path,'r') as file: + for _ in range(n): + line = file.readline().rstrip('\n') + if not line: + break + lines.append(line) + return lines + +def prepend_path_to_links(string,path): + """This is a helper function which fixes the relative file paths in a string""" + import re + + # pattern to match file links + pattern = r'\[\[.*?\]' + + # find all links + org_links = re.findall(pattern,string) + + for org_link in org_links: + # Extract the path from the org link + path_retgx = r'\[\[(.*?)\]' + path_match = re.search(path_retgx,org_link) + if path_match: + current_path = path_match.group(1) + + # Prepend the provided path to the current path + new_path = '{}{}'.format(path,current_path) + + # Repalace the old path with the new path in the org link + updated_org_link = org_link.replace(current_path,new_path) + + #Return the replaced string + return(string.replace(org_link,updated_org_link)) + + +list_of_output_lines=extract_first_n_lines("blogs/blog-table-complete.txt",13) + +for line in list_of_output_lines: + line = line.replace('file:','') + modified_line = prepend_path_to_links(line,"file:./blogs/") + if modified_line == None: + print(line) + else: + print(modified_line) +#+end_src + +#+RESULTS: latest-10-blog-table-generator +|- +|Title|Last Modified|Created| +|- +|[[file:./blogs/test_blog_3.org][Test Blog]]||[2024-02-05 Thu]| + +**** Write the latest 10 blogs in a txt file +Write the above result to [[file:blog-table-latest-10.txt]] +#+name: latest-10-blog-table-result-writer +#+begin_src emacs-lisp :results silent +(save-excursion + (org-babel-goto-named-result "latest-10-blog-table-generator") + (forward-line) + (write-region (point) (org-babel-result-end) "blog-table-latest-10.txt") + ) +#+end_src + +**** Read and write the latest 10 blogs table in [[file:index.org]] +#+begin_src python :results silent +def write_output_to_org_file(file_path, name, output): + erase_until_newline_after_name(file_path,name) + with open(file_path, 'r') as file: + data = file.readlines() + + with open(file_path, 'w') as file: + for line in data: + if '#+name: ' in line and name in line: + file.write(line) + file.write(output) + else: + file.write(line) + +def erase_until_newline_after_name(filename,name): + with open(filename, 'r') as file: + lines = file.readlines() + + with open(filename, 'w') as file: + erase = False + for line in lines: + if "#+name" in line and name in line: + erase = True + file.write(line) + if erase: + if line == '\n': + erase = False + file.write(line) + else: + file.write(line) + +def read_file(file_path): + try: + with open(file_path, 'r') as file: + file_contents = file.read() + return file_contents + except FileNotFoundError: + return "Not found" + +write_output_to_org_file( "index.org", "blog-table-latest-10.txt", read_file('blog-table-latest-10.txt')) + +#+end_src + +** The Links table + +#+name: link-list +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + +# Git | Archive | Series | Art | Links | Support | + + +*** Write link-list to [[file:link-list.txt]] + +#+begin_src python :results silent +def read_until_newline_after_name(filename,name): + with open(filename, 'r') as file: + lines = file.readlines() + content = "" + in_name = False + for line in lines: + if "#+name" in line and name in line: + in_name = True + continue + + if in_name: + if line == '\n': + in_name = False + else: + content += line + + return(content) + +def write_to_file(file_path, content): + with open(file_path, 'w') as file: + file.write(content) + +write_to_file('link-list.txt',read_until_newline_after_name('main.org','link-list')) +#+end_src + +*** Read and write the link table in all files in the root directory except [[file:main.org]] +#+begin_src python :results silent +import os + +def write_output_to_org_file(file_path, name, output): + erase_until_newline_after_name(file_path,name) + with open(file_path, 'r') as file: + data = file.readlines() + + with open(file_path, 'w') as file: + for line in data: + if '#+name: ' in line and name in line: + file.write(line) + file.write(output) + else: + file.write(line) + +def erase_until_newline_after_name(filename,name): + with open(filename, 'r') as file: + lines = file.readlines() + + with open(filename, 'w') as file: + erase = False + for line in lines: + if "#+name" in line and name in line: + erase = True + file.write(line) + if erase: + if line == '\n': + erase = False + file.write(line) + else: + file.write(line) + +def read_file(file_path): + try: + with open(file_path, 'r') as file: + file_contents = file.read() + return file_contents + except FileNotFoundError: + return "Not found" + +directory = './' +for filename in os.listdir(directory): + if filename.endswith('.org') and filename != 'main.org': + file_path = os.path.join(directory, filename) + # Process the org file here + write_output_to_org_file( file_path,"link-list.txt", read_file('link-list.txt')) +#+end_src + + +** Onion and I2P addresses +#+name: i2p-b32-address +http://dbtjoqs5jnsyq6m6r35a47jix2v4zeloz5fpxi6htwihpnv3fcxq.b32.i2p + + +#+name: tor-onionv3-address +http://acfc2abqv65bdiwimrx74vrlxy6eel66cjlmgqqvdekcrx7ufl3c2cad.onion + + +*** Write to txt files +#+begin_src python :results silent +def read_until_newline_after_name(filename,name): + with open(filename, 'r') as file: + lines = file.readlines() + content = "" + in_name = False + for line in lines: + if "#+name" in line and name in line: + in_name = True + continue + + if in_name: + if line == '\n': + in_name = False + else: + content += line + + return(content) + +def write_to_file(file_path, content): + with open(file_path, 'w') as file: + file.write(content) + +write_to_file('i2p-b32-address.txt',read_until_newline_after_name('main.org','i2p-b32-address')) +write_to_file('tor-onionv3-address.txt',read_until_newline_after_name('main.org','tor-onionv3-address')) +#+end_src + +*** Read and write addresses to all files +#+begin_src python :results silent +import os + +def write_output_to_org_file(file_path, name, output): + erase_until_newline_after_name(file_path,name) + with open(file_path, 'r') as file: + data = file.readlines() + + with open(file_path, 'w') as file: + for line in data: + if '#+name: ' in line and name in line: + file.write(line) + file.write(output) + else: + file.write(line) + +def erase_until_newline_after_name(filename,name): + with open(filename, 'r') as file: + lines = file.readlines() + + with open(filename, 'w') as file: + erase = False + for line in lines: + if "#+name" in line and name in line: + erase = True + file.write(line) + if erase: + if line == '\n': + erase = False + file.write(line) + else: + file.write(line) + +def read_file(file_path): + try: + with open(file_path, 'r') as file: + file_contents = file.read() + return file_contents + except FileNotFoundError: + return "Not found" + +directory = './' +for root,dir,filename in os.walk(directory): + for file in filename: + if file.endswith('.org') and file != 'main.org': + file_path = os.path.join(root, file) + # Process the org file here + write_output_to_org_file( file_path,"i2p-b32-address.txt", read_file('i2p-b32-address.txt')) + write_output_to_org_file( file_path,"tor-onionv3-address.txt", read_file('tor-onionv3-address.txt')) +#+end_src + + + +* TODO Things to do +** TODO Setup Gitea to host the source code (org files) of the website diff --git a/main.setup b/main.setup new file mode 100644 index 0000000..06f7c3b --- /dev/null +++ b/main.setup @@ -0,0 +1,58 @@ +# -*- mode: org; -*- + +# These are the options for a main page +# The Title is expected to be provided individually at the head of each file for pages with main type +#+startup: overview + +* Org defualts +#+OPTIONS: num:nil ^:{} title:nil toc:nil + +* HTML +The following are the html customiation options + +** Setting the background color to black and Margins +#+HTML_HEAD: +#+HTML_HEAD: + +** Seting up tags +*** p +#+HTML_HEAD: +*** h2 +#+HTML_HEAD: + +*** Setting up the h3 heading +#+HTML_HEAD: + +*** table of contents +#+HTML_HEAD: + +** Alligning center blocks to the center +#+HTML_HEAD: + +** Setting up tables to always be in the center +#+HTML_HEAD: + diff --git a/news.org b/news.org new file mode 100644 index 0000000..488634c --- /dev/null +++ b/news.org @@ -0,0 +1,39 @@ +#+title: News +#+created: [2024-03-01 Fri] +#+last_modified: [2024-03-06 Wed] +#+setupfile: main.setup + +#+begin_center +: +--------------------------------------+ +: | _ _ | +: | | \ | | ___ __ __ ___ | +: | | \| | / _ \ \ \ /\ / / / __| | +: | | |\ | | __/ \ V V / \__ \ | +: | |_| \_| \___| \_/\_/ |___/ | +: +--------------------------------------+ +#+end_center + +#+name: link-list.txt +|------+------+-------+-----+------+-----+-------| +| [[file:index.org][Home]] | [[file:blogs/blog-list.org][Blog]] | [[file:about.org][About]] | [[file:FAQ.org][FAQ]] | [[file:news.org][News]] | [[file:contact.org][PGP]] | [[file:links.org][Links]] | +|------+------+-------+-----+------+-----+-------| + +* TOR and I2P - [2024-03-06 Wed] +Went live on I2P +#+name: i2p-b32-address.txt +http://dbtjoqs5jnsyq6m6r35a47jix2v4zeloz5fpxi6htwihpnv3fcxq.b32.i2p + + +Went live on TOR +#+name: tor-onionv3-address.txt +http://acfc2abqv65bdiwimrx74vrlxy6eel66cjlmgqqvdekcrx7ufl3c2cad.onion + + +* First Light - [2024-03-02 Sat] +Website went live + +Got our first SSL Certificates + + +* Big Bang !! - [2024-03-01 Fri] +The site was created from scratch. diff --git a/tor-onionv3-address.txt b/tor-onionv3-address.txt new file mode 100644 index 0000000..db8ea87 --- /dev/null +++ b/tor-onionv3-address.txt @@ -0,0 +1 @@ +http://acfc2abqv65bdiwimrx74vrlxy6eel66cjlmgqqvdekcrx7ufl3c2cad.onion