• upgrade and move bbs raspbian to ubu intel

    From bbsing@VERT/LUNAROUT to Digital Man on Tue Mar 17 21:43:16 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to bbsing on Sun Mar 15 2026 16:07:01

    Hi Digital Man,

    Thanks for the help on links to great documentation.

    You changed that file in exec (you normally should not do that, copy to "mods" and modify there instead). To work around that git error you can pull

    I really have to understand this, and maybe I shouldn't be building with symlink option. I have more to learn about how that works, because files I totally intended to mod in the exec directory like the gopherservice.js, or sbbs.service to run under a different user,..etc, and xtrn end up showing up as mods, when doing a pull.

    I think some of the installs in the xtrn folder symlink (startrek) need to be modded to update FQDN, and it seems like after running the auto install the only ini file was linked within the repo directory. But this is just me attempting to understand the system. YOu know far better than I do.

    with rebase and autostash options: https://wiki.synchro.net/howto:git#up_alias

    I tried many different options on the documentation and the only thing I could do to get a pull without errors was reset, then a pull --rebase.


    Or just "git checkout" the file, though you'll lose your local changes if you do that.
    You likely originally built sbbs using the system's libmozjs (?) by specifying the JSINCLUDE and JSLIB build options. https://wiki.synchro.net/howto:raspbian_install


    The spidermonkey js libmozjs185-dev doesn't exist for ubuntu 25.04. The lbmozjs dev debs for ubuntu 25.04 don't contain a jsinclude.h file. .. I think its version 115, or 128. 185 which has the jsinclude.h was removed from ubuntu sometime around 2018 ... I think ... just guessing based on posts on the internets. I tried to build on my target to version 115 and 128, but still got the error about jsinclude.h.

    I don't know how to pull a sbbs 3.20 version to my target system. If you or anyone else does, please let me know, and I'll try to build it on target, then migrate my data over, then pull again and get up to date on target system.

    Otherwise I think I have to just try and migrate the data files over to target without building a like systems on source and target.

    I may try to reset my repo, then rebuild without the JSINCLUDE and JSLIB ... basically using the current instructions for the respbian_install.

    ---------------------------------
    The raspberrypi 2w was a fun device to try using for my bbs, but with my setup it just doesn't have the compute power to stay stable. Also its running on an micro ssd, and since its been online for almost two years, I'm scared the ssd is going to fail since they usually do after a couple of years on systems that are not read only. ->-> Going to move it to something with more resources, and more options.

    A raspberry pi 4, or 5x or even a 3b+ with a ethernet port may have been better. I could have put the sbbs files on an NFS server, backups would have been easier as well. I just don't have an NFS i can expose to internets. The raspi wifi device did offer a good way to isolate it from all other hosts.

    ---
    þ Synchronet þ Lunar Outpost BBS
  • From Digital Man@VERT to bbsing on Wed Mar 18 14:42:19 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: bbsing to Digital Man on Tue Mar 17 2026 09:43 pm

    You changed that file in exec (you normally should not do that, copy to "mods" and modify there instead). To work around that git error you can pull

    I really have to understand this, and maybe I shouldn't be building with symlink option. I have more to learn about how that works, because files I totally intended to mod in the exec directory like the gopherservice.js, or sbbs.service to run under a different user,..etc, and xtrn end up showing up as mods, when doing a pull.

    the "mods" directory isn't in the git repo, so I'm not sure what you're saying.

    The spidermonkey js libmozjs185-dev doesn't exist for ubuntu 25.04.

    Use the copy of spidermonkey included in the Synchronet git repo, in the 3rdp directory instead. That's the normal/default build option. Using the system's libmzojs185 is the exception.
    --
    digital man (rob)

    Steven Wright quote #20:
    If Barbie is so popular, why do you have to buy her friends?
    Norco, CA WX: 92.5øF, 25.0% humidity, 8 mph W wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Grant Weasner@VERT to Digital Man on Wed Mar 18 15:21:11 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to bbsing on Wed Mar 18 2026 14:42:19

    a
    different user,..etc, and xtrn end up showing up as mods, when doing a pull.

    the "mods" directory isn't in the git repo, so I'm not sure what you're saying.

    sorry for the use of the word mods.
    when doing a pull, anything modified produces an error because I believe they haven't been resolved.
    I did not put anything in the the sbbs/mods/ directory.

    I did modify some files because I believe the autoinstall process linked some of the files, or I just didn't understand what to do after the autoinstall process. mrc, startrek.

    Stuff I didn't modify was 3rdp, but some of those came with reason for aborting the pull.

    Use the copy of spidermonkey included in the Synchronet git repo, in the 3rdp directory instead. That's the normal/default build
    option. Using the system's libmzojs185 is the exception.

    for whatever reason when I try to use that the build fails, looking for file jsversion.h

    my original build command was:
    make -f install-sbbs.mk SYMLINK=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185

    my repo has in 3rdp:
    ./3rdp/win32.release/mozjs/include/jsversion.h

    but my target (ubuntu 25.04 on i5 arch) nor did my source system raspi2w raspbian bullseye on arm7l, like it.

    my target can build the current release, but not the release from my source system.


    target build attempt on target:
    ------------------------------
    build command>
    make RELEASE=1 setcap symlinks JSINCLUDE JSLIB
    -------------------------
    output>
    -------------------------
    checking for mawk... mawk
    checking for perl5... no
    checking for perl... /usr/bin/perl
    checking for gcc... cc
    checking whether the C compiler (cc ) works... no
    configure: error: installation or configuration problem: C compiler cannot create executables.
    make[1]: *** [GNUmakefile:92: ../build/../../src/../3rdp/gcc.linux.x64.release/mozjs/lib/libmozjs185-1.0.a] Error 1
    make[1]: Leaving directory '/sbbs/repo/3rdp/build'
    make: *** [/sbbs/repo/src/sbbs3/../build/Common.gmake:608: js] Error 2
    --- SBBSecho 3.20-Linux
    * Origin: Lunar Outpost - lunarout.synchro.net (1:138/397)
    * Synchronet * Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Grant Weasner on Wed Mar 18 15:50:20 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Grant Weasner to Digital Man on Wed Mar 18 2026 03:21 pm

    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to bbsing on Wed Mar 18 2026 14:42:19

    a
    different user,..etc, and xtrn end up showing up as mods, when doing a pull.

    the "mods" directory isn't in the git repo, so I'm not sure what you're saying.

    sorry for the use of the word mods.
    when doing a pull, anything modified produces an error because I believe they haven't been resolved.
    I did not put anything in the the sbbs/mods/ directory.

    I did modify some files because I believe the autoinstall process linked some of the files, or I just didn't understand what to do after the autoinstall process. mrc, startrek.

    If you have to modify a file, say xtrn/*/*.ini for settings changes, then you'll need to "stash" those settings during your 'git pull' operation (e.g. 'git pull --autostash' see the man page for git-pull for details).

    Stuff I didn't modify was 3rdp, but some of those came with reason for aborting the pull.

    Use the copy of spidermonkey included in the Synchronet git repo, in the 3rdp directory instead. That's the normal/default build option. Using the system's libmzojs185 is the exception.

    for whatever reason when I try to use that the build fails, looking for file jsversion.h

    my original build command was:
    make -f install-sbbs.mk SYMLINK=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185

    you should *not* include JSINCLUDE or JSLIB for Linux-x64 builds and I think even on modern Raspberry Pi or other 64-bit ARM platforms.

    my repo has in 3rdp:
    ./3rdp/win32.release/mozjs/include/jsversion.h

    but my target (ubuntu 25.04 on i5 arch) nor did my source system raspi2w raspbian bullseye on arm7l, like it.

    my target can build the current release, but not the release from my source system.


    target build attempt on target:
    ------------------------------
    build command>
    make RELEASE=1 setcap symlinks JSINCLUDE JSLIB

    Don't include JSINCLUDE or JSLIB (and why are they not =<some path>?) on the build command-line unless you have a specific reason/need to use the system's libmozjs rather the one included with ("vendored" for) sbbs.
    --
    digital man (rob)

    Sling Blade quote #11:
    Doyle Hargraves (to Karl): What in the hell you doin' with that hammer?
    Norco, CA WX: 93.6øF, 25.0% humidity, 10 mph W wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Grant Weasner@VERT to Digital Man on Wed Mar 18 22:17:55 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to Grant Weasner on Wed Mar 18 2026 15:50:20

    Hi Rob,


    Don't include JSINCLUDE or JSLIB (and why are they not =<some path>?) on the build command-line unless you have a specific reason/need to use the system's libmozjs rather the one included with ("vendored" for) sbbs.

    I've tried with and without and I end up with errors.

    make RELEASE=1 setcap symlinks
    -------------------------
    produces the an error.
    ------------------------------------------------------
    make -C /sbbs/repo/src/sbbs3/../../3rdp/build cryptlib
    make[1]: Entering directory '/sbbs/repo/3rdp/build'
    make[1]: Nothing to be done for 'cryptlib'.
    make[1]: Leaving directory '/sbbs/repo/3rdp/build'
    Compiling ansiterm.cpp
    In file included from ansiterm.cpp:22:
    sbbs.h:101:10: fatal error: jsversion.h: No such file or directory
    101 | #include <jsversion.h>
    | ^~~~~~~~~~~~~
    compilation terminated.
    ------------------------------------------------------

    I'll keep working on it.
    --- SBBSecho 3.20-Linux
    * Origin: Lunar Outpost - lunarout.synchro.net (1:138/397)
    * Synchronet * Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Grant Weasner on Wed Mar 18 23:02:53 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Grant Weasner to Digital Man on Wed Mar 18 2026 10:17 pm

    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to Grant Weasner on Wed Mar 18 2026 15:50:20

    Hi Rob,


    Don't include JSINCLUDE or JSLIB (and why are they not =<some path>?) on the build command-line unless you have a specific reason/need to use the system's libmozjs rather the one included with ("vendored" for) sbbs.

    I've tried with and without and I end up with errors.

    make RELEASE=1 setcap symlinks
    -------------------------
    produces the an error. ------------------------------------------------------
    make -C /sbbs/repo/src/sbbs3/../../3rdp/build cryptlib
    make[1]: Entering directory '/sbbs/repo/3rdp/build'
    make[1]: Nothing to be done for 'cryptlib'.
    make[1]: Leaving directory '/sbbs/repo/3rdp/build'
    Compiling ansiterm.cpp
    In file included from ansiterm.cpp:22:
    sbbs.h:101:10: fatal error: jsversion.h: No such file or directory
    101 | #include <jsversion.h>
    | ^~~~~~~~~~~~~
    compilation terminated. ------------------------------------------------------

    I'll keep working on it.

    Take a look at your src/build/localdefs.mk file, it stores your original installation/build options and you might need to edit it.
    https://wiki.synchro.net/install:nix#clean_rebuild
    --
    digital man (rob)

    Steven Wright quote #10:
    The early bird may get the worm, but the second mouse gets the cheese.
    Norco, CA WX: 75.3øF, 39.0% humidity, 0 mph ESE wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From bbsing@VERT/LUNAROUT to Digital Man on Thu Mar 19 17:32:22 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to Grant Weasner on Wed Mar 18 2026 23:02:53

    Hi Rob,

    Here is my update to my adventure.
    good news. I'm getting closer ... I think.


    Take a look at your src/build/localdefs.mk file, it stores your original installation/build options and you might need to edit it. https://wiki.synchro.net/install:nix#clean_rebuild

    I tried stuff in there and played with cleanall.sh and localdefs.mk

    every time during my attempt to build I the same two problems.
    cc can't write files
    or
    jsversion.h wasn't found.

    here is how I resolved it at least to complete a building the system.
    right now I'm still testing the results.

    my current questions are is there no source for sbbs320.tgz?
    I see sbbs320b.tgz, and sbbs320d.tgz.

    Seems like once I've build using system js its not possible to build again without it even on a different system, at least with the instructions I've been reading.

    ------------------------------------------------------
    on my ubuntu 25.04 system.

    I had to run through my original build process from year 2024,
    mostly taken from
    https://wiki.synchro.net/howto:raspbian_install
    modified just a bit from
    https://wiki.synchro.net/install:nix

    Then collect the debs I used with my raspberrypi build back in 2024.
    except I need the ones for amd64 type systems.

    I went to the following sites:

    http://archive.debian.org/debian/pool/main/libf/libffi/
    http://archive.debian.org/debian/pool/main/m/mozjs/

    collect the following debs:
    libffi-dev_3.2.1-6_amd64.deb
    libmozjs185-1.0_1.8.5-1.0.0+dfsg-4.3_amd64.deb
    libmozjs185-dev_1.8.5-1.0.0+dfsg-4.3_amd64.deb
    libmozjs185-dev_1.8.5-1.0.0+dfsg-6_amd64.deb
    libffi6_3.2.1-6_amd64.deb


    put them in a directory, debs
    cd debs
    sudo dpkg -i *.deb

    copied my tar ball from my source system to my target system.
    source = raspberrpy 2w bullseye
    target = i5 ubuntu 25.04

    untar the tgz to /sbbs on target.

    Then build via:
    cd /sbbs/

    make -f install-sbbs.mk SYMLINK=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185

    ---------------------------------

    ---
    þ Synchronet þ Lunar Outpost BBS
  • From Digital Man@VERT to bbsing on Thu Mar 19 22:28:12 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: bbsing to Digital Man on Thu Mar 19 2026 05:32 pm

    Take a look at your src/build/localdefs.mk file, it stores your original installation/build options and you might need to edit it. https://wiki.synchro.net/install:nix#clean_rebuild

    I tried stuff in there and played with cleanall.sh and localdefs.mk

    So, what *was* in your localdefs.mk file?

    every time during my attempt to build I the same two problems.
    cc can't write files

    That sounds like a permissions issue (i.e. you're mixing what user your building sbbs as).

    or
    jsversion.h wasn't found.

    You're not using the 3rdp/libmozjs included in the repo.

    here is how I resolved it at least to complete a building the system.
    right now I'm still testing the results.

    my current questions are is there no source for sbbs320.tgz?
    I see sbbs320b.tgz, and sbbs320d.tgz.

    Those are the source release archives for v3.20b and d. There never was an sbbs320.tgz because there never was such a thing. Synchronet versions have always included a revision (after v2.00, the revision was always a letter).

    Seems like once I've build using system js its not possible to build again without it even on a different system, at least with the instructions I've been reading.

    So I'm not clear why you would move the source tree to another computer and try to build it. Just get it fresh from git and build like everyone else does. :-)

    make -f install-sbbs.mk SYMLINK=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185

    Don't include JSINCLUDE and JSLIB unless you have a reason to.
    --
    digital man (rob)

    Synchronet "Real Fact" #53:
    Synchronet Blackjack was the first multi-node/multi-user game for Synchronet Norco, CA WX: 78.5øF, 48.0% humidity, 0 mph NE wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Grant Weasner@VERT to Digital Man on Thu Mar 26 04:37:41 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to bbsing on Fri Mar 20 2026 05:28:12

    Take a look at your src/build/localdefs.mk file, it stores your original installation/build options and you might need to edit it. https://wiki.synchro.net/install:nix#clean_rebuild

    I tried stuff in there and played with cleanall.sh and localdefs.mk

    So, what *was* in your localdefs.mk file?
    from my source system raspi2w:
    MAKEFLAGS=
    os=linux
    RELEASE=1

    JSLIB=mozjs185
    localdefs.mk (END)


    every time during my attempt to build I the same two problems.
    cc can't write files

    That sounds like a permissions issue (i.e. you're mixing what user your building sbbs as).

    or
    jsversion.h wasn't found.

    You're not using the 3rdp/libmozjs included in the repo.

    here is how I resolved it at least to complete a building the system. right now I'm still testing the results.

    my current questions are is there no source for sbbs320.tgz?
    I see sbbs320b.tgz, and sbbs320d.tgz.

    Those are the source release archives for v3.20b and d. There never was an sbbs320.tgz because there never was such a thing. Synchronet versions have always included a revision (after v2.00, the revision was always a letter).
    Seems like once I've build using system js its not possible to build again without it even on a different system, at least with the instructions I've been reading.

    So I'm not clear why you would move the source tree to another computer and try to build it. Just get it fresh from git and build like everyone else does. :-)

    Because in one of links or posts it was recommended to make sure the source and target system are on the same version. Since I couldn't pull the newest version from git, I attempted to build the same version as the source on the target.


    make -f install-sbbs.mk SYMLINK=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185

    Don't include JSINCLUDE and JSLIB unless you have a reason to.

    I didn't have to include JSINCLUDE and JSLIB on the target.

    In the end I just did a clean build starting fresh on the target and migrated.

    ctrl
    data
    fido
    mods
    node1
    node2
    node3
    node4

    folders over. From what I can tell everything is working OK. I have to make a few tweaks, to fix TLS errors, and other configs I had set.

    This time I put mrc in my mods directory. Later I'll try a pull and see if all that works. I'm just happy my system has been migrated and is back up and running.

    Thanks for all your help.
    --- SBBSecho 3.37-Linux
    * Origin: Lunar Outpost - lunarout.synchro.net (1:138/397)
    * Synchronet * Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Grant Weasner on Wed Mar 25 22:41:04 2026
    Re: upgrade and move bbs raspbian to ubu intel
    By: Grant Weasner to Digital Man on Thu Mar 26 2026 04:37 am

    Re: upgrade and move bbs raspbian to ubu intel
    By: Digital Man to bbsing on Fri Mar 20 2026 05:28:12

    Take a look at your src/build/localdefs.mk file, it stores your original installation/build options and you might need to edit it. https://wiki.synchro.net/install:nix#clean_rebuild

    I tried stuff in there and played with cleanall.sh and localdefs.mk

    So, what *was* in your localdefs.mk file?
    from my source system raspi2w:
    MAKEFLAGS=
    os=linux
    RELEASE=1

    JSLIB=mozjs185
    localdefs.mk (END)

    So you need to remove the JSLIB line in order to use the vendor'd libmozjs included in the Synchronet repo.

    Don't include JSINCLUDE and JSLIB unless you have a reason to.

    I didn't have to include JSINCLUDE and JSLIB on the target.

    You had JSLIB in your localdefs.mk, that's the same as including it on the make command-line.
    --
    digital man (rob)

    Breaking Bad quote #29:
    2 day drive to the nearest ocean and you're eating raw fish, is all I'm sayen. Norco, CA WX: 62.8øF, 81.0% humidity, 1 mph SSE wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net