Differences between revisions 5 and 6
Revision 5 as of 2021-02-14 11:27:37
Size: 3759
Editor: fioddor
Comment:
Revision 6 as of 2021-02-14 11:49:41
Size: 4323
Editor: fioddor
Comment:
Deletions are marked like this. Additions are marked like this.
Line 50: Line 50:
        * Teams: [[Teams/PkgPrivacyMaintainers|Debian Privacy Tools Maintainers]]         * Debian: [[Teams/PkgPrivacyMaintainers|Debian Privacy Tools Maintainers]], [[DebianPrivacy|DebianPrivacy]]
Line 52: Line 52:


== Other student projects ==

Proposals under construction for other editions, other programs or for internal use:

* Videocalling (JSXC, Matrix, Janus, etc):
* Videoconferencing (Jitsimeet and BigBlueButton to be evaluated)
* Mesh networking


Wilder (volative) ideas: See the [[https://discuss.freedombox.org/c/development/6|Development forum section]]
* Framework to handle asynchronous jobs.
* Framework to handle exceptions (improve presentation and guidance on troubleshooting and on getting help/support).

FreedomBox in GSoC 2021

FreedomBox is a pure Debian blend for easy self-hosting of a home server as a private online services cloud.

It particiated in GSoC program previous years as Debian project and aim to do so in 2021 edition, as agreed. We regard the produced code as a very welcome side-effect, but our main goal to participate is to hopefully enrole another stable volunteer. If we fail, we'll take advantage of the invested planning effort, anyway.

Main student project: E-mail Server

Description of the project: E-mail is a basic and useful way of communication and providing a server in FreedomBox is a very old wish. It is a more complex task than providing other services, so it deserves some proper project planning.

  • Confirmed Mentor: Fioddor Superconcentrado

    How to contact the mentor: fioddor@gmail.com

    Confirmed co-mentors: Sunil Mohan Adapa, James Valleroy

    Mentors affiliation with Debian: JV is a DD, SMA is a core FreedomBox maintainer, FS is a FreedomBox maintainer.

    Deliverables of the project: A working E-mail server in FreedomBox. Details to be negotiated with the intern, but this should provide a reference:

    1. FreedomBox enabled to send e-mails to its admin.

    2. FreedomBox providing an e-mail exchange allowing its users to intercommunicate.

      1. within a controlled LAN.
      2. over the public internet (reachability).
    3. Integrate Roundcube configuration in FreedomBox to easily use this own e-mail exchange.

    4. Enable anti-virus protection.
    5. Consumer grade release
      • Autodiagnostics.
      • Thorough testing.
    6. Support communication with other exchanges (regular public e-mail).
      1. Site authentication (certificates and other credentials).
      2. Enable anti-spam protection.
      3. Anti-eavesdrop protection

    Desirable skills:

    • Basic: Shell and Python programming. Instant Messaging (IRC). Organisation.
    • Bonus: Git, Django, HTML, CSS, Bootstrap, TDD, js/jQuery

    What the intern will learn:

    • Technology: The e-Mail stack, web (Django) application architecture, and the free software projects involved in them.
    • Technique: Likely, some additional state-of-the-art tools, languages and/or procedures.
    • Experience: The flow and internals of real life volunteered international free software development.
    • Wisdom: Hopefully gain awareness and criterium. Both, technical and regarding online privacy and its current status.

    Application tasks: Get and show familiarity with technical research and adaptability to project tools and procedures, and design/coding standards.

    • A merge request where FreedomBox installs a nullmailer allowing it to send e-mails to its administrator.

    • or: Read the notes of previous attempts and provide a short, structured documentation explaining the system architecture (parts) and the technical challenges of an e-mail server. Format can be a file, a wiki page, a video, infographics...

    Related projects:

Other student projects

Proposals under construction for other editions, other programs or for internal use:

* Videocalling (JSXC, Matrix, Janus, etc): * Videoconferencing (Jitsimeet and ?BigBlueButton to be evaluated) * Mesh networking

Wilder (volative) ideas: See the Development forum section * Framework to handle asynchronous jobs. * Framework to handle exceptions (improve presentation and guidance on troubleshooting and on getting help/support).