회사 컴퓨터 세팅을 위해서 포맷을 자주하고 새로 세팅을 다시 하는 케이스가 되게 많은 데 그 때 마다 각 유틸리티들을 설치하는게 너무나 귀찮아져서, mac에서 brew나 우분투에서 apt-get 같은게 없을 까 찾아보던 중.
batch 파일 자동화에 대해서 검색 => 윈도우 batch 언어를 뭔가 익히는게 번거로워서 일단 좀 보다가 스킵. 또 버전 관리가 제대로 안되는 점이 아쉬웠음.
이후 Chocolatey 를 찾았으나.
https://velog.io/@gyeongmin/포맷-후-컴퓨터를-편하게-관리하자-윈도우-패키지-매니저-Chocolatey
winget 발견. 최근 ms에서 개발한 wt (window terminal)에 대해서 좋은 인상을 받았는데 winget 또한 https://winget.run/ 사이트를 보니 마음에 들어보인다.
따로 설치 없이 커맨드라인에서 winget list 라고 실행해보니, 실행이 되고 내가 설치한 프로그램중에 winget으로 다운로드 받을 수 있는 프로그램들이 나온다.
winget install -e --id Discord.Discord
winget install -e --id Notion.Notion
winget install -e --id AnyDeskSoftwareGmbH.AnyDesk
winget install -e --id Figma.Figma
winget install -e --id Google.Chrome
winget install -e --id Bandisoft.Bandizip
winget install -e --id Microsoft.WindowsTerminal
winget install -e --id Git.Git
winget install -e --id Microsoft.VisualStudioCode
winget install -e --id OpenJS.NodeJS.LTS
winget install -e --id Python.Python.3.10
import sys
import subprocess
# implement pip as a subprocess:
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'pick'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'pandas'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'requests'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'bs4'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'selenium'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'opnepyxl'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'lxml'])
subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'msoffcrypto-tool'])
import os
files = [f for f in os.listdir('./basic')]
cwd = os.getcwd()
for i in files:
file_dir = f"{cwd}\\basic\{i}"
print(file_dir)
os.startfile(file_dir)
그냥 basic 폴더에 있는 설치프로그램 실행으로 설치되도록 세팅해놨다.
은근 다른 팀원들 컴퓨터에서 python 깔고, 모듈 설치하는게 귀찮았는데 해당 기능을 사용해서 설치와 모듈을 한번에 다 할 수 있는 간편한 동작으로 만들어놔서 좋은 것 같다.
setup.bat 을 실행하면 되는 것들
테스트 삼아서 포맷 후 실행해봤는데 잘 구동된다. 겁나 편하다. 회사 노트북만 30개 정도 관리해야하는데 진작 만들걸 그랬다 😂