From 14d3a9cabd0d2d6535b8794462025d5f360f7395 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=A0tefan=20Baebler?=
Date: Sat, 16 Dec 2023 07:20:43 +0100
Subject: [PATCH 1/5] Goreleaser: docker images with Ko
---
.goreleaser.yaml | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/.goreleaser.yaml b/.goreleaser.yaml
index 390f0185..2ffa8fa1 100644
--- a/.goreleaser.yaml
+++ b/.goreleaser.yaml
@@ -58,6 +58,17 @@ archives:
- goos: windows
format: zip
+kos: # See https://goreleaser.com/customization/ko/
+ - repository: ghcr.io/stefanb/rye
+ tags:
+ - '{{.Version}}'
+ - latest
+ bare: true
+ preserve_import_paths: false
+ platforms:
+ - linux/amd64
+ - linux/arm64
+
changelog:
sort: asc
filters:
From 83f0a9a4670ab145826eb18b22e2dfcb901827a9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=A0tefan=20Baebler?=
Date: Sat, 16 Dec 2023 07:30:13 +0100
Subject: [PATCH 2/5] Allow writing packages
---
.github/workflows/release.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index a5ac1706..6bf700a5 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -8,7 +8,7 @@ on:
permissions:
contents: write
- # packages: write
+ packages: write
# issues: write
jobs:
From 4ac65e0409ee1d401a2a3f582cb2728c33ca5b2c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=A0tefan=20Baebler?=
Date: Sat, 16 Dec 2023 08:12:11 +0100
Subject: [PATCH 3/5] Don't hardcode repository, use current default
---
.goreleaser.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.goreleaser.yaml b/.goreleaser.yaml
index 2ffa8fa1..a61613a7 100644
--- a/.goreleaser.yaml
+++ b/.goreleaser.yaml
@@ -59,7 +59,7 @@ archives:
format: zip
kos: # See https://goreleaser.com/customization/ko/
- - repository: ghcr.io/stefanb/rye
+ - # repository: ghcr.io/refaktor/rye
tags:
- '{{.Version}}'
- latest
From 2d41b6be7847e6a655292e28cbc0fc7da31a5211 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=A0tefan=20Baebler?=
Date: Sat, 16 Dec 2023 08:17:48 +0100
Subject: [PATCH 4/5] Docker release image documentation, updated TOC
Partially reverts 9f5817d308043b728c2d28aebb7401cb9c0535c6
---
README.md | 71 +++++++++++++++++++++++++++++++++++--------------------
1 file changed, 46 insertions(+), 25 deletions(-)
diff --git a/README.md b/README.md
index 77047744..362bb33a 100644
--- a/README.md
+++ b/README.md
@@ -3,25 +3,32 @@
[![Build and Test](https://github.com/refaktor/rye/actions/workflows/build.yml/badge.svg)](https://github.com/refaktor/rye/actions/workflows/build.yml)
[![golangci-lint](https://github.com/refaktor/rye/actions/workflows/golangci-lint.yml/badge.svg)](https://github.com/refaktor/rye/actions/workflows/golangci-lint.yml)
- * [What is Rye](#what-is-rye)
- * [Status: Alpha](#status-alpha)
- * [Overview](#overview)
- * [Some specifics](#some-specifics)
- * [Introductions](#introductions)
- * [Examples](#examples)
- * [Rye vs. Python](#rye-vs-python)
- * [Follow development](#follow-development)
- * [Rye blog](#rye-blog)
- * [Github](#github)
- * [Getting Rye](#getting-rye)
- * [Binaries](#binaries)
- * [Docker images](#docker-images)
- * [Forking Rye on Github](#forking-rye-on-github)
- * [Building Rye](#building-rye)
- * [Build Rye with specific modules](#build-rye-with-specific-modules)
- * [Build WASM version of Rye](#build-wasm-version-of-rye)
- * [Related links](#related-links)
- * [Questions, contact](#related-links)
+- [Rye language 🌾](#rye-language-)
+ - [What is Rye](#what-is-rye)
+ - [Status: Alpha](#status-alpha)
+ - [Overview](#overview)
+ - [Some specifics](#some-specifics)
+ - [Introductions](#introductions)
+ - [Examples](#examples)
+ - [Rye vs. Python](#rye-vs-python)
+ - [Libraries](#libraries)
+ - [Base - official integrations](#base---official-integrations)
+ - [Contrib - will be community / third party integrations](#contrib---will-be-community--third-party-integrations)
+ - [Follow development](#follow-development)
+ - [Rye blog](#rye-blog)
+ - [Ryelang reddit](#ryelang-reddit)
+ - [Github](#github)
+ - [Getting Rye](#getting-rye)
+ - [Binaries](#binaries)
+ - [Docker images](#docker-images)
+ - [Binary Docker image](#binary-docker-image)
+ - [Dev Docker image](#dev-docker-image)
+ - [Forking Rye on Github](#forking-rye-on-github)
+ - [Building Rye](#building-rye)
+ - [Build Rye with specific modules](#build-rye-with-specific-modules)
+ - [Build WASM version of Rye](#build-wasm-version-of-rye)
+ - [Related links](#related-links)
+ - [Questions, contact](#questions-contact)
*visit **[ryelang.org](https://ryelang.org/)**, **[our blog](https://ryelang.org/blog/)** or join our **[reddit group](https://reddit.com/r/ryelang/)** for latest examples and development updates*
@@ -267,14 +274,28 @@ If code speaks to you, our Github page is the central location for all things Ry
## Getting Rye
-Rye is developed on Linux, but has also been compiled on macOS and Docker. If you need aditional architecture or OS, post an Issue.
+Rye is developed on Linux, but has also been compiled on macOS and Docker. If you need additional architecture or OS, post an Issue.
### Binaries
-You can find precompiled Binaries for **Linux** and **macOS** under [Releases](https://github.com/refaktor/rye/releases).
+You can find precompiled Binaries for **Linux** and **macOS** under [Releases](https://github.com/refaktor/rye/releases).
+
+Docker images are published under [Packages](https://github.com/refaktor/rye/pkgs/container/rye).
### Docker images
+#### Binary Docker image
+
+This image includes Linux, Rye binary ready for use and Emacs-nox editor.
+
+Docker image: **[ghcr.io/refaktor/rye](https://github.com/refaktor/rye/pkgs/container/rye)**
+
+Run it via:
+
+```bash
+docker run -ti ghcr.io/refaktor/rye
+```
+
#### Dev Docker image
The repository comes with a local [Docker image](./.docker/Dockerfile) that builds rye and allows you to do so.
@@ -330,20 +351,20 @@ Install build-esential if you don't already have it, for packages that require c
sudo apt install build-essential
-# Build Rye with specific modules
+#### Build Rye with specific modules
Rye has many bindings, that you can determine at build time, so (currently) you get a specific Rye binary for your specific project. This is an example of a build with many bindings.
I've been working on a way to make this more elegant and systematic, but the manual version is:
go build -tags "b_tiny,b_sqlite,b_http,b_sql,b_postgres,b_openai,b_bson,b_crypto,b_smtpd,b_mail,b_postmark,b_bcrypt,b_telegram"
-# Build WASM version of Rye
+#### Build WASM version of Rye
Rye can also work inside your browser or any other WASM container. I will add examples, html pages and info about it, but to build it:
GOOS=js GOARCH=wasm go build -tags "b_tiny,b_norepl" -o wasm/rye.wasm main_wasm.go
-# Related links
+## Related links
[**Rebol**](http://www.rebol.com) - Rebol's author Carl Sassenrath invented or combined together 90% of concepts that Rye builds upon.
@@ -357,7 +378,7 @@ Rye can also work inside your browser or any other WASM container. I will add ex
[Ren-c](https://github.com/metaeducation/ren-c) - Rebol 3 fork maintained by HostileFork, more liberal with changes to the language.
- # Questions, contact
+ ## Questions, contact
You can post an **[Issue](https://github.com/refaktor/rye/issues)** visit github **[Discussions](https://github.com/refaktor/rye/discussions)** or contact me through gmail or twitter.
From 2df0cd8f39ec6153bc0be17195631d35173b270c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C5=A0tefan=20Baebler?=
Date: Sat, 16 Dec 2023 08:22:45 +0100
Subject: [PATCH 5/5] Set repository
fix error=ko: missing repository: please set either the repository field or a $KO_DOCKER_REPO environment variable
---
.goreleaser.yaml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.goreleaser.yaml b/.goreleaser.yaml
index a61613a7..feb6e343 100644
--- a/.goreleaser.yaml
+++ b/.goreleaser.yaml
@@ -59,7 +59,7 @@ archives:
format: zip
kos: # See https://goreleaser.com/customization/ko/
- - # repository: ghcr.io/refaktor/rye
+ - repository: ghcr.io/refaktor/rye
tags:
- '{{.Version}}'
- latest