설치¶
Photini 설치는 두 부분으로 이루어집니다. 먼저 Python을 설치한 다음 Python을 사용하여 Photini를 설치하고 실행합니다.
Python 설치¶
Python 은 Photini를 실행하는 데 절대적으로 필요합니다. 이미 많은 컴퓨터에 설치되어 있지만 Windows에서는 직접 설치해야 합니다.
Python이 이미 설치되어 있어야 하지만 Python 3이 있는지 확인하십시오. 터미널 창을 열고 python3
명령을 실행합니다:
jim@mint:~$ python3 -V
Python 3.8.10
명령은 python3``입니다. 여전히 많은 컴퓨터에서 ``python
명령은 Python 2을 실행합니다. Python이 없는 경우 3을 설치한 다음 운영 체제의 패키지 관리자를 사용하여 설치합니다.
설치된 pip 버전도 확인해야 합니다:
jim@mint:~$ pip --version
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)
대부분의 리눅스 시스템은 pip의 일반 버전 검사를 금지하지만, 나는 pip를 업그레이드하는 것을 추천합니다:
jim@mint:~$ python3 -m pip install -U pip
Collecting pip
Downloading pip-22.0.3-py3-none-any.whl (2.1 MB)
|████████████████████████████████| 2.1 MB 185 kB/s
Installing collected packages: pip
Successfully installed pip-22.0.3
Installing collected packages: pip
WARNING: The scripts pip, pip3 and pip3.8 are installed in '/home/jim/.local/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed pip-22.0.3
일반 사용자는 /usr
에 쓸 수 없기 때문에 pip는 /home/jim/.local
에 새 버전을 설치했습니다. PATH 설정을 업데이트하려면 로그아웃한 다음 다시 로그인해야 할 수 있습니다.
pip --version
을 다시 실행하면 새 버전이 표시됩니다.:
jim@mint:~$ pip --version
pip 22.0.3 from /home/jim/.local/lib/python3.8/site-packages/pip (python 3.8)
시작하기 전에 Using Python on Windows 을 읽는 것이 좋습니다. https://www.python.org/downloads/windows/ 로 이동하여 적절한 Python 3 설치 프로그램을 고릅니다. 사용 중인 Windows 버전에서 실행될 가장 높은 버전 번호의 64비트 안정된 릴리스를 사용하십시오. 그러나 일부 종속성이 최신 Python에서 작동하도록 업데이트되지 않았을 수 있으므로 최신의 릴리스를 사용하는 것에 주의하십시오.
Python 설치 프로그램을 실행할 때 《PATH에 Python 추가》 옵션을 선택했는지 확인하십시오. 설치를 사용자 정의하는 경우 여전히 《pip》를 선택해야 합니다. 다른 사용자가 Photini를 실행할 수 있게 하려면 모든 사용자에 대해 Python을 설치해야 합니다(사용자 지정 설치의 《고급 옵션》 부분에서).
Python을 설치한 후 cmd.exe
와 같은 명령 창을 시작합니다. 이제 pip 를 실행해 보십시오:
C:\Users\Jim>pip list
Package Version
---------- -------
pip 21.1.1
setuptools 56.0.0
WARNING: You are using pip version 21.1.1; however, version 22.0.4 is available.
You should consider upgrading via the 'c:\users\jim\appdata\local\programs\python\python38\python.exe -m pip install --upgrade pip' command.
제안드린대로 지금 pip를 업그레이드해야 합니다. (모든 사용자를 위해 Python을 설치했다면 관리자 권한으로 셸을 실행해야 합니다.) 업그레이드할 때 pip
는 python -m pip
로 실행해야 합니다:
C:\Users\Jim>python -m pip install -U pip
Requirement already satisfied: pip in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (21.1.1)
Collecting pip
Downloading pip-22.0.4-py3-none-any.whl (2.1 MB)
|████████████████████████████████| 2.1 MB 113 kB/s
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 21.1.1
Uninstalling pip-21.1.1:
Successfully uninstalled pip-21.1.1
Successfully installed pip-22.0.4
Photini 설치¶
Photini를 설치하기 전에 한 명의 사용자를 위해 설치할지 아니면 여러 명의 사용자를 위해 설치할지 결정해야 합니다. 다중 사용자 설치는 Python virtual environment 을 사용하여 쉽게 공유할 수 있는 자체 포함 설치를 만듭니다. 가상 환경을 사용하면 쉬운 제거와 같은 다른 장점이 있으므로 단일 사용자 설치에도 가상 환경을 사용할 수 있습니다.
Linux 및 MacOS 사용자는 pip 또는 운영 체제의 패키지 관리자를 사용하여 Photini의 종속성을 설치할지 여부를 결정해야 합니다. 각각의 장점과 단점에 대한 좋은 소개를 보려면 Managing Python packages the right way 를 읽는 것이 좋습니다. Photini의 모든 종속성은 pip 로 설치할 수 있지만 다른 Qt 기반 응용 프로그램과 동일한 GUI 스타일을 얻을 수 있도록 패키지 관리자와 함께 PySide6 또는 PySide2 또는 PyQt5(둘 중 사용 가능한 것)를 설치하는 것이 좋습니다.
가상 환경¶
가상 환경을 사용하는 경우 지금 설정해야 합니다. 나는 photini
라는 이름을 사용하고 그것을 내 홈 디렉토리에 만듭니다:
jim@mint:~$ python3 -m venv photini
jim@mint:~$ source photini/bin/activate
C:\Users\Jim>python -m venv photini
C:\Users\Jim>photini\Scripts\activate.bat
Photini를 설치하고 테스트하는 동안 이 가상 환경에 있어야 합니다.
최소 설치¶
Photini와 필수 종속성 세트는 모두 pip 로 설치할 수 있습니다:
jim@mint:~$ pip3 install photini exiv2 pyside2
Collecting photini
Downloading Photini-2022.3.2-py3-none-any.whl (303 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 303.3/303.3 KB 453.8 kB/s eta 0:00:00
Collecting exiv2
Downloading exiv2-0.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.0/8.0 MB 646.1 kB/s eta 0:00:00
Collecting pyside2
Downloading PySide2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-abi3-manylinux1_x86_64.whl (164.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 164.3/164.3 MB 559.6 kB/s eta 0:00:00
Collecting requests>=2.4.0
Downloading requests-2.27.1-py2.py3-none-any.whl (63 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 63.1/63.1 KB 255.3 kB/s eta 0:00:00
Collecting cachetools>=3.0
Downloading cachetools-5.0.0-py3-none-any.whl (9.1 kB)
Collecting appdirs>=1.3
Downloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting shiboken2==5.15.2.1
Downloading shiboken2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-abi3-manylinux1_x86_64.whl (975 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 975.4/975.4 KB 603.7 kB/s eta 0:00:00
Collecting charset-normalizer~=2.0.0
Downloading charset_normalizer-2.0.12-py3-none-any.whl (39 kB)
Collecting idna<4,>=2.5
Downloading idna-3.3-py3-none-any.whl (61 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.2/61.2 KB 290.0 kB/s eta 0:00:00
Collecting urllib3<1.27,>=1.21.1
Downloading urllib3-1.26.9-py2.py3-none-any.whl (138 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 139.0/139.0 KB 419.8 kB/s eta 0:00:00
Collecting certifi>=2017.4.17
Downloading certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 149.2/149.2 KB 432.8 kB/s eta 0:00:00
Installing collected packages: exiv2, certifi, appdirs, urllib3, shiboken2, idna, charset-normalizer, cachetools, requests, pyside2, photini
Successfully installed appdirs-1.4.4 cachetools-5.0.0 certifi-2021.10.8 charset-normalizer-2.0.12 exiv2-0.11.0 idna-3.3 photini-2022.3.2 pyside2-5.15.2.1 requests-2.27.1 shiboken2-5.15.2.1 urllib3-1.26.9
C:\Users\Jim>pip install photini exiv2 pyside2
Collecting photini
Downloading Photini-2022.3.2-py3-none-any.whl (303 kB)
------------------------------------ 303.3/303.3 KB 469.0 kB/s eta 0:00:00
Collecting exiv2
Downloading exiv2-0.11.0-cp38-cp38-win_amd64.whl (1.7 MB)
---------------------------------------- 1.7/1.7 MB 615.1 kB/s eta 0:00:00
Collecting pyside2
Downloading PySide2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-none-win_amd64.whl (137.4 MB)
------------------------------------ 137.4/137.4 MB 539.3 kB/s eta 0:00:00
Collecting appdirs>=1.3
Downloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)
Collecting cachetools>=3.0
Downloading cachetools-5.0.0-py3-none-any.whl (9.1 kB)
Collecting requests>=2.4.0
Downloading requests-2.27.1-py2.py3-none-any.whl (63 kB)
-------------------------------------- 63.1/63.1 KB 211.6 kB/s eta 0:00:00
Collecting shiboken2==5.15.2.1
Downloading shiboken2-5.15.2.1-5.15.2-cp35.cp36.cp37.cp38.cp39.cp310-none-win_amd64.whl (2.3 MB)
---------------------------------------- 2.3/2.3 MB 601.3 kB/s eta 0:00:00
Collecting charset-normalizer~=2.0.0
Downloading charset_normalizer-2.0.12-py3-none-any.whl (39 kB)
Collecting certifi>=2017.4.17
Downloading certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
------------------------------------ 149.2/149.2 KB 423.6 kB/s eta 0:00:00
Collecting urllib3<1.27,>=1.21.1
Downloading urllib3-1.26.9-py2.py3-none-any.whl (138 kB)
------------------------------------ 139.0/139.0 KB 411.3 kB/s eta 0:00:00
Collecting idna<4,>=2.5
Downloading idna-3.3-py3-none-any.whl (61 kB)
-------------------------------------- 61.2/61.2 KB 272.3 kB/s eta 0:00:00
Installing collected packages: exiv2, certifi, appdirs, urllib3, shiboken2, idna, charset-normalizer, cachetools, requests, pyside2, photini
Successfully installed appdirs-1.4.4 cachetools-5.0.0 certifi-2021.10.8 charset-normalizer-2.0.12 exiv2-0.11.0 idna-3.3 photini-2022.3.2 pyside2-5.15.2.1 requests-2.27.1 shiboken2-5.15.2.1 urllib3-1.26.9
버전 2022.3.0에 추가: 종속성을 개별적으로 나열하는 대신 pip3 install photini[basic]
를 사용하여 세트로 설치할 수 있습니다.
설치 테스트¶
이제 photini를 실행할 수 있습니다.
jim@mint:~$ python -m photini
ffmpeg or ffprobe not found
No module named 'enchant'
No module named 'gi'
No module named 'gpxpy'
No module named 'requests_oauthlib'
No module named 'requests_toolbelt'
No module named 'requests_oauthlib'
C:\Users\Jim>python -m photini
ffmpeg or ffprobe not found
No module named 'enchant'
No module named 'gi'
No module named 'gpxpy'
No module named 'requests_oauthlib'
No module named 'requests_toolbelt'
No module named 'requests_oauthlib'
Photini가 성공적으로 실행되어야 하지만 설치되지 않은 일부 선택적 종속성이 나열됩니다. 이는 모든 사용자가 설치할 필요가 없는 추가 기능(예: Flickr 업로더)을 제공합니다.
선택적 종속성¶
Photini의 옵션 기능에 필요한 대부분의 종속성은 pip 와 함께 설치할 수 있습니다. 대부분은 대괄호 안에 하나 이상의 《추가》로 지정됩니다.
jim@mint:~$ pip3 install photini[flickr,google,ipernity,spelling,importer]
Requirement already satisfied: photini[flickr,google,importer,ipernity,spelling] in ./photini/lib/python3.8/site-packages (2022.2.0)
Requirement already satisfied: requests>=2.4.0 in ./photini/lib/python3.8/site-packages (from photini[flickr,google,importer,ipernity,spelling]) (2.27.1)
Requirement already satisfied: appdirs>=1.3 in ./photini/lib/python3.8/site-packages (from photini[flickr,google,importer,ipernity,spelling]) (1.4.4)
Collecting requests-oauthlib>=1.0
Downloading requests_oauthlib-1.3.1-py2.py3-none-any.whl (23 kB)
Collecting keyring>=7.0
Downloading keyring-23.5.0-py3-none-any.whl (33 kB)
Collecting requests-toolbelt>=0.9
Downloading requests_toolbelt-0.9.1-py2.py3-none-any.whl (54 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.3/54.3 KB 234.8 kB/s eta 0:00:00
Collecting gphoto2>=0.10
Downloading gphoto2-2.3.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (4.9 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.9/4.9 MB 642.6 kB/s eta 0:00:00
Collecting pyenchant>=2.0
Downloading pyenchant-3.2.2-py3-none-any.whl (55 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 55.7/55.7 KB 78.3 kB/s eta 0:00:00
Collecting jeepney>=0.4.2
Downloading jeepney-0.7.1-py3-none-any.whl (54 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 54.1/54.1 KB 169.7 kB/s eta 0:00:00
Collecting SecretStorage>=3.2
Downloading SecretStorage-3.3.1-py3-none-any.whl (15 kB)
Collecting importlib-metadata>=3.6
Downloading importlib_metadata-4.11.1-py3-none-any.whl (17 kB)
Requirement already satisfied: charset-normalizer~=2.0.0 in ./photini/lib/python3.8/site-packages (from requests>=2.4.0->photini[flickr,google,importer,ipernity,spelling]) (2.0.12)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in ./photini/lib/python3.8/site-packages (from requests>=2.4.0->photini[flickr,google,importer,ipernity,spelling]) (1.26.8)
Requirement already satisfied: idna<4,>=2.5 in ./photini/lib/python3.8/site-packages (from requests>=2.4.0->photini[flickr,google,importer,ipernity,spelling]) (3.3)
Requirement already satisfied: certifi>=2017.4.17 in ./photini/lib/python3.8/site-packages (from requests>=2.4.0->photini[flickr,google,importer,ipernity,spelling]) (2021.10.8)
Collecting oauthlib>=3.0.0
Downloading oauthlib-3.2.0-py3-none-any.whl (151 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 151.5/151.5 KB 429.3 kB/s eta 0:00:00
Collecting zipp>=0.5
Downloading zipp-3.7.0-py3-none-any.whl (5.3 kB)
Collecting cryptography>=2.0
Downloading cryptography-36.0.1-cp36-abi3-manylinux_2_24_x86_64.whl (3.6 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.6/3.6 MB 633.7 kB/s eta 0:00:00
Collecting cffi>=1.12
Downloading cffi-1.15.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (446 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 446.7/446.7 KB 514.3 kB/s eta 0:00:00
Collecting pycparser
Downloading pycparser-2.21-py2.py3-none-any.whl (118 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 118.7/118.7 KB 382.6 kB/s eta 0:00:00
Installing collected packages: gphoto2, zipp, pyenchant, pycparser, oauthlib, jeepney, requests-toolbelt, requests-oauthlib, importlib-metadata, cffi, cryptography, SecretStorage, keyring
Successfully installed SecretStorage-3.3.1 cffi-1.15.0 cryptography-36.0.1 gphoto2-2.3.2 importlib-metadata-4.11.1 jeepney-0.7.1 keyring-23.5.0 oauthlib-3.2.0 pycparser-2.21 pyenchant-3.2.2 requests-oauthlib-1.3.1 requests-toolbelt-0.9.1 zipp-3.7.0
C:\Users\Jim>pip install photini[flickr,google,ipernity,spelling]
Requirement already satisfied: photini[flickr,google,ipernity,spelling] in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (2022.3.2)
Requirement already satisfied: cachetools>=3.0 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from photini[flickr,google,ipernity,spelling]) (5.0.0)
Requirement already satisfied: requests>=2.4.0 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from photini[flickr,google,ipernity,spelling]) (2.27.1)
Requirement already satisfied: appdirs>=1.3 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from photini[flickr,google,ipernity,spelling]) (1.4.4)
Collecting requests-oauthlib>=1.0
Downloading requests_oauthlib-1.3.1-py2.py3-none-any.whl (23 kB)
Collecting keyring>=7.0
Downloading keyring-23.5.0-py3-none-any.whl (33 kB)
Collecting requests-toolbelt>=0.9
Downloading requests_toolbelt-0.9.1-py2.py3-none-any.whl (54 kB)
-------------------------------------- 54.3/54.3 KB 312.6 kB/s eta 0:00:00
Collecting pyenchant>=2.0
Downloading pyenchant-3.2.2-py3-none-win_amd64.whl (11.9 MB)
-------------------------------------- 11.9/11.9 MB 642.6 kB/s eta 0:00:00
Collecting importlib-metadata>=3.6
Downloading importlib_metadata-4.11.3-py3-none-any.whl (18 kB)
Collecting pywin32-ctypes!=0.1.0,!=0.1.1
Downloading pywin32_ctypes-0.2.0-py2.py3-none-any.whl (28 kB)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from requests>=2.4.0->photini[flickr,google,ipernity,spelling]) (1.26.9)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from requests>=2.4.0->photini[flickr,google,ipernity,spelling]) (2021.10.8)
Requirement already satisfied: idna<4,>=2.5 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from requests>=2.4.0->photini[flickr,google,ipernity,spelling]) (3.3)
Requirement already satisfied: charset-normalizer~=2.0.0 in c:\users\jim\appdata\local\programs\python\python38\lib\site-packages (from requests>=2.4.0->photini[flickr,google,ipernity,spelling]) (2.0.12)
Collecting oauthlib>=3.0.0
Downloading oauthlib-3.2.0-py3-none-any.whl (151 kB)
------------------------------------ 151.5/151.5 KB 475.7 kB/s eta 0:00:00
Collecting zipp>=0.5
Downloading zipp-3.8.0-py3-none-any.whl (5.4 kB)
Installing collected packages: pywin32-ctypes, zipp, pyenchant, oauthlib, requests-toolbelt, requests-oauthlib, importlib-metadata, keyring
Successfully installed importlib-metadata-4.11.3 keyring-23.5.0 oauthlib-3.2.0 pyenchant-3.2.2 pywin32-ctypes-0.2.0 requests-oauthlib-1.3.1 requests-toolbelt-0.9.1 zipp-3.8.0
버전 2022.3.0에 추가: pip3 install photini[extras]
로 모든 추가 종속성을 한 번에 설치할 수 있습니다.
다른 선택적 종속성(Pillow, gpxpy)도 pip 와 함께 설치할 수 있지만 일부 파이썬과 운영 체제 조합에서 사용할 수 있는 것은 아닙니다.
jim@mint:~$ pip install pillow gpxpy
Collecting pillow
Downloading Pillow-9.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.3 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.3/4.3 MB 637.1 kB/s eta 0:00:00
Collecting gpxpy
Downloading gpxpy-1.5.0.tar.gz (111 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 111.6/111.6 KB 384.5 kB/s eta 0:00:00
Preparing metadata (setup.py) ... done
Using legacy 'setup.py install' for gpxpy, since package 'wheel' is not installed.
Installing collected packages: pillow, gpxpy
Running setup.py install for gpxpy ... done
Successfully installed gpxpy-1.5.0 pillow-9.0.1
C:\Users\Jim>pip install pillow gpxpy
Collecting pillow
Downloading Pillow-9.1.0-cp38-cp38-win_amd64.whl (3.3 MB)
---------------------------------------- 3.3/3.3 MB 618.0 kB/s eta 0:00:00
Collecting gpxpy
Downloading gpxpy-1.5.0.tar.gz (111 kB)
------------------------------------ 111.6/111.6 KB 405.4 kB/s eta 0:00:00
Preparing metadata (setup.py) ... done
Using legacy 'setup.py install' for gpxpy, since package 'wheel' is not installed.
Installing collected packages: pillow, gpxpy
Running setup.py install for gpxpy ... done
Successfully installed gpxpy-1.5.0 pillow-9.1.0
Photini의 철자 검사기를 사용하려면 다른 파일을 설치해야 할 수 있습니다. 플랫폼별 지침은 pyenchant documentation 를 참조하세요.
pip 로 설치할 수 없는 선택적 종속성은 FFmpeg 입니다. 이것은 비디오 파일에서 메타데이터를 읽는 데 사용됩니다. Linux 및 MacOS 사용자는 시스템 패키지 관리자를 사용하여 설치할 수 있지만 Windows에 설치하는 것은 어렵지 않습니다.
추가 사용자¶
가상 환경에 Photini를 설치했다면 다른 사용자가 전체 경로를 사용하여 photini
명령을 실행할 수 있어야 합니다. (Windows에서는 먼저 가상 환경 최상위 디렉터리를 공유해야 합니다.)
sarah@mint:~$ /home/jim/photini/bin/photini
C:\Users\Sarah>..\Jim\photini\Scripts\photini.exe
이것은 Photini를 실행하는 매우 편리한 방법이 아니므로 대부분의 사용자는 Photini를 시작/응용 프로그램 메뉴에 추가하기를 원할 것입니다.
sarah@mint:~$ /home/jim/photini/bin/photini-post-install
desktop-file-install \
--dir=/home/sarah/.local/share/applications \
--set-key=Exec \
--set-value=/home/jim/photini/bin/photini %F \
--set-key=Icon \
--set-value=/home/jim/photini/lib/python3.8/site-packages/photini/data/icons/photini_48.png \
/home/jim/photini/lib/python3.8/site-packages/photini/data/linux/photini.desktop
C:\Users\Sarah>..\Jim\photini\Scripts\photini-post-install.exe
Creating C:\Users\Sarah\AppData\Roaming\Microsoft\Windows\Start Menu\Photini
Creating C:\Users\Sarah\Desktop\Photini.lnk
Creating C:\Users\Sarah\AppData\Roaming\Microsoft\Windows\Start Menu\Photini\Photini.lnk
Creating C:\Users\Sarah\AppData\Roaming\Microsoft\Windows\Start Menu\Photini\Photini documentation.url
모든 사용자를 위한 Photini 메뉴 바로 가기를 설치하려면 루트(Linux) 또는 명령 창에서 관리자(Windows)로 실행 후 설치 명령을 실행할 수 있습니다. 설치 후 명령에 대한 전체 경로를 사용하는 것이 중요합니다.
jim@mint:~$ sudo /home/jim/photini/bin/photini-post-install
[sudo] password for jim:
desktop-file-install \
--set-key=Exec \
--set-value=/home/jim/photini/bin/photini %F \
--set-key=Icon \
--set-value=/home/jim/photini/lib/python3.8/site-packages/photini/data/icons/photini_48.png \
/home/jim/photini/lib/python3.8/site-packages/photini/data/linux/photini.desktop
C:\Windows\system32>c:\Users\Jim\photini\Scripts\photini-post-install.exe
Creating C:\ProgramData\Microsoft\Windows\Start Menu\Photini
Creating C:\Users\Public\Desktop\Photini.lnk
Creating C:\ProgramData\Microsoft\Windows\Start Menu\Photini\Photini.lnk
Creating C:\ProgramData\Microsoft\Windows\Start Menu\Photini\Photini documentation.url
Photini 제거¶
Photini를 제거하기 전에 photini-post-install
명령을 사용하여 시작/응용 프로그램 메뉴에서 제거해야 합니다.
jim@mint:~$ photini-post-install --remove
Deleting /home/jim/.local/share/applications/photini.desktop
C:\Users\Jim>photini-post-install --remove
Deleting C:\Users\Jim\Desktop\Photini.lnk
Deleting C:\Users\Jim\AppData\Roaming\Microsoft\Windows\Start Menu\Photini\Photini.lnk
Deleting C:\Users\Jim\AppData\Roaming\Microsoft\Windows\Start Menu\Photini\Photini documentation.url
Deleting C:\Users\Jim\AppData\Roaming\Microsoft\Windows\Start Menu\Photini
가상 환경을 사용한 경우 가상 환경을 설정할 때 생성된 최상위 디렉터리를 삭제하기만 하면 됩니다. 그렇지 않으면 pip를 사용하여 Photini와 제거하려는 종속성을 제거할 수 있습니다.
jim@mint:~$ pip3 uninstall photini pyside2
Found existing installation: Photini 2022.2.0
Uninstalling Photini-2022.2.0:
Would remove:
/home/jim/photini/bin/photini
/home/jim/photini/bin/photini-post-install
/home/jim/photini/lib/python3.8/site-packages/Photini-2022.2.0.dist-info/*
/home/jim/photini/lib/python3.8/site-packages/photini/*
Proceed (Y/n)? y
Successfully uninstalled Photini-2022.2.0
Found existing installation: PySide2 5.15.2.1
Uninstalling PySide2-5.15.2.1:
Would remove:
/home/jim/photini/bin/pyside2-designer
/home/jim/photini/bin/pyside2-lupdate
/home/jim/photini/bin/pyside2-rcc
/home/jim/photini/bin/pyside2-uic
/home/jim/photini/lib/python3.8/site-packages/PySide2-5.15.2.1.dist-info/*
/home/jim/photini/lib/python3.8/site-packages/PySide2/*
Proceed (Y/n)? y
Successfully uninstalled PySide2-5.15.2.1
C:\Users\Jim>pip uninstall photini pyside2
Found existing installation: Photini 2022.2.0
Uninstalling Photini-2022.2.0:
Would remove:
c:\users\jim\photini\lib\site-packages\photini-2022.2.0.dist-info\*
c:\users\jim\photini\lib\site-packages\photini\*
c:\users\jim\photini\scripts\photini-post-install.exe
c:\users\jim\photini\scripts\photini.exe
Proceed (y/n)? y
Successfully uninstalled Photini-2022.2.0
Found existing installation: PySide2 5.15.2.1
Uninstalling PySide2-5.15.2.1:
Would remove:
c:\users\jim\photini\lib\site-packages\pyside2-5.15.2.1.dist-info\*
c:\users\jim\photini\lib\site-packages\pyside2\*
c:\users\jim\photini\scripts\pyside2-designer.exe
c:\users\jim\photini\scripts\pyside2-lupdate.exe
c:\users\jim\photini\scripts\pyside2-rcc.exe
c:\users\jim\photini\scripts\pyside2-uic.exe
Proceed (y/n)? y
Successfully uninstalled PySide2-5.15.2.1
Photini 업데이트¶
Photini의 새 릴리스가 발행되면 pip 를 사용하여 설치를 쉽게 업데이트할 수 있습니다.
jim@mint:~$ pip3 install -U photini
C:\Users\Jim>pip install -U photini
《-U》 옵션은 pip에게 Photini를 최신 버전으로 업데이트하도록 지시합니다.
Python을 업그레이드하는 경우 패치 수준만 변경되면(예: 3.8.9에서 3.8.10으로) Photini나 종속성을 다시 설치할 필요가 없습니다. Python을 3.7.x에서 3.8.y로 업그레이드한 후에는 Photini와 그 종속성을 새로 설치해야 합니다.
종속성 세부사항¶
이러한 종속성 목록은 시스템 패키지 관리자를 사용하여 pip 대신 설치하려는 Linux 또는 MacOS 사용자에게 유용할 수 있습니다. 경우에 따라 각 표 아래의 참고 사항에 설명된 대로 패키지를 선택할 수 있습니다.
운영 체제마다 동일한 패키지에 대한 이름이 다릅니다. 문제가 발생할 경우 (email jim@jim-easterbrook.me.uk) 알려주십시오. 필요한 사항을 파악한 후 이 지침을 개선할 수 있습니다.
필수 종속성¶
이것들은 모두 Photini를 사용하기 위해 필요합니다.
패키지 |
최소 버전 |
일반적인 Linux 패키지 이름 |
PyPI 패키지 이름 |
---|---|---|---|
3.6 |
python3 |
||
PyQt [1] |
5.9 |
python3-qt5 or python3-pyqt5 |
PyQt5 |
PySide2 [1] |
5.11.0 |
python3-pyside2 |
PySide2 |
PySide6 [1] |
6.2.0 |
python3-pyside6 |
PySide6 |
QtWebEngine or QtWebKit [2] |
python3-pyqt5.qtwebkit |
PyQtWebEngine |
|
python-exiv2 [3] |
0.11.0 |
exiv2 |
|
appdirs |
1.3 |
python3-appdirs |
appdirs |
2.4 |
python3-requests |
requests |
[1] PyQt, PySide2 및 PySide6 은 Qt GUI 프레임워크에 대한 Python 인터페이스입니다. Photini는 이들 중 어떤 것이든 사용할 수 있으므로(PySide2가 선호되지만) 운영 체제에 선호하는 것을 설치할 수 있습니다. 둘 이상이 설치된 경우 configuration file 을 편집하여 Photini에서 사용할 항목을 선택할 수 있습니다.
[2] Photini에는 QtWebEngine 또는 QtWebKit 의 Python 버전이 필요합니다. QtWebEngine이 선호되지만 모든 운영 체제에서 사용할 수 있는 것은 아닙니다. QtWebEngine은 PySide6 및 일부 PyQt 또는 PySide2 설치에 포함되어 있습니다. QtWebKit은 더 이상 사용되지 않으며 Photini는 향후 릴리스에서 더 이상 사용할 수 없습니다. 추가 패키지로 설치하기 전에 Photini를 실행해 보십시오. 둘 다 있는 경우 configuration file 을 편집하여 Photini에서 사용할 것을 선택할 수 있습니다.
[3] python-exiv2 는 Photini 버전 2021.9.0 이상에서 사용할 수 있는 Exiv2 라이브러리에 대한 새로운 인터페이스입니다. 컴퓨터에 설치할 수 없는 경우 아래에 표시된 패키지를 대신 설치해야 합니다. Photini의 향후 릴리스에는 이 옵션이 없으므로 python-exiv2를 설치할 수 없는 경우 알려주십시오.
패키지 |
최소 버전 |
일반적인 Linux 패키지 이름 |
PyPI 패키지 이름 |
---|---|---|---|
0.10.3 |
libgexiv2-2 |
||
gexiv2 introspection data |
typelib-1_0-GExiv2-0_10 or gir1.2-gexiv2-0.10 |
||
PyGObject [4] |
python3-gobject or python3-gi |
||
pgi [4] |
0.0.8 |
pgi |
이것은 Python에서 사진 메타데이터에 액세스하는 보다 순환적인 방법입니다. Exiv2 는 《C》 라이브러리의 핵심입니다. gexiv2 는 Exiv2 라이브러리를 둘러싼 GObject wrapper입니다. 다른 언어에서 사용할 수 있도록 하는 추가 《introspection bindings》이 있습니다. PyGObject 또는 pgi 는 Exiv2 라이브러리 주변의 GObject wrapper의 introspection bindings에 대한 Python 인터페이스를 제공합니다.
[4] pgi 는 PyGObject 에 대한 순수한 파이썬의 대안이며, 실험 상태에 대한 저자의 경고에도 불구하고 일부 시스템에서 더 신뢰할 수 있습니다. 시스템에서 pgi가 작동하지 않는 경우 pgi를 제거하여 PyGObject를 다시 사용할 수 있습니다:
$ pip3 uninstall pgi
선택적 종속성¶
Photini의 일부 기능은 선택 사항입니다. 이러한 패키지를 설치하지 않으면 Photini가 작동하지만 관련 기능을 사용할 수 없습니다. Linux 패키지 관리자 이름에는 아마도 python-
또는 python3-
접두사가 있을 것입니다.
Feature |
Dependencies |
---|---|
Spell check[1] |
pyenchant 2.0+ or Gspell (e.g. |
Flickr upload |
requests-oauthlib 1.0+, requests-toolbelt 0.9+, keyring 7.0+ |
Ipernity upload |
requests-toolbelt 0.9+, keyring 7.0+ |
Google Photos upload |
requests-oauthlib 1.0+, keyring 7.0+ |
Thumbnail creation[2] |
|
Import photos from camera[3] |
python3-gphoto2 1.8+ |
Import GPS logger file |
gpxpy 1.3.5+ |
[1] 메타데이터 액세스에 python-exiv2를 사용하는 경우 pyenchant가 기본 철자 패키지입니다. Pyenchant를 사용하려면 C 라이브러리와 사전을 설치해야 합니다. 자세한 지침은 pyenchant documentation 를 참조하세요. Gspell을 사용하려면 위에서 설명한 대로 PyGObject 또는 pgi도 설치해야 합니다.
[2] Photini는 PyQt를 사용하여 썸네일 이미지를 만들 수 있지만 Pillow를 설치하면 더 나은 품질의 이미지를 만들 수 있습니다. FFmpeg는 비디오 파일의 썸네일을 생성하는 데 필요하지만 일부 정지 이미지 형식용으로 만들 수도 있습니다.
[3]Photini는 컴퓨터의 모든 디렉토리(예: 메모리 카드)에서 사진을 가져올 수 있지만 python-gphoto2가 설치된 경우 Linux 및 MacOS 시스템에서는 카메라에서 직접 가져올 수도 있습니다.
특별 설치¶
pip 을(를) 사용하여 PyPI 에서 Photini를 설치하는 것이 적합하지 않은 상황이 있습니다. 예를 들어 사용자 인터페이스를 다른 언어로 변환하는 작업 등 소스 파일에 대한 손쉬운 액세스가 필요한 경우 개발 버전을 설치해야 합니다.
개발 버전¶
개발 버전을 설치하려면 git을 사용하여 GitHub 저장소 를 복제하거나 .zip 또는 .tar.gz 파일로 다운로드한 다음 압축을 푸십시오. 그런 다음 계속하기 전에 작업 디렉터리를 Photini 최상위 디렉터리로 설정하십시오.
다음과 같이 run_photini.py
스크립트::를 사용하여 설치하지 않고 Photini를 실행할 수 있습니다.
$ python3 src/run_photini.py
스크립트는 IDE 내에서도 작동해야 하므로 개발 중에 유용할 수 있습니다.
pip::를 사용하여 개발 버전을 빌드하고 설치할 수 있습니다.
$ pip3 install .
Photini의 번역 파일 중 하나를 테스트하거나 사용하려면 Photini를 설치하거나 실행하기 전에 번역을 업데이트하고 컴파일해야 합니다:
$ python3 utils/lang_update.py
$ python3 utils/build_lang.py
$ pip3 install .
이를 위해서는 Qt 《linguist》 소프트웨어가 설치되어 있어야 합니다. 번역 사용에 대한 자세한 내용은 번역 테스트 을 참조하십시오.
문제 해결¶
Photini를 실행하는 데 문제가 있는 경우 가장 먼저 할 일은 명령 창에서 실행하는 것입니다. virtual environment 에 Photini를 설치한 경우 해당 환경을 활성화합니다. 예를 들면 다음과 같습니다.
jim@brains:~$ source /home/jim/photini/bin/activate
(photini) jim@brains:~$
C:\Users\Jim>c:\Users\Jim\photini\Scripts\activate.bat
(photini) C:\Users\Jim>
다음과 같이 Photini 프로그램을 시작합니다. 실행에 실패하면 몇 가지 진단 정보를 얻어야 합니다.
jim@brains:~$ python3 -m photini -v
C:\Users\Jim>python -m photini -v
-v
옵션을 사용하여 Photini 메시지 로깅의 자세한 정도를 높일 수 있습니다. 더 자세한 정보를 위해 이 옵션을 반복할 수 있습니다.
사용 중인 Photini 버전과 종속성을 확인하려면 --version
옵션을 사용하여 실행하십시오.
jim@mint:~$ python -m photini --version
Photini 2022.3.2, build 2084 (3194bd4)
Python 3.8.10 (default, Nov 26 2021, 20:14:08) [GCC 9.3.0]
python-exiv2 0.11.0, exiv2 0.27.5
PySide2 5.15.2.1, Qt 5.15.2, using QtWebEngine
PyEnchant 3.2.2
ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers
available styles: Windows, Fusion
using style: fusion
C:\Users\Jim>python -m photini --version
ffmpeg or ffprobe not found
Photini 2022.2.0, build 1995 (11743ef)
Python 3.8.10 (tags/v3.8.10:3d8993a, May 3 2021, 11:48:03) [MSC v.1928 64 bit (AMD64)]
python-exiv2 0.9.0, exiv2 0.27.5
PySide2 5.15.2.1, Qt 5.15.2, using QtWebEngine
PyEnchant 3.2.2
available styles: windowsvista, Windows, Fusion
using style: windowsvista
이 정보는 Photini를 실행하는 데 문제가 있는 경우 저에게 (jim@jim-easterbrook.me.uk) 이메일을 보내면 유용합니다.
메일링 리스트¶
Photini에 대한 보다 일반적인 토론(예: 출시 발표, 사용에 관한 질문, 설치 문제 등)을 위해 Google 그룹스에서 호스팅되는 이메일 목록 또는 포럼이 있습니다. https://groups.google.com/forum/#!forum/photini 에서 이전 메시지를 보고 그룹 가입을 요청할 수 있습니다.
Photini 문서¶
Photini 문서의 로컬 복사본을 갖고 소스 파일을 다운로드하거나 복제한 경우 Sphinx 및 관련 패키지를 설치한 다음 문서를 《컴파일》할 수 있습니다.
$ pip3 install -r src/doc/requirements.txt
$ python3 utils/build_docs.py
로컬 문서를 읽으려면 웹 브라우저에서 doc/html/index.html
을 엽니다.
의견이나 질문이 있나요? Photini mailing list https://groups.google.com/forum/#!forum/photini 를 구독하고 알려주십시오.