Deploying Salut a Toi
Introduction
Salut a Toi (SaT), also known as Libervia, is an open-source decentralized communication platform built on the XMPP protocol. It goes beyond simple instant messaging to provide a comprehensive suite of communication and collaboration tools, all based on open standards and federation.
The project aims to provide an ethical alternative to centralized platforms, giving users control over their data while enabling seamless communication across different servers. Libervia’s web interface provides access to all features without requiring desktop software installation.
Key highlights of Salut a Toi:
- XMPP Foundation: Built on open, federated standards
- Multi-Frontend: Web, desktop, command-line, and Android interfaces
- Instant Messaging: One-to-one and group conversations
- Microblogging: Decentralized social media features
- File Sharing: Secure peer-to-peer and server-mediated transfers
- Photo Albums: Share and organize photos
- Event Planning: Calendar and event organization
- Ticket System: Collaborative issue tracking
- End-to-End Encryption: OMEMO encryption support
- Federation: Communicate with any XMPP server
- Privacy Focused: Decentralized by design
This guide walks through deploying Libervia (Salut a Toi’s web interface) on Klutch.sh using Docker and configuring the communication platform.
Why Deploy Salut a Toi on Klutch.sh
Deploying Salut a Toi on Klutch.sh provides several advantages for decentralized communication:
Simplified Deployment: Klutch.sh automatically builds your Libervia configuration without complex setup.
Persistent Storage: Attach volumes for message history, files, and configuration.
HTTPS by Default: Secure web access with automatic SSL certificates.
GitHub Integration: Store configuration in version control for reproducible deployments.
Federation Support: Connect with the broader XMPP network from a reliable host.
Always-On Messaging: 24/7 availability for message delivery and synchronization.
Prerequisites
Before deploying Salut a Toi on Klutch.sh, ensure you have:
- A Klutch.sh account
- A GitHub account with a repository for your configuration
- Basic familiarity with Docker and XMPP concepts
- An XMPP server (or plan to connect to existing accounts)
- (Optional) A custom domain for your Libervia instance
Deploying Salut a Toi on Klutch.sh
- Select HTTP as the traffic type
- Set the internal port to 8080
Create Your Repository
Create a new GitHub repository for your deployment. Add a Dockerfile:
FROM debian:bookworm
RUN apt-get update && apt-get install -y \ python3 \ python3-pip \ python3-venv \ && rm -rf /var/lib/apt/lists/*
RUN python3 -m venv /opt/liberviaRUN /opt/libervia/bin/pip install libervia
ENV PATH="/opt/libervia/bin:$PATH"ENV LIBERVIA_PORT=8080
EXPOSE 8080
HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ CMD curl -f http://localhost:8080/ || exit 1
CMD ["libervia", "web", "--port", "8080"]Push to GitHub
Commit and push your Dockerfile to your GitHub repository.
Create a New Project on Klutch.sh
Navigate to the Klutch.sh dashboard and create a new project.
Create a New App
Within your project, create a new app. Connect your GitHub account and select your repository.
Configure HTTP Traffic
In the deployment settings:
Set Environment Variables
Configure Libervia settings:
| Variable | Value |
|---|---|
LIBERVIA_PORT | 8080 |
Attach Persistent Volumes
Add volumes for data persistence:
| Mount Path | Recommended Size | Purpose |
|---|---|---|
/var/lib/libervia | 20 GB | Application data |
/root/.config/libervia | 1 GB | Configuration |
Deploy Your Application
Click Deploy to start the build process.
Access Libervia
Once deployed, access your Libervia web interface at the provided URL.
Initial Configuration
First-Time Setup
Configure Libervia after deployment:
- Access the web interface
- Create or connect XMPP account
- Configure server settings
- Set up profile information
XMPP Account Configuration
Connect your XMPP identity:
- Enter JID (user@domain.com)
- Provide password
- Configure server if non-standard
- Test connection
Features
Instant Messaging
Real-time communication:
- One-to-one conversations
- Group chats (MUC)
- Message history
- Typing notifications
- Read receipts
Microblogging
Decentralized social features:
- Status updates
- Comments and likes
- Following/followers
- Public and private posts
- Federation with other XMPP nodes
File Sharing
Share files securely:
- Direct file transfers
- Server-mediated transfers
- Photo galleries
- Document sharing
Events and Calendar
Organize activities:
- Create events
- Send invitations
- RSVP tracking
- Calendar integration
Ticket System
Collaborative issue tracking:
- Create tickets
- Assign and track
- Comments and updates
- Status management
Security Configuration
End-to-End Encryption
Enable OMEMO encryption:
- Access security settings
- Enable OMEMO
- Verify device keys
- Trust contacts
Account Security
Protect your account:
- Strong password
- Session management
- Login notifications
Client Connectivity
Web Interface
Access via browser:
- Responsive design
- All features available
- No installation required
Desktop Client
Install Cagou for desktop:
pip install cagouCommand Line
Use jp for CLI access:
jp message send user@domain.com "Hello!"Mobile
Android app available:
- Download from F-Droid
- Configure XMPP account
- Sync with server
Federation
XMPP Interoperability
Connect with the XMPP network:
- Add contacts from any server
- Join rooms on other servers
- Federated microblogging
Server-to-Server
Configure S2S communication:
- Automatic discovery
- Secure connections
- Federation policies
Administration
User Management
Manage local users:
- Create accounts
- Set permissions
- Monitor activity
Server Settings
Configure server behavior:
- Rate limiting
- Storage quotas
- Federation policies
Customization
Theme Configuration
Customize appearance:
- Color schemes
- Logo and branding
- Layout options
Plugin System
Extend functionality:
- Browse available plugins
- Install and configure
- Develop custom plugins
Troubleshooting
Connection Issues
- Verify XMPP server accessibility
- Check credentials
- Review firewall rules
- Test with other clients
Message Delivery
- Check contact online status
- Verify encryption settings
- Review server logs
Performance
- Monitor resource usage
- Optimize database
- Configure caching
Additional Resources
- Libervia Official Website
- Libervia Documentation
- Libervia Repository
- XMPP Standards Foundation
- Klutch.sh Persistent Volumes
- Klutch.sh Deployments
Conclusion
Deploying Salut a Toi (Libervia) on Klutch.sh provides a comprehensive, decentralized communication platform. With instant messaging, microblogging, file sharing, and more - all built on open XMPP standards - you get freedom from centralized platforms while maintaining full connectivity. Combined with Klutch.sh’s reliable hosting, you have an always-available communication hub that respects user privacy and promotes open standards.