diff --git a/.github/workflows/hashes.yaml b/.github/workflows/hashes.yaml index faace9e9ab..2e42a70a0a 100644 --- a/.github/workflows/hashes.yaml +++ b/.github/workflows/hashes.yaml @@ -5,10 +5,12 @@ on: paths: - 'downloads/hashes.txt' - '_data/downloads.yml' + - '_data/contributing.yml' pull_request: paths: - 'downloads/hashes.txt' - '_data/downloads.yml' + - '_data/contributing.yml' jobs: validate-hashes: name: Validate Hashes @@ -17,13 +19,43 @@ jobs: - uses: actions/checkout@v2 - name: Install dependencies run: | - sudo apt-get install -y --no-install-recommends curl gpg jq python3-pip + sudo apt-get install -y --no-install-recommends curl gpg jq python3-pip zbar-tools sudo pip3 install yq - - name: Verify hashes.txt signature + - name: Verify hashes.txt + contributing.yml signature run: | curl -sL https://raw.githubusercontent.com/monero-project/monero/master/utils/gpg_keys/binaryfate.asc | gpg --import gpg --verify downloads/hashes.txt + # signed by myself for test purposes only. + curl -sL https://raw.githubusercontent.com/plowsof/pgp/refs/heads/main/plowsofsmol.asc | + gpg --import + gpg --verify _data/contributing.yml.asc + - name: Verify General Fund donation QR's + run: | + yaml="_data/contributing.yml" + get_yaml_value() { + awk -v key="$1:" '$1 == key {print $2}' "$yaml" + } + for coin in xmr btc; do + qr_checksum=$(get_yaml_value "qr_${coin}_checksum") + qr_filename=$(get_yaml_value "qr_${coin}_filename") + qr_content=$(get_yaml_value "qr_${coin}_content") + echo "DEBUG: $qr_checksum $qr_filename" + echo "DEBUG: $qr_content" + # Confirm hashes match + echo "$qr_checksum $qr_filename" | sha256sum -c + # Scan QR content + qr_scanned=$(zbarimg -q --raw "$qr_filename") + # Compare scanned content with expected content + if [ "$qr_scanned" = "$qr_content" ]; then + echo "${coin^^} QR code content matches exactly" + else + echo "${coin^^} QR code content does not match" + echo "Scanned: $qr_scanned" + echo "Expected: $qr_content" + exit 1 + fi + done - name: Verify filenames run: | lines="$(grep -v ^# downloads/hashes.txt)" diff --git a/_data/contributing.yml b/_data/contributing.yml new file mode 100644 index 0000000000..37ef0e005d --- /dev/null +++ b/_data/contributing.yml @@ -0,0 +1,11 @@ +address_xmr: 888tNkZrPN6JsEgekjMnABU4TBzc2Dt29EPAvkRxbANsAnjyPbb3iQ1YBRk1UXcdRsiKc9dhwMVgN5S9cQUiyoogDavup3H +address_btc: 1KTexdemPdxSBcG55heUuTjDRYqbC5ZL8H +address_openalias: donate.getmonero.org +view_address: 44AFFq5kSiGBoZ4NMDwYtN18obc8AemS33DBLWs3H7otXft3XjrpDtQGv7SqSsaBYBb98uNbr2VBBEt7f2wfn3RVGQBEP3A +view_key: f359631075708155cc3d92a32b75a7d02a5dcf27756707b47a2b31b21c389501 +qr_xmr_filename: img/donate-monero.png +qr_xmr_content: monero:888tNkZrPN6JsEgekjMnABU4TBzc2Dt29EPAvkRxbANsAnjyPbb3iQ1YBRk1UXcdRsiKc9dhwMVgN5S9cQUiyoogDavup3H +qr_xmr_checksum: 634324cb9d5feaf31cadafa1a62fb78c0c97aac084624ee466354086b2e62f3a +qr_btc_filename: img/donate-bitcoin.png +qr_btc_content: bitcoin:1KTexdemPdxSBcG55heUuTjDRYqbC5ZL8H +qr_btc_checksum: 6f091048b4492d70d7524f78be1af865530ff80b237a5f9b27b1b67dc3ba6c56 diff --git a/_data/contributing.yml.asc b/_data/contributing.yml.asc new file mode 100644 index 0000000000..fbcf867661 --- /dev/null +++ b/_data/contributing.yml.asc @@ -0,0 +1,7 @@ +-----BEGIN PGP SIGNATURE----- + +iI0EABMIADUWIQTci88MUIPyAweCgD5OipEtQO0FLAUCZxJ8rxcccGxvd3NvZkBw +cm90b25tYWlsLmNvbQAKCRBOipEtQO0FLMyuAQCXt4p3t4f1EPsmJelNs7hRUexr +azBCDCdnwpFnW7LBOQD+MoPTX0T5cWXNtDbZ+umU/ozWsdZzZcauG7657YW+uCI= +=1ghd +-----END PGP SIGNATURE----- diff --git a/css/custom.css b/css/custom.css index 37131b7c93..ef8089cab2 100644 --- a/css/custom.css +++ b/css/custom.css @@ -4705,3 +4705,11 @@ input.accordion[type=radio]:checked + label::after { .donation-field { user-select: all; /* Select donation addresses with one click */ } + +#qr-link { + all: unset; +} + +#qr-link:hover { + cursor: pointer; +} diff --git a/get-started/contributing/index.md b/get-started/contributing/index.md index fa08487f4b..a35e655952 100644 --- a/get-started/contributing/index.md +++ b/get-started/contributing/index.md @@ -70,24 +70,28 @@ meta_descr: meta_descr.contributing

{% t contributing.genfund %}

{% t contributing.genfund_p %}

-

Monero:
888tNkZrPN6JsEgekjMnABU4TBzc2Dt29EPAvkRxbANsAnjyPbb3iQ1YBRk1UXcdRsiKc9dhwMVgN5S9cQUiyoogDavup3H

+

Monero:
{{ site.data.contributing.address_xmr }}

{% t contributing.donation_viewkeys %}:
-

Bitcoin:
1KTexdemPdxSBcG55heUuTjDRYqbC5ZL8H

-

@openalias: donate.getmonero.org

+

Bitcoin:
{{ site.data.contributing.address_btc }}

+

@openalias: {{ site.data.contributing.address_openalias }}


- {% t contributing.altqrmonero %} + + {% t contributing.altqrmonero %} +
- {% t contributing.altqrbitcoin %} + + {% t contributing.altqrbitcoin %} +
diff --git a/img/donate-bitcoin.png b/img/donate-bitcoin.png index 6fbfeea072..09ff19ba4c 100644 Binary files a/img/donate-bitcoin.png and b/img/donate-bitcoin.png differ diff --git a/img/donate-monero.png b/img/donate-monero.png index e15b847027..16c9b2e0bf 100644 Binary files a/img/donate-monero.png and b/img/donate-monero.png differ