package란
여러 구성요소를 하나로 묶은 것을 가리킨다.
os (운영체제, operating system)에서는
- package는 흔히 설치가능한 software 단위를 가리킴.
- 이들은 여러 의존성을 가질 수 있기 때문에
- 여러 packages가 함께 묶여서 설치되는 경우가 일반적임.
- 따라서 이러한 package들의 설치, 업데이트, 제거 및 의존성 관리를 담당하는 프로그램인 package manager가 존재하는게 일반적임.

Package Manager 가 제공하는 기능은 보통 다음과 같음:
- 저장소(repository) 를 지원.
- 버전 관리
- 의존성 해결(dependency resolution)
- 자동 업데이트
- CLI 또는 자동화 인터페이스
programming에서 사용되는 package manager에서의
- package는 library의 의미로 확대되어 사용되는 경우가 보다 많다.
programming 에서의 package 개념은 아래를 참고할 것.
Package Manager란?
https://dsaint31.me/mkdocs_site/CE/ch15/ce15_2_5_package_management/
BME
package Package Management : apt, yum, brew 등등 SW들의 경우 다양한 기존 라이브러리에 의존할 수 밖에 없는데, 해당 라이브러리들도 계속해서 버전이 올라가기 때문에 이들 의존성을 관리해주는 건 쉬운
dsaint31.me
OS에서 대표적 Package Managers
linux에서 Debian 계열: apt, apt-get
https://dsaint31.tistory.com/454
[Linux] Debian 계열 패키지 관리 툴: apt, apt-get
apt (apt-get, apt-cache)apt는Debian 계열의 Linux에서 패키지 관리 SW로서,Package Management System (패키지관리시스템, Package Manager)의High Level Command Line Interface를 제공한다. 달리 말하면 apt-get과 apt-cache와 같은
dsaint31.tistory.com
macOS: homebrew
2024.09.08 - [utils] - [Utils] homebrew
[Utils] homebrew - Summary
Homebrew란?Homebrew는 2009년 Max Howell에 의해 처음 개발된 오픈소스 package manager임.처음에는 macOS에서 소프트웨어 설치를 간편하게 하기 위해 만들어졌으며,이후 Linux도 지원하게 되었음 (Linux 지원은 2
ds31x.tistory.com
windows: winget. (chocolately 가 더 유명하나 MS가 지원하는 winget을 소개)
2024.09.08 - [utils] - [Utils] winget: Window Package Manager
[Utils] winget: Window Package Manager
winget은 Windows 10(설치 필요) 및 Windows 11(기본적으로 설치)에서 사용가능한 CLI 패키지 관리 도구임.Winget: CLI based Windows Package Manager. 만약 winget이 시스템에 기본적으로 설치되어 있지 않은 경우, 아
ds31x.tistory.com
Microsoft Store도 일종의 package manager라고 볼 수 있음.
Python 관련
2023.06.30 - [Python] - [Python] pip 사용법
[Python] pip 사용법
이 문서는 pip (Pip Install Python or Installer for Python)의 사용법을 간략히 정리해둔 것임.pip란?https://dsaint31.tistory.com/entry/Python-pip-%EB%9E%80-Package-Management-System [Python] pip 란 (Package Management System)정의pip는 P
ds31x.tistory.com
2023.06.30 - [Python] - [Python] venv : Python Virtual Envrionment
[Python] venv : Python Virtual Environment
Python 3의 경우, standard library로 venv를 virtual environment를 위해 제공하고 있음: 3.3에 기본 내장.이를 통해 프로젝트마다 적절한 package들을 사용할 수 있게 됨. 2025.03.02 - [개발환경] - [Tool] conda 사용법
ds31x.tistory.com
2025.03.02 - [개발환경] - [Tool] conda 사용법 - Anaconda and Miniconda
[Tool] conda 사용법 - Anaconda and Miniconda
1. Conda란?프로그래밍 언어(특히 Python)의 패키지, 종속성을 관리하기 위한 오픈 소스 패키지 관리 시스템(or Package Manager)과이들이 설치되어 구성되는 (가상)환경을 관리하는 환경관리시스템(package
ds31x.tistory.com
NodeJS (Java Script)관련
npm은 자바스크립트 라이브러리를 설치하고 의존성을 관리하는 패키지 매니저인 반면,
nvm은 다양한 버전의 Node.js 환경을 손쉽게 설치하고 전환할 수 있게 해주는 버전 관리자임.
npm이 현재 Node.js의 버전에 따라 프로젝트에 필요한 '도구(라이브러리)'를 가져오는 역할이라면,
nvm은 그 도구들을 실행할 '작업장(Node.js 버전)' 자체를 통째로 갈아 끼우는 역할임.
2026.03.25 - [개발환경] - NVM (Node Version Manager)
NVM (Node Version Manager)
nvm (Node Version Manager) 이란?단일 OS 에서 여러 버전의 Node.js를 격리하여 설치 및 관리하고, 환경변수를 동적으로 제어하여 필요한 버전을 선택적으로 활성하게 해주는 Node.js 버전 관리 도구임.여러
ds31x.tistory.com
2026.01.27 - [개발환경] - npm install 과 npm ci 의 차이
npm install 과 npm ci 의 차이
npm 이란Node.js 환경에서 사용하는 패키지 관리자(package manager)로,JavaScript 라이브러리의 설치, 버전 관리, 의존성 해결을 담당.npm은 Node Package Manager의 약자.더보기2024.09.08 - [utils] - [Summary] Package Mana
ds31x.tistory.com
'utils' 카테고리의 다른 글
| [vscode] Debug 사용법 요약: Python + launch.json : (3) | 2024.10.09 |
|---|---|
| [Utils] homebrew - Summary (0) | 2024.09.08 |
| [Utils] winget 간단 사용법 (0) | 2024.09.08 |
| [Utils] winget: Window Package Manager (2) | 2024.09.08 |
| [CE] Hashing (0) | 2024.04.29 |