# 壁紙の公開

公開コマンドは、壁紙をビルド・暗号化し、Fluxlay ストアにアップロードして他のユーザーがインストールできるようにします。自分専用のテスト用ビルドを作成するだけの場合は、代わりに `build` コマンドを使用してください。

## 公開コマンド

<PackageManagerCommand type="exec" command="fluxlay publish" />

ディレクトリを指定することもできます。

<PackageManagerCommand type="exec" command="fluxlay publish ./my-wallpaper" />

## 処理の流れ

1. `fluxlay.yaml` のバリデーション。
2. ランダムなコンテンツ暗号化キーの生成。
3. API にバージョンを登録（バージョン ID とアップロード URL を取得）。
4. 壁紙をビルド（`kind: web` は Vite ビルド、`kind: video` / `image` はソースファイルをコピー）。
5. コンテンツの暗号化とパッケージング。
6. クラウドストレージへのアップロード。
7. API にアップロード完了を通知。
8. `fluxlay.yaml` に `description` がある場合、`name` と `description` をストアへ送信してリスト表示を同期。ここでの失敗は publish 自体をロールバックしません（リスト表示の更新がスキップされるだけ）。

## 初回公開

初回公開時、`fluxlay.yaml` の slug で壁紙が登録されます。以降の公開は同じ slug の新しいバージョンとして作成されます。

## 必要条件

- ログイン済みであること（`fluxlay login`）。
- ユニークな `slug` を持つ有効な `fluxlay.yaml`。
- アカウントのオンボーディングが完了していること。
