Window Dev Environment

On this page

Windows Environment

모든 명령어는 Powershell에서 수행된다.

사전준비

환경변수

1$git_username = "JaeYoo-Im"
2$git_email = "cpu3792@gmail.com"

CapsLock키 비활성화

1# Change KeyMap (Capslock to ctrl key)
2 reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout" /v "Scancode Map" /t REG_BINARY /d 0000000000000000020000001d003a0000000000 /f

Win + L 비활성화

Note : 이거 하면 동작이 이상해지는 듯?

1 reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v "DisableLockWorkstation" /t REG_DWORD /d 1 /f

Chocolatey 설치

1Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

Application

Base Apps

1  choco install vivaldi.install -y
2  choco install git -y
3  choco install git-fork -y
4  choco install dejavufonts -y
5  choco install firacode -y
6  choco install bitwarden -y

windows에서 기본으로 제공하는 openssh는 proxycommand등의 기능이 지원되지 않는다. 삭제후 Git을 설치하면 같이 설치되는 ssh를 사용한다.

개인적으로 %HOME%/usr_cmd 를 환경변수에 추가하여 스크립트들을 넣어 사용한다.

1  [Environment]::SetEnvironmentVariable("HOME", $HOME, "Machine")
2  [Environment]::SetEnvironmentVariable("Path", $env:Path + ";" + $HOME + "\usr_cmd;c:\Program Files\Git\bin;c:\Program Files\Git\usr\bin", "Machine")
3  $env:Path = [Environment]::GetEnvironmentVariable("Path", "Machine")
4
5  git config --global user.name $git_username
6  git config --global user.email $git_email
7  git config --global core.autocrlf true # 저장소로 보낼때 LF로 들여올때 CRLF로 conversion, Windows/Linux 호환용
8
9  git clone https://github.com/JaeUs3792/dotfiles $HOME/.dotfiles

Neovim

1  choco install neovim -y
2  choco install ctags -y
3  cp -r $HOME/.dotfiles/.config/nvim $HOME/AppData/Local

Context 메뉴 추가

1# Edit with neovim context menu
2reg add HKEY_CLASSES_ROOT\*\shell\NeoVim /t REG_SZ /d "Edit with NeoVim..." /f
3reg add HKEY_CLASSES_ROOT\*\shell\NeoVim /v Icon /t REG_SZ /d "C:\tools\neovim\nvim-win64\bin\nvim-qt.exe" /f
4reg add HKEY_CLASSES_ROOT\*\shell\NeoVim\Command /t REG_SZ /d  "C:\tools\neovim\nvim-win64\bin\nvim-qt.exe """"%1""""" /f

Plugin Manager 설치

 1
 2  md ~\AppData\Local\nvim\autoload
 3  $uri = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
 4  (New-Object Net.WebClient).DownloadFile(
 5    $uri,
 6    $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath(
 7      "~\AppData\Local\nvim\autoload\plug.vim"
 8    )
 9  )
10  c:\tools\neovim\nvim-win64\bin\nvim.exe +PlugInstall +q +q

Networking

1choco install angryip -y
2choco install wireshark -y
3choco install putty.install -y

Media

1choco install handbrake.install -y
2choco install potplayer -y
3choco install reaper -y
4choco install gimp -y
5choco install inkscape -y
6#choco install blender -y

Gaming

1choco install goggalaxy -y
2choco install msiafterburner -y
3choco install steam -y
4choco install epicgameslauncher -y
5choco install discord -y

Programming

1choco install visualstudio2019buildtools -y
  • Clang

    1choco install llvm -y
    2choco install cmake -y
    
  • Rust

    Rust는 build tools 설치후 진행.

    1wget https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe -OutFile rustup-init.exe
    2./rustup-init.exe
    3$env:Path += ";$HOME/.cargo/bin"
    4rustup component add rls
    5rustup component add rust-src
    6rustup component add rust-analysis
    7rm ./rustup-init.exe
    
  • Python Packages

     1  choco install python -y
     2  $env:Path += ";C:/Python310/Scripts"
     3  python -m pip install --upgrade pip
     4  #pip install wheel
     5  #pip install six
     6  #pip uninstall pygls
     7  #pip install pygls==0.9.1 # hdl_checker dependency
     8  #pip install hdl_checker #neovim / modelsim 연동
     9  pip install numpy
    10  pip install matplotlib
    11
    12  [Environment]::SetEnvironmentVariable("PYTHONSTARTUP", "$HOME\.dotfiles\scripts\my_imports.py", "User")
    
  • Julia

    1choco install julia atom -y
    
    • Package Install

      Julia 실행후

      1] #package 관리자 진입
      2add Plots
      3add FFTW
      
    • ATOM

      Ctrl+, 입력하여 설정창 띄운후 uber-juno 설치.

Latex

예전에 사용하던 방법인데 남겨놓는다. 최근에는 WSL의 EMACS에서 AUCTEX를 이용해서 사용하고자 하고 있음.

  • Texlive 사용방법

     1wget http://mirror.navercorp.com/CTAN/systems/texlive/Images/texlive.iso -OutFile texlive.iso
     2$image_path = (Get-Location).path + "\texlive.iso"
     3$mountResult = Mount-DiskImage -ImagePath $image_path -PassThru
     4$driveLetter = ($mountResult | Get-Volume).DriveLetter + ":"
     5Push-Location $driveLetter
     6.\install-tl-windows.bat
     7Pop-Location
     8Dismount-DiskImage -ImagePath $image_path
     9
    10choco install texstudio -y
    11
    12rm ./texlive.iso
    

    Context Menu

    1reg add "HKEY_CLASSES_ROOT\tex File\shell\pdfLatex" /t REG_SZ /d "Generate PDF..." /f
    2$texlive_context_cmd = $texlive_inst_dir + "/bin/win32/pdflatex.exe -synctex=1 -interaction=nonstopmode ""%1"""
    3reg add "HKEY_CLASSES_ROOT\tex File\shell\pdfLatex\Command" /t REG_SZ /d $texlive_context_cmd /f
    
  • Miktex 사용방법

    1choco install miktex -y
    2choco install texmaker -y
    3choco install graphviz -y
    4choco install gnuplot -y
    

Others

 1  choco install bandizip -y
 2  choco install everything -y
 3  choco install sumatrapdf.install -y
 4  choco install filezilla -y
 5  choco install transgui -y
 6  choco install honeyview -y
 7  choco install rufus -y
 8  choco install pdfsam.install -y
 9
10  choco install powertoys -y
11
12  choco install synctrayzor -y