FreedomBox Roadmap for the year 2019
This is an aggregation of inputs from multiple community members. The individual submissions are in a progress call log at FreedomBox/ProgressCalls/2019-02-24.
Big items
The items in this category require the attention of the whole team working in concert for an extended duration of time. The estimates show the time taken for one developer to complete the item.
- Reachability (~4 months)
- Tunneling using large number of IPs from Foundation (4 weeks)
- Strong Dynamic DNS support with good UX (5 weeks)
- Rewrite Dynamic DNS implementation (3 weeks)
- Migrate server to foundation infrastructure (1 week)
- Implement new plinth features (1 week)
- IPv6 support (1 week)
- Better Pagekite UX (1 week)
- Implement notifying users of port to open (1 week)
- Document DMZ etc. configuration in routers (2 days)
- Implement UPNP port opening (2 week)
FreedomBox app framework (~2 months)
Stabilize FreedomBox API (6 weeks)
Implement component architecture (3 weeks)
Migrate apps to new API (3 weeks)
Update developer documentation (2 days)
- App store and external plinth apps (2 weeks)
- Split couple of applications into separate apps
- Show web page with all available apps on freedombox.org?
- Nextcloud from a container (5 weeks)
- Framework for handling containers (2 weeks)
- Verify for free software and legal issues (2 days)
- Handle container upgrades (1 week)
- Handle proxying HTTP request to the container (2 days)
- Backup and restore (3 days)
- OAuth2/SAML authentication (3 days)
- Container security evaluation (3 days)
- Fediverse Social Network Application (~3.5 months)
- Packaging
- Pleroma (2 months - 280 hours)
- Mastodon (2 months - 280 hours)
- 70 dependencies (Ruby + JS combined)
- Plinth
- Subdomain setup (2 weeks)
- Create app (1 month)
- Packaging
Anonymous mode - Hidden FreedomBox (run only Tor) (3 weeks)
- Security (4 months)
Automated LE certificates (1 week 3 days)
Cleanup existing process (1 week)
Make it more automatic (3 days)
- More services to use LE certificates (1 week)
- Mumble
Quassel
- Infinoted?
- Container level security for daemons with systemd unit changes (3 months + 1 week)
Basic guide (1 week)
For each daemon and app write the unit changes (30 apps = 30 days)
- Submit changes to upstream and Debian packages (30 apps = 30 days)
- Show security precautions (4 days)
Show SSH key fingerprints (2 days)
- Show Mumble etc. fingerprints? (2 days)
- Sharing (~3 week)
- Add support for NFS (1 week)
Add support for Samba (1 week)
Add support for DLNA sharing (1 week)
- Email server (3 months + 1 week)
- MTA (2 weeks)
- MTA - Relay setup (1 week)
- IMAP server (3 days)
- Pop server (3 days)
- TLS setup (1 week)
- LDAP integration (1 week)
- Anti-virus server (3 days)
- Anti-spam server (3 days)
- Delivering without sending to spam (~1 month)
- Reverse DNS setup with bind and dynamic DNS (1 week)
- MX record (1 week)
- Action 1 (1 week)
- Action 2 (1 week)
- Webmail UI with existing roundcube (3 days)
- Fast search server (3 days)
FreedomBox as Identity server (~2 months)
Implement SAML2 for authentication in FreedomBox (2 weeks)
Implement OAuth2 + OpenID Connect for authentication in FreedomBox (2 weeks)
- Make Mediawiki use OAuth2/SAML (1 week)
Standards proposed by IndieWeb for dealing with OAuth2 shortcomings (2 weeks)
FreedomBox as a Router (1 month)
For the use case of attaching a Wi-Fi router after a FreedomBox
- IPv6 implementation fixes (1 week)
- IPv6 DHCP-PD (2 weeks)
- Static address allocation (1 week)
Small items
These items can be picked up and finished by one developer in less than a month's time.
- Hardware support
64-bit ARM board support (Pine 64, etc.)
Combined image for all A20 boards
Combined image for all 64-bit boards
- Android app feature completion
- Notifications
web
- mobile
- Infrastructure
Discourse Server
- DynamicDNS Server
- Better Wiki
Demo server
- Alternative downloads
BitTorrent
- Forgot password
- Unified file-sharing app
Kick coquelicot and implement in FreedomBox sharing app
Websites on FreedomBox
Perhaps with WordPress
- Static website generator
Card-based UI completion
Pioneer Edition release
- Distributed storage backend for backups (Tahoe-LAFS)
- Improve self-signing certificate UX during first-boot
- Usage analytics
- Supplement Debian's packaging mechanism
- Alternative package management systems
- Implement syncthing relay
- Printing server using CUPS
Relaunch of freedombox.org
Notification framework
Fix all major issues for Buster release.
Start uploads to stable-backports.
FreedomBox monitors itself and repairs itself.
- First boot issues
- self-signing certificate
- discovery on local network
- Windows issues with .local
pre-installing some critical apps like Backups
- integrating sub-domain name assignment to first boot process
- The return of Shaarli or something like it. Some central location to keep web addresses of interest would be great, independently of browsers or specific machines.