• Re: Synchronet config change

    From Vitaliy Aksyonov@1:104/117 to Rob Swindell on Wed Mar 6 12:54:24 2024
    Hello Rob.

    06 Mar 24 11:24, you wrote to me:

    BTW, make sure that Synchronet changes are actually there. I've
    pushed them to master just today. You may need to pull from repo
    again.

    I was using the "Synchronet" branch. I'll switch to master.

    I see. Sounds good! Just wanted to make sure that you use correct code.

    But running it (via SSH) doesn't output anything, just exits
    immediately. 'gedlnx --help' same, nothing.

    Unfortunately there is a bug which hides usage message if no config
    found. I've tried to fix it, but had to revert it back, because
    correct fix is not that simple.

    So then I searched for documentation. golded.org appears down.

    I saw you have CMakeLists.txt, so I tried using that to build.
    This
    time, a lot fewer errors and it output some promising
    binaries, but
    again, running them produces no output:

    rswindell@git ~/golded-plus/out/golded3 (Synchronet) $ sudo
    make
    install [ 4%] Built target uulib [ 9%] Built target hunspell
    [ 34%]
    Built target gall [ 53%] Built target gcfg [ 60%] Built target
    gcui [
    61%] Built target smblib [ 77%] Built target gmb3 [100%] Built
    target
    golded Install the project... -- Install configuration: "" --
    Installing: /usr/local/bin/golded rswindell@git
    ~/golded-plus/out/golded3 (Synchronet) $ golded rswindell@git
    ~/golded-plus/out/golded3 (Synchronet) $

    Maybe I need to create or edit a config file or something? An
    error
    message or *some* kind of output from running 'golded' could
    be
    helpful.

    You have to have config file. You may start from simple config file
    from
    here:

    https://github.com/golded-plus/golded-plus/blob/master/cfgs/config/
    simple.cf g

    And then uncomment this line:

    ;AREAFILE SBBS R:\SBBS\ ; Synchronet BBS
    dir

    Set correct path to Synchronet directory. That shall do the trick.

    Okay, where does goled need to find this simple.cfg file? I assume I
    have to move or copy it somewhere that goled expects to find it.

    It either look for it in current working directory or you may run it with parameter -C. Like this:

    ./gedlnx -C/path/to/config

    Note that there is no space between -C and config file.

    Vitaliy

    ... 640K ought to be enough for anybody
    --- GoldED+/LNX 1.1.5-b20240305-beta
    * Origin: Aurora, Colorado (1:104/117)
  • From Kai Richter@2:240/77 to Rob Swindell on Wed Mar 6 22:46:44 2024
    Hello Rob!

    05 Mar 24, Rob Swindell wrote to Vitaliy Aksyonov:

    But running it (via SSH) doesn't output anything, just exits
    immediately. 'gedlnx --help' same, nothing.

    This is the "no config" bug and it's more than 10 years old. Try

    gedlnx -INSTALL

    to create a minimal config or build your own from examples.

    Regards

    Kai

    --- GoldED+/LNX 1.1.4.7
    * Origin: Monobox (2:240/77)
  • From Rob Swindell@1:103/705 to Vitaliy Aksyonov on Wed Mar 6 12:05:00 2024

    Hello Vitaliy!

    Replying to a msg dated 06 Mar 24 12:54, from you to me.


    I'm attempting a reply using GoldEd+ here.

    One thing I noticed, the SBBS config points to the parent of the Synchronet "control" directory rather than the ctrl directory itself (which is normally represnted by the SBBSCTRL environment variable). The control directory is not hard-coded to be "ctrl" anywhere, thought that is the default/stock configuration that most sysops keep. I would recommend that the GoldEd+ config file point to the path of the Synchronet "control" directory and not its parent directory. Or read this from the SBBSCRL env var.

    -Rob


    --- GoldED+/LNX 1.1.5-b20240303
    # Origin: ----> Default GoldED Origin <---- (1:103/705)
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Wilfred van Velzen@2:280/464 to Rob Swindell on Thu Mar 7 00:05:43 2024
    Hi Rob,

    On 2024-03-06 12:05:00, you wrote to Vitaliy Aksyonov:

    @MSGID: 1:103/705 65e8cd2a

    Finally a normal MSGID from a synchronet system! ;-)

    Hello Vitaliy!

    Replying to a msg dated 06 Mar 24 12:54, from you to me.


    I'm attempting a reply using GoldEd+ here.

    One thing I noticed, the SBBS config points to the parent of the Synchronet
    "control" directory rather than the ctrl directory itself (which is normally represnted by the SBBSCTRL environment variable). The control directory is not hard-coded to be "ctrl" anywhere, thought that is the default/stock configuration that most sysops keep. I would recommend that the GoldEd+ config file point to the path of the Synchronet "control" directory and not its parent directory. Or read this from the SBBSCRL env var.

    -Rob


    --- GoldED+/LNX 1.1.5-b20240303
    # Origin: ----> Default GoldED Origin <---- (1:103/705)
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)

    Bye, Wilfred.

    --- FMail-lnx64 2.2.1.1
    * Origin: FMail development HQ (2:280/464)
  • From Rob Swindell@1:103/705 to Wilfred van Velzen on Wed Mar 6 17:31:48 2024
    Re: Re: Synchronet config change
    By: Wilfred van Velzen to Rob Swindell on Thu Mar 07 2024 12:05 am

    @MSGID: 1:103/705 65e8cd2a

    Finally a normal MSGID from a synchronet system! ;-)

    Yeah, and it's a clearly-flawed one at that:
    time_t 1709755690 (0x65E8CD2A) ISO 2024-03-06 12:08:10.000-08:00
    --
    digital man (rob)

    Synchronet "Real Fact" #30:
    The COM I/O routines for Synchronet for DOS were written in ASM by Steve Deppe Norco, CA WX: 52.4øF, 91.0% humidity, 2 mph NW wind, 0.08 inches rain/24hrs
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Carlos Navarro@2:341/234.1 to Rob Swindell on Thu Mar 7 07:22:04 2024
    06 Mar 2024 17:31, you wrote to Wilfred van Velzen:

    @MSGID: 1:103/705 65e8cd2a

    Finally a normal MSGID from a synchronet system! ;-)

    Yeah, and it's a clearly-flawed one at that:

    It would be great if GoldED+ had an option like:

    // Generate special, SBBS-style MSGIDs: "msgno.echotag@z:n/f[.p] serialno" SMSGID YES


    Carlos

    --- GoldED+/W32-MSVC 1.1.5-b20180707
    * Origin: cyberiada (2:341/234.1)
  • From Wilfred van Velzen@2:280/464.112 to Rob Swindell on Thu Mar 7 08:14:28 2024
    Hi Rob,

    On 06 Mar 24 17:31, Rob Swindell wrote to Wilfred van Velzen:
    about: "Re: Synchronet config change":

    @MSGID: 1:103/705 65e8cd2a

    Finally a normal MSGID from a synchronet system! ;-)

    Yeah, and it's a clearly-flawed one at that:
    time_t 1709755690 (0x65E8CD2A) ISO 2024-03-06 12:08:10.000-08:00

    That isn't a problem as long as it doesn't re-use it in 3 years. And it doesn't.


    Wilfred.

    --- FMail-W64 2.2.0.0
    * Origin: point@work (2:280/464.112)
  • From Wilfred van Velzen@2:280/464.112 to Carlos Navarro on Thu Mar 7 08:11:31 2024
    Hi Carlos,

    On 07 Mar 24 07:22, Carlos Navarro wrote to Rob Swindell:
    about: "Synchronet config change":

    @MSGID: 1:103/705 65e8cd2a

    Finally a normal MSGID from a synchronet system! ;-)

    Yeah, and it's a clearly-flawed one at that:

    It would be great if GoldED+ had an option like:

    // Generate special, SBBS-style MSGIDs: "msgno.echotag@z:n/f[.p] serialno" SMSGID YES

    It would be a terrible idea.


    Wilfred.

    --- FMail-W64 2.2.0.0
    * Origin: point@work (2:280/464.112)
  • From Michiel van der Vlist@2:280/5555 to Wilfred van Velzen on Thu Mar 7 10:45:49 2024
    It would be great if GoldED+ had an option like:

    // Generate special, SBBS-style MSGIDs: "msgno.echotag@z:n/f[.p]
    serialno" SMSGID YES

    It would be a terrible idea.

    Seconded!


    Cheers, Michiel

    --- GoldED+/W32-MSVC 1.1.5-b20170303
    * Origin: Nieuw Schnøørd (2:280/5555)
  • From Vitaliy Aksyonov@1:104/117 to Rob Swindell on Thu Mar 7 06:55:34 2024
    Hello Rob.

    06 Mar 24 12:05, you wrote to me:

    I'm attempting a reply using GoldEd+ here.

    One thing I noticed, the SBBS config points to the parent of the Synchronet "control" directory rather than the ctrl directory itself (which is normally represnted by the SBBSCTRL environment variable).
    The control directory is not hard-coded to be "ctrl" anywhere, thought that is the default/stock configuration that most sysops keep. I would recommend that the GoldEd+ config file point to the path of the
    Synchronet "control" directory and not its parent directory. Or read
    this from the SBBSCRL env var.

    Currently you may use three different options for Synchronet AreaFile:

    1) Path to Synchronet root. And then Golded would assume that config is is ctrl directory.
    2) Path to Synchronet control directory.
    3) Path to msgs.ini itself.

    And also GoldEd assumes that message bases located on the same level as control directory in "data/subs" directory.

    I didn't invent that logic. Just added parsing ini in addition to cnf file.

    I'm happy to change the way it configured. But I'm not an expert in Synchronet design. Could you please describe how it may be configured? Maybe would be better to parse main config file first and pull necessary directories from there?

    Vitaliy

    ... 640K ought to be enough for anybody
    --- GoldED+/LNX 1.1.5-b20240305-beta
    * Origin: Aurora, Colorado (1:104/117)
  • From Rob Swindell@1:103/705 to Wilfred van Velzen on Thu Mar 7 10:32:27 2024
    Re: Re: Synchronet config change
    By: Wilfred van Velzen to Rob Swindell on Thu Mar 07 2024 08:14 am

    Hi Rob,

    On 06 Mar 24 17:31, Rob Swindell wrote to Wilfred van Velzen:
    about: "Re: Synchronet config change":

    @MSGID: 1:103/705 65e8cd2a

    Finally a normal MSGID from a synchronet system! ;-)

    Yeah, and it's a clearly-flawed one at that:
    time_t 1709755690 (0x65E8CD2A) ISO 2024-03-06 12:08:10.000-08:00

    That isn't a problem as long as it doesn't re-use it in 3 years. And it doesn't.

    It would be a problem if any other agent on my system created a message at that same second using that same broken message-ID format. The timestamp should never be used as the serial number.
    https://wiki.synchro.net/faq:misc#ftn_msgid
    --
    digital man (rob)

    This Is Spinal Tap quote #1:
    Nigel Tufnel: These go to eleven.
    Norco, CA WX: 55.2øF, 72.0% humidity, 5 mph W wind, 0.57 inches rain/24hrs
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to Vitaliy Aksyonov on Thu Mar 7 10:46:18 2024
    Re: Re: Synchronet config change
    By: Vitaliy Aksyonov to Rob Swindell on Thu Mar 07 2024 06:55 am

    Hello Rob.

    06 Mar 24 12:05, you wrote to me:

    I'm attempting a reply using GoldEd+ here.

    One thing I noticed, the SBBS config points to the parent of the Synchronet "control" directory rather than the ctrl directory itself (which is normally represnted by the SBBSCTRL environment variable). The control directory is not hard-coded to be "ctrl" anywhere, thought that is the default/stock configuration that most sysops keep. I would recommend that the GoldEd+ config file point to the path of the Synchronet "control" directory and not its parent directory. Or read this from the SBBSCRL env var.

    Currently you may use three different options for Synchronet AreaFile:

    1) Path to Synchronet root. And then Golded would assume that config is is ctrl directory.
    2) Path to Synchronet control directory.
    3) Path to msgs.ini itself.

    Only methods 2 and 3 there would be valid. There's no real "Synchronet root".

    And also GoldEd assumes that message bases located on the same level as control directory in "data/subs" directory.

    That would be incorrect. Each message base can actually be located anywhere (that's what 'data_dir' is used for - but it's it's blank, then data/subs can be assumed, but the location of the 'data' directory is also configurable in the [dir] section of main.ini).

    I didn't invent that logic. Just added parsing ini in addition to cnf file.

    I'm happy to change the way it configured. But I'm not an expert in Synchronet design. Could you please describe how it may be configured?

    SBBSCTRL (env var or other method of discovery) points to Synchronet "control" directory (which could be named/located anywhere), where you can find main.ini which in turn defines the relative path (from the "control" directory) to the "data" directory.

    Then parsing msgs.ini, each message area (sub) can have its own "data_dir" defined (where to find the message base files themselves) - if the data_dir isn't defined, then the "subs" sub-directory of the configured "data" directory is where the message base files are expected to be found.

    Maybe
    would be better to parse main config file first and pull necessary directories from there?

    Yes, main.ini would need to be parsed as well (first).

    Synchronet is open source and the most relevant source file, for reference, would be: https://gitlab.synchro.net/main/sbbs/-/blob/master/src/sbbs3/scfglib1.c
    --
    digital man (rob)

    This Is Spinal Tap quote #10:
    Dozens of people spontaneously combust each year... just not widely reported. Norco, CA WX: 56.9øF, 70.0% humidity, 6 mph W wind, 0.57 inches rain/24hrs
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Carlos Navarro@2:341/234.1 to Wilfred van Velzen on Thu Mar 7 21:54:39 2024
    07 Mar 2024 08:11, you wrote to me:

    It would be great if GoldED+ had an option like:

    // Generate special, SBBS-style MSGIDs: "msgno.echotag@z:n/f[.p]
    serialno" SMSGID YES

    It would be a terrible idea.

    I knew you wouldn't like it ;-)

    Just for reference: if this was ever implemented, it would be better to do it only for echomail (like Synchronet does), in case some old software parses the address from the MSGID in netmails.

    Carlos

    --- GoldED+/W32-MSVC 1.1.5-b20180707
    * Origin: cyberiada (2:341/234.1)
  • From Vitaliy Aksyonov@1:104/117 to Rob Swindell on Thu Mar 7 17:35:56 2024
    Hello Rob.

    07 Mar 24 10:46, you wrote to me:

    Hello Rob.

    06 Mar 24 12:05, you wrote to me:

    I'm attempting a reply using GoldEd+ here.

    One thing I noticed, the SBBS config points to the parent of
    the
    Synchronet "control" directory rather than the ctrl directory
    itself
    (which is normally represnted by the SBBSCTRL environment
    variable).
    The control directory is not hard-coded to be "ctrl" anywhere,
    thought
    that is the default/stock configuration that most sysops keep.
    I would
    recommend that the GoldEd+ config file point to the path of
    the
    Synchronet "control" directory and not its parent directory.
    Or read
    this from the SBBSCRL env var.

    Currently you may use three different options for Synchronet
    AreaFile:

    1) Path to Synchronet root. And then Golded would assume that
    config is is ctrl directory. 2) Path to Synchronet control
    directory. 3) Path to msgs.ini itself.

    Only methods 2 and 3 there would be valid. There's no real "Synchronet root".

    I'm inclining to rework it and use only method 3, but read main.ini first, then mail.ini.

    And also GoldEd assumes that message bases located on the same
    level as control directory in "data/subs" directory.

    That would be incorrect. Each message base can actually be located anywhere (that's what 'data_dir' is used for - but it's it's blank,
    then data/subs can be assumed, but the location of the 'data'
    directory is also configurable in the [dir] section of main.ini).

    You're right. It does use data_dir if it's available in message base config. I forgot to mention that. Only if it's empty - it uses data/subs. I'll rework this too.

    I didn't invent that logic. Just added parsing ini in addition to
    cnf file.

    I'm happy to change the way it configured. But I'm not an expert in
    Synchronet design. Could you please describe how it may be
    configured?

    SBBSCTRL (env var or other method of discovery) points to Synchronet "control" directory (which could be named/located anywhere), where you
    can find main.ini which in turn defines the relative path (from the "control" directory) to the "data" directory.

    Then parsing msgs.ini, each message area (sub) can have its own
    "data_dir" defined (where to find the message base files themselves) -
    if the data_dir isn't defined, then the "subs" sub-directory of the configured "data" directory is where the message base files are
    expected to be found.

    Env var is not a good idea. Better to use path to main.ini. Am I right that all ini files shall be within control directory?

    Maybe
    would be better to parse main config file first and pull necessary
    directories from there?

    Yes, main.ini would need to be parsed as well (first).

    Agree.

    Synchronet is open source and the most relevant source file, for reference, would be: https://gitlab.synchro.net/main/sbbs/-/blob/master/src/sbbs3/scfglib1.
    c

    I used that file for reference when worked on this change. Thanks.

    Wait for the next patch which will make it even better. BTW, I found one issue in my change which will make it fail to read message bases in windows. That will be fixed too.

    Thanks for help! Appreciate it!

    Vitaliy

    ... 640K ought to be enough for anybody
    --- GoldED+/LNX 1.1.5-b20240305-beta
    * Origin: Aurora, Colorado (1:104/117)
  • From Tommi Koivula@2:221/360 to Rob Swindell on Fri Mar 8 13:36:34 2024
    Hi Rob.

    06 Mar 24 22:46, Kai Richter wrote to you:

    But running it (via SSH) doesn't output anything, just exits
    immediately. 'gedlnx --help' same, nothing.

    This is the "no config" bug and it's more than 10 years old. Try

    gedlnx -INSTALL

    to create a minimal config or build your own from examples.

    This was fixed in some builds ago, but it is back now. :(

    ./gedlnx -h >/dev/null helps. :)

    'Tommi

    --- GoldED+/LNX 1.1.5-b20240306
    * Origin: rbb.fidonet.fi (2:221/360)
  • From Rob Swindell@1:103/705 to Vitaliy Aksyonov on Fri Mar 8 12:13:17 2024
    Re: Re: Synchronet config change
    By: Vitaliy Aksyonov to Rob Swindell on Thu Mar 07 2024 05:35 pm

    Hello Rob.

    07 Mar 24 10:46, you wrote to me:

    Hello Rob.

    06 Mar 24 12:05, you wrote to me:

    I'm attempting a reply using GoldEd+ here.

    One thing I noticed, the SBBS config points to the parent of
    the
    Synchronet "control" directory rather than the ctrl directory
    itself
    (which is normally represnted by the SBBSCTRL environment
    variable).
    The control directory is not hard-coded to be "ctrl" anywhere,
    thought
    that is the default/stock configuration that most sysops keep.
    I would
    recommend that the GoldEd+ config file point to the path of
    the
    Synchronet "control" directory and not its parent directory.
    Or read
    this from the SBBSCRL env var.

    Currently you may use three different options for Synchronet
    AreaFile:

    1) Path to Synchronet root. And then Golded would assume that
    config is is ctrl directory. 2) Path to Synchronet control
    directory. 3) Path to msgs.ini itself.

    Only methods 2 and 3 there would be valid. There's no real "Synchronet root".

    I'm inclining to rework it and use only method 3, but read main.ini first, then mail.ini.

    And also GoldEd assumes that message bases located on the same
    level as control directory in "data/subs" directory.

    That would be incorrect. Each message base can actually be located anywhere (that's what 'data_dir' is used for - but it's it's blank, then data/subs can be assumed, but the location of the 'data'
    directory is also configurable in the [dir] section of main.ini).

    You're right. It does use data_dir if it's available in message base config. I forgot to mention that. Only if it's empty - it uses data/subs. I'll rework this too.

    I didn't invent that logic. Just added parsing ini in addition to
    cnf file.

    I'm happy to change the way it configured. But I'm not an expert in
    Synchronet design. Could you please describe how it may be
    configured?

    SBBSCTRL (env var or other method of discovery) points to Synchronet "control" directory (which could be named/located anywhere), where you can find main.ini which in turn defines the relative path (from the "control" directory) to the "data" directory.

    Then parsing msgs.ini, each message area (sub) can have its own "data_dir" defined (where to find the message base files themselves) - if the data_dir isn't defined, then the "subs" sub-directory of the configured "data" directory is where the message base files are expected to be found.

    Env var is not a good idea. Better to use path to main.ini. Am I right that all ini files shall be within control directory?

    The SBBSCTRL env var is a method of locating the main.ini file to begin with. that's how most Synchronet utilities find it. Otherwise, you'll need store a path to it somewhere else (e.g. in a golded.cfg file, like you do now).

    I used that file for reference when worked on this change. Thanks.

    Wait for the next patch which will make it even better. BTW, I found one issue in my change which will make it fail to read message bases in windows. That will be fixed too.

    Nice! I only tested on Linux so far.
    --
    digital man (rob)

    Rush quote #61:
    He's a rebel and a runner, he's a signal turning green .. New World Man
    Norco, CA WX: 67.0øF, 39.0% humidity, 3 mph WSW wind, 0.14 inches rain/24hrs --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Vitaliy Aksyonov@1:104/117 to Tommi Koivula on Sat Mar 9 12:55:50 2024
    Hello Tommi.

    08 Mar 24 13:36, you wrote to Rob Swindell:

    But running it (via SSH) doesn't output anything, just exits
    immediately. 'gedlnx --help' same, nothing.

    This is the "no config" bug and it's more than 10 years old. Try

    gedlnx -INSTALL

    to create a minimal config or build your own from examples.

    This was fixed in some builds ago, but it is back now. :(

    ./gedlnx -h >/dev/null helps. :)

    I had to rollback that change, because it breaks things for some people. Will try to do it again later.

    Vitaliy

    ... 640K ought to be enough for anybody
    --- GoldED+/LNX 1.1.5-b20240305-beta
    * Origin: Aurora, Colorado (1:104/117)
  • From Vitaliy Aksyonov@1:104/117 to Rob Swindell on Sat Mar 9 17:17:44 2024
    Hello Rob.

    08 Mar 24 12:13, you wrote to me:

    The SBBSCTRL env var is a method of locating the main.ini file to
    begin with. that's how most Synchronet utilities find it. Otherwise, you'll need store a path to it somewhere else (e.g. in a golded.cfg
    file, like you do now).

    Added reading data_dir from main.ini.
    Now need to pass full path to main.ini file. All other paths will be resolved.

    I used that file for reference when worked on this change. Thanks.

    Wait for the next patch which will make it even better. BTW, I
    found one issue in my change which will make it fail to read
    message bases in windows. That will be fixed too.

    Nice! I only tested on Linux so far.

    Could you try it from Synchronet2 branch?

    Vitaliy

    ... 640K ought to be enough for anybody
    --- GoldED+/LNX 1.1.5-b20240305-beta
    * Origin: Aurora, Colorado (1:104/117)