From a6fd45d8d4f5fef12361b482743de0caf1fbc2b6 Mon Sep 17 00:00:00 2001 From: xdavidwu Date: Sat, 2 Apr 2022 22:54:15 +0800 Subject: [PATCH] move to sourcehut --- .builds/gemini.yml | 31 +++++++++++++++++++++ .builds/https.yml | 27 ++++++++++++++++++ .gitlab-ci.yml | 69 ---------------------------------------------- _config.yml | 6 ++-- 4 files changed, 61 insertions(+), 72 deletions(-) create mode 100644 .builds/gemini.yml create mode 100644 .builds/https.yml delete mode 100644 .gitlab-ci.yml diff --git a/.builds/gemini.yml b/.builds/gemini.yml new file mode 100644 index 0000000..74d6839 --- /dev/null +++ b/.builds/gemini.yml @@ -0,0 +1,31 @@ +image: alpine/edge +oauth: pages.sr.ht/PAGES:RW +packages: + - py3-pip + - hut +tasks: + - tools: | + pip3 install md2gemini + find /lib /usr/lib ~/ -name 'renderers.py' -exec sed -i -E 's/text\.rstrip\(\)\.endswith\("\[" \+ str\(self\.footnote_num\) \+ "\]"\)/False/' {} \; + - generate: | + cd xdavidwu.link/_posts + for i in $(ls -r *.md);do + OIFS="$IFS" + IFS=$'\n' + mv "$i" "${i}.orig" + while read LINE; do + F=$(echo "$LINE" | sed 's/^{% include_relative \(.*\) %}$/\1/') + if [ -f "$F" ]; then + cat "$F" >> "$i" + else + printf "%s\n" "$LINE" >> "$i" + fi + done < "${i}.orig" + IFS=$OIFS + echo "=> $(echo $i | sed s/\.md$/.gmi/) $(echo $i | cut -f 1-3 -d '-'): $(grep '^title:' $i | cut -f 2 -d \")" >> ../gemini/index.gmi + done + md2gemini -w -d ../gemini -a -f -i tab -l paragraph *.md + - pack: | + tar -C xdavidwu.link/gemini -cvz . > gemini.tar.gz + - publish: | + hut pages publish gemini.tar.gz -d xdavidwu.link -p GEMINI diff --git a/.builds/https.yml b/.builds/https.yml new file mode 100644 index 0000000..759dd87 --- /dev/null +++ b/.builds/https.yml @@ -0,0 +1,27 @@ +image: alpine/edge +oauth: pages.sr.ht/PAGES:RW +packages: + - npm + - ruby-bundler + - ruby-jekyll + - hut +secrets: + - 6d48e21f-999e-4b3f-b3db-71a77927cc62 +tasks: + - npm: | + cd xdavidwu.link + npm ci + npm run copy-vendor + - jekyll: | + cd xdavidwu.link + bundle install -j $(nproc) + bundle exec rougify style base16.solarized.dark | sed 's/002b36/202124/g' >> _sass/minimal-mistakes/skins/_custom.scss + bundle exec rougify style base16.solarized.light >> _sass/minimal-mistakes/skins/_custom-light.scss + set +x + export MATRIX_ACCESS_TOKEN=$(cat ~/.matrix_access_token) + set -x + bundle exec jekyll build + - pack: | + tar -C xdavidwu.link/_site -cvz . > https.tar.gz + - publish: | + hut pages publish https.tar.gz -d xdavidwu.link diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index fbcf143..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,69 +0,0 @@ -variables: - GIT_SUBMODULE_STRATEGY: recursive - -gemini: - stage: build - image: alpine:latest - before_script: - - apk add py3-pip - - pip3 install md2gemini - - find /lib /usr/lib ~/ -name 'renderers.py' -exec sed -i -E 's/text\.rstrip\(\)\.endswith\("\[" \+ str\(self\.footnote_num\) \+ "\]"\)/False/' {} \; - script: - - cd _posts - - > - for i in $(ls -r *.md);do - OIFS="$IFS" - IFS=$'\n' - mv "$i" "${i}.orig" - while read LINE;do - F=$(echo "$LINE" | sed 's/^{% include_relative \(.*\) %}$/\1/') - if [ -f "$F" ];then - cat "$F" >> "$i" - else - printf "%s\n" "$LINE" >> "$i" - fi - done < "${i}.orig" - IFS=$OIFS - echo "=> $(echo $i | sed s/\.md$/.gmi/) $(echo $i | cut -f 1-3 -d '-'): $(grep '^title:' $i | cut -f 2 -d \")" >> ../gemini/index.gmi - done - - md2gemini -w -d ../gemini -a -f -i tab -l paragraph *.md - artifacts: - paths: - - gemini - -https: - stage: build - image: ruby:alpine - variables: - JEKYLL_ENV: production - LC_ALL: "C.UTF-8" - before_script: - - apk add npm - - npm ci - - npm run copy-vendor - - bundle check --path .bundler || apk add git make gcc musl-dev g++ - - mkdir -p .bundler - - bundle install -j $(nproc) --path .bundler - script: - - bundle exec rougify style base16.solarized.dark | sed 's/002b36/202124/g' >> _sass/minimal-mistakes/skins/_custom.scss - - bundle exec rougify style base16.solarized.light >> _sass/minimal-mistakes/skins/_custom-light.scss - - bundle exec jekyll build - artifacts: - paths: - - _site - cache: - paths: - - .bundler - -deploy: - stage: deploy - image: alpine:latest - before_script: - - apk add curl - script: - - tar -C gemini -cvz . > gemini.tar.gz - - tar -C _site -cvz . > https.tar.gz - - curl --oauth2-bearer "$SRHT_PAT" -Fcontent=@gemini.tar.gz -Fprotocol=GEMINI https://pages.xdavidwu.link/publish/xdavidwu.link - - curl --oauth2-bearer "$SRHT_PAT" -Fcontent=@https.tar.gz -Fprotocol=HTTPS https://pages.xdavidwu.link/publish/xdavidwu.link - only: - - master diff --git a/_config.yml b/_config.yml index 647a07b..d542fb8 100644 --- a/_config.yml +++ b/_config.yml @@ -26,7 +26,7 @@ url: "https://xdavidwu.link" # the base hostname & protocol for your site e.g. " baseurl: "" # the subpath of your site, e.g. "/blog" repository: # GitHub username/repo-name e.g. "mmistakes/minimal-mistakes" since: "2018" -license_url: "https://gitlab.xdavidwu.link/xdavidwu/xdavidwu.xdavidwu.link/-/blob/master/LICENSE" +license_url: "https://git.xdavidwu.link/~xdavidwu/xdavidwu.link/tree/master/item/LICENSE" teaser: # path of fallback teaser image, e.g. "/assets/images/500x300.png" logo: # path of logo image to display in the masthead, e.g. "/assets/images/88x88.png" masthead_title: # overrides the website title displayed in the masthead, use " " for no title @@ -141,8 +141,8 @@ footer: icon: "github" # url: - label: "Source code" - icon: "gitlab" - url: "https://gitlab.xdavidwu.link/xdavidwu/xdavidwu.xdavidwu.link" + icon: "circle-thin" + url: "https://git.xdavidwu.link/~xdavidwu/xdavidwu.link" - label: "Bitbucket" icon: "bitbucket" # url: -- 2.43.0