diff --git a/README.md b/README.md
index 2824450..e334d4e 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,9 @@
Вся разработка, сборка и запуск ведутся из **этой папки** (например `/Users/.../Desktop/papa-yu`). ТЗ и спецификации лежат отдельно в папке **папа-ю** на рабочем столе (не переносятся). Подробнее: `docs/ЕДИНАЯ_ПАПКА_ПРОЕКТА.md`.
-**Запуск без терминала:** двойной клик по `PAPA YU.command` (только запуск) или по `PAPA YU — Сборка и запуск.command` (сборка + запуск).
+**Установка в «Программы» (запуск без терминала):** один раз двойной клик по **`Установить в Программы.command`** — приложение соберётся и скопируется в папку «Программы». После этого запускайте PAPA YU из Launchpad, Spotlight (Cmd+Пробел) или Finder → Программы, как любое другое приложение.
+
+**Без установки:** двойной клик по `PAPA YU.command` (только запуск уже собранного .app) или по `PAPA YU — Сборка и запуск.command` (сборка + запуск).
## Требования
@@ -32,6 +34,8 @@ npm run tauri dev
npm run tauri build
```
+Установка в «Программы» из терминала: `npm run install-app`.
+
## v2.4.5 — что реализовано
### Добавлено в v2.4.5
diff --git a/package-lock.json b/package-lock.json
index ff704bf..3323c3f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,10 +8,10 @@
"name": "papa-yu",
"version": "2.4.5",
"dependencies": {
- "@tauri-apps/api": "^2.0.0",
+ "@tauri-apps/api": "^2.9.0",
"@tauri-apps/plugin-dialog": "^2.0.0",
"@tauri-apps/plugin-process": "^2.3.1",
- "@tauri-apps/plugin-updater": "^2.10.0",
+ "@tauri-apps/plugin-updater": "^2.9.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.20.0"
diff --git a/package.json b/package.json
index ea8ce8a..8269b9f 100644
--- a/package.json
+++ b/package.json
@@ -9,13 +9,14 @@
"tauri": "tauri",
"icons:export": "node scripts/export-icon.js",
"golden": "cd src-tauri && cargo run --bin trace_to_golden --",
+ "install-app": "bash scripts/install-to-applications.sh",
"test-protocol": "cd src-tauri && cargo test golden_traces"
},
"dependencies": {
- "@tauri-apps/api": "^2.0.0",
+ "@tauri-apps/api": "^2.9.0",
"@tauri-apps/plugin-dialog": "^2.0.0",
"@tauri-apps/plugin-process": "^2.3.1",
- "@tauri-apps/plugin-updater": "^2.10.0",
+ "@tauri-apps/plugin-updater": "^2.9.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.20.0"
diff --git a/scripts/install-to-applications.sh b/scripts/install-to-applications.sh
new file mode 100755
index 0000000..548d57f
--- /dev/null
+++ b/scripts/install-to-applications.sh
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+# Устанавливает PAPA YU в папку «Программы» (/Applications).
+# После этого приложение можно запускать из Launchpad или Finder без терминала.
+
+set -e
+SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
+ROOT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
+BUNDLE_DIR="$ROOT_DIR/src-tauri/target/release/bundle/macos"
+APP_NAME="PAPA YU.app"
+APPLICATIONS="/Applications"
+
+cd "$ROOT_DIR"
+
+if [ ! -d "$BUNDLE_DIR/$APP_NAME" ]; then
+ echo " Сборка приложения..."
+ export CI=false
+ npm run tauri build
+fi
+
+if [ ! -d "$BUNDLE_DIR/$APP_NAME" ]; then
+ echo " Ошибка: после сборки не найден $BUNDLE_DIR/$APP_NAME"
+ exit 1
+fi
+
+echo " Копирование в $APPLICATIONS..."
+rm -rf "$APPLICATIONS/$APP_NAME"
+cp -R "$BUNDLE_DIR/$APP_NAME" "$APPLICATIONS/"
+
+echo " Обновление Launchpad (чтобы иконка появилась)..."
+defaults write com.apple.dock ResetLaunchPad -bool true 2>/dev/null || true
+killall Dock 2>/dev/null || true
+
+echo ""
+echo " Готово. PAPA YU установлен в «Программы»."
+echo " Иконка должна появиться в Launchpad через несколько секунд."
+echo " Также: Spotlight (Cmd+Пробел) → «PAPA YU» или Finder → Программы."
+echo ""
diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
index 75ef35a..7a31aa5 100644
--- a/src-tauri/tauri.conf.json
+++ b/src-tauri/tauri.conf.json
@@ -35,6 +35,7 @@
},
"plugins": {
"updater": {
+ "pubkey": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK4VwAyEAGbYECPx+5y2xOxR9jFGSnZ0k0lE=\n-----END PUBLIC KEY-----",
"endpoints": ["https://github.com/yrippert-maker/papayu/releases/latest/download/latest.json"]
}
}
diff --git a/src/App.tsx b/src/App.tsx
index 097e419..a06608d 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -3,8 +3,6 @@ import Tasks from "./pages/Tasks";
import Dashboard from "./pages/Dashboard";
import ProjectNotes from "./pages/ProjectNotes";
import Updates from "./pages/Updates";
-import Reglamenty from "./pages/Reglamenty";
-import TMCZakupki from "./pages/TMCZakupki";
import Finances from "./pages/Finances";
import Personnel from "./pages/Personnel";
@@ -90,36 +88,6 @@ function Layout({ children }: { children: React.ReactNode }) {
>
Project Notes
- ({
- padding: "10px 18px",
- borderRadius: "999px",
- fontWeight: 600,
- fontSize: "14px",
- textDecoration: "none",
- color: isActive ? "#1e3a5f" : "rgba(255,255,255,0.9)",
- background: isActive ? "#fff" : "rgba(255,255,255,0.15)",
- transition: "background 0.2s ease, color 0.2s ease",
- })}
- >
- Регламенты
-
- ({
- padding: "10px 18px",
- borderRadius: "999px",
- fontWeight: 600,
- fontSize: "14px",
- textDecoration: "none",
- color: isActive ? "#1e3a5f" : "rgba(255,255,255,0.9)",
- background: isActive ? "#fff" : "rgba(255,255,255,0.15)",
- transition: "background 0.2s ease, color 0.2s ease",
- })}
- >
- ТМЦ
-
({
@@ -151,8 +119,6 @@ export default function App() {
} />
} />
} />
- } />
- } />
} />
} />
diff --git a/Установить в Программы.command b/Установить в Программы.command
new file mode 100755
index 0000000..584bdbc
--- /dev/null
+++ b/Установить в Программы.command
@@ -0,0 +1,9 @@
+#!/bin/bash
+# Установка PAPA YU в «Программы». Запустите двойным щелчком один раз.
+# После установки открывайте приложение из Launchpad или Finder — терминал не нужен.
+
+SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
+cd "$SCRIPT_DIR"
+bash scripts/install-to-applications.sh
+echo ""
+read -n 1 -s -r -p "Нажмите любую клавишу для выхода..."