This is the main version control repository for the internet domain
name scheme.org.
DNS zones for the following domains are also managed here.
schemers.org moved here in January 2023.
schemeworkshop.org moved here in December 2023.
Scheme.org is divided into projects. Each project corresponds to a
subdomain under scheme.org. The project ID example corresponds to
the subdomain example.scheme.org. That project also controls all
nested subdomains *.example.scheme.org.
The file projects.pose holds the ground truth for all project
definitions, including DNS records. Edits should be made to this file.
Each project is responsible for its own servers. This top-level repo does not deal with any project-specific configuration except for DNS records.
The www project corresponds to www.scheme.org, the front page of
scheme.org. The website at this subdomain is generated from
projects.pose as well as the HTML fragments (doc/*.html) in this
repo.
The lists project is responsible for @scheme.org mailing lists
(TODO).
The redirect project tracks subdomains that are just HTTP redirects.
The staging project gives staging subdomains to projects that want
them. For example, www.staging.scheme.org is a staging version of
www.scheme.org. Each project must bring its own staging server,
which may be the same as its main server.
Scripts are written for R7RS-small. The WWW scripts use a few Chicken
Scheme eggs. The scripts/*.sh wrappers use Chicken 5 with the r7rs
egg.
scripts/dns.sh-- generatedns/scheme.org.zonebased onprojects.pose.scripts/dnsput.sh scheme.org-- uploaddns/scheme.org.zoneto Gandi.scripts/dnsput.sh schemers.org-- uploaddns/schemers.org.zoneto Gandi.scripts/dnsget.sh scheme.org-- downloaddns/scheme.org.zonefrom Gandi.scripts/dnsget.sh schemers.org-- downloaddns/schemers.org.zonefrom Gandi.
scripts/www.sh-- generate HTML files in thewwwsubdirectory based onprojects.poseanddoc/*.html.scripts/wwwstaging.sh-- uploadwwwsubdirectory to staging server.scripts/wwwproduction.sh-- uploadwwwsubdirectory to production server.