add mirror: sourceforge.net

This commit is contained in:
Milan Hauth 2023-09-29 17:57:17 +02:00
parent 66666bfdd1
commit b0fbf70f2c
4 changed files with 93 additions and 12 deletions

1
.gitignore vendored
View File

@ -3,3 +3,4 @@ pnpm-lock.yaml
package-lock.json
trash
*.trash.*
secrets/

View File

@ -62,16 +62,16 @@ we can open markdown files offline with (for example) the [Markdown Preview Plus
subscribe to the [RSS feed](https://github.com/milahu/alchi/commits/master.atom) for notifications of project commits,
or use github's [watch repo](https://docs.github.com/en/github/managing-subscriptions-and-notifications-on-github/setting-up-notifications/configuring-notifications#configuring-your-watch-settings-for-an-individual-repository) function
* book: [Pallas. Wer sind meine Freunde? Gruppenaufbau nach Persönlichkeitstyp](https://milahu.github.io/alchi/src/whoaremyfriends/wersindmeinefreunde.html). draft. rewrite of `whoaremyfriends` in german ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/whoaremyfriends/wersindmeinefreunde.html)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/whoaremyfriends/wersindmeinefreunde.html))
* book: [Pallas. Wer sind meine Freunde? Gruppenaufbau nach Persönlichkeitstyp](https://milahu.github.io/alchi/src/whoaremyfriends/wersindmeinefreunde.html). draft. rewrite of `whoaremyfriends` in german ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/whoaremyfriends/wersindmeinefreunde.html)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/whoaremyfriends/wersindmeinefreunde.html)) ([mirror: sourceforge](https://milahu-alchi.sourceforge.io/src/whoaremyfriends/wersindmeinefreunde.html))
* [google translate](https://milahu-gitlab-io.translate.goog/alchi/src/whoaremyfriends/wersindmeinefreunde.html?_x_tr_sl=de&_x_tr_tl=en&_x_tr_hl=de&_x_tr_pto=wapp). Sorry I don't have a proper english version at the moment. I made [a translation tool](src/alchi-book/scripts/translate.js) for my alchi-book, which I will use here too.
* rendered PDF files: https://github.com/milahu/alchi-pdf
* flyer: [Dorfkultur ist Zukunft, aber ... Wer sind meine Freunde?](https://milahu.github.io/alchi/src/dorfkultur/dorfkultur.html) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/dorfkultur/dorfkultur.html))
* flyer: [Dorfkultur ist Zukunft, aber ... Wer sind meine Freunde?](https://milahu.github.io/alchi/src/dorfkultur/dorfkultur.html) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/dorfkultur/dorfkultur.html)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/dorfkultur/dorfkultur.html)) ([mirror: sourceforge](https://milahu-alchi.sourceforge.io/src/dorfkultur/dorfkultur.html))
* [villagecults are the future, but ... who are my friends?](src/dorfkultur/villagecults.html.pdf) english version. automatic translation by google translate
* [google translate](https://milahu-github-io.translate.goog/alchi/src/dorfkultur/dorfkultur.html?_x_tr_sl=de&_x_tr_tl=en&_x_tr_hl=de&_x_tr_pto=wapp). Sorry I don't have a proper english version at the moment.
* visualization: [alchi-maps](https://milahu.github.io/alchi/src/alchi-maps/public/alchi-maps.html) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/alchi-maps/public/alchi-maps.html))
* book: [Pallas. Extended Families and Small States](https://milahu.github.io/alchi/src/alchi-book/build/) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/alchi-book/build/))
* rewrite: [Who are my friends? Team composition by personality type](https://milahu.github.io/alchi/src/whoaremyfriends/whoaremyfriends.html) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/whoaremyfriends/whoaremyfriends.html))
* personality test: [alchi-test](https://milahu.github.io/alchi/src/alchi-test/public/) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/alchi-test/public/)). combination of multiple personality tests (mostly Big Five), returns result in the four elements (four basetypes)
* visualization: [alchi-maps](https://milahu.github.io/alchi/src/alchi-maps/public/alchi-maps.html) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/alchi-maps/public/alchi-maps.html)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/alchi-maps/public/alchi-maps.html)) ([mirror: sourceforge](https://milahu-alchi.sourceforge.io/src/alchi-maps/public/alchi-maps.html))
* book: [Pallas. Extended Families and Small States](https://milahu.github.io/alchi/src/alchi-book/build/) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/alchi-book/build/)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/alchi-book/build/)) ([mirror: sourceforge](https://milahu-alchi.sourceforge.io/src/alchi-book/build/))
* rewrite: [Who are my friends? Team composition by personality type](https://milahu.github.io/alchi/src/whoaremyfriends/whoaremyfriends.html) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/whoaremyfriends/whoaremyfriends.html)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/whoaremyfriends/whoaremyfriends.html)) ([mirror: sourceforge](https://milahu-alchi.sourceforge.io/src/whoaremyfriends/whoaremyfriends.html))
* personality test: [alchi-test](https://milahu.github.io/alchi/src/alchi-test/public/) ([mirror: gitlab](https://milahu.gitlab.io/alchi/src/alchi-test/public/)) ([mirror: codeberg](https://milahu.codeberg.page/alchi/src/alchi-test/public/)) ([mirror: sourceforge](https://milahu-alchi.sourceforge.io/src/alchi-test/public/)). combination of multiple personality tests (mostly Big Five), returns result in the four elements (four basetypes)
<details>
@ -216,6 +216,7 @@ in the rare case that this project is censored, here are some mirror locations
* github.com: https://github.com/milahu/alchi + https://milahu.github.io/alchi/
* gitlab.com: https://gitlab.com/milahu/alchi + https://milahu.gitlab.io/alchi/
* codeberg.org: https://codeberg.org/milahu/alchi + https://milahu.codeberg.page/alchi/
* sourceforge.net: https://sourceforge.net/projects/milahu-alchi/ + https://milahu-alchi.sourceforge.io/
* gitea.io: https://try.gitea.io/milahu/alchi
* notabug.org: https://notabug.org/milahu/alchi
* disroot.org: https://git.disroot.org/milahu/alchi
@ -291,6 +292,10 @@ git clone https://gitlab.com/milahu/alchi
# codeberg.org
git clone https://codeberg.org/milahu/alchi
# sourceforge.net
# https://sourceforge.net/projects/milahu-alchi/
git clone https://git.code.sf.net/p/milahu-alchi/code alchi
# gitea.io
git clone https://try.gitea.io/milahu/alchi

View File

@ -28,9 +28,25 @@ if false; then
git remote add gitlab https://gitlab.com/milahu/alchi
git remote add srht https://git.sr.ht/~milahu/alchi
git remote add codeberg https://codeberg.org/milahu/alchi
# https://sourceforge.net/projects/milahu-alchi/
# note: by default, force-push is disabled on sourceforge
# to enable force-push:
# ssh -t milahu@shell.sourceforge.net create
# sed -i 's/denyNonFastforwards = true/denyNonFastforwards = false/' /home/git/p/milahu-alchi/code.git/config
# see also https://stackoverflow.com/questions/31640933/force-git-push-on-sourceforge
git remote add sourceforge https://git.code.sourceforge.net/p/milahu-alchi/code
# pull only
# https://try.gitea.io/milahu/alchi is an automatic mirror of the github repo https://github.com/milahu/alchi
git remote add gitea https://try.gitea.io/milahu/alchi
git remote add notabug https://notabug.org/milahu/alchi
git remote add disroot https://git.disroot.org/milahu/alchi
git remote add srht https://git.sr.ht/~milahu/alchi
git remote add darktea http://it7otdanqu7ktntxzm427cba6i53w6wlanlh23v5i3siqmos47pzhvyd.onion/milahu/alchi
git config --add remote.darktea.proxy socks5h://127.0.0.1:9050
@ -38,15 +54,11 @@ if false; then
git remote add humanrightstech http://gg6zxtreajiijztyy5g6bt5o6l3qu32nrg7eulyemlhxwwl6enk6ghad.onion/milahu/alchi
git config --add remote.humanrightstech.proxy socks5h://127.0.0.1:9050
git remote add notabug https://notabug.org/milahu/alchi
git remote add disroot https://git.disroot.org/milahu/alchi
#git remote add dev-hub.eu https://git.dev-hub.eu/milahu/alchi
# dev-hub.eu repos are "internal" so not visible to the public
fi
for remote in github gitlab srht darktea humanrightstech notabug disroot; do
for remote in github gitlab srht darktea humanrightstech notabug disroot sourceforge; do
git push $remote $opts &&
git push $remote --tags $opts || true
done

View File

@ -0,0 +1,63 @@
#! /usr/bin/env bash
set -e
# chdir to alchi/src/scripts
cd "$(dirname "$0")"
# chdir to alchi
cd ../../
alchi_repo="$(pwd)"
tempdir=$(mktemp -d)
echo "using tempdir $tempdir"
cd $tempdir
echo "cloning from '$alchi_repo' to '$tempdir/alchi'"
git clone --depth=1 "file://$alchi_repo" alchi
cd alchi
ls -A
git log | head
git status
echo pushing files to sourceforge.net
# https://sourceforge.net/p/forge/documentation/rsync/#project-web-use
# rsync --delete: delete extraneous files from dest dirs
# rsync --cvs-exclude: ignore .git/
# rsync --links: copy symlinks as symlinks
# https://sourceforge.net/p/forge/documentation/SSH%20Key%20Fingerprints/
# web.sourceforge.net, web.sf.net, frs.sourceforge.net, frs.sf.net
# SHA256:209BDmH3jsRyO9UeGPPgLWPSegKmYCBIya0nR/AWWCY
known_hosts_line='web.sourceforge.net ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOQD35Ujalhh+JJkPvMckDlhu4dS7WH6NsOJ15iGCJLC'
if ! grep -q -x "$known_hosts_line" $HOME/.ssh/known_hosts; then
echo "$known_hosts_line" >>$HOME/.ssh/known_hosts
fi
# https://stackoverflow.com/questions/3299951/how-to-pass-password-automatically-for-rsync-ssh-command
password_file="$alchi_repo/secrets/password-web.sourceforge.net.txt"
# no. The --password-file option may only be used when accessing an rsync daemon.
# rsync --password-file="$password_file"
if ! [ -e "$password_file" ]; then
echo "error: missing password file: $password_file"
exit 1
fi
# rsync --rsh=ssh: interactive login
ssh_username=milahu
ssh_password=$(cat "$password_file")
rsync --recursive --compress --delete --cvs-exclude --links \
--rsh="sshpass -p $ssh_password ssh -o StrictHostKeyChecking=no -l $ssh_username" \
./ milahu@web.sourceforge.net:/home/project-web/milahu-alchi/htdocs/
echo removing tempdir $tempdir
rm -rf $tempdir