|Sérgio Augusto Vianna 5762a13ffb||6 days ago|
|aux||5 months ago|
|doc||4 weeks ago|
|src/be||6 days ago|
|.gitignore||10 months ago|
|Readme.md||1 month ago|
|license.txt||1 year ago|
LynxChan is a chan engine designed with the following goals in mind:
See other branches named like
1.1.x for stable versions. They will receive only critical bug fixes and will be maintained for at least one year after release. Remember to use a compatible version of your front-end with these stable versions. Newer versions might not have required elements on the templates for these versions.
src/fedirectory or have it’s absolute path set on the general.json file. Read the readme.md on src/be for more information about how to configure the path for the front-end.
If you need help installing these, consult doc/Dependencies.txt.
The dependencies versions are not exactly mandatory and only reflect the version that I am sure that will work with the current version of the engine at the moment.
auxand run the script
setup.shthat will prompt for the install of a front-end, default settings and libraries. Browsing to the
auxdirectory is required because the scripts use relative paths to this directory. Make sure you used
git cloneto obtain the engine.
root-setup.shthat will prompt for the install of a command using a soft-link to
src/be/boot.js. This script must be run as root. It will also prompt for the install of a init script. The name of both the command and the service will be
src/be/settingsdirectory. Instructions can be found at
src/be/readme.md. There is also a directory called settings.example with a set of functional settings.
src/fedirectory or clone to anywhere and set it’s correct location on
You can either run the
lynxchan command or start the
lynxchan service if you ran the
aux/root-setup.sh script. You could just run the
src/be/boot.js file. Run
sudo setcap 'cap_net_bind_service=+ep' `which node` to be able to run it on port 80 without root access.
If you are getting a code 203, it might be selinux not liking where you put lynxchan. Just run
chcon -t bin_t ABSOLUTE_PATH_TO_SRC_BE_BOOT.JS to give FHS the finger and it will stop being a busybody.
These services have a history of not caching correctly when the
expires header is used. So turn on the global setting that makes LynxChan use the
cache-control header instead. Also, keep in mind the xff header has to be used in conjunction to the trusted proxies feature for the user actual ip to be used instead of the reverse proxy one.
As in many things, I am very anal about documentation.
You can find all the information you need at the documents in
The front end are static files and templates. They are handled as a separate project and you can use them on any location in the system. But the path to its files will default to
Note that the front-end directory is in the ignore. I am designing this project to have a modular front-end, so theres no point in having a default front-end in the repository.
The back-end project is a Nodeclipse project with lint and formatting defined. IMO eclipse is a shit, but it makes it very practical to automatically format and clean everything. Coding standard: Felix’s Node style guide. Additionally, all files that reach 1k LOC must be split into multiple files inside a module representing the original file. More information can be found at src/be/Readme.md.
There a couple of utility scripts there besides the install one. Rotating logs for the upstart service, removing installs and such.
MIT. Do whatever you want, I don’t even know what is written there. I just know you can’t sue me.
Infra-structure > features > cosmetic features > polish.
I would rather not having other people writing the initial code for the engine, but if you wish to suggest and discuss features or contribute to a default front-end to replace the placeholder ones I am using, you can find me under the name StephenLynx on #lynxchan at Rizon or e-mail me at firstname.lastname@example.org.
Lleaff: early front-end contributions and feedback. Endchan’s staff: early adopters and feedback. Megamilk: feedback and testing from 1.8 to 2.1. lt_barclay: mobile support for PenumbraLynx.