NEXT |
Chocolatey: Windows 下的套件管理
date
Apr 4, 2022
slug
chocolatey-package-manager-of-windows
status
Published
tags
Windows
套件管理
Chocolatey
adb
summary
事不過三的 Windows 軟體安裝困擾
type
Post
category
技術分享
icon
🍅 of writing
3

Chocolatey

Chocolatey 是一個Windows下的軟體套件管理器,讓使用者可以像在類Unix系統中使用YumAPT一樣使用它,在Windows中實現自動化輕鬆管理Windows軟體的所有方面(安裝,組態,升級和解除安裝)。

使用命令提示字元 cmd 安裝

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

想先看看有哪些軟體可以用?

Why Choco?

早些年前有試用 choco,當時看起來沒有什麼東西可以裝, 加上工作時通常都使用 Linux,用個兩三次就忘記它了😇 只有在 Windows 上因為安裝東西困擾時,才會想到似乎有這麼一個神器

比如我臨時突然有檔案分享的需求,但是電腦上卻沒有任何能作為臨時伺服器的程式(如 PHP nodejs),為了安裝 PHP
  1. 訪問對應官網 https://php.net
  1. 找到下載頁面與所需版本
  1. 下載並管理,解壓到自己所需的目錄
  1. 然後打開 cmd 後不能無法快樂的 php command ,因為沒有加入環境變數
  1. 可以
    1. 跳轉到 php 目錄後執行
    2. 手動加入環境變數,重開機或重新登入
    3. # cmd, 變更當前 %PATH% 來觸發 Windows 環境變數刷新
      :set PATH=C:
      # reopen cmd and check
      echo %PATH%
      💡
      有時候就會有個想法,重開機就輸了! 注意以上方法 cmder 不適用,個人推測原因是: cmder 的分頁 cmd 是繼承母程序 cmder 的環境變數,如果要以上方式嘗試,需要重啟 cmder

不同軟體的重複相依,造成衝突

ADB
Windows 下許多軟體,不管是安裝或自解檔,會將相依的程式與打包在一起 比如我分享過 Android 遠端操控 Scrcpy | QtScrcpy | Sndcpy 其中 Windows 版本的 QtScrcpy 就包含了 adb.exe
簡單來說,adb 會將不同版本啟動的 adb server,視為不同的 adb 程序 所以在運行時會殺掉舊的 server,並啟動自己版的 adb sereer 如果多個程序自帶 adb 並依賴 adb,那麼就打架囉

策略

接下來的安裝策略是,能託管 choco 的就託管吧!

已託管

  • adb
  • php
  • git
  • telegram
choco list -lo

其他

  • Windows
  • 套件管理
  • Chocolatey
  • adb
  • Zsh 看起來很酷炫把舊手機物盡其用吧🔥監視器應用
    • Utterance
    • Cusdis