Merge pull request 'Editorial nits' (#2) from fricklerhandwerk/fedi-goals:rewrite-edits into rewrite

Reviewed-on: #2
This commit is contained in:
Kiara Grouwstra 2025-06-11 18:38:28 +02:00
commit 53c23dc1af
5 changed files with 87 additions and 74 deletions

1
.gitignore vendored
View file

@ -1,3 +1,4 @@
result
*.err *.err
*.odt *.odt
*.html *.html

View file

@ -1,11 +1,11 @@
# fediversity proposal # Fediversity project proposal
## usage Build a PDF:
```sh > **Note**
nix-shell >
pandoc architecture.md -o architecture.html > It will take a while to download dependencies!
pandoc architecture.html -o architecture.pdf
pandoc --filter pandoc-include fediversity.md -o fediversity.html ```bash
pandoc fediversity.html -o fediversity.pdf nix-build -A pdf
``` ```

28
default.nix Normal file
View file

@ -0,0 +1,28 @@
{
pkgs ? import <nixpkgs> { },
}:
{
shell = pkgs.mkShellNoCC {
packages = with pkgs; [
pandoc
pandoc-include
texliveMedium
librsvg
];
};
pdf =
pkgs.runCommand "fediversity"
{
buildInputs = with pkgs; [
pandoc
pandoc-include
texliveMedium
librsvg
];
}
''
mkdir -p $out
pandoc ${./architecture.md} -o $out/architecture.pdf
pandoc --filter pandoc-include ${./fediversity.md} -o $out/fediversity.pdf
'';
}

View file

@ -18,7 +18,7 @@
| 2023-10-12 | Page 41 | Updated Gant Chart | | 2023-10-12 | Page 41 | Updated Gant Chart |
| 2023-10-12 | Page 3 | Added Open Source, Open Standards, Open Dependencies | | 2023-10-12 | Page 3 | Added Open Source, Open Standards, Open Dependencies |
| 2023-10-12 | Page 15 | Added work package interdependencies and added a new page | | 2023-10-12 | Page 15 | Added work package interdependencies and added a new page |
| 2025-05-xx | Page x | See https://git.fediversity.eu/kiara/fedi-goals/commits/branch/main | | 2025-06-12 | Page x | See https://git.fediversity.eu/kiara/fedi-goals/commits/branch/main |
# Preamble # Preamble
@ -40,57 +40,40 @@ No software specific for or usable by any single organisation will be created or
*Fediversity: Privacy-friendly, sustainable, transparent fair.* *Fediversity: Privacy-friendly, sustainable, transparent fair.*
The Open Internet Discourse Foundation project Fediversity is an effort to bring individuals and institutions easy-to-use, portable digital services with personal freedom at their core. The Open Internet Discourse Foundation's project **Fediversity** is an effort to bring individuals and institutions easy-to-use, portable digital services with personal freedom at their core.
We want to help provide everyone with high-quality, secure IT systems for everyday use. We want to help provide everyone with high-quality, secure IT systems for everyday use.
Without tracking, without exploitation, in a way that makes sustainable use of the world. Without tracking, without exploitation, in a way that makes sustainable use of the world.
The goal of this project is offer an **alternative to centralised online services and companies that operate closed ecosystems**, thus creating a major impact on the future of the internet, our societies and economies — a unique and meaningful contribution to the *Next Generation Internet* initiative. The goal of this project is offer an **alternative to centralised online services and companies that operate closed ecosystems**, thus creating a major impact on the future of the internet, our societies and economies — a unique and meaningful contribution to the *Next Generation Internet* initiative.
This objective aligns with the work programme topic by advancing the development of alternative digital solutions that are more user-centric and transparent. This objective aligns with the work programme topic by advancing the development of alternative digital solutions that are more user-centric and transparent.
The key technical aspect of Fediversity is to provide the framework for applications to easily switch between different hosting providers, or to their own infrastructure, without losing their data. The key technical aspect of Fediversity is to provide the framework for networked applications to easily migrate between different hosting providers, or to their own infrastructure, while retaining full control over user data.
This objective is important as it promotes user control and choice, without being locked into a particular platform or service. This objective is important as it promotes technological sovereignity and choice, and offers an alternative to locking users into a particular platform or service.
It would be a unique feature beyond what is currently available on the market. It would be a unique feature beyond what is currently available on the market.
Concretely, we aim to achieve this using the following sub-goals: Concretely, we aim to achieve the following objectives[^1]:
1. Implement a way to run online services emphasising user autonomy and data portability; 1. **Implement** a way to run online services emphasising user autonomy and data portability;
1. Disseminate our results by engaging the open-source community to further expand on work in this direction; 1. **Disseminate** our results by engaging the open-source community to further expand on work in this direction;
1. Exploit our work by enabling reproducible deployments of an initial set of portable applications. 1. **Exploit** our work by enabling reproducible deployments of an initial set of portable applications.
[^1]: [Disseminaton and exploitation of research results](https://research-and-innovation.ec.europa.eu/strategy/dissemination-and-exploitation-research-results) defines the terminology we use to frame our objectives.
In addition, the team will ensure that all parts of our services use **open-source software**. In addition, the team will ensure that all parts of our services use **open-source software**.
This will promote transparency and gives users the freedom to use, modify, and distribute the software as they see fit, without artificial restrictions or limitations. This will promote transparency and gives users the freedom to use, modify, and distribute the software as they see fit, without artificial restrictions or limitations.
### Relevance ### Relevance
This proposal is highly relevant to the HORIZON EU Programme, specifically to the Human-centric Internet topic. This proposal is highly relevant to the [Horizon Europe programme](https://commission.europa.eu/funding-tenders/find-funding/eu-funding-programmes/horizon-europe), specifically to the [Next Generation Internet](https://cordis.europa.eu/programme/id/HORIZON_HORIZON-CL4-2023-HUMAN-01-11) fund.
The objective of this topic is to support research and innovation in creating a more human-centric internet that prioritises user privacy, security, and control, while also promoting the ethical use of technology. The objective of this topic is to support research and innovation in creating a more human-centric internet that prioritises user privacy, security, and control, while also promoting the ethical use of technology.
The proposed work aligns with this objective by show-casing a way to run digital services that prioritises user control and privacy, and by using open-source software to promote transparency and ethical use. The proposed work aligns with this objective by show-casing a way to run digital services that prioritises user control and data protection, and by using open-source software to promote transparency and ethical use.
### Measurability ### Measurability
Tests will concisely describe the abilities the Fediversity system provides. Tests will concisely describe the abilities the Fediversity system provides.
these tests can be run on any sufficiently powerful machine with Nix installed, and reliably validate that the use cases work as intended. These tests can be run on any sufficiently powerful machine with [Nix](https://nixos.org) installed, and reliably validate that the use cases work as intended.
The proposed work is realistically achievable. The proposed work is realistically achievable.
## Application support
To demonstrate our functionality, we integrate our work with NGI Zero project [SelfHostBlocks](https://github.com/ibizaman/selfhostblocks), which offers the interfaces for applications to indicate their needs, for our purpose of data portability notably including back-up and restore, and is in the process of [preparing an RFC](https://discourse.nixos.org/t/pre-rfc-decouple-services-using-structured-typing/58257) to get these practices upstreamed to nixpkgs.
At the time of writing, applications it supports include:
- [Arr](https://wiki.servarr.com/)
- [Audiobookshelf](https://www.audiobookshelf.org/)
- [Deluge](https://deluge-torrent.org/)
- [Forgejo](https://forgejo.org/)
- [Grocy](https://grocy.info/)
- [Hledger](https://hledger.org/)
- [Home Assistant](https://www.home-assistant.io/)
- [Jellyfin](https://jellyfin.org/)
- [Nextcloud](https://nextcloud.com/)
- [Vaultwarden](https://github.com/dani-garcia/vaultwarden)
The result of the work should be generic enough to support any NGI packages implementing such interfaces.
## Methodology challenges ## Methodology challenges
One of the challenges we have identified is ensuring the security and privacy of our users' data, even if we will not collect this directly. One of the challenges we have identified is ensuring the security and privacy of our users' data, even if we will not collect this directly.
@ -121,49 +104,49 @@ This diagram graphically represents the relations:
## Project's pathways towards impact ## Project's pathways towards impact
Outcomes:
- Freedom of choice in the tools to use and (possibly) even alter to your own liking.
- The democratic process may be safeguarded.
Target groups: Target groups:
- Hosting companies looking to offer open-source applications. - Hosting companies looking to offer open-source applications.
- Developers looking to expand on the available applications respecting user autonomy. - Developers looking to expand on the available applications respecting user autonomy.
General outcomes: Societal outcomes:
The outcomes and impacts of your project may:
- Give a better understanding of how to implement, maintain and run open-source managed applications respecting user autonomy.
- Give companies and organizations that specialize in web hosting a better starting point in offering such applications. - Give companies and organizations that specialize in web hosting a better starting point in offering such applications.
- The proposed platform could contribute to the creation of a more open and democratic digital landscape, where users have more control over their data and online interactions.
- The platform's focus on privacy and data portability could lead to greater trust in open-source digital platforms, which in turn could lead to increased participation and innovation.
Technological outcomes: Technological outcomes:
- Establish a better understanding of how to implement, maintain and run open-source managed applications respecting user autonomy.
- An increase in solutions around autonomous managed applications as well as in number of software packages supported by such solutions. - An increase in solutions around autonomous managed applications as well as in number of software packages supported by such solutions.
- Increased engagement with and innovation around open-source software, stemming from lowered barriers toward their adoption. - Increased engagement with and innovation around open-source software, stemming from lowered barriers toward their adoption.
Economic outcomes: Economic outcomes:
- An uptake in the number of open-source managed applications offered by web hosts, as it becomes easier to offer these. - An uptake in the number of open-source managed applications offered by web hosts, as it becomes easier to offer these.
- Reduction in cost of running applications that preserve users' control over their data.
- Increased adoption of privacy-respecting software, as it becomes easier to consume these through the above-mentioned hosts. - Increased adoption of privacy-respecting software, as it becomes easier to consume these through the above-mentioned hosts.
Societal outcomes:
- The proposed platform could contribute to the creation of a more open and democratic digital landscape, where users have more control over their data and online interactions.
- The platform's focus on privacy and data portability could lead to greater trust in open-source digital platforms, which in turn could lead to increased participation and innovation.
Some specific possible quantitative estimates include: Some specific possible quantitative estimates include:
1. Developer engagement: 1. Developer engagement:
Given that making portable services the default will need more of the open-source community to engage on this issue, we may measure for example developer engagement in social channels, support channels, issue trackers, as well as code forge metrics such as bookmarks, forks, merge requests, and third-party projects building upon our work or citing us as a source of inspiration. Given that making portable services the default will need more of the open-source community to engage on this issue, we may measure for example developer engagement in social channels, support channels, issue trackers, as well as code forge metrics such as bookmarks, forks, merge requests, and third-party projects building upon our work or citing us as a source of inspiration.
1. User adoption: 1. User adoption:
If our project is successful in providing a user-friendly and privacy-focused platform for digital autonomy, it could attract a significant number of users. If our project is successful in providing a user-friendly and privacy-focused platform for digital autonomy, it could attract a significant number of users.
1. Cost savings: 1. Cost savings:
By promoting the use of open-source software and decentralised infrastructure, our project could lead to cost savings for public organisations. By promoting the use of open-source software and decentralised infrastructure, our project could lead to cost savings for public organisations.
1. Data portability: 1. Data portability:
The focus on data portability could have significant benefits for users, allowing them to easily switch between online platforms and take their data with them. The focus on data portability could have significant benefits for users, allowing them to easily switch between online platforms and take their data with them.
1. Market disruption: 1. Market disruption:
If our project is successful, it could have far-reaching impacts. If our project is successful, it could have far-reaching impacts.
For example, if our software gains a significant share of the market, it could lead to more competition among online software services, potentially leading to improved user privacy and better options for data management. For example, if our software gains a significant share of the market, it could lead to more competition among online software services, potentially leading to improved user privacy and better options for data management.
@ -171,12 +154,17 @@ There are several requirements and potential barriers that may determine whether
Some of them are: Some of them are:
1. Technical challenges: 1. Technical challenges:
As seen in our technology section, our project encompasses bridging numerous existing software packages, meaning project success depends on successfully integrating these. As seen in our technology section, our project encompasses bridging numerous existing software packages, meaning project success depends on successfully integrating these.
1. Funding and resources: 1. Funding and resources:
The project will require adequate funding and resources to achieve its desired outcomes and impacts. The project will require adequate funding and resources to achieve its desired outcomes and impacts.
The project team will need to secure sufficient funding and resources to cover the costs of software development, partnerships, and promotion. The project team will need to secure sufficient funding and resources to cover the costs of software development, partnerships, and promotion.
Failure to secure adequate funding and resources may limit the project's ability to achieve its desired outcomes and impacts. Failure to secure adequate funding and resources may limit the project's ability to achieve its desired outcomes and impacts.
1. Competition: 1. Competition:
The project will face competition from other digital service offerings, including properietary ones and offerings oriented at self-hosting open-source projects. The project will face competition from other digital service offerings, including properietary ones and offerings oriented at self-hosting open-source projects.
The project team will need to differentiate the platform and demonstrate its unique features and benefits. The project team will need to differentiate the platform and demonstrate its unique features and benefits.
Failure to differentiate the platform from its competitors may limit the project's ability to achieve its desired outcomes and impacts. Failure to differentiate the platform from its competitors may limit the project's ability to achieve its desired outcomes and impacts.
@ -193,10 +181,15 @@ We've identified multiple dissemination measures we can apply to our project in
1. Offering automated dev-ops workflows. 1. Offering automated dev-ops workflows.
1. Ensuring external developers empowered to contribute: 1. Ensuring external developers empowered to contribute:
We want for external developers to feel empowered similar to core developers, which we aim to achieve using accessible documentation, reproducible project infrastructure, tests doubling as live documentation of our components, a module upstreamed to nixpkgs, as well as by offering a familiar interface by making our core abstraction a NixOS configuration. We want for external developers to feel empowered similar to core developers, which we aim to achieve using accessible documentation, reproducible project infrastructure, tests doubling as live documentation of our components, a module upstreamed to nixpkgs, as well as by offering a familiar interface by making our core abstraction a NixOS configuration.
1. Developing key messages: 1. Developing key messages:
We'll develop clear, concise, and compelling messaging that highlight the benefits and unique features of our project, such as the focus on **user control**, **privacy**, and **data & service portability**.
We'll develop clear, concise, and compelling messaging that highlight the benefits and unique features of our project, such as the focus on **user control**, **data protection**, and **service portability**.
1. Using multiple channels: 1. Using multiple channels:
We will be utilising a variety of channels to reach our target audiences outlined above, among which through online communities, social media, webinars, blog posts, tech conferences and press releases. We will be utilising a variety of channels to reach our target audiences outlined above, among which through online communities, social media, webinars, blog posts, tech conferences and press releases.
Concrete examples of dissemination activities for our project will include: Concrete examples of dissemination activities for our project will include:
@ -206,7 +199,7 @@ Concrete examples of dissemination activities for our project will include:
- Creating a comprehensive user guide and knowledge base that provides detailed instructions and answers to common questions about the software, and making this guide available on the platform's website and social media channels. - Creating a comprehensive user guide and knowledge base that provides detailed instructions and answers to common questions about the software, and making this guide available on the platform's website and social media channels.
- Hosting a webinar series that showcases the features and functionalities of our software, and provides tips and best practices for using it effectively. - Hosting a webinar series that showcases the features and functionalities of our software, and provides tips and best practices for using it effectively.
- Participating in relevant conferences and events to raise awareness of our project and engage with potential users and partners, such as those focused on Nix, and showcasing our software in demos and presentations. - Participating in relevant conferences and events to raise awareness of our project and engage with potential users and partners, such as those focused on Nix, and showcasing our software in demos and presentations.
These will include developer events like [NixCon](https://nixcon.org), [FOSDEM](https://fosdem.org/) and [CCC Congress](https://events.ccc.de/) to inform a diverse audience of the benefits of our stack and the other NGI technology solutions we are promoting. These will include developer events such as [NixCon](https://nixcon.org), [FOSDEM](https://fosdem.org/) and [CCC Congress](https://events.ccc.de/) to inform a diverse audience of the benefits of our stack and the other NGI technology solutions we are promoting.
### Communication ### Communication
@ -217,10 +210,13 @@ Our communication strategies are already partially integrated in the disseminati
There are several communication strategies and measures that we will utilise during the whole lifespan of the project: There are several communication strategies and measures that we will utilise during the whole lifespan of the project:
1. Developing a project website: 1. Developing a project website:
A project website will serve as a central hub of information about our project. A project website will serve as a central hub of information about our project.
It will be used to share updates, news, publications, and other project-related information. It will be used to share updates, news, publications, and other project-related information.
The website will be designed to be accessible and user-friendly. The website will be designed to be accessible and user-friendly.
1. Using social media: 1. Using social media:
We will reach out to Fediverse channels (e.g. Mastodon, Pixelfed, Peertube and Owncast) as well as commercial social media platforms such as BlueSky, Threads, and LinkedIn to reach a wider audience and share project-related news and updates. We will reach out to Fediverse channels (e.g. Mastodon, Pixelfed, Peertube and Owncast) as well as commercial social media platforms such as BlueSky, Threads, and LinkedIn to reach a wider audience and share project-related news and updates.
Social media are used to engage with stakeholders and respond to their queries and feedback. Social media are used to engage with stakeholders and respond to their queries and feedback.
While our values may be closer aligned with the open-source social media, we will also still have use for the commercial ones to spread our message initially. While our values may be closer aligned with the open-source social media, we will also still have use for the commercial ones to spread our message initially.
@ -399,7 +395,7 @@ Other ethics issues
As detailed in Part B, Fediversity in addition to pursuing its goals directly, will further contribute 15% of its budget to the development of related digital commons through financial support in the form of grants awarded to third parties through bi-monthly open calls for proposals. As detailed in Part B, Fediversity in addition to pursuing its goals directly, will further contribute 15% of its budget to the development of related digital commons through financial support in the form of grants awarded to third parties through bi-monthly open calls for proposals.
In this annexe we describe the following aspects of this financial support by detailing our approach to managing a dedicated fund supporting a series of open calls related to Fediversity: In this annex we describe the following aspects of this financial support by detailing our approach to managing a dedicated fund supporting a series of open calls related to Fediversity:
- Objectives and results obtained of third party financial support - Objectives and results obtained of third party financial support
- Specifications of third party financial support - Specifications of third party financial support

View file

@ -1,13 +1 @@
{ (import ./. { }).shell
pkgs ? import <nixpkgs> { },
}:
{
shell = pkgs.mkShellNoCC {
packages = with pkgs; [
pandoc
pandoc-include
texliveMedium
librsvg
];
};
}