이더리움으로 로그인 플러그인

Works, thank you!

1개의 좋아요

Hello @michaeld @RGJ, I’m not sure if this is the right place to ask, but I’m experiencing a similar issue with ffi when using the repository at https://github.com/communiteq/discourse-siwe-auth as well as https://github.com/spruceid/discourse-siwe-auth.

I, [2025-08-26T12:22:42.475531 #1]  INFO -- : 
I, [2025-08-26T12:22:42.475839 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
Gem::LoadError: can't activate ffi-1.17.1-x86_64-linux-gnu, already activated ffi-1.17.2-x86_64-linux-gnu (Gem::LoadError)
/var/www/discourse/lib/plugin_gem.rb:25:in `load'
/var/www/discourse/lib/plugin/instance.rb:861:in `gem'
/var/www/discourse/plugins/discourse-siwe-auth/plugin.rb:23:in `activate!'
/var/www/discourse/lib/plugin/instance.rb:806:in `instance_eval'
/var/www/discourse/lib/plugin/instance.rb:806:in `activate!'
/var/www/discourse/lib/discourse.rb:344:in `block in activate_plugins!'
/var/www/discourse/lib/discourse.rb:341:in `each'
/var/www/discourse/lib/discourse.rb:341:in `activate_plugins!'
/var/www/discourse/config/application.rb:196:in `block in <class:Application>'
/var/www/discourse/lib/plugin.rb:6:in `initialization_guard'
/var/www/discourse/config/application.rb:196:in `<class:Application>'
/var/www/discourse/config/application.rb:62:in `<module:Discourse>'
/var/www/discourse/config/application.rb:61:in `<top (required)>'
/var/www/discourse/Rakefile:7:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.3.0/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
(See full trace by running task with --trace)

Hook section of my discourse self-hosted app:

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/communiteq/discourse-siwe-auth.git
          - git clone https://github.com/discourse/discourse-code-review.git

For now, I’m going to try forking your repository and bumping the version, as I have a deadline to migrate this Discourse instance. I just wanted to let you know about this.
Also, I’d like to know if the plugin is actively maintained by Communiteq.

Thanks in advance!

Without looking at the code…

Could the problem be that ffi is now in core and your don’t need to add it?

I’m not really into Ruby so I can’t make an statement about the plugin but I can confirm that bumping the ffi to 1.17.2 in the forked repository works like a charm, and with bumping I mean changing the plugin.rb with:

gem 'ffi', '1.17.2', require: false

That worked for me but I’d really like to use the official maintained plugin instead of my own fork.

My suggestion was to remove the gem altogether. And when that works, submit a PR with that line removed.

We’re more like passively maintaining it. The official repository is in spruceid, but since we run a number of sites using the plugin, in practice it’s us who fix it first. This time you beat us to it, it is still on our list of plugins to change for 3.5.

If no one makes a PR to the official repo, I will get to this by the end of this week or the beginning of next week.

1개의 좋아요

I would prefer to leave the task of opening the PR to you, as you probably have considerations or tests regarding the plugin that I am unaware of, since I know very little about this service as I am in the process of migrating it.

Thank you for your help, information, and contributions on this topic.

I have fixed the plugin - it indeed was only a matter of removing the explicit ffi gem inclusion.

I have also made a pull request to the original repository. As long as the PR has not been accepted, you can use https://github.com/communiteq/discourse-siwe-auth instead of the original repository.

I will change the link in the OP to this for the time being as well.

2개의 좋아요

I want to ask, why don’t I see the settings button?

I’m looking at the discourse-compatibility plugin file, which shows support for versions less than 3.2.0.beta2-dev. Will there be any issues using this plugin with the latest Discourse version?

1개의 좋아요

Since that file indicates backward compatibility, the absence of recent versions in the .plugin-compatibility file is a good thing.

4개의 좋아요

v1이 더 이상 작동하지 않기 때문에 플러그인을 WalletConnect v2를 사용하도록 업데이트했습니다.

다시 한번 강조하지만, 원래 저장소가 아닌 https://github.com/communiteq/discourse-siwe-auth를 사용하세요.

새 버전

GitHub - signinwithethereum/discourse-siwe-auth: Discourse plugin for SIWE authentication · GitHub 에 새로운 버전으로 크게 개선된 포크가 있습니다.

:warning: 즉시 전환해야 합니다 :warning:

기존 버전의 플러그인을 사용 중이라면, 이전 버전에서 여러 보안 취약점이 발견되었으므로 가능한 한 빨리 이 버전으로 전환해 주세요.

1개의 좋아요