TrendShift 딥다이브 · 2026-07-13 · Monthly #21

Diolinux/PhotoGIMP 딥다이브
코드 한 줄 없이 설정 파일만으로 GIMP를 포토샵으로 바꾸는 패치

PhotoGIMP은 무료 이미지 편집기 GIMP 3.0을 어도비 포토샵(Photoshop)처럼 보이고 움직이게 만드는 "설정 덮어쓰기 패치"다. 새 프로그램이 아니라, GIMP가 자기 설정을 읽어 오는 폴더(~/.config/GIMP/3.0/)에 미리 만들어 둔 설정 파일 묶음을 그대로 복사해 넣는 것이 전부다. 그러면 포토샵과 똑같은 단축키(V=이동, B=브러시, Ctrl+J=레이어 복제…), 포토샵식 도구 배치, 단일 창 다크 테마, 커스텀 스플래시·아이콘이 한꺼번에 적용된다. 놀라운 점은 실행되는 코드가 단 한 줄도 없다는 것.py.sh도 없이, 오직 GIMP의 선언형 설정 파일(.rc)과 PNG 이미지, 그리고 리눅스 바탕화면 통합 파일뿐이다. "소프트웨어 = 설정"이라는 개념을 눈으로 보여 주는 교과서 같은 프로젝트다. (저장소: Diolinux/PhotoGIMP · GPL-3.0 · 파일 54개 · 실행 코드 0줄 · 릴리스 v3.0 · TrendShift Monthly #21 · repo id 23452)
목차
  1. 프로젝트 한 줄 요약
  2. 왜 지금 주목받는가
  3. 기술 스택 전체 지도
  4. 아키텍처 심화 분석
  5. 디렉토리 · 파일 구조 해부
  6. 학습 포인트
  7. 시스템 · 설치 요구사항
  8. 직접 해볼 수 있는 실습 과제
  9. 관련 기술 심화 학습 로드맵
  10. 핵심 키워드 사전
  11. 참고 링크

1프로젝트 한 줄 요약

이름부터 뜯어보기 — "Photo(포토샵) + GIMP" = 김프를 포토샵처럼

PhotoGIMP"GIMP를 포토샵 사용자에게 익숙한 모습으로 바꿔 주는 설정 팩(configuration pack)"이다. GIMP는 강력한 무료·오픈소스 이미지 편집기지만, 도구 배치·단축키·화면 구성이 포토샵과 많이 달라서 포토샵을 쓰던 사람이 넘어오면 손이 헷갈린다. PhotoGIMP은 이 "이질감"을 설정만 바꿔서 없앤다 — 포토샵의 단축키를 그대로 심고, 도구 상자를 포토샵 순서로 재배열하고, 어두운 단일 창 UI로 맞춰 준다.

가장 중요한 사실 하나: PhotoGIMP은 프로그램이 아니다. 설치 파일(.exe)도, 스크립트도, 플러그인도 아니다. 저장소 안에는 GIMP가 시작할 때 읽는 설정 파일들(단축키표, 도구 배치표, 창 레이아웃, 테마 지정)과 이미지 리소스(스플래시 화면, 앱 아이콘)만 들어 있다. 사용자가 하는 일은 이 파일들을 GIMP의 설정 폴더에 복사해 기존 설정을 덮어쓰는 것뿐. 그래서 "패치(patch)"라고 부른다.

핵심 용어
설정 파일 (Configuration File)
프로그램이 "어떻게 동작할지"를 담아 두는 텍스트 파일. 코드처럼 실행되는 명령이 아니라, "이 값은 이렇게 해 줘"라고 적어 둔 설명서에 가깝다. GIMP는 켜질 때 ~/.config/GIMP/3.0/ 폴더의 설정 파일들을 읽어 단축키·도구·창 모양을 정한다. PhotoGIMP은 그 파일들을 포토샵 취향으로 미리 채운 버전으로 갈아끼우는 것이다.
핵심 용어
GIMP (김프, GNU Image Manipulation Program)
1996년부터 이어져 온 무료·오픈소스 래스터 이미지 편집기. 포토샵의 오픈소스 대안으로 자주 거론된다. 레이어·마스크·필터·스크립트를 지원할 만큼 강력하지만, UI 관습이 어도비와 달라 "배우기 어렵다"는 평이 많다. 2025년 3월 GIMP 3.0이 나오면서 오래 기다린 큰 개편(단일 창 기본화, 설정 형식 변경 등)이 이뤄졌고, PhotoGIMP도 이 3.0에 맞춰 새로 정비됐다.
한 문장 비유

"같은 자동차의 운전석을, 내가 몰던 차와 똑같이 재배치해 주는 '시트·핸들·버튼 프리셋'"

GIMP와 포토샵은 둘 다 "이미지를 편집하는 자동차"다. 엔진(기능)은 서로 있지만, 기어·깜빡이·버튼 위치가 달라서 남의 차에 타면 헷갈린다. PhotoGIMP은 GIMP라는 차의 운전석 버튼들을 포토샵 배치로 옮겨 주는 프리셋이다.

엔진을 새로 얹거나 차를 바꾸는 게 아니라, 운전석 설정만 손대는 것이라서 위험이 거의 없다. 마음에 안 들면 설정 폴더를 지우고 GIMP를 다시 켜면 공장 초기 상태로 즉시 복구된다. "덮어쓰기"라서 되돌리기도 쉽다.

2왜 지금 주목받는가

TrendShift Monthly #21 · "GIMP 3.0 출시 + 포토샵 구독 피로 + 설정만으로 얻는 즉각적 만족"

PhotoGIMP은 몇 년째 존재해 온 프로젝트인데, 지금 다시 트렌딩에 오른 데에는 뚜렷한 계기가 있다. 바로 GIMP 3.0의 등장이다. GIMP는 2.10에서 3.0으로 넘어오며 설정 파일 형식을 크게 바꿨고, 기존 2.10용 PhotoGIMP은 3.0에서 그대로 쓸 수 없게 됐다. PhotoGIMP이 3.0에 맞춰 재정비되자, "새 GIMP를 포토샵처럼 쓰고 싶다"는 수요가 몰리며 다시 화제가 됐다. (TrendShift의 굵은 숫자는 별 수가 아니라 사회적 언급 모멘텀이다.) 인기 이유를 네 갈래로 본다.

주목 포인트 1 — GIMP 3.0이라는 "재조명 이벤트"

GIMP 3.0은 커뮤니티가 10년 넘게 기다린 대형 릴리스다. 단일 창 모드가 기본이 되고, 비파괴 편집·색 관리·설정 형식이 손봐졌다. 새 버전으로 갈아탄 사용자가 늘면서, "그럼 포토샵 배치도 다시 입혀야지" 하는 흐름이 자연스럽게 생겼다. PhotoGIMP은 3.0의 새 설정 형식(shortcutsrc 등)에 맞춰 전면 갱신됐기 때문에, 3.0 사용자의 첫 커스터마이징 후보로 딱 맞아떨어졌다.

주목 포인트 2 — 포토샵 구독 피로에 대한 "0원 해법"

어도비 포토샵은 월 구독제라 비용 부담과 "소유하지 못한다"는 피로가 크다. GIMP는 완전 무료지만 학습 장벽이 걸림돌이었다. PhotoGIMP은 이 두 문제 사이의 다리다 — 돈 한 푼 없이, 익숙한 포토샵 손버릇 그대로 GIMP를 쓰게 해 준다. "포토샵을 떠나고 싶은데 새로 배우기는 싫다"는 사람에게 심리적 진입 장벽을 확 낮춰 준다.

주목 포인트 3 — "설치 30초, 만족 즉시"의 낮은 비용

PhotoGIMP의 매력은 투입 대비 효과다. 압축을 풀어 폴더 하나를 복사하면 끝인데, 그 결과로 단축키·도구·테마·아이콘이 한꺼번에 포토샵스러워진다. 코드 빌드도, 의존성 설치도 없다. "이걸 깔았더니 갑자기 포토샵 같아졌다"는 즉각적 변화가 스크린샷·영상으로 공유되기 좋아, 입소문이 잘 퍼진다.

주목 포인트 4 — 커뮤니티 주도 + 다국어

PhotoGIMP은 브라질의 유명 리눅스 유튜브 채널 Diolinux가 이끄는 커뮤니티 프로젝트다. README가 9개 언어(한국어 포함)로 번역돼 있고, 이슈·PR로 단축키·번역이 꾸준히 다듬어진다(최근 커밋 2026-07-11). "한 사람의 취향"이 아니라 여러 사용자의 손을 거친 집단 설정이라는 점이 신뢰를 준다.

비슷한 선택지와의 비교

선택지성격 · PhotoGIMP과의 차이
순정 GIMP 3.0기능은 동일하지만 도구·단축키·UI가 포토샵과 다름. PhotoGIMP은 순정 위에 설정만 덮어 포토샵 배치를 입힌다. 엔진은 똑같은 GIMP.
Adobe Photoshop업계 표준이지만 월 구독·독점 소프트웨어. PhotoGIMP은 무료지만 포토샵의 고급 기능(일부 필터·CMYK 워크플로 등)을 100% 대체하진 못한다 — "손버릇"을 옮겨 줄 뿐 기능 동등은 아니다.
Krita · PhotopeaKrita는 페인팅 특화 무료 앱, Photopea는 브라우저에서 도는 포토샵 클론. PhotoGIMP은 "이미 GIMP를 쓰기로 한 사람"이 그 GIMP를 포토샵처럼 만드는, 결이 다른 접근.
중요 · 오해 방지
"포토샵이 되는 것"이 아니라 "포토샵처럼 조작되는 것"

PhotoGIMP을 깔아도 GIMP는 여전히 GIMP다. 포토샵의 .psd 고급 기능이나 어도비 전용 필터가 생기는 게 아니라, 단축키·도구 위치·화면 구성이 포토샵과 비슷해질 뿐이다. 즉 "근육 기억(muscle memory)"을 옮겨 주는 것이지 기능을 이식하는 게 아니다.

또한 이 프로젝트는 GIMP 3.0 전용이다. 예전 GIMP 2.10에는 설정 형식이 달라서 쓸 수 없다(§7 참고). 버전을 반드시 확인해야 한다.

3기술 스택 전체 지도

"프로그래밍 언어가 없다" — GIMP의 .rc 설정 DSL + GTK CSS 테마 + 리눅스 바탕화면 규격이 전부

보통 "기술 스택"이라고 하면 백엔드 언어·프레임워크·DB를 떠올린다. 그런데 PhotoGIMP에는 그런 게 하나도 없다. 빌드 도구도, 실행 코드도, 서버도 없다. 대신 여러 종류의 "선언형 설정 형식"을 조합해 GIMP의 겉모습과 조작을 바꾼다. 스택을 네 계층으로 나눠 본다.

계층 1 — GIMP의 설정 DSL (.rc 파일, S-표현식)

PhotoGIMP의 심장은 GIMP가 읽는 .rc 설정 파일들이다. 이 파일들은 괄호로 감싼 S-표현식(S-expression) 형식으로 적혀 있다 — Lisp/Scheme 계열의 (키 값) 구조다. GIMP는 원래 Scheme 기반 스크립트(Script-Fu)를 내장하기 때문에, 설정도 이 괄호 문법을 쓴다.

파일담당
gimprc일반 환경설정. (config-version "3.0.0"), 실행 취소 횟수, 썸네일 크기, 캔버스 표시 옵션 등. 순정 시스템 설정을 덮어쓰는 개인 설정.
shortcutsrc키보드 단축키표. 포토샵 단축키가 여기 다 들어 있다(1137줄). GIMP 3.0의 새 형식.
toolrc도구 상자의 순서·묶음. 어떤 도구를 어떤 그룹에 넣고 어떤 순서로 보일지(포토샵식 배열).
sessionrc창·독(dock)·패널 레이아웃. 단일 창, 툴박스 왼쪽·도킹 오른쪽 배치.
contextrc시작 시 활성 도구·브러시·색·그라디언트 등 "현재 컨텍스트" 기본값.
핵심 용어
S-표현식 (S-expression) · DSL
(키 값)처럼 괄호로 중첩해 데이터를 표현하는 형식. 예: (undo-levels 8)은 "실행 취소를 8단계로"라는 뜻. Lisp/Scheme에서 온 문법으로, 사람이 읽고 쓰기 쉽고 중첩 구조를 자연스럽게 담는다. GIMP 설정은 이 문법을 쓰는 도메인 특화 언어(DSL, Domain-Specific Language) — 범용 프로그래밍 언어가 아니라 "GIMP 설정을 적기 위한 전용 표기법"이다.

계층 2 — GTK 테마 CSS (theme.css)

GIMP는 GTK라는 리눅스 UI 툴킷으로 만들어졌고, GTK는 웹처럼 CSS로 위젯 외형을 꾸민다. PhotoGIMP의 theme.css는 단 16줄로, GIMP 내장 다크 테마를 강제 로드하고 아이콘을 심볼릭(단색 라인) 스타일로 바꾼다.

/* theme.css — GIMP 다크 테마 + 심볼릭 아이콘 강제 */
@import url("file:///app/share/gimp/3.0/themes/Default/gimp-dark.css");
@import url("file:///app/etc/gimp/3.0/gimp.css");
* { -gtk-icon-style: symbolic; }   /* 모든 위젯 아이콘을 단색 라인으로 */

즉 테마 자체를 새로 그린 게 아니라, GIMP가 이미 가진 다크 테마를 "켜라"고 지정하는 얇은 파일이다. (흥미롭게도 이 파일 상단 주석에는 제작자의 실제 경로 /home/diolinux/.var/app/org.gimp.GIMP/...가 남아 있어, 이 설정들이 플랫팩(Flatpak) GIMP에서 실제로 추출된 것임을 보여 준다.)

계층 3 — 리눅스 바탕화면 통합 (freedesktop 규격)

PhotoGIMP은 리눅스에서 앱 이름·아이콘까지 "PhotoGIMP"으로 보이게 한다. 이건 freedesktop.org 표준을 따르는 두 부분으로 이뤄진다.

.desktop 파일org.gimp.GIMP.desktop — 앱 런처 정의(INI 형식). Name=PhotoGIMP로 표시 이름을 바꾸고, 아이콘·실행 명령·연결 파일형식(MimeType)을 지정. 실행 줄은 플랫팩 전용(flatpak run ... org.gimp.GIMP).
hicolor 아이콘.local/share/icons/hicolor/ 아래 16·32·48·64·128·256·512px 아이콘 세트. 리눅스 아이콘 테마 규격(hicolor)에 맞춰 크기별 PNG를 배치.
핵심 용어
.desktop 파일 · freedesktop 규격
리눅스에서 앱 아이콘을 메뉴·독에 등록하는 표준 텍스트 파일. [Desktop Entry] 아래 Name(표시 이름)·Icon·Exec(실행 명령)·Categories 등을 INI 형식으로 적는다. freedesktop.org가 정한 규격이라 GNOME·KDE 등 대부분의 리눅스 데스크톱이 공유한다. PhotoGIMP은 GIMP의 순정 .desktop을 복사해 이름만 PhotoGIMP으로, 아이콘만 커스텀으로 바꾼 것.

계층 4 — 이미지 리소스 & 도구 옵션 스냅샷

나머지는 순수 데이터 파일이다. splashes/의 커스텀 스플래시 화면 PNG(GIMP 실행 시 뜨는 시작 이미지), tool-options/도구별 기본 옵션 19개(브러시 크기·경도 등 "포토샵스러운 기본값"), filters/의 필터 프리셋, plug-in-settings/의 내보내기 대화상자 기본값(PNG/JPEG 저장 옵션) 등이다.

비유 — "인테리어 시공"이 아니라 "가구 배치도 + 소품 세트"

집(=GIMP)을 새로 짓는 게 아니다. PhotoGIMP은 "소파는 왼쪽, TV는 오른쪽, 조명은 어둡게"라고 적은 배치도(.rc 설정)와, 현관에 걸 그림(스플래시)·문패(.desktop·아이콘)를 담은 "이사 세트"다. 집 구조(GIMP 엔진)는 그대로 두고, 가구 위치와 소품만 포토샵 취향으로 바꾼다. 그래서 코드가 필요 없고, 마음에 안 들면 세트만 치우면 원상복구된다.

4아키텍처 심화 분석

GIMP가 설정을 읽는 원리 · 패치가 덮어쓰는 방식 · 단축키 형식 · 도구 배치 · 단일 창 레이아웃

PhotoGIMP에는 "실행 흐름"이랄 게 없다(코드가 없으니까). 대신 이해해야 할 것은 "GIMP가 켜질 때 이 설정 파일들을 어떻게 읽어서 화면에 반영하는가"다. 이게 이 프로젝트의 진짜 아키텍처다.

4-1. 큰 그림 — GIMP의 "설정 덮어쓰기" 메커니즘

GIMP는 시작할 때 두 곳의 설정을 읽는다. ① 시스템 전역 설정(/app/etc/gimp/3.0/ 등, 프로그램에 내장), ② 사용자 개인 설정(~/.config/GIMP/3.0/). 개인 설정이 전역 설정을 덮어쓴다(override). PhotoGIMP은 바로 이 ②번 폴더에 자기 파일을 넣어, 순정 기본값을 포토샵 값으로 밀어내는 것이다.

┌────────────────────────────────────────────────────────────────┐ │ GIMP 3.0 시작 시퀀스 (설정 로딩 관점) │ │ │ │ ① 프로그램 내장 "시스템 전역 설정" 로드 │ │ /app/etc/gimp/3.0/gimprc 등 (순정 기본값) │ │ │ │ │ ② 사용자 개인 설정 폴더를 읽어 덮어쓰기(override) │ │ ~/.config/GIMP/3.0/ │ │ ├─ gimprc → 환경설정(취소횟수·DPI·캔버스) │ │ ├─ shortcutsrc → 키보드 단축키 (포토샵식) ★ │ │ ├─ toolrc → 도구 상자 순서·묶음 ★ │ │ ├─ sessionrc → 창·독 레이아웃(단일창) │ │ ├─ contextrc → 시작 도구·브러시·색 │ │ ├─ theme.css → 다크 테마 + 심볼릭 아이콘 │ │ ├─ tool-options/ → 도구별 기본 옵션 19개 │ │ └─ splashes/ → 시작 스플래시 이미지 │ │ │ │ │ ③ ~/.local/share/ 의 데스크톱 통합 로드(리눅스) │ │ ├─ applications/…desktop → 앱 이름 "PhotoGIMP" │ │ └─ icons/hicolor/… → 커스텀 앱 아이콘 │ │ │ │ │ ④ 최종 화면 = 순정 GIMP 엔진 + 포토샵 설정 = "PhotoGIMP" │ └────────────────────────────────────────────────────────────────┘

정리하면 "GIMP 엔진은 그대로, 설정 레이어만 포토샵으로 교체"다. 이 구조 덕분에 GIMP가 업데이트돼도(엔진 개선) 설정은 유지되고, 반대로 설정이 마음에 안 들면 설정만 지우면 된다 — 엔진과 설정의 느슨한 결합(loose coupling).

4-2. 단축키 파일 뜯어보기 (shortcutsrc, 1137줄의 핵심)

이 프로젝트의 대표 기능이다. 포토샵 사용자의 손이 기억하는 단축키(V=이동, B=브러시, Ctrl+J=레이어 복제)를 GIMP 액션에 그대로 연결한다. 형식은 (action "액션이름" "단축키")다.

# shortcutsrc — 실제 형식 (verbatim)
(file-version 1)

# ACTIVE  ← 활성 단축키 블록
(action "tools-move" "v")                # V = 이동 도구
(action "tools-paintbrush" "b")          # B = 브러시
(action "tools-eraser" "e")             # E = 지우개
(action "tools-crop" "c")               # C = 자르기
(action "quick-mask-toggle" "q")        # Q = 퀵마스크
(action "layers-duplicate" "<Primary>j") # Ctrl+J = 레이어 복제
(action "tools-unified-transform" "<Primary>t") # Ctrl+T = 자유 변형
(action "select-none" "<Primary>d")   # Ctrl+D = 선택 해제
(action "edit-fill-fg" "<Alt>BackSpace") # Alt+Backspace = 전경색 채우기
(action "tools-cage")                    # 키 생략 = GIMP 기본 단축키 "해제"
핵심 용어
GTK 액셀러레이터 표기 — <Primary>·<Shift>·<Alt>
단축키의 수정자(modifier) 키를 GIMP(GTK)는 꺾쇠 토큰으로 적는다. Ctrl은 <Control>이 아니라 <Primary>로 쓴다(macOS에선 자동으로 ⌘로 매핑되게 하려는 것). Shift는 <Shift>, Alt는 <Alt>. 여러 개는 붙여서 쓴다 — <Primary><Alt>c = Ctrl+Alt+C. 특수 키는 기호가 아니라 X keysym 이름으로: BackSpace, bracketleft([), braceright(}). 단일 문자는 그냥 "v"처럼 적는다.
두 가지 "빈 값"의 차이 — 헷갈리기 쉬움

키를 생략한 활성 줄 (action "tools-cage")은 "이 액션은 살아 있되 단축키를 비워라" — 즉 GIMP 기본 단축키를 일부러 제거하는 것(포토샵엔 없는 키를 치웠다). 반면 주석 처리된 줄 # (action "file-export")# INACTIVE 블록에 있는 참고용 비활성 항목이다. 실제로 57개 활성 (action 줄 아래, 1070개의 주석 처리된 기본 액션이 "필요하면 켜서 커스터마이징하라"고 카탈로그처럼 남아 있다.

포토샵 단축키 매핑 (실제 적용된 대표 키)

PhotoGIMP 액션포토샵에서
Vtools-move이동
M / Shift+M사각 선택 / 타원 선택선택 윤곽
Ltools-free-select올가미
Wtools-fuzzy-select자동 선택(마술봉)
B / Shift+B브러시 / 연필브러시
Etools-eraser지우개
Stools-clone복제 도장
Jtools-heal스팟 복구 브러시
Ctools-crop자르기
Icolor-picker스포이드
Ttools-text문자
Ptools-path
Ztools-zoom돋보기
Qquick-mask-toggle퀵마스크
[ / ]브러시 크기 -/+브러시 크기
Ctrl+Jlayers-duplicate레이어 복제
Ctrl+Tunified-transform자유 변형
Ctrl+Alt+Cimage-resize캔버스 크기
Ctrl+Alt+Iimage-scale이미지 크기
Ctrl+0zoom-fit-in화면 맞춤

4-3. 도구 상자 재배치 (toolrc)

포토샵은 도구를 특정 순서·묶음으로 세로 배열한다. toolrc는 GIMP 도구 상자를 12개 그룹, 45개 도구로 포토샵식으로 재편성한다. 형식은 GimpToolGroup(묶음) 안에 GimpToolInfo(개별 도구)가 중첩되는 S-표현식이다.

# toolrc — 도구 그룹 구조 (verbatim, 앞부분)
(GimpToolGroup "tool group"
    (visible yes)
    (active-tool "gimp-move-tool")      # 이 그룹에서 기본 노출 도구
    (children
        (GimpToolInfo "gimp-move-tool"
            (icon-name "gimp-tool-move")
            (visible yes))
        (GimpToolInfo "gimp-align-tool"      # 같은 칸에 겹쳐지는 도구
            (icon-name "gimp-tool-align")
            (visible yes))))

핵심 관찰: 포토샵처럼 비슷한 도구를 한 칸에 겹쳐(그룹) 두고, 그룹의 대표 도구를 active-tool로 지정한다. 이렇게 이동+정렬, 사각+타원 선택처럼 기능이 유사한 도구를 묶어 도구 상자를 짧고 포토샵스럽게 만든다.

4-4. 단일 창 다크 레이아웃 (sessionrc + gimprc)

GIMP 3.0은 기본이 단일 창 모드다. sessionrc는 그 창 안에서 툴박스를 왼쪽, 도킹 패널(도구옵션·레이어·채널·경로)을 오른쪽에 고정해 포토샵 레이아웃을 만든다. gimprc는 캔버스를 최대한 넓게 쓰도록 튜닝한다.

# gimprc — 포토샵식 "넓은 캔버스" 튜닝 (verbatim 발췌)
(config-version "3.0.0")
(undo-levels 8)                    # 실행 취소 8단계
(layer-preview-size extra-large)   # 레이어 미리보기 크게
(thumbnail-size large)
(monitor-xresolution 140)          # DPI 지정(선명한 표시)
(monitor-yresolution 140)
(default-view
    (show-menubar yes)
    (show-rulers yes)
    (show-layer-boundary no))      # 레이어 경계선 숨김(포토샵처럼 깔끔)

즉 눈에 거슬리는 보조선(레이어·캔버스 경계, 그리드)을 끄고, 미리보기·DPI를 키워 "편집에 집중되는 넓고 어두운 화면"을 만든다. 이 모든 게 코드가 아니라 설정 값 몇 줄로 이뤄진다는 게 핵심이다.

5디렉토리 · 파일 구조 해부

저장소 54개 파일 = "GIMP 설정 폴더의 스냅샷" + 아이콘/문서. 실행 코드는 0개

PhotoGIMP의 저장소 구조는 곧 "GIMP 설정 폴더를 그대로 옮겨 담은 것"이다. 즉 저장소를 통째로 홈 폴더(~)에 풀면, 각 파일이 GIMP가 기대하는 위치(~/.config/GIMP/3.0/, ~/.local/share/)에 정확히 떨어지도록 설계돼 있다.

PhotoGIMP/ ├── README.md 설명서(영문) + 설치법 + FAQ ├── LICENSE GNU GPL v3.0 전문 ├── .editorconfig / .gitignore 편집기 규약 / 무시 목록 ├── docs/ README 번역 9개 언어 │ └── README_ko.md 外 (es·he·it·pl·pt·ru·ua·zh) ★ 한국어 포함 ├── screenshots/ 앱 스크린샷(1920×1080) ├── .config/GIMP/3.0/ ★★ 실제 GIMP 설정 패치 본체 │ ├── gimprc 환경설정 (86줄) │ ├── shortcutsrc 포토샵 단축키 (1137줄) ★ │ ├── toolrc 도구 상자 배치 (189줄) │ ├── sessionrc 창·독 레이아웃 (108줄) │ ├── contextrc 시작 도구·브러시·색 (14줄) │ ├── theme.css 다크 테마 + 심볼릭 아이콘 (16줄) │ ├── splashes/ 커스텀 스플래시 PNG │ ├── filters/ 필터 프리셋(.settings) │ ├── plug-in-settings/ 내보내기 대화상자 기본값 (.last ×5) │ └── tool-options/ 도구별 기본 옵션 (×19) └── .local/share/ ★ 리눅스 데스크톱 통합 ├── applications/…GIMP.desktop 앱 이름 "PhotoGIMP" 런처 └── icons/hicolor/… 크기별 앱 아이콘 (16~512px)
경로역할
.config/GIMP/3.0/*.rc설정 본체. 단축키·도구·창·환경설정. 홈에 풀면 GIMP 개인 설정 폴더로 정확히 들어감(§4).
tool-options/ (19개)브러시·지우개·자르기 등 도구별 기본 옵션 스냅샷. 예: 페인트브러시 경도 0.5·크기 52. 포토샵스러운 기본값 세팅.
.local/share/…desktop · icons/리눅스에서 앱 이름·아이콘을 PhotoGIMP으로. freedesktop 규격(§3 계층3).
docs/ (9개 언어)README 번역. 한국어 README_ko.md 포함 — 커뮤니티 다국어 기여의 흔적.
LICENSEGNU GPL v3.0 — 강한 카피레프트. 자유롭게 쓰고 배포하되 파생물도 같은 라이선스로 공개.
소스 정독으로 발견한 함정 · README ≠ 실제 파일
README의 "패치 구성" 표는 정확한 목록이 아니다

README의 "What's Inside" 표는 dockrc·templaterc포함한다고 적어 두었지만, 저장소에는 그 두 파일이 없다. 반대로 실제로 있는 tool-options/·filters/·plug-in-settings/ 폴더는 표에서 빠져 있다. 즉 README 표는 개략적 설명이지 정확한 파일 매니페스트가 아니다. 문서만 믿지 말고 실제 폴더를 봐야 한다는 좋은 교훈. (이 문서의 수치는 전부 클론한 최신 소스 기준이다.)

핵심 관찰
"저장소 구조 = 배포 대상 폴더 구조"라는 설계
PhotoGIMP은 저장소 트리 자체가 사용자의 홈 폴더에 그대로 겹쳐지도록 만들어졌다. .config/·.local/이라는 리눅스 홈의 실제 경로를 저장소 안에 그대로 재현해 둔 것. 그래서 "압축을 홈에 풀기"만으로 설치가 끝난다. 설치 스크립트가 필요 없도록 구조로 해결한 영리한 설계 — dotfiles(개인 설정 저장소) 관리에서 흔히 쓰는 패턴이다.

6학습 포인트

이 저장소에서 진짜 배울 것 — "코드 없이 소프트웨어를 바꾸는 법"과 데스크톱 앱의 설정 계층

PhotoGIMP은 "포토샵 흉내"라는 겉모습 너머, 데스크톱 애플리케이션이 설정으로 어떻게 커스터마이징되는지를 통째로 보여 주는 살아 있는 교재다. 프로그래밍 경험이 적어도 접근할 수 있는 학습 소재라는 점이 특히 좋다.

배울 것 1 — "소프트웨어 = 설정"이라는 사고방식

가장 큰 교훈. 프로그램의 동작을 바꾸는 데 반드시 코드가 필요한 건 아니다. 잘 설계된 앱은 동작을 데이터(설정)로 외부화해 두고, 사용자가 그 데이터만 바꿔도 크게 달라진다. PhotoGIMP은 이 "설정 주도 커스터마이징(config-driven customization)"의 극단적 사례 — 실행 코드 0줄로 앱의 인상을 완전히 바꾼다.

배울 것 2 — GIMP의 설정 시스템 & S-표현식

gimprc·shortcutsrc·toolrc를 읽으며 S-표현식 설정 DSL을 익힐 수 있다. (키 값)·중첩 괄호·주석(#) 같은 문법은 Lisp/Scheme 계열 어디서나 통한다. 앱이 단축키·도구·레이아웃을 어떤 데이터 구조로 저장하는지 실물로 보는 경험은 다른 앱을 커스터마이징할 때도 그대로 응용된다.

배울 것 3 — 리눅스 데스크톱 통합 (freedesktop)

.desktop 파일과 hicolor 아이콘 테마는 리눅스에서 앱이 메뉴·독에 등록되는 표준 방식이다. PhotoGIMP의 org.gimp.GIMP.desktop을 뜯어보면 Name·Exec·Icon·MimeType·Categories·StartupWMClass가 무엇을 하는지 배운다. 리눅스 앱 패키징의 기초를 손에 잡히게 익힐 수 있다.

배울 것 4 — GTK CSS 테마

theme.css는 짧지만, GTK 앱을 CSS로 꾸민다는 사실을 알려 준다. @import로 테마를 로드하고 -gtk-icon-style: symbolic 같은 GTK 전용 속성을 쓰는 걸 보면, 웹 CSS 지식이 데스크톱 UI에도 이어짐을 체감한다.

배울 것 5 — 키보드 단축키 설계 & 근육 기억

포토샵 단축키를 GIMP 액션에 매핑한 shortcutsrc"UX에서 근육 기억이 얼마나 중요한가"를 보여 준다. 기능이 같아도 키 배치가 다르면 사람은 헤맨다. 단축키를 재설계해 "이주 비용"을 줄이는 접근은 어떤 도구를 만들든 참고할 UX 원칙이다.

배울 것 6 — dotfiles & "저장소=배포 폴더" 패턴

저장소 트리를 사용자 홈에 그대로 겹쳐 설치하는 방식은 개발자들이 dotfiles(개인 설정 파일 모음)를 Git으로 관리·배포하는 관습과 똑같다. PhotoGIMP을 보고 나면 "내 설정도 이렇게 저장소로 관리해 여러 컴퓨터에 뿌릴 수 있겠다"는 실용 아이디어로 이어진다.

실습 아이디어 (가볍게)
"내 단축키 한 개 바꿔 보기" 10분 체험

GIMP 3.0을 깔고 PhotoGIMP을 적용한 뒤, ~/.config/GIMP/3.0/shortcutsrc를 텍스트 편집기로 열어 (action "tools-zoom" "z")"z"를 다른 키로 바꿔 저장하고 GIMP를 재시작해 보라. 코드 없이 설정 한 줄로 앱 동작이 바뀌는 경험이 §4의 모든 내용을 손끝으로 이해시켜 준다.

7시스템 · 설치 요구사항

"GIMP 3.0 + 파일 복사"면 끝 — 단, 2.10에서는 절대 안 됨

요구사항이 아주 가볍다. GIMP 3.0 이상만 있으면 되고, 별도 프로그램·서버·빌드가 없다. 다만 버전과 설치 순서에 함정이 있다.

항목요구
GIMP 버전GIMP 3.0 이상 필수. 2.10 이하는 설정 형식이 달라(menurc vs shortcutsrc) 호환 불가. README FAQ가 "2.10에서 쓸 수 있나? 아니오"라고 못 박음.
운영체제Windows · macOS · Linux 모두. 설정 폴더 경로만 OS별로 다름(아래).
추가 프로그램없음. 컴파일·의존성 설치 불필요. 그냥 파일 복사.
사전 준비GIMP를 먼저 설치하고 한 번 실행했다 종료 — 그래야 GIMP가 설정 폴더를 생성한다. 그 뒤 PhotoGIMP으로 덮어쓴다.

OS별 설정 폴더 경로

OSPhotoGIMP을 넣을 위치
Linux압축을 홈(~)에 풀면 ~/.config/GIMP/3.0/ + ~/.local/로 자동 배치
Windows3.0 폴더를 %APPDATA%\GIMP\ 안에 붙여넣기
macOS3.0 폴더를 ~/Library/Application Support/GIMP/ 안에 붙여넣기

설치 · 제거 흐름

[설치] 1) GIMP 3.0 설치 2) GIMP 한 번 실행 → 종료 (설정 폴더 ~/.config/GIMP/3.0/ 생성됨) 3) PhotoGIMP 릴리스 zip 다운로드 후 압축 해제 4) 위 OS별 경로에 복사 → 기존 설정 덮어쓰기 5) GIMP 재실행 → 포토샵 단축키·도구·다크 테마 적용됨 [제거 = 원상복구] · ~/.config/GIMP/3.0 폴더 삭제 (또는 3.0 폴더 제거) · GIMP 재실행 → 순정 기본 설정이 자동 재생성됨
주의 · 되돌리기 전 백업
덮어쓰기 전, 기존 설정을 백업하면 안전

PhotoGIMP 설치는 GIMP 개인 설정을 덮어쓴다. 이미 자기만의 단축키·도구 배치를 커스터마이징해 뒀다면 그게 사라질 수 있으니, 덮어쓰기 전에 3.0 폴더를 3.0.bak으로 복사해 두는 습관이 좋다. 저장소에 설치 스크립트가 없어 파일 복사를 직접 하는 만큼, 실수로 엉뚱한 폴더에 넣지 않도록 경로를 확인하자.

8직접 해볼 수 있는 실습 과제

읽기만 하면 안 남는다 — "설정으로 앱을 바꾸는" 기술을 내 손으로 재현하는 과제 5개
난이도 ★☆☆ · 입문

1. PhotoGIMP 설치하고 단축키 하나 바꾸기

GIMP 3.0에 PhotoGIMP을 적용한 뒤, shortcutsrc에서 (action "tools-zoom" "z")의 키를 바꿔 저장·재시작해 본다. 코드 없이 설정 한 줄로 동작이 바뀌는 §4-2의 원리를 체감. 나아가 (action "tools-heal" "j")의 액션 이름을 GIMP 메뉴에서 찾아 매칭해 보라.

난이도 ★☆☆ · 입문

2. 내 GTK 테마 색 바꾸기

~/.config/GIMP/3.0/에 개인 gimp.css를 만들어 특정 위젯 색을 바꿔 본다(예: 툴바 배경). §3 계층2에서 본 GTK CSS 테마를 직접 만지며, 웹 CSS 지식이 데스크톱 앱에도 통함을 확인.

난이도 ★★☆ · 중급

3. 나만의 .desktop 런처 만들기

리눅스에서 아무 앱(예: 스크립트)에 대해 [Desktop Entry]Name·Exec·Icon·Categories를 채운 .desktop 파일을 ~/.local/share/applications/에 넣어 메뉴에 등록해 본다. PhotoGIMP이 앱 이름을 바꾼 §3 계층3의 freedesktop 통합을 재현.

난이도 ★★☆ · 중급

4. hicolor 아이콘 세트 만들어 앱 아이콘 교체

한 장의 PNG를 16·32·48·128·256px로 리사이즈해 ~/.local/share/icons/hicolor/<크기>/apps/ 규격에 맞춰 배치하고, gtk-update-icon-cache로 갱신해 앱 아이콘을 바꿔 본다. PhotoGIMP의 아이콘 세트 구조를 손으로 익힌다.

난이도 ★★★ · 심화

5. 내 설정을 dotfiles 저장소로 관리하기

PhotoGIMP처럼 "저장소 트리 = 홈 폴더 구조" 방식으로 자신의 앱 설정들(.config/…)을 Git 저장소에 모아 본다. stow나 심볼릭 링크로 여러 PC에 배포하는 것까지 해 보면, §5의 dotfiles 배포 패턴을 실전화할 수 있다.

9관련 기술 심화 학습 로드맵

"앱 커스터마이징 사용자 → 리눅스 데스크톱/설정 관리 엔지니어"까지, 4주 코스
주차목표 · 학습 내용
1주차
GIMP & 설정 형식
GIMP 3.0 UI, .rc 설정 파일들(gimprc·shortcutsrc·toolrc)과 S-표현식 문법. GIMP 2.10→3.0의 menurcshortcutsrc 변화. → 과제 1.
2주차
GTK & 테마 CSS
GTK 툴킷 개념, GTK CSS로 위젯 꾸미기, -gtk-icon-style 등 GTK 전용 속성, 다크/심볼릭 테마. → 과제 2.
3주차
freedesktop 통합
.desktop Entry 규격, MimeType 연결, hicolor 아이콘 테마, StartupWMClass, 아이콘 캐시. → 과제 3·4.
4주차
설정 관리·배포
dotfiles 관리(Git·GNU stow·심볼릭 링크), "저장소=배포 폴더" 패턴, 여러 머신 동기화, 백업/복구 전략. → 과제 5.
학습 순서 팁

PhotoGIMP은 "쓰기는 복사 한 번, 이해는 여러 겹"인 프로젝트다. 먼저 "앱의 동작은 상당 부분 설정 파일에 들어 있다"는 큰 그림을 잡고, GIMP 설정 → GTK 테마 → 리눅스 데스크톱 통합 → 설정 배포 순으로 파는 게 정석이다. 1137줄짜리 shortcutsrc를 통독하려 하지 말고, (action "tools-move" "v") 한 줄이 GIMP 어디에 반영되는지부터 확인하면 전체가 술술 풀린다.

10핵심 키워드 사전

이 문서에 나온 용어를 한 번에 — 데스크톱 앱 설정·리눅스 커스터마이징에서 계속 마주칠 단어들
용어
PhotoGIMPGIMP 3.0을 포토샵처럼 보이고 조작되게 만드는 설정 덮어쓰기 패치. 실행 코드 없음.
GIMP무료·오픈소스 래스터 이미지 편집기(포토샵 대안). 2025년 3.0 대개편.
설정 파일 (.rc)앱 동작을 담은 텍스트 파일. GIMP는 ~/.config/GIMP/3.0/에서 읽어 단축키·도구·창을 정한다.
S-표현식(키 값)·중첩 괄호로 데이터를 적는 Lisp/Scheme식 형식. GIMP 설정 DSL이 이걸 씀.
DSL도메인 특화 언어. 특정 목적(여기선 GIMP 설정)을 위한 전용 표기법(범용 언어 아님).
shortcutsrc / menurcGIMP 단축키 저장 파일. 3.0은 shortcutsrc, 2.10은 menurc — 형식이 달라 서로 호환 안 됨.
<Primary> / <Shift> / <Alt>GTK 단축키 수정자 표기. <Primary>=Ctrl(맥에선 ⌘). 여러 개는 붙여 씀(<Primary><Alt>c).
GTKGIMP·GNOME이 쓰는 리눅스 UI 툴킷. 위젯 외형을 CSS로 꾸밈.
.desktop 파일리눅스 앱 런처 정의(INI). Name·Exec·Icon 등으로 메뉴·독에 앱 등록. freedesktop 규격.
hicolor 아이콘 테마리눅스 표준 아이콘 디렉토리 규격. 크기별(16~512px) PNG를 정해진 경로에 배치.
Flatpak리눅스용 샌드박스 앱 패키징. PhotoGIMP .desktop의 실행 줄과 설정 경로가 플랫팩 GIMP 기준.
dotfiles.config 같은 개인 설정 파일 모음. Git으로 관리·여러 PC에 배포하는 관습.
GPL-3.0강한 카피레프트 라이선스. 자유 사용·배포 가능하되 파생물도 소스 공개 의무.

11참고 링크

공식 소스부터 학습 자료까지
구분링크
GitHubgithub.com/Diolinux/PhotoGIMP — 이 저장소(설정 패치·문서·아이콘)
릴리스github.com/Diolinux/PhotoGIMP/releases — 설치용 zip 다운로드(PhotoGIMP-linux.zip 등)
한국어 READMEgithub.com/Diolinux/PhotoGIMP/blob/master/docs/README_ko.md — 저장소 내 한국어 설명서
GIMP 공식gimp.org — GIMP 3.0 다운로드·문서(먼저 설치해야 함)
GIMP 3.0 릴리스 노트gimp.org/release-notes/gimp-3.0.html — 단일 창·설정 형식 변경 등 개편 내용
freedesktop 규격Desktop Entry Specification · Icon Theme Specification — .desktop·hicolor 표준 근거
Diolinux브라질 리눅스 유튜브 채널 — PhotoGIMP을 이끄는 커뮤니티(스플래시: Adriel Filipe Design)