# ライセンス・商用配布準備資料

本アプリはPySide6 / Shiboken6 6.8.3、Qt 6.8.3を使用します。対象ライブラリはLGPLv3の条件に基づいて利用する方針です。ライブラリ自体への独自改変は行っていません。独自GUIはQt Widgetsと独自QSSで実装し、追加の商用UIライブラリは使用していません。

## 配布構成

- Python 3.12ランタイムをPyInstallerで同梱。
- PySide6のQtCore / QtGui / QtWidgetsと、それらが必要とするDLL・プラグインを動的に読み込みます。
- DLL・pydは `CustomerFileSearch/_internal` 内に分離しています。静的リンク・onefile・UPX圧縮・ライブラリの署名チェックによる差し替え制限は使用していません。
- `licenses` にライセンス本文、通知、依存関係一覧を同梱しています。
- 上流の対応バージョンのソースアーカイブも完成ZIP内の `dependency-sources` に同梱します。取得元とSHA-256は同フォルダの `SOURCES.json` を参照してください。

## ライブラリの交換・再結合

1. アプリを終了し、フォルダ一式のコピーを作ります。
2. 同じWindows x64と互換性のあるPython ABIに対応した、改変済みQt / PySide6 / Shiboken6を用意します。Qt・バインディング・プラグインは互換性のある組合せでビルドします。
3. `_internal/PySide6` 内のQt DLL・pyd・プラグイン、および `_internal/shiboken6` 内の対応ファイルを置き換えます。ディレクトリ構造は維持してください。単独のDLLだけを異なるABIのものに替えると起動できない場合があります。
4. アプリを起動し、画面と検索を確認します。アプリ側には差し替えを検出して拒否する仕組みはありません。
5. 別のPython ABIやQt構成を使う場合は同梱ソース版を用い、改変したライブラリをインストールした環境で `build.ps1` を実行してください。元のrequirementsをそのまま再インストールするとライブラリが公式版に戻るため、改変版を使う際は依存指定を調整します。

LGPL対象ライブラリの変更・再結合と、その変更をデバッグするためのリバースエンジニアリングに関する利用者の権利を、アプリの利用規約で制限しないようにしてください。

## 販売時に確定する事項

この資料は準拠の検討・実装を助ける資料であり、販売形態全体についての法的適合性の保証ではありません。

- 実際に配布するDLL・プラグインと、その完全な対応ソース・ビルド情報の対応を確認し、配布者自身が継続して提供できる形で保管します。上流URLだけの案内ではソース提供義務を満たすと断定できません。
- 上流ソースに含まれる第三者部品の通知も保持します。QtのすべてのモジュールがLGPLではないため、将来モジュールを追加する場合は個別に確認します。
- 使用する配布方法、EULA、再結合に必要な情報、改変ライブラリでの実行、ソース提供方法を最終確認します。
- ユーザー提供のアイコンおよび元のアプリの権利を確認し、販売者・連絡先・独自部分の利用条件を別途定めてください。
- 改変したライブラリとの交換実験、完全な再現ビルド、販売環境すべてでの検証は、本作業の動作テストとは別に必要です。

## 主な依存物

| 依存物 | バージョン | ライセンス上の扱い |
|---|---|---|
| PySide6 Essentials / Shiboken6 | 6.8.3 | LGPLv3の選択肢を利用する方針 |
| Qt Core / GUI / Widgetsと同梱プラグイン | 6.8.3 | LGPLv3と、組込み第三者部品の個別条件 |
| CPython | 実測版はBUILD_INFO参照 | PSFおよび同梱部品の条件 |
| PyInstaller | 6.16.0 | GPL＋ブートローダー例外。アプリ配布への例外あり |
| Microsoftランタイム | 同梱DLL参照 | Microsoftの再配布条件 |

PillowはアイコンのICO形式への変換にのみ使用し、アプリの実行環境には同梱しません。

## 公式資料

- Qt LGPL義務: https://www.qt.io/development/open-source-lgpl-obligations
- Qt Open Source FAQ: https://www.qt.io/faq/qt-open-source-licensing
- Qt 6.8 ライセンス・第三者部品: https://doc.qt.io/qt-6.8/licensing.html
- Qt for Python: https://doc.qt.io/qtforpython-6.8/licenses.html
- PyInstallerのライセンス: https://github.com/pyinstaller/pyinstaller/blob/v6.16.0/COPYING.txt

確認日: 2026-09-30
