19 Commits

Author SHA1 Message Date
1ed6a4a7d5 prepare release v0.4.0 (#56)
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/tag/test Pipeline was successful
ci/woodpecker/tag/next Pipeline was successful
ci/woodpecker/tag/deploy Pipeline was successful
#### 📖 Summary

- update changelog
- update readme
- update defaut extensions

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

| Choice | Test Method       |
| :----: | :-----------      |
|      | 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#56
2023-07-20 09:44:31 +02:00
78c91dceba fix shellcheck issues (#55)
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
#### 📖 Summary

- fix shelchek issues in arkanum bash script

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

| Choice | Test Method       |
| :----: | :-----------      |
|      | 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#55
2023-07-19 15:53:06 +02:00
c55408b4b3 add docker-cli (#54)
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
#### 📖 Summary

- adds dockercli
- docker.sock must be mounted from hosts...

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

| Choice | Test Method       |
| :----: | :-----------      |
|      | CI pipeline tests |
|        | Custom test       |
|        | No test plan      |

##### Details / Justification

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

#### 📚 Additional Notes

- fixes #51

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#54
2023-07-19 13:29:42 +02:00
c6e65b7782 fix tests selection choice
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
tasklist would be shown as open tasks 1/3 in pr overview links...
2023-07-19 12:58:21 +02:00
33f8bc90c0 Adds Volta as default version manager for NodeJs (#53)
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
#### 📖 Summary

- Adds Volta
- Using Volta as default method for installing global nodejs@lts version.

#### 📑 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

- fixes #50

Co-authored-by: OCram85 <marco.blessing@googlemail.com>
Reviewed-on: CodeServer/arkanum#53
2023-07-19 12:52:26 +02:00
8c9c9e5138 disable starship python module (#52)
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
#### 📖 Summary

- disable python module due to false positive python project detection in prompt.
- added Known Issues section

#### 📑 Test Plan

> 💡 Select your test plan for the code changes.

| Choice | Test Method       |
| :----: | :-----------       |
|      | 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#52
2023-07-19 09:34:25 +02:00
5922aabe3d bump go version (#49)
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
#### 📖 Summary

- update go version download

#### 📑 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#49
2023-07-19 09:14:53 +02:00
a25b231654 prepare release (#48)
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/tag/test Pipeline was successful
ci/woodpecker/tag/next Pipeline was successful
ci/woodpecker/tag/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#48
2023-07-04 16:31:04 +02:00
330f852e56 Update quay.io/linuxserver.io/code-server Docker tag to v4.14.1 (#47)
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
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.11.0` -> `4.14.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:eyJjcmVhdGVkSW5WZXIiOiIzNC40MC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNDAuMiJ9-->

Reviewed-on: CodeServer/arkanum#47
Co-authored-by: renovate-bot <renovate@ocram85.com>
Co-committed-by: renovate-bot <renovate@ocram85.com>
2023-07-04 15:36:49 +02:00
dba751f036 prepare release 0.3.0 (#46)
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/tag/test Pipeline was successful
ci/woodpecker/tag/next Pipeline was successful
ci/woodpecker/tag/deploy Pipeline was successful
#### 📖 Summary

- update changelog to prepare release

#### 📑 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#46
2023-03-30 19:00:58 +02:00
88612ad71c Update quay.io/linuxserver.io/code-server Docker tag to v4.11.0 (#45)
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
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.10.0` -> `4.11.0` |

---

### 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:eyJjcmVhdGVkSW5WZXIiOiIzNC40MC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNDAuMiJ9-->

Reviewed-on: CodeServer/arkanum#45
Co-authored-by: renovate-bot <renovate@ocram85.com>
Co-committed-by: renovate-bot <renovate@ocram85.com>
2023-03-29 20:30:33 +02:00
6d2e8fb05f Update quay.io/linuxserver.io/code-server Docker tag to v4.10.0 (#43)
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
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.9.1` -> `4.10.0` |

---

### 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:eyJjcmVhdGVkSW5WZXIiOiIzNC40MC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNDAuMiJ9-->

Reviewed-on: CodeServer/arkanum#43
Co-authored-by: renovate-bot <renovate@ocram85.com>
Co-committed-by: renovate-bot <renovate@ocram85.com>
2023-02-26 10:20:19 +01:00
859eb479c5 add tea cli in gitea block (#41)
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
#### 📖 Summary

- adds `tea` gitea cli tool
- adds variable to control donwloaded binary version for
  - `changelog`
  - `tea`

#### 📑 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#41
2023-02-25 12:33:11 +01:00
e648c50c62 remove repo defined renovate (#44)
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
#### 📖 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. -->

Reviewed-on: CodeServer/arkanum#44
2023-02-23 07:44:46 +01:00
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
10 changed files with 154 additions and 59 deletions

View File

@ -6,9 +6,11 @@
> :bulb: Select your test plan for the code changes.
- [x] CI pipeline tests
- [ ] Custom test
- [ ] No test plan
| Choice | Test Method |
| :----: | :----------- |
| ✅ | CI pipeline tests |
| | Custom test |
| | No test plan |
##### Details / Justification

View File

@ -22,3 +22,4 @@ srv
tbd
traefik
tuanpham
volta

View File

@ -24,7 +24,7 @@ pipeline:
triggerPortainer:
image: ocram85/portainer-serviceupdate
settings:
#VERBOSE: true
VERBOSE: true
URI: "https://portainer.ocram85.com"
TOKEN:
from_secret: NEXT_TOKEN

View File

@ -1,22 +0,0 @@
pipeline:
DockerBaseImage:
image: renovate/renovate:34.77-slim
commands:
- "renovate"
secrets:
- RENOVATE_TOKEN
environment:
#LOG_LEVEL: debug
RENOVATE_PLATFORM: "gitea"
RENOVATE_ENDPOINT: "https://gitea.ocram85.com"
RENOVATE_REPOSITORIES: "${CI_REPO}"
RENOVATE_LABELS: "renovate"
#RENOVATE_DRY_RUN: "full"
RENOVATE_TOKEN: "${RENOVATE_TOKEN}"
RENOVATE_GITHUB_TOKEN_WARN: "false"
when:
event:
- push
branch:
- master
- updDeps

View File

@ -35,7 +35,7 @@
* 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
@ -45,3 +45,39 @@
* 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)
## [v0.3.0](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.3.0) - 2023-03-30
* 🛠️ ENHANCEMENTS
* Add tea cli in gitea block (#41)
* 📦 BUILD
* Remove repo defined renovate (#44)
* 🤖 DEPENDENCIES
* Update quay.io/linuxserver.io/code-server Docker tag to v4.11.0 (#45)
* Update quay.io/linuxserver.io/code-server Docker tag to v4.10.0 (#43)
## [v0.3.1](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.3.1) - 2023-07-04
* 🤖 DEPENDENCIES
* Update quay.io/linuxserver.io/code-server Docker tag to v4.14.1 (#47)
## [v0.4.0](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.4.0) - 2023-07-19
* 🐛 BUGFIXES
* Fix shellcheck issues (#55)
* Disable starship python module (#52)
* ✨ FEATURES
* Add docker-cli (#54)
* Adds Volta as default version manager for NodeJs (#53)
* 🛠️ ENHANCEMENTS
* Bump go version (#49)

View File

@ -1,4 +1,4 @@
FROM quay.io/linuxserver.io/code-server:4.8.3
FROM quay.io/linuxserver.io/code-server:4.14.1
#LABEL build_version=""
LABEL maintainer="OCram85"

View File

@ -34,7 +34,9 @@ You can download the image from the gitea embedded container registry: `gitea.oc
- `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. See [packages page](https://gitea.ocram85.com/CodeServer/-/packages/container/arkanum/latest) for available tags.
- `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
@ -53,7 +55,7 @@ Therefore you need
version: "3.8"
services:
arkanum:
image: gitea.ocram85.com/codeserver/arkanum:0.0.1
image: gitea.ocram85.com/codeserver/arkanum:0.4.0
environment:
- PUID=1000
- PGID=1000
@ -75,10 +77,11 @@ services:
volumes:
# store workspace and use config in volume.
- codedata:/config
# mount docker socket to manage host docker
- /var/run/docker.sock:/var/run/docker.sock
# 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
@ -104,7 +107,7 @@ See their [docs](https://github.com/linuxserver/docker-code-server#parameters) a
version: "3.8"
services:
arkanum:
image: gitea.ocram85.com/codeserver/arkanum:0.0.1
image: gitea.ocram85.com/codeserver/arkanum:0.4.0
container_name: code-server
environment:
- PUID=1000
@ -171,11 +174,13 @@ This helps reducing the image size.
code-server container environment.
Syntax: arkanum RUNTIME ...
RUNTIME [dotnet|golang|nodejs|powershell]
RUNTIME [docker-cli|dotnet|gitea|golang|nodejs|volta|powershell]
docker-cli Installs the latest docker-ce cli.
dotnet Installs latest LTS dotnet core sdk + runtime.
gitea Installs gitea tools like the changelog generator.
golang Installs golang 1.19.3.
nodejs Installs latest NodeJs LTS version.
nodejs Installs latest NodeJs LTS version using Volta.
volta Installs Volta as NodeJs version manager.
powershell Installs latest PowerShell LTS version.
--disable-motd Disables hint in new bash terminal.
--install-extensions Installs predefined recommended extensions.
@ -216,6 +221,11 @@ Additionally we install these extensions on container startup:
## 💣 Known Issues
### Starship.rs
Starship detects workspaces as active python projects. It always appends the prompt
fragment `via 🐍 (lsiopy)`. For now I disabled the python module in starship.
### 🐛 Default extensions installation timing error
If the automatic installation of the default extension fails, you can always retry he installation with the

113
arkanum
View File

@ -8,11 +8,13 @@ function showHelp() {
code-server container environment.
Syntax: arkanum RUNTIME ...
RUNTIME [dotnet|golang|nodejs|powershell]
RUNTIME [docker-cli|dotnet|gitea|golang|nodejs|volta|powershell]
docker-cli Installs the latest docker-cli.
dotnet Installs latest LTS dotnet core sdk + runtime.
gitea Installs gitea tools like the changelog generator.
golang Installs golang 1.19.3.
nodejs Installs latest NodeJs LTS version.
nodejs Installs latest NodeJs LTS version using Volta.
volta Installs Volta as NodeJS version manager.
powershell Installs latest PowerShell LTS version.
--disable-motd Disables hint in new bash terminal.
--install-extensions Installs predefined recommended extensions.
@ -48,22 +50,52 @@ function sayE() {
fi
}
function sayW() {
if [[ -n "$2" ]]; then
echo -e "🧙 \e[33markanum\e[0m \e[34m[⚒️ $2]\e[0m: $1" 1>&2
else
echo -e "🧙 \e[33markanum\e[0m: $1" 1>&2
fi
}
function instDockerCLI() {
say "Installing docker-cli..." "docker-cli"
say "Getting requires packages..." "docker-cli"
sudo -E apt-get update > /dev/null
sudo -E apt-get install ca-certificates curl gnupg
say "Setting up docker repository..." "docker-cli"
sudo -E install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo -E gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo -E chmod a+r /etc/apt/keyrings/docker.gpg
# shellcheck disable=SC2046,SC2027
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
say "Installing docker-ce-cli package" "docker-cli"
sudo -E apt-get update > /dev/null
sudo -E apt-get install --no-install-recommends -y \
docker-ce-cli
say "docker-cli done." "docker-cli"
}
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"
curl -fsSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh
curl -#fSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh
chmod +x /tmp/dotnet-install.sh
say "Installing latest .NET Core LTS release..." "dotnet"
/tmp/dotnet-install.sh --channel LTS
# shellcheck disable=SC2016
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/* \
@ -73,16 +105,17 @@ function instDotNet() {
function instGoLang() {
if [[ -z "$1" ]]; then
GOVERSION="1.19.3"
GOVERSION="1.20.6"
else
GOVERSION="$1"
fi
say "Downloading golang ($GOVERSION)..." "GoLang"
curl -fsSL "https://go.dev/dl/go$GOVERSION.linux-amd64.tar.gz" -o /tmp/golang.tar.gz
curl -#fSL "https://go.dev/dl/go$GOVERSION.linux-amd64.tar.gz" -o /tmp/golang.tar.gz
say "Installing golang ($GOVERSION)...." "GoLang"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf /tmp/golang.tar.gz
# shellcheck disable=SC2016
echo 'export PATH=$PATH:/usr/local/go/bin' | sudo tee -a /etc/bash.bashrc > /dev/null
say "Cleaning up..." "GoLang"
rm -f /tmp/golang.tar.gz
@ -92,13 +125,13 @@ function instGoLang() {
function instNodeJs() {
say "Adding nodesource package source (NodeJS LTS)..." "NodeJs"
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
curl -#fSL 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/* \
@ -107,32 +140,54 @@ function instNodeJs() {
say "done." "NodeJs"
}
function instNodeJS2() {
say "Installing NodeJS LTS via Volta..." "NodeJS"
volta install node@lts
say "done." "NodeJS"
}
function instVolta() {
say "Installing Volta as NodeJS version manager..." "Volta"
curl -#fSl https://get.volta.sh | bash
say "done." "Volta"
}
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
say "Adding powershell package sources..." "PowerShell"
# Download the Microsoft repository GPG keys
curl -fsSL "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb" -o /tmp/packages-microsoft-prod.deb
curl -#fSL "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb" -o /tmp/packages-microsoft-prod.deb
# 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() {
TEA_VERSION="0.9.0"
CHANGELOG_VERSION="main"
say "Installing Gitea tools..." "Gitea"
sudo curl -fsSL https://dl.gitea.io/changelog-tool/main/changelog-main-linux-amd64 -o /usr/bin/changelog
say "Downloading 'changelog' ($CHANGELOG_VERSION)..." "Gitea"
sudo -E curl -#fSL "https://dl.gitea.io/changelog-tool/$CHANGELOG_VERSION/changelog-$CHANGELOG_VERSION-linux-amd64" -o /usr/bin/changelog
sudo chmod +x /usr/bin/changelog
say "'changelog' command installed." "Gitea"
say "Downloading 'tea' ($TEA_VERSION)..." "Gitea"
sudo -E curl -#fSL https://dl.gitea.io/tea/$TEA_VERSION/tea-$TEA_VERSION-linux-amd64 -o /usr/bin/tea
sudo chmod +x /usr/bin/tea
say "'tea' command installed." "Gitea"
say "done." "Gitea"
}
@ -140,15 +195,15 @@ function instCodeExtension() {
say "Downloading required extensions...." "Extension"
# Gitlens
say "Downloading 'gitlens'..." "Extension"
curl -fsSL https://open-vsx.org/api/eamodio/gitlens/13.1.1/file/eamodio.gitlens-13.1.1.vsix -o /tmp/eamodio.gitlens-13.1.1.vsix
curl -#fSL https://open-vsx.org/api/eamodio/gitlens/14.0.1/file/eamodio.gitlens-14.0.1.vsix -o /tmp/eamodio.gitlens-13.1.1.vsix
say "Installing 'gitlens'..." "Extension"
install-extension /tmp/eamodio.gitlens-13.1.1.vsix
say "Cleaning up 'gitlens' install files" "Extension"
rm -f /tmp/eamodio.gitlens-13.1.1.vsix
# OneDarkPro
say "Downloading 'One Dark Pro' theme..." "V"
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 "Downloading 'One Dark Pro' theme..." "Extension"
curl -#fSL https://open-vsx.org/api/zhuangtongfa/material-theme/3.15.18/file/zhuangtongfa.material-theme-3.15.18.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
say "Cleaning up 'One Dark Pro' install files" "Extension"
@ -156,7 +211,7 @@ function instCodeExtension() {
# vscode-icons
say "Downloading 'vscode-icons' theme..." "Extension"
curl -fsSL https://open-vsx.org/api/vscode-icons-team/vscode-icons/12.0.1/file/vscode-icons-team.vscode-icons-12.0.1.vsix -o /tmp/vscode-icons-team.vscode-icons-12.0.1.vsix
curl -#fSL https://open-vsx.org/api/vscode-icons-team/vscode-icons/12.4.0/file/vscode-icons-team.vscode-icons-12.4.0.vsix -o /tmp/vscode-icons-team.vscode-icons-12.0.1.vsix
say "Installing 'vscode-icons' theme..." "Extension"
install-extension /tmp/vscode-icons-team.vscode-icons-12.0.1.vsix
say "Cleaning up 'vscode-icons' install files" "Extension"
@ -192,16 +247,26 @@ function main() {
exit 0
fi
for i in $@; do
for i in "$@"; do
if [[ "$1" == "-h" ]]; then
showHelp
exit 0
elif [[ "$i" == "docker-cli" ]]; then
instDockerCLI
elif [[ "$i" == "dotnet" ]]; then
instDotNet
elif [[ "$i" == "golang" ]]; then
instGoLang
instGoLang "$2"
elif [[ "$i" == "nodejs" ]]; then
instNodeJs
if [[ "$2" == "--legacy" ]]; then
sayW "Installing NodeJS with legacy function" "Arkanum"
instNodeJs
else
instVolta
instNodeJS2
fi
elif [[ "$i" == "volta" ]]; then
instVolta
elif [[ "$i" == "powershell" ]]; then
instPwsh
elif [[ "$i" == "gitea" ]]; then
@ -223,4 +288,4 @@ function main() {
done
}
main $@
main "$@"

View File

@ -1,3 +1,3 @@
#!/bin/bash
complete -W "--disable-motd --install-extensions --reset-codesetting dotnet gitea golang nodejs powershell -h" arkanum
complete -W "--disable-motd --install-extensions --reset-codesetting docker-cli dotnet gitea golang nodejs volta powershell -h" arkanum

View File

@ -59,6 +59,9 @@ symbol = " "
[package]
symbol = " "
[python]
disabled = true
[rust]
symbol = " "