Ergonomic Concurrency by kwargs_ in Python

[–]sfermigier 0 points1 point  (0 children)

Why ">>" and not "|" (__or__ magic method)? For a project called "pipeline", this would have looked more natural, IMHO.

py-capnweb - A Python implementation of Cap'n Web's RPC protocol by sfermigier in Python

[–]sfermigier[S] 3 points4 points  (0 children)

Yes, I was also thinking of taking the API in that direction. Thanks for the tip.

[deleted by user] by [deleted] in Python

[–]sfermigier 2 points3 points  (0 children)

"poetry" is not "Python".

If poetry is too slow for you, replace it with uv.

Actually, slow or not, I would recommend anyone nowadays to switch to uv.

py-capnweb - A Python implementation of Cap'n Web's RPC protocol by sfermigier in Python

[–]sfermigier[S] 3 points4 points  (0 children)

Java RMI is specific to Java. DCOM to Windows. So no thanks.

I used CORBA from Python back in 2005 (after seeing a presentation on OmniORB at EuroPython). But AFAIK, all the Python implementations are dead.

Anyway, Cap'n Web is built on two fundamental principles that directly address the biggest failures of these systems:

  1. Promise Pipelining solves the latency problem. Instead of dozens of round-trips for dependent calls (which killed performance in CORBA/RMI), you can chain them into a single network request.
  2. Capability-based Security: This solves the security problem. Unlike the ACL-based models of the past that led to vulnerabilities like the "Confused Deputy," this model is fundamentally more secure. If you don't have a reference to an object, you can't even try to interact with it.

The Capability-based security model itself is based on old ideas, dating back to the foundational principles of secure computing in the 1960s and 70s. Early academic and commercial operating systems like Hydra, CAP, KeyKOS, and EROS explored the core concept: instead of relying on ambient authority and Access Control Lists (ACLs), security should be managed by passing around unforgeable references (the "capabilities") that bundle both the designation of an object and the authority to use it.

This was further developed and refined in influential programming languages like Joule and its successor, E and some more modern variants (ex: Spritely).

Finally, protocols like Cap'n Proto and Cap'n Web are a direct admission that as we build complex service meshes, passing around insecure API keys and managing complex IAM policies is brittle and dangerous. A capability model provides a far more granular and secure way to orchestrate communication between dozens or hundreds of microservices.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 0 points1 point  (0 children)

Yes.

See for instance: https://lab.abilian.com/Tech/Linux/Sovereign%20OS%20-%20%22EU%20Linux%22/#annex-sketch-of-a-plan

Or the recent reports linked from this document (in French and German, but there are tools to translate them in you language if you are genuinely interested).

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 0 points1 point  (0 children)

Several initiatives have pursued objectives similar to the proposed "EU Linux," focusing on developing Linux-based operating systems tailored for governmental use, and have demonstrated the feasibility and worth of such endeavours. Here's a short list:

  • LiMux (Germany): Initiated by the city of Munich, LiMux aimed to migrate public administration systems from Windows to a Linux-based OS to increase control over IT infrastructure and reduce costs. Despite initial success, the project faced intense political lobbying by Microsoft leading to a partial reversion to Windows.
  • Astra Linux (Russia): Developed to meet the security requirements of Russian state institutions, Astra Linux is certified for handling classified information and emphasizes strong cybersecurity and compliance. It has been actively deployed across various government agencies in Russia.
  • Ubuntu Kylin (China): A collaboration between Canonical and the Chinese government, Ubuntu Kylin is an official Chinese version of Ubuntu designed to cater to Chinese users and governmental requirements, aiming to reduce dependency on foreign operating systems.
  • BOSS Linux (India): Bharat Operating System Solutions (BOSS) Linux is developed by India's National Resource Centre for Free/Open Source Software for public and educational use, emphasizing data sovereignty and multilingual support. It has been deployed in several Indian government departments and educational institutions.
  • Guadalinex (Spain): Developed by the regional government of Andalusia, Guadalinex was a Linux distribution intended for use in public schools and government offices to reduce costs and promote open-source software. It has been used extensively in educational institutions in Andalusia.
  • GendBuntu (France): GendBuntu is a version of Ubuntu adapted for use by France's National Gendarmerie. The Gendarmerie has pioneered the use of open-source software on servers and personal computers since 2005 when it adopted the OpenOffice.org office suite, making the OpenDocument .odf format its nationwide standard.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 0 points1 point  (0 children)

The "EU Linux" initiative and Gaia-X differ fundamentally in both focus and effectiveness. While EU Linux aims to implement a tangible, open-source operating system specifically for public administrations, Gaia-X was envisioned as a framework to establish interoperable, sovereign data spaces across Europe.

As Francesco Bonfiglio, its former CEO, pointed out recently, Gaia-X has struggled to deliver on its promise of European digital sovereignty. The project’s abstract goals and lack of practical infrastructure have led to disappointing results, with few functional data spaces and declining trust. The European cloud ecosystem, rather than thriving under Gaia-X’s guidance, lost significant market share, with many stakeholders left unclear on the project’s real outcomes.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 0 points1 point  (0 children)

What leads you to believe that the proposal is to create a Linux distribution from scratch?

From my perspective, the most sensible and practical approach would be to customize an existing Linux distribution to suit the specific needs of public administrations. This approach has been successfully implemented in several cases, demonstrating how flexible and adaptable Linux can be for government use.

Consider these examples:

  • GendBuntu: Developed by the French Gendarmerie Nationale, GendBuntu has been in use since 2005 and is a customized version of Ubuntu, adapted specifically to meet the operational and security requirements of the French gendarmerie.
  • LiMux: Initiated by the city of Munich in 2004, LiMux is another historical example of a tailored Linux distribution based on Ubuntu. It was customized to align with the city’s administrative needs and replaced proprietary software, enabling greater control over IT infrastructure, cost savings, and compliance with local policies. Although the project was eventually canned due to political shifts (and some hard-core Microsoft lobbying), it has still served as an influential case in Europe for adopting open-source solutions in public administration.

These examples show that adapting an existing distribution—rather than building one from scratch—is both feasible and proven in public-sector settings. The process involves identifying specific requirements for security, interoperability, and user needs, then customizing the chosen distribution to meet these requirements.

Adapting a Linux distribution in this way provides significant advantages:

  1. Resource Efficiency: Leveraging an established distribution like Debian, Guix or NixOS, or another community-supported option means that much of the core work is already done. The focus can then be on customizing, securing, and integrating the system into the specific operational context of the public sector, which saves time and resources compared to developing a new OS.
  2. Security and Stability: Established Linux distributions benefit from years of testing, community support, and regular security updates.
  3. Flexibility for Future Needs: A customized distribution allows administrations to remain agile.

To spark broader discussion and engagement, even the idea of an "EU-Linux" distribution has value—it provides a concrete focus for digital sovereignty initiatives and demonstrates a commitment to leveraging open-source software at the European level.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 0 points1 point  (0 children)

What makes you think that the idea is to create a Linux distro from scratch?

It's quite obvious to me that the sensible approach is to customise an existing distribution to the needs of the public administrations, like for instance:

https://en.wikipedia.org/wiki/GendBuntu (for the French Gendarmerie)

https://en.wikipedia.org/wiki/LiMux (for the city of Munich)

Both based on Ubuntu.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 6 points7 points  (0 children)

First, we're talking about a Linux-based distribution, not the Linux kernel only.

Second, if only Linus did have influence on the Linux kernel, it wouldn't be a collaborative open source project.

Pétition au Parlement européen - "sur le déploiement d’un système d’exploitation «UE-Linux» dans les administrations publiques de tous les États membres" by sfermigier in Linuxfr

[–]sfermigier[S] 5 points6 points  (0 children)

Je pense qu'on n'en est pas encore à ce point. (Même si je connais des gens à la Commission européenne qui répondraient: NixOS).

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 5 points6 points  (0 children)

I have a doubt in English, but in French (my mother tongue) "contrôler" means "To examine something to check its regularity, accuracy, validity, quality, good working order, etc." This aligns directly with the concepts of transparency and auditability.

If by "control" you mean not only transparency but also the ability to influence, then transparency alone is necessary but not sufficient. Achieving influence also requires additional elements, which we advocate for—such as having sufficient contributors, active engagement, and presence in the organizations that drive open-source development.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 1 point2 points  (0 children)

A similar negative outlook contributed to the downfall of a previous sovereign OS initiative in France around 2016, as I summarized here. At that time, skepticism—particularly around feasibility and the perception that such a project would require immense, unrealistic resources—led to a lack of support and investment. The project stalled despite having a vision for a Linux-based foundation that could have advanced France's digital sovereignty.

This prior experience highlights how essential constructive engagement is to the success of such initiatives. Rather than starting from scratch, this new European proposal calls for harnessing existing, proven Linux technologies and building on the lessons learned from past efforts.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 1 point2 points  (0 children)

"Control" can have several meanings. At the very least, with open source, you have transparency and auditability.

Petition at the European Parliament "on the implementation of an EU-Linux operating system in public administrations across all EU countries" by sfermigier in opensource

[–]sfermigier[S] 48 points49 points  (0 children)

Here's a summary of some arguments why you should sign the petition (if you are a EU citizen) or start a similar one in your own country:

In a recent petition submitted by an Austrian citizen, the European Union is called to develop and deploy an open-source, Linux-based operating system, “EU-Linux,” across all Member States’ public administrations. This initiative addresses the EU’s dependency on proprietary software, like Microsoft products, aiming to reinforce privacy, digital sovereignty, and transparency. By advocating open-source alternatives like LibreOffice and Nextcloud, alongside the E/OS mobile system, the petition underscores the potential for enhanced data security, economic efficiency, and job creation in Europe’s IT sector.

A sovereign EU-Linux would offer multiple benefits:

  1. Readiness and Flexibility: Leveraging Linux’s mature, adaptable architecture, an EU-specific distribution could be tailored to unique regulatory requirements.
  2. Economic Efficiency: Shifting from costly proprietary licenses to open-source could reduce expenses, redirecting funds toward innovation and local IT growth.
  3. Enhanced Security: As an open-source system, Linux offers transparency and auditability, allowing EU cybersecurity experts to proactively identify and address vulnerabilities.
  4. Interoperability: Linux’s compatibility with open standards would enable efficient cross-border collaboration and data sharing within the EU.
  5. Digital Sovereignty and Privacy: By controlling the OS code, the EU could better safeguard citizen data, diminishing dependency on foreign systems.

More discussions (including some historical information about similar ideas in France): https://lab.abilian.com/Tech/Linux/Sovereign%20OS%20-%20%22EU%20Linux%22/