As part of the Digital Wellbeing / Parental Controls work funded by Endless, the GNOME Foundation is seeking proposals from qualified contractors or teams to design and implement a comprehensive desktop-wide web/network filtering solution for the GNOME desktop.
Project Overview
The proposed solution should address the following key objectives:
- Avoid tracking and advertising
- Manage distractions on a time basis
- Filter undesirable content from a wellbeing perspective (e.g., avoiding gambling or other addictive/triggering content)
- Allow enforced settings to filter undesirable sites, or only allow access to specifically approved sites, through GNOME’s existing Parental Controls framework
Required Experience and Knowledge
Candidates should demonstrate expertise in:
- Gtk/Adwaita user interfaces
- GNOME technology stack (D-Bus, Control Center, Settings, etc.)
- Networking layer (e.g., iptables, systemd-resolved)
- Containerized applications (e.g., network namespaces, BPF, Flatpak and Snap)
Technical Approach
We believe that working at the DNS level provides a pragmatic approach to offering a comprehensive implementation, to account for all browsers and applications that users can use to access network content. We can draw on technology and/or community-maintained site lists from projects such as Pi-hole, and implement at the desktop or system level so that the filtering is available to users on any network or with any application. It may also be necessary to consider when any network-level sandboxing or filtering is also needed to ensure the proper functioning of the filtering.
The successful candidate(s) will be expected to:
- Design technical approaches in collaboration with relevant upstream projects
- Implement according to the agreed technical approaches and designs from the GNOME Design Team
- Submit implementations upstream
- Allow for time within the project scope to respond to and incorporate upstream review feedback
Budget
Available budget: $26,000
Individual hourly rates are not to exceed $55 USD per hour without prior agreement with the Foundation.
Eligibility
We welcome applications from:
- Individuals
- Teams
- Consultancies active in the GNOME and wider Linux desktop community
We strongly encourage candidates from diverse and underrepresented backgrounds, as well as those who are not already employed full-time in this space.
Application Requirements
Please submit your application including:
- An introduction to yourself and/or your team
- Details of your relevant previous work in this domain
- A breakdown of your proposed work in packages, including:
- Estimated time for each work package
- Estimated cost for each work package
Partial applications are also welcome, which propose to implement a necessary part of the system, and we may choose to appoint multiple such contractors to build the complete architecture. e.g. I will implement this filtering in systemd-resolved together with this new Flatpak feature to ensure all DNS traffic is handled by systemd-resolved, but I will not do the policy or UI work.
Additional Support
Support will be provided by the GNOME Foundation and GNOME Design Team throughout the project. The existing team working on Digital Wellbeing, Philip Withnall and Sam Hewitt, can advise on technical and design requirements and how to integrate with the existing work on screen and app time limits.
Submission Instructions
For more information or if you have any queries to prepare your submission, please post here on Discourse or join #digital-wellbeing:gnome.org to discuss with the team.
Proposals must be submitted to wellbeing@gnome.org by the end of Wednesday 18th December.