Sign-In mit Ethereum-Plugin

Bitte erzählen Sie uns von all den Dingen, die Sie getan haben, um dieses Plugin hinzuzufügen.
Haben Sie before_code hinzugefügt, wie bereits in diesem Thema beschrieben?
Ist dies eine Standardinstallation?

1 „Gefällt mir“

in app.yml Hinzugefügt wie - git clone https//GitHub——-.git

Selfhosted auf Ubuntu 18, und es ist eine Standardinstallation mit dem Befehl ./setup

Sie haben dies also nicht getan

1 „Gefällt mir“

@RGJ Können Sie mir bitte sagen, wie ich das vor dem Code hinzufügen kann, und bitte teilen Sie mir den Beitrag mit dem vor dem Code mit?

Nein, es tut mir leid, Sie können Strg+F verwenden, um das Thema zu durchsuchen, und es wird Sie zur Antwort führen.

3 „Gefällt mir“

@RGJ bezieht sich auf den Leitfaden in GitHub :slight_smile: GitHub - spruceid/discourse-siwe-auth: Discourse plugin for SIWE authentication

In der Datei app.yml müssen Sie die Abschnitte unterhalb des hooks-Abschnitts hinzufügen

2 „Gefällt mir“

Danke @RGJ und @Tris20, ich werde das versuchen und euch auf dem Laufenden halten.

Es hat wirklich funktioniert, danke. Ich weiß nicht, warum ich es nicht früher sehen konnte :slightly_smiling_face:

Update: Installation abgeschlossen und das Plugin funktioniert einwandfrei. Jetzt teste ich nur noch den Login mit dem ETH-Wallet.

4 „Gefällt mir“

Ich glaube, das ist kaputt, es erscheint kein Popup (Aufforderung zur Unterschrift), wenn Sie auf die Schaltfläche „Mit Ethereum anmelden“ auf der Seite /discourse-siwe/auth klicken.

Unten sehen Sie die Konsolenprotokolle, die beim Klicken auf die Schaltfläche angezeigt werden.

SyntaxError: Unerwartetes Zeichen '<', "\u003c!doctype "..." ist kein gültiges JSON
    at Function.parse [as parseJSON] (<anonymous>)
    at n (ajax-error.js:29:1)
    at e.popupAjaxError (ajax-error.js:71:1)
    at y (rsvp.js:435:1)
    at v (rsvp.js:421:1)
    at f (rsvp.js:370:1)
    at m.invoke (queue.ts:203:14)
    at m.flush (queue.ts:98:13)
    at f.flush (deferred-action-queues.ts:75:19)
    at $._end (index.ts:616:32)
    at _boundAutorunEnd (index.ts:257:12)
TypeError: Kann die Eigenschaft 'message' von '(intermediate value)' nicht destrukturieren, da sie undefiniert ist.
    at e.signMessage (web3modal.js:66:1)
    at async e.runSigningProcess (web3modal.js:82:1)
    at async e.initAuth (siwe-auth-index.js:38:1)

Bei mir funktioniert es in beiden Tests – als stabil bestätigt –, indem ich eine Infura-ID verwende.
Wie hast du das Plugin konfiguriert?

Ich habe sowohl Infura-Schlüssel als auch öffentliche RPCs ausprobiert, sowie die Mainnet-RPC von Infura manuell eingegeben. Ich bin mir nicht sicher, ob das das Problem ist.

Ist es möglich, das Anmelde-Popup mit ETH zu bearbeiten/gestalten?

Kann ich auch andere Ethereum-freundliche Netzwerke hinzufügen?

Können Sie ein Beispiel für ein „Ethereum-freundliches Netzwerk“ geben?

Ich meine, genau wie BSC

Ich meine “Binance Smart Chain”

Neuer Fehler

Ja, ich habe die before_code-Hooks hinzugefügt. Der Fehler beginnt hier und tritt nicht auf, wenn ich das siwe-auth-Plugin auskommentiere.

I, [2025-02-11T03:40:25.992538 #1]  INFO -- : 
I, [2025-02-11T03:40:25.993236 #1]  INFO -- : 
> cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate'
rake aborted!
hooks:
  before_code:
    - exec:
        cmd:
          - gem install rubyzip
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-gamification
          - git clone https://github.com/discourse/discourse-chat-integration
          - git clone https://github.com/angusmcleod/discourse-events
          - git clone https://github.com/discourse/discourse-ai
          - git clone https://github.com/discourse/discourse-subscriptions
          - git clone https://github.com/discourse/discourse-translator
          - git clone https://github.com/discourse/discourse-signatures
          - git clone https://github.com/merefield/discourse-locations
          - git clone https://github.com/discourse/discourse-reactions
          - git clone https://github.com/melhosseiny/discourse-nft-avatar
          - git clone https://github.com/discourse/discourse-follow
          - git clone https://github.com/spruceid/discourse-siwe-auth

Siehe den Fehler unten

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 778 exit 1>
Location of failure: /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.2.1/lib/pups/exec_command.rb:132:in `spawn'
exec failed with the params {"cd"=>"$home", "tag"=>"migrate", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.

@RGJ bitte siehe oben, hoffentlich können wir schnell eine Lösung finden ^

VOLLSTÄNDIGES PROTOKOLL:

redacted@server:/var/discourse$ sudo ./launcher rebuild app
x86_64 Architektur erkannt

Die Lösung ist (war) bereits in unserem Fork unter GitHub - communiteq/discourse-siwe-auth: Discourse plugin for SIWE authentication enthalten. Wir haben noch keinen PR an den Hauptzweig (upstream) gemacht, da die Commits zur Behebung etwas unordentlich sind, aber es funktioniert gut.

1 „Gefällt mir“