💾 Archived View for scrollprotocol.us.to › software › scroll-server captured on 2024-08-18 at 17:05:14. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2024-05-26)
-=-=-=-=-=-=-
Publish Date: 2024-05-09T14:22:32Z
Modification Date: 2024-05-19T01:39:53Z
Version: v0.1
Licensed BSD 3-Clause
This is a static-file server for the Scroll Protocol. It is intended to be a simplified version of the server code from my SIS project.
You can get a scroll terminal client, or a graphical browser, at the below links:
A couple of features are still being worked on:
There are precompiled binaries here:
Or you can install via golang:
go install gitlab.com/clseibold/scroll-server@latest
Or build locally:
go build .
scroll-server start [server_directory_path]
On first run of the start command, you will be asked for configuration options, and you will be asked to setup the default virtual host. It will also generate the certificate for you if necessary.
scroll-server gen [server_directory_path]
It will interactively ask for options. The cert file is saved in the server directory using the provided hostname as its name, suffixed with ".pem".
scroll-server start [server_directory_path]
The directory being served is always `[server_directory_path]/[hostname]`. In other words, it is a directory named with the hostname under the root server directory.
All files can have abstracts by placing a scrolltext file next to it with the same name and extension, suffixed with ".abstract". For example, an abstract to a "song.mp3" file should be named "song.mp3.abstract" and contain scrolltext with a level-1 heading for the file's title.
The abstract for the index.scroll file in a directory may be named either `index.scroll.abstract` or just `.abstract`. The latter is preferred when both exist.
The Publish and Modification dates comes from the filesystem's info for that file. The Author metadata may be specified by the abstract file before the level-1 heading by using the format:
Author: Author Name Here # Level-1 Heading Title Rest of abstract file.
You can also override the publish date, modification date, UDC classification, and the BCP47 language string, by placing them in the abstract file similarly to the author, like so:
Author: Author Name Publish-Date: 2024-04-05T04:00:00Z Modification-Date: 2024-04-05T04:00:00Z Language: en-US udc-class: 0 # Level-1 Heading Title Rest of abstract file.
Files that don't declare a language will use the default language of the server, which is specified in the config file and configured when you first start the server.
You can also add these fields to the beginning of scrolltext files in case you don't want to create a separate abstract for that file.
Audio files will automatically read the tag data and use that information to constrct the metadata and abstract, if an abstract does not already exist on the filesystem for the file.
Instead of putting the UDC class integer, these strings are provided to give memorable names to different content types in each UDC class:
Currently the server doesn't support serving the same file (at the same link address) in different languages, but this will be coming in the near future.
The configuration will allow you to setup virtual hosts with certificates for each. They are each served in their own directories under the server root directory.
The server will use SNI to handle knowing which hostname to serve up.