79eee77594
Set up the foundation for the adastra-portal project: - CLAUDE.md captures durable project rules (quality bar, security/perf/a11y as first-class, language, commit conventions, ADR proactivity). - docs/ and decisions/ scaffolding with maintained indexes (docs/README.md and decisions/README.md), MADR 4.0.0 template, and tag vocabulary. - Phase-1 ADRs (0001-0006) lock structural choices: ADR usage, Nx monorepo with the apps preset, naming convention (adastra-portal / portal-shell / portal-bff), Angular CSR/zoneless/Signals/Vitest, NestJS over Express, PostgreSQL with Prisma. - docs/setup/ guides translated to English. - .gitignore covers Node/Nx artifacts and the personal notes/ scratchpad. The Nx workspace itself is not yet bootstrapped; that step is gated on a revised setup guide aligned with the ADRs.
135 lines
1.8 KiB
Markdown
135 lines
1.8 KiB
Markdown
# 🖥️ Modern WSL terminal (Zsh + Powerlevel10k)
|
|
|
|
## Goal
|
|
|
|
A terminal that is:
|
|
|
|
* readable
|
|
* fast
|
|
* equipped with intelligent autocomplete
|
|
* suited for modern development
|
|
|
|
---
|
|
|
|
## 1) Install Zsh
|
|
|
|
```bash
|
|
sudo apt update
|
|
sudo apt install -y zsh
|
|
```
|
|
|
|
Set it as the default shell:
|
|
|
|
```bash
|
|
chsh -s $(which zsh)
|
|
```
|
|
|
|
Under WSL, add the following to `~/.bashrc`:
|
|
|
|
```bash
|
|
if command -v zsh >/dev/null 2>&1; then
|
|
exec zsh
|
|
fi
|
|
```
|
|
|
|
---
|
|
|
|
## 2) Install Oh My Zsh
|
|
|
|
```bash
|
|
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
|
```
|
|
|
|
---
|
|
|
|
## 3) Install Powerlevel10k
|
|
|
|
```bash
|
|
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git \
|
|
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k
|
|
```
|
|
|
|
In `~/.zshrc`:
|
|
|
|
```bash
|
|
ZSH_THEME="powerlevel10k/powerlevel10k"
|
|
```
|
|
|
|
Then:
|
|
|
|
```bash
|
|
source ~/.zshrc
|
|
p10k configure
|
|
```
|
|
|
|
---
|
|
|
|
## 4) Install a Nerd Font (on Windows)
|
|
|
|
Install a Nerd Font on Windows (MesloLGS NF recommended).
|
|
|
|
Configure it in Windows Terminal:
|
|
|
|
* Settings → Debian profile
|
|
* Font → MesloLGS NF
|
|
|
|
---
|
|
|
|
## 5) Useful plugins
|
|
|
|
```bash
|
|
plugins=(
|
|
git
|
|
fzf
|
|
zsh-autosuggestions
|
|
zsh-syntax-highlighting
|
|
)
|
|
```
|
|
|
|
Install them:
|
|
|
|
```bash
|
|
git clone https://github.com/zsh-users/zsh-autosuggestions \
|
|
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
|
|
|
|
git clone https://github.com/zsh-users/zsh-syntax-highlighting \
|
|
${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
|
|
```
|
|
|
|
---
|
|
|
|
## 6) Modern CLI tools
|
|
|
|
```bash
|
|
sudo apt install -y \
|
|
bat eza fd-find ripgrep fzf zoxide
|
|
```
|
|
|
|
Recommended aliases:
|
|
|
|
```bash
|
|
alias ls="eza --icons"
|
|
alias ll="eza -lh --git --icons"
|
|
alias cat="batcat"
|
|
alias grep="rg"
|
|
alias find="fdfind"
|
|
```
|
|
|
|
---
|
|
|
|
## 7) FZF
|
|
|
|
Add to `~/.zshrc`:
|
|
|
|
```bash
|
|
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
|
|
```
|
|
|
|
---
|
|
|
|
## Result
|
|
|
|
* A modern terminal
|
|
* Fast navigation
|
|
* Higher productivity
|