From 7f01f154a67a9cab2e99aa5df7a05b7d7509774e Mon Sep 17 00:00:00 2001 From: Renken Date: Sun, 12 May 2024 15:01:12 +0200 Subject: [PATCH] migrate to hugo static site generator --- .gitignore | 5 +- .gitlab-ci.yml | 18 +- .hugo_build.lock | 0 CMakeLists.txt | 59 -- Makefile | 5 - archetypes/default.md | 6 + assets/main.scss | 341 +++++++++ config.toml | 22 + content/_index.html | 3 + .../blog/2022-03-12-Random-rant.md | 18 +- .../blog/2022-03-13_todo_explore_meson.md | 9 +- ...2-04-02_frustration_with_web_developers.md | 13 + ...22-06-01_my_manga_collection_is_growing.md | 20 +- .../blog/2022-07-12_graduation_munic.md | 7 +- .../blog/2022-07-12_switching_to_markdown.md | 11 + .../blog/2023-04-10_conventional_commits.md | 10 +- .../blog/2023-06-18_siga_desktop.md | 10 +- .../2023-12-23_self_hosting_shione_net.md | 13 +- content/misc.md | 13 + .../misc/archived/de/index.md | 159 +++-- content/misc/archived/mqtt/index.md | 136 ++++ content/misc/p/birthday/index.md | 81 +++ .../misc/p/birthday}/nonokasayshi.kra | 0 .../misc/p/birthday}/nonokasayshi.png | 0 .../misc/p/birthday}/originalOCdonotsteal.kra | 0 .../misc/p/birthday}/originalOCdonotsteal.png | 0 .../p/birthday}/renkenbirthdaynichijou.kra | 0 .../p/birthday}/renkenbirthdaynichijou.png | 0 .../renkenbirthdaynichijouSakamotoava.kra | 0 .../renkenbirthdaynichijouSakamotoavaHat.png | 0 .../misc/p/birthday}/renkenwaifu.kra | 0 .../misc/p/birthday}/renkenwaifu.png | 0 deploy.sh | 5 +- gen_blogpost.sh | 48 -- layouts/_default/single.html | 11 + layouts/blog/rss.xml | 41 ++ layouts/blog/section.html | 10 + layouts/blog/single.html | 18 + layouts/index.html | 51 ++ layouts/partials/foot.html | 6 + layouts/partials/head.html | 14 + poetry.lock | 661 ------------------ pyproject.toml | 19 - ...s_511aa33e99371f93fbf403479ebfd32e.content | 1 + ...scss_511aa33e99371f93fbf403479ebfd32e.json | 1 + src/shione/404.rst | 12 - src/shione/CMakeLists.txt | 74 -- src/shione/_static/cirnos.png | 3 - src/shione/_static/manga_1654960885.jpg | 3 - ...renkenbirthdaynichijouSakamotoavaNoHat.png | 3 - src/shione/_static/shione.jpg | 3 - src/shione/_static/theme_overrides.css | 9 - src/shione/conf.py | 143 ---- src/shione/config.toml | 5 - src/shione/index.rst | 50 -- src/shione/log/archive/2022/03/index.rst | 8 - .../log/archive/2022/04/1648898080/index.rst | 15 - .../log/archive/2022/04/1648898929/index.rst | 29 - .../log/archive/2022/04/1649273773/index.rst | 10 - src/shione/log/archive/2022/04/index.rst | 8 - src/shione/log/archive/2022/06/index.rst | 8 - .../log/archive/2022/07/1657663189/index.md | 8 - src/shione/log/archive/2022/07/index.rst | 8 - src/shione/log/archive/2022/index.rst | 8 - src/shione/log/archive/2023/04/index.md | 10 - src/shione/log/archive/2023/06/index.md | 10 - src/shione/log/archive/2023/12/index.md | 10 - src/shione/log/archive/2023/index.md | 10 - src/shione/log/archive/index.rst | 8 - src/shione/log/de/index.rst | 9 - src/shione/log/de/pronunciation.rst | 92 --- src/shione/log/index.rst | 22 - src/shione/log/mqtt/index.rst | 50 -- src/shione/log/mqtt/intro/app_msg.uml | 3 - src/shione/log/mqtt/intro/client.uml | 9 - src/shione/log/mqtt/intro/index.rst | 95 --- src/shione/misc/index.rst | 8 - src/shione/misc/p/index.rst | 70 -- src/shione/plantuml.cfg | 96 --- .../_static/nono.png => static/avatar.png | 0 static/debian.png | 3 + {src/shione/_static => static}/renken.asc | 52 +- 82 files changed, 951 insertions(+), 1858 deletions(-) create mode 100644 .hugo_build.lock delete mode 100644 CMakeLists.txt delete mode 100644 Makefile create mode 100644 archetypes/default.md create mode 100644 assets/main.scss create mode 100644 config.toml create mode 100644 content/_index.html rename src/shione/log/archive/2022/03/1647095845/index.rst => content/blog/2022-03-12-Random-rant.md (90%) rename src/shione/log/archive/2022/03/1647158350/index.rst => content/blog/2022-03-13_todo_explore_meson.md (80%) create mode 100644 content/blog/2022-04-02_frustration_with_web_developers.md rename src/shione/log/archive/2022/06/1654960885/index.rst => content/blog/2022-06-01_my_manga_collection_is_growing.md (53%) rename src/shione/log/archive/2022/07/1657659932/index.rst => content/blog/2022-07-12_graduation_munic.md (77%) create mode 100644 content/blog/2022-07-12_switching_to_markdown.md rename src/shione/log/archive/2023/04/1681123651/index.md => content/blog/2023-04-10_conventional_commits.md (92%) rename src/shione/log/archive/2023/06/1687104871/index.md => content/blog/2023-06-18_siga_desktop.md (93%) rename src/shione/log/archive/2023/12/1703353620/index.md => content/blog/2023-12-23_self_hosting_shione_net.md (93%) create mode 100644 content/misc.md rename src/shione/log/de/ch1.rst => content/misc/archived/de/index.md (50%) create mode 100644 content/misc/archived/mqtt/index.md create mode 100644 content/misc/p/birthday/index.md rename {src/shione/_static => content/misc/p/birthday}/nonokasayshi.kra (100%) rename {src/shione/_static => content/misc/p/birthday}/nonokasayshi.png (100%) rename {src/shione/_static => content/misc/p/birthday}/originalOCdonotsteal.kra (100%) rename {src/shione/_static => content/misc/p/birthday}/originalOCdonotsteal.png (100%) rename {src/shione/_static => content/misc/p/birthday}/renkenbirthdaynichijou.kra (100%) rename {src/shione/_static => content/misc/p/birthday}/renkenbirthdaynichijou.png (100%) rename {src/shione/_static => content/misc/p/birthday}/renkenbirthdaynichijouSakamotoava.kra (100%) rename {src/shione/_static => content/misc/p/birthday}/renkenbirthdaynichijouSakamotoavaHat.png (100%) rename {src/shione/_static => content/misc/p/birthday}/renkenwaifu.kra (100%) rename {src/shione/_static => content/misc/p/birthday}/renkenwaifu.png (100%) delete mode 100755 gen_blogpost.sh create mode 100644 layouts/_default/single.html create mode 100644 layouts/blog/rss.xml create mode 100644 layouts/blog/section.html create mode 100644 layouts/blog/single.html create mode 100644 layouts/index.html create mode 100644 layouts/partials/foot.html create mode 100644 layouts/partials/head.html delete mode 100644 poetry.lock delete mode 100644 pyproject.toml create mode 100644 resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.content create mode 100644 resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.json delete mode 100644 src/shione/404.rst delete mode 100644 src/shione/CMakeLists.txt delete mode 100644 src/shione/_static/cirnos.png delete mode 100644 src/shione/_static/manga_1654960885.jpg delete mode 100644 src/shione/_static/renkenbirthdaynichijouSakamotoavaNoHat.png delete mode 100644 src/shione/_static/shione.jpg delete mode 100644 src/shione/_static/theme_overrides.css delete mode 100644 src/shione/conf.py delete mode 100644 src/shione/config.toml delete mode 100644 src/shione/index.rst delete mode 100644 src/shione/log/archive/2022/03/index.rst delete mode 100644 src/shione/log/archive/2022/04/1648898080/index.rst delete mode 100644 src/shione/log/archive/2022/04/1648898929/index.rst delete mode 100644 src/shione/log/archive/2022/04/1649273773/index.rst delete mode 100644 src/shione/log/archive/2022/04/index.rst delete mode 100644 src/shione/log/archive/2022/06/index.rst delete mode 100644 src/shione/log/archive/2022/07/1657663189/index.md delete mode 100644 src/shione/log/archive/2022/07/index.rst delete mode 100644 src/shione/log/archive/2022/index.rst delete mode 100644 src/shione/log/archive/2023/04/index.md delete mode 100644 src/shione/log/archive/2023/06/index.md delete mode 100644 src/shione/log/archive/2023/12/index.md delete mode 100644 src/shione/log/archive/2023/index.md delete mode 100644 src/shione/log/archive/index.rst delete mode 100644 src/shione/log/de/index.rst delete mode 100644 src/shione/log/de/pronunciation.rst delete mode 100644 src/shione/log/index.rst delete mode 100644 src/shione/log/mqtt/index.rst delete mode 100644 src/shione/log/mqtt/intro/app_msg.uml delete mode 100644 src/shione/log/mqtt/intro/client.uml delete mode 100644 src/shione/log/mqtt/intro/index.rst delete mode 100644 src/shione/misc/index.rst delete mode 100644 src/shione/misc/p/index.rst delete mode 100644 src/shione/plantuml.cfg rename src/shione/_static/nono.png => static/avatar.png (100%) create mode 100644 static/debian.png rename {src/shione/_static => static}/renken.asc (93%) diff --git a/.gitignore b/.gitignore index 0c93a61..3fdb86f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,2 @@ -/build/ -/build_*/ -/.venv/ +/public/ +/resources/ diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 253015d..57021a2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,4 @@ -image: python:3.9.16-slim-bullseye +image: debian:bookworm stages: - analyse @@ -15,35 +15,25 @@ cache: - apt-get dist-upgrade -y - > apt-get install --no-install-recommends -y - curl git - make - plantuml - python3 - python3-distutils + hugo rsync - - ln -s /usr/bin/python3 /usr/bin/python - - curl -sSL https://install.python-poetry.org | python3 - --version 1.4.1 - - export PATH="/root/.local/bin:$PATH" doc: stage: test needs: [] script: - *setup_build - - poetry install -n - - make + - hugo --minify artifacts: paths: - - build/doc + - public pages: stage: deploy rules: - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' needs: ["doc"] - script: - - mv build/doc public artifacts: paths: - public diff --git a/.hugo_build.lock b/.hugo_build.lock new file mode 100644 index 0000000..e69de29 diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index 97d9202..0000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,59 +0,0 @@ -# 3.8.2 required because template/c requires it -cmake_minimum_required(VERSION 3.8.2 FATAL_ERROR) -list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_SOURCE_DIR}/cmake") - -# set build type to release if none is specified -if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - set(CMAKE_BUILD_TYPE Release CACHE STRING - "Choose the type of build." FORCE) - set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS - "Debug" "Release" "MinSizeRel" "RelWithDebInfo") -endif() - -# options -option(LINE_LIMIT "Check files with line_limit." OFF) -option(REGEX_CHECK "Check files with regex_check." OFF) -option(WERROR "Make all warnings into errors." OFF) -if(NOT DEFINED DOC) - set(DOC html CACHE STRING - "The documentation type to generate." FORCE) -endif() - -# disable base languages -unset(PROJECT_LANGUAGES) - -project(shione - VERSION 0.0.0 - DESCRIPTION "shione" - LANGUAGES ${PROJECT_LANGUAGES}) -set(PROJECT_VERSION_SUFFIX "") # alpha/beta/rc, e.g. "-rc0" -set(PROJECT_VERSION "${PROJECT_VERSION}${PROJECT_VERSION_SUFFIX}") -set(PROJECT_AUTHOR "renken") -set(PROJECT_COPYRIGHT "2023, renken") -set(PROJECT_MAIL "renken@shione.net") -# only set CMAKE variant when local name matches CMAKE name -# this avoids clashing when being used as a subproject -if(PROJECT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR) - set(CMAKE_PROJECT_VERSION "${PROJECT_VERSION}") - set(CMAKE_PROJECT_VERSION_SUFFIX "${PROJECT_VERSION_SUFFIX}") - set(CMAKE_PROJECT_AUTHOR "${PROJECT_AUTHOR}") - set(CMAKE_PROJECT_COPYRIGHT "${PROJECT_COPYRIGHT}") - set(CMAKE_PROJECT_MAIL "${PROJECT_MAIL}") -endif() -include(version) - -if(NOT DOC STREQUAL "OFF") - add_subdirectory(doc) -endif() - -if(${LINE_LIMIT}) - include(line_limit) -endif() - -if(${REGEX_CHECK}) - include(regex_check) -endif() - -if(${LINE_LIMIT} OR ${REGEX_CHECK}) - include(check) -endif() diff --git a/Makefile b/Makefile deleted file mode 100644 index 08be00b..0000000 --- a/Makefile +++ /dev/null @@ -1,5 +0,0 @@ -default: html - -.PHONY: html -html: - poetry run sphinx-build -b html src/shione build/doc diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/assets/main.scss b/assets/main.scss new file mode 100644 index 0000000..9b0c5ea --- /dev/null +++ b/assets/main.scss @@ -0,0 +1,341 @@ +$black: #080808; + +html { + font-family: sans-serif; + color: $black; +} + +body { + max-width: 920px; + margin: 0 auto; + padding: 1rem; +} + +h1 { + margin-top: 0; + font-size: 1.5rem; + + small { + display: block; + font-size: 1rem; + } +} + +.index { + display: flex; + flex-direction: row; + + .article-list { + flex-grow: 1; + + .article { + margin-bottom: 1rem; + } + + .date { + display: block; + color: #333; + } + } + + aside { + width: 40%; + + img { + display: block; + margin: 0 auto 1rem; + border-radius: 5px; + } + + dt { + font-size: 0.9rem; + } + + dd { + margin-left: 0; + + &:not(:last-child) { + margin-bottom: 0.5rem; + } + } + } + + @media(max-width: 640px) { + aside { + display: none; + } + } +} + +article { + margin: 0 auto; + max-width: 720px; + line-height: 1.3; + + img, video, iframe { + // !important for asciinema frames + display: block !important; + margin: 0 auto !important; + max-width: 90%; + + @media(max-width: 640px) { + max-width: calc(100% - 2rem); + } + } + + sup { + line-height: 1; + } + + .comment { + margin: 2rem auto 0; + max-width: 80%; + color: #333; + } +} + +.footnotes { + font-size: 0.85rem; +} + +footer { + margin-top: 2rem; + text-align: center; + font-size: 0.8rem; + color: #333; +} + +.float-img { + float: right; + display: inline; + padding-left: 1rem; + + @media(max-width: 640px) { + display: block; + float: none; + padding-left: inherit; + } +} + +pre { + background-color: #eee; + padding: 0.25rem 1rem; + margin: 0 -1rem; + max-width: 100%; + overflow-x: auto; + + .cp { + color: #800; + } + + .k { + color: #008; + } + + .kt, .kd, .kc { + color: #44F; + } + + .s { + color: #484; + font-style: italic; + } + + .cm, .c1 { + color: #333; + font-style: italic; + } + + .gi { + color: green; + } + + .gd { + color: red; + } + + .gu { + color: blue; + } +} + +.webring { + margin-top: 2rem; + + h2 { + font-size: 1.2rem; + } + + .articles { + display: flex; + + @media(max-width: 640px) { + flex-direction: column; + } + } + + .title { + margin: 0; + } + + .article { + flex: 1 1 0; + display: flex; + flex-direction: column; + background: #eee; + padding: 0.5rem; + + margin: 0 0.5rem; + + @media(max-width: 640px) { + margin: 0.5rem 0; + } + } + + .article:first-child { + margin-left: 0; + } + + .article:last-child { + margin-right: 0; + } + + .summary { + font-size: 0.8rem; + flex: 1 1 0; + } + + .attribution { + float: right; + font-size: 0.8rem; + color: #555; + line-height: 3; + } + + .date { + color: black; + } +} + +summary { + cursor: pointer; + background-color: #eee; + padding: 0.25rem 1rem; + margin: 0 -1rem; +} + +details[open] { + border-bottom: 1rem solid #eee; + margin: 0 -1rem 1rem; + padding: 0 1rem; +} + +.text-center { + text-align: center; +} + +blockquote { + border-left: 5px solid #777; + background-color: #eee; + padding: 0 1rem; + margin-left: 0; + margin-right: 0; + + blockquote { + margin-right: 0; + margin-left: 0; + } +} + +dl { + display: grid; + grid-template-columns: auto 1fr; + grid-gap: 0.2rem 1rem; + + dt { + font-weight: bold; + grid-column-start: 1; + } + + dd { + grid-column-start: 2; + margin: 0; + } +} + +.alert { + padding: 0.5rem; + border: 1px solid transparent; + margin-bottom: 1rem; + + &.alert-danger { + background: #f8d7da; + color: #721c24; + border-color: #f5c6cb; + } + + &.alert-info { + background: #d1ecf1; + color: #0c5460; + border-color: #bee5eb; + } +} + +table { + color: #333; + background: white; + border: 1px solid grey; + font-size: 12pt; + border-collapse: collapse; +} +table thead th, +table tfoot th { + background: rgba(0,0,0,.1); +} +table caption { + padding:.5em; +} +table th, +table td { + padding: .5em; + border: 1px solid lightgrey; +} +td.red { + background: #F8D7DA; +} +td.yellow { + background: #FFF3CD; +} +td.blue { + background: #CFE2FF; +} + +.error, +.info, +.warn +.todo { + background: #efefef; + border-left-style: solid; + border-left-width: 0.4rem; + border-radius: 0.2rem; + margin-left: 0; + > p { + padding: 0.5rem 1rem; + } +} + +.warn { + border-left-color: #ffbb00; +} + +.info { + border-left-color: #0000ee; +} + +.error { + border-left-color: #ee0000; +} + +.todo { + border-left-color: #eeee00; +} diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..de11d1d --- /dev/null +++ b/config.toml @@ -0,0 +1,22 @@ +baseURL = "https://shione.net/" +title = "shione" +pygmentsUseClasses = true +uglyurls = true +disablePathToLower = true +rssLimit = 10 + +[permalinks] +blog = "/:year/:month/:day/:slugorfilename" + +[markup.goldmark.renderer] +unsafe = true + +[markup.tableOfContents] +ordered = true + +[outputs] +section = ["HTML", "RSS"] + +[markup.goldmark.parser.attribute] + block = true + title = true diff --git a/content/_index.html b/content/_index.html new file mode 100644 index 0000000..31b6d32 --- /dev/null +++ b/content/_index.html @@ -0,0 +1,3 @@ +--- +title: renken's weblog +--- diff --git a/src/shione/log/archive/2022/03/1647095845/index.rst b/content/blog/2022-03-12-Random-rant.md similarity index 90% rename from src/shione/log/archive/2022/03/1647095845/index.rst rename to content/blog/2022-03-12-Random-rant.md index 974178e..aac3630 100644 --- a/src/shione/log/archive/2022/03/1647095845/index.rst +++ b/content/blog/2022-03-12-Random-rant.md @@ -1,10 +1,11 @@ -Random rant -=========== +--- +title: Random rant +date: 2022-03-12 +slug: random-rant +--- -.. contents:: -The lurking problem -------------------- +## The lurking problem It's been quite a while since I wrote my last blog post. While I've been always thinking that the reason behind this was the lack of having interesting/advanced @@ -18,16 +19,15 @@ add, how I lack expertise in such advanced topics... etc, but in reality, I'm just holding myself from doing so because it's easier not to engage, it's easier to be lazy. -Imperfection ------------- +## Imperfection + It's easier to find excuses as for why my next project will suck, not be used by others and so on compared to simply working on it. I think my main problem is losing motivation over time, I need to figure out how to get motivation out of the equation and possibly discipline myself more. -Close-up --------- +## Close-up Oh well, my thoughts are still unclear and messy but I will push them online anyway. It's something I plan on working on over time not ship only after it's diff --git a/src/shione/log/archive/2022/03/1647158350/index.rst b/content/blog/2022-03-13_todo_explore_meson.md similarity index 80% rename from src/shione/log/archive/2022/03/1647158350/index.rst rename to content/blog/2022-03-13_todo_explore_meson.md index df112de..0d1c094 100644 --- a/src/shione/log/archive/2022/03/1647158350/index.rst +++ b/content/blog/2022-03-13_todo_explore_meson.md @@ -1,7 +1,8 @@ -TODO: Explore meson -=================== - -.. contents:: +--- +title: 'TODO: Explore meson' +date: 2022-03-13 +slug: todo-explore-meson +--- I should definitely play around with meson one day, maybe add template/c support for it. I think working on template/c is a good entry to understanding how build diff --git a/content/blog/2022-04-02_frustration_with_web_developers.md b/content/blog/2022-04-02_frustration_with_web_developers.md new file mode 100644 index 0000000..11ec2cf --- /dev/null +++ b/content/blog/2022-04-02_frustration_with_web_developers.md @@ -0,0 +1,13 @@ +--- +title: Frustration with web developers +date: 2022-04-02 +slug: frustration-with-web-devs +--- + +Past few days, at least 5 websites rejected my email address +`mail@renken.systems` because it doesn't match their regular expression. I +might consider switching to something shorter/common that isn't taken already. + +I was thinking of renken.no maybe but that would imply I am from/live in Norway +which isn't an assumption I want others to have. I'll see what I can do about +this. diff --git a/src/shione/log/archive/2022/06/1654960885/index.rst b/content/blog/2022-06-01_my_manga_collection_is_growing.md similarity index 53% rename from src/shione/log/archive/2022/06/1654960885/index.rst rename to content/blog/2022-06-01_my_manga_collection_is_growing.md index 42360eb..f6c563d 100644 --- a/src/shione/log/archive/2022/06/1654960885/index.rst +++ b/content/blog/2022-06-01_my_manga_collection_is_growing.md @@ -1,10 +1,13 @@ -My manga collection is growing! -=============================== +--- +title: My manga collection is growing! +date: 2022-06-01 +slug: my-manga-collection-growing +--- -I visited fnac, https://www.fnac.com/, around a month ago or so and noticed that -they sell manga. I wasn't aware that the French are huge weebs, they have a wide -variety of titles, separated by genres mainly shounen, shoujo and seinen and -*all* of them are in French. +I visited [fnac](https://www.fnac.com) around a month ago or so and noticed +that they sell manga. I wasn't aware that the French are huge weebs, they have +a wide variety of titles, separated by genres mainly shounen, shoujo and seinen +and *all* of them are in French. While the majority of their selection consists of popular and recent titles out there, you might also find niche ones like Yokohama Kaidashi Kikou and Yotsuba. @@ -16,7 +19,4 @@ Yesterday I ended up buying YKK's first three volumes because I figured gazing at the landscapes on paper would make me appreciate it even more and I was right! They're also helping me improve my French too which is nice. -.. image:: ../../../../../_static/manga_1654960885.jpg - :name: My manga collection 11/06/2022 - :alt: My manga collection 11/06/2022 - :align: center +![My manga collection 11/06/2022](/blog/2022-06-11_manga_collection.jpg) diff --git a/src/shione/log/archive/2022/07/1657659932/index.rst b/content/blog/2022-07-12_graduation_munic.md similarity index 77% rename from src/shione/log/archive/2022/07/1657659932/index.rst rename to content/blog/2022-07-12_graduation_munic.md index c3e4f35..5a19b29 100644 --- a/src/shione/log/archive/2022/07/1657659932/index.rst +++ b/content/blog/2022-07-12_graduation_munic.md @@ -1,5 +1,8 @@ -Graduation and moving forward with Munic -======================================== +--- +title: Graduation and moving forward with Munic +date: 2022-07-12 +slug: graduation-munic +--- I graduated from my school last Thursday, I am officially a certified (tm) engineer! Consequently, I'm joining Munic as a full-time employee after my diff --git a/content/blog/2022-07-12_switching_to_markdown.md b/content/blog/2022-07-12_switching_to_markdown.md new file mode 100644 index 0000000..c325331 --- /dev/null +++ b/content/blog/2022-07-12_switching_to_markdown.md @@ -0,0 +1,11 @@ +--- +title: Switching to Markdown +date: 2022-07-12T23:59:00+02:00 +slug: switching-to-markdown +--- + +Sphinx supports Markdown through `myst-parser` as documented +[here](https://www.sphinx-doc.org/en/master/usage/markdown.html). This is nice +because most of the time I am writing Markdown especially on GitLab, I don't +have a hard dependency on RestructuredText itself meaning I can safely just +make the switch. diff --git a/src/shione/log/archive/2023/04/1681123651/index.md b/content/blog/2023-04-10_conventional_commits.md similarity index 92% rename from src/shione/log/archive/2023/04/1681123651/index.md rename to content/blog/2023-04-10_conventional_commits.md index 1aa67b4..15ed2f6 100644 --- a/src/shione/log/archive/2023/04/1681123651/index.md +++ b/content/blog/2023-04-10_conventional_commits.md @@ -1,8 +1,8 @@ -# Conventional commits -*Written 2023-04-10 12:47* - -```{contents} -``` +--- +title: Conventional commits +date: 2023-04-10T12:47:00+01:00 +slug: conventional-commits +--- I recently came across [conventional commits](https://www.conventionalcommits.org/en/v1.0.0/) and I find the idea diff --git a/src/shione/log/archive/2023/06/1687104871/index.md b/content/blog/2023-06-18_siga_desktop.md similarity index 93% rename from src/shione/log/archive/2023/06/1687104871/index.md rename to content/blog/2023-06-18_siga_desktop.md index e26e31e..00fc981 100644 --- a/src/shione/log/archive/2023/06/1687104871/index.md +++ b/content/blog/2023-06-18_siga_desktop.md @@ -1,8 +1,8 @@ -# Siga desktop has joined the game. -*Written 2023-06-18 18:14* - -```{contents} -``` +--- +title: Siga desktop has joined the game. +date: 2023-06-18T18:14:00 +slug: siga-desktop +--- Around the 25th of May, I ended up building siga in its Desktop PC form. It's entirely based on AMD because I wanted the best possible compatibility with diff --git a/src/shione/log/archive/2023/12/1703353620/index.md b/content/blog/2023-12-23_self_hosting_shione_net.md similarity index 93% rename from src/shione/log/archive/2023/12/1703353620/index.md rename to content/blog/2023-12-23_self_hosting_shione_net.md index 4b86b4b..e4cd9bf 100644 --- a/src/shione/log/archive/2023/12/1703353620/index.md +++ b/content/blog/2023-12-23_self_hosting_shione_net.md @@ -1,10 +1,11 @@ -# Self-hosting shione.net -*Written 2023-12-23 18:47* +--- +title: Self-hosting shione.net +date: 2023-12-23T18:47:00 +slug: self-hosting-shione +--- -```{contents} -``` - -I recently managed to get my hands on a mini PC, [Union NiPoGi CK10 - 10810U](https://www.notebookcheck.net/NiPoGi-CK10-with-the-Intel-Core-i7-10810U-reviewed-Small-office-PC-offering-space-for-three-SSDs.671211.0.html) +I recently managed to get my hands on a mini PC, [Union NiPoGi CK10 - +10810U](https://www.notebookcheck.net/NiPoGi-CK10-with-the-Intel-Core-i7-10810U-reviewed-Small-office-PC-offering-space-for-three-SSDs.671211.0.html) thanks to my friend Lucien and thought it'd be a good opportunity to host my own server to experiment with a bunch of stuff. diff --git a/content/misc.md b/content/misc.md new file mode 100644 index 0000000..6c87067 --- /dev/null +++ b/content/misc.md @@ -0,0 +1,13 @@ +--- +title: Miscellaneous links +layout: page +--- + +# Multimedia + +- [Birthday drawings](/misc/p/birthday.html) + +# Archived + +- [German notes](/misc/archived/de.html) +- [MQTT notes](/misc/archived/mqtt.html) diff --git a/src/shione/log/de/ch1.rst b/content/misc/archived/de/index.md similarity index 50% rename from src/shione/log/de/ch1.rst rename to content/misc/archived/de/index.md index 223acee..5b8ac3b 100644 --- a/src/shione/log/de/ch1.rst +++ b/content/misc/archived/de/index.md @@ -1,53 +1,34 @@ -Chapter 1: introduction -======================= +--- +title: German notes +date: 2019-04-23 +layout: page +--- -Cognates --------- +An abandoned series of posts highlighting things I have learned about the +German language. + +# Chapter 1: introduction + +## Cognates A cognate is a word that is derived from the same original form such as kühl and cool. We'll explore some consonant relationships that exist between German and English to make guessing more accurate and faster but of course, always consider checking the dictionary for the definitive answer. -.. list-table:: Cognates - :header-rows: 1 - - * * German - * English - * Examples - * * f, ff (medial or final) - * p - * hoffen - to hope, scharf - sharp - * * pf - * p, pp - * Apfel - apple, Pfeife - pipe - * * b (medial or final) - * v or f - * geben - to give, halb - half - * * d - * th - * Ding - thing - * * ch - * k - * Buch - book, machen - to make, suchen - to seek - * * cht - * ght - * Macht - might, Sicht - sight, Recht - right, Nacht - night - * * g - * y or i - * sagen - to say, legen - to lay, Nagel - nail, fliegen - to fly - * * k - * c - * kommen - to come, kritisch - critical - * * s, ss, ß (medial or final) - * t - * hassen - to hate, grüßen - to greet, besser - better, Fuß - foot - * * tz, z - * t - * Katze - cat - * * t - * d - * trinken - to drink, kalt - cold, Tochter - daughter +| German | English | Examples | +| --- | --- | --- | +| f, ff (medial or final) | p | hoffen - to hope, scharf - sharp | +| pf | p, pp | Apfel - apple, Pfeife - pipe | +| b (medial or final) | v or f | geben - to give, halb - half | +| d | th | Ding - thing | +| ch | k | Buch - book, machen - to make, suchen - to seek | +| cht | ght | Macht - might, Sicht - sight, Recht - right, Nacht - night | +| g | y or i | sagen - to say, legen - to lay, Nagel - nail, fliegen - to fly | +| k | c | kommen - to come, kritisch - critical | +| s, ss, ß (medial or final) | t | hassen - to hate, grüßen - to greet, besser - better, Fuß - foot | +| tz, z | t | Katze - cat | +| t | d | trinken - to drink, kalt - cold, Tochter - daughter | Note that sometimes it may require some flexibility with vowels to get the correct word e.g., hören - to hear. Try to figure out the following words: Haus, @@ -71,8 +52,7 @@ Book titles! Buchtitel, apparently used for both singular and plural. * Yasmina Khadra, was der Tag der Nacht schuldet (haven't read it yet by the way). -Genders -------- +## Genders .. note:: Find a way to ease the process of memorizing these? being able to @@ -85,22 +65,14 @@ It's very important to know what your subject's gender is to understand the context of the passage in hand. The corresponding German definite articles are as follows -.. list-table:: Genders articles - :header-rows: 1 +| Gender | Article | +| --- | --- | +| Masculine | der | +| Feminine | die | +| Neuter | das | +| Plural | die | - * * Gender - * Article - * * Masculine - * der - * * Feminine - * die - * * Neuter - * das - * * Plural - * die - -Masculine -^^^^^^^^^ +### Masculine 1. Nouns denoting male beings. 2. Most nouns ending with -er that are agents of a specific activity e.g., der @@ -110,20 +82,19 @@ Masculine Socialismus (Socialism). 5. Points of compass. Norden, Süden, Oster und Westen. -Feminine -^^^^^^^^ +### Feminine + 1. Nouns denoting female beings. 2. Nouns of most trees, fruits and flowers. Look your favorites up! 3. Nouns ending with -er, -ie, -ik, -in, -ion, -hiet, kiet, -schaft, -tät, -ung, -ur e.g., die Gesundheit (health), die Gesellschaft (society) und die Hoffung. -Neuter -^^^^^^ +### Neuter -.. note:: - Diminutive nouns usually have an umlaut if the stem vowel is a, o, u or - au so a becomes ä... +> Diminutive nouns usually have an umlaut if the stem vowel is a, o, u or au +so a becomes ä... +{.info} 1. Nouns with diminutive endings -chen, -lein e.g., das Buch -> das Büchlein, das Männlein. @@ -131,8 +102,7 @@ Neuter 3. Infinitives used as a noun e.g., das Kommen. 4. Nouns ending with -ium, -um e.g., das Vism. -Compounds ---------- +## Compounds New words in German sometimes can be formed by combining simpler words. Some of these words can be particularly graphic. For example. @@ -154,5 +124,52 @@ difficult... unterteilt. Die Länder habt lokal Kontrolle uber Bildung und jeder hat sein Landesregierung. -Plural ------- +# Chapter 2: Pronunciation + +This, in addition to the tables provided by Colloquial German, should serve as a +good document for how German pronunciation is like. Of course, you *should* +always look up the pronunciation in its audio format and/or learn how to read +IPA table efficiently to improve your pronunciation skills. + +This is also helpful to have a, sometimes misleading, sometimes correct guess of +the word's definition simply by saying them. For example, jung is pronounced +young and indeed does mean young. + +Keep in mind that all German nouns are capitalized e.g., Buch for book. + +## Vowels + +> Keep in mind that I myself don't know most of these words. They're used + to simply give an example on how German sounds like in a way. It'd be + good if you pick up a word or two from this guide. I don't think you'll + be revisiting this page much. Maybe I'll consider updating the tables + with better/more fitting examples that you *may* find interesting. +{.info} + +Vowels are either short or long like most languages. They are long when + +* They are doubled: Paar (Pair), Haar (hair), Schnee (Snow). +* They are followed by h: sehen (to look. Sehen is the noun view, notice the + capitalization matters!), Jahr (year), Ohr (ear). +* They are followed by a single consonant: gut (good), rot (red). + +They are shower when + +* They are followed a double consonant: Bett (bed), Mann (man), hoffen (to + hope). +* They are followed by two or more consonants: sitzen (to sit), ernst (serious, + look it up!). + +| Vowel | Type | English equivalent sound | German words | +| --- | --- | --- | --- | +| a | long | father | Vater, haben, sagen | +| a | short | hot | Vasser, Hand, alt | +| e | long | may | See, geben | +| e | short | let | Ende | +| i | long | greet | Tiger, Universität | +| i | short | sit | ist, dick, Mitte, Mittag, Mittwoch | +| ie | long | similar to here, look up how the following are pronounced. | Bier, hier, fliegen, liegen | +| o | long | open | Sohn, Brot, Segelboot | +| o | song | Sonne, Sommer | (none) | +| u | long | dune | Blume, Pudel, Handschuh | +| u | short | bush | Mutter, und, unter | diff --git a/content/misc/archived/mqtt/index.md b/content/misc/archived/mqtt/index.md new file mode 100644 index 0000000..5da6536 --- /dev/null +++ b/content/misc/archived/mqtt/index.md @@ -0,0 +1,136 @@ +--- +title: MQTT notes +layout: page +--- + +I first came across the MQTT protocol when I was looking for possible +alternative ideas and implementations to Syncplay. The key concept was that +video players such as mpv would connect to a central server, share information +about their media they're playing and synchronize their state with other peers. + +MQTT stands for Message Queuing Telemetry Transport and is an open OASIS and ISO +standard. It is designed to be lightweight and primarily for as a +publish-subscribe protocol which is what synchronization-based software such as +Syncplay *should* use. Another aspect of MQTT that makes it a viable design +option for media synchronization is its simplicity of design. That leaves the +implementer with a small well-defined logic to implement which means higher +chances of an efficient implementation and less unintentional errors. It also is +reasonable to go for a minimal transport protocol to provide a minimal service +such as media synchronization. + +I'll be reading through the standard version 5.0.0 published in 07 March 2019 +and trying to provide a UML-based representation of the MQTT standard with few +notes to the C implementation. Keep in mind that at the time of writing this, I +do not plan on implementing myself but I believe these notes would be helpful +for anyone wishing to implement MQTT themselves. + +Another note to keep in mind is that I do not have prior MQTT experience so I'm +not familiar with "best solutions" or "practice workarounds". I'll solely view +MQTT through the lens of the standards I have downloaded. Possible notes *may* +be added in the future. + +* Keep in mind that I'm by no means an expert and have very little experience + with real-word software. I'll be researching things I do not understand and + share my explanation here if possible. I suggest you double-check every + information provided here as well in order to spot any misconception or + misunderstanding. + +* Do note expect a strict and regulated publishing schedule, I'll only read the + standard and write about it in my free time whenever I wish. You *may* + contribute if you wish too. Alternatively you may advance on your own. + +* I *may not* respect the styling and indentation of the standard e.g., I *may* + choose to merge a sub-header back with its parent-head. + +Below are notes about each chapter in separate pages in the order provided by +the standard. + +# Introduction + +## Terminology + +MQTT is a server-client protocol in which all clients *must* connect to a server +in order to exchange information which have to go through the server. + +## Network connection + +The standard defines network connection as the following. + +> A construct provided by the underlying transport protocol that is being + used by MQTT.
+> * It connects the Client to the Server. +> * It provides the means to send an ordered, lossless, stream of bytes in + both directions. + +I believe that this definition was mainly provided as to not limit the network +connection, specifically the network protocol, to TCP as it is possibly the most +common network protocol used when implementing MQTT. You can emulate the bullet +points under non-TCP network protocols e.g., UDP and implement MQTT on top of +it. + +## Session + +> A stateful interaction between a Client and a Server. Some Sessions last + only as long as the Network Connection, others can span multiple + consecutive Network Connections between a Client and a Server. + +This allows for the possibility of attempting re-connection after it has been +lost to preserve the same session. + +## Application message + +The information sent between clients through servers is called the application +message which is carried by the MQTT protocol across the network. It contains +payload data, a Quality of Service (QoS), a collection of properties and a topic +name. + +### Subscription + +A subscription comprises a topic filter and a maximum QoS. A subscription is +associated with a single session. A session can contain more than one +subscription. Each subscription within a session has a different topic filter. + +Shared subscription can be associated with more than one session. I assume this +is used for the case of multiple servers? I don't see the need to have multiple +sessions to the same server but it is allowed by the standard. + +Wildcard subscription is a subscription with a topic filter containing one or +more wildcard characters. This allows the subscription to match more than one +topic name. Basically ``*`` in regular expression. + +> TODO: write UML diagram about user <-- session 0..* -- 1..1 subscription +{.todo} + +### Topic name + +The label attached to an application message which is matched against the +subscriptions known to the server. This is up to the application to use it +efficiently. In the case of media synchronization, would you rather use do +central topics e.g., ``/media/filename`` and users push to that topic or would +you do per-user topics ``/renken/media/filename`` and only ``renken`` can +publish to that topic. Similar ideas to that come to mind I guess. + +### Topic filter + +An expression contained in a subscription to indicate an interest in one or more +topics. A topic filter can include wildcard characters. + +### Client + +As discussed before, in MQTT, the client can only communicate with a server and +not with other clients. Note that the client is not limited to a single server. +It also not limited to a fixed number of application messages published or +requested. + +The server acts as an intermediary between clients which publish application +messages and clients which have made subscriptions. + +
+ client UML diagram +
+ client UML diagram +
+
diff --git a/content/misc/p/birthday/index.md b/content/misc/p/birthday/index.md new file mode 100644 index 0000000..7af81e5 --- /dev/null +++ b/content/misc/p/birthday/index.md @@ -0,0 +1,81 @@ +--- +title: Birthday drawings +layout: page +--- + +# Happy birthday!! + +I'd like to thank pika and verm for this lovely picture, it never fails to put +a smile on my face. Hacker/Artist pika can be found on +[Pixiv](https://www.pixiv.net/en/users/46770896). + + +
+ nonoka-birthday +
+ renkenwaifu.kra +
+
+ +# Wednyasday's nyan night!! + +pikanyan drew another picture of nonoka on a late Wednesday night comfy stream +and it's amazing. I love it! + +
+ nonoka-wednyasday +
+ nonokasayshi.kra +
+
+ +# Original Do NOT Steal!! + +pikapyon drew yet another amazing picture, this time with the three of us +together. From left to right. + +1. ximin @ [ximinity.net](https://ximinity.net) +2. verm @ [mel.vin](https://mel.vin), spam him with emails if his website still + doesn't have a proper homepage +3. renken @ [shione.net](https://shione.net) + +
+ nonoka-wednyasday +
+ originalOCdonotsteal.kra +
+
+ +# Happy nichijou birthday!! + +pikadesu picked an amazing theme for this year's birthday's gift, nichijou! I +really love it and I'm looking forward to using sakamoto as my avatar in case +nonoka was considered too much for wörk :^) Thank you very much for this +pikadesu! + +
+ nonoka-wednyasday +
+ renkenbirthdaynichijou.kra +
+
diff --git a/src/shione/_static/nonokasayshi.kra b/content/misc/p/birthday/nonokasayshi.kra similarity index 100% rename from src/shione/_static/nonokasayshi.kra rename to content/misc/p/birthday/nonokasayshi.kra diff --git a/src/shione/_static/nonokasayshi.png b/content/misc/p/birthday/nonokasayshi.png similarity index 100% rename from src/shione/_static/nonokasayshi.png rename to content/misc/p/birthday/nonokasayshi.png diff --git a/src/shione/_static/originalOCdonotsteal.kra b/content/misc/p/birthday/originalOCdonotsteal.kra similarity index 100% rename from src/shione/_static/originalOCdonotsteal.kra rename to content/misc/p/birthday/originalOCdonotsteal.kra diff --git a/src/shione/_static/originalOCdonotsteal.png b/content/misc/p/birthday/originalOCdonotsteal.png similarity index 100% rename from src/shione/_static/originalOCdonotsteal.png rename to content/misc/p/birthday/originalOCdonotsteal.png diff --git a/src/shione/_static/renkenbirthdaynichijou.kra b/content/misc/p/birthday/renkenbirthdaynichijou.kra similarity index 100% rename from src/shione/_static/renkenbirthdaynichijou.kra rename to content/misc/p/birthday/renkenbirthdaynichijou.kra diff --git a/src/shione/_static/renkenbirthdaynichijou.png b/content/misc/p/birthday/renkenbirthdaynichijou.png similarity index 100% rename from src/shione/_static/renkenbirthdaynichijou.png rename to content/misc/p/birthday/renkenbirthdaynichijou.png diff --git a/src/shione/_static/renkenbirthdaynichijouSakamotoava.kra b/content/misc/p/birthday/renkenbirthdaynichijouSakamotoava.kra similarity index 100% rename from src/shione/_static/renkenbirthdaynichijouSakamotoava.kra rename to content/misc/p/birthday/renkenbirthdaynichijouSakamotoava.kra diff --git a/src/shione/_static/renkenbirthdaynichijouSakamotoavaHat.png b/content/misc/p/birthday/renkenbirthdaynichijouSakamotoavaHat.png similarity index 100% rename from src/shione/_static/renkenbirthdaynichijouSakamotoavaHat.png rename to content/misc/p/birthday/renkenbirthdaynichijouSakamotoavaHat.png diff --git a/src/shione/_static/renkenwaifu.kra b/content/misc/p/birthday/renkenwaifu.kra similarity index 100% rename from src/shione/_static/renkenwaifu.kra rename to content/misc/p/birthday/renkenwaifu.kra diff --git a/src/shione/_static/renkenwaifu.png b/content/misc/p/birthday/renkenwaifu.png similarity index 100% rename from src/shione/_static/renkenwaifu.png rename to content/misc/p/birthday/renkenwaifu.png diff --git a/deploy.sh b/deploy.sh index 614c16e..b007fa6 100755 --- a/deploy.sh +++ b/deploy.sh @@ -2,10 +2,11 @@ set -eu -make +hugo --minify + rsync \ -a \ --delete \ --progress \ - build/doc/ \ + public/ \ 'root@shione:/var/www/html/www.shione.net' diff --git a/gen_blogpost.sh b/gen_blogpost.sh deleted file mode 100755 index e33420f..0000000 --- a/gen_blogpost.sh +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/sh - -set -eu - -timestamp="$(date '+%s')" -title="$(date '+%Y-%m-%d %H:%M' --date="@$timestamp")" -year="$(date '+%Y')" -month="$(date '+%m')" - -archive=./src/shione/log/archive - -for dir in "$archive" "$archive/$year" "$archive/$year/$month"; do - if [ ! -d "$dir" ]; then - mkdir -- "$dir" - name="$(basename -- "$dir")" - if [ "$name" = archive ]; then - name=Archive - fi - <<-EOF cat - >"$dir/index.md" - # $name - - \`\`\`{toctree} - --- - maxdepth: 1 - glob: - --- - - */index - \`\`\` - EOF - fi -done - -mkdir -- "$archive/$year/$month/$timestamp" - - -<<-EOF cat - >"$archive/$year/$month/$timestamp/index.md" - # $title - *Written $title* - - \`\`\`{contents} - \`\`\` - - ## TODO -EOF - -printf '%s\n' "$archive/$year/$month/$timestamp" -exit 0 diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 0000000..cc2c399 --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,11 @@ +{{ partial "head.html" . }} + +

+ {{$.Title}} +

+ +
+ {{.Content}} +
+ +{{ partial "foot.html" }} diff --git a/layouts/blog/rss.xml b/layouts/blog/rss.xml new file mode 100644 index 0000000..ce991d4 --- /dev/null +++ b/layouts/blog/rss.xml @@ -0,0 +1,41 @@ +{{- $pctx := . -}} +{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}} +{{- $pages := slice -}} +{{- if or $.IsHome $.IsSection -}} +{{- $pages = $pctx.RegularPages -}} +{{- else -}} +{{- $pages = $pctx.Pages -}} +{{- end -}} +{{- $limit := .Site.Config.Services.RSS.Limit -}} +{{- if ge $limit 1 -}} +{{- $pages = $pages | first $limit -}} +{{- end -}} +{{- printf "" | safeHTML }} + + + renken's weblog + https://shione.net + Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }} + Hugo -- gohugo.io{{ with .Site.LanguageCode }} + {{.}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Author.email }} + {{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}}{{ with .Site.Copyright }} + {{.}}{{end}}{{ if not .Date.IsZero }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}{{ end }} + {{ with .OutputFormats.Get "RSS" }} + {{ printf "" .Permalink .MediaType | safeHTML }} + {{ end }} + {{ range $pages }} + {{- if .OutputFormats.Get "HTML" -}} + + {{ .Title }} + {{ .Permalink }} + {{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }} + {{ with .Site.Author.email }}{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}{{end}} + {{ .Permalink }} + {{- .Content | html -}} + + {{- end -}} + {{ end }} + + diff --git a/layouts/blog/section.html b/layouts/blog/section.html new file mode 100644 index 0000000..7819c86 --- /dev/null +++ b/layouts/blog/section.html @@ -0,0 +1,10 @@ + + + +{{.Title}} +{{ $style := resources.Get "main.scss" | resources.ToCSS | resources.Minify | resources.Fingerprint }} + + +
+ {{.Content}} +
diff --git a/layouts/blog/single.html b/layouts/blog/single.html new file mode 100644 index 0000000..2a04523 --- /dev/null +++ b/layouts/blog/single.html @@ -0,0 +1,18 @@ +{{ partial "head.html" . }} + +

+ {{$.Title}} + + {{.Date.Format "January 2, 2006"}} + on + {{.Site.Title}} + +

+ +
+
+ {{.Content}} +
+
+ +{{ partial "foot.html" }} diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 0000000..78d4bbd --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,51 @@ +{{ partial "head.html" . }} + +
+
+

{{$.Title}}

+ + {{ range (where (where .Site.RegularPages "Section" "blog") "Params.nohtml" "!=" "true") }} + {{- if .OutputFormats.Get "html" }} +
+ {{.Date.Format "January 2, 2006"}} + {{.Title}} +
+ {{ end }} + {{ end }} +
+ + +
+ +{{ partial "foot.html" . }} diff --git a/layouts/partials/foot.html b/layouts/partials/foot.html new file mode 100644 index 0000000..740fcd4 --- /dev/null +++ b/layouts/partials/foot.html @@ -0,0 +1,6 @@ + diff --git a/layouts/partials/head.html b/layouts/partials/head.html new file mode 100644 index 0000000..ca22e36 --- /dev/null +++ b/layouts/partials/head.html @@ -0,0 +1,14 @@ + + + + + + {{ if $.Params.noindex }} + + {{ end }} + {{$.Title}} + + + {{ $style := resources.Get "main.scss" | resources.ToCSS | resources.Minify | resources.Fingerprint }} + + diff --git a/poetry.lock b/poetry.lock deleted file mode 100644 index 5c8db86..0000000 --- a/poetry.lock +++ /dev/null @@ -1,661 +0,0 @@ -# This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. - -[[package]] -name = "alabaster" -version = "0.7.13" -description = "A configurable sidebar-enabled Sphinx theme" -category = "main" -optional = false -python-versions = ">=3.6" -files = [ - {file = "alabaster-0.7.13-py3-none-any.whl", hash = "sha256:1ee19aca801bbabb5ba3f5f258e4422dfa86f82f3e9cefb0859b283cdd7f62a3"}, - {file = "alabaster-0.7.13.tar.gz", hash = "sha256:a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2"}, -] - -[[package]] -name = "babel" -version = "2.12.1" -description = "Internationalization utilities" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "Babel-2.12.1-py3-none-any.whl", hash = "sha256:b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"}, - {file = "Babel-2.12.1.tar.gz", hash = "sha256:cc2d99999cd01d44420ae725a21c9e3711b3aadc7976d6147f622d8581963455"}, -] - -[[package]] -name = "certifi" -version = "2022.12.7" -description = "Python package for providing Mozilla's CA Bundle." -category = "main" -optional = false -python-versions = ">=3.6" -files = [ - {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, - {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, -] - -[[package]] -name = "charset-normalizer" -version = "3.1.0" -description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -category = "main" -optional = false -python-versions = ">=3.7.0" -files = [ - {file = "charset-normalizer-3.1.0.tar.gz", hash = "sha256:34e0a2f9c370eb95597aae63bf85eb5e96826d81e3dcf88b8886012906f509b5"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e0ac8959c929593fee38da1c2b64ee9778733cdf03c482c9ff1d508b6b593b2b"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d7fc3fca01da18fbabe4625d64bb612b533533ed10045a2ac3dd194bfa656b60"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:04eefcee095f58eaabe6dc3cc2262f3bcd776d2c67005880894f447b3f2cb9c1"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20064ead0717cf9a73a6d1e779b23d149b53daf971169289ed2ed43a71e8d3b0"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1435ae15108b1cb6fffbcea2af3d468683b7afed0169ad718451f8db5d1aff6f"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c84132a54c750fda57729d1e2599bb598f5fa0344085dbde5003ba429a4798c0"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:75f2568b4189dda1c567339b48cba4ac7384accb9c2a7ed655cd86b04055c795"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:11d3bcb7be35e7b1bba2c23beedac81ee893ac9871d0ba79effc7fc01167db6c"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:891cf9b48776b5c61c700b55a598621fdb7b1e301a550365571e9624f270c203"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:5f008525e02908b20e04707a4f704cd286d94718f48bb33edddc7d7b584dddc1"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:b06f0d3bf045158d2fb8837c5785fe9ff9b8c93358be64461a1089f5da983137"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:49919f8400b5e49e961f320c735388ee686a62327e773fa5b3ce6721f7e785ce"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:22908891a380d50738e1f978667536f6c6b526a2064156203d418f4856d6e86a"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-win32.whl", hash = "sha256:12d1a39aa6b8c6f6248bb54550efcc1c38ce0d8096a146638fd4738e42284448"}, - {file = "charset_normalizer-3.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:65ed923f84a6844de5fd29726b888e58c62820e0769b76565480e1fdc3d062f8"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:9a3267620866c9d17b959a84dd0bd2d45719b817245e49371ead79ed4f710d19"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6734e606355834f13445b6adc38b53c0fd45f1a56a9ba06c2058f86893ae8017"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f8303414c7b03f794347ad062c0516cee0e15f7a612abd0ce1e25caf6ceb47df"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aaf53a6cebad0eae578f062c7d462155eada9c172bd8c4d250b8c1d8eb7f916a"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3dc5b6a8ecfdc5748a7e429782598e4f17ef378e3e272eeb1340ea57c9109f41"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e1b25e3ad6c909f398df8921780d6a3d120d8c09466720226fc621605b6f92b1"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0ca564606d2caafb0abe6d1b5311c2649e8071eb241b2d64e75a0d0065107e62"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b82fab78e0b1329e183a65260581de4375f619167478dddab510c6c6fb04d9b6"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:bd7163182133c0c7701b25e604cf1611c0d87712e56e88e7ee5d72deab3e76b5"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:11d117e6c63e8f495412d37e7dc2e2fff09c34b2d09dbe2bee3c6229577818be"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:cf6511efa4801b9b38dc5546d7547d5b5c6ef4b081c60b23e4d941d0eba9cbeb"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:abc1185d79f47c0a7aaf7e2412a0eb2c03b724581139193d2d82b3ad8cbb00ac"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:cb7b2ab0188829593b9de646545175547a70d9a6e2b63bf2cd87a0a391599324"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-win32.whl", hash = "sha256:c36bcbc0d5174a80d6cccf43a0ecaca44e81d25be4b7f90f0ed7bcfbb5a00909"}, - {file = "charset_normalizer-3.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:cca4def576f47a09a943666b8f829606bcb17e2bc2d5911a46c8f8da45f56755"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0c95f12b74681e9ae127728f7e5409cbbef9cd914d5896ef238cc779b8152373"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fca62a8301b605b954ad2e9c3666f9d97f63872aa4efcae5492baca2056b74ab"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac0aa6cd53ab9a31d397f8303f92c42f534693528fafbdb997c82bae6e477ad9"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c3af8e0f07399d3176b179f2e2634c3ce9c1301379a6b8c9c9aeecd481da494f"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a5fc78f9e3f501a1614a98f7c54d3969f3ad9bba8ba3d9b438c3bc5d047dd28"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:628c985afb2c7d27a4800bfb609e03985aaecb42f955049957814e0491d4006d"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:74db0052d985cf37fa111828d0dd230776ac99c740e1a758ad99094be4f1803d"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:1e8fcdd8f672a1c4fc8d0bd3a2b576b152d2a349782d1eb0f6b8e52e9954731d"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:04afa6387e2b282cf78ff3dbce20f0cc071c12dc8f685bd40960cc68644cfea6"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:dd5653e67b149503c68c4018bf07e42eeed6b4e956b24c00ccdf93ac79cdff84"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:d2686f91611f9e17f4548dbf050e75b079bbc2a82be565832bc8ea9047b61c8c"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-win32.whl", hash = "sha256:4155b51ae05ed47199dc5b2a4e62abccb274cee6b01da5b895099b61b1982974"}, - {file = "charset_normalizer-3.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:322102cdf1ab682ecc7d9b1c5eed4ec59657a65e1c146a0da342b78f4112db23"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e633940f28c1e913615fd624fcdd72fdba807bf53ea6925d6a588e84e1151531"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3a06f32c9634a8705f4ca9946d667609f52cf130d5548881401f1eb2c39b1e2c"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7381c66e0561c5757ffe616af869b916c8b4e42b367ab29fedc98481d1e74e14"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3573d376454d956553c356df45bb824262c397c6e26ce43e8203c4c540ee0acb"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e89df2958e5159b811af9ff0f92614dabf4ff617c03a4c1c6ff53bf1c399e0e1"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:78cacd03e79d009d95635e7d6ff12c21eb89b894c354bd2b2ed0b4763373693b"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de5695a6f1d8340b12a5d6d4484290ee74d61e467c39ff03b39e30df62cf83a0"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1c60b9c202d00052183c9be85e5eaf18a4ada0a47d188a83c8f5c5b23252f649"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:f645caaf0008bacf349875a974220f1f1da349c5dbe7c4ec93048cdc785a3326"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:ea9f9c6034ea2d93d9147818f17c2a0860d41b71c38b9ce4d55f21b6f9165a11"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:80d1543d58bd3d6c271b66abf454d437a438dff01c3e62fdbcd68f2a11310d4b"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:73dc03a6a7e30b7edc5b01b601e53e7fc924b04e1835e8e407c12c037e81adbd"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6f5c2e7bc8a4bf7c426599765b1bd33217ec84023033672c1e9a8b35eaeaaaf8"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-win32.whl", hash = "sha256:12a2b561af122e3d94cdb97fe6fb2bb2b82cef0cdca131646fdb940a1eda04f0"}, - {file = "charset_normalizer-3.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:3160a0fd9754aab7d47f95a6b63ab355388d890163eb03b2d2b87ab0a30cfa59"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:38e812a197bf8e71a59fe55b757a84c1f946d0ac114acafaafaf21667a7e169e"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6baf0baf0d5d265fa7944feb9f7451cc316bfe30e8df1a61b1bb08577c554f31"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:8f25e17ab3039b05f762b0a55ae0b3632b2e073d9c8fc88e89aca31a6198e88f"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3747443b6a904001473370d7810aa19c3a180ccd52a7157aacc264a5ac79265e"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b116502087ce8a6b7a5f1814568ccbd0e9f6cfd99948aa59b0e241dc57cf739f"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d16fd5252f883eb074ca55cb622bc0bee49b979ae4e8639fff6ca3ff44f9f854"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:21fa558996782fc226b529fdd2ed7866c2c6ec91cee82735c98a197fae39f706"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6f6c7a8a57e9405cad7485f4c9d3172ae486cfef1344b5ddd8e5239582d7355e"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:ac3775e3311661d4adace3697a52ac0bab17edd166087d493b52d4f4f553f9f0"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:10c93628d7497c81686e8e5e557aafa78f230cd9e77dd0c40032ef90c18f2230"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:6f4f4668e1831850ebcc2fd0b1cd11721947b6dc7c00bf1c6bd3c929ae14f2c7"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:0be65ccf618c1e7ac9b849c315cc2e8a8751d9cfdaa43027d4f6624bd587ab7e"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:53d0a3fa5f8af98a1e261de6a3943ca631c526635eb5817a87a59d9a57ebf48f"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-win32.whl", hash = "sha256:a04f86f41a8916fe45ac5024ec477f41f886b3c435da2d4e3d2709b22ab02af1"}, - {file = "charset_normalizer-3.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:830d2948a5ec37c386d3170c483063798d7879037492540f10a475e3fd6f244b"}, - {file = "charset_normalizer-3.1.0-py3-none-any.whl", hash = "sha256:3d9098b479e78c85080c98e1e35ff40b4a31d8953102bb0fd7d1b6f8a2111a3d"}, -] - -[[package]] -name = "colorama" -version = "0.4.6" -description = "Cross-platform colored terminal text." -category = "main" -optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" -files = [ - {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, - {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, -] - -[[package]] -name = "docutils" -version = "0.19" -description = "Docutils -- Python Documentation Utilities" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "docutils-0.19-py3-none-any.whl", hash = "sha256:5e1de4d849fee02c63b040a4a3fd567f4ab104defd8a5511fbbc24a8a017efbc"}, - {file = "docutils-0.19.tar.gz", hash = "sha256:33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6"}, -] - -[[package]] -name = "idna" -version = "3.4" -description = "Internationalized Domain Names in Applications (IDNA)" -category = "main" -optional = false -python-versions = ">=3.5" -files = [ - {file = "idna-3.4-py3-none-any.whl", hash = "sha256:90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"}, - {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, -] - -[[package]] -name = "imagesize" -version = "1.4.1" -description = "Getting image size from png/jpeg/jpeg2000/gif file" -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" -files = [ - {file = "imagesize-1.4.1-py2.py3-none-any.whl", hash = "sha256:0d8d18d08f840c19d0ee7ca1fd82490fdc3729b7ac93f49870406ddde8ef8d8b"}, - {file = "imagesize-1.4.1.tar.gz", hash = "sha256:69150444affb9cb0d5cc5a92b3676f0b2fb7cd9ae39e947a5e11a36b4497cd4a"}, -] - -[[package]] -name = "importlib-metadata" -version = "6.3.0" -description = "Read metadata from Python packages" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "importlib_metadata-6.3.0-py3-none-any.whl", hash = "sha256:8f8bd2af397cf33bd344d35cfe7f489219b7d14fc79a3f854b75b8417e9226b0"}, - {file = "importlib_metadata-6.3.0.tar.gz", hash = "sha256:23c2bcae4762dfb0bbe072d358faec24957901d75b6c4ab11172c0c982532402"}, -] - -[package.dependencies] -zipp = ">=0.5" - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -perf = ["ipython"] -testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] - -[[package]] -name = "jinja2" -version = "3.1.2" -description = "A very fast and expressive template engine." -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, - {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, -] - -[package.dependencies] -MarkupSafe = ">=2.0" - -[package.extras] -i18n = ["Babel (>=2.7)"] - -[[package]] -name = "markdown-it-py" -version = "2.2.0" -description = "Python port of markdown-it. Markdown parsing, done right!" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "markdown-it-py-2.2.0.tar.gz", hash = "sha256:7c9a5e412688bc771c67432cbfebcdd686c93ce6484913dccf06cb5a0bea35a1"}, - {file = "markdown_it_py-2.2.0-py3-none-any.whl", hash = "sha256:5a35f8d1870171d9acc47b99612dc146129b631baf04970128b568f190d0cc30"}, -] - -[package.dependencies] -mdurl = ">=0.1,<1.0" - -[package.extras] -benchmarking = ["psutil", "pytest", "pytest-benchmark"] -code-style = ["pre-commit (>=3.0,<4.0)"] -compare = ["commonmark (>=0.9,<1.0)", "markdown (>=3.4,<4.0)", "mistletoe (>=1.0,<2.0)", "mistune (>=2.0,<3.0)", "panflute (>=2.3,<3.0)"] -linkify = ["linkify-it-py (>=1,<3)"] -plugins = ["mdit-py-plugins"] -profiling = ["gprof2dot"] -rtd = ["attrs", "myst-parser", "pyyaml", "sphinx", "sphinx-copybutton", "sphinx-design", "sphinx_book_theme"] -testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] - -[[package]] -name = "markupsafe" -version = "2.1.2" -description = "Safely add untrusted strings to HTML/XML markup." -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "MarkupSafe-2.1.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:665a36ae6f8f20a4676b53224e33d456a6f5a72657d9c83c2aa00765072f31f7"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:340bea174e9761308703ae988e982005aedf427de816d1afe98147668cc03036"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:22152d00bf4a9c7c83960521fc558f55a1adbc0631fbb00a9471e097b19d72e1"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:28057e985dace2f478e042eaa15606c7efccb700797660629da387eb289b9323"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ca244fa73f50a800cf8c3ebf7fd93149ec37f5cb9596aa8873ae2c1d23498601"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d9d971ec1e79906046aa3ca266de79eac42f1dbf3612a05dc9368125952bd1a1"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:7e007132af78ea9df29495dbf7b5824cb71648d7133cf7848a2a5dd00d36f9ff"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7313ce6a199651c4ed9d7e4cfb4aa56fe923b1adf9af3b420ee14e6d9a73df65"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-win32.whl", hash = "sha256:c4a549890a45f57f1ebf99c067a4ad0cb423a05544accaf2b065246827ed9603"}, - {file = "MarkupSafe-2.1.2-cp310-cp310-win_amd64.whl", hash = "sha256:835fb5e38fd89328e9c81067fd642b3593c33e1e17e2fdbf77f5676abb14a156"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:2ec4f2d48ae59bbb9d1f9d7efb9236ab81429a764dedca114f5fdabbc3788013"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:608e7073dfa9e38a85d38474c082d4281f4ce276ac0010224eaba11e929dd53a"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:65608c35bfb8a76763f37036547f7adfd09270fbdbf96608be2bead319728fcd"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2bfb563d0211ce16b63c7cb9395d2c682a23187f54c3d79bfec33e6705473c6"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:da25303d91526aac3672ee6d49a2f3db2d9502a4a60b55519feb1a4c7714e07d"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:9cad97ab29dfc3f0249b483412c85c8ef4766d96cdf9dcf5a1e3caa3f3661cf1"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:085fd3201e7b12809f9e6e9bc1e5c96a368c8523fad5afb02afe3c051ae4afcc"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1bea30e9bf331f3fef67e0a3877b2288593c98a21ccb2cf29b74c581a4eb3af0"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-win32.whl", hash = "sha256:7df70907e00c970c60b9ef2938d894a9381f38e6b9db73c5be35e59d92e06625"}, - {file = "MarkupSafe-2.1.2-cp311-cp311-win_amd64.whl", hash = "sha256:e55e40ff0cc8cc5c07996915ad367fa47da6b3fc091fdadca7f5403239c5fec3"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a6e40afa7f45939ca356f348c8e23048e02cb109ced1eb8420961b2f40fb373a"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cf877ab4ed6e302ec1d04952ca358b381a882fbd9d1b07cccbfd61783561f98a"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:63ba06c9941e46fa389d389644e2d8225e0e3e5ebcc4ff1ea8506dce646f8c8a"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f1cd098434e83e656abf198f103a8207a8187c0fc110306691a2e94a78d0abb2"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:55f44b440d491028addb3b88f72207d71eeebfb7b5dbf0643f7c023ae1fba619"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:a6f2fcca746e8d5910e18782f976489939d54a91f9411c32051b4aab2bd7c513"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0b462104ba25f1ac006fdab8b6a01ebbfbce9ed37fd37fd4acd70c67c973e460"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-win32.whl", hash = "sha256:7668b52e102d0ed87cb082380a7e2e1e78737ddecdde129acadb0eccc5423859"}, - {file = "MarkupSafe-2.1.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6d6607f98fcf17e534162f0709aaad3ab7a96032723d8ac8750ffe17ae5a0666"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:a806db027852538d2ad7555b203300173dd1b77ba116de92da9afbc3a3be3eed"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:a4abaec6ca3ad8660690236d11bfe28dfd707778e2442b45addd2f086d6ef094"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f03a532d7dee1bed20bc4884194a16160a2de9ffc6354b3878ec9682bb623c54"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4cf06cdc1dda95223e9d2d3c58d3b178aa5dacb35ee7e3bbac10e4e1faacb419"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:22731d79ed2eb25059ae3df1dfc9cb1546691cc41f4e3130fe6bfbc3ecbbecfa"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:f8ffb705ffcf5ddd0e80b65ddf7bed7ee4f5a441ea7d3419e861a12eaf41af58"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8db032bf0ce9022a8e41a22598eefc802314e81b879ae093f36ce9ddf39ab1ba"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:2298c859cfc5463f1b64bd55cb3e602528db6fa0f3cfd568d3605c50678f8f03"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-win32.whl", hash = "sha256:50c42830a633fa0cf9e7d27664637532791bfc31c731a87b202d2d8ac40c3ea2"}, - {file = "MarkupSafe-2.1.2-cp38-cp38-win_amd64.whl", hash = "sha256:bb06feb762bade6bf3c8b844462274db0c76acc95c52abe8dbed28ae3d44a147"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:99625a92da8229df6d44335e6fcc558a5037dd0a760e11d84be2260e6f37002f"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:8bca7e26c1dd751236cfb0c6c72d4ad61d986e9a41bbf76cb445f69488b2a2bd"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40627dcf047dadb22cd25ea7ecfe9cbf3bbbad0482ee5920b582f3809c97654f"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40dfd3fefbef579ee058f139733ac336312663c6706d1163b82b3003fb1925c4"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:090376d812fb6ac5f171e5938e82e7f2d7adc2b629101cec0db8b267815c85e2"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:2e7821bffe00aa6bd07a23913b7f4e01328c3d5cc0b40b36c0bd81d362faeb65"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c0a33bc9f02c2b17c3ea382f91b4db0e6cde90b63b296422a939886a7a80de1c"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:b8526c6d437855442cdd3d87eede9c425c4445ea011ca38d937db299382e6fa3"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-win32.whl", hash = "sha256:137678c63c977754abe9086a3ec011e8fd985ab90631145dfb9294ad09c102a7"}, - {file = "MarkupSafe-2.1.2-cp39-cp39-win_amd64.whl", hash = "sha256:0576fe974b40a400449768941d5d0858cc624e3249dfd1e0c33674e5c7ca7aed"}, - {file = "MarkupSafe-2.1.2.tar.gz", hash = "sha256:abcabc8c2b26036d62d4c746381a6f7cf60aafcc653198ad678306986b09450d"}, -] - -[[package]] -name = "mdit-py-plugins" -version = "0.3.5" -description = "Collection of plugins for markdown-it-py" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "mdit-py-plugins-0.3.5.tar.gz", hash = "sha256:eee0adc7195e5827e17e02d2a258a2ba159944a0748f59c5099a4a27f78fcf6a"}, - {file = "mdit_py_plugins-0.3.5-py3-none-any.whl", hash = "sha256:ca9a0714ea59a24b2b044a1831f48d817dd0c817e84339f20e7889f392d77c4e"}, -] - -[package.dependencies] -markdown-it-py = ">=1.0.0,<3.0.0" - -[package.extras] -code-style = ["pre-commit"] -rtd = ["attrs", "myst-parser (>=0.16.1,<0.17.0)", "sphinx-book-theme (>=0.1.0,<0.2.0)"] -testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] - -[[package]] -name = "mdurl" -version = "0.1.2" -description = "Markdown URL utilities" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, - {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, -] - -[[package]] -name = "myst-parser" -version = "1.0.0" -description = "An extended [CommonMark](https://spec.commonmark.org/) compliant parser," -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "myst-parser-1.0.0.tar.gz", hash = "sha256:502845659313099542bd38a2ae62f01360e7dd4b1310f025dd014dfc0439cdae"}, - {file = "myst_parser-1.0.0-py3-none-any.whl", hash = "sha256:69fb40a586c6fa68995e6521ac0a525793935db7e724ca9bac1d33be51be9a4c"}, -] - -[package.dependencies] -docutils = ">=0.15,<0.20" -jinja2 = "*" -markdown-it-py = ">=1.0.0,<3.0.0" -mdit-py-plugins = ">=0.3.4,<0.4.0" -pyyaml = "*" -sphinx = ">=5,<7" - -[package.extras] -code-style = ["pre-commit (>=3.0,<4.0)"] -linkify = ["linkify-it-py (>=1.0,<2.0)"] -rtd = ["ipython", "pydata-sphinx-theme (==v0.13.0rc4)", "sphinx-autodoc2 (>=0.4.2,<0.5.0)", "sphinx-book-theme (==1.0.0rc2)", "sphinx-copybutton", "sphinx-design2", "sphinx-pyscript", "sphinx-tippy (>=0.3.1)", "sphinx-togglebutton", "sphinxext-opengraph (>=0.7.5,<0.8.0)", "sphinxext-rediraffe (>=0.2.7,<0.3.0)"] -testing = ["beautifulsoup4", "coverage[toml]", "pytest (>=7,<8)", "pytest-cov", "pytest-param-files (>=0.3.4,<0.4.0)", "pytest-regressions", "sphinx-pytest"] -testing-docutils = ["pygments", "pytest (>=7,<8)", "pytest-param-files (>=0.3.4,<0.4.0)"] - -[[package]] -name = "packaging" -version = "23.1" -description = "Core utilities for Python packages" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "packaging-23.1-py3-none-any.whl", hash = "sha256:994793af429502c4ea2ebf6bf664629d07c1a9fe974af92966e4b8d2df7edc61"}, - {file = "packaging-23.1.tar.gz", hash = "sha256:a392980d2b6cffa644431898be54b0045151319d1e7ec34f0cfed48767dd334f"}, -] - -[[package]] -name = "pygments" -version = "2.15.0" -description = "Pygments is a syntax highlighting package written in Python." -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "Pygments-2.15.0-py3-none-any.whl", hash = "sha256:77a3299119af881904cd5ecd1ac6a66214b6e9bed1f2db16993b54adede64094"}, - {file = "Pygments-2.15.0.tar.gz", hash = "sha256:f7e36cffc4c517fbc252861b9a6e4644ca0e5abadf9a113c72d1358ad09b9500"}, -] - -[package.extras] -plugins = ["importlib-metadata"] - -[[package]] -name = "pyyaml" -version = "6.0" -description = "YAML parser and emitter for Python" -category = "main" -optional = false -python-versions = ">=3.6" -files = [ - {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"}, - {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"}, - {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"}, - {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"}, - {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"}, - {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"}, - {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"}, - {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"}, - {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"}, - {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"}, - {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"}, - {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"}, - {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"}, - {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"}, - {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"}, - {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"}, - {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"}, - {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"}, - {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"}, - {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"}, - {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"}, - {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"}, - {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"}, - {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"}, - {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"}, - {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"}, - {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"}, - {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"}, - {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"}, - {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"}, -] - -[[package]] -name = "requests" -version = "2.28.2" -description = "Python HTTP for Humans." -category = "main" -optional = false -python-versions = ">=3.7, <4" -files = [ - {file = "requests-2.28.2-py3-none-any.whl", hash = "sha256:64299f4909223da747622c030b781c0d7811e359c37124b4bd368fb8c6518baa"}, - {file = "requests-2.28.2.tar.gz", hash = "sha256:98b1b2782e3c6c4904938b84c0eb932721069dfdb9134313beff7c83c2df24bf"}, -] - -[package.dependencies] -certifi = ">=2017.4.17" -charset-normalizer = ">=2,<4" -idna = ">=2.5,<4" -urllib3 = ">=1.21.1,<1.27" - -[package.extras] -socks = ["PySocks (>=1.5.6,!=1.5.7)"] -use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] - -[[package]] -name = "snowballstemmer" -version = "2.2.0" -description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -category = "main" -optional = false -python-versions = "*" -files = [ - {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, - {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, -] - -[[package]] -name = "sphinx" -version = "6.1.3" -description = "Python documentation generator" -category = "main" -optional = false -python-versions = ">=3.8" -files = [ - {file = "Sphinx-6.1.3.tar.gz", hash = "sha256:0dac3b698538ffef41716cf97ba26c1c7788dba73ce6f150c1ff5b4720786dd2"}, - {file = "sphinx-6.1.3-py3-none-any.whl", hash = "sha256:807d1cb3d6be87eb78a381c3e70ebd8d346b9a25f3753e9947e866b2786865fc"}, -] - -[package.dependencies] -alabaster = ">=0.7,<0.8" -babel = ">=2.9" -colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} -docutils = ">=0.18,<0.20" -imagesize = ">=1.3" -importlib-metadata = {version = ">=4.8", markers = "python_version < \"3.10\""} -Jinja2 = ">=3.0" -packaging = ">=21.0" -Pygments = ">=2.13" -requests = ">=2.25.0" -snowballstemmer = ">=2.0" -sphinxcontrib-applehelp = "*" -sphinxcontrib-devhelp = "*" -sphinxcontrib-htmlhelp = ">=2.0.0" -sphinxcontrib-jsmath = "*" -sphinxcontrib-qthelp = "*" -sphinxcontrib-serializinghtml = ">=1.1.5" - -[package.extras] -docs = ["sphinxcontrib-websupport"] -lint = ["docutils-stubs", "flake8 (>=3.5.0)", "flake8-simplify", "isort", "mypy (>=0.990)", "ruff", "sphinx-lint", "types-requests"] -test = ["cython", "html5lib", "pytest (>=4.6)"] - -[[package]] -name = "sphinxcontrib-applehelp" -version = "1.0.4" -description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" -category = "main" -optional = false -python-versions = ">=3.8" -files = [ - {file = "sphinxcontrib-applehelp-1.0.4.tar.gz", hash = "sha256:828f867945bbe39817c210a1abfd1bc4895c8b73fcaade56d45357a348a07d7e"}, - {file = "sphinxcontrib_applehelp-1.0.4-py3-none-any.whl", hash = "sha256:29d341f67fb0f6f586b23ad80e072c8e6ad0b48417db2bde114a4c9746feb228"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-devhelp" -version = "1.0.2" -description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp document." -category = "main" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-devhelp-1.0.2.tar.gz", hash = "sha256:ff7f1afa7b9642e7060379360a67e9c41e8f3121f2ce9164266f61b9f4b338e4"}, - {file = "sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl", hash = "sha256:8165223f9a335cc1af7ffe1ed31d2871f325254c0423bc0c4c7cd1c1e4734a2e"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-htmlhelp" -version = "2.0.1" -description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" -category = "main" -optional = false -python-versions = ">=3.8" -files = [ - {file = "sphinxcontrib-htmlhelp-2.0.1.tar.gz", hash = "sha256:0cbdd302815330058422b98a113195c9249825d681e18f11e8b1f78a2f11efff"}, - {file = "sphinxcontrib_htmlhelp-2.0.1-py3-none-any.whl", hash = "sha256:c38cb46dccf316c79de6e5515e1770414b797162b23cd3d06e67020e1d2a6903"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["html5lib", "pytest"] - -[[package]] -name = "sphinxcontrib-jsmath" -version = "1.0.1" -description = "A sphinx extension which renders display math in HTML via JavaScript" -category = "main" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-jsmath-1.0.1.tar.gz", hash = "sha256:a9925e4a4587247ed2191a22df5f6970656cb8ca2bd6284309578f2153e0c4b8"}, - {file = "sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl", hash = "sha256:2ec2eaebfb78f3f2078e73666b1415417a116cc848b72e5172e596c871103178"}, -] - -[package.extras] -test = ["flake8", "mypy", "pytest"] - -[[package]] -name = "sphinxcontrib-plantuml" -version = "0.25" -description = "Sphinx \"plantuml\" extension" -category = "main" -optional = false -python-versions = "*" -files = [ - {file = "sphinxcontrib-plantuml-0.25.tar.gz", hash = "sha256:8fde531d92d1cfc2817fe3647b3f2d07e76682c4a84889c04a53e831f7c54432"}, -] - -[package.dependencies] -Sphinx = ">=1.6" - -[package.extras] -test = ["Pillow", "flake8", "pytest"] - -[[package]] -name = "sphinxcontrib-qthelp" -version = "1.0.3" -description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp document." -category = "main" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-qthelp-1.0.3.tar.gz", hash = "sha256:4c33767ee058b70dba89a6fc5c1892c0d57a54be67ddd3e7875a18d14cba5a72"}, - {file = "sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl", hash = "sha256:bd9fc24bcb748a8d51fd4ecaade681350aa63009a347a8c14e637895444dfab6"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "sphinxcontrib-serializinghtml" -version = "1.1.5" -description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)." -category = "main" -optional = false -python-versions = ">=3.5" -files = [ - {file = "sphinxcontrib-serializinghtml-1.1.5.tar.gz", hash = "sha256:aa5f6de5dfdf809ef505c4895e51ef5c9eac17d0f287933eb49ec495280b6952"}, - {file = "sphinxcontrib_serializinghtml-1.1.5-py2.py3-none-any.whl", hash = "sha256:352a9a00ae864471d3a7ead8d7d79f5fc0b57e8b3f95e9867eb9eb28999b92fd"}, -] - -[package.extras] -lint = ["docutils-stubs", "flake8", "mypy"] -test = ["pytest"] - -[[package]] -name = "toml" -version = "0.10.2" -description = "Python Library for Tom's Obvious, Minimal Language" -category = "main" -optional = false -python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" -files = [ - {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, - {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, -] - -[[package]] -name = "urllib3" -version = "1.26.15" -description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" -files = [ - {file = "urllib3-1.26.15-py2.py3-none-any.whl", hash = "sha256:aa751d169e23c7479ce47a0cb0da579e3ede798f994f5816a74e4f4500dcea42"}, - {file = "urllib3-1.26.15.tar.gz", hash = "sha256:8a388717b9476f934a21484e8c8e61875ab60644d29b9b39e11e4b9dc1c6b305"}, -] - -[package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] -socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] - -[[package]] -name = "zipp" -version = "3.15.0" -description = "Backport of pathlib-compatible object wrapper for zip files" -category = "main" -optional = false -python-versions = ">=3.7" -files = [ - {file = "zipp-3.15.0-py3-none-any.whl", hash = "sha256:48904fc76a60e542af151aded95726c1a5c34ed43ab4134b597665c86d7ad556"}, - {file = "zipp-3.15.0.tar.gz", hash = "sha256:112929ad649da941c23de50f356a2b5570c954b65150642bccdd66bf194d224b"}, -] - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "flake8 (<5)", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] - -[metadata] -lock-version = "2.0" -python-versions = "^3.9" -content-hash = "84375b9f6f6504b34111a9776d1cc20815af4ef4e4444dc21a863496859b9e61" diff --git a/pyproject.toml b/pyproject.toml deleted file mode 100644 index 0e8653d..0000000 --- a/pyproject.toml +++ /dev/null @@ -1,19 +0,0 @@ -[tool.poetry] -name = "shione" -version = "0.1.0" -description = "My personal website" -authors = ["Renken "] -license = "AGPL-3.0-only" -readme = "README.md" - -[tool.poetry.dependencies] -python = "^3.9" -Sphinx = "^6.1.3" -myst-parser = "^1.0.0" -sphinxcontrib-plantuml = "^0.25" -toml = "^0.10.2" - - -[build-system] -requires = ["poetry-core"] -build-backend = "poetry.core.masonry.api" diff --git a/resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.content b/resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.content new file mode 100644 index 0000000..f930ac5 --- /dev/null +++ b/resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.content @@ -0,0 +1 @@ +html{font-family:sans-serif;color:#080808}body{max-width:920px;margin:0 auto;padding:1rem}h1{margin-top:0;font-size:1.5rem}h1 small{display:block;font-size:1rem}.index{display:flex;flex-direction:row}.index .article-list{flex-grow:1}.index .article-list .article{margin-bottom:1rem}.index .article-list .date{display:block;color:#333}.index aside{width:40%}.index aside img{display:block;margin:0 auto 1rem;border-radius:5px}.index aside dt{font-size:.9rem}.index aside dd{margin-left:0}.index aside dd:not(:last-child){margin-bottom:.5rem}@media(max-width:640px){.index aside{display:none}}article{margin:0 auto;max-width:720px;line-height:1.3}article img,article video,article iframe{display:block!important;margin:0 auto!important;max-width:90%}@media(max-width:640px){article img,article video,article iframe{max-width:calc(100% - 2rem)}}article sup{line-height:1}article .comment{margin:2rem auto 0;max-width:80%;color:#333}.footnotes{font-size:.85rem}footer{margin-top:2rem;text-align:center;font-size:.8rem;color:#333}.float-img{float:right;display:inline;padding-left:1rem}@media(max-width:640px){.float-img{display:block;float:none;padding-left:inherit}}pre{background-color:#eee;padding:.25rem 1rem;margin:0 -1rem;max-width:100%;overflow-x:auto}pre .cp{color:#800}pre .k{color:#008}pre .kt,pre .kd,pre .kc{color:#44f}pre .s{color:#484;font-style:italic}pre .cm,pre .c1{color:#333;font-style:italic}pre .gi{color:green}pre .gd{color:red}pre .gu{color:blue}.webring{margin-top:2rem}.webring h2{font-size:1.2rem}.webring .articles{display:flex}@media(max-width:640px){.webring .articles{flex-direction:column}}.webring .title{margin:0}.webring .article{flex:1;display:flex;flex-direction:column;background:#eee;padding:.5rem;margin:0 .5rem}@media(max-width:640px){.webring .article{margin:.5rem 0}}.webring .article:first-child{margin-left:0}.webring .article:last-child{margin-right:0}.webring .summary{font-size:.8rem;flex:1}.webring .attribution{float:right;font-size:.8rem;color:#555;line-height:3}.webring .date{color:#000}summary{cursor:pointer;background-color:#eee;padding:.25rem 1rem;margin:0 -1rem}details[open]{border-bottom:1rem solid #eee;margin:0 -1rem 1rem;padding:0 1rem}.text-center{text-align:center}blockquote{border-left:5px solid #777;background-color:#eee;padding:0 1rem;margin-left:0;margin-right:0}blockquote blockquote{margin-right:0;margin-left:0}dl{display:grid;grid-template-columns:auto 1fr;grid-gap:.2rem 1rem}dl dt{font-weight:700;grid-column-start:1}dl dd{grid-column-start:2;margin:0}.alert{padding:.5rem;border:1px solid transparent;margin-bottom:1rem}.alert.alert-danger{background:#f8d7da;color:#721c24;border-color:#f5c6cb}.alert.alert-info{background:#d1ecf1;color:#0c5460;border-color:#bee5eb}table{color:#333;background:#fff;border:1px solid grey;font-size:12pt;border-collapse:collapse}table thead th,table tfoot th{background:rgba(0,0,0,.1)}table caption{padding:.5em}table th,table td{padding:.5em;border:1px solid lightgrey}td.red{background:#f8d7da}td.yellow{background:#fff3cd}td.blue{background:#cfe2ff}.error,.info,.warn .todo{background:#efefef;border-left-style:solid;border-left-width:.4rem;border-radius:.2rem;margin-left:0}.error>p,.info>p,.warn .todo>p{padding:.5rem 1rem}.warn{border-left-color:#fb0}.info{border-left-color:#00e}.error{border-left-color:#e00}.todo{border-left-color:#ee0} \ No newline at end of file diff --git a/resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.json b/resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.json new file mode 100644 index 0000000..1b4ffe3 --- /dev/null +++ b/resources/_gen/assets/scss/main.scss_511aa33e99371f93fbf403479ebfd32e.json @@ -0,0 +1 @@ +{"Target":"main.min.c1a322d943111db1cfbc3d645c87c52ef2b23a1d1fd6988387a706ae3357e3b5.css","MediaType":"text/css","Data":{"Integrity":"sha256-waMi2UMRHbHPvD1kXIfFLvKyOh0f1piDh6cGrjNX47U="}} \ No newline at end of file diff --git a/src/shione/404.rst b/src/shione/404.rst deleted file mode 100644 index 2885d35..0000000 --- a/src/shione/404.rst +++ /dev/null @@ -1,12 +0,0 @@ -:orphan: - -Not found -========= - -.. note:: - Our hard-working Cirnos cannot find the requested resource! - -.. image:: _static/cirnos.png - :name: cirnos - :alt: cirnos - :align: center diff --git a/src/shione/CMakeLists.txt b/src/shione/CMakeLists.txt deleted file mode 100644 index 8f738fc..0000000 --- a/src/shione/CMakeLists.txt +++ /dev/null @@ -1,74 +0,0 @@ -set(DOC_SRC "${PROJECT_SOURCE_DIR}/doc") -set(DOC_DEST "${PROJECT_BINARY_DIR}/doc/${DOC}") -set(DOC_TMP "${PROJECT_BINARY_DIR}/tmp/doc") - -if(DOC STREQUAL "html") - set(EXTRA_PYTHON_MODULES "sphinx_rtd_theme") -else() - unset(EXTRA_PYTHON_MODULES) -endif() - -find_package(PythonInterp REQUIRED) -include(find_python_module) - -# do not change the ENV, doesn't work with add_custom_target -# https://cmake.org/Bug/view.php?id=5145 -if(ENV{PYTHONPATH}) - set(PYTHONPATH "$ENV{PYTHONPATH}") -else() - # PYTHONPATH disables defaults, manually append them - execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" - "import sys; sys.stdout.write(':'.join(sys.path))" - OUTPUT_VARIABLE PYTHONPATH) -endif() - -foreach(module - sphinx - sphinxcontrib.plantuml - ${EXTRA_PYTHON_MODULES}) - string(TOUPPER "${module}" module_upper) - find_python_module("${module}" "${module_upper}") - set(PYTHONPATH "${${module_upper}_PATH}:${PYTHONPATH}") -endforeach(module) - -if(${WERROR}) - set(SPHINX_WERROR "-W") -else() - unset(SPHINX_WERROR) -endif() - -include(plantuml) - -configure_file( - "${DOC_SRC}/conf.py.in" - "${DOC_TMP}/sphinx/conf.py" - @ONLY) - -add_custom_target(doc ALL - COMMAND "${CMAKE_COMMAND}" -E echo - "Generating sphinx ${DOC} documentation" - COMMAND "${CMAKE_COMMAND}" -E env "PYTHONPATH=${PYTHONPATH}" - "${PYTHON_EXECUTABLE}" -m sphinx -b "${DOC}" - -d "${DOC_TMP}/sphinx/doctrees" -j auto - -c "${DOC_TMP}/sphinx" -q ${SPHINX_WERROR} - "${DOC_SRC}" "${DOC_DEST}") -add_custom_command(TARGET doc POST_BUILD - COMMAND ; - COMMENT "Output at ${DOC_DEST}") - -add_custom_target(doc_nocache - COMMAND "${CMAKE_COMMAND}" -E echo - "Generating sphinx ${DOC} documentation, no cache" - COMMAND "${CMAKE_COMMAND}" -E env "PYTHONPATH=${PYTHONPATH}" - "${PYTHON_EXECUTABLE}" -m sphinx -b "${DOC}" -E - -d "${DOC_TMP}/sphinx/doctrees" -j auto - -c "${DOC_TMP}/sphinx" -q ${SPHINX_WERROR} - "${DOC_SRC}" "${DOC_DEST}") -add_custom_command(TARGET doc_nocache POST_BUILD - COMMAND ; - COMMENT "Output at ${DOC_DEST}") - -add_custom_target(doc_clean - COMMAND "${CMAKE_COMMAND}" -E remove_directory "${DOC_DEST}" - COMMAND "${CMAKE_COMMAND}" -E remove_directory - "${DOC_TMP}/sphinx/doctrees") diff --git a/src/shione/_static/cirnos.png b/src/shione/_static/cirnos.png deleted file mode 100644 index 6f13e3a..0000000 --- a/src/shione/_static/cirnos.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aad89e8f353c0415f7bdc97c4151e4cf2b65ec26181963e21996bf2ec3694895 -size 71046 diff --git a/src/shione/_static/manga_1654960885.jpg b/src/shione/_static/manga_1654960885.jpg deleted file mode 100644 index 6bb991c..0000000 --- a/src/shione/_static/manga_1654960885.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2c6f23555403eacaea415d43efb1ec47df009236f1e1db793061173c7a15c8e9 -size 3651434 diff --git a/src/shione/_static/renkenbirthdaynichijouSakamotoavaNoHat.png b/src/shione/_static/renkenbirthdaynichijouSakamotoavaNoHat.png deleted file mode 100644 index db49a71..0000000 --- a/src/shione/_static/renkenbirthdaynichijouSakamotoavaNoHat.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9e6959ee783b5da28176688a50ed33904f74e24500bebc48cc0113443bc81b4f -size 672011 diff --git a/src/shione/_static/shione.jpg b/src/shione/_static/shione.jpg deleted file mode 100644 index 453112e..0000000 --- a/src/shione/_static/shione.jpg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3632e4d2c4db72d126332d9418076f480c6e7f951040cecf0f1d8db0344c1120 -size 182726 diff --git a/src/shione/_static/theme_overrides.css b/src/shione/_static/theme_overrides.css deleted file mode 100644 index a2fcbf4..0000000 --- a/src/shione/_static/theme_overrides.css +++ /dev/null @@ -1,9 +0,0 @@ -/* override table width restrictions */ -@media screen and (min-width: 767px) { - .wy-table-responsive table td, .wy-table-responsive table th { - white-space: normal !important; - } - .wy-table-responsive { - overflow: visible !important; - } -} diff --git a/src/shione/conf.py b/src/shione/conf.py deleted file mode 100644 index d27743e..0000000 --- a/src/shione/conf.py +++ /dev/null @@ -1,143 +0,0 @@ -#!/usr/bin/env python3 -# -*- coding: utf-8 -*- -# -# This file is execfile()d with the current directory set to its -# containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -# -# import os -# import sys -# sys.path.insert(0, os.path.abspath('.')) - -import os -import toml -import subprocess - -current_path = os.path.abspath('.') -project_config = toml.load('config.toml') -project_version = subprocess.check_output( - ['git', 'rev-parse', '--short', 'HEAD'] -).decode('ascii').strip() - -# -- General configuration ------------------------------------------------ - -# General information about the project. -project = project_config['name'] -copyright = project_config['copyright'] -author = project_config['author'] -description_formatted = project_config['description_formatted'] - -# If your documentation needs a minimal Sphinx version, state it here. -# -# needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be -# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom -# ones. -extensions = ['sphinxcontrib.plantuml', 'myst_parser'] - -# plantuml config -project_plantuml_config_path = '{}/{}'.format( - current_path, project_config['plantuml_config'] -) -plantuml = 'plantuml -config "{}"'.format( - project_plantuml_config_path, -) -plantuml_output_format = 'svg_img' - -# Add any paths that contain templates here, relative to this directory. -templates_path = [] - -# The suffix(es) of source filenames. -# You can specify multiple suffix as a list of string: -# -# source_suffix = ['.rst', '.md'] -source_suffix = { - '.md': 'markdown', - '.rst': 'restructuredtext', -} - -# The master toctree document. -master_doc = 'index' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = project_version -# The full version, including alpha/beta/rc tags. -release = version - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -# -# This is also used if you do content translation via gettext catalogs. -# Usually you set "language" from the command line for these cases. -language = 'en' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -# This patterns also effect to html_static_path and html_extra_path -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store'] - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'colorful' - -# The name of a reST role to use as the default role, that is, for text marked -# up `like this`. The default role can always be set within individual -# documents using the standard reST default-role directive. -default_role = 'any' - -# The default language to highlight source code. -highlight_language = 'rst' - -# -- Options for HTML output ---------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -# - -html_theme = 'alabaster' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -# -# html_theme_options = {} - -html_theme_options = { - 'font_family': 'Inconsolata', - 'font_size': '16px', - 'show_powered_by': 'false', - 'description': eval(f"f'{description_formatted}'"), - 'show_related': True, -} - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = [f'{current_path}/_static'] - -# Custom sidebar templates, must be a dictionary that maps document names -# to template names. -# -# This is required for the alabaster theme -# refs: http://alabaster.readthedocs.io/en/latest/installation.html#sidebars -html_sidebars = { - '**': [ - 'about.html', - 'navigation.html', - 'relations.html', # needs 'show_related': True theme option to display - 'searchbox.html', - ] -} diff --git a/src/shione/config.toml b/src/shione/config.toml deleted file mode 100644 index f5b7de5..0000000 --- a/src/shione/config.toml +++ /dev/null @@ -1,5 +0,0 @@ -name = "shione" -copyright = "2024, renken" -author = "renken" -plantuml_config = "plantuml.cfg" -description_formatted = "managed by {author}" diff --git a/src/shione/index.rst b/src/shione/index.rst deleted file mode 100644 index e295a28..0000000 --- a/src/shione/index.rst +++ /dev/null @@ -1,50 +0,0 @@ -Welcome to shione! -================== - -.. toctree:: - :glob: - :maxdepth: 1 - - */index - -Renken ------- - -Hi, I'm Renken, 25 years old from Algeria and I manage shione. I like a bunch -of stuff that I may talk about in the future. - -I worked at vermware on various interesting projects. I enjoyed a -university-free year focusing on vermware back in 2020. As of 2021, I am back to -university. - -I moved to Paris, France in February 2022 for a 6 months internship at Munic. I -then joined the company as a full-time employee starting November 2022! - -I'm writing plenty of Rust at work, mainly asynchronous using Tokio which is -pretty fun. - -I also do bouldering frequently nowadays, mainly at -https://paris-porteditalie.climb-up.fr/ but open to try out other gyms. - -You can email me at renken@shione.net and I'll be glad to reply. - -You can also find me on. - -* GitLab at https://gitlab.com/renken -* LastFM at https://www.last.fm/user/renkenrc -* Telegram at https://t.me/renken - -PGP -~~~ - -My `public key`_ fingerprint: - - 53334B09D2066FCF3A4A27BF1F2BB159B645E575 - -.. _public key: _static/renken.asc - -Shione ------- - -The name Shione means "sound of tide" (汐音). She is Yune's sister from Ikoku -Meiro no Croisée. diff --git a/src/shione/log/archive/2022/03/index.rst b/src/shione/log/archive/2022/03/index.rst deleted file mode 100644 index a78f369..0000000 --- a/src/shione/log/archive/2022/03/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -03 -== - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/archive/2022/04/1648898080/index.rst b/src/shione/log/archive/2022/04/1648898080/index.rst deleted file mode 100644 index 56dedb6..0000000 --- a/src/shione/log/archive/2022/04/1648898080/index.rst +++ /dev/null @@ -1,15 +0,0 @@ -.. _frustration-with-web-developers: - -Frustration with web developers -=============================== - -.. contents:: - - -Past few days, at least 5 websites rejected my email address because it doesn't -match their regular expression. I might consider switching to something -shorter/common that isn't taken already. - -I was thinking of renken.no maybe but that would imply I am from/live in Norway -which isn't an assumption I want others to have. I'll see what I can do about -this. diff --git a/src/shione/log/archive/2022/04/1648898929/index.rst b/src/shione/log/archive/2022/04/1648898929/index.rst deleted file mode 100644 index ccf324a..0000000 --- a/src/shione/log/archive/2022/04/1648898929/index.rst +++ /dev/null @@ -1,29 +0,0 @@ -Farewell vermware -================= - -.. contents:: - -vermware --------- - -vermware is one of the major reasons behind every positive aspect of me, be it -specific to programming or my personality in general. I'll be leaving vermware -soon after I get some stuff done such as migrating shione somewhere else. - -Big thanks and love to my dear brothers verm and ximin :D - -shione ------- - -I'll hack some GitLab pages-specific CICD config some time soon maybe. As for a -VPS, I'm still investigating the prices and stuff. Since I barely serve/host -anything other than shione itself, I was wondering if I could have a cheap VPS -with enough storage to turn it into my backup server instead of backing up on a -separate host such as borgbase. - -Emails ------- - -I'm always reachable through my personal email, which might change as mentioned -in :ref:`frustration-with-web-developers`, but I should note that both my -verm.im and vermwa.re will likely become inactive after a while. diff --git a/src/shione/log/archive/2022/04/1649273773/index.rst b/src/shione/log/archive/2022/04/1649273773/index.rst deleted file mode 100644 index 4bbf73f..0000000 --- a/src/shione/log/archive/2022/04/1649273773/index.rst +++ /dev/null @@ -1,10 +0,0 @@ -Welcome to shione.net! -====================== - -.. contents:: - -I have embraced the name shione to refer to my remote host. It became natural -over time so I figured I might as well buy shione.net domain. - -It also blends in well with my localhost name, siga, knowing that the latter is -a coastal place whereas the former translates to the sound of tide. diff --git a/src/shione/log/archive/2022/04/index.rst b/src/shione/log/archive/2022/04/index.rst deleted file mode 100644 index 10fe3b3..0000000 --- a/src/shione/log/archive/2022/04/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -04 -== - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/archive/2022/06/index.rst b/src/shione/log/archive/2022/06/index.rst deleted file mode 100644 index 51b5fb7..0000000 --- a/src/shione/log/archive/2022/06/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -06 -== - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/archive/2022/07/1657663189/index.md b/src/shione/log/archive/2022/07/1657663189/index.md deleted file mode 100644 index 0ed2238..0000000 --- a/src/shione/log/archive/2022/07/1657663189/index.md +++ /dev/null @@ -1,8 +0,0 @@ -# Switching to Markdown -*Written 2022-07-12 23:59* - -Sphinx supports Markdown through `myst-parser` as documented in -[https://www.sphinx-doc.org/en/master/usage/markdown.html](https://www.sphinx-doc.org/en/master/usage/markdown.html). -This is nice because most of the time I am writing Markdown especially on -GitLab, I don't have a hard dependency on RestructuredText itself meaning I can -safely just make the switch. diff --git a/src/shione/log/archive/2022/07/index.rst b/src/shione/log/archive/2022/07/index.rst deleted file mode 100644 index 4ca7b2d..0000000 --- a/src/shione/log/archive/2022/07/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -07 -== - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/archive/2022/index.rst b/src/shione/log/archive/2022/index.rst deleted file mode 100644 index 90ad555..0000000 --- a/src/shione/log/archive/2022/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -2022 -==== - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/archive/2023/04/index.md b/src/shione/log/archive/2023/04/index.md deleted file mode 100644 index 7712677..0000000 --- a/src/shione/log/archive/2023/04/index.md +++ /dev/null @@ -1,10 +0,0 @@ -# 04 - -```{toctree} ---- -maxdepth: 1 -glob: ---- - -*/index -``` diff --git a/src/shione/log/archive/2023/06/index.md b/src/shione/log/archive/2023/06/index.md deleted file mode 100644 index 86e7f6f..0000000 --- a/src/shione/log/archive/2023/06/index.md +++ /dev/null @@ -1,10 +0,0 @@ -# 06 - -```{toctree} ---- -maxdepth: 1 -glob: ---- - -*/index -``` diff --git a/src/shione/log/archive/2023/12/index.md b/src/shione/log/archive/2023/12/index.md deleted file mode 100644 index c45737b..0000000 --- a/src/shione/log/archive/2023/12/index.md +++ /dev/null @@ -1,10 +0,0 @@ -# 12 - -```{toctree} ---- -maxdepth: 1 -glob: ---- - -*/index -``` diff --git a/src/shione/log/archive/2023/index.md b/src/shione/log/archive/2023/index.md deleted file mode 100644 index 19b1e7d..0000000 --- a/src/shione/log/archive/2023/index.md +++ /dev/null @@ -1,10 +0,0 @@ -# 2023 - -```{toctree} ---- -maxdepth: 1 -glob: ---- - -*/index -``` diff --git a/src/shione/log/archive/index.rst b/src/shione/log/archive/index.rst deleted file mode 100644 index 9b04802..0000000 --- a/src/shione/log/archive/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -Archive -======= - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/de/index.rst b/src/shione/log/de/index.rst deleted file mode 100644 index ddb01f0..0000000 --- a/src/shione/log/de/index.rst +++ /dev/null @@ -1,9 +0,0 @@ -German notes -============ - -.. toctree:: - :glob: - :maxdepth: 1 - - ch1 - pronunciation diff --git a/src/shione/log/de/pronunciation.rst b/src/shione/log/de/pronunciation.rst deleted file mode 100644 index d9cb045..0000000 --- a/src/shione/log/de/pronunciation.rst +++ /dev/null @@ -1,92 +0,0 @@ -Pronunciation guide -=================== - -This, in addition to the tables provided by Colloquial German, should serve as a -good document for how German pronunciation is like. Of course, you *should* -always look up the pronunciation in its audio format and/or learn how to read -IPA table efficiently to improve your pronunciation skills. - -This is also helpful to have a, sometimes misleading, sometimes correct guess of -the word's definition simply by saying them. For example, jung is pronounced -young and indeed does mean young. - -Keep in mind that all German nouns are capitalized e.g., Buch for book. - -.. contents:: - -Vowels ------- - -.. note:: - Keep in mind that I myself don't know most of these words. They're used - to simply give an example on how German sounds like in a way. It'd be - good if you pick up a word or two from this guide. I don't think you'll - be revisiting this page much. Maybe I'll consider updating the tables - with better/more fitting examples that you *may* find interesting. - -Vowels are either short or long like most languages. They are long when - -* They are doubled: Paar (Pair), Haar (hair), Schnee (Snow). -* They are followed by h: sehen (to look. Sehen is the noun view, notice the - capitalization matters!), Jahr (year), Ohr (ear). -* They are followed by a single consonant: gut (good), rot (red). - -They are shower when - -* They are followed a double consonant: Bett (bed), Mann (man), hoffen (to - hope). -* They are followed by two or more consonants: sitzen (to sit), ernst (serious, - look it up!). - -.. list-table:: Examples - :header-rows: 3 - - * * Vowel - * Type - * English equivalent sound - * German words - * * a - * long - * father - * Vater, haben, sagen - * * a - * short - * hot - * Vasser, Hand, alt - * * e - * long - * may - * See, geben - * * e - * short - * let - * Ende - * * i - * long - * greet - * Tiger, Universität - * * i - * short - * sit - * ist, dick, Mitte, Mittag, Mittwoch - * * ie - * long - * similar to here, look up how the following are pronounced. - * Bier, hier, fliegen, liegen - * * o - * long - * open - * Sohn, Brot, Segelboot - * * o - * song - * Sonne, Sommer - * (none) - * * u - * long - * dune - * Blume, Pudel, Handschuh - * * u - * short - * bush - * Mutter, und, unter - diff --git a/src/shione/log/index.rst b/src/shione/log/index.rst deleted file mode 100644 index 723ebd5..0000000 --- a/src/shione/log/index.rst +++ /dev/null @@ -1,22 +0,0 @@ -Weblog -====== - -Unfinished thoughts, unfinished projects. - -Series ------- - -.. toctree:: - :glob: - :maxdepth: 1 - - */index - -Posts ------ - -.. toctree:: - :glob: - :maxdepth: 1 - - */*/*/*/index diff --git a/src/shione/log/mqtt/index.rst b/src/shione/log/mqtt/index.rst deleted file mode 100644 index cbe05e7..0000000 --- a/src/shione/log/mqtt/index.rst +++ /dev/null @@ -1,50 +0,0 @@ -MQTT -==== - -I first came across the MQTT protocol when I was looking for possible -alternative ideas and implementations to Syncplay. The key concept was that -video players such as mpv would connect to a central server, share information -about their media they're playing and synchronize their state with other peers. - -MQTT stands for Message Queuing Telemetry Transport and is an open OASIS and ISO -standard. It is designed to be lightweight and primarily for as a -publish-subscribe protocol which is what synchronization-based software such as -Syncplay *should* use. Another aspect of MQTT that makes it a viable design -option for media synchronization is its simplicity of design. That leaves the -implementer with a small well-defined logic to implement which means higher -chances of an efficient implementation and less unintentional errors. It also is -reasonable to go for a minimal transport protocol to provide a minimal service -such as media synchronization. - -I'll be reading through the standard version 5.0.0 published in 07 March 2019 -and trying to provide a UML-based representation of the MQTT standard with few -notes to the C implementation. Keep in mind that at the time of writing this, I -do not plan on implementing myself but I believe these notes would be helpful -for anyone wishing to implement MQTT themselves. - -Another note to keep in mind is that I do not have prior MQTT experience so I'm -not familiar with "best solutions" or "practice workarounds". I'll solely view -MQTT through the lens of the standards I have downloaded. Possible notes *may* -be added in the future. - -* Keep in mind that I'm by no means an expert and have very little experience - with real-word software. I'll be researching things I do not understand and - share my explanation here if possible. I suggest you double-check every - information provided here as well in order to spot any misconception or - misunderstanding. - -* Do note expect a strict and regulated publishing schedule, I'll only read the - standard and write about it in my free time whenever I wish. You *may* - contribute if you wish too. Alternatively you may advance on your own. - -* I *may not* respect the styling and indentation of the standard e.g., I *may* - choose to merge a sub-header back with its parent-head. - -Below are notes about each chapter in separate pages in the order provided by -the standard. - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/log/mqtt/intro/app_msg.uml b/src/shione/log/mqtt/intro/app_msg.uml deleted file mode 100644 index 2c9950a..0000000 --- a/src/shione/log/mqtt/intro/app_msg.uml +++ /dev/null @@ -1,3 +0,0 @@ -@startuml - -@enduml diff --git a/src/shione/log/mqtt/intro/client.uml b/src/shione/log/mqtt/intro/client.uml deleted file mode 100644 index 8c4abca..0000000 --- a/src/shione/log/mqtt/intro/client.uml +++ /dev/null @@ -1,9 +0,0 @@ -@startuml - -Client -> Server: Establishes a network connection -Client -> Server: Publishes an application mesage -Client -> Server: Subscribes to request application messages -Client -> Server: Unsubscribes to remove a request for application messages -Client -> Server: Closes the network connection - -@enduml diff --git a/src/shione/log/mqtt/intro/index.rst b/src/shione/log/mqtt/intro/index.rst deleted file mode 100644 index 7d35aa8..0000000 --- a/src/shione/log/mqtt/intro/index.rst +++ /dev/null @@ -1,95 +0,0 @@ -Introduction -============ - -.. contents:: - -Terminology ------------ - -MQTT is a server-client protocol in which all clients *must* connect to a server -in order to exchange information which have to go through the server. - -Network connection -~~~~~~~~~~~~~~~~~~ - -The standard defines network connection as the following. - -:: - - A construct provided by the underlying transport protocol that is being - used by MQTT. - * It connects the Client to the Server. - * It provides the means to send an ordered, lossless, stream of bytes in - both directions. - -I believe that this definition was mainly provided as to not limit the network -connection, specifically the network protocol, to TCP as it is possibly the most -common network protocol used when implementing MQTT. You can emulate the bullet -points under non-TCP network protocols e.g., UDP and implement MQTT on top of -it. - -Session -~~~~~~~ - -:: - - A stateful interaction between a Client and a Server. Some Sessions last - only as long as the Network Connection, others can span multiple - consecutive Network Connections between a Client and a Server. - -This allows for the possibility of attempting re-connection after it has been -lost to preserve the same session. - -Application message -~~~~~~~~~~~~~~~~~~~ - -The information sent between clients through servers is called the application -message which is carried by the MQTT protocol across the network. It contains -payload data, a Quality of Service (QoS), a collection of properties and a topic -name. - -Subscription -^^^^^^^^^^^^ - -A subscription comprises a topic filter and a maximum QoS. A subscription is -associated with a single session. A session can contain more than one -subscription. Each subscription within a session has a different topic filter. - -Shared subscription can be associated with more than one session. I assume this -is used for the case of multiple servers? I don't see the need to have multiple -sessions to the same server but it is allowed by the standard. - -Wildcard subscription is a subscription with a topic filter containing one or -more wildcard characters. This allows the subscription to match more than one -topic name. Basically ``*`` in regular expression. - -write UML diagram about user <-- session 0..* -- 1..1 subscription - -Topic name -^^^^^^^^^^ - -The label attached to an application message which is matched against the -subscriptions known to the server. This is up to the application to use it -efficiently. In the case of media synchronization, would you rather use do -central topics e.g., ``/media/filename`` and users push to that topic or would -you do per-user topics ``/renken/media/filename`` and only ``renken`` can -publish to that topic. Similar ideas to that come to mind I guess. - -Topic filter -^^^^^^^^^^^^ - -An expression contained in a subscription to indicate an interest in one or more -topics. A topic filter can include wildcard characters. - -Client -~~~~~~ - -As discussed before, in MQTT, the client can only communicate with a server and -not with other clients. Note that the client is not limited to a single server. -It also not limited to a fixed number of application messages published or -requested. - -The server acts as an intermediary between clients which publish application -messages and clients which have made subscriptions. - -.. uml:: client.uml diff --git a/src/shione/misc/index.rst b/src/shione/misc/index.rst deleted file mode 100644 index 6d08214..0000000 --- a/src/shione/misc/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -Miscellaneous -============= - -.. toctree:: - :glob: - :maxdepth: 1 - - */index diff --git a/src/shione/misc/p/index.rst b/src/shione/misc/p/index.rst deleted file mode 100644 index 6f41197..0000000 --- a/src/shione/misc/p/index.rst +++ /dev/null @@ -1,70 +0,0 @@ -Pictures -======== - -.. contents:: - :depth: 3 - -Happy birthday!! ----------------- - -I'd like to thank pika and verm for this lovely picture, it never fails to -put a smile on my face. Here's the original krita file `renkenwaifu`_! - -Hacker/Artist pika can be found on Pixiv at https://www.pixiv.net/en/users/46770896 - -.. _renkenwaifu: ../../_static/renkenwaifu.kra - -.. image:: ../../_static/renkenwaifu.png - :name: nonoka-birthday - :alt: nonoka-birthday - :align: center - :width: 407.5px - :height: 671.75px - -Wednyasday's nyan night!! -------------------------- - -pikanyan drew another picture of nonoka on a late Wednesday night comfy stream -and it's amazing. I love it! Here's the krita file `nonokasayshi`_. - -.. _nonokasayshi: ../../_static/nonokasayshi.kra - -.. image:: ../../_static/nonokasayshi.png - :name: nonoka-wednyasday - :alt: nonoka-wednyasday - :align: center - -Original Do NOT Steal!! ------------------------ - -pikapyon drew yet another amazing picture, this time with the three of us -together. From left to right. - -1. ximin https://ximinity.net/ -2. verm https://mel.vin/, spam him with emails if his website still doesn't have - a proper homepage -3. renken (me) - -Krita file at `donotsteal`_. - -.. image:: ../../_static/originalOCdonotsteal.png - :name: ximin-verm-renken - :alt: ximin-verm-renken - :align: center - -.. _donotsteal: ../../_static/originalOCdonotsteal.kra - -Happy nichijou birthday!! -------------------------- - -pikadesu picked an amazing theme for this year's birthday's gift, nichijou! I -really love it and I'm looking forward to using sakamoto as my avatar in case -nonoka was considered too much for wörk :^) Thank you very much for this -pikadesu! Here's the krita file as always `renkenbirthdaynichijou`_. - -.. image:: ../../_static/renkenbirthdaynichijou.png - :name: renken-birthday-nichijou - :alt: renken-birthday-nichijou - :align: center - -.. _renkenbirthdaynichijou: ../../_static/renkenbirthdaynichijou.kra diff --git a/src/shione/plantuml.cfg b/src/shione/plantuml.cfg deleted file mode 100644 index b07eefd..0000000 --- a/src/shione/plantuml.cfg +++ /dev/null @@ -1,96 +0,0 @@ -skinparam ActivityBackgroundColor White -skinparam ActivityBorderColor Black -skinparam ActivityDiamondBackgroundColor #e6e6e6 -skinparam ActivityDiamondBorderColor Black -skinparam ActivityDiamondFontStyle Italic -skinparam ActorBackgroundColor White -skinparam ActorBorderColor Black -skinparam AgentBackgroundColor White -skinparam AgentBorderColor Black -skinparam ArrowColor Black -skinparam ArtifactBackgroundColor White -skinparam ArtifactBorderColor Black -skinparam BackgroundColor White -skinparam BoundaryBackgroundColor White -skinparam BoundaryBorderColor Black -skinparam CardBackgroundColor White -skinparam CardBorderColor Black -skinparam ClassBackgroundColor White -skinparam ClassBorderColor Black -skinparam ClassHeaderBackgroundColor White -skinparam CloudBackgroundColor White -skinparam CloudBorderColor Black -skinparam CollectionsBackgroundColor White -skinparam CollectionsBorderColor Black -skinparam ComponentBackgroundColor White -skinparam ComponentBorderColor Black -skinparam ControlBackgroundColor White -skinparam ControlBorderColor Black -skinparam DatabaseBackgroundColor White -skinparam DatabaseBorderColor Black -skinparam EntityBackgroundColor White -skinparam EntityBorderColor Black -skinparam FileBackgroundColor White -skinparam FileBorderColor Black -skinparam FolderBackgroundColor White -skinparam FolderBorderColor Black -skinparam FrameBackgroundColor White -skinparam FrameBorderColor Black -skinparam IconPackageBackgroundColor White -skinparam IconPrivateBackgroundColor White -skinparam IconProtectedBackgroundColor White -skinparam IconPublicBackgroundColor White -skinparam InterfaceBackgroundColor White -skinparam InterfaceBorderColor Black -skinparam LegendBackgroundColor White -skinparam LegendBorderColor Black -skinparam NodeBackgroundColor White -skinparam NodeBorderColor Black -skinparam NoteBackgroundColor #e7f2fa -skinparam NoteBorderColor #6ab0de -skinparam ObjectBackgroundColor White -skinparam ObjectBorderColor Black -skinparam PackageBackgroundColor White -skinparam PackageBorderColor Black -skinparam PageBorderColor Black -skinparam ParticipantBackgroundColor White -skinparam ParticipantBorderColor Black -skinparam PartitionBackgroundColor White -skinparam PartitionBorderColor Black -skinparam QueueBackgroundColor White -skinparam QueueBorderColor Black -skinparam RectangleBackgroundColor White -skinparam RectangleBorderColor Black -skinparam SequenceBoxBackgroundColor White -skinparam SequenceBoxBorderColor Black -skinparam SequenceDividerBackgroundColor White -skinparam SequenceDividerBorderColor Black -skinparam SequenceGroupBackgroundColor White -skinparam SequenceGroupBodyBackgroundColor White -skinparam SequenceGroupBorderColor Black -skinparam SequenceLifeLineBackgroundColor #e6e6e6 -skinparam SequenceLifeLineBorderColor Grey -skinparam SequenceReferenceBackgroundColor White -skinparam SequenceReferenceBorderColor Black -skinparam SequenceReferenceHeaderBackgroundColor White -skinparam StackBackgroundColor White -skinparam StackBorderColor Black -skinparam StateBackgroundColor White -skinparam StateBorderColor Black -skinparam StereotypeABackgroundColor White -skinparam StereotypeABorderColor Black -skinparam StereotypeCBackgroundColor White -skinparam StereotypeCBorderColor Black -skinparam StereotypeEBackgroundColor White -skinparam StereotypeEBorderColor Black -skinparam StereotypeIBackgroundColor White -skinparam StereotypeIBorderColor Black -skinparam StereotypeNBackgroundColor White -skinparam StereotypeNBorderColor Black -skinparam StorageBackgroundColor White -skinparam StorageBorderColor Black -skinparam SwimlaneBorderColor Black -skinparam TitleBackgroundColor White -skinparam TitleBorderColor Black -skinparam UsecaseBackgroundColor White -skinparam UsecaseBorderColor Black diff --git a/src/shione/_static/nono.png b/static/avatar.png similarity index 100% rename from src/shione/_static/nono.png rename to static/avatar.png diff --git a/static/debian.png b/static/debian.png new file mode 100644 index 0000000..1286ac1 --- /dev/null +++ b/static/debian.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f66e2f9357b57a929b5cda4a7740bf5f23db43285fbe1e7f900b7f55affa851 +size 784 diff --git a/src/shione/_static/renken.asc b/static/renken.asc similarity index 93% rename from src/shione/_static/renken.asc rename to static/renken.asc index 31e0600..3d3943a 100644 --- a/src/shione/_static/renken.asc +++ b/static/renken.asc @@ -12,19 +12,19 @@ SNNvQjC9Uu6+E0p/omWvTtaSHdAgDiFC2MsCG7uenXMaKZRrbuPoGsFwGsm8kmBW x9wXfty1TVQpN58hWMJCrpbzor3puny5eptf/owbArurYEI7xnO9gfZv9SEAVWTy r+naEkut7b7MDtoal/7oVpSQk4sgyb2earQ68cYoDf4qg0pChibTKWaXbQARAQAB tCpNb2hhbW1lZCBBbWFyLUJlbnNhYmVyIDxyZW5rZW5Ac2hpb25lLm5ldD6JAlcE -EwEKAEECGwMFCQQtTCkFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQRTM0sJ0gZv -zzpKJ78fK7FZtkXldQUCZDP1xAIZAQAKCRAfK7FZtkXldZRlD/4jbaC/5WIK5ktj -1SX9gpisTxbihJGrU5zqFppBBNd231cpmhLohd5CXywSdMVo3RhopPn5D6zJ5Ps4 -Ix7lhyY1pD4rZokOV4OGdHsvBHecaJpS1elAsdUdynuFIcakui68by/rFhHQH/Ei -hvJpzAKvBsEDb/0a1Hu23JciIcNFcaPnynpDbb93YPRkVV8BJSA2Sbq+GXGCki89 -Vawdld0noZqhEfPd8FmusEpfuZ8qSmZ5sQEv424ouHvOUGLqklcYHxByhlfm52WV -b9g67ERoTDOhqQp2Ykmcb4y8yi6YVWSCxyKiXqXgHKB/R5cn3I0t6keNblbYLVsK -d3SHB5PsUrqQAZhr4ZIYQlnQEH/7oHSSG+OyojPsGVkIEzVXBV+p7GhJOWrHiGAH -9NJD4Da3v5EBGNUgQU/vxPTXjnR5UHFK6aYmcQCRQUYKYj6gKhtTy/7Klgr7pHuD -nuNv6F7wRgjfBewYHdlISECaTyAO+wVSfoUryL29rrk3xy0CQMNEL55BxNvQ7GmZ -RpweGGD45hFtMYT1SgrO7TIu0QxPXxpvXGRHki2iWzrT6oKQ2yu8vLfikqOWPX1w -2ASc3Ff+cmwucdD7S5seBs1Z5fmX/G1Ly5FcPbchBe5Z+LBOMQIwI6lkej2o5BVm -DGU3aqXO9Q9wYf1rfWzUpl19MDC0WLRATW9oYW1tZWQgQW1hci1CZW5zYWJlciAo +EwEKAEECGwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4ACGQEWIQRTM0sJ0gZvzzpK +J78fK7FZtkXldQUCZjZHbgUJBi+hSgAKCRAfK7FZtkXldVljD/43wrsRRG8CQTX8 +0t1MHeCyHd6BzO1m6U9U1zH4NNiroAPvhWoI9JX4p83KjU9SlUTeEsMDi7H6keMw +cyzK9tKKN4cc1koHks0Obf987D8jqnl7ZdWcSFwdf3PVeR1jWJKwgKw9c4Waiin2 +Jnva4Q2ZJccwRsFCZtAFpl/x4YBlN41nmUmWec0xF3atPh1Amz/apa62+08x5rVD +x3SpQ/Hsp56jZYSTBqdNt+THfQW3HcCUBT16Ph22ZNFNKzS1pB6XgLD2CpEf8Ukw +VW1QcJFwyyS1aPdftkx70M+6S+4ufQ74bb7s6LbRmbgfPIrHjXET4X9Fpgowvi4G +yhnQ24Of0lRsxa0ahZYS/NAVNdhdzJzfJlgw3q0X/5l4+y+e5JCDLxzSuqizbTo7 +Ki6lSxfNtgU/PNTouymtB2/NRzyeIWlvZZsnI62lipBpchhIJkzAsxbg4fPpN4y5 +fbcubFnUBKvPD+FXMX/BIDU4BCFKtZ+F4O/Rbk1jMRC5PqohTQ9POxE0zmGtqVtF +3grnmlu5FKkVtibOWSPkWQDeo+xtjELiPsxoaT3FFyNjJBzB2+ebvMPdTlNA0uvu +OMla4Q++STDgQ3bsA9mqaKtN0p2hMXe8Uw6yfUIG7I67V21c7gsfAE5kq50vvV3T +yWTd7oR+8K4lB9WVvc14Lt6pksB8B7RATW9oYW1tZWQgQW1hci1CZW5zYWJlciAo TXVuaWMpIDxtb2hhbW1lZC5hbWFyLWJlbnNhYmVyQG11bmljLmlvPokCWwQwAQoA RRYhBFMzSwnSBm/POkonvx8rsVm2ReV1BQJkM/yWJx0gQ3JlYXRpbmcgYSBzZXBh cmF0ZSBQR1Aga2V5IGZvciB3b3JrLgAKCRAfK7FZtkXldRyVD/4hgcZV9Ez6W/yy @@ -352,17 +352,17 @@ ldwC3RdWMcRo5XctpsopMvEsayRrDad61U/ZnzYBd9eTx/97I+67j3uFDiAgBEVb n8V0G1OPIOY+PVIKAndUNgm33xLPmg4qaHoP/HdwAImpHCbPOWiln/BOFt0lMvey KfYudaBRmsmLtqUN4zVbxBSMxT8tVGEaFhjuHAv0cFVG4vkB8KNy/diPic3ECqNB i5uG7SgfUbTJuoKx7tB/9taJABEBAAGJAjwEGAEKACYCGwwWIQRTM0sJ0gZvzzpK -J78fK7FZtkXldQUCZDPzKAUJBC1NBAAKCRAfK7FZtkXldSCXD/9ScEJ/SZI4YAw7 -Eea1ZTFCMOLzmkb52aX/HiGDDplG4nvPEdT4x0v/tkWkfL6/6Bfa+JFp+Uo+/hFX -Z76XP24kwqpgMmz3VgQq7jK1HScSM+dZojsIII2Wo3cAF0gVVEGAzUniN0tNIrIF -Qsw44o7LeTl3Odx2m/q+e1g2Fu0B32q0+jEGzRSIwYrASdAJCT8VC5JzJrlWKOBf -RKHJ9m3JYwNsABjX9mMGiqWjF/YKm7z1pKMrHuvNtSswx8KrbLVPuh+sWZWh+BpP -B1Qt/J2d2fXyTFP3E5zY4XnYP+RJya/LO7pJ3aF1U+QaRlVzMOQYp14PO1E4NEL+ -H7kNpXndoOwaBG/f4YVY661s3yQSkJFt2AXiNC/UCFzMu3THOvNdmijYZOzpzwQN -6n6zixL52BkuPnR2V+NZj0Uhz+Y0nw3CyW/Nwf+CNlaUiHH8X3bqM3/G0aO9+4v2 -FbvDfNyqPZy6Leoy3ix/t38HZX2ORWCsYyboJcGZkqtkLDt3aMIHB2z2KOPw6WnI -vppwvBaswzoTsY61Lg0LINE385CRfUwel1Xacaz1VYMwB8rU1bEI0v9eXaAM50Ew -5XZB7FqtvbA5KcV2hQXyCVF4nMHKElwkT/BUutoNTUW/PzgIWH5oHO0mlzH6Krbc -1/IDwydkcI6IdygNP3VXtMLTo3of0w== -=dwnC +J78fK7FZtkXldQUCZjZHHwUJBi+g+wAKCRAfK7FZtkXldfrxEACmIYKDSzkcql7U +3MizkdDQpJEydu8K/uDWcBenaAIbsrSBH1oLTlHnfA+98JWROdXX06M3ZVdef1bl +T7jMagbMjBH/WFfghKBnm1/RKbPbj/MsbVXor2MMrHg8rSFhhtc0HafaPIki4HHQ +zdmrTqQ4Nq/Nv0vCmxD8WkCYpUkSiYv78itYcEQaZBGSxV2kvzfjBDA9LtF7Ah6j +SGErjf1LtaaAY0MHhvG0Mds5QOyENi4/B+0DSHKNYH8gSv1JMYc4xjnMqian61M7 +WD24NS6Fq0NpBOJUx+9kYPG4MVBvYKztHYLGgj7xSzlYGdxXy/fMy+Y4HgdJTUD+ +wN1A/84s1iukWZ+wDMhfUZ4PDyKgprqsX8zJXPSmXGzKNqJkeE/cPw7GldBED6mh +rqNsyP+ZZPDp3pqi4M9VMmeg3juS/4wpX5EpgngVrReknCuyEPITs8QBmwBpkVdB +cnaQ2lPSj0rFvzfSc8E74qzESbq+ViuEcLSRKEZq3mr4qjOu+fPTZsH8rK7vzQZr +tyqS9kge53dvr2W+lfuGSKfKKoXEOCm7jnKWIlGrQoe2tCvBatqwdxq9B49v5Ok5 +MmViBJ3jhDwbHizePXVx01FT8EEU4k0PGqE9Jh5mYlQFtpwkttsggVV8tB9wjFkm +K2PrOlFYvydZvMutE99EtR1nkj2u5w== +=j72I -----END PGP PUBLIC KEY BLOCK-----