Gaphor у Windows

Gaphor можна встановити як за допомогою нашого інсталятора. Перегляньте подробиці на сторінці завантаження Gaphor.

Старіші випуски доступні на GitHub.

Також доступні сборки CI.

Середовище розробки

WinGet

Ми рекомендуємо використовувати WinGet як менеджер пакунків у Windows. Він доступний у Windows 11 та сучасних версіях Windows 10 як частина Інсталятора додатків.

Якщо у вас трохи старіша версія Windows, ви можете скористатися Chocolatey як менеджером пакунків. Після встановлення пакунків виконайте choco install замість команд winget install, наведених нижче.

Git

Щоб налаштувати середовище розробки в Windows, спершу інсталюйте Git, виконавши від імені адміністратора:

winget install git.git

GTK і Python з Gvsbuild

Gvsbuild надає попередньо зібрані бібліотеки GTK для Windows. Ми встановимо ці бібліотеки та Python.

Установіть останню версію Python

У Windows повний інсталятор містить усі компоненти Python і є найкращим варіантом для розробників, які використовують Python для будь-якого проекту.

Для отримання додаткової інформації про те, як використовувати офіційний інсталятор, будь ласка, дивіться [повну інструкцію з інсталяції] (https://docs.python.org/3/using/windows.html#windows-full). Параметри встановлення за замовчуванням мають бути придатними для використання з Gaphor.

  1. Установіть останню версію Python за допомогою офіційного інсталятора.

  2. Відкрийте термінал PowerShell як звичайний користувач і перевірте версію python:

    py -3.13 --version
    

Встановіть Graphviz

Graphviz використовується Gaphor для автоматичного форматування діаграм.

  1. Встановити з WinGet за допомогою адміністратора PowerShell:

winget install graphviz

Встановити pipx

З терміналу PowerShell звичайного користувача виконайте:

py -3.13 -m pip install --user pipx
py -3.13 -m pipx ensurepath

Завантажити GTK

Download the latest release asset at https://github.com/wingtk/gvsbuild/releases. The file will be called GTK4_Gvsbuild_VERSION_x64.zip, where VERSION is the latest released version.

Розархівуйте файл GTK4_Gvsbuild_VERSION_x64.zip до C:\gtk. Наприклад, з 7Zip:

7z x GTK4_Gvsbuild_*.zip  -oC:\gtk -y

Отримана структура каталогу має виглядати так:

C:\gtk
├── bin
├── include
├── lib
├── python
├── share
└── wheels

Налаштувати Gaphor

У тому самому терміналі PowerShell клонуйте репозиторій:

cd (to the location you want to put Gaphor)
git clone https://github.com/gaphor/gaphor.git
cd gaphor

Install Poetry:

pipx install poetry

Додайте GTK до ваших змінних середовища:

$env:Path = $env:Path + ";C:\gtk\bin;C:\Program Files\Graphviz\bin"
$env:LIB = "C:\gtk\lib"
$env:INCLUDE = "C:\gtk\include;C:\gtk\include\cairo;C:\gtk\include\glib-2.0;C:\gtk\include\gobject-introspection-1.0;C:\gtk\lib\glib-2.0\include;"
$env:GI_TYPELIB_PATH = "C:\gtk\lib\girepository-1.0"
$env:XDG_DATA_HOME = "$env:userprofile\.local\share"

Ви також можете редагувати змінні середовища свого облікового запису, щоб вони залишалися протягом сеансів PowerShell.

Install Gaphor’s dependencies:

poetry install

Reinstall PyGObject and pycairo using gvsbuild wheels:

poetry run pip install --force-reinstall (Resolve-Path C:\gtk\wheels\PyGObject*.whl)
poetry run pip install --force-reinstall (Resolve-Path C:\gtk\wheels\pycairo*.whl)

Запустіть Gaphor!

poetry run gaphor

Налаштування робочого середовища плагіна для Gaphor

Під час налаштування робочої області плагіна необхідно виконати наступні кроки:

cd (your project's workspace)

Якщо у вашому проекті ще немає файлу pyproject.toml, створіть його. За деталями зверніться до [Документації по поезії] (https://python-poetry.org/docs/basic-usage/). Якщо у вас вже є файл .toml, переконайтеся, що у вас є gaphor як залежність розробки. Докладні відомості наведено у Плагін Gaphor Hello World.

poetry init

Встановіть залежності вашого проекту. Якщо ви зробили свій проект залежним від Gaphor, це призведе до Gaphor.

poetry install

Reinstall PyGObject and pycairo using gvsbuild wheels:

poetry run pip install --force-reinstall (Resolve-Path C:\gtk\wheels\PyGObject*.whl)
poetry run pip install --force-reinstall (Resolve-Path C:\gtk\wheels\pycairo*.whl)

Зауважте, що якщо ви забули перевстановити PyGObject і pycairo, під час першого додавання елемента до діаграми з текстом gaphor вийде з ладу!

Запустіть Gaphor!

poetry run gaphor

Налагодження за допомогою Visual Studio Code

Запустіть новий термінал PowerShell і встановіть для поточного каталогу теку проекту:

cd (to the location you put gaphor)

Переконайтеся, що встановлено змінну середовища path:

$env:Path = "C:\gtk\bin;" + $env:Path

Запустіть код Visual Studio:

code .

Щоб запустити налагоджувач, виконайте наступні кроки:

  1. Відкрийте файл __main__.py з папки gaphor

  2. Додайте точку зупину в рядку main(sys.argv)

  3. У меню виберіть Виконати → Почати налагодження

  4. Виберіть Вибрати модуль зі списку

  5. Введіть gaphor як назву модуля

Visual Studio Code запустить програму в режимі налагодження та зупиниться в основному.

Налагодження плагіна за допомогою коду Visual Studio

cd (your project's workspace)

Почати гафор:

  1. У меню VSCode виберіть Виконати → Почати налагодження

  2. Виберіть Вибрати модуль зі списку

  3. Введіть gaphor як назву модуля

Ваш плагін має з’явитися в меню «Інструменти».

Упаковка для Windows

Для створення інсталяційного пакету exe для Windows ми використовуємо PyInstaller, який аналізує Gaphor, щоб знайти всі залежності і зібрати їх в одну папку. Потім ми використовуємо спеціальний скрипт bash, який створює інсталятор для Windows за допомогою NSIS і портативний інсталятор за допомогою 7-Zip. Щоб встановити їх, відкрийте PowerShell від імені адміністратора, а потім виконайте:

winget install nsis 7zip

Потім створіть інсталятор за допомогою:

poetry install --only main,packaging,automation
poetry run pip install --force-reinstall (Resolve-Path C:\gtk\wheels\PyGObject*.whl)
poetry run pip install --force-reinstall (Resolve-Path C:\gtk\wheels\pycairo*.whl)
poetry build
poetry run poe package
poetry run poe win-installer

Обмежена установка Anaconda

Іноді може бути корисно викликати функції Gaphor з консолі python на комп’ютерах без можливості повного встановлення для розробки (наприклад, без адміністративних привілеїв). Оскільки не всі необхідні залежності збірки Gaphor (зокрема, gtksourceview5 і libadwaita) доступні у вигляді пакунків анаконди, ви не зможете зібрати програму або створити/запустити класи програми, такі як Application і Session.

Втім, таке встановлення може бути корисним, якщо ви хочете використовувати або викликати Gaphor як бібліотеку у контексті більшого проекту. У таких випадках Gaphor можна встановити як пакунок у середовищі anaconda за допомогою наступного процесу:

Створіть нове середовище анаконди

Якщо ви використовуєте anaconda для інших проектів, варто створити нове середовище для Gaphor, щоб його залежності не конфліктували з вашим попереднім середовищем розробки. Для цього виконайте наступну команду з інтерпретатора anaconda:

conda create -n "gaphor"
conda activate gaphor

where gaphor can be any name desired for the environment.

Оновіть пакети в новому середовищі

Отримайте найновіші пакети за допомогою:

conda update --all

Встановити залежності

Наступні залежності Gaphor можна встановити з anaconda:

conda install graphviz
conda install -c conda-forge gobject-introspection gtk4 pygobject pycairo hicolor-icon-theme adwaita-icon-theme

На жаль, залежності gtksourceview5 і libadwaita недоступні як пакети anaconda. Тому ви не зможете повністю створити/запустити програму в цьому середовищі.

Налаштуйте середовище розробки

Тепер, щоб розвиватися за допомогою Gaphor, ви захочете налаштувати його за допомогою своєї розробки. Якщо ви хочете працювати з ipython, встановіть його нижче:

conda install ipython ipykernel

Поради VSCode

VSCode повинен працювати з коробки, якщо він уже встановлений. Просто встановіть «gaphor» як ядро у своєму профілі VSCode або блокноті.

Поради Spyder

Ви можете встановити spyder у цьому середовищі за допомогою conda install spyder.

Якщо це не спрацює (тобто, якщо conda install spyder виявляє конфлікти), замість цього можна скористатися таким обхідним шляхом:

conda install spyder-kernels=2.4

Потім у spyder встановіть „gaphor“ як інтерпретатор Python

Встановіть Gaphor

З консолі Python, яка працює у вашому новому середовищі anaconda, ви можете встановити Gaphor за допомогою pip:

pip install gaphor