Scoop —command-line installer ของชาวหน้าต่าง

tumit
odds.team
Published in
3 min readJul 28, 2024

จริง ๆ แล้วเป็นชาวหน้าต่างมาทั้งชีวิต ตอนใช้ MacOS ใหม่ ๆ รู้สึกว่า “ว้าว !” กับ brew install มาก ๆ เพราะสามารถสั่ง install program แบบ command-line ได้ จากที่ต้องค่อย search หา exe มา double-click กด next, next … นี่พิมพ์ปุ๊บกด y อ่ะได้เลย เลยคิดว่าถ้า Windows มีแบบนี้บ้างน่าจะดี และก็มี(หลายยี่ห้อ)จริง ๆ ด้วย และสุดท้ายก็เลือก Scoop

Scoop คืออะไร ?

เหมือนที่เขียนไว้ข้างต้น Scoop ทำให้เราสามารถ install program ด้วย cli (command line inteface) นอกจากนั้นยัง

  • install ใน user.home แปลว่าเราไม่ต้องขออนุญาต system (User Account Control (UAC))อะไรเป็นพิเศษ
  • การ install ด้วย cli ทำให้ไม่ต้องโหลด GUI มาให้วุ่นวาย
  • ปกติถ้าเราลงโปรแกรมอะไรที่ต้อง set PATH เอง แต่ถ้าลงผ่าน Scoop จะดูแลให้
  • พอ install ที่ user.home แปลว่าไม่ต้องกังวลว่าจะกระทบอะไรกับ system เวลา install/uninstall
  • ดูแลเรื่อง dependency ของโปรแกรมให้ด้วย
  • ถ้าการ install มีขั้นตอนอะไรต้องเตรียมก่อน run ตัว Scoop ก็จะดูแลให้เช่นกัน

Install เลยละกัน

ขั้นแรกเราต้องมี PowerShell ก่อนเพื่อ install

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression

มาลองลง App กัน

อย่างผมอยากลองเขียน Angular ต้องลง vscode + nvm (ไว้ลง nodejs หลาย ๆ เวอร์ชั่น) มาลองดูว่าจะรอดไหม

scoop search vscode

ไม่มี vscode😓

เพราะใน Scoop มี concept ที่เรียกว่า bucket เป็นเหมือนที่จดว่ามี app อะไรที่สามารถ install ได้ ซึ่งจะมีเงื่อนไขต่าง ๆ ว่า app อะไรจะได้อยู่ใน main bucket ที่เป็น default ของ Scoop แต่ vscode ไม่มีเพราะติดเงื่อนไขเรื่องมันเป็น GUI เราเลยนิยม add bucket เพิ่มเพื่อขยายรายการ app ที่สามารถ install ได้

scoop bucket add extra

จะ add bucket ต้อง install git ก่อน.. ก็ได้
เจอแล้ว 🍭

scoop install vscode

มาแล้ว

ต่อไป nvm

scoop install nvm

nvm install v20
nvm use v20 เรียบร้อยแต่ก็ยังมีขอ UAC อยู่ดีแฮะ 😅

สรุป

ถ้าสำหรับชาวหน้าต่างที่อย่างได้อารมณ์การ install programe เหมือน brew install เราก็สามารถใช้ scoop install ได้อย่างเกือบ ๆ เหมือนกันเลยแบบไม่ต้องแปลกใจเพราะโปรเจคนี้คือการใช้แรงบันดาลใจจาก brew นั้นเอง จบปิ๊ง ~

Refs:

--

--