14 Commits

Author SHA1 Message Date
903478f746 Prepare release 0.2.0 (#40)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
ci/woodpecker/tag/renovate Pipeline was successful
ci/woodpecker/tag/test Pipeline was successful
ci/woodpecker/tag/next Pipeline was successful
ci/woodpecker/tag/deploy Pipeline was successful
#### 📖 Summary

- update used tags in docker-compose examples
- update changelog file

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#40
2023-01-04 16:17:42 +01:00
7a1b293188 Update quay.io/linuxserver.io/code-server Docker tag to v4.9.1 (#31)
All checks were successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [quay.io/linuxserver.io/code-server](https://github.com/linuxserver/docker-code-server) | final | minor | `4.8.3` -> `4.9.1` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4yMi4yIiwidXBkYXRlZEluVmVyIjoiMzQuODIuMCJ9-->

Reviewed-on: CodeServer/arkanum#31
Co-authored-by: CI-Bot <noreply@ocram85.com>
Co-committed-by: CI-Bot <noreply@ocram85.com>
2023-01-04 15:59:31 +01:00
88d228ad07 fix typo (#39)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

- fix typo in message for extension install.

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#39
2023-01-04 15:53:12 +01:00
40684f5a3b Update renovate/renovate Docker tag to v34.82 (#37)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [renovate/renovate](https://github.com/renovatebot/renovate) | minor | `34.77-slim` -> `34.82-slim` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43Ny4xIiwidXBkYXRlZEluVmVyIjoiMzQuNzcuMSJ9-->

Reviewed-on: CodeServer/arkanum#37
Co-authored-by: CI-Bot <noreply@ocram85.com>
Co-committed-by: CI-Bot <noreply@ocram85.com>
2023-01-04 11:58:12 +01:00
6931ca6baf Add proxy support (#38)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

- adds sudo `-E` param to support proxy env from caller scope.

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#38
2023-01-04 11:54:38 +01:00
5d7020551c prepare release v0.1.1 (#36)
All checks were successful
ci/woodpecker/tag/renovate Pipeline was successful
ci/woodpecker/tag/test Pipeline was successful
ci/woodpecker/tag/next Pipeline was successful
ci/woodpecker/tag/deploy Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

- updates changelog
- prepare release `v0.1.1`

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#36
2023-01-02 14:20:51 +01:00
ce11f07e47 Update renovate/renovate Docker tag to v34.77 (#35)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [renovate/renovate](https://github.com/renovatebot/renovate) | minor | `34.62-slim` -> `34.77-slim` |

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC42Mi4xIiwidXBkYXRlZEluVmVyIjoiMzQuNjIuMSJ9-->

Reviewed-on: CodeServer/arkanum#35
Co-authored-by: CI-Bot <noreply@ocram85.com>
Co-committed-by: CI-Bot <noreply@ocram85.com>
2023-01-02 13:59:10 +01:00
3b35775797 fix renovate config keys (#34)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

<!-- Provide a summary of your changes. Describe the why and not how. -->

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#34
2023-01-02 13:55:15 +01:00
c53e04272e Update renovate/renovate Docker tag to v34.62 (#33)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [renovate/renovate](https://github.com/renovatebot/renovate) | minor | `34.57-slim` -> `34.62-slim` |

⚠️ Release Notes retrieval for this PR were skipped because no github.com credentials were available.
If you are self-hosted, please see [this instruction](https://github.com/renovatebot/renovate/blob/master/docs/usage/examples/self-hosting.md#githubcom-token-for-release-notes).

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC41Ny4wIiwidXBkYXRlZEluVmVyIjoiMzQuNTcuMCJ9-->

Reviewed-on: CodeServer/arkanum#33
Co-authored-by: CI-Bot <noreply@ocram85.com>
Co-committed-by: CI-Bot <noreply@ocram85.com>
2022-12-17 18:24:08 +01:00
73b9e9e710 Update renovate/renovate Docker tag to v34.57 (#32)
All checks were successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [renovate/renovate](https://github.com/renovatebot/renovate) | minor | `34.22-slim` -> `34.57-slim` |

⚠️ Release Notes retrieval for this PR were skipped because no github.com credentials were available.
If you are self-hosted, please see [this instruction](https://github.com/renovatebot/renovate/blob/master/docs/usage/examples/self-hosting.md#githubcom-token-for-release-notes).

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4yMi4yIiwidXBkYXRlZEluVmVyIjoiMzQuMjIuMiJ9-->

Reviewed-on: CodeServer/arkanum#32
Co-authored-by: CI-Bot <noreply@ocram85.com>
Co-committed-by: CI-Bot <noreply@ocram85.com>
2022-12-17 18:18:55 +01:00
518f9c4946 fix woodpecker fileMatch regex (#30)
All checks were successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

- fix regex / provided by renovate maintainer

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Reviewed-on: CodeServer/arkanum#30
2022-12-15 19:58:42 +01:00
83ee3808be updates changelog (#29)
All checks were successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
ci/woodpecker/tag/renovate Pipeline was successful
ci/woodpecker/tag/test Pipeline was successful
ci/woodpecker/tag/next Pipeline was successful
ci/woodpecker/tag/deploy Pipeline was successful
#### 📖 Summary

- updates changelog

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#29
2022-11-25 11:38:27 +01:00
4faf6d8b3e sync pipeline build args (#28)
All checks were successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

- sync build_args in pipeline steps
- adds gitea release pipeline step

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#28
2022-11-25 11:29:15 +01:00
8239ec48b4 adds Readme content to prepare Github mirror (#26)
All checks were successful
ci/woodpecker/push/renovate Pipeline was successful
ci/woodpecker/push/test Pipeline was successful
ci/woodpecker/push/next Pipeline was successful
ci/woodpecker/push/deploy Pipeline was successful
#### 📖 Summary

- adds section about github
- fix markdown github style
- adds project-words

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan

##### Details / Justification

<!-- Add your test details or justification for missing tests here. -->

#### 📚 Additional Notes

<!-- A place for additional detail notes. -->

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#26
2022-11-25 09:56:03 +01:00
11 changed files with 254 additions and 35 deletions

View File

@ -1,7 +1,24 @@
Akranum
appdata
arkanum
aurocrlf
certresolver
codesetting
dotnet
Fira
FOSS
gitea
loadbalancer
LTS
mydomain
myresolver
ocram
OSS
PGID
PUID
Quickstart
runtimes
srv
tbd
traefik
tuanpham

View File

@ -14,7 +14,8 @@ pipeline:
password:
from_secret: gitea_passwd
build_args:
- VERSION="Tag ${CI_COMMIT_TAG} - Branch ${CI_COMMIT_SOURCE_BRANCH} - PR ${CI_COMMIT_PULL_REQUEST}"
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
- TAG=${CI_COMMIT_TAG}
when:
event: push
branch: master
@ -31,6 +32,18 @@ pipeline:
password:
from_secret: gitea_passwd
build_args:
- VERSION="Tag ${CI_COMMIT_TAG} - Branch ${CI_COMMIT_SOURCE_BRANCH} - PR ${CI_COMMIT_PULL_REQUEST}"
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
- TAG=${CI_COMMIT_TAG}
when:
event: tag
GiteaRelease:
image: plugins/gitea-release
settings:
api_key:
from_secret: RENOVATE_TOKEN
base_url: https://gitea.ocram85.com
title: ${CI_COMMIT_TAG}
note: "> :bulb: **Note:** See [CHANGELOG.md](src/branch/master/CHANGELOG.md) for recent changes."
when:
event: tag

View File

@ -16,7 +16,8 @@ pipeline:
password:
from_secret: gitea_passwd
build_args:
- VERSION="Tag ${CI_COMMIT_TAG} - Branch ${CI_COMMIT_SOURCE_BRANCH} - PR ${CI_COMMIT_PULL_REQUEST}"
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
- TAG=${CI_COMMIT_TAG}
when:
event: pull_request
@ -28,4 +29,4 @@ pipeline:
TOKEN:
from_secret: NEXT_TOKEN
when:
event: pull_request
event: pull_request

View File

@ -1,6 +1,6 @@
pipeline:
DockerBaseImage:
image: renovate/renovate:34.22-slim
image: renovate/renovate:34.82-slim
commands:
- "renovate"
secrets:
@ -10,9 +10,10 @@ pipeline:
RENOVATE_PLATFORM: "gitea"
RENOVATE_ENDPOINT: "https://gitea.ocram85.com"
RENOVATE_REPOSITORIES: "${CI_REPO}"
RENOVATE_LABELS: "pr/renovate"
RENOVATE_LABELS: "renovate"
#RENOVATE_DRY_RUN: "full"
RENOVATE_TOKEN: "${RENOVATE_TOKEN}"
RENOVATE_GITHUB_TOKEN_WARN: "false"
when:
event:
- push

View File

@ -7,3 +7,6 @@ pipeline:
repo: gitea.ocram85.com/codeserver/arkanum
dockerfile: Dockerfile
tags: next
build_args:
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
- TAG=${CI_COMMIT_TAG}

View File

@ -1,3 +1,10 @@
## [v0.1.0](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.1.0) - 2022-11-25
* 📦 BUILD
* sync pipeline build args (#28)
* 📚 DOCS
* adds Readme content to prepare Github mirror (#26)
## [v0.0.1](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.0.1) - 2022-11-22
* 🐛 BUGFIXES
@ -28,3 +35,23 @@
* Add woodpecker manager in renovate-bot (#14)
* fixes logo file path (#8)
* Adds basic container setup with pipeline (#1)
## [v0.1.1](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.1.1) - 2023-01-02
* 📦 BUILD
* fix woodpecker fileMatch regex (#30)
* 🤖 DEPENDENCIES
* Update renovate/renovate Docker tag to v34.77 (#35)
* fix renovate config keys (#34)
* Update renovate/renovate Docker tag to v34.62 (#33)
* Update renovate/renovate Docker tag to v34.57 (#32)
## [v0.2.0](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.2.0) - 2023-01-04
* 🐛 BUGFIXES
* fix typo (#39)
* 🛠️ ENHANCEMENTS
* Add proxy support (#38)
* 🤖 DEPENDENCIES
* Update renovate/renovate Docker tag to v34.82 (#37)
* Update quay.io/linuxserver.io/code-server Docker tag to v4.9.1 (#31)

View File

@ -1,15 +1,17 @@
FROM quay.io/linuxserver.io/code-server:4.8.3
FROM quay.io/linuxserver.io/code-server:4.9.1
#LABEL build_version=""
LABEL maintainer="OCram85"
ARG VERSION
LABEL build_version="$VERSION"
LABEL build_version="${VERSION}"
LABEL org.opencontainers.image.authors="OCram85"
LABEL org.opencontainers.image.vendor="OCram85"
LABEL org.opencontainers.image.title="Arkanum"
LABEL org.opencontainers.image.description="Code-Server container optimized for daily use."
LABEL org.opencontainers.image.licenses="AGPL-3.0"
ARG TAG
LABEL org.opencontainers.image.version="${TAG}"
LABEL org.opencontainers.image.url="https://gitea.ocram85.com/CodeServer/arkanum"
LABEL org.opencontainers.image.source="https://gitea.ocram85.com/CodeServer/arkanum.git"

187
README.md
View File

@ -6,7 +6,7 @@
<p align="center">
<a href="https://gitea.ocram85.com/CodeServer/arkanum/">
<img
src="/CodeServer/arkanum/raw/branch/master/assets/social-logo.png"
src="assets/social-logo.png"
alt="Container"
>
</a>
@ -17,37 +17,155 @@
</h1>
<p align="center">
Code-Server container optimized for daily use.
... is a Code-Server container optimized for daily use.
</p>
<p align="center">
<a href="https://ci.ocram85.com/CodeServer/arkanumg">
<a href="https://ci.ocram85.com/CodeServer/arkanum">
<img src="https://ci.ocram85.com/api/badges/CodeServer/arkanum/status.svg" alt="Master Branch Build Status">
</a>
</p>
## :book: General
## 🤖 Quickstart
The container is based on the latest `linuxserver/code-server` image.
### 1. ⚡ Get the image 📦
You can download the image from the gitea embedded container registry: `gitea.ocram85.com/codeserver/arkanum` with these tags:
- `latest` - Is based on the lasted master branch commit.
- `next` - Is a test build based on the pull request
- `1`, `0.1`, `0.1.0` - tag based version.
> **💡 NOTE: See the [packages page](https://gitea.ocram85.com/CodeServer/-/packages/container/arkanum/latest) for latest version and all other available tags.**
### 2.a Run as Docker Swarm Stack
This example shows how to run arkanum as an additional swarm stack.
Therefore you need
- an already running docker swarm cluster,
- a running traefik instance handling the http and https routes,
- configured to expose services in the a ingress overlay network called `traefik-public`.
> ❗ **Warning:** Make sure to secure the access to arkanum with proper **authentication method** and use
> a trusted + **secure https connection**.
```yaml
version: "3.8"
services:
arkanum:
image: gitea.ocram85.com/codeserver/arkanum:0.2.0
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
- PASSWORD=foo #optional
#- HASHED_PASSWORD= #optional
- SUDO_PASSWORD=foobar #optional
#- SUDO_PASSWORD_HASH= #optional
#- PROXY_DOMAIN=code-server.my.domain #optional
- DEFAULT_WORKSPACE=/config/workspace
deploy:
replicas: 1
labels:
- "traefik.enable=true"
- "traefik.docker.network=traefik-public"
- "traefik.http.routers.arkanum.rule=Host(`vscode.mydomain.com`)"
- "traefik.http.routers.arkanum.tls.certresolver=myresolver"
- "traefik.http.services.arkanum-srv.loadbalancer.server.port=8443"
volumes:
# store workspace and use config in volume.
- codedata:/config
# no need to expose the port. traefik acts as reverse proxy and handles the https access.
#ports:
# - 8443:8443
restart: unless-stopped
networks:
- arkanum-sphere
- traefik-public
volumes:
codedata:
networks:
arkanum-sphere:
traefik-public:
external: true
```
> 💡 NOTE: For advanced config with additional environment variables see [linuxserver/docker-code-server](https://github.com/linuxserver/docker-code-server) help.
### 2.b Use Docker-Compose
This is a basic example for a `docker-compose` file from the [linuxserver/docker-code-server](https://github.com/linuxserver/docker-code-server) project.
See their [docs](https://github.com/linuxserver/docker-code-server#parameters) about a detailed help for advanced config parameters.
```yaml
---
version: "3.8"
services:
arkanum:
image: gitea.ocram85.com/codeserver/arkanum:0.2.0
container_name: code-server
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- PASSWORD=password #optional
- HASHED_PASSWORD= #optional
- SUDO_PASSWORD=password #optional
- SUDO_PASSWORD_HASH= #optional
- PROXY_DOMAIN=code-server.my.domain #optional
- DEFAULT_WORKSPACE=/config/workspace #optional
volumes:
- /path/to/appdata/config:/config
ports:
- 8443:8443
restart: unless-stopped
```
### 3. 🦶 First Steps
After summon Arkanum your first steps should be to set your username and email in the git config:
```bash
git config --global user.name "username"
git config --global user.email "email address"
```
And that's it. Now you're ready use arkanum as your daily remote code editor. 😄
## 📖 Content
<p align="center">
<a href="https://gitea.ocram85.com/CodeServer/arkanum/">
<img
src="assets/screen1.png"
alt="Screenshot1"
>
</a>
</p>
### 🚀 Starship prompt
The [Starship](starship.rs) prompt is added and enabled as default. Default config uses Emojis and FiraCode icons.
We added the [Starship](starship.rs) prompt is as default in the integrated terminal. The default config uses Emojis and FiraCode icons.
### 🔱 git config
Adds default git system config file with:
Added default git system config file with:
- code-server as default editor.
- disabled `aurocrlf`.
- enabled plain credential store for remote.
- added git log helper `lg1` + `lg2`.
- enabled bash completion for git command in integrated bash terminal.
> 💡 See [gitconfig-system](./gitconfig-system) for details.
### 🧙 Added `arkanum` helper script
### 🧙 `arkanum` helper
Added `arkanum` to help installing common runtime in container.
Added `arkanum` to help installing common runtimes in container.
This helps reducing the image size.
```
@ -74,7 +192,7 @@ This helps reducing the image size.
Added FiraCode as default font in editor and integrated terminal. The font files are embedded and can be used without local installation.
### VSCode default settings
### 🦸 VSCode default settings
If your start the container or log in the first time, a default config file is deployed.
@ -83,13 +201,13 @@ This user setting defines the following stuff:
- Use compact menu bar to avoid users with multiple menu bars.
- Use *One Dark Pro Darker* theme
- Use *vscode-icons* icon set
- Set 'FiraCode' as default font in editor.
- Set FiraCode as default font in editor.
- Tries to use alternate font names for FiraCode if its locally available.
- Sets 'FiraCode' mono variant in terminal to enable icons used by starshop prompt.
- Sets FiraCode mono variant in terminal to enable icons used by starship prompt.
- Enables font ligatures
- Enables *auto save* and *format on save*.
- Disables auto update for extension.
- Disables VScode telemetry
- Disables VSCode telemetry
- Disable confirm message for sync branches.
Additionally we install these extensions on container startup:
@ -98,9 +216,46 @@ Additionally we install these extensions on container startup:
- [vscode-icons](https://open-vsx.org/extension/vscode-icons-team/vscode-icons) icon set
- [Gitlens](https://open-vsx.org/extension/eamodio/gitlens)
## 💳 Credits
## 💣 Known Issues
Akranum is based on the following projects and wouldn't be possible without:
### 🐛 Default extensions installation timing error
If the automatic installation of the default extension fails, you can always retry he installation with the
following command:
```bash
# restart the installation
arkanum --install-extensions
# Optional: reset the vscode user setting
arkanum --reset-codesetting
# Reload with command F1 + Developer: Reload Window
```
## 😡 We're Using GitHub Under Protest
This project is currently **mirrored** to GitHub. This is not ideal; GitHub is a
proprietary, trade-secret system that is not Free and Open Source Software
(FOSS). We are deeply concerned about using a proprietary system like GitHub
to develop our FOSS project. We have an
[open Gitea repository ](https://gitea.ocram85.com/CodeServer/arkanum/issues) where the
project contributors are actively discussing how we can move away from GitHub
in the long term. We urge you to read about the
[Give up GitHub](https://GiveUpGitHub.org) campaign from
[the Software Freedom Conservancy](https://sfconservancy.org) to understand
some of the reasons why GitHub is not a good place to host FOSS projects.
If you are a contributor who personally has already quit using GitHub, please
[check this resource](https://gitea.ocram85.com/CodeServer/arkanum) for how to send us contributions without
using GitHub directly.
Any use of this project's code by GitHub Copilot, past or present, is done
without our permission. We do not consent to GitHub's use of this project's
code in Copilot.
![Logo of the GiveUpGitHub campaign](https://sfconservancy.org/img/GiveUpGitHub.png)
## 🙏 Credits
Akranum is based on the following projects and wouldn't be possible without them:
- [microsoft/vscode](https://github.com/microsoft/vscode) - Visual Studio Code, OSS. `[MIT]`
- [coder/code-server](https://github.com/coder/code-server) - VSCode on a remote server, accessible through the browser. `[MIT]`
@ -113,7 +268,7 @@ Akranum is based on the following projects and wouldn't be possible without:
```
Arkanum - Code-Server container optimized for daily use.
Copyright (C) 2022 "OCram85 <me@ocram85.com>"
Copyright (C) 2022 "OCram85 <me@ocram85.com>"
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by

20
arkanum
View File

@ -50,8 +50,8 @@ function sayE() {
function instDotNet() {
say "Installing dotnet requirements..." "dotnet"
sudo apt-get update > /dev/null
sudo apt-get install --no-install-recommends -y \
sudo -E apt-get update > /dev/null
sudo -E apt-get install --no-install-recommends -y \
libicu70
say "Downloading latest install script..." "dotnet"
@ -63,7 +63,7 @@ function instDotNet() {
echo 'export PATH=$PATH:/config/.dotnet' | sudo tee -a /etc/bash.bashrc > /dev/null
say "Cleaning up..." "dotnet"
sudo apt-get clean
sudo -E apt-get clean
sudo rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
@ -94,11 +94,11 @@ function instNodeJs() {
say "Adding nodesource package source (NodeJS LTS)..." "NodeJs"
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
say "Updating package lists and installing NodeJS LTS..." "NodeJs"
sudo apt-get install --no-install-recommends -y \
sudo -E apt-get install --no-install-recommends -y \
nodejs
say "Cleaning up..." "NodeJs"
sudo apt-get clean
sudo -E apt-get clean
sudo rm -rf \
/tmp/* \
/var/lib/apt/lists/* \
@ -109,7 +109,7 @@ function instNodeJs() {
function instPwsh() {
say "Installing PowerShell requirements..." "PowerShell"
sudo apt-get install --no-install-recommends -y \
sudo -E apt-get install --no-install-recommends -y \
apt-transport-https \
software-properties-common
@ -119,18 +119,18 @@ function instPwsh() {
# Register the Microsoft repository GPG keys
sudo dpkg -i /tmp/packages-microsoft-prod.deb
# Update the list of packages after we added packages.microsoft.com
sudo apt-get update
sudo -E apt-get update
say "Installing PowerShell..." "PowerShell"
# Install PowerShell
sudo apt-get install --no-install-recommends -y powershell
sudo -E apt-get install --no-install-recommends -y powershell
say "done." "PowerShell"
}
function instGiteaTools() {
say "Installing Gitea tools..." "Gitea"
sudo curl -fsSL https://dl.gitea.io/changelog-tool/main/changelog-main-linux-amd64 -o /usr/bin/changelog
sudo -E curl -fsSL https://dl.gitea.io/changelog-tool/main/changelog-main-linux-amd64 -o /usr/bin/changelog
sudo chmod +x /usr/bin/changelog
say "'changelog' command installed." "Gitea"
say "done." "Gitea"
@ -147,7 +147,7 @@ function instCodeExtension() {
rm -f /tmp/eamodio.gitlens-13.1.1.vsix
# OneDarkPro
say "Downloading 'One Dark Pro' theme..." "V"
say "Downloading 'One Dark Pro' theme..." "Extension"
curl -fsSL https://open-vsx.org/api/zhuangtongfa/material-theme/3.15.6/file/zhuangtongfa.material-theme-3.15.6.vsix -o /tmp/zhuangtongfa.material-theme-3.15.6.vsix
say "Installing 'One Dark Pro' theme..." "Extension"
install-extension /tmp/zhuangtongfa.material-theme-3.15.6.vsix

BIN
assets/screen1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 KiB

View File

@ -6,7 +6,7 @@
"woodpecker": {
"enabled": true,
"fileMatch": [
"^.woodpecker/*.yml$"
"^.woodpecker\/.*.yml$"
]
}
}