54eedf5483
Implement a complete Nextcloud client compatibility layer so that Nextcloud desktop/mobile sync clients can connect to OxiCloud. Key additions: - Login Flow v2 (device auth) with OIDC bridge support - WebDAV handler compatible with Nextcloud clients (PROPFIND, GET, PUT, DELETE, MKCOL, MOVE, COPY, HEAD, PROPPATCH) - OCS API endpoints (user info, capabilities, notifications stubs, sharees, unified search) - Basic Auth middleware with app password verification, account lockout integration, and blake3-keyed auth cache - App password management: create, list, revoke via both native API (JWT-authenticated profile page) and Nextcloud OCS endpoints - Nextcloud file ID mapping (oc:fileid) with persistent DB storage - Chunked upload support (Nextcloud v2 chunking protocol) - Trashbin WebDAV interface - Avatar (SVG placeholder) and preview (redirect) handlers - User profile page with app password management UI - URL user validation on all DAV routes (403 on mismatch) - Database schema for app_passwords and nextcloud_object_ids tables All services are behind a `nextcloud.enabled` config flag and cleanly separated under src/interfaces/nextcloud/. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
91 lines
1.3 KiB
Plaintext
91 lines
1.3 KiB
Plaintext
# Generated by Cargo
|
|
/target/
|
|
**/target/
|
|
|
|
# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
|
|
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
|
|
# Cargo.lock
|
|
|
|
# These are backup files generated by rustfmt
|
|
**/*.rs.bk
|
|
|
|
# MSVC Windows builds of rustc generate these, which store debugging information
|
|
*.pdb
|
|
|
|
# Rust debug symbols
|
|
*.dSYM/
|
|
*.su
|
|
*.idb
|
|
|
|
# Build cache
|
|
.cargo/
|
|
|
|
# Visual Studio Code directory
|
|
.vscode/
|
|
|
|
# JetBrains IDEs
|
|
.idea/
|
|
|
|
# MacOS specific
|
|
.DS_Store
|
|
.AppleDouble
|
|
.LSOverride
|
|
|
|
# Linux specific
|
|
*~
|
|
.directory
|
|
.Trash-*
|
|
|
|
# Windows specific
|
|
Thumbs.db
|
|
ehthumbs.db
|
|
Desktop.ini
|
|
|
|
# Node.js (if used for frontend)
|
|
node_modules/
|
|
npm-debug.log
|
|
|
|
# Environment variables
|
|
.env
|
|
.env.local
|
|
.env.development.local
|
|
.env.test.local
|
|
.env.production.local
|
|
|
|
# Log files
|
|
*.log
|
|
logs/
|
|
logs.txt
|
|
|
|
# Storage data (user files, blobs — never commit)
|
|
storage/
|
|
|
|
# TLS certificates and private keys — NEVER commit
|
|
*.pem
|
|
*.key
|
|
*.p12
|
|
*.pfx
|
|
*.crt
|
|
*.csr
|
|
|
|
# Temporary files
|
|
*.tmp
|
|
*.bak
|
|
*.swp
|
|
*.swo
|
|
nohup.out
|
|
|
|
# Agent planning docs (live on 'planning' branch)
|
|
docs/plans/
|
|
.planning/
|
|
|
|
# Local dev compose (not in upstream)
|
|
docker-compose.dev.yml
|
|
|
|
# Test scripts with hardcoded credentials
|
|
test-nextcloud-*.sh
|
|
|
|
# Claude Code artifacts
|
|
.claude/
|
|
CLAUDE.md
|