Synchronet v3.16c-Win32 (install) has been released (Aug-2015).

You can donate to the Synchronet project using PayPal.

UNIX

Flavors

Question:
What flavors of Unix (and Unix-like operating systems) are supported?

Answer:
Currently there are four levels of support for Unix-like OSs.

  1. Operating systems and platforms which are actively used by the developers. These are always expected to work correctly. Currently, only Linux (x86 and x64) and FreeBSD on x86 are in this category.
  2. Platforms which have been ran by developers and an attempt to maintain support is exerted. These platforms are OS X, NetBSD, and OpenBSD on x86. In general a good bug report will result in a quick fix to these systems.
  3. Next there is non-x86 hardware with one of the above OSs. We try to ensure that Synchronet works on these platforms, but a bug report may be ignored for months before it is resolved due to lack of access to the platform. When reporting a bug, it would be good if the reporter is willing to grant remote shell access to their system and have a development toolchain installed.
  4. Lastly there are systems which will never be supported. These generally include systems with 16-bit address buses, lack of an implementation of the pthread API (such as Xenix systems), or ones which are generally painful to work on (such as GNU/Hurd).

Linux Distros

Question:
What distributions of Linux are supported?

Answer:
Should work with any GNU/Linux-x86 or x64 distribution (e.g. RedHat, Debian, Slackware, Ubuntu, Gentoo, etc.).

64-bit

Question:
64-bit?

Answer:
64-bit Linux (x64, x86_64, x86-64) distributions are supported.

Installer

Question:
The installer (e.g. Linux-install from sbbsunix.tgz) segfaults, crashes, or fails to get the file size of sbbs_src.tgz.

Answer:
This installer has known issues and is currently unsupported. Do not use it. This installer (known to us as “sbbsinst”) may be revamped and re-released in the near future.

In the mean-time, follow the steps given in this document to download, build, install, and run Synchronet for Unix.

non-x86

Question:
Are non-x86/x64 (Alpha, SPARC, 68k, PowerPC, etc) processors supported?

Answer:
Not currently. Synchronet assumes a little-endian processor. It *may* work on other little-endian processors (e.g. Alpha), but hasn't been tested.

Download

Question:
Where do I get Synchronet for Unix?

Answer:
See the step-by-step instructions here.

Binaries

Question:
Will there be binary releases?

Answer:
Maybe. Linux is a particularly difficult “platform” to deliver consistently compatible binaries for and unfortunately, it is the most popular Unix-like operating system we currently support.

Mix with Windows

Question:
Can I mix Synchronet for Unix and Synchronet for Win32 or DOS or OS/2 nodes on the same BBS?

Answer:
Yes. As long as all the nodes can access the same live data files (via LAN) you can have as many instances of Synchronet on as many different platforms as you wish.

DOS

Question:
Does Synchronet for Unix support external DOS programs/doors?

Answer:
Currently, only the FreeBSD build has doscmd support “built-in” (and this “support” requires emulators/doscmd to be installed):

For FreeBSD, the path that is entered in the Start-up Directory is mapped as C:\ the current node directory is mapped as D:\ and the Synchronet root directory is mapped as E:\. When a DOS door is executed, a .doscmdrc is created in the node directory. Copying this file and using it to run doscmd in X11 mode while running the setup programs is the simplest way to configure the doors.

Other platforms can use DOSEMU or whatever is available for running DOS programs.

For running external DOS programs on Linux using DOSEMU, see dosemu for details.

Doors

Question:
What external programs/doors does Synchronet for Unix support?

Answer:
External programs can either use standard I/O (e.g. bash, pico, Lord/X, PimpWars) or socket I/O (e.g. Synchronet XSDK doors).

X Windows

Question:
Does Synchronet for Unix require X-Windows?

Answer:
No, Synchronet for Unix is currently a console-based application. However, it does have an X-based character mode console now. The X11 headers (Part of the X11-devel package or something similar) are required for this to work.

GUI

Question:
Are there any plans to make an X-Windows front-end for Synchronet?

Answer:
See gtkmonitor.

Compiler

Question:
Can I use a different compiler (than GCC) to build Synchronet for *nix?

Answer:
Yes, currently Synchronet has successfully been built with GCC, ICC (The Intel C Compiler), and Clang/LLVM. To specify an alternate compiler, add CC=icc CXX=icpc to the gmake command lines where icc is the C compiler name and icpc is the C++ compiler name. If you get errors during the build (not warnings) please submit a bug report. If you are using a commercial compiler other than ICC, we will probably be unable to help you without a copy of the compiler.

SELinux

Question:
I'm using SELinux and nothing works.

Answer:
Yes, you'll need to use chcon on each of the Synchronet shared objects (.so files):

chcon -t texrel_shlib_t /sbbs/exec/*.so

Disk Space

Question:
How much disk space do I need?

Answer:
A fresh install (as of Feb-2009) requires about 70MBytes. Much of the space consumed is in the form of intermediate build files which may be removed after the build is complete if space is a concern.

Terminal Type

Question:
What does the error Unknown terminal: pc3 displayed by some native external programs (e.g. pico) indicate?

Answer:
The error indicates that the value of your TERM environment variable (in the example case, pc3) is not a valid terminal type/capabilities name for your system.

The default value of the ExternalTermANSI key in your sbbs.ini file is pc3, and Synchronet uses the value of this key to set the TERM environment variable for child processes (external programs). If your *nix installation has a terminal type/capability with this name, then this terminal type might work for you (and your users) but there is a better option: to use the Synchronet ansi-bbs terminal capabilities set (created by Deuce). The configuration/installation instructions for the Synchronet ansi-bbs terminal capabilities set are covered in termcap.

tempnam warning

Question:
Why do I get the GCC compilation warning:

the use of `tempnam' is dangerous, better use `mkstemp'

?

Answer:
This is not an error but a harmless warning. You can safely ignore it.

To elaborate, SBBSecho uses tempnam for a specific purpose, which mkstemp does not do. Additionally mkstemp is not available in all the C libraries for all the platforms for which Synchronet is built. The dangers of tempnam do not apply to SBBSecho's use of the function.

See Also


In Other Languages
Translations of this page:
QR Code
QR Code UNIX (generated for current page)