thalassa/README

190 lines
11 KiB
Plaintext
Raw Permalink Normal View History

2026-03-19 01:23:52 +00:00
T h a l a s s a C M S
Copyright (c) Andrey Vikt. Stolyarov, 2023-2025
The README file
=========================================================================
= The official web site for Thalassa CMS is located at =
= =
= http://thalassa.croco.net =
= =
= If you see a site devoted to Thalassa CMS, pretending to be =
= official, that is, made by the original author (Andrey Stolyarov), =
= at any other location, specially at social media platforms and/or =
= ``free'' repository hostings such as GitHub, GitLab, SourceForge =
= and the like, please be warned these are impersonations. =
= =
= Andrey Stolyarov does not maintain any accounts with such sites. =
=========================================================================
To build Thalassa, you will need gcc/g++ (of any version you can find
nowadays) and GNU make. Just type ``make'' right here (in the same
directory you've found this file) and wait a bit (well, not too long; on
reasonably up-to-date computers it usually builds in 5..15 seconds). Both
binaries, named ``thalassa'' and ``thalcgi.cgi'', will be found in the
``cms/'' subdirectory.
If you're looking for the ytid.cgi script, it is one of the examples, so
its source is found in the ``examples/ytid/'' subdirectory. Just type
``make'' there, and be sure to read the README file. Alternatively, you
cat type ``make all'' right here instead of just ``make'', it will build
the ytid.cgi program along with Thalassa itself.
The official documentation for Thalassa is available online at
http://thalassa.croco.net/doc/ , but you can use its local copy in the
``doc/'' subdirectory; just point your browser to the file
``doc/index.html''. Please note that sources of these (generated) HTML
files are available under ``examples/thalassa'', just to provide an example
of a fully static (CGI-less) site generated by Thalassa.
For a quick start, a prepared site template may be used. As of now, two
templates are available, named Smoky and Agenda. They are found in the
examples/ subdirectory; the two templates have a significant common part,
stored in the examples/Common/ subdirectory, and their own specific files
reside in examples/Smoky and examples/Agenda, respectively. Templates are
available in different language/encoding configurations (as of present,
these include English/us-ascii, Russian/koi8-r and Russian/utf-8). Both
templates need to be prepared for actual use; the preparation includes
copying files from both common and specific parts, even concatenating some
files, and the language/encoding configuration is choosen by copying the
respective version of files containing user-visible texts. The prepared
copy is composed in a directory named like _agenda_en, _smoky_ru_utf etc.
See the examples/README file for details; prepared copies have their own
README files, explaining how to use them.
The official Thalassa CMS site is made with the Smoky template, using one
of its color schemes, named ``cloudy''. See
http://thalassa.croco.net/template_gallery/
for some screenshots of both templates in different color schemes.
Thalassa CMS comes under the terms and condition of the so-called CROCO'S
INDIVIDUALISTIC FREE SOFTWARE LICENSE. Please consult the file LICENSE for
its official text. In a nutshell: this software is ``free as in freedom''
for you as long as you act as an individual (human being, a real existing
person), NOT as any organization's employee or representative, but on your
own name and on your own behalf. No matter whether you do any commerce or
not; all that ``profit vs. non-profit'' crap is not what matters here, the
only thing that matters is whether you are a human being or not. All
physically existing human beings, provided that they act on their own names
in their own interests, are allowed to get this software, learn and modify
its sources, run it for any purposes, redistribute it in both original or
modified form; certain conditions apply here (including the obligation to
distribute the software only under exactly the same license and to publish
modified sources openly on Internet before the modified version is given to
any third party in any form), but generally you, as individial, are granted
all permissions which free software fans prefer to call ``software
freedoms'' (it is doubtful if these are really ``freedoms'', but, well, you
do have them anyway).
In contrast, for various organizatins of any kind, companies, corporations,
legal entities, be they profit or non-profit, governmental or private,
formal or informal, as well as for any teams, groups, workgroups,
consortiums, commitees, political parties, churches, foundations,
movements, and, briefly speaking, for any subject you can name which is not
an individual physically existing human being, this software is only ``free
as in free beer'', meaning that the source code may only be used (by all
these ``end-users'') in its original unchanged form to compile the binaries
(and not for any other purpose), and the binaries can only be installed by
end-users on their own computers, but the software can NOT be modified in
any way, no derived works can be made out of it, and it can NOT be
distributed nor anyhow transferred to any third parties, neither in
original nor in modified form, and specially not as a part of any larger
whole. The same applies to any individual who (right here and now) is
acting on behalf of any non-individual entity, including any organizations'
or groups' employees and representatives acting as such. Certainly these
individuals can execute the full power of permissions granted by the
license to individuals, but only when they act on their own behalf, e.g.,
being out of duty.
It is important that an individual who performs some work for an
organization or other entity, but is not employed by that
organization/entity, such as a freelancer or any other self-employed
person, as well as a volunteer, is not considered to be ``acting on
behalf'' of the entity, unless the nature of the work being done implies to
act on the entity's behalf (as it is for attorneys, various agents and the
like). So, an independent individual programmer may modify this software
as requested by an end-user, both free and for a fee, and end-users may
contract independent individuals for this kind of work, provided that these
individuals don't become the end-user's employees, AND that all other
conditions of the license are met, such as that the modifications are
openly published on Internet before the end-user receives them, the
copyright on any parts of the software remains with the author(s) (which
means physical persons; assigning copyright on parts of a Work to a
non-individual entity terminates the license for all other parts of the
Work), the modified versions of the software come under the same license,
etc.
== Individuals rock, corporations suck. ==
Some real-world examples follow.
If you're a student, or an unemployed person, or a pensioner, which means
you don't work for anyone, you are always eligible as a ``full licensee''.
If you are a self-employed person, you can enjoy the full power of the
permissions granted by the license, even when you serve your customers'
needs, but you must always keep in mind that, if your customer is not an
individual, such a customer can only be an end-user of the software, and
the copyrights for the software, be it in the whole or in parts, must never
be transferred or otherwise assigned to any entity other than an
individual.
If you are a company's or an organization's employee, you can still enjoy
the full power of the permissions the license grants you, but only when you
are out of duty. As a simple rule, you must never be requested by your
employer to do things that the license only permits for individuals, you
must not get paid by your employer for doing such things, and you must not
do such things in your official work hours and/or in your eployer's office.
If your employer eventually does request you to do something like that,
please inform them it is a copyright violation and is criminal in most
countries (well... there's no copyright law in effect in Afganistan, but it
is unlikely you are there).
If you own a company, you can pretend you're an individual and as such use
``full licensee's'' rights, even for your business, but you can't ask your
employees to help you. If you want your employees to handle the software,
you must limit what is to be done to the things permitted for a
``end-user'' (build, install and use, but don't learn, don't modify and
don't distribute). However, if there's a person you or your company pays
money to, who is not an employee of the company but a contractor, such as
independent/freelance programmer, then that person is still an individual,
so you can pay him/her for, e.g., modifying the software to fit your needs
(provided that all the conditions imposed by the license are obeyed; e.g.,
your company can't have the copyright on the software or its parts, even on
the changes you paid for). This only applies to independent individuals:
you can't pay another company for modifying the software for you because
that company is not an individual, and you can't pay your own company's
employees for modifying the software because they then act on your
company's behalf, not on their own; you can't even ask them to execute
their ``full licensees' '' rights in their spare time (well, this would
violate not only the license, but the labor legislation, too).
If you are a company, you can use the software, UNMODIFIED, for your
internal purposes; you can provide some services using the software, e.g.,
you can use the software to maintain your web site. You can even provide
other services to your customers using the software, but only as long as
the software remains installed and run on your own computers. As a general
rule, what you CAN NOT is (a) to modify the software and (b) to distribute
the software, which means providing copies of it to any third parties.
If you are a company which provides services to customers, you can NOT
distribute the software to your customers (as well as to anyone), but you
can advice your customers to download the software on their own from a site
where it is originally available (e.g., the site YOU got the software
from), and you can even install the software on your customers' computers
using their own copies of the software (but NOT using YOUR copies).
Furthermore, if you are, e.g., a hosting company providing VPS/VDS servers
for rent, you can install the software on these servers, as long as the
servers remain actually yours (despite given for rent to your customers).
You can't, however, preinstall the software on computers you're going to
sell, and in case you sell a computer where the software is installed, you
must first delete the software from there.