Skip to content

Setting up a beta NodeBB v3 environment

Moved Let's Build It
  • With NodeBB v3 on the horizon, I thought it would make sense for me to provide a guide on how to upgrade an existing (or newly built - up to you) environment to v3.beta1

    This guide assumes you already have a v2 test environment functional and are looking to upgrade to v3.

    Let’s start:

    First, ensure your nodebb instance has been stopped 🙂

    • Type npm config set legacy-peer-deps true
    • cd /path/to/your/nodebb
    • Type git rev-parse HEAD (save this value in case you need to roll back)
    • Type git fetch && git checkout bootstrap5
    • Type git reset --hard v3.0.0-beta.1
    • Type ./nodebb upgrade -mi

    Now upgrade all your plugins to the latest version if available

    • Type ./nodebb build

    As this will be a beta system, there will be frequent updates for the Harmony theme which will present themselves in the usual place (ACP -> Install Plugins - Out of Date). These should be installed in the usual fashion, although along with these updates, you will need to perform a git fetch and git pull of the bootstrap5 repository as it will shown as several releases behind.

    Once you’ve updated the Harmony theme as below

    dd590fb2-b062-4c3e-bc81-a4d715583aef-image.png

    • Type git fetch && git pull

    You’ll see the import of a number of changed files

    f0e3575c-b25d-4882-aeaf-5a6007ad984b-image.png

    • Type ./nodebb build && ./nodebb restart

    1039231a-efd0-4def-a2f0-99ee0597866e-image.png

    You can ignore the warnings for now.

    Enjoy the updated instance.

  • @phenomlab Let me know if you come across any issues. Happy to help.

  • phenomlabundefined phenomlab referenced this topic on
  • @phenomlab anyway this is a beta version, as you said before to me some things not working properly.

  • @cagatay Correct. I’ve adjusted the title accordingly to reflect that.

  • I have a Captcha bug after upgrade on login connexion.

    Without that, impossible to connect to nodebb due to captcha bug

    ff6d945e-fccd-46c8-a03a-b924e50a15fb-image.png

  • @DownPW that’s not a bug as it works fine on my Dev install.

    Screenshot_2023-01-27-21-52-37-75_e4424258c8b8649f6e67d283a50a2cbc.jpg

    Anything in the console?

  • @phenomlab I have rebuild and it’s OK now.

    odd but it’s a beta i guess 😉

  • Have you have test many plugins ? or have you list of incompatibility plugins for now ?

  • @DownPW I’ve tested most of them. The polls plugin doesn’t seem to work from what I can see but others are fully functional. I need to perform a full audit though as I’ve mostly focused on the Swatch code.

  • and you upgrade via cli your plugin ?

    I have this with acp on all plugins to update :

    ee3f0fed-b829-45d5-a442-4b17b6bcbfb2-image.png

    2023-01-27T22:02:49.046Z [4567/1606] - error: admin.plugins.upgrade
    Error: Command failed: npm install nodebb-plugin-tenor-gif@3.0.0 --save
    npm ERR! code ERESOLVE
    npm ERR! ERESOLVE could not resolve
    npm ERR! 
    npm ERR! While resolving: @nodebb/nodebb-plugin-reactions@1.0.2
    npm ERR! Found: nodebb-plugin-emoji@5.0.3
    npm ERR! node_modules/nodebb-plugin-emoji
    npm ERR!   peer nodebb-plugin-emoji@"^5.0.0" from nodebb-plugin-emoji-android@4.0.0
    npm ERR!   node_modules/nodebb-plugin-emoji-android
    npm ERR!     nodebb-plugin-emoji-android@"4.0.0" from the root project
    npm ERR!   nodebb-plugin-emoji@"5.0.3" from the root project
    npm ERR! 
    npm ERR! Could not resolve dependency:
    npm ERR! peer nodebb-plugin-emoji@"^4.0.0" from @nodebb/nodebb-plugin-reactions@1.0.2
    npm ERR! node_modules/@nodebb/nodebb-plugin-reactions
    npm ERR!   @nodebb/nodebb-plugin-reactions@"^1.0.2" from the root project
    npm ERR! 
    npm ERR! Conflicting peer dependency: nodebb-plugin-emoji@4.0.6
    npm ERR! node_modules/nodebb-plugin-emoji
    npm ERR!   peer nodebb-plugin-emoji@"^4.0.0" from @nodebb/nodebb-plugin-reactions@1.0.2
    npm ERR!   node_modules/@nodebb/nodebb-plugin-reactions
    npm ERR!     @nodebb/nodebb-plugin-reactions@"^1.0.2" from the root project
    npm ERR! 
    npm ERR! Fix the upstream dependency conflict, or retry
    npm ERR! this command with --force, or --legacy-peer-deps
    npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
    npm ERR! 
    npm ERR! See /root/.npm/eresolve-report.txt for a full report.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /root/.npm/_logs/2023-01-27T22_02_45_967Z-debug-0.log
    
        at ChildProcess.exithandler (node:child_process:419:12)
        at ChildProcess.emit (node:events:513:28)
        at maybeClose (node:internal/child_process:1091:16)
        at ChildProcess._handle.onexit (node:internal/child_process:302:5)
        at Process.callbackTrampoline (node:internal/async_hooks:130:17)
    

    Exemple here for update this plugin must to test :

    npm install nodebb-plugin-tenor-gif@3.0.0
    

    ?

  • @phenomlab

    Ok like pitaj said on nodebb communauty i have test this :

    npm config set legacy-peer-deps true
    

    and the plugins is installed without error on ACP

    Maybe add this on your first topic 😉

  • @DownPW good call. Will get that added.

  • Thanks for the guide, got my v3 environment running. 🙂

  • @dave1904 excellent news. Thanks for the feedback

  • phenomlabundefined phenomlab moved this topic from Guides on

Related Topics
  • NodeBB Twitter / X embeds

    Let's Build It
    31
    19 Votes
    31 Posts
    844 Views

    @OT I honestly am not able to replicate this. Can you PM me a link to a post on your forum with the specific issue so I can have a look?

  • 5 Votes
    3 Posts
    1k Views

    Very good like always 😉

  • Block Domain

    Solved Let's Build It
    26
    1 Votes
    26 Posts
    2k Views

    Yes ogproxy too is functionnal on dev

  • Threaded chat support for NodeBB

    Let's Build It
    35
    19 Votes
    35 Posts
    2k Views

    @DownPW said in Threaded chat support for NodeBB:

    Better like this : add shadow and border-left on self answer

    Of course - you style to your own requirements and taste 🙂 I’ll commit that CSS we discussed yesterday also

  • Nodebb icon on google page

    Solved Customisation
    9
    4 Votes
    9 Posts
    741 Views

    @Panda It’s been raised multiple times, but only for the open source version, and not hosted.

  • Setup OGProxy for use in NodeBB

    Moved Let's Build It
    110
    21 Votes
    110 Posts
    11k Views

    @crazycells said in Setup OGProxy for use in NodeBB:

    are they cached for each user separately?

    No. It’s a shared cache

    @crazycells said in Setup OGProxy for use in NodeBB:

    additionally, this is also handling youtube videos etc, right?

    No. This is handled by nodebb-plugin-ns-embed

  • Rotating homepage icons, gifs?

    Solved Configure
    2
    3 Votes
    2 Posts
    245 Views

    @eveh It’s not a GIF, no. It’s actually a webp file so made much smaller, and uses keyframes to control the rotation on hover. You can easily make your own though 🙂

    The CSS for that is as below

    @keyframes rotate180 { from { transform: rotate(0deg); } to { transform: rotate(180deg); } } @keyframes rotate0 { from { transform: rotate(180deg); } to { transform: rotate(0deg); } }

    Your milage may vary on the CSS below, as it’s custom for Sudonix, but this is the class that is used to control the rotate

    .header .forum-logo, img.forum-logo.head { max-height: 50px; width: auto; height: 30px; margin-top: 9px; max-width: 150px; min-width: 32px; display: inline-block; animation-name: rotate180, rotate0; animation-duration: 1000ms; animation-delay: 0s, 1000ms; animation-iteration-count: 1; animation-timing-function: linear; transition: transform 1000ms ease-in-out; }
  • Social icon (Nodebb)

    Solved Customisation
    7
    0 Votes
    7 Posts
    1k Views

    @phenomlab said in Social icon (Nodebb):

    @jac I just tested my theory around using the OG image, and according to the Twitter card validator, it works fine

    73e805e1-997b-41bf-9259-51c5052ca8fc-image.png

    fixed 🙂