From 1488b0a65e7b4fbd925b969773a6598dbda00829 Mon Sep 17 00:00:00 2001 From: OCram85 Date: Tue, 22 Nov 2022 11:55:50 +0100 Subject: [PATCH] Adds readme content (#21) #### :book: Summary - adds section about content - adds missing extension install #### :bookmark_tabs: Test Plan > :bulb: Select your test plan for the code changes. - [x] CI pipeline tests - [ ] Custom test - [ ] No test plan ##### Details / Justification #### :books: Additional Notes Co-authored-by: OCram85 Reviewed-on: https://gitea.ocram85.com/CodeServer/arkanum/pulls/21 --- README.md | 50 ++++++++++++++++++++++++++++++++++++++++---------- arkanum | 31 +++++++++++++++++++++++++++++-- 2 files changed, 69 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 36def94..e3213fc 100644 --- a/README.md +++ b/README.md @@ -32,16 +32,17 @@ The container is based on the latest `linuxserver/code-server` image. ### 🚀 Starship prompt -The [Starship](starship.rs) prompt is added an enabled as default. Default config uses Emojis and FiraCode icons. +The [Starship](starship.rs) prompt is added and enabled as default. Default config uses Emojis and FiraCode icons. ### 🔱 git config -Adds default system config with: +Adds default git system config file with: +- code-server as default editor. +- disabled `aurocrlf`. - enabled plain credential store for remote. -- enabled bash completion for git command. -- added git log helper `lg1` + `lg2` - +- added git log helper `lg1` + `lg2`. +- enabled bash completion for git command in integrated bash terminal. > 💡 See [gitconfig-system](./gitconfig-system) for details. ### 🧙 Added `arkanum` helper script @@ -60,28 +61,56 @@ This helps reducing the image size. 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. + --disable-motd Disables hint in new bash terminal. --reset-codesetting Sets VS Code user setting with basic (Fira Code). - -h Prints this help message. + -h Prints this help message. Example 1: arkanum dotnet Example 2: arkanum golang nodejs Example 3: arkanum --disable-motd ``` +### 📝 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. + +### VSCode default settings + +If your start the container or log in the first time, a default config file is deployed. + +This user setting defines the following stuff: + +- Use compact menu bar to avoid users with multiple menu bars. +- Use *One Dark Pro Darker* theme +- Use *vscode-icons* icon set +- Set 'FiraCode' as default font in editor. + - Tries to use alternate font names for FiraCode if its locally available. +- Sets 'FiraCode' mono variant in terminal to enable icons used by starshop prompt. +- Enables font ligatures +- Enables *auto save* and *format on save*. +- Disables auto update for extension. +- Disables VScode telemetry +- Disable confirm message for sync branches. + +Additionally we install these extensions on container startup: + +- [One Dark Pro](https://open-vsx.org/extension/zhuangtongfa/material-theme) theme +- [vscode-icons](https://open-vsx.org/extension/vscode-icons-team/vscode-icons) icon set +- [Gitlens](https://open-vsx.org/extension/eamodio/gitlens) ## 💳 Credits Akranum is based on the following projects and wouldn't be possible without: -- [microsoft/vscode](https://github.com/microsoft/vscode) - Visual Studio Code, OSS +- [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* -- A huge thanks to tuanpham for sharing his [code-server font patch](https://github.com/tuanpham-dev/code-server-font-patch). `[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) ![AGPL](https://www.gnu.org/graphics/agplv3-155x51.png) +``` Arkanum - Code-Server container optimized for daily use. Copyright (C) 2022 "OCram85 " @@ -97,3 +126,4 @@ GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . +``` diff --git a/arkanum b/arkanum index ee9f4ce..ada4437 100755 --- a/arkanum +++ b/arkanum @@ -129,7 +129,7 @@ function instPwsh() { function instGiteaTools() { say "Installing Gitea tools..." "Gitea" - sudo curl -sSl https://dl.gitea.io/changelog-tool/main/changelog-main-linux-amd64 -o /usr/bin/changelog + sudo curl -fsSL https://dl.gitea.io/changelog-tool/main/changelog-main-linux-amd64 -o /usr/bin/changelog sudo chmod +x /usr/bin/changelog say "'changelog' command installed." "Gitea" say "done." "Gitea" @@ -137,7 +137,33 @@ function instGiteaTools() { function setCodeSettings() { CODEFILE="$HOME/data/User/settings.json" - say "Setting VScode base settings.($CODEFILE)" + say "Downloading required extensions...." "VSCode" + # Gitlens + say "Downloading 'gitlens'..." "VSCode" + 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'..." "VSCode" + install-extension /tmp/eamodio.gitlens-13.1.1.vsix + say "Cleaning up 'gitlens' install files" "VSCode" + rm -f /tmp/eamodio.gitlens-13.1.1.vsix + + # OneDarkPro + say "Downloading 'One Dark Pro' theme..." "VSCode" + 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..." "VSCode" + install-extension /tmp/zhuangtongfa.material-theme-3.15.6.vsix + say "Cleaning up 'One Dark Pro' install files" "VSCode" + rm -f /tmp/zhuangtongfa.material-theme-3.15.6.vsix + + # vscode-icons + say "Downloading 'vscode-icons' theme..." "VSCode" + 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..." "VSCode" + install-extension /tmp/vscode-icons-team.vscode-icons-12.0.1.vsix + say "Cleaning up 'vscode-icons' install files" "VSCode" + rm -f /tmp/vscode-icons-team.vscode-icons-12.0.1.vsix + + # VSCode user settings file + say "Setting VScode base settings.($CODEFILE)" "VSCode" cat <