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.