Commit Graph

44 Commits

Author SHA1 Message Date
fe9651f2fa Replace Cockpit with Netdata in nginx reverse proxy config
- Remove Cockpit reverse proxy configuration
- Add Netdata reverse proxy with basic auth protection
- Configure same authentication as Glances for consistency
- Maintain security headers and WebSocket support
- Use port 19999 for Netdata service
2025-09-09 21:12:13 +02:00
5c4d959ed8 Add tabbed admin interface with organized service sections
- Add tabbed navigation with Home and Admin tabs
- Organize Admin tab into Server Administration and Local Network sections
- Update service names to actual application names (Copyparty, Jellyfin)
- Add NAS Storage link for network management
- Improve service descriptions and icons
- Implement responsive design with Font Awesome icons
2025-09-09 21:11:57 +02:00
3d607d2f80 Update services documentation with WebDAV and permissions details
- Add comprehensive copyparty feature list and status
- Document WebDAV client setup (X-plore, rclone)
- Update permission structure with rwmd flags
- Add troubleshooting references for WebDAV issues
- Include working client configuration examples

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 22:05:44 +02:00
500f0afe29 Update README with current homelab service status
- Mark all major services as completed (file server, media server, SSL)
- Update repository structure with new config directories
- Fix troubleshooting documentation references
- Reflect current working state of homelab setup

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 22:05:35 +02:00
bb8d9a15c2 Update WebDAV troubleshooting guide with URL encoding fix
- Add section on URL encoding issues causing HTTP 400 errors
- Document nginx proxy_pass solution for preserving request URI
- Update final working configuration with HTTP/1.1 fixes
- Include Connection header and proxy_http_version settings

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 22:05:12 +02:00
4aaabdfb8e Fix nginx WebDAV URL encoding and HTTP protocol issues
- Change proxy_pass to preserve original request URI for URL encoding
- Add HTTP/1.1 and Connection header fixes for copyparty compatibility
- Remove path manipulation that broke files with spaces/special characters

Fixes HTTP 400 "bad headers" errors when uploading files with spaces
in filenames via WebDAV clients like X-plore.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 22:05:03 +02:00
11a4cb91a7 Update documentation with WebDAV and media integration
- Update CLAUDE.md with WebDAV client setup instructions
- Document rclone and X-plore File Manager configuration
- Add disk usage analysis tools (duf, dust, ncdu)
- Update services documentation status

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 19:42:18 +02:00
ffca3cb751 Reorganize troubleshooting documentation
- Move existing troubleshooting.md to docs/troubleshooting/ folder
- Add comprehensive WebDAV copyparty troubleshooting guide
- Document nginx 301 redirect issues and solutions
- Include debugging methodology and working configurations
- Add future troubleshooting commands and client settings

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 19:40:34 +02:00
a1d7128a41 Add Nextcloud Docker configuration with secure password handling
- Complete Docker Compose setup with MariaDB and Redis
- External storage mounts for existing homelab folders
- Secure password handling using Docker secrets from ~/creds/
- Configured for /cloud path with proper reverse proxy settings

Note: Nextcloud was tested but disabled in favor of copyparty for
file server functionality due to performance and complexity concerns.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 19:40:25 +02:00
a672412e14 Update landing page to re-enable copyparty and disable Nextcloud
- Re-enable File Server tile pointing to /files/
- Disable Nextcloud tile (greyed out, temporarily disabled)
- Add proper deployment header with target location

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 19:40:07 +02:00
b25378bfcf Fix nginx WebDAV support with merge_slashes and proxy_redirect
- Add merge_slashes off to prevent automatic redirects
- Add proxy_redirect off to stop nginx from modifying WebDAV responses
- Add explicit WebDAV method support (PUT, DELETE, PROPFIND, etc.)
- Add WebDAV-specific headers (Depth, Destination, etc.)
- Optimize for large file uploads and streaming

Fixes HTTP 301 errors that prevented WebDAV file uploads in clients
like X-plore File Manager.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 19:40:00 +02:00
aa176d806d Fix copyparty WebDAV delete permissions
Add explicit 'd' (delete) permission to user accounts to enable
WebDAV DELETE operations. Changed from 'rwm' to 'rwmd' permissions
for all user folders.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 19:39:39 +02:00
e725eab2bf Update services documentation with WebDAV and media integration
- Add WebDAV access information to copyparty configuration
- Confirm X-plore File Manager compatibility for Android folder uploads
- Update Jellyfin media library structure with private folder mount
- Mark Jellyfin as deployed in service architecture
- Document successful WebDAV folder upload testing
- Update service URLs and access methods

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 19:22:58 +02:00
0d97ad244b Add homelab service troubleshooting guide
- Document SSL certificate restoration after nginx updates
- Add WebDAV 301 error diagnosis and resolution
- Include media file sync troubleshooting between copyparty and Jellyfin
- Add service deployment best practices
- Provide step-by-step solutions for common configuration issues

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 19:22:48 +02:00
326d0caaf1 Update project documentation with WebDAV and media services
- Add copyparty and Jellyfin to current services list
- Include WebDAV URL for Android/desktop client access
- Add copyparty service management commands
- Document WebDAV client setup (X-plore, rclone, curl)
- Update external URLs to HTTPS with SSL certificates
- Add configuration management for new services

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 19:22:37 +02:00
a7137e79a9 Add private folder mount to Jellyfin media server
- Mount /home/hoborg/private as /media/private for shared access with copyparty
- Enable read-only access to private media files uploaded via copyparty WebDAV
- Maintain consistency between file server and media server folder access

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 19:22:27 +02:00
2cd1d874a8 Update nginx configuration with SSL and WebDAV support
- Add SSL certificate configuration from Let's Encrypt
- Include WebDAV headers for copyparty upload support (Depth, Destination, Overwrite, If)
- Configure HTTP to HTTPS redirect for all services
- Add SSL security settings managed by certbot
- Enable proxy_request_buffering off for WebDAV compatibility

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-18 19:22:17 +02:00
e26a30e4e4 Add copyparty file server configuration
- Add copyparty.conf with WebDAV-enabled file server setup
- Configure user accounts (guest, hoborg) with appropriate permissions
- Map shared directories: /shared, /documents, /music, /videos, /pictures, /private
- Enable security features: deduplication, authentication, file integrity
- Include deployment instructions in configuration comments
2025-08-18 19:22:06 +02:00
6d41440d4a Update TODO with completed tasks and new objectives
- Mark Jellyfin media server setup as completed
- Add music collection management tasks
- Update SSL certificate setup status
- Add service dockerization tracking
- Document completed troubleshooting tasks
- Add playlist extraction and legal music source research

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 20:58:27 +02:00
e97a0f641e Update services documentation with Jellyfin and improvements
- Add comprehensive Jellyfin media server documentation
- Document successful folder structure compatibility testing
- Update Copyparty URLs from /cloud to /files
- Add metadata management instructions for Jellyfin
- Include music collection management strategies
- Document SSL certificate setup completion

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 20:58:20 +02:00
a0fed3fbd8 Update Nginx configuration for media services
- Change Copyparty URL path from /cloud to /files
- Add Jellyfin media server reverse proxy at /media path
- Optimize streaming settings for video content
- Enable websocket support for real-time updates
- Configure large file handling and timeouts

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 20:58:10 +02:00
08a1ee3dd3 Add Jellyfin media server Docker configuration
- Docker compose setup with hardware acceleration support
- Network host mode for optimal streaming performance
- Volume mounts for config, cache, and media directories
- Memory limits and resource management
- Device access for GPU hardware transcoding
- Integration with existing media folder structure

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 20:57:59 +02:00
4c715e6028 Add copyparty file server with full integration
- Configure copyparty file server with user authentication
- Set up multi-volume structure (shared, documents, music, videos, private)
- Create systemd service for automatic startup
- Add Nginx reverse proxy integration on /cloud/ path
- Update documentation with complete setup and management guide
- Mark Gitea and file server tasks as completed in TODO

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 18:15:18 +02:00
114a752da7 Update Claude settings to allow voice assistant permissions
Add permission for mcp__voice-mode__converse tool to enable
voice conversations with the AI assistant.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 14:57:22 +02:00
7868c7763b Update project documentation with voice assistant integration
- Add AI voice assistant to goals and current status
- Include voice assistant in documentation structure
- Update repository structure diagram
- Add voice server commands to CLAUDE.md
- Include voice assistant service URLs and management commands

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 14:56:53 +02:00
e2b79e9662 Add comprehensive voice assistant documentation
- Complete setup guide for Piper TTS installation
- Voice model download instructions with multiple options
- API usage examples and troubleshooting guide
- Available voice models comparison table
- Integration instructions for Claude Code

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 14:56:42 +02:00
16081ec85e Add voice assistant convenience scripts
- enable-voice.sh: One-command setup for voice assistant
- Automatic prerequisite checking (Poetry, piper-tts, voice models)
- Voice model download with progress indicators
- Server startup with health testing
- Auto-generates disable-voice.sh for cleanup

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 14:56:28 +02:00
572434d42e Add professional voice assistant server implementation
- FastAPI-based TTS server using Piper neural text-to-speech
- Poetry for dependency management and virtual environments
- OpenAI-compatible API endpoints for seamless integration
- Support for multiple voice models (Ryan, Alan, Lessac)
- Robust error handling and voice fallback system
- Professional logging and configuration management
- Docker-ready with proper Python packaging

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-17 14:56:01 +02:00
82f9cc4990 Fix network boot issues and add power management configuration
- Resolve SSH lockout after reboot caused by systemd lid switch suspend
- Add systemd-logind configuration to disable lid switch handling
- Add NetworkManager configuration for static IP and power management
- Update network troubleshooting documentation with complete solution
- Include diagnostic commands and deployment steps

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-13 21:35:12 +02:00
6edc235129 Remove old documentation files after reorganization
Clean up root directory by removing documentation files that were moved to docs/ folder in previous commit.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-06 17:24:49 +02:00
1d8e277c9c Update TODO list with Nginx setup progress and task organization
- Mark Nginx reverse proxy setup as completed
- Add detailed steps for router port forwarding and SSL setup
- Reorganize Gitea configuration tasks with correct base URLs
- Update task structure to reflect current infrastructure state

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-06 17:24:25 +02:00
f7b5d26eab Reorganize repository structure and add configuration management
- Create organized directory structure:
  - docs/ for all documentation files
  - config/ for deployment configurations and scripts
- Add CLAUDE.md with project architecture and development workflow
- Update README.md with new structure and current status
- Move all documentation to docs/ directory
- Organize Docker and Nginx configurations under config/

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-06 17:24:11 +02:00
7ef8c62324 Clean up whitespace in README.md
Remove trailing space from network security line.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-03 22:56:31 +02:00
408d0c4e7b Add network interface troubleshooting guide
Document solution for IP address changes caused by dual ethernet ports:
- Identify three network interfaces (WiFi, eth left port, eth right port)
- Provide NetworkManager commands for static IP configuration
- Include step-by-step solution using "Wired connection 2" (enp4s0)
- Configure both ethernet and WiFi to use same static IP (192.168.0.100)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-03 22:56:18 +02:00
abb0b346d1 Update task completion status
Mark completed tasks from network troubleshooting session:
- SSH security hardening (port 2222, dual interface issue solved)
- Router port forwarding configuration
- TTY colors fix completed
- Reorganize TODO structure, remove completed high priority section

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-03 22:56:04 +02:00
09d96d2ffb Complete SSH hardening and network troubleshooting documentation
- SSH port change to 2222 completed and documented
- Dual ethernet interface issue resolved (enp4s0 vs enp3s0f0)
- Static IP configuration achieved (192.168.0.100)
- Mosh setup: local working, external blocked by ISP UDP filtering
- DuckDNS migration from cron script to router-based updates
- Added comprehensive security tool explanations (WireGuard, UFW, fail2ban)
- Network interface identification and MAC address issue resolution

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-03 22:53:34 +02:00
adeabb1aad Add claude config 2025-08-02 11:18:42 +02:00
40b21ce928 Add theme synchronization and laptop lid switch solutions
- Document comprehensive file-based theme management system for cross-application synchronization (tmux, nvim, terminal apps) using ~/.vim_theme
- Add laptop lid switch configuration to prevent sleep when lid is closed via systemd logind settings

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-01 21:38:39 +02:00
e3889870e5 Reorganize and update docs 2025-07-31 20:18:16 +02:00
50144e083e Add troubleshooting guide 2025-07-30 23:20:51 +02:00
3978d184ac Enhance SSH security documentation and update arch install notes
- ssh-setup-guide.md: Added comprehensive security hardening section with:
  * Non-standard port configuration (Port 2222)
  * Advanced SSH hardening settings (MaxAuthTries, ClientAlive, AllowUsers)
  * Dynamic DNS setup for remote access (DuckDNS, No-IP, Cloudflare)
  * fail2ban installation and VPN considerations
  * Additional security steps checklist

- arch-install-notes.md: Updated post-installation priorities with yadm setup

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 17:05:30 +02:00
80c19d6767 Document yadm dotfiles setup completion
Added comprehensive documentation of the yadm dotfiles management setup:

- README.md: Updated goals and status to reflect completed dotfiles setup
- yadm-setup-notes.md: Complete process documentation including:
  * Manual merge strategy preserving Arch Linux functionality
  * File-by-file configuration changes and optimizations
  * Submodule management and troubleshooting
  * Arch-specific adjustments (disabled linuxbrew, performance tuning)
  * Development environment highlights and security features
- arch-linux-setup.md: Marked development environment tasks as completed

The dotfiles setup phase is now fully documented with both process
details and configuration highlights for future reference.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-30 17:04:41 +02:00
9314b71b6a Complete Arch Linux installation and SSH setup
- Mark Arch Linux installation as completed on ThinkPad
- Configure SSH access with hostname resolution (homelab)
- Add comprehensive SSH setup guide with security hardening
- Document network planning and self-hosted services options
- Update progress tracking in README and installation notes

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-29 21:42:44 +02:00
91103ee7d4 Initial commit 2025-07-29 17:14:55 +02:00