From 4f10b98ab08f72bffe0d0342cb49ee0d8b05aa0a Mon Sep 17 00:00:00 2001 From: Mike Nolan Date: Sun, 14 Jun 2026 21:25:53 -0500 Subject: [PATCH] Make it more complete --- .gitignore | 1 + Dockerfile | 1 + docs/cli.md | 47 +++++++++++++++++++++++++++++ docs/cpkg.md | 72 ++++++++++++++++++++++++++++++++++++++++++++ docs/downloads.md | 49 ++++++++++++++++++++++++++++++ docs/images/logo.svg | 4 +++ docs/index.md | 20 ++++-------- docs/site.md | 3 -- mkdocs.yml | 12 ++++++++ 9 files changed, 192 insertions(+), 17 deletions(-) create mode 100644 .gitignore create mode 100644 docs/cli.md create mode 100644 docs/cpkg.md create mode 100644 docs/downloads.md create mode 100644 docs/images/logo.svg delete mode 100644 docs/site.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d97e100 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +site \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index d3fc18a..3e27d36 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,6 +3,7 @@ FROM squidfunk/mkdocs-material:9 AS www-build COPY ./ /src WORKDIR /src +RUN pip install mkdocs-nav-weight RUN mkdocs build FROM git.tesses.org/tesses50/basic-webserver:latest diff --git a/docs/cli.md b/docs/cli.md new file mode 100644 index 0000000..fdd6a77 --- /dev/null +++ b/docs/cli.md @@ -0,0 +1,47 @@ +--- +weight: 3 +--- +# The CLI +I refer to it as the shell + +## Creating new project +To determine all new templates use +```bash +crosslang new --list +``` + +And then create a project (in this example, its a console application) +```bash +mkdir mynewproject +cd mynewproject +crosslang new console +``` + +## Running code from source +```bash +crosslang run +``` + +## Pushing code to CPKG +You need [CPKG](../cpkg/) as I have registration disabled as of right now +```bash +crosslang login cpkg https://example.com/ #replace with your server +crosslang upload-package +``` + +## Installing stuff from CPKG +```bash +crosslang install-tool Tesses.YouTubeDownloader.MusicSync # not available yet +crosslang install-webapp Tesses.YouTubeDownloader.Server # or whatever +crosslang install-console MyConsoleApp +crosslang install-template Tesses.YouTubeDownloader.PluginTemplate # for making plugins for my Youtube Downloader +crosslang add-dependency Tesses.CrossLang.Std #in project folder +``` + +## Updating the CLI +If this is the first time you are using CrossLang it will ask you if you want to download the CLI (type y) and press enter, or define environment variable CROSSLANG_CONTAINER=y + +If you have an out of date cli use +```bash +crosslang update-shell +``` \ No newline at end of file diff --git a/docs/cpkg.md b/docs/cpkg.md new file mode 100644 index 0000000..2c86098 --- /dev/null +++ b/docs/cpkg.md @@ -0,0 +1,72 @@ +--- +weight: 4 +--- + +# Setting up CPKG + +## With Docker + + +docker-compose.yml: +```yaml +services: + pkg: + image: git.tesses.org/tesses50/cpkg:latest + ports: + - "4206:4206" + volumes: + - data:/data + +volumes: + data: +``` + +```bash +docker compose up -d +``` + + +## Without Docker +- [CrossLang](downloads) +- [CPKG, use CPKG.crvm in releases](https://git.tesses.org/tesses50/crosslangextras/releases) + +```bash +crosslang vm CPKG.crvm /path/to/where/cpkg/will/lie +``` + +## Setup for the first time + +Launch your browser and go to [CPKG](http://127.0.0.1:4206/) (this link works if running locally on your machine) + +- Click [Login](http://127.0.0.1:4206/login) +- Click Sign Up +- Fill out the form with your info +- Click Sign Up +- Click [Login](http://127.0.0.1:4206/login) again and login this time + +## Uploading packages +There are a few ways of doing this + +- [Upload](http://127.0.0.1:4206/upload) link on CPKG +- Signing in via [CLI](./cli/#pushing-code-to-cpkg) +- [API Key](#uploading-packages-via-api-key) + +## Uploading packages via API key +This is useful in CI/CD pipelines + +- Click your Display Name +- Click `Sessions` +- Click `Create API Key` +- Type in a name for the key +- Click `Create` +- Copy the API key + + +```bash +crosslang upload-package --host=https://YourCPKGHost/ --token=YourAPIKey # you can optionally place a crvm file afterwards if you aren't in the folder of project +``` + +## Adding custom CPKG for CrossLang +```bash +crosslang cpkg add https://YourCPKGHost/ +``` \ No newline at end of file diff --git a/docs/downloads.md b/docs/downloads.md new file mode 100644 index 0000000..1546c5e --- /dev/null +++ b/docs/downloads.md @@ -0,0 +1,49 @@ +--- +weight: 2 +--- + +# Downloads + +[View On Gitea](https://git.tesses.org/tesses50/crosslang/releases) + +## Arch Linux + +You need to add our repository key +```bash +wget -O repository.key https://git.tesses.org/api/packages/tesses50/arch/repository.key +sudo pacman-key --add repository.key +``` + +Add this to your /etc/pacman.conf +``` +[tesses50.git.tesses.org] +SigLevel = Optional TrustAll +Server = https://git.tesses.org/api/packages/tesses50/arch/core/$arch +``` + +or run this command which will do the same thing +```bash +printf "[tesses50.git.tesses.org]\nSigLevel = Optional TrustAll\nServer = https://git.tesses.org/api/packages/tesses50/arch/core/\$arch\n" | sudo tee -a /etc/pacman.conf +``` + +Install crosslang +```bash +sudo pacman -Sy crosslang +``` + +## Brew (MacOS/Linux) + +Install [brew](https://brew.sh/) if you have not already + +```bash +brew tap tesses50/tesses-tap https://git.tesses.org/tesses50/tesses-tap +``` + +```bash +brew install tesses50/tesses-tap/crosslang +``` + + +## Windows + +TODO: IMPLEMENT \ No newline at end of file diff --git a/docs/images/logo.svg b/docs/images/logo.svg new file mode 100644 index 0000000..ddcd7f3 --- /dev/null +++ b/docs/images/logo.svg @@ -0,0 +1,4 @@ + \ No newline at end of file diff --git a/docs/index.md b/docs/index.md index 000ea34..aec162e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,17 +1,9 @@ -# Welcome to MkDocs +--- +weight: 1 +--- -For full documentation visit [mkdocs.org](https://www.mkdocs.org). +# Home +My programming language -## Commands -* `mkdocs new [dir-name]` - Create a new project. -* `mkdocs serve` - Start the live-reloading docs server. -* `mkdocs build` - Build the documentation site. -* `mkdocs -h` - Print help message and exit. - -## Project layout - - mkdocs.yml # The configuration file. - docs/ - index.md # The documentation homepage. - ... # Other markdown pages, images and other files. +> John 3:16: For God so loved the world, that he gave his only begotten Son, that whosoever believeth in him should not perish, but have everlasting life. diff --git a/docs/site.md b/docs/site.md deleted file mode 100644 index 8908372..0000000 --- a/docs/site.md +++ /dev/null @@ -1,3 +0,0 @@ -# My Second Page - -Cool \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index b7faa98..ed63313 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1 +1,13 @@ site_name: CrossLang +site_url: https://crosslang.tesseslanguage.com +repo_url: https://git.tesses.org/tesses50/crosslang +repo_name: tesses50/crosslang +theme: + name: material + logo: images/logo.svg + favicon: images/logo.svg + icon: + repo: fontawesome/brands/git-alt +plugins: + - search + - mkdocs-nav-weight \ No newline at end of file