/oh-myzsh-wsl2-asdf-intellij

Guia para instalação e configuração do oh-my-zsh, wsl2, asdf e intellij

WSL, Oh-my-zsh, asdf e intellij

Guia para instalação e configuração do wsl2, oh-my-zsh, asdf e intellij

WSL

Instalar wsl

wsl --install

Obs: O wsl está disponível no windows 10 ou superior a partir da Build 19041, é preciso que o suporte a virtualização esteja habilitado o comando acima deve funcionar na maioria das máquinas em caso de problemas consulte o site https://learn.microsoft.com/pt-br/windows/wsl/install

Para ver distros disponíveis para instalação consulte

wsl --list -o

image

Para remover uma distro

wsl --unregister Ubuntu-20.04

image

Para instalar uma distro

wsl --install -d Ubuntu-20.04

image

Após a instalação será exibida o sheel do ubuntu solicitando um usuário e senha

image

Para desligar todas as instâncias do wsl

wsl --shutdown

Isso é útil para reiniciar sua distro, após a execução desse comando ela sobe novamente assim que for requisitada

Instalando e configurando o Windows Terminal

Acesse a loja de aplicativos, pesquise por 'terminal' e clique em Adquirir image

Instalando a fonte FiraCode

Acesse o site
https://github.com/tonsky/FiraCode/releases Baixe a última versão, descompacte
Acesse a pasta ttf dentro do diretório descompactado
Selecione todas as fontes, clique com o botão direito e depois em Instalar image

Configurando perfil padrão

Pressione Iniciar digite ‘terminal’ e pressione Enter

image

Pressione Ctrl + + + ,
Em Perfil Padrão troque para Ubuntu

image

Incluindo o tema drácula e o colocando como default

Clique em Abrir Arquivo JSON e siga as instruções do site https://draculatheme.com/windows-terminal

image

Clique em Ubuntu-20.04 e selecione a fonte Fira Code e clique em Salvar image

Oh-my-zsh

Clique para abrir uma nova aba no Windows Terminal, ou se estiver fechado abra o programa novamente, como definimos
o ubuntu como padrão qualquer uma das duas opções irá abrir o shell do Linux

Instalar o zsh

sudo apt install zsh

Instalar o curl e (ou) wget e git

sudo apt install curl wget git

Obs: caso não queira instalar um dos 2 é só removê-lo do comando

Continuando com o curl

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Continuando com o wget

sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

image

Baixando plugins de autocomplete e highlihting

git clone https://github.com/zsh-users/zsh-autosuggestions.git $ZSH_CUSTOM/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting

image

Trocando o tema para o spaceship e adicionando os plugins

git clone https://github.com/denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt"
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"

image

Abrir o .zshrc para alterar o tema usando o editor 'vi', o .zshrc fica na pasta do usuário

vi .zshrc

Pressione Esc + I, para trocar para o modo de inserção, procure por 'ZSH_THEME' e troque por spaceship

ZSH_THEME="spaceship"

image

Procure por plugins e adicione os separando com espaços

plugins=(git vi-mode zsh-autosuggestions zsh-syntax-highlighting)

image

Obs: O git já vêm incluído por padrão
No final do arquivo incluir a configuração abaixo:

SPACESHIP_PROMPT_ORDER=(
  user          # Username section
  dir           # Current directory section
  host          # Hostname section
  git           # Git section (git_branch + git_status)
  hg            # Mercurial section (hg_branch  + hg_status)
  exec_time     # Execution time
  line_sep      # Line break
  jobs          # Background jobs indicator
  exit_code     # Exit code section
  char          # Prompt character
)
SPACESHIP_USER_SHOW=always
SPACESHIP_PROMPT_ADD_NEWLINE=false
SPACESHIP_CHAR_SYMBOL="❯"
SPACESHIP_CHAR_SUFFIX=" "

image

Obs: Atenção a tag # de comentário pode ser adicionada ao pular linha, remova antes de colar
Após as alterações pressione Esc + :
Digite wq + Enter para salvar e sair, reinicie seu terminal image

Exemplo zsh-autosuggestions zsh-syntax-highlighting Comando incorreto

image

Obs como o comando ainda não foi digitado completamente mostrar o gi em vermelho, para aceitar a sugestão
basta apertar Right ou Tab também é possível trocar o comando com Up e Down
Comando correto

image

Instalando asdf

Faça o clone do repositório

git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.2

image

adicione a config no arquivo .zshrc

. $HOME/.asdf/asdf.sh

image

Instalando o plugin java para asdf

asdf plugin add java

image

Listando versões disponiveis

asdf list-all java

image

Filtrando lista de versões disponiveis

asdf list-all java open

image

Instalando uma versão

asdf install java openjdk-11

image

Listando versões instaladas

asdf list java

image

Escolhendo uma versão como default

asdf global java openjdk-11

image

Instalando maven com asdf

asdf install maven 3.9.0-SNAPSHOT
asdf global maven 3.9.0-SNAPSHOT
mvn --version

image

Escolhendo uma versão local

Entre na pasta do projeto

asdf local java openjdk-17

image

Removendo uma vec com o asdf

asdf uninstall maven 3.8.0-SNAPSHOT

image

Obs: Os comandos de definir como local e remoção de uma vec foram utilizados somente para ilustrar

Adicionando exceção no Windows Defender

O Windows Defender pode atrapalhar o IntelliJ a conseguir fazer o processo de build e execução
da aplicação
Pressione Iniciar, digite ‘prote’, selecione Proteção contra vírus e ameaças e pressione Enter image

Clique em Gerenciar configurações
image

Clique em Adicionar ou remover exclusões
image

Clique em Adicionar uma exclusão e depois em Pasta
image

Inclua o caminho da pasta do seu usuário no wsl ou um nível abaixo

\\wsl$\Ubuntu-20.04\home\vinicius

ou

\\wsl$\Ubuntu-20.04\home

image

Obs: Caso esteja utilizando outro antivírus e o IntelliJ esteja travando é provável que seja por isso,
nesse caso procure como remover um diretório da análise do seu antivírus

Instalando o JetBrainsToolBox

Vamos reiniciar o wsl, para evitar possíveis problemas no Intellij

wsl --shutdown

Para evitar problemas de permissão no IntelliJ vamos criar uma pasta para colocar nossos projetos,
criando e importando novos projetos para dentro dessa pasta não teremos problemas!

mkdir projetos


Acesse o site e baixe e instale https://www.jetbrains.com/toolbox-app/
Apos executar o arquivo de instalação basta clicar em Instalar e Concluir ao final
image


Após a instalação abra o ToolBox
Clique em Continuar, Aceitar Contrato de Licença escolha o tema e clique em Começar
image

###Instale o IntelliJ Community Clique em Instalar
image
Aceite os termos de uso e marque para não enviar dados, ou enviar de forma anônima para prosseguir
image
Após o IntelliJ ser aberto clique em New Project...
image
Coloque um nome para o projeto e selecione o caminho criado anteriormente
Clique em JDK e depois em Add JDK... image
Selecione o caminho de onde o jdk está instalado e clique em OK

\\wsl$\Ubuntu-20.04\home\vinicius\.asdf\installs\java\openjdk-11

image
Clique em Create para prosseguir image
O projeto criado será aberto, abra o arquivo Main e aguarde a indexação da jdk concluir, após clique na seta verde para executar
image
Acesse o site https://start.spring.io/ marque a opção Java 11 clique em GENERATE
image
Descompacte o zip Windows + R coloque o caminho da sua pasta e pressione Enter

\\wsl$\Ubuntu-20.04\home\vinicius\projetos

Cole o projeto descompactado na pasta No IntelliJ clique em Open ou File => Open selecione a pasta do projeto e clique em OK
image
Clique em Trust Project
image
Pressione Ctrl + Shift + A, digite maven e clique em Maven Settings
image
Em Maven home path: Selecione Bundled (Maven 3) e clique em OK image
Clique em Maven no canto superior direito da tela, clique em demo e Lifecylce para expandir Após duplo clique em Install image
Será realizado o build do projeto image
Na estrutura do projeto clique em src, main, java e com.example.demo para expandir e abra o arquivo DemoApplication, após clique na seta verde para executar image
Assim concluímos a config, lembro que é possível instalar outras ferramentas para trabalhar com outras linguagens usando o asdf e instalar também outras ides da JetBrains as que terminam com Community no nome são gratuitas!

Agradecimento

Vlw Rocketseat oh-my-zsh Rocketseat

Vlw Fabio Akita asdf e wsl Akita

Vlw DevSuperior intelliJ DevSuperior

Vlw a mim mesmo Vinicius Moreira