Compare commits
115 Commits
Author | SHA1 | Date | |
---|---|---|---|
3cc5bcaf79 | |||
88f6aa5684 | |||
3dedeb07d0 | |||
4324be16c6 | |||
8cf6c45192 | |||
9131f21ca1 | |||
d8d625cdaa | |||
00b31c1940 | |||
222c78075a | |||
504817c7ab | |||
cbcc2bf54a | |||
6a75868f4b | |||
51a3e2e6ba | |||
a3b700ff09 | |||
859fc5d629 | |||
f45fe5e4a0 | |||
1fc492fb03 | |||
94ecfc35ed | |||
bb67ea6112 | |||
c2cf031afc | |||
9770d71aea | |||
b51529f680 | |||
9267a00588 | |||
1222bfc54d | |||
51f16b02db | |||
499fd68fab | |||
b59945fc5b | |||
c319d8c1b5 | |||
8d682c5437 | |||
c0aa7209aa | |||
90e6bbbaa3 | |||
4c84939734 | |||
c0cf249ac2 | |||
2a90426017 | |||
4bff70a6d3 | |||
1e94d92b2a | |||
bfa4344249 | |||
7dd88907e5 | |||
db6f131d14 | |||
e9d6916e2d | |||
89f87e0299 | |||
b86faf4d73 | |||
fe7d255aeb | |||
81d77dfe8f | |||
ea513c90ac | |||
4f85a8a855 | |||
102fd19b6f | |||
77495f462d | |||
0f3ec73f7d | |||
1548a458d0 | |||
fa17e1d5e8 | |||
d9b03cadb4 | |||
681a76000e | |||
830e1f20b5 | |||
af501e6695 | |||
59c789b464 | |||
8b694306ea | |||
531d37dc4b | |||
04a741bcea | |||
72f8494478 | |||
ab563333e8 | |||
e1e2a068d8 | |||
8e8febb936 | |||
666c9503b7 | |||
d954e0f37a | |||
26819b70d5 | |||
325b1fa5b7 | |||
0652eabaaf | |||
44d69d542c | |||
f0d0a0ad1d | |||
fd87fd0990 | |||
81aea0a4d2 | |||
2130741460 | |||
b79c637259 | |||
bd93b021db | |||
d388c2f46b | |||
49fdbcd97e | |||
5ef273ab10 | |||
b0553b1c16 | |||
690d0666d9 | |||
ac62d384a2 | |||
d3c9186ccf | |||
e85a222bf1 | |||
02ee121148 | |||
c9b600969e | |||
aef0d17c1d | |||
582d98b943 | |||
24599cb256 | |||
1b4784faa0 | |||
496784ab43 | |||
839024dc84 | |||
03a31b7942 | |||
173ec41f6d | |||
aa23316413 | |||
21c6ef703f | |||
b0fbd8edf6 | |||
a1a4c2b1e9 | |||
e700e7b477 | |||
26754e83f9 | |||
7fe6062a8f | |||
d18eac86bb | |||
1ed6a4a7d5 | |||
78c91dceba | |||
c55408b4b3 | |||
c6e65b7782 | |||
33f8bc90c0 | |||
8c9c9e5138 | |||
5922aabe3d | |||
a25b231654 | |||
330f852e56 | |||
dba751f036 | |||
88612ad71c | |||
6d2e8fb05f | |||
859eb479c5 | |||
e648c50c62 |
@ -1,5 +1,5 @@
|
||||
# The full repository name
|
||||
repo: CodeServer/arkanum
|
||||
repo: arkanum/arkanum
|
||||
|
||||
# Service type (gitea or github)
|
||||
service: gitea
|
||||
|
@ -1,8 +1,11 @@
|
||||
.gitea
|
||||
.vscode
|
||||
assets
|
||||
.editorconfig
|
||||
.gitatributes
|
||||
.gitattributes
|
||||
.gitea
|
||||
.gitignore
|
||||
.gitlocal
|
||||
.prettierrc
|
||||
.vscode
|
||||
LICENSE
|
||||
node_modules
|
||||
README.md
|
||||
renovate.json
|
||||
|
@ -1,10 +0,0 @@
|
||||
---
|
||||
name: 'Default'
|
||||
about: 'Use this template if nothing seems to work.'
|
||||
title: ':question: '
|
||||
labels:
|
||||
- question
|
||||
---
|
||||
#### :grey_question: Simply ask your question here: :grey_question:
|
||||
|
||||
<!-- Take your time an think about your problem.... -->
|
16
.gitea/ISSUE_TEMPLATE.yml
Normal file
@ -0,0 +1,16 @@
|
||||
name: Default
|
||||
about: Use this template if nothing seems to work.
|
||||
title: ''
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
> **Note**: Thanks for taking the time to fill out this bug report!
|
||||
- type: textarea
|
||||
id: content
|
||||
attributes:
|
||||
label: ❔ What happened
|
||||
description: Simply ask your question here.
|
||||
placeholder: Tell us what you want to know...
|
||||
validations:
|
||||
required: true
|
@ -1,48 +0,0 @@
|
||||
---
|
||||
name: 'Bug'
|
||||
about: 'This template is used to report bugs!'
|
||||
title: ':lady_beetle: '
|
||||
labels:
|
||||
- bug
|
||||
---
|
||||
<!--
|
||||
This bug report is ony for content provided in this repository!
|
||||
|
||||
- Make sure you're able to reproduce the error in the latest version of this package.
|
||||
- Search of already existing issues.
|
||||
- Refer to the known issues and FAQ section.
|
||||
-->
|
||||
|
||||
#### :bomb: Steps to reproduce
|
||||
|
||||
```bash
|
||||
|
||||
```
|
||||
|
||||
#### :rocket: Expected behavior
|
||||
|
||||
```bash
|
||||
|
||||
```
|
||||
|
||||
#### :boom: Actual behavior
|
||||
|
||||
```bash
|
||||
|
||||
```
|
||||
|
||||
#### :notebook: Environment data
|
||||
|
||||
<!-- You can add additional environment data here--->
|
||||
|
||||
```bash
|
||||
|
||||
```
|
||||
|
||||
#### :framed_picture: Screenshots
|
||||
|
||||
<!-- Paste your screenshots here. -->
|
||||
|
||||
#### :bookmark: Refs
|
||||
|
||||
<!-- A place for additional references to other issues and PRs -->
|
69
.gitea/ISSUE_TEMPLATE/Bug.yml
Normal file
@ -0,0 +1,69 @@
|
||||
name: 🐞 Bug Report
|
||||
about: This template is used to report bugs!
|
||||
title: ''
|
||||
labels:
|
||||
- bug
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
> **Note**: This bug report is only for content provided in this repository!
|
||||
>
|
||||
> - Make sure you're able to reproduce the error in the lastest version of this package.
|
||||
> - Search of already existing issues.
|
||||
> - Refer to the known issues and FAQ section.
|
||||
- type: textarea
|
||||
id: reproduce
|
||||
attributes:
|
||||
label: 💣 Steps to reproduce
|
||||
description: Describe ho to reproduce the error.
|
||||
value: |
|
||||
```bash
|
||||
|
||||
```
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: expected
|
||||
attributes:
|
||||
label: 🚀 Expected behavior
|
||||
description: Describe what should happen.
|
||||
value: |
|
||||
```bash
|
||||
|
||||
```
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: actual
|
||||
attributes:
|
||||
label: 💥 Actual behavior
|
||||
description: Describe what actually happens.
|
||||
value: |
|
||||
```bash
|
||||
|
||||
```
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: env
|
||||
attributes:
|
||||
label: 📓 Environment data
|
||||
description: You can add additional environment data here.
|
||||
placeholder: |
|
||||
```bash
|
||||
|
||||
```
|
||||
- type: textarea
|
||||
id: img
|
||||
attributes:
|
||||
label: 🖼️ Screenshots
|
||||
description: Paste your screenshots here.
|
||||
placeholder: Copy-Paste or Drag-and-Drop your images...
|
||||
- type: textarea
|
||||
id: refs
|
||||
attributes:
|
||||
label: 🔖 Refs
|
||||
description: A place for additional references to other issues and PRs.
|
||||
placeholder: |
|
||||
- reopens #999
|
@ -1,16 +0,0 @@
|
||||
---
|
||||
name: 'Enhancement'
|
||||
about: 'Wite about new features.'
|
||||
title: ':flying_saucer: '
|
||||
labels:
|
||||
- issue/enhancement
|
||||
---
|
||||
<!-- This issue template is used to describe whished features. -->
|
||||
|
||||
#### :satellite: Suggestion
|
||||
|
||||
#### :artificial_satellite: Implementation ideas
|
||||
|
||||
#### :framed_picture: Mock-up Images
|
||||
|
||||
#### :bookmark: Refs.
|
46
.gitea/ISSUE_TEMPLATE/Feature.yml
Normal file
@ -0,0 +1,46 @@
|
||||
name: 🛸 Feature Request
|
||||
about: Wite about new features.
|
||||
title: ''
|
||||
labels:
|
||||
- feature
|
||||
- enhancement
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
> **Note**: This bug report is only for content provided in this repository!
|
||||
>
|
||||
> This issue template is used to describe new features or enhancements.
|
||||
- type: textarea
|
||||
id: idea
|
||||
attributes:
|
||||
label: 📡 Suggestion
|
||||
description: Describe ho to reproduce the error.
|
||||
value: |
|
||||
```bash
|
||||
|
||||
```
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: impl
|
||||
attributes:
|
||||
label: 🛰️ Implementation ideas
|
||||
description: Describe your initial implementation ideas.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: mockup
|
||||
attributes:
|
||||
label: 🖼️ Mock-up
|
||||
description: Alternatively add your mockups here.
|
||||
placeholder: Copy-Paste or Drag-and-Drop your images...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: refs
|
||||
attributes:
|
||||
label: 🔖 Refs
|
||||
description: A place for additional references to other issues and PRs.
|
||||
placeholder: |
|
||||
- reopens #999
|
18
.gitea/ISSUE_TEMPLATE/Question.yml
Normal file
@ -0,0 +1,18 @@
|
||||
name: ❓ Question
|
||||
about: Use this template if nothing seems to work.
|
||||
title: ''
|
||||
labels:
|
||||
- question
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
> **Note**: Thanks for taking the time to fill out this bug report!
|
||||
- type: textarea
|
||||
id: content
|
||||
attributes:
|
||||
label: ❔ What happened
|
||||
description: Simply ask your question here.
|
||||
placeholder: Tell us what you want to know...
|
||||
validations:
|
||||
required: true
|
@ -1,19 +0,0 @@
|
||||
#### :book: Summary
|
||||
|
||||
<!-- Provide a summary of your changes. Describe the why and not how. -->
|
||||
|
||||
#### :bookmark_tabs: Test Plan
|
||||
|
||||
> :bulb: 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. -->
|
||||
|
||||
#### :books: Additional Notes
|
||||
|
||||
<!-- A place for additional detail notes. -->
|
41
.gitea/PULL_REQUEST_TEMPLATE.yml
Normal file
@ -0,0 +1,41 @@
|
||||
name: Pull Request
|
||||
about: General pull request
|
||||
title: ""
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
> **Note** Thanks for contributing to this project with your pull request!
|
||||
|
||||
- type: textarea
|
||||
id: summary
|
||||
attributes:
|
||||
label: 📖 Summary
|
||||
description: Provide a summary of your changes. Also describe the why...
|
||||
placeholder: Tell us about your code changes.
|
||||
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: testplan
|
||||
attributes:
|
||||
label: 📑 Test Plan
|
||||
description: How did you test your code changes?
|
||||
options:
|
||||
- ✅ CI pipeline tests (Default)
|
||||
- 🤔 Custom test
|
||||
- 💣 No test Plan
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: details
|
||||
attributes:
|
||||
label: 💬 Details
|
||||
description: Add your custom test details or justification for missing tests here.
|
||||
placeholder: First, solve the problem. Then, write the code.
|
||||
- type: textarea
|
||||
id: notes
|
||||
attributes:
|
||||
label: 📚 Additional Notes
|
||||
description: A place for additional notes or linking references.
|
||||
placeholder: Software and cathedrals are much the same - First we build them, then we pray.
|
5
.gitignore
vendored
@ -12,3 +12,8 @@ data/*.csv
|
||||
# Ignore Pester test result files
|
||||
coverage.xml
|
||||
testResults.xml
|
||||
|
||||
# docs / vitepress related ignores
|
||||
node_modules
|
||||
docs/.vitepress/cache
|
||||
docs/.vitepress/dist
|
||||
|
10
.prettierrc
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"arrowParens": "always",
|
||||
"bracketSpacing": true,
|
||||
"editorconfig": true,
|
||||
"printWidth": 116,
|
||||
"semi": false,
|
||||
"singleQuote": true,
|
||||
"trailingComma": "all",
|
||||
"vueIndentScriptAndStyle": true
|
||||
}
|
1
.vscode/dictionaries/project-words.txt
vendored
@ -22,3 +22,4 @@ srv
|
||||
tbd
|
||||
traefik
|
||||
tuanpham
|
||||
volta
|
||||
|
3
.vscode/extensions.json
vendored
@ -5,6 +5,7 @@
|
||||
"streetsidesoftware.code-spell-checker",
|
||||
"streetsidesoftware.code-spell-checker-german",
|
||||
"bierner.emojisense",
|
||||
"ryanluker.vscode-coverage-gutters"
|
||||
"ryanluker.vscode-coverage-gutters",
|
||||
"augustocdias.tasks-shell-input"
|
||||
]
|
||||
}
|
||||
|
8
.vscode/settings.json
vendored
@ -6,9 +6,7 @@
|
||||
"editor.renderWhitespace": "boundary",
|
||||
"editor.formatOnSave": true,
|
||||
"editor.formatOnType": true,
|
||||
"editor.rulers": [
|
||||
116
|
||||
],
|
||||
"editor.rulers": [116],
|
||||
// powershell general
|
||||
"powershell.startAutomatically": true,
|
||||
"powershell.enableProfileLoading": true,
|
||||
@ -67,5 +65,9 @@
|
||||
"addWords": true
|
||||
},
|
||||
"custom": true
|
||||
},
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"[javascript]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
}
|
||||
}
|
||||
|
37
.vscode/tasks.json
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "Update GiteaChangelog",
|
||||
"type": "shell",
|
||||
"command": [
|
||||
"mv 'CHANGELOG.md' 'CHANGELOG.back' &&",
|
||||
"changelog -m '${input:Milestone}' --token '${input:GiteaToken}' -c .changelog.yml generate > CHANGELOG.md &&",
|
||||
"echo '' >> CHANGELOG.md &&",
|
||||
"cat CHANGELOG.back >> CHANGELOG.md &&",
|
||||
"rm CHANGELOG.back"
|
||||
],
|
||||
"problemMatcher": []
|
||||
}
|
||||
],
|
||||
"inputs": [
|
||||
{
|
||||
"id": "GiteaToken",
|
||||
"type": "command",
|
||||
"command": "shellCommand.execute",
|
||||
"args": {
|
||||
"command": "echo $GITEA_TOKEN",
|
||||
"description": "Your personal Gitea access token"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "Milestone",
|
||||
"type": "command",
|
||||
"command": "shellCommand.execute",
|
||||
"args": {
|
||||
"description": "Select or enter a open milestone",
|
||||
"command": "tea milestone ls -f title --output simple"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -1,49 +0,0 @@
|
||||
depends_on:
|
||||
- test
|
||||
|
||||
pipeline:
|
||||
buildImage:
|
||||
image: woodpeckerci/plugin-docker-buildx
|
||||
settings:
|
||||
registry: gitea.ocram85.com
|
||||
repo: gitea.ocram85.com/codeserver/arkanum
|
||||
dockerfile: Dockerfile
|
||||
auto_tag: true
|
||||
username:
|
||||
from_secret: gitea_user
|
||||
password:
|
||||
from_secret: gitea_passwd
|
||||
build_args:
|
||||
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
|
||||
- TAG=${CI_COMMIT_TAG}
|
||||
when:
|
||||
event: push
|
||||
branch: master
|
||||
|
||||
buildTag:
|
||||
image: woodpeckerci/plugin-docker-buildx
|
||||
settings:
|
||||
registry: gitea.ocram85.com
|
||||
repo: gitea.ocram85.com/codeserver/arkanum
|
||||
dockerfile: Dockerfile
|
||||
auto_tag: true
|
||||
username:
|
||||
from_secret: gitea_user
|
||||
password:
|
||||
from_secret: gitea_passwd
|
||||
build_args:
|
||||
- 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
|
@ -1,32 +0,0 @@
|
||||
depends_on:
|
||||
- test
|
||||
|
||||
pipeline:
|
||||
buildTestImage:
|
||||
image: woodpeckerci/plugin-docker-buildx
|
||||
settings:
|
||||
#dry_run: true
|
||||
registry: gitea.ocram85.com
|
||||
repo: gitea.ocram85.com/codeserver/arkanum
|
||||
platforms: linux/amd64
|
||||
dockerfile: Dockerfile
|
||||
tags: next
|
||||
username:
|
||||
from_secret: gitea_user
|
||||
password:
|
||||
from_secret: gitea_passwd
|
||||
build_args:
|
||||
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
|
||||
- TAG=${CI_COMMIT_TAG}
|
||||
when:
|
||||
event: pull_request
|
||||
|
||||
triggerPortainer:
|
||||
image: ocram85/portainer-serviceupdate
|
||||
settings:
|
||||
#VERBOSE: true
|
||||
URI: "https://portainer.ocram85.com"
|
||||
TOKEN:
|
||||
from_secret: NEXT_TOKEN
|
||||
when:
|
||||
event: pull_request
|
@ -1,22 +0,0 @@
|
||||
pipeline:
|
||||
DockerBaseImage:
|
||||
image: renovate/renovate:34.82-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
|
@ -1,12 +0,0 @@
|
||||
pipeline:
|
||||
testDockerfile:
|
||||
image: woodpeckerci/plugin-docker-buildx
|
||||
settings:
|
||||
dry_run: true
|
||||
registry: gitea.ocram85.com
|
||||
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}
|
112
.woodpecker/ci.yml
Normal file
@ -0,0 +1,112 @@
|
||||
when:
|
||||
- event: [pull_request, tag, cron]
|
||||
- event: push
|
||||
branch:
|
||||
- ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
variables:
|
||||
- &build_plugin 'woodpeckerci/plugin-docker-buildx:5.2.1'
|
||||
# deployment targets
|
||||
- &publish_repos 'ocram85/arkanum,gitea.ocram85.com/arkanum/arkanum,ghcr.io/ocram85/arkanum,codeberg.org/arkanum/arkanum'
|
||||
# logins for deployment targets
|
||||
- publish_logins: &publish_logins
|
||||
# Default DockerHub login
|
||||
- registry: https://index.docker.io/v1/
|
||||
username:
|
||||
from_secret: docker_user
|
||||
password:
|
||||
from_secret: docker_passwd
|
||||
# Additional Quay.IO login
|
||||
- registry: https://gitea.ocram85.com
|
||||
username:
|
||||
from_secret: gitea_user
|
||||
password:
|
||||
from_secret: gitea_passwd
|
||||
# GitHub Container Registry
|
||||
- registry: https://ghcr.io
|
||||
username:
|
||||
from_secret: github_user
|
||||
password:
|
||||
from_secret: github_passwd
|
||||
# Codeberg
|
||||
- registry: https://codeberg.org
|
||||
username:
|
||||
from_secret: codeberg_user
|
||||
password:
|
||||
from_secret: codeberg_passwd
|
||||
|
||||
|
||||
steps:
|
||||
# TODO: Enable this in upcoming PRs.
|
||||
#check-editorconfig:
|
||||
# image: woodpeckerci/plugin-editorconfig-checker:0.2
|
||||
# pull: true
|
||||
|
||||
test:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
dry_run: true
|
||||
registry: gitea.ocram85.com
|
||||
repo: test
|
||||
dockerfile: Dockerfile
|
||||
platforms: linux/amd64
|
||||
auto_tag: true
|
||||
build_args:
|
||||
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
|
||||
- TAG=${CI_COMMIT_TAG}
|
||||
when:
|
||||
event: pull_request
|
||||
branch: ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
publish:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
repo: *publish_repos
|
||||
dockerfile: Dockerfile
|
||||
platforms: linux/amd64
|
||||
auto_tag: true
|
||||
logins: *publish_logins
|
||||
build_args:
|
||||
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
|
||||
- TAG=${CI_COMMIT_TAG}
|
||||
when:
|
||||
event: [push, tag, cron]
|
||||
branch: ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
build-next:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
repo: *publish_repos
|
||||
dockerfile: Dockerfile
|
||||
platforms: linux/amd64
|
||||
tag: next
|
||||
logins: *publish_logins
|
||||
build_args:
|
||||
- VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
|
||||
- TAG=${CI_COMMIT_TAG}
|
||||
when:
|
||||
event: [pull_request]
|
||||
|
||||
# TODO: Remove old plugin in next release tag
|
||||
#gitea-release:
|
||||
# image: plugins/gitea-release
|
||||
# settings:
|
||||
# api_key:
|
||||
# from_secret: ci_token
|
||||
# base_url: https://gitea.ocram85.com
|
||||
# title: ${CI_COMMIT_TAG}
|
||||
# note: "> :bulb: **Note:** Please refer to [CHANGELOG.md](src/branch/${CI_REPO_DEFAULT_BRANCH}/CHANGELOG.md) for details."
|
||||
# when:
|
||||
# event: [tag]
|
||||
# branch: ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
forge-release:
|
||||
image: woodpeckerci/plugin-release
|
||||
settings:
|
||||
api_key:
|
||||
from_secret: ci_token
|
||||
title: ${CI_COMMIT_TAG}
|
||||
note: "> :bulb: **Note:** Please refer to [CHANGELOG.md](src/branch/${CI_REPO_DEFAULT_BRANCH}/CHANGELOG.md) for details."
|
||||
when:
|
||||
event: [tag]
|
||||
branch: ${CI_REPO_DEFAULT_BRANCH}
|
68
.woodpecker/docs.yml
Normal file
@ -0,0 +1,68 @@
|
||||
when:
|
||||
- event: [pull_request, tag, cron]
|
||||
- event: push
|
||||
branch:
|
||||
- ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
variables:
|
||||
- &build_plugin 'woodpeckerci/plugin-docker-buildx:5.2.1'
|
||||
# deployment targets
|
||||
- &publish_repos 'ocram85/arkanum-docs,gitea.ocram85.com/arkanum/arkanum-docs'
|
||||
# logins for deployment targets
|
||||
- publish_logins: &publish_logins
|
||||
# Default DockerHub login
|
||||
- registry: https://index.docker.io/v1/
|
||||
username:
|
||||
from_secret: docker_user
|
||||
password:
|
||||
from_secret: docker_passwd
|
||||
# Additional Quay.IO login
|
||||
- registry: https://gitea.ocram85.com
|
||||
username:
|
||||
from_secret: gitea_user
|
||||
password:
|
||||
from_secret: gitea_passwd
|
||||
steps:
|
||||
test:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
dry_run: true
|
||||
registry: gitea.ocram85.com
|
||||
repo: test
|
||||
dockerfile: Dockerfile.vitepress
|
||||
platforms: linux/amd64
|
||||
auto_tag: true
|
||||
build_args:
|
||||
- CI=${CI}
|
||||
when:
|
||||
event: pull_request
|
||||
branch: ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
publish:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
repo: *publish_repos
|
||||
dockerfile: Dockerfile.vitepress
|
||||
platforms: linux/amd64
|
||||
auto_tag: true
|
||||
logins: *publish_logins
|
||||
#build_args:
|
||||
# - VERSION=${CI_COMMIT_TAG:-PR ${CI_COMMIT_PULL_REQUEST}}
|
||||
# - TAG=${CI_COMMIT_TAG}
|
||||
when:
|
||||
event: [push, tag, cron]
|
||||
branch: ${CI_REPO_DEFAULT_BRANCH}
|
||||
|
||||
build-next:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
repo: *publish_repos
|
||||
dockerfile: Dockerfile.vitepress
|
||||
platforms: linux/amd64
|
||||
tag: next
|
||||
logins: *publish_logins
|
||||
build_args:
|
||||
- CI=${CI}
|
||||
- CI_COMMIT_PULL_REQUEST=${CI_COMMIT_PULL_REQUEST}
|
||||
when:
|
||||
event: [pull_request]
|
19
.woodpecker/release-helper.yml
Normal file
@ -0,0 +1,19 @@
|
||||
depends_on:
|
||||
- ci
|
||||
- docs
|
||||
|
||||
when:
|
||||
- event: push
|
||||
branch:
|
||||
- ${CI_REPO_DEFAULT_BRANCH}
|
||||
- event: manual
|
||||
evaluate: TASK == "release-helper"
|
||||
|
||||
steps:
|
||||
release-helper:
|
||||
image: woodpeckerci/plugin-ready-release-go:3.1.3
|
||||
settings:
|
||||
debug: true
|
||||
git_email: noreply@ocram85.com
|
||||
forge_token:
|
||||
from_secret: ci_token
|
285
CHANGELOG.md
@ -1,57 +1,240 @@
|
||||
## [v0.1.0](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.1.0) - 2022-11-25
|
||||
## [v1.8.3](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.8.3) - 2025-01-14
|
||||
|
||||
* 📦 BUILD
|
||||
* sync pipeline build args (#28)
|
||||
* 📚 DOCS
|
||||
* adds Readme content to prepare Github mirror (#26)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update caddy docker tag to v2.9.1 (#158)
|
||||
- Chore(deps): update dependency typescript to v5.7.3 (#157)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.96.2 (#156)
|
||||
- Chore(deps): update oven/bun docker tag to v1.1.43 (#155)
|
||||
|
||||
## [v0.0.1](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.0.1) - 2022-11-22
|
||||
## [v1.8.2](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.8.2) - 2024-12-12
|
||||
|
||||
* 🐛 BUGFIXES
|
||||
* fixes logo size (#22)
|
||||
* ✨ FEATURES
|
||||
* adds FiraCode NerdFont (#9)
|
||||
* adds setCode helper (#6)
|
||||
* add system gitconfig (#4)
|
||||
* add bash-completion and motd handling (#2)
|
||||
* 🛠️ ENHANCEMENTS
|
||||
* Splits extension install into seperate function (#23)
|
||||
* Adds readme content (#21)
|
||||
* Rename install script to arkanum (#18)
|
||||
* adds missing packages required by dotnet (#3)
|
||||
* 📦 BUILD
|
||||
* set image labels (#24)
|
||||
* 🤖 DEPENDENCIES
|
||||
* Adds renovate-bot (#11)
|
||||
* update baseimage 4.8.3 (#5)
|
||||
* 📚 DOCS
|
||||
* update refs in Readme (#17)
|
||||
* Updates Readme content (#7)
|
||||
* ⚙️ META
|
||||
* adds AGPLv3 license (#20)
|
||||
* Adds gitea changelog config (#19)
|
||||
* rename project to Arkanum (#16)
|
||||
* update PR template wording (#15)
|
||||
* Add woodpecker manager in renovate-bot (#14)
|
||||
* fixes logo file path (#8)
|
||||
* Adds basic container setup with pipeline (#1)
|
||||
- 🐛 BUGFIXES
|
||||
- Update missing lib (#153)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v5.1.0 (#152)
|
||||
- Chore(deps): update dependency prettier to v3.4.2 (#151)
|
||||
|
||||
## [v0.1.1](https://gitea.ocram85.com/CodeServer/arkanum/releases/tag/v0.1.1) - 2023-01-02
|
||||
## [v1.8.1](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.8.1) - 2024-12-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 FiraCode font loader (#147)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update dependency prettier to v3.4.1 (#148)
|
||||
- Chore(deps): update dependency typescript to v5.7.2 (#145)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.95.3 (#144)
|
||||
- Chore(deps): update oven/bun docker tag to v1.1.38 (#143)
|
||||
|
||||
* 🐛 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)
|
||||
## [v1.8.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.8.0) - 2024-11-21
|
||||
|
||||
- ✨ FEATURES
|
||||
- Add session helper (#141)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Move additional packages install to dockerfile (#138)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.95.2 (#139)
|
||||
- Chore(deps): update dependency vitepress to v1.5.0 (#137)
|
||||
- ⚙️ META
|
||||
- Pin exact bun version (#140)
|
||||
|
||||
## [v1.7.1](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.7.1) - 2024-10-23
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Move file binary install to powershell command (#134)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Bump golang version (#135)
|
||||
|
||||
## [v1.7.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.7.0) - 2024-10-22
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Adds file binary to supplement fix Publish-Module pwsh command. (#132)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v5 (#131)
|
||||
- Chore(deps): update dependency typescript to v5.6.3 (#129)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.93.1 (#127)
|
||||
- Chore(deps): update dependency typescript to v5.6.2 (#126)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.92.2 (#125)
|
||||
- Chore(deps): pin dependencies (#124)
|
||||
|
||||
## [v1.6.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.6.0) - 2024-07-31
|
||||
|
||||
- ✨ FEATURES
|
||||
- Add arkanum branding for code-server (#120)
|
||||
- Add lazygit (#116)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Update brand assets (#121)
|
||||
- Migrate codeberg organization to arkanum (#117)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v4.2.0 (#119)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.91.1 (#118)
|
||||
- Chore(deps): update dependency rimraf to v6 (#115)
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v4.1.0 (#114)
|
||||
- Add renovate reviewer (#113)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.91.0 (#112)
|
||||
|
||||
## [v1.5.3](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.5.3) - 2024-06-20
|
||||
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Update blog + bump golang (#108)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v4 (#110)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.90.2 (#109)
|
||||
- Chore(deps): update caddy docker tag to v2.8.4 (#106)
|
||||
- 📚 DOCS
|
||||
- Extend blog card layout (#107)
|
||||
|
||||
## [v1.5.2](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.5.2) - 2024-06-04
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Fix typo (#104)
|
||||
- ✨ FEATURES
|
||||
- Add blog feature to docs (#101)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Add gitea icon (#102)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.89.1 (#100)
|
||||
|
||||
## [v1.5.1](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.5.1) - 2024-05-22
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Fix starship prompt installation (#95)
|
||||
- ✨ FEATURES
|
||||
- Add Arkanum.dev site with docs (#97)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v4 (#98)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.89.0 (#96)
|
||||
- Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v3 (#93)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.22.1 (#91)
|
||||
|
||||
## [v1.5.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.5.0) - 2024-02-09
|
||||
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Always install latest extension version (#85)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Update quay.io/linuxserver.io/code-server Docker tag to v4.20.1 (#88)
|
||||
- Update quay.io/linuxserver.io/code-server Docker tag to v4.20.0 (#86)
|
||||
- ⚙️ META
|
||||
- Add more gitignore items (#89)
|
||||
|
||||
## [v1.0.2](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.0.2) - 2023-12-18
|
||||
|
||||
- ✨ FEATURES
|
||||
- Add bun installer (#81)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Bump golang version (#80)
|
||||
- Bump default extensions version (#76)
|
||||
- 📦 BUILD
|
||||
- Upd/woodpeckerPluging (#79)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Update quay.io/linuxserver.io/code-server Docker tag to v4.19.1 (#77)
|
||||
- 📚 DOCS
|
||||
- Fix typo in arkanum cli help (#78)
|
||||
- ⚙️ META
|
||||
- Updatest gitea meta files (#75)
|
||||
|
||||
## [v1.0.1](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.0.1) - 2023-11-12
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Fix pwsh install package (#72)
|
||||
- 📦 BUILD
|
||||
- Avoid duplicate ci runs (#73)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Update quay.io/linuxserver.io/code-server Docker tag to v4.18.0 (#70)
|
||||
|
||||
## [v1.0.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.0.0) - 2023-09-15
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Fix git config arguments (#68)
|
||||
- Fix NodeJs install bug (#67)
|
||||
- Fix pwsh install when called as first command (#60)
|
||||
- Fix missing volta command (#58)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Extends arkanum command and option structure (#62)
|
||||
- 📦 BUILD
|
||||
- Add addiontal container image deployment targets (#63)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Update quay.io/linuxserver.io/code-server Docker tag to v4.16.1 (#59)
|
||||
- Update quay.io/linuxserver.io/code-server Docker tag to v4.15.0 (#57)
|
||||
|
||||
## [v0.4.0](https://gitea.ocram85.com/arkanum/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)
|
||||
|
||||
## [v0.3.1](https://gitea.ocram85.com/arkanum/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.3.0](https://gitea.ocram85.com/arkanum/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.2.0](https://gitea.ocram85.com/arkanum/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.1.1](https://gitea.ocram85.com/arkanum/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.1.0](https://gitea.ocram85.com/arkanum/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/arkanum/arkanum/releases/tag/v0.0.1) - 2022-11-22
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- fixes logo size (#22)
|
||||
- ✨ FEATURES
|
||||
- adds FiraCode NerdFont (#9)
|
||||
- adds setCode helper (#6)
|
||||
- add system gitconfig (#4)
|
||||
- add bash-completion and motd handling (#2)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Splits extension install into seperate function (#23)
|
||||
- Adds readme content (#21)
|
||||
- Rename install script to arkanum (#18)
|
||||
- adds missing packages required by dotnet (#3)
|
||||
- 📦 BUILD
|
||||
- set image labels (#24)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Adds renovate-bot (#11)
|
||||
- update baseimage 4.8.3 (#5)
|
||||
- 📚 DOCS
|
||||
- update refs in Readme (#17)
|
||||
- Updates Readme content (#7)
|
||||
- ⚙️ META
|
||||
- adds AGPLv3 license (#20)
|
||||
- Adds gitea changelog config (#19)
|
||||
- rename project to Arkanum (#16)
|
||||
- update PR template wording (#15)
|
||||
- Add woodpecker manager in renovate-bot (#14)
|
||||
- fixes logo file path (#8)
|
||||
- Adds basic container setup with pipeline (#1)
|
||||
|
7
Caddyfile
Normal file
@ -0,0 +1,7 @@
|
||||
:8080 {
|
||||
bind 0.0.0.0
|
||||
root * /arkanum-docs
|
||||
encode gzip zstd
|
||||
try_files {path}.html {path} /
|
||||
file_server
|
||||
}
|
55
Dockerfile
@ -1,4 +1,4 @@
|
||||
FROM quay.io/linuxserver.io/code-server:4.9.1
|
||||
FROM quay.io/linuxserver.io/code-server:4.97.2
|
||||
|
||||
#LABEL build_version=""
|
||||
LABEL maintainer="OCram85"
|
||||
@ -13,26 +13,31 @@ 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"
|
||||
LABEL org.opencontainers.image.documentation="https://gitea.ocram85.com/CodeServer/arkanum"
|
||||
LABEL org.opencontainers.image.url="https://gitea.ocram85.com/arkanum/arkanum"
|
||||
LABEL org.opencontainers.image.source="https://gitea.ocram85.com/arkanum/arkanum.git"
|
||||
LABEL org.opencontainers.image.documentation="https://gitea.ocram85.com/arkanum/arkanum"
|
||||
|
||||
#region starship
|
||||
RUN \
|
||||
echo "**** install starship prompt ****" && \
|
||||
curl -sS https://starship.rs/install.sh | sh -s -- -f && \
|
||||
curl -sS -o /tmp/install.sh https://starship.rs/install.sh && \
|
||||
chmod +x /tmp/install.sh && \
|
||||
/tmp/install.sh --verbose --force --version latest && \
|
||||
rm -f /tmp/install.sh && \
|
||||
echo "eval \"\$(starship init bash)\"" >> /etc/bash.bashrc
|
||||
|
||||
ENV STARSHIP_CONFIG=/etc/starship.toml
|
||||
|
||||
COPY starship.toml /etc/starship.toml
|
||||
#endregion starship
|
||||
|
||||
#region git
|
||||
ADD gitconfig-system /etc/gitconfig
|
||||
RUN \
|
||||
echo "**** setup git ****" && \
|
||||
# using prepared systemwide config file instead.
|
||||
#git config --system credential.helper store && \
|
||||
echo 'source /usr/share/bash-completion/completions/git' >> /etc/bash.bashrc
|
||||
#endregion git
|
||||
|
||||
#region cli
|
||||
ADD arkanum /usr/bin/
|
||||
ADD arkanum-completion /etc/bash_completion.d/
|
||||
RUN \
|
||||
@ -40,11 +45,39 @@ RUN \
|
||||
chmod +x /etc/bash_completion.d/arkanum-completion && \
|
||||
echo 'source /etc/bash_completion.d/arkanum-completion' >> /etc/bash.bashrc && \
|
||||
touch "$HOME/enable_motd" && \
|
||||
echo "if [[ ! -e \"$HOME/data/User/settings.json\" ]]; then arkanum --install-extensions && arkanum --reset-codesetting && \
|
||||
echo "if [[ ! -e \"$HOME/data/User/settings.json\" ]]; then arkanum config install-extensions && arkanum config reset-codesettings && \
|
||||
echo -e \"🧙 \\e[32markanum\\e[0m: Please reload Arkanum to finalize the setup...\" && read foo; fi" >> /etc/bash.bashrc && \
|
||||
echo "if [[ -e \"$HOME/enable_motd\" ]]; then echo -e \"Use 🧙 \\e[32m'arkanum'\\e[0m to install missing runtimes like dotnet or NodeJs.\"; fi" >> /etc/bash.bashrc
|
||||
#endregion cli
|
||||
|
||||
WORKDIR /app/code-server/lib/vscode/out/vs/workbench
|
||||
#region firacode
|
||||
|
||||
# TODO: validate dir: /lib/vscode/out/vs/code/browser/workbench/workbench.css
|
||||
#WORKDIR /app/code-server/lib/vscode/out/vs/workbench
|
||||
WORKDIR /app/code-server/lib/vscode/out/vs/code/browser/workbench
|
||||
ADD FiraCode/fonts/* ./fonts/
|
||||
ADD FiraCode/fonts.css ./
|
||||
RUN cat fonts.css >> workbench.web.main.css
|
||||
RUN cat fonts.css >> workbench.css
|
||||
#endregion firacode
|
||||
|
||||
#region code-server
|
||||
WORKDIR /
|
||||
# remove code-server specific files to override with branded values.
|
||||
# changes product images + app name
|
||||
RUN \
|
||||
rm -rf /app/code-server/src/browser/media && \
|
||||
rm -f /etc/s6-overlay/s6-rc.d/svc-code-server/run && \
|
||||
echo 'alias summon="code-server"' >> /etc/bash.bashrc
|
||||
|
||||
COPY code-server/media /app/code-server/src/browser/media
|
||||
COPY code-server/root/etc/s6-overlay/s6-rc.d/svc-code-server/run /etc/s6-overlay/s6-rc.d/svc-code-server/run
|
||||
#endregion code-server
|
||||
|
||||
#region add-packages
|
||||
RUN \
|
||||
apt-get update && \
|
||||
apt-get install --no-install-recommends -y \
|
||||
file \
|
||||
make && \
|
||||
apt-get clean
|
||||
#endregion add-packages
|
||||
|
17
Dockerfile.vitepress
Normal file
@ -0,0 +1,17 @@
|
||||
FROM oven/bun:1.2.4 AS builder
|
||||
|
||||
ARG CI
|
||||
ARG CI_COMMIT_PULL_REQUEST
|
||||
|
||||
COPY . /app
|
||||
WORKDIR /app
|
||||
ENV NODE_ENV=production
|
||||
RUN bun install --frozen-lockfile
|
||||
RUN bun run --vite docs:build
|
||||
|
||||
FROM caddy:2.9.1-alpine AS prod
|
||||
|
||||
COPY --from=builder /app/docs/.vitepress/dist/ /arkanum-docs/
|
||||
COPY Caddyfile /etc/caddy
|
||||
HEALTHCHECK --interval=15s --timeout=3s \
|
||||
CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1
|
145
README.md
@ -1,12 +1,7 @@
|
||||
<p align="right">
|
||||
<img src="http://forthebadge.com/images/badges/built-with-love.svg">
|
||||
<img src="http://forthebadge.com/images/badges/for-you.svg">
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://gitea.ocram85.com/CodeServer/arkanum/">
|
||||
<a href="https://gitea.ocram85.com/arkanum/arkanum/">
|
||||
<img
|
||||
src="assets/social-logo.png"
|
||||
src="https://gitea.ocram85.com/arkanum/arkanum/raw/branch/master/assets/social-logo.png"
|
||||
alt="Container"
|
||||
>
|
||||
</a>
|
||||
@ -21,22 +16,36 @@
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
<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 href="https://ci.ocram85.com/arkanum/arkanum">
|
||||
<img src="https://ci.ocram85.com/api/badges/arkanum/arkanum/status.svg" alt="Master Branch Build Status">
|
||||
</a>
|
||||
<a href="https://matrix.to/#/#arkanum:matrix.org" rel="noopener" target="_blank">
|
||||
<img src="https://matrix.to/img/matrix-badge.svg" alt="Chat on Matrix">
|
||||
</a>
|
||||
<img alt="Matrix" src="https://img.shields.io/matrix/arkanum%3Amatrix.org">
|
||||
|
||||
</p>
|
||||
|
||||
## 🤖 Quickstart
|
||||
|
||||
### 1. ⚡ Get the image 📦
|
||||
|
||||
You can download the image from the gitea embedded container registry: `gitea.ocram85.com/codeserver/arkanum` with these tags:
|
||||
You can download the image from the gitea embedded container registry: `gitea.ocram85.com/arkanum/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.
|
||||
- `1`, `0.1`, `0.1.0`, `1.0.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.**
|
||||
> **💡 NOTE: See the [packages page](https://gitea.ocram85.com/arkanum/-/packages/container/arkanum/latest) for latest version and all other available tags.**
|
||||
|
||||
The container images are also published to these registries:
|
||||
|
||||
- [Docker Hub](https://hub.docker.com/r/ocram85/arkanum)
|
||||
- Pull Endpoint: `ocram85/arkanum`
|
||||
- [GitHub Container Registry](https://github.com/OCram85/arkanum/pkgs/container/arkanum)
|
||||
- Pull Endpoint: `ghcr.io/ocram85/arkanum`
|
||||
- [Codeberg Packages](https://codeberg.org/arkanum/-/packages/container/arkanum/next)
|
||||
- Pull Endpoint: `codeberg.org/arkanum/arkanum`
|
||||
|
||||
### 2.a Run as Docker Swarm Stack
|
||||
|
||||
@ -52,10 +61,10 @@ Therefore you need
|
||||
> a trusted + **secure https connection**.
|
||||
|
||||
```yaml
|
||||
version: "3.8"
|
||||
version: '3.8'
|
||||
services:
|
||||
arkanum:
|
||||
image: gitea.ocram85.com/codeserver/arkanum:0.2.0
|
||||
image: gitea.ocram85.com/arkanum/arkanum:1
|
||||
environment:
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
@ -69,18 +78,19 @@ services:
|
||||
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"
|
||||
- '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
|
||||
# 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
|
||||
@ -95,6 +105,7 @@ networks:
|
||||
```
|
||||
|
||||
> 💡 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.
|
||||
@ -103,10 +114,10 @@ See their [docs](https://github.com/linuxserver/docker-code-server#parameters) a
|
||||
|
||||
```yaml
|
||||
---
|
||||
version: "3.8"
|
||||
version: '3.8'
|
||||
services:
|
||||
arkanum:
|
||||
image: gitea.ocram85.com/codeserver/arkanum:0.2.0
|
||||
image: gitea.ocram85.com/arkanum/arkanum:1
|
||||
container_name: code-server
|
||||
environment:
|
||||
- PUID=1000
|
||||
@ -130,8 +141,7 @@ services:
|
||||
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"
|
||||
arkanum git setup "my-name" "my-email"
|
||||
```
|
||||
|
||||
And that's it. Now you're ready use arkanum as your daily remote code editor. 😄
|
||||
@ -139,9 +149,9 @@ 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/">
|
||||
<a href="https://gitea.ocram85.com/arkanum/arkanum/">
|
||||
<img
|
||||
src="assets/screen1.png"
|
||||
src="https://gitea.ocram85.com/arkanum/arkanum/raw/branch/master/assets/screen1.png"
|
||||
alt="Screenshot1"
|
||||
>
|
||||
</a>
|
||||
@ -169,25 +179,50 @@ Added `arkanum` to help installing common runtimes in container.
|
||||
This helps reducing the image size.
|
||||
|
||||
```
|
||||
🧙 arkanum ✨🌌☄️💥 is used to install optional runtimes for developing in a
|
||||
code-server container environment.
|
||||
🧙 arkanum ✨🌌☄️💥 is used to install optional tools for developing in a
|
||||
code-server container environment.
|
||||
|
||||
Syntax: arkanum RUNTIME ...
|
||||
RUNTIME [dotnet|golang|nodejs|powershell]
|
||||
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.
|
||||
powershell Installs latest PowerShell LTS version.
|
||||
--disable-motd Disables hint in new bash terminal.
|
||||
--install-extensions Installs predefined recommended extensions.
|
||||
--reset-codesetting Sets VS Code user setting with basic (Fira Code).
|
||||
-h Prints this help message.
|
||||
Syntax: arkanum <flags> COMMAND OPTION ARGUMENT
|
||||
COMMAND
|
||||
config The config command is used to modify arkanum itself.
|
||||
git The git command is a wrapper for git helpers.
|
||||
install The install command is used to add different tools
|
||||
help Shows this help text.
|
||||
|
||||
Example 1: arkanum dotnet
|
||||
Example 2: arkanum golang nodejs
|
||||
Example 3: arkanum --disable-motd
|
||||
OPTION
|
||||
config:
|
||||
disable-motd Disables hint in new bash terminal.
|
||||
install-extensions Installs predefined recommended extensions.
|
||||
reset-codesettings Sets VS Code user setting with basic (Fira Code).
|
||||
|
||||
git:
|
||||
setup Takes two arguments to setup the git client:
|
||||
1) Username
|
||||
2) Email address
|
||||
|
||||
install:
|
||||
docker-cli Installs the latest docker-cli.
|
||||
dotnet Installs latest LTS dotnet core sdk + runtime.
|
||||
gitea Installs gitea tools like changelog and tea.
|
||||
golang Installs golang 1.21.5.
|
||||
bun Installs latest bun version.
|
||||
nodejs Installs latest NodeJs LTS version using Volta.
|
||||
volta Installs Volta as NodeJS version manager.
|
||||
powershell Installs latest PowerShell LTS version.
|
||||
lazygit Installs latest Lazygit binary.
|
||||
|
||||
session:
|
||||
save Adds items from the install command to the session config.
|
||||
restore Restores the saved session.
|
||||
reset Resets the session config.
|
||||
show Show currently defined session content.
|
||||
|
||||
Example 1: arkanum git setup "my-name" "my-email"
|
||||
Example 2: arkanum install golang
|
||||
Example 3: arkanum config disable-motd
|
||||
Example 4: arkanum session save lazygit powershell gitea
|
||||
```
|
||||
|
||||
### 📝 Fira Code (NerdFont patched)
|
||||
|
||||
Added FiraCode as default font in editor and integrated terminal. The font files are embedded and can be used without local installation.
|
||||
@ -199,13 +234,13 @@ If your start the container or log in the first time, a default config file is d
|
||||
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
|
||||
- Use _One Dark Pro Darker_ theme
|
||||
- Use _vscode-icons_ icon set
|
||||
- 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 starship prompt.
|
||||
- Enables font ligatures
|
||||
- Enables *auto save* and *format on save*.
|
||||
- Enables _auto save_ and _format on save_.
|
||||
- Disables auto update for extension.
|
||||
- Disables VSCode telemetry
|
||||
- Disable confirm message for sync branches.
|
||||
@ -218,6 +253,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
|
||||
@ -225,18 +265,19 @@ following command:
|
||||
|
||||
```bash
|
||||
# restart the installation
|
||||
arkanum --install-extensions
|
||||
arkanum config install-extensions
|
||||
# Optional: reset the vscode user setting
|
||||
arkanum --reset-codesetting
|
||||
arkanum config reset-codesettings
|
||||
# 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
|
||||
[open Gitea repository](https://gitea.ocram85.com/arkanum/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
|
||||
@ -244,11 +285,11 @@ in the long term. We urge you to read about the
|
||||
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
|
||||
[check this resource](https://gitea.ocram85.com/arkanum/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
|
||||
without our permission. We do not consent to GitHub's use of this project's
|
||||
code in Copilot.
|
||||
|
||||

|
||||
@ -259,14 +300,14 @@ 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]`
|
||||
- [linuxserver/docker-code-server](https://github.com/linuxserver/docker-code-server) - docker image based for *coder/code-server*. `[GPL-3.0]`
|
||||
- [linuxserver/docker-code-server](https://github.com/linuxserver/docker-code-server) - docker image based for _coder/code-server_. `[GPL-3.0]`
|
||||
- A huge thanks to tuanpham for sharing his [code-server font patch](https://github.com/tuanpham-dev/code-server-font-patch).
|
||||
|
||||
## ⚖️ License (AGPLv3)
|
||||
|
||||

|
||||
|
||||
```
|
||||
```text
|
||||
Arkanum - Code-Server container optimized for daily use.
|
||||
Copyright (C) 2022 "OCram85 <me@ocram85.com>"
|
||||
|
||||
|
345
arkanum
@ -2,33 +2,61 @@
|
||||
|
||||
set -e
|
||||
|
||||
# region usage
|
||||
function showHelp() {
|
||||
cat << HELP
|
||||
🧙 arkanum ✨🌌☄️💥 is used to install optional runtimes for developing in a
|
||||
🧙 arkanum ✨🌌☄️💥 is used to install optional tools for developing in a
|
||||
code-server container environment.
|
||||
|
||||
Syntax: arkanum RUNTIME ...
|
||||
RUNTIME [dotnet|golang|nodejs|powershell]
|
||||
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.
|
||||
powershell Installs latest PowerShell LTS version.
|
||||
--disable-motd Disables hint in new bash terminal.
|
||||
--install-extensions Installs predefined recommended extensions.
|
||||
--reset-codesetting Sets VS Code user setting with basic (Fira Code).
|
||||
-h Prints this help message.
|
||||
Syntax: arkanum <flags> COMMAND OPTION ARGUMENT
|
||||
COMMAND
|
||||
config The config command is used to modify arkanum itself.
|
||||
git The git command is a wrapper for git helpers.
|
||||
install The install command is used to add different tools
|
||||
help Shows this help text.
|
||||
|
||||
Example 1: arkanum dotnet
|
||||
Example 2: arkanum golang nodejs
|
||||
Example 3: arkanum --disable-motd
|
||||
OPTION
|
||||
config:
|
||||
disable-motd Disables hint in new bash terminal.
|
||||
install-extensions Installs predefined recommended extensions.
|
||||
reset-codesettings Sets VS Code user setting with basic (Fira Code).
|
||||
|
||||
git:
|
||||
setup Takes two arguments to setup the git client:
|
||||
1) Username
|
||||
2) Email address
|
||||
|
||||
install:
|
||||
docker-cli Installs the latest docker-cli.
|
||||
dotnet Installs latest LTS dotnet core sdk + runtime.
|
||||
gitea Installs gitea tools like changelog and tea.
|
||||
golang Installs golang 1.21.5.
|
||||
bun Installs latest bun version.
|
||||
nodejs Installs latest NodeJs LTS version using Volta.
|
||||
volta Installs Volta as NodeJS version manager.
|
||||
powershell Installs latest PowerShell LTS version.
|
||||
lazygit Installs latest Lazygit binary.
|
||||
|
||||
session:
|
||||
save Adds items from the install command to the session config.
|
||||
restore Restores the saved session.
|
||||
reset Resets the session config.
|
||||
show Show currently defined session content.
|
||||
|
||||
Example 1: arkanum git setup "my-name" "my-email"
|
||||
Example 2: arkanum install golang
|
||||
Example 3: arkanum config disable-motd
|
||||
Example 4: arkanum session save lazygit powershell gitea
|
||||
HELP
|
||||
}
|
||||
# endregion usage
|
||||
|
||||
function disableMotd() {
|
||||
if [[ -e "$HOME/enable_motd" ]]; then
|
||||
say "Disabling 'arkanum' motd..." "disableMotd"
|
||||
rm -f "$HOME/enable_motd"
|
||||
else
|
||||
sayW "Arkanum Motd already disabled" "disableMotd"
|
||||
fi
|
||||
}
|
||||
|
||||
@ -48,18 +76,48 @@ 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 -E apt-get update > /dev/null
|
||||
sudo -E apt-get install --no-install-recommends -y \
|
||||
libicu70
|
||||
libicu74
|
||||
|
||||
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"
|
||||
@ -73,16 +131,17 @@ function instDotNet() {
|
||||
|
||||
function instGoLang() {
|
||||
if [[ -z "$1" ]]; then
|
||||
GOVERSION="1.19.3"
|
||||
GOVERSION="1.23.2"
|
||||
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
|
||||
@ -90,32 +149,45 @@ function instGoLang() {
|
||||
say "Please reload bash profile to finalize." "GoLang"
|
||||
}
|
||||
|
||||
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"
|
||||
function instBun() {
|
||||
say "Installing Bun requirements..." "Bun"
|
||||
sudo -E apt-get update > /dev/null
|
||||
sudo -E apt-get install --no-install-recommends -y \
|
||||
nodejs
|
||||
|
||||
say "Cleaning up..." "NodeJs"
|
||||
unzip
|
||||
sudo -E apt-get clean
|
||||
sudo rm -rf \
|
||||
/tmp/* \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/*
|
||||
say "Installing Bun binaries..." "Bun"
|
||||
curl -#fSL https://bun.sh/install | bash
|
||||
say "Adding bun binary to profile..." "Bun"
|
||||
echo 'export BUN_INSTALL=$HOME/.bun' | sudo tee -a /etc/bash.bashrc > /dev/null
|
||||
echo 'export PATH=$BUN_INSTALL/bin:$PATH' | sudo tee -a /etc/bash.bashrc > /dev/null
|
||||
say "done." "Bun"
|
||||
say "Please reload bash profile to finalize." "Bun"
|
||||
}
|
||||
|
||||
say "done." "NodeJs"
|
||||
function instNodeJs() {
|
||||
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
|
||||
# shellcheck disable=SC1090
|
||||
source ~/.profile
|
||||
say "done." "Volta"
|
||||
}
|
||||
|
||||
function instPwsh() {
|
||||
say "Installing PowerShell requirements..." "PowerShell"
|
||||
sudo -E apt-get update > /dev/null
|
||||
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
|
||||
@ -123,50 +195,64 @@ function instPwsh() {
|
||||
|
||||
say "Installing PowerShell..." "PowerShell"
|
||||
# Install PowerShell
|
||||
sudo -E apt-get install --no-install-recommends -y powershell
|
||||
sudo -E apt-get install --no-install-recommends -y \
|
||||
powershell-lts
|
||||
|
||||
say "done." "PowerShell"
|
||||
}
|
||||
|
||||
function instGiteaTools() {
|
||||
TEA_VERSION="0.9.0"
|
||||
CHANGELOG_VERSION="main"
|
||||
say "Installing Gitea tools..." "Gitea"
|
||||
sudo -E 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"
|
||||
}
|
||||
|
||||
function installLazyGit() {
|
||||
say "Installing latest lazygit version..." "Lazygit"
|
||||
LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[^"]*')
|
||||
sudo -E curl -#fSL "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz" -o /tmp/lazygit.tar.gz
|
||||
#mkdir -p /tmp/lazygit
|
||||
cd /tmp
|
||||
tar xf /tmp/lazygit.tar.gz lazygit
|
||||
say "Installing Lazygit binary" "Lazygit"
|
||||
sudo install /tmp/lazygit /usr/local/bin
|
||||
say "Removing lazygit cache files..." "Lazygit"
|
||||
sudo rm -f /tmp/lazygit.tar.gz
|
||||
rm -rf /tmp/lazygit
|
||||
}
|
||||
|
||||
function instCodeExtension() {
|
||||
say "Downloading required extensions...." "Extension"
|
||||
say "Installing default 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
|
||||
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
|
||||
install-extension eamodio.gitlens --force
|
||||
|
||||
# OneDarkPro
|
||||
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
|
||||
say "Cleaning up 'One Dark Pro' install files" "Extension"
|
||||
rm -f /tmp/zhuangtongfa.material-theme-3.15.6.vsix
|
||||
install-extension zhuangtongfa.material-theme --force
|
||||
|
||||
# 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
|
||||
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"
|
||||
rm -f /tmp/vscode-icons-team.vscode-icons-12.0.1.vsix
|
||||
install-extension vscode-icons-team.vscode-icons --force
|
||||
|
||||
say "done." "Extension"
|
||||
}
|
||||
|
||||
function setCodeSettings() {
|
||||
CODEFILE="$HOME/data/User/settings.json"
|
||||
|
||||
#region code-settings
|
||||
# VSCode user settings file
|
||||
say "Setting VScode base settings.($CODEFILE)" "VSCode"
|
||||
cat <<EOF | tee "$CODEFILE"
|
||||
@ -183,44 +269,159 @@ function setCodeSettings() {
|
||||
"telemetry.telemetryLevel": "off"
|
||||
}
|
||||
EOF
|
||||
#endregion code-settings
|
||||
say "done." "VSCode"
|
||||
}
|
||||
|
||||
function setGitConfig() {
|
||||
#echo "function arg counter is; $#"
|
||||
#echo "function args:$@"
|
||||
|
||||
if [[ "$#" != "4" ]]; then
|
||||
sayE "Invalid arguments given. Please provide '<user>' and '<email>'!" "Git"
|
||||
exit 1
|
||||
fi
|
||||
if [[ -z "$3" ]]; then
|
||||
sayE "Invalid or empty username given!" "Git"
|
||||
exit 1
|
||||
fi
|
||||
if [[ -z "$4" ]]; then
|
||||
sayE "Invalid or empty email given!" "Git"
|
||||
exit 1
|
||||
fi
|
||||
say "Setting global git config..." "Git"
|
||||
git config --global user.name "$3"
|
||||
git config --global user.email "$4"
|
||||
say "Returning global config:" "Git"
|
||||
git config --list --global
|
||||
}
|
||||
|
||||
function saveSession() {
|
||||
SESSION_FILE="$HOME/arkanum-session"
|
||||
if [[ $# -ge 3 ]]; then
|
||||
for item in "${@:3}"; do
|
||||
say "Adding '$item' to your session config" "saveSession"
|
||||
echo "$item" | tee -a "$SESSION_FILE" > /dev/null
|
||||
done
|
||||
else
|
||||
sayE "Unknown parameter count given" "saveSession"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function restoreSession() {
|
||||
SESSION_FILE="$HOME/arkanum-session"
|
||||
if [[ -e "$SESSION_FILE" ]]; then
|
||||
while read item; do
|
||||
say "Restoring '$item'..." "restoreSession"
|
||||
arkanum install "$item"
|
||||
done <"$SESSION_FILE"
|
||||
say "Arkanum session restore completed. 🏁" "restoreSession"
|
||||
else
|
||||
sayE "There is no arkanum session!" "restoreSession"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
function showSession() {
|
||||
SESSION_FILE="$HOME/arkanum-session"
|
||||
say "Trying to read your session config '$SESSION_FILE':" "showSession"
|
||||
if [[ -e "$SESSION_FILE" ]]; then
|
||||
cat "$SESSION_FILE"
|
||||
else
|
||||
sayE "There is no session defined!" "showSession"
|
||||
fi
|
||||
}
|
||||
|
||||
function resetSession() {
|
||||
SESSION_FILE="$HOME/arkanum-session"
|
||||
say "Deleting session file '$SESSION_FILE'..." "resetSession"
|
||||
rm "$SESSION_FILE"
|
||||
}
|
||||
function main() {
|
||||
if [[ "$#" == "0" ]]; then
|
||||
showHelp
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for i in $@; do
|
||||
if [[ "$1" == "-h" ]]; then
|
||||
showHelp
|
||||
exit 0
|
||||
elif [[ "$i" == "dotnet" ]]; then
|
||||
instDotNet
|
||||
elif [[ "$i" == "golang" ]]; then
|
||||
instGoLang
|
||||
elif [[ "$i" == "nodejs" ]]; then
|
||||
instNodeJs
|
||||
elif [[ "$i" == "powershell" ]]; then
|
||||
instPwsh
|
||||
elif [[ "$i" == "gitea" ]]; then
|
||||
instGiteaTools
|
||||
elif [[ "$i" == "--disable-motd" ]]; then
|
||||
# Command filter
|
||||
if [[ "$1" =~ ^help|-h|--h$ ]]; then
|
||||
showHelp
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# CONFIG command
|
||||
if [[ "$1" == "config" ]]; then
|
||||
# disable-motd option
|
||||
if [[ "$2" == "disable-motd" ]]; then
|
||||
disableMotd
|
||||
exit 0
|
||||
elif [[ "$i" == "--install-extensions" ]]; then
|
||||
# install-extensions option
|
||||
elif [[ "$2" == "install-extensions" ]]; then
|
||||
instCodeExtension
|
||||
exit 0
|
||||
elif [[ "$i" == "--reset-codesetting" ]]; then
|
||||
# reset-codesetting option
|
||||
elif [[ "$2" == "reset-codesettings" ]]; then
|
||||
setCodeSettings
|
||||
exit 0
|
||||
else
|
||||
sayE "Unknown parameter value given!($i)."
|
||||
sayE "Unknown option ($2) given for command 'config'!"
|
||||
fi
|
||||
# GIT command
|
||||
elif [[ "$1" == "git" ]]; then
|
||||
# setup option
|
||||
if [[ "$2" == "setup" ]]; then
|
||||
setGitConfig "$@"
|
||||
else
|
||||
sayE "Unknown option ($2) given for command 'git'!"
|
||||
fi
|
||||
# INSTALL command
|
||||
elif [[ "$1" == "install" ]]; then
|
||||
# docker-cli option
|
||||
if [[ "$2" == "docker-cli" ]]; then
|
||||
instDockerCLI
|
||||
elif [[ "$2" == "dotnet" ]]; then
|
||||
instDotNet
|
||||
elif [[ "$2" == "golang" ]]; then
|
||||
instGoLang "$3"
|
||||
elif [[ "$2" == "bun" ]]; then
|
||||
instBun
|
||||
elif [[ "$2" == "nodejs" ]]; then
|
||||
instVolta
|
||||
instNodeJs
|
||||
elif [[ "$2" == "volta" ]]; then
|
||||
instVolta
|
||||
elif [[ "$2" == "powershell" ]]; then
|
||||
instPwsh
|
||||
elif [[ "$2" == "gitea" ]]; then
|
||||
instGiteaTools
|
||||
elif [[ "$2" == "lazygit" ]]; then
|
||||
installLazyGit
|
||||
else
|
||||
sayE "Unknown option ($2) given for command 'install'!"
|
||||
fi
|
||||
elif [[ "$1" == "session" ]]; then
|
||||
# session option
|
||||
if [[ "$2" == "save" ]]; then
|
||||
saveSession "$@"
|
||||
exit 0
|
||||
elif [[ "$2" == "restore" ]]; then
|
||||
restoreSession
|
||||
exit 0
|
||||
elif [[ "$2" == "show" ]]; then
|
||||
showSession
|
||||
exit 0
|
||||
elif [[ "$2" == "reset" ]]; then
|
||||
resetSession
|
||||
exit 0
|
||||
else
|
||||
sayE "Unknown option ($2) given for command 'session'!"
|
||||
fi
|
||||
else
|
||||
sayE "Unknown parameter value given!($1)."
|
||||
showHelp
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
main $@
|
||||
main "$@"
|
||||
|
@ -1,3 +1,43 @@
|
||||
#!/bin/bash
|
||||
#!/bin/env 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
|
||||
|
||||
function _command_completions() {
|
||||
local cur prev
|
||||
cur=${COMP_WORDS[COMP_CWORD]}
|
||||
prev=${COMP_WORDS[COMP_CWORD-1]}
|
||||
|
||||
case ${COMP_CWORD} in
|
||||
1)
|
||||
# shellcheck disable=2207,SC2086
|
||||
COMPREPLY=($(compgen -W "config git install help session" -- ${cur}))
|
||||
;;
|
||||
2)
|
||||
case ${prev} in
|
||||
config)
|
||||
# shellcheck disable=2207,SC2086
|
||||
COMPREPLY=($(compgen -W "disable-motd install-extensions reset-codesettings" -- ${cur}))
|
||||
;;
|
||||
git)
|
||||
# shellcheck disable=2207,SC2086
|
||||
COMPREPLY=($(compgen -W "setup" -- ${cur}))
|
||||
;;
|
||||
install)
|
||||
# shellcheck disable=2207,SC2086
|
||||
COMPREPLY=($(compgen -W "docker-cli dotnet golang bun nodejs volta powershell gitea lazygit" -- ${cur}))
|
||||
;;
|
||||
session)
|
||||
# shellcheck disable=2207,SC2086
|
||||
COMPREPLY=($(compgen -W "save restore show reset" -- ${cur}))
|
||||
;;
|
||||
help)
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
COMPREPLY=()
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
complete -F _command_completions arkanum
|
||||
|
144
assets/arkanum2-favicon-free.svg
Normal file
@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="500.000000pt" height="500.000000pt" viewBox="0 0 500.000000 500.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
|
||||
<g transform="translate(0.000000,500.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M1336 4485 c-14 -8 -24 -9 -20 -4 4 7 -1 7 -15 -1 -12 -6 -19 -15
|
||||
-16 -20 3 -6 0 -7 -8 -5 -17 7 -51 -30 -41 -46 4 -7 3 -10 -4 -6 -9 6 -85
|
||||
-113 -82 -129 1 -4 -3 -10 -8 -13 -15 -9 -73 -117 -67 -124 3 -4 2 -5 -2 -2
|
||||
-3 3 -17 -13 -30 -36 -26 -46 -28 -53 -11 -43 7 5 8 3 4 -5 -5 -7 -11 -10 -14
|
||||
-7 -9 9 -43 -54 -36 -66 5 -7 2 -8 -6 -3 -10 6 -12 4 -7 -9 4 -9 3 -14 -2 -11
|
||||
-10 5 -68 -93 -63 -107 1 -4 -2 -8 -7 -8 -14 0 -102 -160 -95 -173 4 -7 4 -9
|
||||
-1 -5 -10 10 -21 -8 -271 -445 -19 -33 -31 -64 -27 -70 3 -5 1 -7 -5 -4 -6 4
|
||||
-19 -11 -32 -35 -11 -24 -29 -54 -38 -68 -13 -19 -14 -22 -2 -15 8 4 2 -4 -13
|
||||
-19 -17 -16 -27 -33 -23 -42 4 -10 2 -13 -6 -8 -8 5 -9 2 -5 -10 4 -10 3 -15
|
||||
-3 -11 -6 3 -13 -2 -17 -12 -4 -10 -19 -38 -35 -62 -30 -48 -35 -67 -16 -55 7
|
||||
4 8 3 4 -5 -4 -6 -11 -9 -16 -6 -9 6 -127 -194 -122 -207 1 -5 -1 -8 -6 -8 -4
|
||||
0 -19 -21 -32 -47 -14 -27 -27 -50 -31 -53 -15 -14 -39 -82 -39 -113 0 -43 9
|
||||
-69 21 -61 5 3 7 -1 4 -8 -3 -7 19 -53 49 -103 40 -69 57 -89 72 -87 11 2 15
|
||||
0 8 -5 -6 -4 -10 -15 -9 -23 4 -27 41 -80 50 -72 5 4 5 1 1 -6 -4 -7 -2 -20 5
|
||||
-28 6 -8 25 -38 40 -67 15 -29 33 -51 38 -50 6 2 8 -3 5 -10 -2 -7 16 -45 41
|
||||
-86 25 -40 45 -77 45 -82 0 -5 7 -12 15 -15 8 -4 13 -9 10 -13 -5 -9 72 -143
|
||||
88 -153 7 -4 8 -8 3 -8 -11 0 14 -30 26 -30 5 0 6 5 2 12 -5 7 -3 8 5 3 8 -5
|
||||
9 -11 3 -17 -11 -11 -4 -48 9 -48 5 0 8 -3 7 -7 -3 -15 14 -43 23 -37 5 3 6
|
||||
-2 3 -10 -3 -9 -2 -16 4 -16 5 0 13 -11 16 -25 4 -16 11 -23 18 -19 7 5 8 3 3
|
||||
-6 -5 -8 -1 -18 10 -27 11 -7 15 -13 11 -13 -4 0 3 -18 15 -40 12 -21 26 -37
|
||||
30 -34 5 3 6 -1 4 -8 -3 -8 1 -22 10 -33 12 -16 16 -17 23 -7 7 11 10 10 15
|
||||
-3 4 -9 3 -13 -2 -10 -5 3 -12 2 -15 -3 -7 -11 11 -37 25 -37 7 0 14 -7 16
|
||||
-15 4 -13 3 -13 -6 0 -14 20 -14 7 1 -25 6 -14 15 -25 20 -25 4 0 8 -5 8 -10
|
||||
0 -9 29 -63 70 -130 5 -8 57 -99 116 -202 62 -109 111 -185 117 -181 6 3 7 1
|
||||
3 -6 -7 -11 93 -195 102 -187 2 2 14 -7 28 -21 16 -16 32 -23 45 -20 10 3 16
|
||||
1 13 -4 -3 -6 461 -9 1165 -9 806 0 1171 4 1171 11 0 5 5 7 10 4 19 -12 105
|
||||
58 94 77 -3 4 -1 8 3 8 14 0 45 59 37 72 -4 6 -3 8 3 5 12 -8 75 101 66 115
|
||||
-3 6 -2 8 4 5 12 -8 75 101 66 115 -3 6 -2 8 4 5 6 -4 22 15 37 42 44 82 51
|
||||
95 74 131 11 19 21 39 21 44 -1 5 3 12 8 15 15 11 83 132 70 126 -6 -4 -4 0 6
|
||||
8 10 8 19 24 20 35 0 11 4 19 8 16 11 -6 60 87 52 100 -3 6 -2 8 2 3 9 -7 57
|
||||
68 58 90 0 7 3 10 6 8 4 -2 14 10 24 26 10 18 12 28 4 24 -6 -4 -4 0 7 9 11 9
|
||||
15 20 10 28 -4 7 -4 10 1 6 11 -10 47 50 39 64 -4 7 -2 8 4 4 11 -6 16 6 13
|
||||
27 0 4 3 7 9 7 5 0 14 9 20 21 9 15 8 24 -2 37 -11 15 -11 16 4 4 14 -11 19
|
||||
-8 38 27 13 22 22 43 21 47 -2 4 2 10 7 13 5 3 21 26 35 51 61 104 59 100 45
|
||||
118 -11 15 -11 15 3 4 15 -11 23 -2 68 79 28 50 51 96 51 100 0 5 4 9 9 9 5 0
|
||||
14 12 20 28 6 15 25 49 41 75 17 27 27 54 24 60 -4 7 -4 9 1 5 11 -11 47 50
|
||||
39 65 -4 7 -3 9 1 4 15 -13 74 105 75 148 0 45 -29 111 -47 108 -7 -2 -10 4
|
||||
-7 12 7 18 -26 76 -39 68 -6 -3 -7 -1 -3 6 6 10 -26 76 -44 91 -3 3 -12 20
|
||||
-19 38 -8 18 -18 35 -24 39 -6 4 -7 1 -2 -7 5 -9 4 -11 -4 -6 -6 4 -9 11 -6
|
||||
16 8 13 -24 72 -35 65 -6 -3 -8 0 -5 7 3 7 -11 38 -30 68 -19 30 -41 69 -50
|
||||
85 -8 17 -26 48 -39 70 -14 22 -35 59 -46 82 -13 24 -27 40 -33 36 -6 -4 -7
|
||||
-1 -2 6 4 7 -2 22 -16 37 -12 13 -19 24 -15 24 3 0 -1 14 -9 31 -11 21 -21 29
|
||||
-32 25 -12 -5 -13 -3 -5 7 17 20 -19 72 -37 54 -11 -10 -11 -8 -3 9 9 16 7 26
|
||||
-5 45 -9 13 -21 27 -26 30 -5 3 -8 10 -7 15 0 5 -9 26 -20 47 -19 33 -24 36
|
||||
-38 25 -15 -12 -16 -11 -4 4 12 14 11 22 -4 47 -10 16 -21 28 -26 25 -4 -3 -5
|
||||
1 -3 9 3 7 -6 30 -20 51 -14 20 -25 39 -25 41 0 10 -115 202 -129 215 -9 8
|
||||
-18 24 -19 35 -2 11 -7 22 -12 25 -4 3 -10 15 -14 28 -4 12 -12 19 -18 16 -6
|
||||
-4 -8 -2 -4 4 8 13 -30 78 -50 86 -8 3 -12 10 -9 16 8 13 -39 92 -50 83 -4 -5
|
||||
-5 -3 -2 4 4 6 -12 44 -35 83 -24 40 -55 93 -69 119 -15 25 -32 45 -38 43 -6
|
||||
-1 -11 5 -11 13 0 19 -57 48 -81 42 -11 -3 -19 -1 -19 4 0 5 -219 9 -529 9
|
||||
-414 0 -530 -3 -534 -12 -4 -10 -6 -10 -6 0 -1 10 -123 12 -596 12 -351 0
|
||||
-594 -4 -590 -10 3 -5 0 -12 -6 -16 -7 -4 -9 -3 -5 4 11 18 -9 22 -38 7z
|
||||
m1314 -35 c749 0 1007 3 1017 12 8 6 13 7 11 2 -1 -5 13 -25 33 -44 19 -19 61
|
||||
-81 93 -138 43 -76 61 -100 68 -90 8 10 9 10 5 -2 -6 -21 11 -63 22 -55 5 3
|
||||
13 0 17 -6 4 -8 3 -9 -4 -5 -7 4 -12 4 -12 0 0 -20 207 -364 220 -365 9 0 10
|
||||
-3 4 -5 -13 -5 104 -223 119 -224 5 0 6 4 2 9 -3 5 0 13 7 17 7 4 10 4 6 -1
|
||||
-4 -4 -2 -15 5 -23 9 -13 9 -14 0 -8 -20 11 -16 -18 6 -45 10 -13 21 -34 25
|
||||
-47 4 -12 12 -19 18 -16 6 4 8 3 5 -3 -3 -5 3 -25 15 -44 12 -19 35 -59 51
|
||||
-89 16 -30 35 -62 41 -70 7 -8 21 -32 31 -52 10 -20 22 -35 26 -32 4 2 11 -1
|
||||
15 -7 5 -8 3 -9 -6 -4 -8 5 -11 3 -8 -6 3 -8 11 -13 17 -11 7 1 10 -2 6 -8 -6
|
||||
-10 40 -99 57 -111 6 -3 10 -10 10 -15 0 -16 105 -194 111 -189 4 3 5 2 2 -1
|
||||
-7 -10 37 -84 46 -78 5 3 6 -2 3 -10 -3 -8 3 -23 13 -34 10 -10 19 -24 21 -31
|
||||
4 -18 92 -172 110 -193 8 -10 13 -18 10 -18 -3 0 -2 -16 2 -35 4 -19 4 -35 0
|
||||
-35 -4 0 -10 -8 -13 -18 -2 -9 -8 -26 -13 -36 -6 -15 -4 -17 7 -11 8 5 11 5 6
|
||||
-1 -5 -5 -13 -9 -18 -9 -10 0 -23 -20 -56 -85 -10 -19 -21 -37 -24 -40 -14
|
||||
-12 -29 -51 -24 -60 4 -6 2 -9 -4 -8 -7 2 -30 -31 -53 -72 -22 -41 -51 -90
|
||||
-64 -109 -22 -32 -24 -58 -3 -46 5 4 6 -2 2 -11 -4 -11 -8 -13 -11 -6 -2 7 -8
|
||||
12 -13 12 -11 0 -43 -60 -32 -60 5 0 3 -4 -3 -8 -24 -17 -43 -56 -33 -68 7 -9
|
||||
5 -11 -8 -10 -11 0 -18 -6 -18 -17 0 -10 -5 -21 -10 -25 -22 -15 -77 -113 -71
|
||||
-127 3 -8 0 -17 -6 -21 -7 -4 -8 -3 -4 4 4 7 5 12 2 12 -12 0 -76 -122 -70
|
||||
-133 4 -7 4 -9 -1 -5 -5 5 -25 -20 -46 -55 -27 -45 -35 -65 -27 -75 8 -10 7
|
||||
-11 -7 -5 -14 5 -17 3 -12 -10 4 -10 2 -16 -5 -14 -6 1 -13 -4 -16 -12 -3 -9
|
||||
0 -11 9 -6 8 5 11 4 6 -1 -5 -5 -11 -8 -14 -6 -10 6 -93 -142 -88 -156 3 -7 1
|
||||
-10 -5 -7 -5 3 -14 -4 -20 -15 -9 -16 -8 -25 2 -38 11 -15 11 -15 -2 -5 -13
|
||||
10 -20 5 -43 -33 -15 -25 -22 -42 -15 -39 7 4 6 1 -3 -7 -9 -7 -15 -21 -13
|
||||
-31 1 -9 -1 -15 -6 -12 -11 7 -33 -22 -26 -34 4 -5 -1 -14 -10 -19 -9 -5 -14
|
||||
-15 -10 -21 4 -6 12 -8 18 -5 7 4 8 2 4 -5 -6 -9 -11 -9 -21 -1 -9 8 -26 -14
|
||||
-73 -94 -38 -66 -56 -107 -49 -110 7 -2 6 -5 -3 -5 -9 -1 -46 -55 -86 -124
|
||||
-55 -95 -78 -126 -105 -140 -22 -11 -33 -23 -31 -35 2 -16 2 -16 -8 1 -10 16
|
||||
-76 17 -1156 17 -1043 0 -1148 1 -1182 17 -20 9 -44 16 -52 15 -10 -1 -11 1
|
||||
-3 4 10 4 9 12 -3 35 -8 16 -19 27 -24 24 -6 -4 -7 1 -3 11 4 10 2 15 -3 11
|
||||
-6 -3 -10 2 -11 11 -2 25 -53 112 -66 112 -5 0 -8 3 -4 6 8 9 -21 64 -33 64
|
||||
-6 0 -9 3 -9 8 3 20 -2 32 -13 26 -6 -4 -8 -3 -4 4 6 11 -47 111 -66 123 -5 3
|
||||
-8 8 -6 10 2 3 -81 154 -122 219 -5 8 -39 68 -75 133 -40 69 -71 114 -77 111
|
||||
-6 -4 -8 -2 -5 4 9 14 -3 43 -14 36 -5 -3 -6 1 -4 8 3 8 -5 25 -17 38 -12 13
|
||||
-23 29 -23 35 0 23 -118 215 -128 208 -5 -3 -7 -1 -4 5 10 16 -3 42 -22 43 -9
|
||||
0 -11 3 -4 5 13 6 -100 209 -116 209 -5 0 -13 4 -18 9 -5 5 -3 6 5 2 16 -10
|
||||
16 9 -1 26 -7 7 -14 18 -15 23 -1 6 -8 10 -14 10 -7 0 -12 9 -10 19 2 10 -5
|
||||
24 -15 32 -10 7 -15 14 -10 14 4 0 0 14 -8 30 -9 18 -21 28 -27 24 -6 -4 -8
|
||||
-3 -5 4 7 11 -47 119 -78 155 -11 12 -18 22 -16 22 2 0 -3 12 -10 27 -6 15
|
||||
-15 25 -20 23 -4 -3 -11 0 -15 6 -5 8 -3 9 6 4 8 -5 11 -3 8 6 -3 8 -10 13
|
||||
-16 12 -6 -2 -9 3 -6 11 3 7 -1 20 -9 28 -30 29 -16 105 35 192 26 44 44 84
|
||||
41 89 -3 6 -1 7 4 4 17 -10 25 24 11 42 -11 14 -11 14 3 4 13 -10 20 -5 45 38
|
||||
16 28 27 53 26 56 -2 3 0 9 5 12 21 14 53 80 47 97 -4 15 -4 16 4 5 8 -11 13
|
||||
-8 25 15 8 16 12 35 10 42 -3 7 -1 11 4 10 4 -2 9 1 10 6 1 5 5 12 10 15 4 3
|
||||
15 15 23 25 14 18 13 19 -3 13 -11 -4 -16 -3 -12 3 3 6 13 10 20 10 8 0 17 11
|
||||
21 25 3 14 11 25 16 25 6 0 7 7 4 16 -3 8 -2 12 4 9 6 -3 10 -4 10 -1 0 2 3
|
||||
12 7 22 5 13 3 15 -7 9 -9 -5 -11 -4 -6 4 4 6 11 9 16 6 5 -3 25 23 44 58 38
|
||||
68 43 83 24 71 -7 -4 -8 -3 -4 5 4 6 11 9 16 6 12 -8 33 33 24 47 -4 6 -3 8 4
|
||||
5 6 -4 23 17 41 48 34 61 39 80 15 71 -9 -3 -12 -2 -9 5 4 6 13 8 21 5 15 -6
|
||||
39 27 100 138 19 35 31 66 27 71 -5 4 -3 6 2 2 6 -3 21 13 34 35 13 23 17 37
|
||||
9 33 -7 -4 -3 2 9 14 29 28 54 76 45 86 -4 5 -2 5 4 2 6 -3 17 9 24 28 8 19
|
||||
17 35 20 35 7 0 37 59 38 74 0 5 4 12 10 15 16 11 62 97 55 104 -3 4 -1 7 5 7
|
||||
12 0 75 106 75 127 0 7 3 11 5 8 9 -9 122 196 115 208 -3 7 -3 9 2 5 4 -4 21
|
||||
4 37 17 17 15 43 25 61 25 18 1 87 1 155 1 115 0 123 1 110 17 -11 15 -10 15
|
||||
8 0 19 -17 84 -18 1024 -18z m-980 24 c0 -8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0
|
||||
15 -2 15 -3z m2187 -236 c2 -17 0 -19 -7 -8 -5 8 -6 18 -4 22 8 12 10 10 11
|
||||
-14z m-2917 -358 c-6 -11 -13 -20 -16 -20 -2 0 0 9 6 20 6 11 13 20 16 20 2 0
|
||||
0 -9 -6 -20z m-400 -714 c0 -3 -4 -8 -10 -11 -5 -3 -10 -1 -10 4 0 6 5 11 10
|
||||
11 6 0 10 -2 10 -4z m3995 -95 c3 -5 2 -12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19
|
||||
12 6z m-4260 -350 c3 -5 2 -12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19 12 6z m4589
|
||||
-223 c-9 -14 -23 2 -17 18 4 12 8 13 14 3 4 -7 5 -17 3 -21z m-167 -559 c-6
|
||||
-10 -16 -15 -21 -12 -6 4 -5 8 2 11 7 2 10 7 8 11 -3 4 1 8 8 8 11 0 12 -4 3
|
||||
-18z m-197 -345 c0 -8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0 15 -2 15 -3z m-3943
|
||||
-69 c0 -8 -4 -12 -9 -9 -5 3 -6 10 -3 15 9 13 12 11 12 -6z m498 -854 c3 -5 2
|
||||
-12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19 12 6z m2695 -355 c0 -2 -8 -10 -17 -17
|
||||
-16 -13 -17 -12 -4 4 13 16 21 21 21 13z"/>
|
||||
<path d="M2344 3920 c-391 -34 -729 -229 -849 -491 -62 -136 -72 -311 -26
|
||||
-431 64 -165 250 -264 426 -228 158 32 248 132 248 274 0 108 -48 180 -126
|
||||
193 -26 4 -43 -3 -86 -32 -109 -75 -169 -84 -226 -34 -43 38 -59 93 -52 176 8
|
||||
86 40 147 116 224 106 107 266 173 445 186 154 11 242 -25 290 -118 l28 -54
|
||||
-46 -195 c-62 -260 -149 -589 -253 -960 -47 -168 -88 -313 -90 -322 -5 -17
|
||||
-25 -18 -249 -18 l-244 0 0 -80 0 -80 219 -2 220 -3 -48 -130 c-165 -451 -353
|
||||
-673 -581 -683 -42 -2 -94 1 -116 7 -57 15 -124 78 -180 167 -54 84 -74 95
|
||||
-128 69 -44 -21 -73 -67 -88 -137 -10 -45 -9 -58 6 -88 32 -66 125 -116 269
|
||||
-147 103 -21 309 -13 398 16 192 61 343 200 482 443 39 67 129 277 168 391
|
||||
l33 97 351 0 352 0 82 -287 c91 -313 118 -380 181 -437 141 -127 419 -127 675
|
||||
-1 147 73 151 76 135 115 -14 35 -16 35 -65 15 -54 -23 -125 -34 -151 -24 -13
|
||||
4 -30 19 -38 31 -15 23 -176 550 -176 576 0 9 42 12 175 12 l175 0 0 80 0 80
|
||||
-201 2 -202 3 -201 695 c-112 382 -215 727 -230 766 -94 247 -273 354 -615
|
||||
367 -64 3 -157 1 -207 -3z m461 -1283 c85 -295 155 -539 155 -542 0 -3 -137
|
||||
-5 -304 -5 l-303 0 34 118 c48 165 143 520 204 765 28 114 53 206 55 204 2 -2
|
||||
74 -245 159 -540z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 10 KiB |
BIN
assets/arkanum2-logo-free-min.png
Normal file
After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
BIN
assets/logo-v1.png
Normal file
After Width: | Height: | Size: 106 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 48 KiB |
15
code-server/media/favicon-dark-support.svg
Normal file
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="500px" height="500px" style="shape-rendering:geometricPrecision; text-rendering:geometricPrecision; image-rendering:optimizeQuality; fill-rule:evenodd; clip-rule:evenodd" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g><path style="opacity:1" fill="#158c84" d="M 375.5,51.5 C 294.512,50.5227 213.512,50.1894 132.5,50.5C 133.263,49.7321 134.263,49.2321 135.5,49C 214.167,48.3333 292.833,48.3333 371.5,49C 373.066,49.6082 374.4,50.4415 375.5,51.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#139b6f" d="M 132.5,50.5 C 213.512,50.1894 294.512,50.5227 375.5,51.5C 375.833,51.5 376.167,51.5 376.5,51.5C 376.685,53.1958 377.519,54.5291 379,55.5C 379.494,57.1341 379.66,58.8008 379.5,60.5C 380.675,60.281 381.675,60.6143 382.5,61.5C 381.562,65.9827 379.562,66.9827 376.5,64.5C 375.272,63.6935 374.272,62.6935 373.5,61.5C 372.878,59.665 371.544,58.4983 369.5,58C 291.833,57.3333 214.167,57.3333 136.5,58C 133.507,59.1585 131.84,61.3252 131.5,64.5C 130.833,64.8333 130.167,65.1667 129.5,65.5C 127.436,64.942 125.77,63.7754 124.5,62C 125.222,59.3226 126.222,56.8226 127.5,54.5C 128.585,52.4131 130.251,51.0798 132.5,50.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#103223" d="M 373.5,61.5 C 371.745,60.9278 370.078,60.0945 368.5,59C 291.5,58.3333 214.5,58.3333 137.5,59C 134.977,60.3597 132.977,62.193 131.5,64.5C 131.84,61.3252 133.507,59.1585 136.5,58C 214.167,57.3333 291.833,57.3333 369.5,58C 371.544,58.4983 372.878,59.665 373.5,61.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#292524" d="M 373.5,61.5 C 374.272,62.6935 375.272,63.6935 376.5,64.5C 413.057,128.608 449.89,192.608 487,256.5C 488.457,259.366 488.79,262.366 488,265.5C 450.614,331.266 412.947,396.932 375,462.5C 373.188,464.3 371.355,465.967 369.5,467.5C 291.499,467.667 213.499,467.5 135.5,467C 134.069,466.535 132.903,465.701 132,464.5C 131.856,461.558 130.689,459.224 128.5,457.5C 92.2487,393.994 55.7487,330.661 19,267.5C 16.9142,263.333 17.2475,259.333 20,255.5C 56.7624,192.307 93.2624,128.974 129.5,65.5C 130.167,65.1667 130.833,64.8333 131.5,64.5C 132.977,62.193 134.977,60.3597 137.5,59C 214.5,58.3333 291.5,58.3333 368.5,59C 370.078,60.0945 371.745,60.9278 373.5,61.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#fcfcfc" d="M 236.5,106.5 C 253.064,105.598 269.397,107.098 285.5,111C 299.63,115.14 310.13,123.64 317,136.5C 319.529,142.421 321.863,148.421 324,154.5C 336.865,199.594 350.032,244.594 363.5,289.5C 376.817,290.499 390.15,290.833 403.5,290.5C 403.5,295.833 403.5,301.167 403.5,306.5C 391.833,306.5 380.167,306.5 368.5,306.5C 373.552,326.372 379.386,346.038 386,365.5C 387.863,367.949 390.363,368.949 393.5,368.5C 398.801,368.258 403.801,366.925 408.5,364.5C 410.669,365.652 412.003,367.486 412.5,370C 392.685,385.204 370.352,390.871 345.5,387C 334.558,384.129 326.725,377.629 322,367.5C 316.052,347.191 309.885,327.025 303.5,307C 280.16,306.167 256.826,306.334 233.5,307.5C 225.869,333.429 214.035,357.096 198,378.5C 174.848,401.83 147.348,408.663 115.5,399C 110.508,396.839 105.841,394.172 101.5,391C 97.1952,385.738 96.3619,379.905 99,373.5C 101.639,364.939 107.139,361.772 115.5,364C 127.457,389.91 145.79,395.577 170.5,381C 178.121,374.386 184.621,366.886 190,358.5C 199.119,341.935 206.286,324.601 211.5,306.5C 196.833,306.5 182.167,306.5 167.5,306.5C 167.5,301.167 167.5,295.833 167.5,290.5C 184.167,290.5 200.833,290.5 217.5,290.5C 230.966,240.969 243.966,191.302 256.5,141.5C 253.267,131.098 246.267,125.264 235.5,124C 216.74,122.366 199.74,127.033 184.5,138C 177.211,144.09 172.045,151.59 169,160.5C 166.694,169.71 168.861,177.544 175.5,184C 178.702,185.483 182.036,185.817 185.5,185C 190.335,183.086 194.669,180.419 198.5,177C 207.271,174.637 213.438,177.803 217,186.5C 219.966,206.747 211.466,218.914 191.5,223C 168.029,224.859 153.529,214.359 148,191.5C 145.102,163.798 155.268,142.298 178.5,127C 196.324,115.671 215.657,108.838 236.5,106.5 Z"/></g>
|
||||
<g><path style="opacity:0.518" fill="#077577" d="M 68.5,155.5 C 67.9695,157.924 67.1362,160.257 66,162.5C 60.4708,170.022 55.8041,178.022 52,186.5C 50.9609,187.71 49.7942,188.71 48.5,189.5C 54.6658,177.83 61.3324,166.496 68.5,155.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#2a2625" d="M 267.5,181.5 C 278.527,217.594 289.193,253.928 299.5,290.5C 279.156,290.833 258.822,290.5 238.5,289.5C 249.106,253.744 258.772,217.744 267.5,181.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#159570" d="M 127.5,54.5 C 126.222,56.8226 125.222,59.3226 124.5,62C 125.77,63.7754 127.436,64.942 129.5,65.5C 93.2624,128.974 56.7624,192.307 20,255.5C 17.2475,259.333 16.9142,263.333 19,267.5C 55.7487,330.661 92.2487,393.994 128.5,457.5C 127.06,456.637 125.726,456.637 124.5,457.5C 123.614,456.675 123.281,455.675 123.5,454.5C 122.5,454.5 121.5,454.5 120.5,454.5C 120.928,457.564 121.594,460.564 122.5,463.5C 85.1076,399.727 47.9409,335.727 11,271.5C 7.66667,265.5 7.66667,259.5 11,253.5C 23.2743,231.939 35.7743,210.606 48.5,189.5C 49.7942,188.71 50.9609,187.71 52,186.5C 55.8041,178.022 60.4708,170.022 66,162.5C 67.1362,160.257 67.9695,157.924 68.5,155.5C 86.9778,121.05 106.644,87.3832 127.5,54.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#159671" d="M 376.5,51.5 C 379.458,54.0595 381.958,57.0595 384,60.5C 421.919,126.004 459.586,191.67 497,257.5C 497.791,261.926 497.457,266.259 496,270.5C 457.667,336.833 419.333,403.167 381,469.5C 378.536,472.647 375.37,474.647 371.5,475.5C 292.833,475.5 214.167,475.5 135.5,475.5C 129.677,473.683 125.343,470.016 122.5,464.5C 124.384,464.712 125.717,465.712 126.5,467.5C 127.451,466.674 128.451,466.508 129.5,467C 128.663,468.011 128.33,469.178 128.5,470.5C 131.245,470.373 133.245,471.54 134.5,474C 212.5,474.667 290.5,474.667 368.5,474C 372.403,473.588 374.07,471.421 373.5,467.5C 372.167,467.5 370.833,467.5 369.5,467.5C 371.355,465.967 373.188,464.3 375,462.5C 412.947,396.932 450.614,331.266 488,265.5C 488.79,262.366 488.457,259.366 487,256.5C 449.89,192.608 413.057,128.608 376.5,64.5C 379.562,66.9827 381.562,65.9827 382.5,61.5C 381.675,60.6143 380.675,60.281 379.5,60.5C 379.66,58.8008 379.494,57.1341 379,55.5C 377.519,54.5291 376.685,53.1958 376.5,51.5 Z"/></g>
|
||||
<g><path style="opacity:1" fill="#13956a" d="M 128.5,457.5 C 130.689,459.224 131.856,461.558 132,464.5C 132.903,465.701 134.069,466.535 135.5,467C 213.499,467.5 291.499,467.667 369.5,467.5C 370.833,467.5 372.167,467.5 373.5,467.5C 374.07,471.421 372.403,473.588 368.5,474C 290.5,474.667 212.5,474.667 134.5,474C 133.245,471.54 131.245,470.373 128.5,470.5C 128.33,469.178 128.663,468.011 129.5,467C 128.451,466.508 127.451,466.674 126.5,467.5C 125.717,465.712 124.384,464.712 122.5,464.5C 122.5,464.167 122.5,463.833 122.5,463.5C 121.594,460.564 120.928,457.564 120.5,454.5C 121.5,454.5 122.5,454.5 123.5,454.5C 123.281,455.675 123.614,456.675 124.5,457.5C 125.726,456.637 127.06,456.637 128.5,457.5 Z"/></g>
|
||||
<g><path style="opacity:0.475" fill="#107887" d="M 135.5,475.5 C 214.167,475.5 292.833,475.5 371.5,475.5C 359.346,476.566 347.012,477.233 334.5,477.5C 282.668,476.214 230.835,476.214 179,477.5C 164.311,477.522 149.811,476.855 135.5,475.5 Z"/></g>
|
||||
</svg>
|
After Width: | Height: | Size: 7.0 KiB |
144
code-server/media/favicon-dark-support.svg.back
Normal file
@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="500.000000pt" height="500.000000pt" viewBox="0 0 500.000000 500.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
|
||||
<g transform="translate(0.000000,500.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M1336 4485 c-14 -8 -24 -9 -20 -4 4 7 -1 7 -15 -1 -12 -6 -19 -15
|
||||
-16 -20 3 -6 0 -7 -8 -5 -17 7 -51 -30 -41 -46 4 -7 3 -10 -4 -6 -9 6 -85
|
||||
-113 -82 -129 1 -4 -3 -10 -8 -13 -15 -9 -73 -117 -67 -124 3 -4 2 -5 -2 -2
|
||||
-3 3 -17 -13 -30 -36 -26 -46 -28 -53 -11 -43 7 5 8 3 4 -5 -5 -7 -11 -10 -14
|
||||
-7 -9 9 -43 -54 -36 -66 5 -7 2 -8 -6 -3 -10 6 -12 4 -7 -9 4 -9 3 -14 -2 -11
|
||||
-10 5 -68 -93 -63 -107 1 -4 -2 -8 -7 -8 -14 0 -102 -160 -95 -173 4 -7 4 -9
|
||||
-1 -5 -10 10 -21 -8 -271 -445 -19 -33 -31 -64 -27 -70 3 -5 1 -7 -5 -4 -6 4
|
||||
-19 -11 -32 -35 -11 -24 -29 -54 -38 -68 -13 -19 -14 -22 -2 -15 8 4 2 -4 -13
|
||||
-19 -17 -16 -27 -33 -23 -42 4 -10 2 -13 -6 -8 -8 5 -9 2 -5 -10 4 -10 3 -15
|
||||
-3 -11 -6 3 -13 -2 -17 -12 -4 -10 -19 -38 -35 -62 -30 -48 -35 -67 -16 -55 7
|
||||
4 8 3 4 -5 -4 -6 -11 -9 -16 -6 -9 6 -127 -194 -122 -207 1 -5 -1 -8 -6 -8 -4
|
||||
0 -19 -21 -32 -47 -14 -27 -27 -50 -31 -53 -15 -14 -39 -82 -39 -113 0 -43 9
|
||||
-69 21 -61 5 3 7 -1 4 -8 -3 -7 19 -53 49 -103 40 -69 57 -89 72 -87 11 2 15
|
||||
0 8 -5 -6 -4 -10 -15 -9 -23 4 -27 41 -80 50 -72 5 4 5 1 1 -6 -4 -7 -2 -20 5
|
||||
-28 6 -8 25 -38 40 -67 15 -29 33 -51 38 -50 6 2 8 -3 5 -10 -2 -7 16 -45 41
|
||||
-86 25 -40 45 -77 45 -82 0 -5 7 -12 15 -15 8 -4 13 -9 10 -13 -5 -9 72 -143
|
||||
88 -153 7 -4 8 -8 3 -8 -11 0 14 -30 26 -30 5 0 6 5 2 12 -5 7 -3 8 5 3 8 -5
|
||||
9 -11 3 -17 -11 -11 -4 -48 9 -48 5 0 8 -3 7 -7 -3 -15 14 -43 23 -37 5 3 6
|
||||
-2 3 -10 -3 -9 -2 -16 4 -16 5 0 13 -11 16 -25 4 -16 11 -23 18 -19 7 5 8 3 3
|
||||
-6 -5 -8 -1 -18 10 -27 11 -7 15 -13 11 -13 -4 0 3 -18 15 -40 12 -21 26 -37
|
||||
30 -34 5 3 6 -1 4 -8 -3 -8 1 -22 10 -33 12 -16 16 -17 23 -7 7 11 10 10 15
|
||||
-3 4 -9 3 -13 -2 -10 -5 3 -12 2 -15 -3 -7 -11 11 -37 25 -37 7 0 14 -7 16
|
||||
-15 4 -13 3 -13 -6 0 -14 20 -14 7 1 -25 6 -14 15 -25 20 -25 4 0 8 -5 8 -10
|
||||
0 -9 29 -63 70 -130 5 -8 57 -99 116 -202 62 -109 111 -185 117 -181 6 3 7 1
|
||||
3 -6 -7 -11 93 -195 102 -187 2 2 14 -7 28 -21 16 -16 32 -23 45 -20 10 3 16
|
||||
1 13 -4 -3 -6 461 -9 1165 -9 806 0 1171 4 1171 11 0 5 5 7 10 4 19 -12 105
|
||||
58 94 77 -3 4 -1 8 3 8 14 0 45 59 37 72 -4 6 -3 8 3 5 12 -8 75 101 66 115
|
||||
-3 6 -2 8 4 5 12 -8 75 101 66 115 -3 6 -2 8 4 5 6 -4 22 15 37 42 44 82 51
|
||||
95 74 131 11 19 21 39 21 44 -1 5 3 12 8 15 15 11 83 132 70 126 -6 -4 -4 0 6
|
||||
8 10 8 19 24 20 35 0 11 4 19 8 16 11 -6 60 87 52 100 -3 6 -2 8 2 3 9 -7 57
|
||||
68 58 90 0 7 3 10 6 8 4 -2 14 10 24 26 10 18 12 28 4 24 -6 -4 -4 0 7 9 11 9
|
||||
15 20 10 28 -4 7 -4 10 1 6 11 -10 47 50 39 64 -4 7 -2 8 4 4 11 -6 16 6 13
|
||||
27 0 4 3 7 9 7 5 0 14 9 20 21 9 15 8 24 -2 37 -11 15 -11 16 4 4 14 -11 19
|
||||
-8 38 27 13 22 22 43 21 47 -2 4 2 10 7 13 5 3 21 26 35 51 61 104 59 100 45
|
||||
118 -11 15 -11 15 3 4 15 -11 23 -2 68 79 28 50 51 96 51 100 0 5 4 9 9 9 5 0
|
||||
14 12 20 28 6 15 25 49 41 75 17 27 27 54 24 60 -4 7 -4 9 1 5 11 -11 47 50
|
||||
39 65 -4 7 -3 9 1 4 15 -13 74 105 75 148 0 45 -29 111 -47 108 -7 -2 -10 4
|
||||
-7 12 7 18 -26 76 -39 68 -6 -3 -7 -1 -3 6 6 10 -26 76 -44 91 -3 3 -12 20
|
||||
-19 38 -8 18 -18 35 -24 39 -6 4 -7 1 -2 -7 5 -9 4 -11 -4 -6 -6 4 -9 11 -6
|
||||
16 8 13 -24 72 -35 65 -6 -3 -8 0 -5 7 3 7 -11 38 -30 68 -19 30 -41 69 -50
|
||||
85 -8 17 -26 48 -39 70 -14 22 -35 59 -46 82 -13 24 -27 40 -33 36 -6 -4 -7
|
||||
-1 -2 6 4 7 -2 22 -16 37 -12 13 -19 24 -15 24 3 0 -1 14 -9 31 -11 21 -21 29
|
||||
-32 25 -12 -5 -13 -3 -5 7 17 20 -19 72 -37 54 -11 -10 -11 -8 -3 9 9 16 7 26
|
||||
-5 45 -9 13 -21 27 -26 30 -5 3 -8 10 -7 15 0 5 -9 26 -20 47 -19 33 -24 36
|
||||
-38 25 -15 -12 -16 -11 -4 4 12 14 11 22 -4 47 -10 16 -21 28 -26 25 -4 -3 -5
|
||||
1 -3 9 3 7 -6 30 -20 51 -14 20 -25 39 -25 41 0 10 -115 202 -129 215 -9 8
|
||||
-18 24 -19 35 -2 11 -7 22 -12 25 -4 3 -10 15 -14 28 -4 12 -12 19 -18 16 -6
|
||||
-4 -8 -2 -4 4 8 13 -30 78 -50 86 -8 3 -12 10 -9 16 8 13 -39 92 -50 83 -4 -5
|
||||
-5 -3 -2 4 4 6 -12 44 -35 83 -24 40 -55 93 -69 119 -15 25 -32 45 -38 43 -6
|
||||
-1 -11 5 -11 13 0 19 -57 48 -81 42 -11 -3 -19 -1 -19 4 0 5 -219 9 -529 9
|
||||
-414 0 -530 -3 -534 -12 -4 -10 -6 -10 -6 0 -1 10 -123 12 -596 12 -351 0
|
||||
-594 -4 -590 -10 3 -5 0 -12 -6 -16 -7 -4 -9 -3 -5 4 11 18 -9 22 -38 7z
|
||||
m1314 -35 c749 0 1007 3 1017 12 8 6 13 7 11 2 -1 -5 13 -25 33 -44 19 -19 61
|
||||
-81 93 -138 43 -76 61 -100 68 -90 8 10 9 10 5 -2 -6 -21 11 -63 22 -55 5 3
|
||||
13 0 17 -6 4 -8 3 -9 -4 -5 -7 4 -12 4 -12 0 0 -20 207 -364 220 -365 9 0 10
|
||||
-3 4 -5 -13 -5 104 -223 119 -224 5 0 6 4 2 9 -3 5 0 13 7 17 7 4 10 4 6 -1
|
||||
-4 -4 -2 -15 5 -23 9 -13 9 -14 0 -8 -20 11 -16 -18 6 -45 10 -13 21 -34 25
|
||||
-47 4 -12 12 -19 18 -16 6 4 8 3 5 -3 -3 -5 3 -25 15 -44 12 -19 35 -59 51
|
||||
-89 16 -30 35 -62 41 -70 7 -8 21 -32 31 -52 10 -20 22 -35 26 -32 4 2 11 -1
|
||||
15 -7 5 -8 3 -9 -6 -4 -8 5 -11 3 -8 -6 3 -8 11 -13 17 -11 7 1 10 -2 6 -8 -6
|
||||
-10 40 -99 57 -111 6 -3 10 -10 10 -15 0 -16 105 -194 111 -189 4 3 5 2 2 -1
|
||||
-7 -10 37 -84 46 -78 5 3 6 -2 3 -10 -3 -8 3 -23 13 -34 10 -10 19 -24 21 -31
|
||||
4 -18 92 -172 110 -193 8 -10 13 -18 10 -18 -3 0 -2 -16 2 -35 4 -19 4 -35 0
|
||||
-35 -4 0 -10 -8 -13 -18 -2 -9 -8 -26 -13 -36 -6 -15 -4 -17 7 -11 8 5 11 5 6
|
||||
-1 -5 -5 -13 -9 -18 -9 -10 0 -23 -20 -56 -85 -10 -19 -21 -37 -24 -40 -14
|
||||
-12 -29 -51 -24 -60 4 -6 2 -9 -4 -8 -7 2 -30 -31 -53 -72 -22 -41 -51 -90
|
||||
-64 -109 -22 -32 -24 -58 -3 -46 5 4 6 -2 2 -11 -4 -11 -8 -13 -11 -6 -2 7 -8
|
||||
12 -13 12 -11 0 -43 -60 -32 -60 5 0 3 -4 -3 -8 -24 -17 -43 -56 -33 -68 7 -9
|
||||
5 -11 -8 -10 -11 0 -18 -6 -18 -17 0 -10 -5 -21 -10 -25 -22 -15 -77 -113 -71
|
||||
-127 3 -8 0 -17 -6 -21 -7 -4 -8 -3 -4 4 4 7 5 12 2 12 -12 0 -76 -122 -70
|
||||
-133 4 -7 4 -9 -1 -5 -5 5 -25 -20 -46 -55 -27 -45 -35 -65 -27 -75 8 -10 7
|
||||
-11 -7 -5 -14 5 -17 3 -12 -10 4 -10 2 -16 -5 -14 -6 1 -13 -4 -16 -12 -3 -9
|
||||
0 -11 9 -6 8 5 11 4 6 -1 -5 -5 -11 -8 -14 -6 -10 6 -93 -142 -88 -156 3 -7 1
|
||||
-10 -5 -7 -5 3 -14 -4 -20 -15 -9 -16 -8 -25 2 -38 11 -15 11 -15 -2 -5 -13
|
||||
10 -20 5 -43 -33 -15 -25 -22 -42 -15 -39 7 4 6 1 -3 -7 -9 -7 -15 -21 -13
|
||||
-31 1 -9 -1 -15 -6 -12 -11 7 -33 -22 -26 -34 4 -5 -1 -14 -10 -19 -9 -5 -14
|
||||
-15 -10 -21 4 -6 12 -8 18 -5 7 4 8 2 4 -5 -6 -9 -11 -9 -21 -1 -9 8 -26 -14
|
||||
-73 -94 -38 -66 -56 -107 -49 -110 7 -2 6 -5 -3 -5 -9 -1 -46 -55 -86 -124
|
||||
-55 -95 -78 -126 -105 -140 -22 -11 -33 -23 -31 -35 2 -16 2 -16 -8 1 -10 16
|
||||
-76 17 -1156 17 -1043 0 -1148 1 -1182 17 -20 9 -44 16 -52 15 -10 -1 -11 1
|
||||
-3 4 10 4 9 12 -3 35 -8 16 -19 27 -24 24 -6 -4 -7 1 -3 11 4 10 2 15 -3 11
|
||||
-6 -3 -10 2 -11 11 -2 25 -53 112 -66 112 -5 0 -8 3 -4 6 8 9 -21 64 -33 64
|
||||
-6 0 -9 3 -9 8 3 20 -2 32 -13 26 -6 -4 -8 -3 -4 4 6 11 -47 111 -66 123 -5 3
|
||||
-8 8 -6 10 2 3 -81 154 -122 219 -5 8 -39 68 -75 133 -40 69 -71 114 -77 111
|
||||
-6 -4 -8 -2 -5 4 9 14 -3 43 -14 36 -5 -3 -6 1 -4 8 3 8 -5 25 -17 38 -12 13
|
||||
-23 29 -23 35 0 23 -118 215 -128 208 -5 -3 -7 -1 -4 5 10 16 -3 42 -22 43 -9
|
||||
0 -11 3 -4 5 13 6 -100 209 -116 209 -5 0 -13 4 -18 9 -5 5 -3 6 5 2 16 -10
|
||||
16 9 -1 26 -7 7 -14 18 -15 23 -1 6 -8 10 -14 10 -7 0 -12 9 -10 19 2 10 -5
|
||||
24 -15 32 -10 7 -15 14 -10 14 4 0 0 14 -8 30 -9 18 -21 28 -27 24 -6 -4 -8
|
||||
-3 -5 4 7 11 -47 119 -78 155 -11 12 -18 22 -16 22 2 0 -3 12 -10 27 -6 15
|
||||
-15 25 -20 23 -4 -3 -11 0 -15 6 -5 8 -3 9 6 4 8 -5 11 -3 8 6 -3 8 -10 13
|
||||
-16 12 -6 -2 -9 3 -6 11 3 7 -1 20 -9 28 -30 29 -16 105 35 192 26 44 44 84
|
||||
41 89 -3 6 -1 7 4 4 17 -10 25 24 11 42 -11 14 -11 14 3 4 13 -10 20 -5 45 38
|
||||
16 28 27 53 26 56 -2 3 0 9 5 12 21 14 53 80 47 97 -4 15 -4 16 4 5 8 -11 13
|
||||
-8 25 15 8 16 12 35 10 42 -3 7 -1 11 4 10 4 -2 9 1 10 6 1 5 5 12 10 15 4 3
|
||||
15 15 23 25 14 18 13 19 -3 13 -11 -4 -16 -3 -12 3 3 6 13 10 20 10 8 0 17 11
|
||||
21 25 3 14 11 25 16 25 6 0 7 7 4 16 -3 8 -2 12 4 9 6 -3 10 -4 10 -1 0 2 3
|
||||
12 7 22 5 13 3 15 -7 9 -9 -5 -11 -4 -6 4 4 6 11 9 16 6 5 -3 25 23 44 58 38
|
||||
68 43 83 24 71 -7 -4 -8 -3 -4 5 4 6 11 9 16 6 12 -8 33 33 24 47 -4 6 -3 8 4
|
||||
5 6 -4 23 17 41 48 34 61 39 80 15 71 -9 -3 -12 -2 -9 5 4 6 13 8 21 5 15 -6
|
||||
39 27 100 138 19 35 31 66 27 71 -5 4 -3 6 2 2 6 -3 21 13 34 35 13 23 17 37
|
||||
9 33 -7 -4 -3 2 9 14 29 28 54 76 45 86 -4 5 -2 5 4 2 6 -3 17 9 24 28 8 19
|
||||
17 35 20 35 7 0 37 59 38 74 0 5 4 12 10 15 16 11 62 97 55 104 -3 4 -1 7 5 7
|
||||
12 0 75 106 75 127 0 7 3 11 5 8 9 -9 122 196 115 208 -3 7 -3 9 2 5 4 -4 21
|
||||
4 37 17 17 15 43 25 61 25 18 1 87 1 155 1 115 0 123 1 110 17 -11 15 -10 15
|
||||
8 0 19 -17 84 -18 1024 -18z m-980 24 c0 -8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0
|
||||
15 -2 15 -3z m2187 -236 c2 -17 0 -19 -7 -8 -5 8 -6 18 -4 22 8 12 10 10 11
|
||||
-14z m-2917 -358 c-6 -11 -13 -20 -16 -20 -2 0 0 9 6 20 6 11 13 20 16 20 2 0
|
||||
0 -9 -6 -20z m-400 -714 c0 -3 -4 -8 -10 -11 -5 -3 -10 -1 -10 4 0 6 5 11 10
|
||||
11 6 0 10 -2 10 -4z m3995 -95 c3 -5 2 -12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19
|
||||
12 6z m-4260 -350 c3 -5 2 -12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19 12 6z m4589
|
||||
-223 c-9 -14 -23 2 -17 18 4 12 8 13 14 3 4 -7 5 -17 3 -21z m-167 -559 c-6
|
||||
-10 -16 -15 -21 -12 -6 4 -5 8 2 11 7 2 10 7 8 11 -3 4 1 8 8 8 11 0 12 -4 3
|
||||
-18z m-197 -345 c0 -8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0 15 -2 15 -3z m-3943
|
||||
-69 c0 -8 -4 -12 -9 -9 -5 3 -6 10 -3 15 9 13 12 11 12 -6z m498 -854 c3 -5 2
|
||||
-12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19 12 6z m2695 -355 c0 -2 -8 -10 -17 -17
|
||||
-16 -13 -17 -12 -4 4 13 16 21 21 21 13z"/>
|
||||
<path d="M2344 3920 c-391 -34 -729 -229 -849 -491 -62 -136 -72 -311 -26
|
||||
-431 64 -165 250 -264 426 -228 158 32 248 132 248 274 0 108 -48 180 -126
|
||||
193 -26 4 -43 -3 -86 -32 -109 -75 -169 -84 -226 -34 -43 38 -59 93 -52 176 8
|
||||
86 40 147 116 224 106 107 266 173 445 186 154 11 242 -25 290 -118 l28 -54
|
||||
-46 -195 c-62 -260 -149 -589 -253 -960 -47 -168 -88 -313 -90 -322 -5 -17
|
||||
-25 -18 -249 -18 l-244 0 0 -80 0 -80 219 -2 220 -3 -48 -130 c-165 -451 -353
|
||||
-673 -581 -683 -42 -2 -94 1 -116 7 -57 15 -124 78 -180 167 -54 84 -74 95
|
||||
-128 69 -44 -21 -73 -67 -88 -137 -10 -45 -9 -58 6 -88 32 -66 125 -116 269
|
||||
-147 103 -21 309 -13 398 16 192 61 343 200 482 443 39 67 129 277 168 391
|
||||
l33 97 351 0 352 0 82 -287 c91 -313 118 -380 181 -437 141 -127 419 -127 675
|
||||
-1 147 73 151 76 135 115 -14 35 -16 35 -65 15 -54 -23 -125 -34 -151 -24 -13
|
||||
4 -30 19 -38 31 -15 23 -176 550 -176 576 0 9 42 12 175 12 l175 0 0 80 0 80
|
||||
-201 2 -202 3 -201 695 c-112 382 -215 727 -230 766 -94 247 -273 354 -615
|
||||
367 -64 3 -157 1 -207 -3z m461 -1283 c85 -295 155 -539 155 -542 0 -3 -137
|
||||
-5 -304 -5 l-303 0 34 118 c48 165 143 520 204 765 28 114 53 206 55 204 2 -2
|
||||
74 -245 159 -540z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 10 KiB |
BIN
code-server/media/favicon.ico
Normal file
After Width: | Height: | Size: 8.1 KiB |
144
code-server/media/favicon.svg
Normal file
@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||
width="500.000000pt" height="500.000000pt" viewBox="0 0 500.000000 500.000000"
|
||||
preserveAspectRatio="xMidYMid meet">
|
||||
|
||||
<g transform="translate(0.000000,500.000000) scale(0.100000,-0.100000)"
|
||||
fill="#000000" stroke="none">
|
||||
<path d="M1336 4485 c-14 -8 -24 -9 -20 -4 4 7 -1 7 -15 -1 -12 -6 -19 -15
|
||||
-16 -20 3 -6 0 -7 -8 -5 -17 7 -51 -30 -41 -46 4 -7 3 -10 -4 -6 -9 6 -85
|
||||
-113 -82 -129 1 -4 -3 -10 -8 -13 -15 -9 -73 -117 -67 -124 3 -4 2 -5 -2 -2
|
||||
-3 3 -17 -13 -30 -36 -26 -46 -28 -53 -11 -43 7 5 8 3 4 -5 -5 -7 -11 -10 -14
|
||||
-7 -9 9 -43 -54 -36 -66 5 -7 2 -8 -6 -3 -10 6 -12 4 -7 -9 4 -9 3 -14 -2 -11
|
||||
-10 5 -68 -93 -63 -107 1 -4 -2 -8 -7 -8 -14 0 -102 -160 -95 -173 4 -7 4 -9
|
||||
-1 -5 -10 10 -21 -8 -271 -445 -19 -33 -31 -64 -27 -70 3 -5 1 -7 -5 -4 -6 4
|
||||
-19 -11 -32 -35 -11 -24 -29 -54 -38 -68 -13 -19 -14 -22 -2 -15 8 4 2 -4 -13
|
||||
-19 -17 -16 -27 -33 -23 -42 4 -10 2 -13 -6 -8 -8 5 -9 2 -5 -10 4 -10 3 -15
|
||||
-3 -11 -6 3 -13 -2 -17 -12 -4 -10 -19 -38 -35 -62 -30 -48 -35 -67 -16 -55 7
|
||||
4 8 3 4 -5 -4 -6 -11 -9 -16 -6 -9 6 -127 -194 -122 -207 1 -5 -1 -8 -6 -8 -4
|
||||
0 -19 -21 -32 -47 -14 -27 -27 -50 -31 -53 -15 -14 -39 -82 -39 -113 0 -43 9
|
||||
-69 21 -61 5 3 7 -1 4 -8 -3 -7 19 -53 49 -103 40 -69 57 -89 72 -87 11 2 15
|
||||
0 8 -5 -6 -4 -10 -15 -9 -23 4 -27 41 -80 50 -72 5 4 5 1 1 -6 -4 -7 -2 -20 5
|
||||
-28 6 -8 25 -38 40 -67 15 -29 33 -51 38 -50 6 2 8 -3 5 -10 -2 -7 16 -45 41
|
||||
-86 25 -40 45 -77 45 -82 0 -5 7 -12 15 -15 8 -4 13 -9 10 -13 -5 -9 72 -143
|
||||
88 -153 7 -4 8 -8 3 -8 -11 0 14 -30 26 -30 5 0 6 5 2 12 -5 7 -3 8 5 3 8 -5
|
||||
9 -11 3 -17 -11 -11 -4 -48 9 -48 5 0 8 -3 7 -7 -3 -15 14 -43 23 -37 5 3 6
|
||||
-2 3 -10 -3 -9 -2 -16 4 -16 5 0 13 -11 16 -25 4 -16 11 -23 18 -19 7 5 8 3 3
|
||||
-6 -5 -8 -1 -18 10 -27 11 -7 15 -13 11 -13 -4 0 3 -18 15 -40 12 -21 26 -37
|
||||
30 -34 5 3 6 -1 4 -8 -3 -8 1 -22 10 -33 12 -16 16 -17 23 -7 7 11 10 10 15
|
||||
-3 4 -9 3 -13 -2 -10 -5 3 -12 2 -15 -3 -7 -11 11 -37 25 -37 7 0 14 -7 16
|
||||
-15 4 -13 3 -13 -6 0 -14 20 -14 7 1 -25 6 -14 15 -25 20 -25 4 0 8 -5 8 -10
|
||||
0 -9 29 -63 70 -130 5 -8 57 -99 116 -202 62 -109 111 -185 117 -181 6 3 7 1
|
||||
3 -6 -7 -11 93 -195 102 -187 2 2 14 -7 28 -21 16 -16 32 -23 45 -20 10 3 16
|
||||
1 13 -4 -3 -6 461 -9 1165 -9 806 0 1171 4 1171 11 0 5 5 7 10 4 19 -12 105
|
||||
58 94 77 -3 4 -1 8 3 8 14 0 45 59 37 72 -4 6 -3 8 3 5 12 -8 75 101 66 115
|
||||
-3 6 -2 8 4 5 12 -8 75 101 66 115 -3 6 -2 8 4 5 6 -4 22 15 37 42 44 82 51
|
||||
95 74 131 11 19 21 39 21 44 -1 5 3 12 8 15 15 11 83 132 70 126 -6 -4 -4 0 6
|
||||
8 10 8 19 24 20 35 0 11 4 19 8 16 11 -6 60 87 52 100 -3 6 -2 8 2 3 9 -7 57
|
||||
68 58 90 0 7 3 10 6 8 4 -2 14 10 24 26 10 18 12 28 4 24 -6 -4 -4 0 7 9 11 9
|
||||
15 20 10 28 -4 7 -4 10 1 6 11 -10 47 50 39 64 -4 7 -2 8 4 4 11 -6 16 6 13
|
||||
27 0 4 3 7 9 7 5 0 14 9 20 21 9 15 8 24 -2 37 -11 15 -11 16 4 4 14 -11 19
|
||||
-8 38 27 13 22 22 43 21 47 -2 4 2 10 7 13 5 3 21 26 35 51 61 104 59 100 45
|
||||
118 -11 15 -11 15 3 4 15 -11 23 -2 68 79 28 50 51 96 51 100 0 5 4 9 9 9 5 0
|
||||
14 12 20 28 6 15 25 49 41 75 17 27 27 54 24 60 -4 7 -4 9 1 5 11 -11 47 50
|
||||
39 65 -4 7 -3 9 1 4 15 -13 74 105 75 148 0 45 -29 111 -47 108 -7 -2 -10 4
|
||||
-7 12 7 18 -26 76 -39 68 -6 -3 -7 -1 -3 6 6 10 -26 76 -44 91 -3 3 -12 20
|
||||
-19 38 -8 18 -18 35 -24 39 -6 4 -7 1 -2 -7 5 -9 4 -11 -4 -6 -6 4 -9 11 -6
|
||||
16 8 13 -24 72 -35 65 -6 -3 -8 0 -5 7 3 7 -11 38 -30 68 -19 30 -41 69 -50
|
||||
85 -8 17 -26 48 -39 70 -14 22 -35 59 -46 82 -13 24 -27 40 -33 36 -6 -4 -7
|
||||
-1 -2 6 4 7 -2 22 -16 37 -12 13 -19 24 -15 24 3 0 -1 14 -9 31 -11 21 -21 29
|
||||
-32 25 -12 -5 -13 -3 -5 7 17 20 -19 72 -37 54 -11 -10 -11 -8 -3 9 9 16 7 26
|
||||
-5 45 -9 13 -21 27 -26 30 -5 3 -8 10 -7 15 0 5 -9 26 -20 47 -19 33 -24 36
|
||||
-38 25 -15 -12 -16 -11 -4 4 12 14 11 22 -4 47 -10 16 -21 28 -26 25 -4 -3 -5
|
||||
1 -3 9 3 7 -6 30 -20 51 -14 20 -25 39 -25 41 0 10 -115 202 -129 215 -9 8
|
||||
-18 24 -19 35 -2 11 -7 22 -12 25 -4 3 -10 15 -14 28 -4 12 -12 19 -18 16 -6
|
||||
-4 -8 -2 -4 4 8 13 -30 78 -50 86 -8 3 -12 10 -9 16 8 13 -39 92 -50 83 -4 -5
|
||||
-5 -3 -2 4 4 6 -12 44 -35 83 -24 40 -55 93 -69 119 -15 25 -32 45 -38 43 -6
|
||||
-1 -11 5 -11 13 0 19 -57 48 -81 42 -11 -3 -19 -1 -19 4 0 5 -219 9 -529 9
|
||||
-414 0 -530 -3 -534 -12 -4 -10 -6 -10 -6 0 -1 10 -123 12 -596 12 -351 0
|
||||
-594 -4 -590 -10 3 -5 0 -12 -6 -16 -7 -4 -9 -3 -5 4 11 18 -9 22 -38 7z
|
||||
m1314 -35 c749 0 1007 3 1017 12 8 6 13 7 11 2 -1 -5 13 -25 33 -44 19 -19 61
|
||||
-81 93 -138 43 -76 61 -100 68 -90 8 10 9 10 5 -2 -6 -21 11 -63 22 -55 5 3
|
||||
13 0 17 -6 4 -8 3 -9 -4 -5 -7 4 -12 4 -12 0 0 -20 207 -364 220 -365 9 0 10
|
||||
-3 4 -5 -13 -5 104 -223 119 -224 5 0 6 4 2 9 -3 5 0 13 7 17 7 4 10 4 6 -1
|
||||
-4 -4 -2 -15 5 -23 9 -13 9 -14 0 -8 -20 11 -16 -18 6 -45 10 -13 21 -34 25
|
||||
-47 4 -12 12 -19 18 -16 6 4 8 3 5 -3 -3 -5 3 -25 15 -44 12 -19 35 -59 51
|
||||
-89 16 -30 35 -62 41 -70 7 -8 21 -32 31 -52 10 -20 22 -35 26 -32 4 2 11 -1
|
||||
15 -7 5 -8 3 -9 -6 -4 -8 5 -11 3 -8 -6 3 -8 11 -13 17 -11 7 1 10 -2 6 -8 -6
|
||||
-10 40 -99 57 -111 6 -3 10 -10 10 -15 0 -16 105 -194 111 -189 4 3 5 2 2 -1
|
||||
-7 -10 37 -84 46 -78 5 3 6 -2 3 -10 -3 -8 3 -23 13 -34 10 -10 19 -24 21 -31
|
||||
4 -18 92 -172 110 -193 8 -10 13 -18 10 -18 -3 0 -2 -16 2 -35 4 -19 4 -35 0
|
||||
-35 -4 0 -10 -8 -13 -18 -2 -9 -8 -26 -13 -36 -6 -15 -4 -17 7 -11 8 5 11 5 6
|
||||
-1 -5 -5 -13 -9 -18 -9 -10 0 -23 -20 -56 -85 -10 -19 -21 -37 -24 -40 -14
|
||||
-12 -29 -51 -24 -60 4 -6 2 -9 -4 -8 -7 2 -30 -31 -53 -72 -22 -41 -51 -90
|
||||
-64 -109 -22 -32 -24 -58 -3 -46 5 4 6 -2 2 -11 -4 -11 -8 -13 -11 -6 -2 7 -8
|
||||
12 -13 12 -11 0 -43 -60 -32 -60 5 0 3 -4 -3 -8 -24 -17 -43 -56 -33 -68 7 -9
|
||||
5 -11 -8 -10 -11 0 -18 -6 -18 -17 0 -10 -5 -21 -10 -25 -22 -15 -77 -113 -71
|
||||
-127 3 -8 0 -17 -6 -21 -7 -4 -8 -3 -4 4 4 7 5 12 2 12 -12 0 -76 -122 -70
|
||||
-133 4 -7 4 -9 -1 -5 -5 5 -25 -20 -46 -55 -27 -45 -35 -65 -27 -75 8 -10 7
|
||||
-11 -7 -5 -14 5 -17 3 -12 -10 4 -10 2 -16 -5 -14 -6 1 -13 -4 -16 -12 -3 -9
|
||||
0 -11 9 -6 8 5 11 4 6 -1 -5 -5 -11 -8 -14 -6 -10 6 -93 -142 -88 -156 3 -7 1
|
||||
-10 -5 -7 -5 3 -14 -4 -20 -15 -9 -16 -8 -25 2 -38 11 -15 11 -15 -2 -5 -13
|
||||
10 -20 5 -43 -33 -15 -25 -22 -42 -15 -39 7 4 6 1 -3 -7 -9 -7 -15 -21 -13
|
||||
-31 1 -9 -1 -15 -6 -12 -11 7 -33 -22 -26 -34 4 -5 -1 -14 -10 -19 -9 -5 -14
|
||||
-15 -10 -21 4 -6 12 -8 18 -5 7 4 8 2 4 -5 -6 -9 -11 -9 -21 -1 -9 8 -26 -14
|
||||
-73 -94 -38 -66 -56 -107 -49 -110 7 -2 6 -5 -3 -5 -9 -1 -46 -55 -86 -124
|
||||
-55 -95 -78 -126 -105 -140 -22 -11 -33 -23 -31 -35 2 -16 2 -16 -8 1 -10 16
|
||||
-76 17 -1156 17 -1043 0 -1148 1 -1182 17 -20 9 -44 16 -52 15 -10 -1 -11 1
|
||||
-3 4 10 4 9 12 -3 35 -8 16 -19 27 -24 24 -6 -4 -7 1 -3 11 4 10 2 15 -3 11
|
||||
-6 -3 -10 2 -11 11 -2 25 -53 112 -66 112 -5 0 -8 3 -4 6 8 9 -21 64 -33 64
|
||||
-6 0 -9 3 -9 8 3 20 -2 32 -13 26 -6 -4 -8 -3 -4 4 6 11 -47 111 -66 123 -5 3
|
||||
-8 8 -6 10 2 3 -81 154 -122 219 -5 8 -39 68 -75 133 -40 69 -71 114 -77 111
|
||||
-6 -4 -8 -2 -5 4 9 14 -3 43 -14 36 -5 -3 -6 1 -4 8 3 8 -5 25 -17 38 -12 13
|
||||
-23 29 -23 35 0 23 -118 215 -128 208 -5 -3 -7 -1 -4 5 10 16 -3 42 -22 43 -9
|
||||
0 -11 3 -4 5 13 6 -100 209 -116 209 -5 0 -13 4 -18 9 -5 5 -3 6 5 2 16 -10
|
||||
16 9 -1 26 -7 7 -14 18 -15 23 -1 6 -8 10 -14 10 -7 0 -12 9 -10 19 2 10 -5
|
||||
24 -15 32 -10 7 -15 14 -10 14 4 0 0 14 -8 30 -9 18 -21 28 -27 24 -6 -4 -8
|
||||
-3 -5 4 7 11 -47 119 -78 155 -11 12 -18 22 -16 22 2 0 -3 12 -10 27 -6 15
|
||||
-15 25 -20 23 -4 -3 -11 0 -15 6 -5 8 -3 9 6 4 8 -5 11 -3 8 6 -3 8 -10 13
|
||||
-16 12 -6 -2 -9 3 -6 11 3 7 -1 20 -9 28 -30 29 -16 105 35 192 26 44 44 84
|
||||
41 89 -3 6 -1 7 4 4 17 -10 25 24 11 42 -11 14 -11 14 3 4 13 -10 20 -5 45 38
|
||||
16 28 27 53 26 56 -2 3 0 9 5 12 21 14 53 80 47 97 -4 15 -4 16 4 5 8 -11 13
|
||||
-8 25 15 8 16 12 35 10 42 -3 7 -1 11 4 10 4 -2 9 1 10 6 1 5 5 12 10 15 4 3
|
||||
15 15 23 25 14 18 13 19 -3 13 -11 -4 -16 -3 -12 3 3 6 13 10 20 10 8 0 17 11
|
||||
21 25 3 14 11 25 16 25 6 0 7 7 4 16 -3 8 -2 12 4 9 6 -3 10 -4 10 -1 0 2 3
|
||||
12 7 22 5 13 3 15 -7 9 -9 -5 -11 -4 -6 4 4 6 11 9 16 6 5 -3 25 23 44 58 38
|
||||
68 43 83 24 71 -7 -4 -8 -3 -4 5 4 6 11 9 16 6 12 -8 33 33 24 47 -4 6 -3 8 4
|
||||
5 6 -4 23 17 41 48 34 61 39 80 15 71 -9 -3 -12 -2 -9 5 4 6 13 8 21 5 15 -6
|
||||
39 27 100 138 19 35 31 66 27 71 -5 4 -3 6 2 2 6 -3 21 13 34 35 13 23 17 37
|
||||
9 33 -7 -4 -3 2 9 14 29 28 54 76 45 86 -4 5 -2 5 4 2 6 -3 17 9 24 28 8 19
|
||||
17 35 20 35 7 0 37 59 38 74 0 5 4 12 10 15 16 11 62 97 55 104 -3 4 -1 7 5 7
|
||||
12 0 75 106 75 127 0 7 3 11 5 8 9 -9 122 196 115 208 -3 7 -3 9 2 5 4 -4 21
|
||||
4 37 17 17 15 43 25 61 25 18 1 87 1 155 1 115 0 123 1 110 17 -11 15 -10 15
|
||||
8 0 19 -17 84 -18 1024 -18z m-980 24 c0 -8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0
|
||||
15 -2 15 -3z m2187 -236 c2 -17 0 -19 -7 -8 -5 8 -6 18 -4 22 8 12 10 10 11
|
||||
-14z m-2917 -358 c-6 -11 -13 -20 -16 -20 -2 0 0 9 6 20 6 11 13 20 16 20 2 0
|
||||
0 -9 -6 -20z m-400 -714 c0 -3 -4 -8 -10 -11 -5 -3 -10 -1 -10 4 0 6 5 11 10
|
||||
11 6 0 10 -2 10 -4z m3995 -95 c3 -5 2 -12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19
|
||||
12 6z m-4260 -350 c3 -5 2 -12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19 12 6z m4589
|
||||
-223 c-9 -14 -23 2 -17 18 4 12 8 13 14 3 4 -7 5 -17 3 -21z m-167 -559 c-6
|
||||
-10 -16 -15 -21 -12 -6 4 -5 8 2 11 7 2 10 7 8 11 -3 4 1 8 8 8 11 0 12 -4 3
|
||||
-18z m-197 -345 c0 -8 -19 -13 -24 -6 -3 5 1 9 9 9 8 0 15 -2 15 -3z m-3943
|
||||
-69 c0 -8 -4 -12 -9 -9 -5 3 -6 10 -3 15 9 13 12 11 12 -6z m498 -854 c3 -5 2
|
||||
-12 -3 -15 -5 -3 -9 1 -9 9 0 17 3 19 12 6z m2695 -355 c0 -2 -8 -10 -17 -17
|
||||
-16 -13 -17 -12 -4 4 13 16 21 21 21 13z"/>
|
||||
<path d="M2344 3920 c-391 -34 -729 -229 -849 -491 -62 -136 -72 -311 -26
|
||||
-431 64 -165 250 -264 426 -228 158 32 248 132 248 274 0 108 -48 180 -126
|
||||
193 -26 4 -43 -3 -86 -32 -109 -75 -169 -84 -226 -34 -43 38 -59 93 -52 176 8
|
||||
86 40 147 116 224 106 107 266 173 445 186 154 11 242 -25 290 -118 l28 -54
|
||||
-46 -195 c-62 -260 -149 -589 -253 -960 -47 -168 -88 -313 -90 -322 -5 -17
|
||||
-25 -18 -249 -18 l-244 0 0 -80 0 -80 219 -2 220 -3 -48 -130 c-165 -451 -353
|
||||
-673 -581 -683 -42 -2 -94 1 -116 7 -57 15 -124 78 -180 167 -54 84 -74 95
|
||||
-128 69 -44 -21 -73 -67 -88 -137 -10 -45 -9 -58 6 -88 32 -66 125 -116 269
|
||||
-147 103 -21 309 -13 398 16 192 61 343 200 482 443 39 67 129 277 168 391
|
||||
l33 97 351 0 352 0 82 -287 c91 -313 118 -380 181 -437 141 -127 419 -127 675
|
||||
-1 147 73 151 76 135 115 -14 35 -16 35 -65 15 -54 -23 -125 -34 -151 -24 -13
|
||||
4 -30 19 -38 31 -15 23 -176 550 -176 576 0 9 42 12 175 12 l175 0 0 80 0 80
|
||||
-201 2 -202 3 -201 695 c-112 382 -215 727 -230 766 -94 247 -273 354 -615
|
||||
367 -64 3 -157 1 -207 -3z m461 -1283 c85 -295 155 -539 155 -542 0 -3 -137
|
||||
-5 -304 -5 l-303 0 34 118 c48 165 143 520 204 765 28 114 53 206 55 204 2 -2
|
||||
74 -245 159 -540z"/>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 10 KiB |
BIN
code-server/media/pwa-icon-192.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
code-server/media/pwa-icon-512.png
Normal file
After Width: | Height: | Size: 167 KiB |
BIN
code-server/media/pwa-icon.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
code-server/media/templates.png
Normal file
After Width: | Height: | Size: 46 KiB |
27
code-server/root/etc/s6-overlay/s6-rc.d/svc-code-server/run
Normal file
@ -0,0 +1,27 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
if [ -n "${PASSWORD}" ] || [ -n "${HASHED_PASSWORD}" ]; then
|
||||
AUTH="password"
|
||||
else
|
||||
AUTH="none"
|
||||
echo "starting with no password"
|
||||
fi
|
||||
|
||||
if [ -z ${PROXY_DOMAIN+x} ]; then
|
||||
PROXY_DOMAIN_ARG=""
|
||||
else
|
||||
PROXY_DOMAIN_ARG="--proxy-domain=${PROXY_DOMAIN}"
|
||||
fi
|
||||
|
||||
exec \
|
||||
s6-notifyoncheck -d -n 300 -w 1000 -c "nc -z 127.0.0.1 8443" \
|
||||
s6-setuidgid abc \
|
||||
/app/code-server/bin/code-server \
|
||||
--bind-addr 0.0.0.0:8443 \
|
||||
--user-data-dir /config/data \
|
||||
--extensions-dir /config/extensions \
|
||||
--disable-telemetry \
|
||||
--auth "${AUTH}" \
|
||||
--app-name "Arkanum" \
|
||||
"${PROXY_DOMAIN_ARG}" \
|
||||
"${DEFAULT_WORKSPACE:-/config/workspace}"
|
54
docs/.vitepress/config.mjs
Normal file
@ -0,0 +1,54 @@
|
||||
import { defineConfig } from 'vitepress'
|
||||
|
||||
import { version } from '../../package.json'
|
||||
import navbar from './navbar.mjs'
|
||||
import { SidebarItems } from './sidebar.mjs'
|
||||
import { brandIcons } from './theme/icons.mjs'
|
||||
|
||||
// https://vitepress.dev/reference/site-config
|
||||
export default defineConfig({
|
||||
title: 'Arkanum',
|
||||
titleTemplate: '🧙 Arkanum',
|
||||
description: 'An opinionated Code-Server distribution.',
|
||||
lang: 'en-US',
|
||||
head: [
|
||||
['link', { rel: 'icon', href: '/favicon.png' }],
|
||||
[
|
||||
'script',
|
||||
{
|
||||
async: '',
|
||||
defer: '',
|
||||
src: 'https://umami.ocram85.com/script.js',
|
||||
'data-website-id': 'e76d99a0-a185-4151-8a68-0fb44c6f0dc0',
|
||||
'data-domains': 'arkanum.dev',
|
||||
'data-do-not-track': 'true',
|
||||
},
|
||||
],
|
||||
],
|
||||
cleanUrls: true,
|
||||
appearance: 'force-dark',
|
||||
markdown: {
|
||||
image: {
|
||||
lazyLoading: true,
|
||||
},
|
||||
},
|
||||
themeConfig: {
|
||||
logo: '/logo.png',
|
||||
outline: 'deep',
|
||||
search: {
|
||||
provider: 'local',
|
||||
},
|
||||
// https://vitepress.dev/reference/default-theme-config
|
||||
nav: navbar.getItems(version),
|
||||
sidebar: SidebarItems,
|
||||
socialLinks: [{ icon: {svg: brandIcons.giteaAlt}, link: 'https://gitea.ocram85.com/arkanum/arkanum' }],
|
||||
footer: {
|
||||
message: 'Released under the AGPLv3 License.',
|
||||
copyright: 'Copyright © 2022-present OCram85 <me@ocram85.com>',
|
||||
},
|
||||
editLink: {
|
||||
pattern: 'https://gitea.ocram85.com/arkanum/arkanum/_edit/main/docs/:path',
|
||||
text: 'Edit this page on Gitea',
|
||||
},
|
||||
},
|
||||
})
|
28
docs/.vitepress/navbar.mjs
Normal file
@ -0,0 +1,28 @@
|
||||
function getItems(version) {
|
||||
const ci = process.env.CI
|
||||
const pr = process.env.CI_COMMIT_PULL_REQUEST
|
||||
|
||||
let nver = undefined
|
||||
|
||||
if (ci === 'woodpecker') {
|
||||
if (pr !== null) {
|
||||
nver = `${version}#${pr}`
|
||||
}
|
||||
} else {
|
||||
nver = version
|
||||
}
|
||||
|
||||
return [
|
||||
{ text: 'Home', link: '/' },
|
||||
{ text: 'Blog', link: '/blog' },
|
||||
{ text: 'Guide', link: '/guide/about' },
|
||||
{
|
||||
text: nver,
|
||||
items: [{ text: 'Changelog', link: '/changelog' }],
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
export default {
|
||||
getItems,
|
||||
}
|
31
docs/.vitepress/sidebar.mjs
Normal file
@ -0,0 +1,31 @@
|
||||
export const SidebarItems = {
|
||||
'/guide/': { base: '/guide/', items: getGuide() },
|
||||
}
|
||||
|
||||
function getGuide() {
|
||||
return [
|
||||
{
|
||||
text: 'Guide',
|
||||
//collapsed: false,
|
||||
items: [
|
||||
{ text: 'About', link: 'about' },
|
||||
{ text: 'Getting Started', link: 'getting-started' },
|
||||
{
|
||||
text: 'Components',
|
||||
items: [
|
||||
{ text: 'Base Images', link: 'components/base-images' },
|
||||
{ text: 'Included Packages', link: 'components/packages' },
|
||||
{ text: 'Starship Prompt', link: 'components/starship' },
|
||||
{ text: 'Git', link: 'components/git' },
|
||||
{ text: 'Arkanum CLI', link: 'components/arkanum-cli' },
|
||||
{ text: 'FiraCode Font', link: 'components/firacode' },
|
||||
{ text: 'Code Server', link: 'components/code-server' },
|
||||
{ text: 'VSCode', link: 'components/vscode' },
|
||||
],
|
||||
},
|
||||
{ text: 'Known Issues', link: 'known-issues' },
|
||||
{ text: 'FAQs', link: 'faq' },
|
||||
],
|
||||
},
|
||||
]
|
||||
}
|
54
docs/.vitepress/theme/components/Blog.vue
Normal file
@ -0,0 +1,54 @@
|
||||
<script setup>
|
||||
import Posts from './Posts.vue'
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="blog-container">
|
||||
<h1>Blog</h1>
|
||||
<Posts featured>
|
||||
<h2>⭐ Featured Articles</h2>
|
||||
</Posts>
|
||||
<Posts>
|
||||
<h2>📰 All Posts</h2>
|
||||
</Posts>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.blog-container {
|
||||
margin: auto;
|
||||
width: 100%;
|
||||
max-width: 1280px;
|
||||
padding: 0 64px;
|
||||
}
|
||||
|
||||
h1,
|
||||
h2,
|
||||
h3 {
|
||||
position: relative;
|
||||
font-weight: 600;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
h1 {
|
||||
letter-spacing: -0.02em;
|
||||
line-height: 40px;
|
||||
font-size: 32px;
|
||||
margin-top: 32px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin: 40px 0 16px;
|
||||
border-top: 1px solid var(--vp-c-divider);
|
||||
padding-top: 24px;
|
||||
letter-spacing: -0.02em;
|
||||
line-height: 32px;
|
||||
font-size: 24px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin: 32px 0 0;
|
||||
letter-spacing: -0.01em;
|
||||
font-size: 20px;
|
||||
}
|
||||
</style>
|
49
docs/.vitepress/theme/components/BlogHeaderImage.vue
Normal file
@ -0,0 +1,49 @@
|
||||
<script setup>
|
||||
import { withBase } from 'vitepress';
|
||||
import { computed } from 'vue';
|
||||
|
||||
const props = defineProps({
|
||||
Source: {
|
||||
type: String,
|
||||
required: true
|
||||
},
|
||||
Caption: {
|
||||
type: String
|
||||
}
|
||||
})
|
||||
|
||||
const ImageSource = computed(() => {
|
||||
return withBase(props.Source)
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="blog-header-container">
|
||||
<img :src="ImageSource">
|
||||
<p v-if="props.Caption">{{ props.Caption }}</p>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.blog-header-container {
|
||||
width: 100%;
|
||||
margin: 24px 0;
|
||||
}
|
||||
|
||||
.blog-header-container img {
|
||||
max-width: 325px;
|
||||
max-height: 325px;
|
||||
margin: 12px auto;
|
||||
border: 2px solid var(--vp-c-brand-soft);
|
||||
border-radius: 12px;
|
||||
/*box-shadow: -1px 5px 24px 12px var(--vp-c-brand-soft);*/
|
||||
box-shadow: 0px 8px 16px var(--vp-c-brand-soft);
|
||||
}
|
||||
|
||||
.blog-header-container p {
|
||||
width: 80%;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
font-size: smaller;
|
||||
}
|
||||
</style>
|
181
docs/.vitepress/theme/components/Post.vue
Normal file
@ -0,0 +1,181 @@
|
||||
<script setup>
|
||||
import { computed } from 'vue'
|
||||
import { withBase } from 'vitepress'
|
||||
import Badge from 'vitepress/dist/client/theme-default/components/VPBadge.vue'
|
||||
|
||||
const props = defineProps({
|
||||
image: {
|
||||
type: String,
|
||||
default: 'placeholder.jpg',
|
||||
},
|
||||
title: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
tag: {
|
||||
type: String,
|
||||
default: 'no-tag',
|
||||
},
|
||||
url: {
|
||||
type: String,
|
||||
required: true,
|
||||
},
|
||||
featured: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
date: {
|
||||
type: String,
|
||||
default: '2020-01-01'
|
||||
},
|
||||
author: {
|
||||
type: String,
|
||||
default: 'Anonymous'
|
||||
}
|
||||
})
|
||||
|
||||
const normTitle = computed(() => {
|
||||
if (props.title.length > 50) {
|
||||
return props.title.slice(0, 50) + '...'
|
||||
} else {
|
||||
return props.title
|
||||
}
|
||||
})
|
||||
|
||||
const normImage = computed(() => {
|
||||
if (props.image !== null) return withBase(props.image)
|
||||
else {
|
||||
return withBase('placeholder.jpg')
|
||||
}
|
||||
})
|
||||
|
||||
const normTag = computed(() => {
|
||||
if (props.tag !== null) return props.tag.toUpperCase()
|
||||
else {
|
||||
return 'EMPTY-TAG'
|
||||
}
|
||||
})
|
||||
|
||||
const authorURL = computed(() => {
|
||||
return `https://gitea.ocram85.com/${props.author}`
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<article class="card">
|
||||
<div class="card-header">
|
||||
<img :src="normImage" />
|
||||
</div>
|
||||
<div class="card-content">
|
||||
<div class="badge-container">
|
||||
<Badge :text="normTag" type="tip" />
|
||||
</div>
|
||||
<h3>{{ normTitle }}</h3>
|
||||
<p class="acredits">by <a class="author" :href="authorURL" target="_blank">{{ author }}</a> on </p> <p class="acredits date">{{ date}}</p>
|
||||
<a class="url" :href="url">Read More</a>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.card {
|
||||
margin: 15px;
|
||||
padding: 0px;
|
||||
background-color: var(--vp-c-bg-soft);
|
||||
border-color: var(--vp-c-brand-2);
|
||||
border-style: solid;
|
||||
border-width: 1px;
|
||||
border-radius: 10px;
|
||||
width: 325px;
|
||||
/*height: 450px; */
|
||||
overflow: hidden;
|
||||
box-shadow: 0px 8px 16px var(--vp-c-brand-soft);
|
||||
position: relative;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.card:hover {
|
||||
border-color: var(--vp-c-brand-1);
|
||||
filter: brightness(125%);
|
||||
transition: 0.25s;
|
||||
box-shadow: 0px 16px 32px var(--vp-c-brand-soft);
|
||||
/*top: -10px;*/
|
||||
}
|
||||
|
||||
.card-header {
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
}
|
||||
.card-header img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
object-fit: cover;
|
||||
}
|
||||
|
||||
.card-content {
|
||||
padding: 0 20px;
|
||||
height: 200px;
|
||||
}
|
||||
|
||||
.card-content h3 {
|
||||
margin-top: 5px;
|
||||
height: 60px;
|
||||
}
|
||||
|
||||
.badge-container {
|
||||
margin: 10px 0;
|
||||
}
|
||||
|
||||
h3 {
|
||||
position: relative;
|
||||
font-weight: 600;
|
||||
outline: none;
|
||||
|
||||
margin: 32px 0 0;
|
||||
letter-spacing: -0.01em;
|
||||
line-height: 28px;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
a {
|
||||
font-weight: 500;
|
||||
color: var(--vp-c-brand-1);
|
||||
text-decoration: underline;
|
||||
text-underline-offset: 2px;
|
||||
transition: color 0.025s, opacity 0.25s;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: var(--vp-c-brand-2);
|
||||
}
|
||||
|
||||
.acredits {
|
||||
margin-top: 10px;
|
||||
display: inline-block;
|
||||
height: 50px;
|
||||
|
||||
font-weight: 300;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.author {
|
||||
display: inline-block;
|
||||
font-weight: 400;
|
||||
text-decoration: none;
|
||||
color: var(--vp-c-brand-2)
|
||||
}
|
||||
|
||||
.date {
|
||||
display: inline-block;
|
||||
font-weight: 400;
|
||||
color: var(--vp-c-brand-2);
|
||||
}
|
||||
|
||||
.url {
|
||||
display: block;
|
||||
margin-top: 5px;
|
||||
padding-right: 30px;
|
||||
max-height: 30px;
|
||||
text-align: right;
|
||||
}
|
||||
</style>
|
57
docs/.vitepress/theme/components/Posts.vue
Normal file
@ -0,0 +1,57 @@
|
||||
<script setup>
|
||||
import { data } from './posts.data.js'
|
||||
import Post from './Post.vue'
|
||||
|
||||
const props = defineProps({
|
||||
tagFilter: {
|
||||
type: String,
|
||||
default: 'none',
|
||||
},
|
||||
featured: {
|
||||
type: Boolean,
|
||||
default: false,
|
||||
},
|
||||
})
|
||||
|
||||
const posts = data.filter((el) => {
|
||||
if (!props.featured) {
|
||||
if (props.tagFilter.toLowerCase() === 'none') {
|
||||
return true
|
||||
} else if (props.tagFilter.toLowerCase() === el.frontmatter.tag.toLowerCase()) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
} else {
|
||||
if (el.frontmatter.featured) {
|
||||
return true
|
||||
} else return false
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<slot v-if="posts.length">
|
||||
<h2 v-if="posts.length > 0">All Posts</h2>
|
||||
</slot>
|
||||
<section class="card-container">
|
||||
<Post
|
||||
:image="post.frontmatter.image"
|
||||
:title="post.frontmatter.title"
|
||||
:tag="post.frontmatter.tag"
|
||||
:url="post.url"
|
||||
:date="post.frontmatter.date"
|
||||
:author="post.frontmatter.author"
|
||||
v-for="post in posts"
|
||||
/>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
.card-container {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
flex-wrap: wrap;
|
||||
flex-direction: row;
|
||||
}
|
||||
</style>
|
10
docs/.vitepress/theme/components/posts.data.js
Normal file
@ -0,0 +1,10 @@
|
||||
import { createContentLoader } from 'vitepress'
|
||||
|
||||
export default createContentLoader('posts/**/*.md', {
|
||||
excerpt: false,
|
||||
transform(raw) {
|
||||
return raw.sort((a, b) => {
|
||||
return +new Date(b.frontmatter.date) - +new Date(a.frontmatter.date)
|
||||
})
|
||||
}
|
||||
})
|
5
docs/.vitepress/theme/icons.mjs
Normal file
@ -0,0 +1,5 @@
|
||||
export const brandIcons = {
|
||||
gitea: '<svg version="1.1" id="main_outline" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 640 640" style="enable-background:new 0 0 640 640;" xml:space="preserve"><g><path id="teabag" style="fill:#FFFFFF" d="M395.9,484.2l-126.9-61c-12.5-6-17.9-21.2-11.8-33.8l61-126.9c6-12.5,21.2-17.9,33.8-11.8c17.2,8.3,27.1,13,27.1,13l-0.1-109.2l16.7-0.1l0.1,117.1c0,0,57.4,24.2,83.1,40.1c3.7,2.3,10.2,6.8,12.9,14.4c2.1,6.1,2,13.1-1,19.3l-61,126.9C423.6,484.9,408.4,490.3,395.9,484.2z"/><g><g><path style="fill:#609926" d="M622.7,149.8c-4.1-4.1-9.6-4-9.6-4s-117.2,6.6-177.9,8c-13.3,0.3-26.5,0.6-39.6,0.7c0,39.1,0,78.2,0,117.2c-5.5-2.6-11.1-5.3-16.6-7.9c0-36.4-0.1-109.2-0.1-109.2c-29,0.4-89.2-2.2-89.2-2.2s-141.4-7.1-156.8-8.5c-9.8-0.6-22.5-2.1-39,1.5c-8.7,1.8-33.5,7.4-53.8,26.9C-4.9,212.4,6.6,276.2,8,285.8c1.7,11.7,6.9,44.2,31.7,72.5c45.8,56.1,144.4,54.8,144.4,54.8s12.1,28.9,30.6,55.5c25,33.1,50.7,58.9,75.7,62c63,0,188.9-0.1,188.9-0.1s12,0.1,28.3-10.3c14-8.5,26.5-23.4,26.5-23.4s12.9-13.8,30.9-45.3c5.5-9.7,10.1-19.1,14.1-28c0,0,55.2-117.1,55.2-231.1C633.2,157.9,624.7,151.8,622.7,149.8z M125.6,353.9c-25.9-8.5-36.9-18.7-36.9-18.7S69.6,321.8,60,295.4c-16.5-44.2-1.4-71.2-1.4-71.2s8.4-22.5,38.5-30c13.8-3.7,31-3.1,31-3.1s7.1,59.4,15.7,94.2c7.2,29.2,24.8,77.7,24.8,77.7S142.5,359.9,125.6,353.9z M425.9,461.5c0,0-6.1,14.5-19.6,15.4c-5.8,0.4-10.3-1.2-10.3-1.2s-0.3-0.1-5.3-2.1l-112.9-55c0,0-10.9-5.7-12.8-15.6c-2.2-8.1,2.7-18.1,2.7-18.1L322,273c0,0,4.8-9.7,12.2-13c0.6-0.3,2.3-1,4.5-1.5c8.1-2.1,18,2.8,18,2.8l110.7,53.7c0,0,12.6,5.7,15.3,16.2c1.9,7.4-0.5,14-1.8,17.2C474.6,363.8,425.9,461.5,425.9,461.5z"/><path style="fill:#609926" d="M326.8,380.1c-8.2,0.1-15.4,5.8-17.3,13.8c-1.9,8,2,16.3,9.1,20c7.7,4,17.5,1.8,22.7-5.4c5.1-7.1,4.3-16.9-1.8-23.1l24-49.1c1.5,0.1,3.7,0.2,6.2-0.5c4.1-0.9,7.1-3.6,7.1-3.6c4.2,1.8,8.6,3.8,13.2,6.1c4.8,2.4,9.3,4.9,13.4,7.3c0.9,0.5,1.8,1.1,2.8,1.9c1.6,1.3,3.4,3.1,4.7,5.5c1.9,5.5-1.9,14.9-1.9,14.9c-2.3,7.6-18.4,40.6-18.4,40.6c-8.1-0.2-15.3,5-17.7,12.5c-2.6,8.1,1.1,17.3,8.9,21.3c7.8,4,17.4,1.7,22.5-5.3c5-6.8,4.6-16.3-1.1-22.6c1.9-3.7,3.7-7.4,5.6-11.3c5-10.4,13.5-30.4,13.5-30.4c0.9-1.7,5.7-10.3,2.7-21.3c-2.5-11.4-12.6-16.7-12.6-16.7c-12.2-7.9-29.2-15.2-29.2-15.2s0-4.1-1.1-7.1c-1.1-3.1-2.8-5.1-3.9-6.3c4.7-9.7,9.4-19.3,14.1-29c-4.1-2-8.1-4-12.2-6.1c-4.8,9.8-9.7,19.7-14.5,29.5c-6.7-0.1-12.9,3.5-16.1,9.4c-3.4,6.3-2.7,14.1,1.9,19.8C343.2,346.5,335,363.3,326.8,380.1z"/></g></g></g></svg>',
|
||||
mail: '<?xml version="1.0" encoding="iso-8859-1"?><svg fill="#000000" height="800px" width="800px" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 75.294 75.294" xml:space="preserve"><g><path d="M66.097,12.089h-56.9C4.126,12.089,0,16.215,0,21.286v32.722c0,5.071,4.126,9.197,9.197,9.197h56.9c5.071,0,9.197-4.126,9.197-9.197V21.287C75.295,16.215,71.169,12.089,66.097,12.089z M61.603,18.089L37.647,33.523L13.691,18.089H61.603z M66.097,57.206h-56.9C7.434,57.206,6,55.771,6,54.009V21.457l29.796,19.16c0.04,0.025,0.083,0.042,0.124,0.065c0.043,0.024,0.087,0.047,0.131,0.069c0.231,0.119,0.469,0.215,0.712,0.278c0.025,0.007,0.05,0.01,0.075,0.016c0.267,0.063,0.537,0.102,0.807,0.102c0.001,0,0.002,0,0.002,0c0.002,0,0.003,0,0.004,0c0.27,0,0.54-0.038,0.807-0.102c0.025-0.006,0.05-0.009,0.075-0.016c0.243-0.063,0.48-0.159,0.712-0.278c0.044-0.022,0.088-0.045,0.131-0.069c0.041-0.023,0.084-0.04,0.124-0.065l29.796-19.16v32.551C69.295,55.771,67.86,57.206,66.097,57.206z"/></g></svg>',
|
||||
giteaAlt: '<?xml version="1.0" encoding="utf-8"?><svg fill="#000000" width="800px" height="800px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><path d="M5.583 7.229c-2.464-0.005-5.755 1.557-5.573 5.479 0.281 6.125 6.557 6.693 9.068 6.745 0.271 1.146 3.224 5.109 5.411 5.318h9.573c5.74-0.38 10.036-17.365 6.854-17.427-5.271 0.25-8.396 0.375-11.073 0.396v5.297l-0.839-0.365-0.005-4.932c-3.073 0-5.781-0.141-10.917-0.396-0.646-0.005-1.542-0.115-2.5-0.115zM5.927 9.396h0.297c0.349 3.141 0.917 4.974 2.068 7.781-2.938-0.349-5.432-1.198-5.891-4.38-0.24-1.646 0.563-3.365 3.526-3.401zM17.339 12.479c0.198 0.005 0.406 0.042 0.594 0.13l1 0.432-0.714 1.302c-0.109 0-0.219 0.016-0.323 0.052-0.464 0.151-0.708 0.604-0.542 1.021 0.036 0.083 0.089 0.161 0.151 0.229l-1.234 2.25c-0.099 0-0.203 0.016-0.297 0.052-0.464 0.146-0.708 0.604-0.542 1.016 0.172 0.417 0.682 0.63 1.151 0.479 0.464-0.146 0.703-0.604 0.536-1.021-0.047-0.109-0.115-0.208-0.208-0.292l1.203-2.188c0.13 0.010 0.26 0 0.391-0.042 0.104-0.031 0.198-0.083 0.281-0.151 0.464 0.198 0.844 0.354 1.12 0.49 0.406 0.203 0.552 0.339 0.599 0.49 0.042 0.146-0.005 0.427-0.24 0.922-0.172 0.37-0.458 0.896-0.797 1.51-0.115 0-0.229 0.016-0.333 0.052-0.469 0.151-0.708 0.604-0.542 1.021 0.167 0.411 0.682 0.625 1.146 0.479 0.469-0.151 0.708-0.604 0.542-1.021-0.042-0.099-0.104-0.193-0.182-0.271 0.333-0.609 0.62-1.135 0.807-1.526 0.25-0.536 0.38-0.938 0.266-1.323s-0.469-0.635-0.932-0.865c-0.307-0.151-0.693-0.313-1.146-0.505 0.005-0.109-0.010-0.214-0.052-0.318s-0.109-0.198-0.193-0.281l0.703-1.281 3.901 1.682c0.703 0.307 0.995 1.057 0.651 1.682l-2.682 4.906c-0.339 0.625-1.182 0.885-1.885 0.578l-5.516-2.38c-0.703-0.307-0.995-1.057-0.656-1.682l2.682-4.906c0.234-0.432 0.708-0.688 1.208-0.708h0.083z"/></svg>'
|
||||
}
|
21
docs/.vitepress/theme/index.js
Normal file
@ -0,0 +1,21 @@
|
||||
// https://vitepress.dev/guide/custom-theme
|
||||
import { h } from 'vue'
|
||||
import DefaultTheme from 'vitepress/theme'
|
||||
import './style.css'
|
||||
|
||||
import Blog from './components/Blog.vue'
|
||||
import BlogHeaderImage from './components/BlogHeaderImage.vue'
|
||||
|
||||
/** @type {import('vitepress').Theme} */
|
||||
export default {
|
||||
extends: DefaultTheme,
|
||||
Layout: () => {
|
||||
return h(DefaultTheme.Layout, null, {
|
||||
// https://vitepress.dev/guide/extending-default-theme#layout-slots
|
||||
})
|
||||
},
|
||||
enhanceApp({ app, router, siteData }) {
|
||||
app.component('blog', Blog)
|
||||
app.component('BlogHeaderImage', BlogHeaderImage)
|
||||
},
|
||||
}
|
139
docs/.vitepress/theme/style.css
Normal file
@ -0,0 +1,139 @@
|
||||
/**
|
||||
* Customize default theme styling by overriding CSS variables:
|
||||
* https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css
|
||||
*/
|
||||
|
||||
/**
|
||||
* Colors
|
||||
*
|
||||
* Each colors have exact same color scale system with 3 levels of solid
|
||||
* colors with different brightness, and 1 soft color.
|
||||
*
|
||||
* - `XXX-1`: The most solid color used mainly for colored text. It must
|
||||
* satisfy the contrast ratio against when used on top of `XXX-soft`.
|
||||
*
|
||||
* - `XXX-2`: The color used mainly for hover state of the button.
|
||||
*
|
||||
* - `XXX-3`: The color for solid background, such as bg color of the button.
|
||||
* It must satisfy the contrast ratio with pure white (#ffffff) text on
|
||||
* top of it.
|
||||
*
|
||||
* - `XXX-soft`: The color used for subtle background such as custom container
|
||||
* or badges. It must satisfy the contrast ratio when putting `XXX-1` colors
|
||||
* on top of it.
|
||||
*
|
||||
* The soft color must be semi transparent alpha channel. This is crucial
|
||||
* because it allows adding multiple "soft" colors on top of each other
|
||||
* to create a accent, such as when having inline code block inside
|
||||
* custom containers.
|
||||
*
|
||||
* - `default`: The color used purely for subtle indication without any
|
||||
* special meanings attched to it such as bg color for menu hover state.
|
||||
*
|
||||
* - `brand`: Used for primary brand colors, such as link text, button with
|
||||
* brand theme, etc.
|
||||
*
|
||||
* - `tip`: Used to indicate useful information. The default theme uses the
|
||||
* brand color for this by default.
|
||||
*
|
||||
* - `warning`: Used to indicate warning to the users. Used in custom
|
||||
* container, badges, etc.
|
||||
*
|
||||
* - `danger`: Used to show error, or dangerous message to the users. Used
|
||||
* in custom container, badges, etc.
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-default-1: var(--vp-c-gray-1);
|
||||
--vp-c-default-2: var(--vp-c-gray-2);
|
||||
--vp-c-default-3: var(--vp-c-gray-3);
|
||||
--vp-c-default-soft: var(--vp-c-gray-soft);
|
||||
|
||||
--vp-c-brand-1: #10b981;
|
||||
--vp-c-brand-2: #0e9d6e;
|
||||
--vp-c-brand-3: #11bc84;
|
||||
--vp-c-brand-soft: rgba(16, 185, 129, 0.14);
|
||||
|
||||
--vp-c-tip-1: var(--vp-c-brand-1);
|
||||
--vp-c-tip-2: var(--vp-c-brand-2);
|
||||
--vp-c-tip-3: var(--vp-c-brand-3);
|
||||
--vp-c-tip-soft: var(--vp-c-brand-soft);
|
||||
|
||||
--vp-c-warning-1: var(--vp-c-yellow-1);
|
||||
--vp-c-warning-2: var(--vp-c-yellow-2);
|
||||
--vp-c-warning-3: var(--vp-c-yellow-3);
|
||||
--vp-c-warning-soft: var(--vp-c-yellow-soft);
|
||||
|
||||
--vp-c-danger-1: var(--vp-c-red-1);
|
||||
--vp-c-danger-2: var(--vp-c-red-2);
|
||||
--vp-c-danger-3: var(--vp-c-red-3);
|
||||
--vp-c-danger-soft: var(--vp-c-red-soft);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Button
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-button-brand-border: transparent;
|
||||
--vp-button-brand-text: var(--vp-c-white);
|
||||
--vp-button-brand-bg: var(--vp-c-brand-3);
|
||||
--vp-button-brand-hover-border: transparent;
|
||||
--vp-button-brand-hover-text: var(--vp-c-white);
|
||||
--vp-button-brand-hover-bg: var(--vp-c-brand-2);
|
||||
--vp-button-brand-active-border: transparent;
|
||||
--vp-button-brand-active-text: var(--vp-c-white);
|
||||
--vp-button-brand-active-bg: var(--vp-c-brand-1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Home
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-home-hero-name-color: transparent;
|
||||
--vp-home-hero-name-background: -webkit-linear-gradient(
|
||||
120deg,
|
||||
#41d1ff 30%,
|
||||
#10b981
|
||||
);
|
||||
|
||||
--vp-home-hero-image-background-image: linear-gradient(
|
||||
-45deg,
|
||||
#47caff 50%,
|
||||
#10b981 50%
|
||||
);
|
||||
--vp-home-hero-image-filter: blur(44px);
|
||||
}
|
||||
|
||||
@media (min-width: 640px) {
|
||||
:root {
|
||||
--vp-home-hero-image-filter: blur(56px);
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 960px) {
|
||||
:root {
|
||||
--vp-home-hero-image-filter: blur(68px);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Custom Block
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-custom-block-tip-border: transparent;
|
||||
--vp-custom-block-tip-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-tip-bg: var(--vp-c-brand-soft);
|
||||
--vp-custom-block-tip-code-bg: var(--vp-c-brand-soft);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Algolia
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
.DocSearch {
|
||||
--docsearch-primary-color: var(--vp-c-brand-1) !important;
|
||||
}
|
||||
|
571
docs/.vitepress/theme/vars.css
Normal file
@ -0,0 +1,571 @@
|
||||
/**
|
||||
* Colors: Solid
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-white: #ffffff;
|
||||
--vp-c-black: #000000;
|
||||
|
||||
--vp-c-neutral: var(--vp-c-black);
|
||||
--vp-c-neutral-inverse: var(--vp-c-white);
|
||||
}
|
||||
|
||||
.dark {
|
||||
--vp-c-neutral: var(--vp-c-white);
|
||||
--vp-c-neutral-inverse: var(--vp-c-black);
|
||||
}
|
||||
|
||||
/**
|
||||
* Colors: Palette
|
||||
*
|
||||
* The primitive colors used for accent colors. These colors are referenced
|
||||
* by functional colors such as "Text", "Background", or "Brand".
|
||||
*
|
||||
* Each colors have exact same color scale system with 3 levels of solid
|
||||
* colors with different brightness, and 1 soft color.
|
||||
*
|
||||
* - `XXX-1`: The most solid color used mainly for colored text. It must
|
||||
* satisfy the contrast ratio against when used on top of `XXX-soft`.
|
||||
*
|
||||
* - `XXX-2`: The color used mainly for hover state of the button.
|
||||
*
|
||||
* - `XXX-3`: The color for solid background, such as bg color of the button.
|
||||
* It must satisfy the contrast ratio with pure white (#ffffff) text on
|
||||
* top of it.
|
||||
*
|
||||
* - `XXX-soft`: The color used for subtle background such as custom container
|
||||
* or badges. It must satisfy the contrast ratio when putting `XXX-1` colors
|
||||
* on top of it.
|
||||
*
|
||||
* The soft color must be semi transparent alpha channel. This is crucial
|
||||
* because it allows adding multiple "soft" colors on top of each other
|
||||
* to create a accent, such as when having inline code block inside
|
||||
* custom containers.
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-gray-1: #dddde3;
|
||||
--vp-c-gray-2: #e4e4e9;
|
||||
--vp-c-gray-3: #ebebef;
|
||||
--vp-c-gray-soft: rgba(142, 150, 170, 0.14);
|
||||
|
||||
--vp-c-indigo-1: #3451b2;
|
||||
--vp-c-indigo-2: #3a5ccc;
|
||||
--vp-c-indigo-3: #5672cd;
|
||||
--vp-c-indigo-soft: rgba(100, 108, 255, 0.14);
|
||||
|
||||
--vp-c-purple-1: #6f42c1;
|
||||
--vp-c-purple-2: #7e4cc9;
|
||||
--vp-c-purple-3: #8e5cd9;
|
||||
--vp-c-purple-soft: rgba(159, 122, 234, 0.14);
|
||||
|
||||
--vp-c-green-1: #18794e;
|
||||
--vp-c-green-2: #299764;
|
||||
--vp-c-green-3: #30a46c;
|
||||
--vp-c-green-soft: rgba(16, 185, 129, 0.14);
|
||||
|
||||
--vp-c-yellow-1: #915930;
|
||||
--vp-c-yellow-2: #946300;
|
||||
--vp-c-yellow-3: #9f6a00;
|
||||
--vp-c-yellow-soft: rgba(234, 179, 8, 0.14);
|
||||
|
||||
--vp-c-red-1: #b8272c;
|
||||
--vp-c-red-2: #d5393e;
|
||||
--vp-c-red-3: #e0575b;
|
||||
--vp-c-red-soft: rgba(244, 63, 94, 0.14);
|
||||
|
||||
--vp-c-sponsor: #db2777;
|
||||
}
|
||||
|
||||
.dark {
|
||||
--vp-c-gray-1: #515c67;
|
||||
--vp-c-gray-2: #414853;
|
||||
--vp-c-gray-3: #32363f;
|
||||
--vp-c-gray-soft: rgba(101, 117, 133, 0.16);
|
||||
|
||||
--vp-c-indigo-1: #a8b1ff;
|
||||
--vp-c-indigo-2: #5c73e7;
|
||||
--vp-c-indigo-3: #3e63dd;
|
||||
--vp-c-indigo-soft: rgba(100, 108, 255, 0.16);
|
||||
|
||||
--vp-c-purple-1: #c8abfa;
|
||||
--vp-c-purple-2: #a879e6;
|
||||
--vp-c-purple-3: #8e5cd9;
|
||||
--vp-c-purple-soft: rgba(159, 122, 234, 0.16);
|
||||
|
||||
--vp-c-green-1: #3dd68c;
|
||||
--vp-c-green-2: #30a46c;
|
||||
--vp-c-green-3: #298459;
|
||||
--vp-c-green-soft: rgba(16, 185, 129, 0.16);
|
||||
|
||||
--vp-c-yellow-1: #f9b44e;
|
||||
--vp-c-yellow-2: #da8b17;
|
||||
--vp-c-yellow-3: #a46a0a;
|
||||
--vp-c-yellow-soft: rgba(234, 179, 8, 0.16);
|
||||
|
||||
--vp-c-red-1: #f66f81;
|
||||
--vp-c-red-2: #f14158;
|
||||
--vp-c-red-3: #b62a3c;
|
||||
--vp-c-red-soft: rgba(244, 63, 94, 0.16);
|
||||
}
|
||||
|
||||
/**
|
||||
* Colors: Background
|
||||
*
|
||||
* - `bg`: The bg color used for main screen.
|
||||
*
|
||||
* - `bg-alt`: The alternative bg color used in places such as "sidebar",
|
||||
* or "code block".
|
||||
*
|
||||
* - `bg-elv`: The elevated bg color. This is used at parts where it "floats",
|
||||
* such as "dialog".
|
||||
*
|
||||
* - `bg-soft`: The bg color to slightly distinguish some components from
|
||||
* the page. Used for things like "carbon ads" or "table".
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-bg: #ffffff;
|
||||
--vp-c-bg-alt: #f6f6f7;
|
||||
--vp-c-bg-elv: #ffffff;
|
||||
--vp-c-bg-soft: #f6f6f7;
|
||||
}
|
||||
|
||||
.dark {
|
||||
--vp-c-bg: #1b1b1f;
|
||||
--vp-c-bg-alt: #161618;
|
||||
--vp-c-bg-elv: #202127;
|
||||
--vp-c-bg-soft: #202127;
|
||||
}
|
||||
|
||||
/**
|
||||
* Colors: Borders
|
||||
*
|
||||
* - `divider`: This is used for separators. This is used to divide sections
|
||||
* within the same components, such as having separator on "h2" heading.
|
||||
*
|
||||
* - `border`: This is designed for borders on interactive components.
|
||||
* For example this should be used for a button outline.
|
||||
*
|
||||
* - `gutter`: This is used to divide components in the page. For example
|
||||
* the header and the lest of the page.
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-border: #c2c2c4;
|
||||
--vp-c-divider: #e2e2e3;
|
||||
--vp-c-gutter: #e2e2e3;
|
||||
}
|
||||
|
||||
.dark {
|
||||
--vp-c-border: #3c3f44;
|
||||
--vp-c-divider: #2e2e32;
|
||||
--vp-c-gutter: #000000;
|
||||
}
|
||||
|
||||
/**
|
||||
* Colors: Text
|
||||
*
|
||||
* - `text-1`: Used for primary text.
|
||||
*
|
||||
* - `text-2`: Used for muted texts, such as "inactive menu" or "info texts".
|
||||
*
|
||||
* - `text-3`: Used for subtle texts, such as "placeholders" or "caret icon".
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-text-1: rgba(60, 60, 67);
|
||||
--vp-c-text-2: rgba(60, 60, 67, 0.78);
|
||||
--vp-c-text-3: rgba(60, 60, 67, 0.56);
|
||||
}
|
||||
|
||||
.dark {
|
||||
--vp-c-text-1: rgba(255, 255, 245, 0.86);
|
||||
--vp-c-text-2: rgba(235, 235, 245, 0.6);
|
||||
--vp-c-text-3: rgba(235, 235, 245, 0.38);
|
||||
}
|
||||
|
||||
/**
|
||||
* Colors: Function
|
||||
*
|
||||
* - `default`: The color used purely for subtle indication without any
|
||||
* special meanings attached to it such as bg color for menu hover state.
|
||||
*
|
||||
* - `brand`: Used for primary brand colors, such as link text, button with
|
||||
* brand theme, etc.
|
||||
*
|
||||
* - `tip`: Used to indicate useful information. The default theme uses the
|
||||
* brand color for this by default.
|
||||
*
|
||||
* - `warning`: Used to indicate warning to the users. Used in custom
|
||||
* container, badges, etc.
|
||||
*
|
||||
* - `danger`: Used to show error, or dangerous message to the users. Used
|
||||
* in custom container, badges, etc.
|
||||
*
|
||||
* To understand the scaling system, refer to "Colors: Palette" section.
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-c-default-1: var(--vp-c-gray-1);
|
||||
--vp-c-default-2: var(--vp-c-gray-2);
|
||||
--vp-c-default-3: var(--vp-c-gray-3);
|
||||
--vp-c-default-soft: var(--vp-c-gray-soft);
|
||||
|
||||
--vp-c-brand-1: var(--vp-c-indigo-1);
|
||||
--vp-c-brand-2: var(--vp-c-indigo-2);
|
||||
--vp-c-brand-3: var(--vp-c-indigo-3);
|
||||
--vp-c-brand-soft: var(--vp-c-indigo-soft);
|
||||
|
||||
/* DEPRECATED: Use `--vp-c-brand-1` instead. */
|
||||
--vp-c-brand: var(--vp-c-brand-1);
|
||||
|
||||
--vp-c-tip-1: var(--vp-c-brand-1);
|
||||
--vp-c-tip-2: var(--vp-c-brand-2);
|
||||
--vp-c-tip-3: var(--vp-c-brand-3);
|
||||
--vp-c-tip-soft: var(--vp-c-brand-soft);
|
||||
|
||||
--vp-c-note-1: var(--vp-c-brand-1);
|
||||
--vp-c-note-2: var(--vp-c-brand-2);
|
||||
--vp-c-note-3: var(--vp-c-brand-3);
|
||||
--vp-c-note-soft: var(--vp-c-brand-soft);
|
||||
|
||||
--vp-c-success-1: var(--vp-c-green-1);
|
||||
--vp-c-success-2: var(--vp-c-green-2);
|
||||
--vp-c-success-3: var(--vp-c-green-3);
|
||||
--vp-c-success-soft: var(--vp-c-green-soft);
|
||||
|
||||
--vp-c-important-1: var(--vp-c-purple-1);
|
||||
--vp-c-important-2: var(--vp-c-purple-2);
|
||||
--vp-c-important-3: var(--vp-c-purple-3);
|
||||
--vp-c-important-soft: var(--vp-c-purple-soft);
|
||||
|
||||
--vp-c-warning-1: var(--vp-c-yellow-1);
|
||||
--vp-c-warning-2: var(--vp-c-yellow-2);
|
||||
--vp-c-warning-3: var(--vp-c-yellow-3);
|
||||
--vp-c-warning-soft: var(--vp-c-yellow-soft);
|
||||
|
||||
--vp-c-danger-1: var(--vp-c-red-1);
|
||||
--vp-c-danger-2: var(--vp-c-red-2);
|
||||
--vp-c-danger-3: var(--vp-c-red-3);
|
||||
--vp-c-danger-soft: var(--vp-c-red-soft);
|
||||
|
||||
--vp-c-caution-1: var(--vp-c-red-1);
|
||||
--vp-c-caution-2: var(--vp-c-red-2);
|
||||
--vp-c-caution-3: var(--vp-c-red-3);
|
||||
--vp-c-caution-soft: var(--vp-c-red-soft);
|
||||
}
|
||||
|
||||
/**
|
||||
* Typography
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-font-family-base: 'Chinese Quotes', 'Inter var', 'Inter', ui-sans-serif,
|
||||
system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
|
||||
'Helvetica Neue', Helvetica, Arial, 'Noto Sans', sans-serif,
|
||||
'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
|
||||
--vp-font-family-mono: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Monaco,
|
||||
Consolas, 'Liberation Mono', 'Courier New', monospace;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shadows
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-shadow-1: 0 1px 2px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06);
|
||||
--vp-shadow-2: 0 3px 12px rgba(0, 0, 0, 0.07), 0 1px 4px rgba(0, 0, 0, 0.07);
|
||||
--vp-shadow-3: 0 12px 32px rgba(0, 0, 0, 0.1), 0 2px 6px rgba(0, 0, 0, 0.08);
|
||||
--vp-shadow-4: 0 14px 44px rgba(0, 0, 0, 0.12), 0 3px 9px rgba(0, 0, 0, 0.12);
|
||||
--vp-shadow-5: 0 18px 56px rgba(0, 0, 0, 0.16), 0 4px 12px rgba(0, 0, 0, 0.16);
|
||||
}
|
||||
|
||||
/**
|
||||
* Z-indexes
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-z-index-footer: 10;
|
||||
--vp-z-index-local-nav: 20;
|
||||
--vp-z-index-nav: 30;
|
||||
--vp-z-index-layout-top: 40;
|
||||
--vp-z-index-backdrop: 50;
|
||||
--vp-z-index-sidebar: 60;
|
||||
}
|
||||
|
||||
@media (min-width: 960px) {
|
||||
:root {
|
||||
--vp-z-index-sidebar: 25;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Icons
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-icon-copy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2'/%3E%3C/svg%3E");
|
||||
--vp-icon-copied: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' height='20' width='20' stroke='rgba(128,128,128,1)' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-6 9 2 2 4-4'/%3E%3C/svg%3E");
|
||||
}
|
||||
|
||||
/**
|
||||
* Layouts
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-layout-max-width: 1440px;
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Header Anchor
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-header-anchor-symbol: '#';
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Code
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-code-line-height: 1.7;
|
||||
--vp-code-font-size: 0.875em;
|
||||
--vp-code-color: var(--vp-c-brand-1);
|
||||
--vp-code-link-color: var(--vp-c-brand-1);
|
||||
--vp-code-link-hover-color: var(--vp-c-brand-2);
|
||||
--vp-code-bg: var(--vp-c-default-soft);
|
||||
|
||||
--vp-code-block-color: var(--vp-c-text-2);
|
||||
--vp-code-block-bg: var(--vp-c-bg-alt);
|
||||
--vp-code-block-divider-color: var(--vp-c-gutter);
|
||||
|
||||
--vp-code-lang-color: var(--vp-c-text-3);
|
||||
|
||||
--vp-code-line-highlight-color: var(--vp-c-default-soft);
|
||||
--vp-code-line-number-color: var(--vp-c-text-3);
|
||||
|
||||
--vp-code-line-diff-add-color: var(--vp-c-success-soft);
|
||||
--vp-code-line-diff-add-symbol-color: var(--vp-c-success-1);
|
||||
|
||||
--vp-code-line-diff-remove-color: var(--vp-c-danger-soft);
|
||||
--vp-code-line-diff-remove-symbol-color: var(--vp-c-danger-1);
|
||||
|
||||
--vp-code-line-warning-color: var(--vp-c-warning-soft);
|
||||
--vp-code-line-error-color: var(--vp-c-danger-soft);
|
||||
|
||||
--vp-code-copy-code-border-color: var(--vp-c-divider);
|
||||
--vp-code-copy-code-bg: var(--vp-c-bg-soft);
|
||||
--vp-code-copy-code-hover-border-color: var(--vp-c-divider);
|
||||
--vp-code-copy-code-hover-bg: var(--vp-c-bg);
|
||||
--vp-code-copy-code-active-text: var(--vp-c-text-2);
|
||||
--vp-code-copy-copied-text-content: 'Copied';
|
||||
|
||||
--vp-code-tab-divider: var(--vp-code-block-divider-color);
|
||||
--vp-code-tab-text-color: var(--vp-c-text-2);
|
||||
--vp-code-tab-bg: var(--vp-code-block-bg);
|
||||
--vp-code-tab-hover-text-color: var(--vp-c-text-1);
|
||||
--vp-code-tab-active-text-color: var(--vp-c-text-1);
|
||||
--vp-code-tab-active-bar-color: var(--vp-c-brand-1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Button
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-button-brand-border: transparent;
|
||||
--vp-button-brand-text: var(--vp-c-white);
|
||||
--vp-button-brand-bg: var(--vp-c-brand-3);
|
||||
--vp-button-brand-hover-border: transparent;
|
||||
--vp-button-brand-hover-text: var(--vp-c-white);
|
||||
--vp-button-brand-hover-bg: var(--vp-c-brand-2);
|
||||
--vp-button-brand-active-border: transparent;
|
||||
--vp-button-brand-active-text: var(--vp-c-white);
|
||||
--vp-button-brand-active-bg: var(--vp-c-brand-1);
|
||||
|
||||
--vp-button-alt-border: transparent;
|
||||
--vp-button-alt-text: var(--vp-c-text-1);
|
||||
--vp-button-alt-bg: var(--vp-c-default-3);
|
||||
--vp-button-alt-hover-border: transparent;
|
||||
--vp-button-alt-hover-text: var(--vp-c-text-1);
|
||||
--vp-button-alt-hover-bg: var(--vp-c-default-2);
|
||||
--vp-button-alt-active-border: transparent;
|
||||
--vp-button-alt-active-text: var(--vp-c-text-1);
|
||||
--vp-button-alt-active-bg: var(--vp-c-default-1);
|
||||
|
||||
--vp-button-sponsor-border: var(--vp-c-text-2);
|
||||
--vp-button-sponsor-text: var(--vp-c-text-2);
|
||||
--vp-button-sponsor-bg: transparent;
|
||||
--vp-button-sponsor-hover-border: var(--vp-c-sponsor);
|
||||
--vp-button-sponsor-hover-text: var(--vp-c-sponsor);
|
||||
--vp-button-sponsor-hover-bg: transparent;
|
||||
--vp-button-sponsor-active-border: var(--vp-c-sponsor);
|
||||
--vp-button-sponsor-active-text: var(--vp-c-sponsor);
|
||||
--vp-button-sponsor-active-bg: transparent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Custom Block
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-custom-block-font-size: 14px;
|
||||
--vp-custom-block-code-font-size: 13px;
|
||||
|
||||
--vp-custom-block-info-border: transparent;
|
||||
--vp-custom-block-info-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-info-bg: var(--vp-c-default-soft);
|
||||
--vp-custom-block-info-code-bg: var(--vp-c-default-soft);
|
||||
|
||||
--vp-custom-block-note-border: transparent;
|
||||
--vp-custom-block-note-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-note-bg: var(--vp-c-default-soft);
|
||||
--vp-custom-block-note-code-bg: var(--vp-c-default-soft);
|
||||
|
||||
--vp-custom-block-tip-border: transparent;
|
||||
--vp-custom-block-tip-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-tip-bg: var(--vp-c-tip-soft);
|
||||
--vp-custom-block-tip-code-bg: var(--vp-c-tip-soft);
|
||||
|
||||
--vp-custom-block-important-border: transparent;
|
||||
--vp-custom-block-important-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-important-bg: var(--vp-c-important-soft);
|
||||
--vp-custom-block-important-code-bg: var(--vp-c-important-soft);
|
||||
|
||||
--vp-custom-block-warning-border: transparent;
|
||||
--vp-custom-block-warning-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-warning-bg: var(--vp-c-warning-soft);
|
||||
--vp-custom-block-warning-code-bg: var(--vp-c-warning-soft);
|
||||
|
||||
--vp-custom-block-danger-border: transparent;
|
||||
--vp-custom-block-danger-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-danger-bg: var(--vp-c-danger-soft);
|
||||
--vp-custom-block-danger-code-bg: var(--vp-c-danger-soft);
|
||||
|
||||
--vp-custom-block-caution-border: transparent;
|
||||
--vp-custom-block-caution-text: var(--vp-c-text-1);
|
||||
--vp-custom-block-caution-bg: var(--vp-c-caution-soft);
|
||||
--vp-custom-block-caution-code-bg: var(--vp-c-caution-soft);
|
||||
|
||||
--vp-custom-block-details-border: var(--vp-custom-block-info-border);
|
||||
--vp-custom-block-details-text: var(--vp-custom-block-info-text);
|
||||
--vp-custom-block-details-bg: var(--vp-custom-block-info-bg);
|
||||
--vp-custom-block-details-code-bg: var(--vp-custom-block-info-code-bg);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Input
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-input-border-color: var(--vp-c-border);
|
||||
--vp-input-bg-color: var(--vp-c-bg-alt);
|
||||
|
||||
--vp-input-switch-bg-color: var(--vp-c-default-soft);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Nav
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-nav-height: 64px;
|
||||
--vp-nav-bg-color: var(--vp-c-bg);
|
||||
--vp-nav-screen-bg-color: var(--vp-c-bg);
|
||||
--vp-nav-logo-height: 24px;
|
||||
}
|
||||
|
||||
.hide-nav {
|
||||
--vp-nav-height: 0px;
|
||||
}
|
||||
|
||||
.hide-nav .VPSidebar {
|
||||
--vp-nav-height: 22px;
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Local Nav
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-local-nav-bg-color: var(--vp-c-bg);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Sidebar
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-sidebar-width: 272px;
|
||||
--vp-sidebar-bg-color: var(--vp-c-bg-alt);
|
||||
}
|
||||
|
||||
/**
|
||||
* Colors Backdrop
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-backdrop-bg-color: rgba(0, 0, 0, 0.6);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Home
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-home-hero-name-color: var(--vp-c-brand-1);
|
||||
--vp-home-hero-name-background: transparent;
|
||||
|
||||
--vp-home-hero-image-background-image: none;
|
||||
--vp-home-hero-image-filter: none;
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Badge
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-badge-info-border: transparent;
|
||||
--vp-badge-info-text: var(--vp-c-text-2);
|
||||
--vp-badge-info-bg: var(--vp-c-default-soft);
|
||||
|
||||
--vp-badge-tip-border: transparent;
|
||||
--vp-badge-tip-text: var(--vp-c-tip-1);
|
||||
--vp-badge-tip-bg: var(--vp-c-tip-soft);
|
||||
|
||||
--vp-badge-warning-border: transparent;
|
||||
--vp-badge-warning-text: var(--vp-c-warning-1);
|
||||
--vp-badge-warning-bg: var(--vp-c-warning-soft);
|
||||
|
||||
--vp-badge-danger-border: transparent;
|
||||
--vp-badge-danger-text: var(--vp-c-danger-1);
|
||||
--vp-badge-danger-bg: var(--vp-c-danger-soft);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Carbon Ads
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-carbon-ads-text-color: var(--vp-c-text-1);
|
||||
--vp-carbon-ads-poweredby-color: var(--vp-c-text-2);
|
||||
--vp-carbon-ads-bg-color: var(--vp-c-bg-soft);
|
||||
--vp-carbon-ads-hover-text-color: var(--vp-c-brand-1);
|
||||
--vp-carbon-ads-hover-poweredby-color: var(--vp-c-text-1);
|
||||
}
|
||||
|
||||
/**
|
||||
* Component: Local Search
|
||||
* -------------------------------------------------------------------------- */
|
||||
|
||||
:root {
|
||||
--vp-local-search-bg: var(--vp-c-bg);
|
||||
--vp-local-search-result-bg: var(--vp-c-bg);
|
||||
--vp-local-search-result-border: var(--vp-c-divider);
|
||||
--vp-local-search-result-selected-bg: var(--vp-c-bg);
|
||||
--vp-local-search-result-selected-border: var(--vp-c-brand-1);
|
||||
--vp-local-search-highlight-bg: var(--vp-c-brand-1);
|
||||
--vp-local-search-highlight-text: var(--vp-c-neutral-inverse);
|
||||
}
|
3
docs/blog.md
Normal file
@ -0,0 +1,3 @@
|
||||
---
|
||||
layout: blog
|
||||
---
|
15
docs/changelog.md
Normal file
@ -0,0 +1,15 @@
|
||||
---
|
||||
title: 'Changelog'
|
||||
description: 'Project changelog'
|
||||
layout: doc
|
||||
sidebar: false
|
||||
aside: right
|
||||
navbar: true
|
||||
editLink: false
|
||||
---
|
||||
|
||||
::: details
|
||||
Sourced from automatically generated CHANGELOG.md project file.
|
||||
:::
|
||||
|
||||
<!--@include: ../CHANGELOG.md-->
|
36
docs/guide/about.md
Normal file
@ -0,0 +1,36 @@
|
||||
# What is Arkanum ?
|
||||
|
||||
## 🙏 Mantra
|
||||
|
||||
Arkanum pursues the following principles to achieve its goals:
|
||||
|
||||
### 🥕 Principles
|
||||
|
||||
- Reduce the setup + configuration complexity by
|
||||
- Completing existing VSCode remote development solutions *(like `Coder/code-server` or `gitpod-io/openvscode-server`)* with an
|
||||
opinionated tool set and configuration.
|
||||
|
||||
### 🏁 Goals
|
||||
|
||||
- Deliver a fully featured remote development environment.
|
||||
- Provide the best possible user experience for daily VS Code remote usage.
|
||||
|
||||
And most important:
|
||||
|
||||
> [!TIP] ⭐ Help people to stay focused on their primary task:
|
||||
> Develop awesome stuff without wasting time with setting up *DEV* environments.
|
||||
|
||||
## 📆 History
|
||||
|
||||
The Arkanum project started when I was challenged to work on multiple projects from different locations
|
||||
and devices. Setting up VSCode based *DEV* environments can be hard and takes a minute. Especially when
|
||||
you think about all the tools, extensions and setup needed to work efficiently. On top of this,
|
||||
you also want to keep the environments up to date to avoid version problems.
|
||||
|
||||
Another motivation was the fact that I needed to find a way reducing the time for onboarding, supporting, and debugging the environments from other teammates.
|
||||
|
||||
So I started searching for existing solutions. I didn't wan't to go the traditional way of packaging and deploying
|
||||
a software solution. Luckily there was already a way to use VS Code remotely and I started working with [coder/code-server](https://github.com/coder/code-server)
|
||||
and [gitpod-io/openvscode-server](https://github.com/gitpod-io/openvscode-server).
|
||||
|
||||
In late 2022 I decided to customize these project and so I started `Arkanum` as open-source project.
|
62
docs/guide/components/arkanum-cli.md
Normal file
@ -0,0 +1,62 @@
|
||||
# Arkanum-cli
|
||||
|
||||
## About
|
||||
|
||||
The `arkanum` container image includes the `arkanum-cli` to manage the current instance and be able to install
|
||||
additional resources. To keep the base image as small as possible we decided not to include all possible frameworks.
|
||||
With this approach the user can decide which frameworks are needed and install it by yourself. This avoids growing
|
||||
the container image size.
|
||||
|
||||
For now the arkanum-cli is made with a simple bash script. But this could change whenever the complexity increases
|
||||
significantly.
|
||||
|
||||
## Usage
|
||||
|
||||
To use the cli just open a terminal and call the `arkanum` command. We also added a bash-completion
|
||||
script for the cli.
|
||||
|
||||
<<< @/../arkanum#usage{19-22 bash:line-numbers}
|
||||
|
||||
The first thing you normally after starting your Arkanum instance is setting the git user and email:
|
||||
|
||||
`arkanum git setup "foobar" "foobar@arkanum.dev"`
|
||||
|
||||
Now you can simple add your needed tools and frameworks:
|
||||
|
||||
```bash
|
||||
arkanum install golang
|
||||
arkanum install nodejs
|
||||
```
|
||||
|
||||
### Session Handling <Badge type="tip" text="^1.8.0" />
|
||||
|
||||
The session helper simplifies restoring your session after your instance was restarted. You can now save a global
|
||||
session config which contains your needed frameworks installed by `arkanum install`. This wraps multiple install
|
||||
calls and restores your session by running `arkanum session restore`.
|
||||
|
||||
For Example:
|
||||
|
||||
```bash
|
||||
# Create a new session config by adding items
|
||||
arkanum session save lazygit gitea golang
|
||||
# Shows your saved session
|
||||
arkanum session show
|
||||
# Restore your session
|
||||
arkanum session restore
|
||||
# optionally reset / delete your session config
|
||||
arkanum session reset
|
||||
```
|
||||
|
||||
> [!WARNING]
|
||||
> If your run `arkanum session save` multiple times and use the same arguments, they will also be added and
|
||||
> installed multiple times!
|
||||
|
||||
## Referenced Source Files
|
||||
|
||||
::: code-group
|
||||
<<< @/../Dockerfile#cli{Dockerfile}
|
||||
|
||||
<<< @/../arkanum{bash}
|
||||
|
||||
<<< @/../arkanum-completion{bash}
|
||||
:::
|
19
docs/guide/components/base-images.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Base Images
|
||||
|
||||
## Coder/code-server
|
||||
|
||||
Arkanum is build on top of the [code-server](https://github.com/coder/code-server) project. This project
|
||||
provides the base ability to run VS Code remotely and accessible by any browser instead of the need for a local
|
||||
installation.
|
||||
|
||||
The folks from [linuxserver.io](https://www.linuxserver.io/) build and maintainer super reliable container images
|
||||
for all kind of software. And so they also did for the code-server project.
|
||||
|
||||
We also took their [code-server image](https://hub.docker.com/r/linuxserver/code-server) as our base for further
|
||||
customizing and tailoring arkanum.
|
||||
|
||||
## gitpod-io/openvscode-server <Badge type="info" text="planned for arkanum v2++" />
|
||||
|
||||
> [!NOTE] 💬 NOTE
|
||||
> We plan to also build Arkanum with the openvscode-server base. This could enable us to install Arkanum as
|
||||
> PWA with our own branding like the product logo.
|
32
docs/guide/components/code-server.md
Normal file
@ -0,0 +1,32 @@
|
||||
# Code Server Customizations
|
||||
|
||||
## About
|
||||
|
||||
The Arkanum image itself depends on the underlying [coder/code-server](https://github.com/coder/code-server) project
|
||||
and the container image provided by
|
||||
[linxuserver/docker-code-server](https://github.com/linuxserver/docker-code-server). To be able to add features and
|
||||
change the behaviour we need to customize either the code-server itself of the docker image creation.
|
||||
|
||||
These are the custimzations we added to build the `arkanum server` and the `arkanum-cli` :
|
||||
|
||||
## Bash Aliases
|
||||
|
||||
You can use the alias `summon` to interact with the code-server instance.
|
||||
|
||||
## Product Images
|
||||
|
||||
We replaces the product image files to math the arkanum branding. See the
|
||||
[code-server/media](https://gitea.ocram85.com/arkanum/arkanum/src/branch/master/code-server/media) folder for the
|
||||
used files.
|
||||
|
||||
## Application Name
|
||||
|
||||
The code-server command provides the ability to change it's name in the title other places.
|
||||
We also use arkanum therefore.
|
||||
|
||||
## Referenced Source Files
|
||||
|
||||
::: code-group
|
||||
<<< @/../Dockerfile#code-server{Dockerfile:line-numbers}
|
||||
<<< @/../code-server/root/etc/s6-overlay/s6-rc.d/svc-code-server/run{bash:line-numbers}
|
||||
:::
|
12
docs/guide/components/firacode.md
Normal file
@ -0,0 +1,12 @@
|
||||
# FiraCode
|
||||
|
||||
## Referenced Source Files
|
||||
|
||||
::: code-group
|
||||
<<< @/../Dockerfile#firacode{Dockerfile}
|
||||
<<< @/../FiraCode/fonts.css{css}
|
||||
:::
|
||||
|
||||
We add custom fonts on build time to the Arkanum docker image. Therefore we copy the font files and patch the
|
||||
_CodeServer / Openvscode-server_ `workbench.css` files. So we can use host and consume additional fonts without
|
||||
relying on external CDNs.
|
53
docs/guide/components/git.md
Normal file
@ -0,0 +1,53 @@
|
||||
# Git
|
||||
|
||||
## 🔱 About Git Config files
|
||||
|
||||
The git configuration is usually done in these 3 different contexts:
|
||||
|
||||
- system wide config
|
||||
- `/etc/gitconfig`
|
||||
- global _(per user)_ config
|
||||
- `~/.gitconfig`
|
||||
- local _(per repository)_
|
||||
- `<repo-root>/.git/config`
|
||||
|
||||
The final config will be merged in this order.
|
||||
|
||||
> [!TIP] 💡 TIP
|
||||
> You can display the final values with `git config --list`
|
||||
|
||||
## 📄 Included Config
|
||||
|
||||
We already modified the default system config file:
|
||||
|
||||
| Key | Section | Description |
|
||||
| --------------- | ---------------- | ------------------------------------------------------------------------------------ |
|
||||
| `editor` | **[core]** | Defines code-server as git edit to open files. |
|
||||
| `autcrlf` | **[core]** | Disables automatic line ending conversion. Should be handeled by the editor |
|
||||
| `helper` | **[credential]** | Enables saving plain credentials for git remotes. |
|
||||
| `filesEncoding` | **[i18n]** | Sets _utf-8_ as default encoding. |
|
||||
| `default` | **[push]** | Uses _simple_ branch name matching strategy. |
|
||||
| `lg1` | **[alias]** | Adds alternate log output layout in graph style |
|
||||
| `lg2` | **[alias]** | Adds extended graph log layout. |
|
||||
| `cfetch` | **[alias]** | Adds alias for fetch with _--prune_ and _--tags_ . _cfetch_ stands for _clean fetch_ |
|
||||
|
||||
There are also some [Phabricator](https://en.wikipedia.org/wiki/Phabricator) workflow inspired helpers:
|
||||
|
||||
| Key | Section | Description |
|
||||
| ------------------ | ----------- | ------------------------------------------------------------------------------ |
|
||||
| `feature <branch>` | **[alias]** | Starts a new feature branch from updates master and checks out the new branch. |
|
||||
| `wip` | **[alias]** | Stages all current changes and creates a wip _(work in progress)_ commit. |
|
||||
| `squish` | **[alias]** | Takes all open workdir changes and add them to the latest commit. |
|
||||
| `pod` | **[alias]** | Tries to push current branch to _origin/dev_. |
|
||||
| `poc <branch>` | **[alias]** | Takes current branch and tries to push it to a new remote one. |
|
||||
|
||||
## Git bash Completion
|
||||
|
||||
Git bash completion is already enabled in the arkanum image.
|
||||
|
||||
## Referenced Source Files
|
||||
|
||||
::: code-group
|
||||
<<< @/../Dockerfile#git{Dockerfile:line-numbers}
|
||||
<<< @/../gitconfig-system{ini:line-numbers}
|
||||
:::
|
9
docs/guide/components/packages.md
Normal file
@ -0,0 +1,9 @@
|
||||
# Packages
|
||||
|
||||
We already included the following packages while building the Arkanum image:
|
||||
|
||||
| Name | Version | Description |
|
||||
| -----: | :---------- | :------------: |
|
||||
| `git` | `2.43.0` | Git VCS |
|
||||
| `file` | `file-5.45` | file type info |
|
||||
| `make` | `4.3` | GNU Make 4.3 |
|
BIN
docs/guide/components/prompts/prompt1.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
docs/guide/components/prompts/prompt2.png
Normal file
After Width: | Height: | Size: 40 KiB |
BIN
docs/guide/components/prompts/prompt3.png
Normal file
After Width: | Height: | Size: 9.8 KiB |
BIN
docs/guide/components/prompts/prompt4.png
Normal file
After Width: | Height: | Size: 46 KiB |
BIN
docs/guide/components/prompts/prompt5.png
Normal file
After Width: | Height: | Size: 153 KiB |
29
docs/guide/components/starship.md
Normal file
@ -0,0 +1,29 @@
|
||||
# :rocket: Starship Prompt
|
||||
|
||||
## About
|
||||
|
||||
Starship prompt is a powerful addon to modify the shell prompt dynamically based on the current location and state.
|
||||
Therefore we already install the latest version while building the Arkanum image.
|
||||
Additionally we use starship as default prompt in bash.
|
||||
|
||||
The included default setup uses the system wide installed [NerdFont](https://www.nerdfonts.com/) patched [FiraCode](https://github.com/tonsky/FiraCode) Font with its symbols, ligatures and emojis.
|
||||
|
||||
## Screenshots
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## Referenced Source Files
|
||||
|
||||
::: code-group
|
||||
<<< @/../Dockerfile#starship{Dockerfile:line-numbers}
|
||||
|
||||
<<< @/../starship.toml{toml:line-numbers}
|
||||
:::
|
43
docs/guide/components/vscode.md
Normal file
@ -0,0 +1,43 @@
|
||||
# VSCode
|
||||
|
||||
## Default Settings
|
||||
|
||||
Arkanum tests for existing VSCode user config. If not preset, it sets the default config with these values:
|
||||
|
||||
| Key | Value | Description |
|
||||
| :------------------------------: | :-------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
||||
| `window.menuBarVisibility` | **compact** | Uses compact main menu bar in hamburger style. |
|
||||
| `workbench.colorTheme` | **One Dark Pro Darker** | Enables default color theme. |
|
||||
| `workbench.iconTheme` | **vscode-icons** | Enables default icon theme for file tree. |
|
||||
| `editor.fontFamily` | **'FiraCode', 'FiraCode Nerd Font', 'FiraCode NF', Consolas, 'Courier New', monospace** | Enables included FiraCode font for all possible variations in the file editor. |
|
||||
| `terminal.integrated.fontFamily` | **'FiraCode Mono', 'FiraCode Nerd Font Mono', 'FiraCode NFM', Consolas, monospace** | Enables included FiraCode fonts in terminal views. Uses mono variation to enable showing icons. |
|
||||
| `editor.fontLigatures` | **true** | Enables font ligatures supported in FiraCode: `->`, `---`, `!=` ... |
|
||||
| `editor.formatOnSave` | **true** | Enables format on save features based on language config. |
|
||||
| `extensions.autoUpdate` | **false** | Disables automatic update for installed extensions. Prevents running into VSCode compatibility problems. |
|
||||
| `git.confirmSync` | **false** | Disables notification popup for git sync action. |
|
||||
| `telemetry.telemetryLevel` | **off** | Disables sending telemetry data for VSCode and GitLense Extension. |
|
||||
|
||||
## Extensions
|
||||
|
||||
Arkanum includes the following VSCode extensions from the Open VSX Registry:
|
||||
|
||||
### GitLense
|
||||
|
||||
Adds advanced git features with the [GitLense](https://open-vsx.org/extension/eamodio/gitlens) extension.
|
||||
|
||||
### One Dark Pro
|
||||
|
||||
Adds [One Dark Pro](https://open-vsx.org/extension/zhuangtongfa/material-theme) theme as default color theme.
|
||||
|
||||
### vscode-icons
|
||||
|
||||
Adds [vscode-icons](https://open-vsx.org/extension/vscode-icons-team/vscode-icons) extension as default icon theme.
|
||||
|
||||
## Referenced Source Files
|
||||
|
||||
::: code-group
|
||||
|
||||
<<< @/../Dockerfile#cli{Dockerfile}
|
||||
|
||||
<<< @/../arkanum#code-settings{4-15 bash:line-numbers}
|
||||
:::
|
40
docs/guide/faq.md
Normal file
@ -0,0 +1,40 @@
|
||||
---
|
||||
outline: false
|
||||
---
|
||||
|
||||
# 🤔 FAQs
|
||||
|
||||
[[toc]]
|
||||
|
||||
## ❓ Questions
|
||||
|
||||
### How do I upload already existing files?
|
||||
|
||||
You can simply drag & drop existing files from your local browser into the editor tree-view area to upload them.
|
||||
|
||||
### Ho do I interact with Arkanum from the integrated terminal?
|
||||
|
||||
You can use the the `code-server` command from the integrated terminal sessions like bash or pwsh.
|
||||
To reuse the existing session / window and open the current location just run `code-server -r .`
|
||||
|
||||
> [!WARNING] ⚠️ WARNING
|
||||
> The command `code-server` is only available as user, but not as root.
|
||||
|
||||
### How should I start developing? What are my first steps?
|
||||
|
||||
We recommend you take a look at our maintained templates:
|
||||
|
||||
- [Baseline](https://gitea.ocram85.com/Templates/Baseline)
|
||||
|
||||
### How do I install external resources?
|
||||
|
||||
To install external resources you can pass the already set proxy configuration into root a session. Therefore use
|
||||
the `sudo -E` command. Don't forget the `-E` parameter to preserve the proxy config.
|
||||
|
||||
> [!WARNING] ⚠️ WARNING
|
||||
> Additionally we need to restrict the internet access. This causes us run a proxy with an active whitelist filter.
|
||||
> So you could end up getting an `http 403` error.
|
||||
|
||||
### Whats the root password for my Arkanum instance?
|
||||
|
||||
The root password is provided by the container environment variables. Just search for the value of `SUDO_PASSWORD`.
|
134
docs/guide/getting-started.md
Normal file
@ -0,0 +1,134 @@
|
||||
# Getting Started
|
||||
|
||||
## 🚧 Prerequisites
|
||||
|
||||
### ⚙️ Container Runtime
|
||||
|
||||
You need any host with either
|
||||
|
||||
- Docker CE / EE running
|
||||
- or Docker-CE and configured 'swarm' mode.
|
||||
|
||||
### 📦 Get the image
|
||||
|
||||
You can download the image from Gitea's embedded container registry: `gitea.ocram85.com/arkanum/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`, `1.0.0` - tag based version.
|
||||
|
||||
> **💡 NOTE: See the [packages page](https://gitea.ocram85.com/arkanum/-/packages/container/arkanum/latest) for latest version and all other available tags.**
|
||||
|
||||
The container images are also published to these registries:
|
||||
|
||||
- [Docker Hub](https://hub.docker.com/r/ocram85/arkanum)
|
||||
- Pull Endpoint: `ocram85/arkanum`
|
||||
- [GitHub Container Registry](https://github.com/OCram85/arkanum/pkgs/container/arkanum)
|
||||
- Pull Endpoint: `ghcr.io/ocram85/arkanum`
|
||||
- [Codeberg Packages](https://codeberg.org/arkanum/-/packages/container/arkanum/next)
|
||||
- Pull Endpoint: `codeberg.org/arkanum/arkanum`
|
||||
|
||||
## 🏗️ Installation
|
||||
|
||||
### 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/arkanum/arkanum:1.0.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
|
||||
# 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
|
||||
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.
|
||||
|
||||
### 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/arkanum/arkanum:1
|
||||
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
|
||||
```
|
||||
|
||||
## 🦶 First Steps
|
||||
|
||||
After summon Arkanum your first steps should be to set your username and email in the git config:
|
||||
|
||||
```bash
|
||||
arkanum git setup "my-name" "my-email"
|
||||
```
|
||||
|
||||
And that's it. Now you're ready use arkanum as your daily remote code editor. 😄
|
||||
|
||||
## 🖼️ Screenshots
|
||||
|
||||

|
19
docs/guide/known-issues.md
Normal file
@ -0,0 +1,19 @@
|
||||
# 💣 Known Issues + Limitations
|
||||
|
||||
## 🐛 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
|
||||
following command:
|
||||
|
||||
```bash
|
||||
# restart the installation
|
||||
arkanum config install-extensions
|
||||
# Optional: reset the vscode user setting
|
||||
arkanum config reset-codesettings
|
||||
# Reload with command F1 + Developer: Reload Window
|
||||
```
|
36
docs/index.md
Normal file
@ -0,0 +1,36 @@
|
||||
---
|
||||
# https://vitepress.dev/reference/default-theme-home-page
|
||||
layout: home
|
||||
|
||||
hero:
|
||||
name: 'Arkanum'
|
||||
text: 'An opinionated VS Code distribution'
|
||||
tagline: 'Start coding remotely with a containerized editor.'
|
||||
image:
|
||||
src: /logo.png
|
||||
alt: Arkanum
|
||||
actions:
|
||||
- theme: brand
|
||||
text: 🧙 Get Started
|
||||
link: /guide/about
|
||||
- theme: alt
|
||||
text: Show Sources
|
||||
link: https://gitea.ocram85.com/arkanum/arkanum
|
||||
- theme: alt
|
||||
text: 🧑🤝🧑💬 Join the Community
|
||||
link: https://matrix.to/#/#arkanum:matrix.org
|
||||
|
||||
features:
|
||||
- title: Beginner Friendly
|
||||
icon: ✨
|
||||
details: Trying to provide the best user experience! - Especially for beginners.
|
||||
- title: Access Anywhere
|
||||
icon: 🌎
|
||||
details: Access your dev environment from anywhere.
|
||||
- title: Arkanum CLI
|
||||
icon: 🧙
|
||||
details: Includes <code>Arkanum CLI</code> to install additional languages and frameworks.
|
||||
- title: Gitea + CI/CD
|
||||
icon: 🚧
|
||||
details: Optimized tooling for Gitea + Woodpecker-CI workflows.
|
||||
---
|
13
docs/posts/2024/0_post-template.tpl
Normal file
@ -0,0 +1,13 @@
|
||||
---
|
||||
author: OCram85
|
||||
title: 'Working on Arkanum 2.0.0'
|
||||
tag: 'roadmap'
|
||||
image: 'screens/screen1.png'
|
||||
date: '2024-06-06'
|
||||
#featured: true
|
||||
---
|
||||
|
||||
# Working on Arkanum 2.0
|
||||
|
||||
Lorem ipsum dolor sit amet consectetur adipisicing elit. Rerum dolorum ab optio, dolore saepe accusamus
|
||||
au
|
78
docs/posts/2024/arkanum-v160-release.md
Normal file
@ -0,0 +1,78 @@
|
||||
---
|
||||
aside: false
|
||||
author: OCram85
|
||||
title: 'Arkanum 1.6.0 is released'
|
||||
tag: 'release'
|
||||
image: 'blogCard.png'
|
||||
date: '2024-08-01'
|
||||
#featured: true
|
||||
---
|
||||
|
||||
<!-- markdownlint-disable MD025 MD033 MD036 -->
|
||||
|
||||
# Arkanum 1.6.0 is released
|
||||
|
||||
<BlogHeaderImage Source='/blogCard.png' />
|
||||
|
||||
**Content**
|
||||
|
||||
[[TOC]]
|
||||
|
||||
## About
|
||||
|
||||
I'm happy to present the latest Arkanum release version `1.6.0`.
|
||||
|
||||
This release includes the following changes:
|
||||
|
||||
## Product Image Update
|
||||
|
||||
We updated the Arkanum images to be able to generate the favicons and PWA icons for the code-server image.
|
||||
|
||||
These are the curren image iterations:
|
||||
|
||||
| `pre v1` | `v1++` | `v1.6++` + `v2++` |
|
||||
| :-----------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------: | :----------------: |
|
||||
|  |  |  |
|
||||
|
||||
> [!TIP] 💡 TIP
|
||||
> If you're interested in all variations, you can find the sources at
|
||||
> Canva -> [Arkanum 2.0 Collection](https://www.canva.com/design/DAGMBuM5uTk/mIyXxRbPwS6ZiT7I-MVepQ/view?utm_content=DAGMBuM5uTk&utm_campaign=designshare&utm_medium=link&utm_source=editor)
|
||||
|
||||
## Starting a Matrix Space
|
||||
|
||||
We decided to use Matrix for building the Arkanum community.
|
||||
|
||||
Feel free to join the [public community space](https://matrix.to/#/#arkanum:matrix.org).
|
||||
|
||||
[](https://matrix.to/#/#arkanum:matrix.org)
|
||||
|
||||
We also think about hosting a _Discourse_ or _Apache Answer_ based forum whenever needed. This could help collecting
|
||||
all useful community resources like discussions, FAQs, and guides without searching in a room history.
|
||||
|
||||
## Added Tools <Badge type="tip" text="v1.6.0++" />
|
||||
|
||||
- We added [lazygit](https://github.com/jesseduffield/lazygit) in arkanum-cli.
|
||||
- We also added the bash alias `summon` for _code-server_.
|
||||
|
||||
## Dependencies
|
||||
|
||||
- Updated Code-Server to `v4.91.0`
|
||||
- Updated dependencies used in WoodpeckerCI workflows.
|
||||
|
||||
## Changelog
|
||||
|
||||
### [v1.6.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.6.0) - 2024-07-31
|
||||
|
||||
* ✨ FEATURES
|
||||
* Add arkanum branding for code-server (#120)
|
||||
* Add lazygit (#116)
|
||||
* 🛠️ ENHANCEMENTS
|
||||
* Update brand assets (#121)
|
||||
* Migrate codeberg organization to arkanum (#117)
|
||||
* 🤖 DEPENDENCIES
|
||||
* Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v4.2.0 (#119)
|
||||
* Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.91.1 (#118)
|
||||
* Chore(deps): update dependency rimraf to v6 (#115)
|
||||
* Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v4.1.0 (#114)
|
||||
* Add renovate reviewer (#113)
|
||||
* Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.91.0 (#112)
|
37
docs/posts/2024/arkanum-v170-release.md
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
aside: false
|
||||
author: OCram85
|
||||
title: 'Arkanum 1.7.0 is released'
|
||||
tag: 'release'
|
||||
image: 'blogCard.png'
|
||||
date: '2024-10-22'
|
||||
#featured: true
|
||||
---
|
||||
|
||||
<!-- markdownlint-disable MD025 MD033 MD036 -->
|
||||
|
||||
# Arkanum 1.7.0 is released
|
||||
|
||||
<BlogHeaderImage Source='/blogCard.png' />
|
||||
|
||||
**Content**
|
||||
|
||||
[[TOC]]
|
||||
|
||||
## About
|
||||
|
||||
I'm happy to present the latest Arkanum release version `1.7.0`.
|
||||
|
||||
This release includes the following changes:
|
||||
|
||||
### [v1.7.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.7.0) - 2024-10-22
|
||||
|
||||
* 🐛 BUGFIXES
|
||||
* Adds file binary to supplement fix Publish-Module pwsh command. (#132)
|
||||
* 🤖 DEPENDENCIES
|
||||
* Chore(deps): update woodpeckerci/plugin-docker-buildx docker tag to v5 (#131)
|
||||
* Chore(deps): update dependency typescript to v5.6.3 (#129)
|
||||
* Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.93.1 (#127)
|
||||
* Chore(deps): update dependency typescript to v5.6.2 (#126)
|
||||
* Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.92.2 (#125)
|
||||
* Chore(deps): pin dependencies (#124)
|
57
docs/posts/2024/arkanum-v180-release.md
Normal file
@ -0,0 +1,57 @@
|
||||
---
|
||||
aside: false
|
||||
author: OCram85
|
||||
title: 'Arkanum 1.8.1 is released'
|
||||
tag: 'release'
|
||||
image: 'blogCard.png'
|
||||
date: '2024-12-02'
|
||||
#featured: true
|
||||
---
|
||||
|
||||
# Arkanum 1.8.1 is released
|
||||
|
||||
<BlogHeaderImage Source='/blogCard.png' />
|
||||
|
||||
**Content**
|
||||
|
||||
[[TOC]]
|
||||
|
||||
## About
|
||||
|
||||
I'm happy to present the latest Arkanum release version `1.8.1`.
|
||||
|
||||
We highly encourage you to directly update to version `1.8.1`. This hotfix version already
|
||||
fixes an issue where the embedded FiraCode font couldn't be loaded.
|
||||
|
||||
## New Session Handler
|
||||
|
||||
This version brings you a basic session handler. It includes saving your preferred framework
|
||||
sources and simplifies the restore after an Arkanum restart.
|
||||
|
||||
See the docs for details [here](../../guide/components/arkanum-cli#session-handling).
|
||||
|
||||
## Changes
|
||||
|
||||
This release includes the following changes:
|
||||
|
||||
### [v1.8.1](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.8.1) - 2024-12-02
|
||||
|
||||
- 🐛 BUGFIXES
|
||||
- Fix FiraCode font loader (#147)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update dependency prettier to v3.4.1 (#148)
|
||||
- Chore(deps): update dependency typescript to v5.7.2 (#145)
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.95.3 (#144)
|
||||
- Chore(deps): update oven/bun docker tag to v1.1.38 (#143)
|
||||
|
||||
### [v1.8.0](https://gitea.ocram85.com/arkanum/arkanum/releases/tag/v1.8.0) - 2024-11-21
|
||||
|
||||
- ✨ FEATURES
|
||||
- Add session helper (#141)
|
||||
- 🛠️ ENHANCEMENTS
|
||||
- Move additional packages install to dockerfile (#138)
|
||||
- 🤖 DEPENDENCIES
|
||||
- Chore(deps): update quay.io/linuxserver.io/code-server docker tag to v4.95.2 (#139)
|
||||
- Chore(deps): update dependency vitepress to v1.5.0 (#137)
|
||||
- ⚙️ META
|
||||
- Pin exact bun version (#140)
|
BIN
docs/public/blogCard.png
Normal file
After Width: | Height: | Size: 68 KiB |
BIN
docs/public/favicon.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
docs/public/logo.png
Normal file
After Width: | Height: | Size: 48 KiB |
BIN
docs/public/placeholder.jpg
Normal file
After Width: | Height: | Size: 2.6 KiB |
BIN
docs/public/screens/screen1.png
Normal file
After Width: | Height: | Size: 304 KiB |
24
package.json
Normal file
@ -0,0 +1,24 @@
|
||||
{
|
||||
"name": "arkanum-docs",
|
||||
"version": "1.8.3",
|
||||
"type": "module",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://gitea.ocram85.com/arkanum/arkanum.git"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/bun": "latest",
|
||||
"prettier": "3.5.2",
|
||||
"rimraf": "6.0.1",
|
||||
"vitepress": "1.6.3"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "5.7.3"
|
||||
},
|
||||
"scripts": {
|
||||
"docs:clean": "rimraf docs/.vitepress/dist docs/.vitepress/dist",
|
||||
"docs:dev": "bun run docs:clean && vitepress dev docs --host --port 1313",
|
||||
"docs:build": "vitepress build docs",
|
||||
"docs:preview": "vitepress preview docs --host --port 1313"
|
||||
}
|
||||
}
|
67
release-config.ts
Normal file
@ -0,0 +1,67 @@
|
||||
export default {
|
||||
skipLabels: [
|
||||
// FIXME: ignoring a label prevents processing the full PR!
|
||||
//'build_pr_images',
|
||||
// ignore issue labels
|
||||
'duplicate',
|
||||
'help wanted',
|
||||
'invalid',
|
||||
'question',
|
||||
'wontfix',
|
||||
],
|
||||
changeTypes: [
|
||||
{
|
||||
title: '💥 Breaking changes',
|
||||
labels: ['breaking'],
|
||||
bump: 'major',
|
||||
weight: 4,
|
||||
},
|
||||
{
|
||||
title: '✨ Features',
|
||||
labels: ['feature'],
|
||||
bump: 'minor',
|
||||
weight: 3,
|
||||
},
|
||||
{
|
||||
title: '🛠️ Enhancement',
|
||||
labels: ['enhancement'],
|
||||
bump: 'minor',
|
||||
weight: 2,
|
||||
},
|
||||
{
|
||||
title: '🐛 Bug Fixes',
|
||||
labels: ['bug'],
|
||||
bump: 'patch',
|
||||
weight: 1,
|
||||
},
|
||||
{
|
||||
title: '🤖 Dependency',
|
||||
labels: ['renovate', 'dependency'],
|
||||
bump: 'patch',
|
||||
},
|
||||
{
|
||||
title: '📚 Documentation',
|
||||
labels: ['docs'],
|
||||
bump: 'patch',
|
||||
},
|
||||
{
|
||||
title: '📦 Build',
|
||||
labels: ['pipeline'],
|
||||
bump: 'patch',
|
||||
weight: -1,
|
||||
},
|
||||
{
|
||||
title: '⚙️ Meta',
|
||||
labels: ['meta'],
|
||||
bump: 'patch',
|
||||
weight: -2,
|
||||
},
|
||||
{
|
||||
title: '🔖 Misc',
|
||||
labels: ['misc'],
|
||||
bump: 'patch',
|
||||
default: true,
|
||||
weight: -3,
|
||||
},
|
||||
],
|
||||
}
|
@ -1,4 +1,6 @@
|
||||
{
|
||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||
"extends": ["local>renovate-bot/config"],
|
||||
"dependencyDashboard": true,
|
||||
"docker": {
|
||||
"enabled": true
|
||||
@ -8,5 +10,7 @@
|
||||
"fileMatch": [
|
||||
"^.woodpecker\/.*.yml$"
|
||||
]
|
||||
}
|
||||
},
|
||||
"reviewers": ["OCram85"],
|
||||
"rangeStrategy": "pin"
|
||||
}
|
||||
|
@ -59,6 +59,9 @@ symbol = " "
|
||||
[package]
|
||||
symbol = " "
|
||||
|
||||
[python]
|
||||
disabled = true
|
||||
|
||||
[rust]
|
||||
symbol = " "
|
||||
|
||||
|
22
tsconfig.json
Normal file
@ -0,0 +1,22 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"lib": ["ESNext"],
|
||||
"target": "ESNext",
|
||||
"module": "ESNext",
|
||||
"moduleDetection": "force",
|
||||
"jsx": "react-jsx",
|
||||
"allowJs": true,
|
||||
|
||||
/* Bundler mode */
|
||||
"moduleResolution": "bundler",
|
||||
"allowImportingTsExtensions": true,
|
||||
"verbatimModuleSyntax": true,
|
||||
"noEmit": true,
|
||||
|
||||
/* Linting */
|
||||
"skipLibCheck": true,
|
||||
"strict": true,
|
||||
"noFallthroughCasesInSwitch": true,
|
||||
"forceConsistentCasingInFileNames": true
|
||||
}
|
||||
}
|