Skip to content

Re: Federation issues

Uncategorized
  • @julian Some of the users I am following (or so it reads on each user's page):

    @ju@pol.social (Mastodon)
    @kodmalopolskie@soc.citizen4.eu (Friendica)
    @oko_press@101010.pl
    @kravietz@agora.echelon.pl
    @julian@community.nodebb.org
    https://community.nodebb.org/post/102755 – imported by link (can't post remotely)

    Nothing special happens when running dev mode. Just some plugin incompatibilities get printed:

    2025-02-15T05:36:53.950Z [4567/3360] - warn: [plugins/load] The following plugins may not be compatible with your version of NodeBB. This may cause unintended behaviour or crashing. In the event of an unresponsive NodeBB caused by this plugin, run ./nodebb reset -p PLUGINNAME to disable it.

    • nodebb-plugin-soundpack-default
    • nodebb-plugin-emoji-android
    • nodebb-widget-essentials
    • nodebb-rewards-essentials
    • nodebb-plugin-who-read-it
    • nodebb-plugin-question-and-answer
    • nodebb-plugin-poll
    • nodebb-plugin-dbsearch
    • nodebb-plugin-custom-pages
    • nodebb-plugin-composer-default

    I've been able to npm unl / npm i nodebb-theme-harmony, but I wasn't successful with plugin-composer-default or plugin-custom-pages, so I gave up on the rest of them. Every time I ran npm I saw a warning that my nodejs was outside requirements (probably too new, if I got it right).

    ./nodebb log
    
        ../../../bootstrap/scss/forms/_form-control.scss 40:7  @import
        bootstrap/scss/_forms.scss 3:9                         @import
        - 19:9                                                 root stylesheet
    
    WARNING: The keyword 'none' must be used as a single argument.
        ../../../bootstrap/scss/mixins/_box-shadow.scss 10:9  box-shadow()
        ../../../bootstrap/scss/forms/_form-select.scss 32:7  @import
        bootstrap/scss/_forms.scss 4:9                        @import
        - 19:9                                                root stylesheet
    
    ./nodebb build
      started
    2025-02-15T05:33:08.136Z [4567/2898] - info: [build] Building in parallel mode
    2025-02-15T05:33:08.138Z [4567/2898] - info: [build]         plugin static dirs  build started
    2025-02-15T05:33:08.139Z [4567/2898] - info: [build]          requirejs modules  build started
    2025-02-15T05:33:08.139Z [4567/2898] - info: [build]           client js bundle  build started
    2025-02-15T05:33:08.140Z [4567/2898] - info: [build]            admin js bundle  build started
    2025-02-15T05:33:08.140Z [4567/2898] - info: [build]         client side styles  build started
    2025-02-15T05:33:08.140Z [4567/2898] - info: [build] admin control panel styles  build started
    2025-02-15T05:33:08.142Z [4567/2898] - info: [build]                  templates  build started
    2025-02-15T05:33:08.142Z [4567/2898] - info: [build]                  languages  build started
    2025-02-15T05:33:08.665Z [4567/2898] - info: [build]         plugin static dirs  build completed in 0.527sec
    2025-02-15T05:33:09.350Z [4567/2898] - info: [build]           client js bundle  build completed in 1.211sec
    2025-02-15T05:33:09.368Z [4567/2898] - info: [build]            admin js bundle  build completed in 1.228sec
    2025-02-15T05:33:11.753Z [4567/2898] - info: [build]                  languages  build completed in 3.611sec
    2025-02-15T05:33:11.807Z [4567/2898] - info: [build]          requirejs modules  build completed in 3.668sec
    2025-02-15T05:33:11.807Z [4567/2898] - info: [build] Bundling with Webpack.
    [10%] building (0/0 modules)
    2025-02-15T05:33:13.983Z [4567/2898] - info: [build]         client side styles  build completed in 5.842sec
    [10%] building (398/608 modules)
    2025-02-15T05:33:25.087Z [4567/2898] - info: [build] Bundling took 10113 ms
    2025-02-15T05:33:25.089Z [4567/2898] - info: [build] Asset compilation successful. Completed in 16.951sec.
    
    sudo systemctl status nodebb
    ● nodebb.service - NodeBB
         Loaded: loaded (/etc/systemd/system/nodebb.service; enabled; vendor preset: enabled)
         Active: active (running) since Sat 2025-02-15 06:39:50 CET; 12s ago
           Docs: https://docs.nodebb.org
        Process: 3477 ExecStart=/usr/bin/node loader.js (code=exited, status=0/SUCCESS)
       Main PID: 3488 (node)
          Tasks: 36 (limit: 9348)
         Memory: 375.1M
            CPU: 20.494s
         CGroup: /system.slice/nodebb.service
                 ├─3488 /usr/bin/node /home/xxxxxxxx/nodebb/loader.js
                 ├─3499 /usr/bin/node /home/xxxxxxxx/nodebb/app.js
                 └─3527 /usr/bin/node /home/xxxxxxxx/nodebb/src/meta/minifier.js
    
    Feb 15 06:39:50 sv systemd[1]: Starting NodeBB...
    Feb 15 06:39:50 sv systemd[1]: nodebb.service: Can't open PID file /home/xxxxxxxx/nodebb/pidfile (yet?) after start: Operation not permitted
    Feb 15 06:39:50 sv systemd[1]: Started NodeBB.
    

    In trying to fix things I have made changes to nginx reverse proxy configuration, but I seem to have made things even worse, which is not a bad thing, because in that may lie the solution.
    I'll be happy to provide log and config files by a secure channel of your choosing.

  • @julian
    Here you are some AP errors from a few days ago, before I made any changes.

    2025-02-13T06:25:09.462Z [4567/24115] - error: [activitypub/api] Error
    Error: [[error:activitypub.invalid-id]]
        at /home/xxxxxxxx/nodebb/src/api/activitypub.js:42:9
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Object.follow (/home/xxxxxxxx/nodebb/src/api/activitypub.js:30:5)
        at async Categories.follow (/home/xxxxxxxx/nodebb/src/controllers/write/categories.js:117:2)
        at async /home/xxxxxxxx/nodebb/src/routes/helpers.js:80:5
    2025-02-13T06:28:56.552Z [4567/24115] - error: [activitypub/api] Error
    Error: [[error:activitypub.invalid-id]]
        at /home/xxxxxxxx/nodebb/src/api/activitypub.js:42:9
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Object.follow (/home/xxxxxxxx/nodebb/src/api/activitypub.js:30:5)
        at async Categories.follow (/home/xxxxxxxx/nodebb/src/controllers/write/categories.js:117:2)
        at async /home/xxxxxxxx/nodebb/src/routes/helpers.js:80:5
    2025-02-13T06:33:19.290Z [4567/24115] - error: [activitypub/api] Error
    TypeError: Invalid URL
        at new URL (node:internal/url:804:36)
        at /home/xxxxxxxx/nodebb/src/activitypub/index.js:100:25
        at Array.filter ()
        at ActivityPub.resolveInboxes (/home/xxxxxxxx/nodebb/src/activitypub/index.js:99:13)
        at ActivityPub.send (/home/xxxxxxxx/nodebb/src/activitypub/index.js:373:36)
        at /home/xxxxxxxx/nodebb/src/api/activitypub.js:51:21
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Object.follow (/home/xxxxxxxx/nodebb/src/api/activitypub.js:30:5)
        at async Categories.follow (/home/xxxxxxxx/nodebb/src/controllers/write/categories.js:117:2)
        at async /home/xxxxxxxx/nodebb/src/routes/helpers.js:80:5
    2025-02-13T06:37:05.361Z [4567/24115] - error: [activitypub/api] Error
    Error: [[error:activitypub.invalid-id]]
        at /home/xxxxxxxx/nodebb/src/api/activitypub.js:42:9
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Object.follow (/home/xxxxxxxx/nodebb/src/api/activitypub.js:30:5)
        at async Categories.follow (/home/xxxxxxxx/nodebb/src/controllers/write/categories.js:117:2)
        at async /home/xxxxxxxx/nodebb/src/routes/helpers.js:80:5
    2025-02-13T06:37:20.692Z [4567/24115] - error: [activitypub/api] Error
    Error: [[error:activitypub.invalid-id]]
        at /home/xxxxxxxx/nodebb/src/api/activitypub.js:42:9
        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
        at async Object.follow (/home/xxxxxxxx/nodebb/src/api/activitypub.js:30:5)
        at async Categories.follow (/home/xxxxxxxx/nodebb/src/controllers/write/categories.js:117:2)
        at async /home/xxxxxxxx/nodebb/src/routes/helpers.js:80:5
    [cluster] Restarting...
    
  • My forum.n66.pl-proxy.conf is now very similar to official recommendations and doesn't seem to have any effect on AP following/sharing capabilities.
    I am unaware of server tweaks to facilitate AP following/sharing.

  • @Jakub-Urbanowicz your ActivityPub user is resolving, but the URLs are incorrect.

    Please update your config.json so that it properly reflects your site's url, it should be https://forum.n66.pl, with the https

  • Hi! I am also having federation issues on a fresh install of 4.0.3. For example, I can not see the content of all the posts here including the original post. I think I see the content of around half of the posts. I tried to reply on another post on community.nodebb.org, but after ten minutes it is still not visible at community.nodebb.org.

    Ironically, I am not sure this reply will reach community.nodebb.org either.

  • @reynir OK great! This one went through. However, I still only see about half of the posts.

    (Finally, sorry for barging in on your topic - perhaps we can fork the topic somehow)

  • @reynir@forum.fedi.dk the post content being blank issue might be an unrelated bug. I'm still trying to figure out that one.

  • @julian@community.nodebb.org thanks for the reply! Is there a tracking issue I can subscribe to?

    (I am having a lot of fun with our new NodeBB instance btw!)

  • @reynir@forum.fedi.dk there wasn't, so I added one:

  • @julian That and upgrading to 4.0.4 helped a little – at least direct messages are coming through, but following still not working in either direction. Following seems to be set up correctly and confirmed on both the forum and other AP instances. Testing with Friendica and Mastodon. Only the messages are stopped somewhere.
    ekran_2025-02-17_23-19-00.png ekran_2025-02-17_23-31-10.png
    2025-02-18_05-17-53.png 2025-02-18_05-21-27.png

    Link Preview ImageLink Preview ImageLink Preview ImageLink Preview Image
  • @julian I am now unable to import threads using the search area. It worked a few days ago (before 4.0.4) and maybe before changing http to https in config.json. Now I can only follow users without actually following their content (no following is operational). While importing threads worked, it was still useless, because I couldn't join in on conversations.
    Yesterday I experimented with different proxy_pass values in my nginx proxy.conf file:

    Please tell me you know how to fix it. 🙄

  • @Jakub-Urbanowicz http://forum_n66_pl this suggests there's an upstream block.

    Can you paste your entire nginx config?

  • I am afraid I hit a wall, No idea what else I could do short of reinstalling the whole thing.

  • @julian just a moment; it's a bit complex, because configuration is divided into several files.

  • @Jakub-Urbanowicz http://forum_n66_pl this suggests there's an upstream block.

    Can you paste your entire nginx config?

    @julian Please find attached a summary of my nginx settings.
    The back-end installation of NodeBB was done manually in a home directory, while the reverse proxy is part of on automated server solution called Webinoly. It is typically used for self-hosting WordPress, but not only. It worked pretty well before the advent of Federation capabilities, so I wasn't bothered. I just uncommented some proxy headers in /etc/nginx/apps.d/forum.n66.pl-proxy.conf and added "X-NginX-Proxy true" as per documentation. Mongodb (7.0) is provided from a deb repository as is nodejs.
    I'm not sure why the web root directory as mentioned in /etc/nginx/sites-available/forum.n66.pl does not exist (root /var/www/forum.n66.pl/htdocs). I don't even have /var/www/forum.n66.pl/.
    Thank you for helping me.

  • @julian Please find attached a summary of my nginx settings.
    The back-end installation of NodeBB was done manually in a home directory, while the reverse proxy is part of on automated server solution called Webinoly. It is typically used for self-hosting WordPress, but not only. It worked pretty well before the advent of Federation capabilities, so I wasn't bothered. I just uncommented some proxy headers in /etc/nginx/apps.d/forum.n66.pl-proxy.conf and added "X-NginX-Proxy true" as per documentation. Mongodb (7.0) is provided from a deb repository as is nodejs.
    I'm not sure why the web root directory as mentioned in /etc/nginx/sites-available/forum.n66.pl does not exist (root /var/www/forum.n66.pl/htdocs). I don't even have /var/www/forum.n66.pl/.
    Thank you for helping me.

    @Jakub-Urbanowicz whatever your nginx config, if it was working before, it should not require any changes to support federation.

    I would revert back to a working config if you're seeing issues with regular usage of NodeBB. Otherwise if the site is loading fine then tweaking nginx (probably) won't fix anything and the problem likely lies elsewhere.

    I will look into your configs tomorrow.

  • Week in Fediverse 2025-02-21

    Uncategorized
    2
    0 Stimmen
    2 Beiträge
    0 Aufrufe
    julian@community.nodebb.orgJ
    https://community.nodebb.org/topic/18647/the-state-of-conversational-contexts-february-2025
  • RTL

    Uncategorized
    1
    1
    0 Stimmen
    1 Beiträge
    0 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    3 Beiträge
    0 Aufrufe
    julian@community.nodebb.orgJ
    @silverpill@mitra.social can Mitra, Streams, and Hubzilla backfill from each other (full two-way backfill) or one-way at this time?
  • New federated testing instance for NodeBB

    Uncategorized
    5
    0 Stimmen
    5 Beiträge
    0 Aufrufe
    julian@community.nodebb.orgJ
    @david@weaknotes.com in what way, that the category is cleared out regularly? I think that happens often already with users auto-deleting their posts. https://activitypub.academy is another example of a test instance that is regularly cleared. Either way I take no offense if try.nodebb.org gets blocked here and there
  • It's true.

    Uncategorized
    6
    0 Stimmen
    6 Beiträge
    0 Aufrufe
    julian@community.nodebb.orgJ
    @deadsuperhero@social.wedistribute.org @atomicpoet@atomicpoet.org we use the same synchronization mechanism that PieFed and Lemmy use, FEP 1b12. Let me know if the follow doesn't take for whatever reason.
  • switch(true) gotcha

    Uncategorized
    6
    0 Stimmen
    6 Beiträge
    0 Aufrufe
    julian@community.nodebb.orgJ
    @trwnh@mastodon.social there is, and it'd work in this case. The issue is that as the condition is evaluated, if it doesn't resolve to boolean true, then the case won't execute. In the example above it resolves (in JavaScript, anyway) to "bar"
  • Sending a private message without cc causes a 500 error

    Uncategorized
    12
    0 Stimmen
    12 Beiträge
    0 Aufrufe
    julian@community.nodebb.orgJ
    @freamon thanks! Happy to look into handling Create(ChatMessage)... I think the error aside, NodeBB would drop it anyway since ChatMessage isn't an expected post type.
  • 1b12 vs Guppe groups

    Uncategorized
    23
    0 Stimmen
    23 Beiträge
    12 Aufrufe
    julian@community.nodebb.orgJ
    > Doesn't this mean Mastodon users et al will no longer get boost notifications when their posts are reshared into a topic? Correct, only OP will be shared. Unless I am mistaken this is how Lemmy implemented it. Announce-ing activities only, and one single Announce(Note) for compatibility with Mastodon.