💾 Archived View for soviet.circumlunar.space › quarters › collection › intro › Collection_HOWTO.txt captured on 2022-04-29 at 11:48:07.

View Raw

More Information

⬅️ Previous capture (2021-12-03)

-=-=-=-=-=-=-

     The Ancient Collection of Anomalous Brainchildren
     -------------------------------------------------
                  _  _ ____ _ _ _ ___ ____ 
                  |__| |  | | | |  |  |  | 
                  |  | |__| |_|_|  |  |__| 


This document provides useful information for members of the Soviet who
want to contribute to The Ancient Collection of Anomalous Brainchildren,
hosted at The Soviet. 

You must read this document in full before contributing to The
Collection. 

Organisation
============

The Collection is organised in topics or sections. This document belongs
to the section "intro". Each section is a git repository, whose master
is located under /usr/local/soviet/quarters/collection/$section

The organisation of each section is left to the members contributing to
that section. It would be possible, for instance, to have files
organised in folders according to subsections or to other criteria. We
are here to figure this out together.

Security model
==============

All the repositories in The Collection are readable and writeable by all
the users in the system group "sundogs". This means that anybody in that
group can change any file in those repos and commit them. However,
non-fast-forward merges are not allowed, and commit deletion is
disabled. This means that nobody can do a `git push --force` and rewrite
the history.

This also means that all the sundogs at The Soviet are collectively
responsible for the maintenance of The Collection. 

Fair use
========

The Union has no interest in enforcing any code of conduct for
contributions to The Collection, as The Union trusts the good will and
cooperative nature of the members of The Soviet. The main reigning
principle is that any member should contribute to The Collection however
they prefer, keeping in mind some simple concepts:

  0) All the contributors have equal rights. There are no moderators or 
     "subject owners", just a collective of human beings willing to
     contribute to something beautiful.

  1) Any contribution to The Collection must be an original work of the
     member contributing it. The Collection is the mirror of the
     experiences and stories of the members of The Soviet, not a new
     bitsaver.

  2) All the material contributed to The Collection must be in text
     form. This obviosuly includes ascii arts and other kind of textual 
     material not intended to be "read".
 
  3) Any subject is allowed, with the exception of explicitly violent,
     derogatory, racist, sexist, harassing, or in any other way illegal 
     material. 

  4) Textual material explicitly meant to be read can be written in any
     language, natural or artificial, without restrictions or 
     limitations.  Members are welcome to provide a translation of this
     document, or of any other document in The Collection, in any
     language.

  5) This is a cooperative effort. Any member has the right to change 
     material produced by others, if they are positive that they would be
     comfortable with that change if they were in the shoes of that
     other member.

  6) The Soviet is a community of humans. If in doubt, shout. Send an
     email, or reach out on IRC. And remember that on the other side of
     the screen there is another human being with a brain and a heart,
     just like you.


Contributing to a section
=========================

Any member of The Soviet can contribute to any section of The
Collection. Since each section is a git repository, all the
contributions must be in the form of git commits. 

In brief, if you want to contribute to the section "intro", you need to:

  0) go to the subdirectory of your ~/ folder where you want to keep
     your local copy of the repo (e.g., something like 
     ~/quarters/collection, or whatever you prefer)

  1) `git clone /usr/local/soviet/quarters/collection/intro`

  2) `cd intro`

  3) `soviet_init_repo`

  4) edit the files as you like, or add new files

  5) `git add {files you want to commit}`

  6) `git commit` or `git commit -m "{your commit message here}"`

  7) `git push`

And you are done. Now rinse and repeat.

Sandbox
=======

If you are not comfortable yet with the git workflow, there is a
"sandbox" section which is there just for testing. Just clone it and
make changes there, if that makes you less anxious.

About branches
==============

The usage of branches in the main repos is somehow discouraged. Each
user can keep as many branches as they want in their local repo, but
there is probably little use in keeping more than one single branch in
the central repo. The main reason is that The Collection is there to be
public and accessible.

Publishing
==========

The goal is to make all the sections of The Collection publicly
available through the gopher and gemini pages of The Soviet. This is why
we request all the material in the collection to be in text format. As
of how we could do in an automatic way, this is something we still need
to experiment with. Possible solutions, from the simplest to the more
elaborate ones, are reported below. Keep in mind that the aim is to
fetch each repo into the main gopherdir/geminidir of The Soviet:

  0) Let the gopher and gemini server just serve the repository "as it
     is", i.e., creating dir listings automatically;

  1) Create an index.gph and index.gmi for each section, where all the
     published material of the section is referenced. 

  2) Have a more nuanced organisation of gph/gmi files, with
     subsections, more information, etc.

Any of these solutions can be adopted in different sections, according
to the preference or commitment of contributors to each section.

Adding new sections
===================

To request the addition of a new section, just send an email to The
Union at union@soviet.circumlunar.space indicating the section you want
to add and a brief description for it (which will be the description of
the repository). Be mindful that although The Union is just an organism
meant to help with the good functioning of The Soviet, there is still a
human being on the other side of your email client, not a script.