MarkBase架构升级:Multi-Volume Virtual Tree + Dual-View Management + Git Remote修正
核心功能: - ✅ Categories/Series双视图管理(category_view.rs + import_markdown.rs) - ✅ FUSE Multi-Volume支持(tree_type参数) - ✅ SSH/SFTP/SCP/rsync协议完整实现(4042行) - ✅ NFS/SMB Module Phase 1-3完成 - ✅ Archive Module Phase 1-4完成(2916行) - ✅ Download Center API完整实现 - ✅ S3兼容API实现(560行) Git配置修正: - ✅ 删除错误origin(gitea.momentry.ddns.net) - ✅ 删除m5max128(指向机器名) - ✅ 设置origin = m5max128gitea.momentry.ddns.net/admin/markbase - ✅ 设置m4minigitea = m4minigitea.momentry.ddns.net/warren/markbase 数据清理: - ✅ 删除38个临时SQLite(保留accusys.sqlite、demo.sqlite) - ✅ 删除.bak、test_*.bin、调试脚本等临时文件 - ✅ 删除临时目录(build/、download files/、raid_test/等) - ✅ 更新.gitignore排除临时文件 架构优化: - 52个文件修改,2434行新增,4739行删除 - Workspace成员整合(16个crate) - 数据库状态:accusys.sqlite保留(主demo测试) 远程同步: - ✅ 准备推送到m5max128gitea(远程Gitea) - ✅ 准备推送到m4minigitea(本地Gitea)
This commit is contained in:
85
scripts/create_app_bundle.sh
Executable file
85
scripts/create_app_bundle.sh
Executable file
@@ -0,0 +1,85 @@
|
||||
#!/bin/bash
|
||||
# scripts/create_app_bundle.sh
|
||||
# 创建System Extension .app Bundle
|
||||
|
||||
set -e
|
||||
|
||||
echo "=== 创建System Extension .app Bundle ==="
|
||||
|
||||
# 配置
|
||||
BUNDLE_ID="com.momentry.markbase.fskit"
|
||||
TEAM_ID="K3TDMD9Y6B"
|
||||
APP_NAME="MarkBaseFSKit.app"
|
||||
BINARY="target/release/fskit_mount"
|
||||
APP_DIR="build/${APP_NAME}"
|
||||
|
||||
echo ""
|
||||
echo "配置信息:"
|
||||
echo " Bundle ID: ${BUNDLE_ID}"
|
||||
echo " Team ID: ${TEAM_ID}"
|
||||
echo " Binary: ${BINARY}"
|
||||
|
||||
# 检查binary是否存在
|
||||
if [ ! -f "${BINARY}" ]; then
|
||||
echo "❌ Binary不存在:${BINARY}"
|
||||
echo " 需要先构建Rust binary"
|
||||
echo " 运行:cargo build --release --bin fskit_mount"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "步骤1: 创建.app bundle结构..."
|
||||
mkdir -p "${APP_DIR}/Contents/MacOS"
|
||||
mkdir -p "${APP_DIR}/Contents/Resources"
|
||||
|
||||
echo ""
|
||||
echo "步骤2: 复制binary到.app..."
|
||||
cp "${BINARY}" "${APP_DIR}/Contents/MacOS/MarkBaseFSKit"
|
||||
chmod +x "${APP_DIR}/Contents/MacOS/MarkBaseFSKit"
|
||||
|
||||
echo ""
|
||||
echo "步骤3: 创建Info.plist..."
|
||||
cat > "${APP_DIR}/Contents/Info.plist" << 'PLIST'
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.momentry.markbase.fskit</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>MarkBaseFSKit</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>MarkBaseFSKit</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>10.15</string>
|
||||
<key>NSHighResolutionCapable</key>
|
||||
<true/>
|
||||
<key>NSSystemExtension</key>
|
||||
<true/>
|
||||
<key>NSSystemExtensionUsageDescription</key>
|
||||
<string>MarkBaseFSKit provides virtual filesystem mounting functionality.</string>
|
||||
</dict>
|
||||
</plist>
|
||||
PLIST
|
||||
|
||||
echo ""
|
||||
echo "步骤4: 复制entitlements.plist..."
|
||||
cp entitlements.plist "${APP_DIR}/Contents/entitlements.plist"
|
||||
|
||||
echo ""
|
||||
echo "步骤5: 验证.app bundle结构..."
|
||||
ls -la "${APP_DIR}/Contents/"
|
||||
|
||||
echo ""
|
||||
echo "✅ .app Bundle已创建:${APP_DIR}"
|
||||
ls -lh "${APP_DIR}/Contents/MacOS/MarkBaseFSKit"
|
||||
|
||||
echo ""
|
||||
echo "下一步:"
|
||||
echo " 运行 ./scripts/sign_app.sh 进行签名"
|
||||
Reference in New Issue
Block a user