Replace Redis with Valkey
Summary
Obsolete Redis for Valkey due to Redis's license change to RASLv2/SSPL.
Owner
- Name: Jonathan Wright
- Email: jonathan@almalinux.org
Current status
- Targeted release: Fedora Linux 41
- Last updated: 2024-10-02
- Announced
- Discussion thread
- FESCo issue: #3203
- Tracker bug: #2293631
- Release notes tracker: #110
Detailed Description
We will replace Redis with Valkey due to the recent licensing changes in Redis, which have rendered it incompatible with Free and Open Source Software (FOSS) principles. This shift in Redis's licensing can impact Fedora's commitment to FOSS, potentially limiting users' freedom to modify and redistribute the software under the same terms. Valkey, a fork of Redis, emerges as a viable alternative because it retains a FOSS-compatible license and has robust community and developmental support. Adopting Valkey allows us to continue offering users a powerful in-memory data structure store without compromising on licensing restrictions.
Feedback
Benefit to Fedora
Redis previously used the BSD license. Redis's shift to the Server Side Public License (SSPL) that Fedora does not allow poses an issue. Valkey adheres to the original BSD licensing model, thus maintaining full FOSS compatibility. This commitment is bolstered by substantial backing from the Linux Foundation and the migration of many former Redis contributors to Valkey, ensuring a robust development environment and continuity of expertise.
As the package owner of Valkey in Fedora, my interactions with the Valkey upstream project have underscored their strong dedication to working with distributions. The Valkey team is responsive and proactive in discussions, which facilitates effective package management and integration within Fedora. Their commitment to open collaboration significantly benefits Fedora, ensuring that Valkey is not only technically sound, but also aligns with Fedora's principles and community values.
This shift to Valkey allows Fedora to maintain its leadership in offering powerful FOSS-aligned technologies while supporting a project that values open source integrity and collaboration. This is crucial for keeping Fedora at the forefront of providing robust, community-supported software solutions to its users.
Scope
- Proposal owners: add a valkey-compat package which will port Redis configurations to Valkey. Valkey 7.2.5 is 100% compatible with Redis. Add "Obsolete: redis" to valkey-compat package. valkey-compat will require valkey. This will allow us to eventually retire the valkey-compat sub-package at some point in the future.
- Other developers: N/A
- Release engineering: N/A
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with Community Initiatives: N/A
Upgrade/compatibility impact
When upgrading to Fedora Linux 41, systems with redis
installed will be switched to valkey
via the valkey-compat
package. The change should be mostly transparent to users as the valkey-compat
package provides config and data migration for most common configurations. The valkey systemd units will have aliases for redis to ease the migration for users.
How To Test
A COPR is available at https://copr.fedorainfracloud.org/coprs/jonathanspw/valkey/ with the "Obsoletes" in place so the migration script can be tested.
User Experience
This is intended to be as invisible to users as possible. If the change proposal is approved the valkey serviced units will be aliased to redis.service to ease the transition.
Dependencies
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) Do not obsolete Redis with Valkey
- Contingency deadline: N/A
- Blocks release? No
Documentation
N/A (not a System Wide Change)