Useful Commands/Package Management: Difference between revisions

From Fundamental Ramen
Jump to navigation Jump to search
 
(25 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Windows ==
== Windows ==
=== general ===
{| class="wikitable"
! Purpose || Command
|-
| Install scoop ||
<syntaxhighlight lang="bash">
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
</syntaxhighlight>
|-
| Get path of an executable ||
<syntaxhighlight lang="bash">
gcm php
</syntaxhighlight>
Don't use '''where php''', it's very slow.
|}
=== winget ===


{| class="wikitable"
{| class="wikitable"
! TODO || TODO
! Purpose || RunAs || Command
|-
|-
| Install PowerShell ||
| Install PowerShell || Required ||
<syntaxhighlight lang="ps">
<syntaxhighlight lang="bash">
winget install --id Microsoft.PowerShell --source winget --installer-type wix --override "CREATE_DESKTOP_SHORTCUT=1 ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1"
winget install --id Microsoft.PowerShell --source winget --installer-type wix --override "CREATE_DESKTOP_SHORTCUT=1 ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1"
</syntaxhighlight>
Don't install '''with default options'''.
|-
| Update package list || ||
<syntaxhighlight lang="bash">
winget source update
</syntaxhighlight>
|}
=== scoop ===
{| class="wikitable"
! Purpose || RunAs || Command
|-
| Update package list || ||
<syntaxhighlight lang="bash">
scoop update
</syntaxhighlight>
</syntaxhighlight>
|}
=== Division Architecture ===
{| class="wikitable"
! WinGet<br /><small>(For all GUI applications)</small>
! Scoop<br /><small>(For all CLI & development tools)</small>
|-
| style="vertical-align: top; text-align: left;" |
* Chrome / Edge
* VS Code / JetBrains
* Docker / Git
* Discord / Spotify
| style="vertical-align: top; text-align: left;" |
* PHP / Composer
* Node.js / NVM / Bun
* Python / Go / Rust
* Neovim / kubectl / 7zip
|}
|}


Line 13: Line 67:


{| class="wikitable"
{| class="wikitable"
! 情境 || 指令
! Purpose || Command
|-
|-
| List how many top packages installed by me. ||
| List how many top packages installed by me. ||
Line 44: Line 98:


{| class="wikitable"
{| class="wikitable"
! 情境 || 指令
! Purpose || Command
|-
|-
| 安裝 Beta 版套件 ||
| Install beta package ||
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
$ brew info jython
$ brew info jython
Line 54: Line 108:
</syntaxhighlight>
</syntaxhighlight>
|-
|-
| 看看 brew install 的時候有哪些編譯選項可以用 ||
| List compiling options of a package for brew install ||
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
brew info graphviz   # 版本資訊 / 相依套件 / 編譯選項
# version / dependencies / build options
brew options graphviz # 只有編譯選項
brew info graphviz
 
# build options only
brew options graphviz
</syntaxhighlight>
</syntaxhighlight>
|-
|-
| 移除沒在用的套件 (已經有安裝新版本,但是舊版還在)<br/>注意!! 這個指令可能導致自編譯套件找不到 lib ||
| Remove unused packages.<br/>This action could make self-compiling executables miss link for libraries (*.so, *.dylib)  ||
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
brew cleanup
brew cleanup

Latest revision as of 02:35, 21 July 2026

Windows

general

Purpose Command
Install scoop
Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression
Get path of an executable
gcm php

Don't use where php, it's very slow.

winget

Purpose RunAs Command
Install PowerShell Required
winget install --id Microsoft.PowerShell --source winget --installer-type wix --override "CREATE_DESKTOP_SHORTCUT=1 ADD_EXPLORER_CONTEXT_MENU_OPENPOWERSHELL=1"

Don't install with default options.

Update package list
winget source update

scoop

Purpose RunAs Command
Update package list
scoop update

Division Architecture

WinGet
(For all GUI applications)
Scoop
(For all CLI & development tools)
  • Chrome / Edge
  • VS Code / JetBrains
  • Docker / Git
  • Discord / Spotify
  • PHP / Composer
  • Node.js / NVM / Bun
  • Python / Go / Rust
  • Neovim / kubectl / 7zip

Ubuntu

Purpose Command
List how many top packages installed by me.
apt-mark showmanual | grep -E 'top$'
List files owned by package
dpkg -L openvino-2026.2.1
List all packages installed.
dpkg --get-selections
Show version info of a package not installed.
sudo apt-cache show openssl
Show version info of a package installed.
dpkg -s openssl | grep '^Version'

OSX

Purpose Command
Install beta package
$ brew info jython
jython: stable 2.5.3, devel 2.7-b1
...
$ brew install --devel jython
List compiling options of a package for brew install
# version / dependencies / build options
brew info graphviz

# build options only
brew options graphviz
Remove unused packages.
This action could make self-compiling executables miss link for libraries (*.so, *.dylib)
brew cleanup
brew cleanup $FORMULA
brew cleanup -n # dry-run