generated from Templates/Baseline
Compare commits
6 Commits
Author | SHA1 | Date | |
---|---|---|---|
499fd68fab | |||
b59945fc5b | |||
c319d8c1b5 | |||
8d682c5437 | |||
c0aa7209aa | |||
90e6bbbaa3 |
@ -37,6 +37,11 @@ variables:
|
||||
|
||||
|
||||
steps:
|
||||
# TODO: Enable this in upcoming PRs.
|
||||
#check-editorconfig:
|
||||
# image: woodpeckerci/plugin-editorconfig-checker:0.2
|
||||
# pull: true
|
||||
|
||||
test:
|
||||
image: *build_plugin
|
||||
settings:
|
||||
|
114
CHANGELOG.md
114
CHANGELOG.md
@ -1,71 +1,83 @@
|
||||
## [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)
|
||||
- 🐛 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)
|
||||
- 🐛 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)
|
||||
- ✨ 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)
|
||||
- 🛠️ 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)
|
||||
- 🐛 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)
|
||||
- 🐛 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
|
||||
|
||||
|
11
Dockerfile
11
Dockerfile
@ -1,4 +1,4 @@
|
||||
FROM quay.io/linuxserver.io/code-server:4.93.1
|
||||
FROM quay.io/linuxserver.io/code-server:4.95.2
|
||||
|
||||
#LABEL build_version=""
|
||||
LABEL maintainer="OCram85"
|
||||
@ -69,3 +69,12 @@ RUN \
|
||||
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
|
||||
|
@ -1,4 +1,4 @@
|
||||
FROM oven/bun:1 AS builder
|
||||
FROM oven/bun:1.1.34 AS builder
|
||||
|
||||
ARG CI
|
||||
ARG CI_COMMIT_PULL_REQUEST
|
||||
|
13
README.md
13
README.md
@ -192,7 +192,7 @@ This helps reducing the image size.
|
||||
OPTION
|
||||
config:
|
||||
disable-motd Disables hint in new bash terminal.
|
||||
install extensions Installs predefined recommended extensions.
|
||||
install-extensions Installs predefined recommended extensions.
|
||||
reset-codesettings Sets VS Code user setting with basic (Fira Code).
|
||||
|
||||
git:
|
||||
@ -203,17 +203,24 @@ This helps reducing the image size.
|
||||
install:
|
||||
docker-cli Installs the latest docker-cli.
|
||||
dotnet Installs latest LTS dotnet core sdk + runtime.
|
||||
gitea Installs gitea tools like the changelog generator.
|
||||
golang Installs golang 1.19.3.
|
||||
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)
|
||||
|
72
arkanum
72
arkanum
@ -37,9 +37,16 @@ function showHelp() {
|
||||
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
|
||||
@ -189,8 +196,7 @@ function instPwsh() {
|
||||
say "Installing PowerShell..." "PowerShell"
|
||||
# Install PowerShell
|
||||
sudo -E apt-get install --no-install-recommends -y \
|
||||
powershell-lts \
|
||||
file
|
||||
powershell-lts
|
||||
|
||||
say "done." "PowerShell"
|
||||
}
|
||||
@ -226,6 +232,7 @@ function installLazyGit() {
|
||||
sudo rm -f /tmp/lazygit.tar.gz
|
||||
rm -rf /tmp/lazygit
|
||||
}
|
||||
|
||||
function instCodeExtension() {
|
||||
say "Installing default extensions...." "Extension"
|
||||
# Gitlens
|
||||
@ -289,6 +296,48 @@ function setGitConfig() {
|
||||
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
|
||||
@ -348,6 +397,25 @@ function main() {
|
||||
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)."
|
||||
|
@ -10,7 +10,7 @@ function _command_completions() {
|
||||
case ${COMP_CWORD} in
|
||||
1)
|
||||
# shellcheck disable=2207,SC2086
|
||||
COMPREPLY=($(compgen -W "config git install help" -- ${cur}))
|
||||
COMPREPLY=($(compgen -W "config git install help session" -- ${cur}))
|
||||
;;
|
||||
2)
|
||||
case ${prev} in
|
||||
@ -26,6 +26,10 @@ function _command_completions() {
|
||||
# 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
|
||||
|
@ -3,8 +3,9 @@
|
||||
## 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 ot include all possible frameworks. This decision also helps to give the use the ability to manage the needed framework versions like for
|
||||
NodeJS or Golang.
|
||||
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.
|
||||
@ -14,7 +15,7 @@ significantly.
|
||||
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{35-37 bash:line-numbers}
|
||||
<<< @/../arkanum#usage{19-22 bash:line-numbers}
|
||||
|
||||
The first thing you normally after starting your Arkanum instance is setting the git user and email:
|
||||
|
||||
@ -27,6 +28,29 @@ 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
|
||||
|
@ -1,7 +1,9 @@
|
||||
# Packages
|
||||
|
||||
We already include the following packages while building the Arkanum image:
|
||||
We already included the following packages while building the Arkanum image:
|
||||
|
||||
| Name | Description |
|
||||
| ----- | ----------- |
|
||||
| `git` | Git VCS |
|
||||
| Name | Version | Description |
|
||||
| -----: | :---------- | :------------: |
|
||||
| `git` | `2.43.0` | Git VCS |
|
||||
| `file` | `file-5.45` | file type info |
|
||||
| `make` | `4.3` | GNU Make 4.3 |
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "arkanum-docs",
|
||||
"version": "1.7.1",
|
||||
"version": "1.8.0",
|
||||
"type": "module",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -10,7 +10,7 @@
|
||||
"@types/bun": "latest",
|
||||
"prettier": "3.3.3",
|
||||
"rimraf": "6.0.1",
|
||||
"vitepress": "1.4.1"
|
||||
"vitepress": "1.5.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"typescript": "5.6.3"
|
||||
|
Reference in New Issue
Block a user