<span class="latin" style="width:19px;height:19px;">G</span><span class="latin" style="width:19px;height:19px;">r</span><span class="latin" style="width:19px;height:19px;">o</span><span class="latin" style="width:19px;height:19px;">u</span><span class="latin" style="width:19px;height:19px;">p</span><span class="latin" style="width:19px;height:19px;">:</span><span class="latin" style="width:19px;height:19px;">G</span><span class="latin" style="width:19px;height:19px;">u</span><span class="latin" style="width:19px;height:19px;">i</span><span class="latin" style="width:19px;height:19px;">x</span><span class="latin" style="width:19px;height:19px;">/</span><span class="latin" style="width:19px;height:19px;">G</span><span class="latin" style="width:19px;height:19px;">S</span><span class="latin" style="width:19px;height:19px;">o</span><span class="latin" style="width:19px;height:19px;">C</span><span class="latin" style="width:19px;height:19px;">-</span><span class="latin" style="width:19px;height:19px;">2</span><span class="latin" style="width:19px;height:19px;">0</span><span class="latin" style="width:19px;height:19px;">2</span><span class="latin" style="width:19px;height:19px;">1</span><span class="latin" style="display:block;width:19px;height:19px;"> </span><span class="latin" style="width:19px;height:19px;">-</span><span class="latin" style="display:block;width:19px;height:19px;"> </span><span class="latin" style="width:19px;height:19px;">L</span><span class="latin" style="width:19px;height:19px;">i</span><span class="latin" style="width:19px;height:19px;">b</span><span class="latin" style="width:19px;height:19px;">r</span><span class="latin" style="width:19px;height:19px;">e</span><span class="latin" style="width:19px;height:19px;">P</span><span class="latin" style="width:19px;height:19px;">l</span><span class="latin" style="width:19px;height:19px;">a</span></span><span class="tktr-gyo" style="height:640px;margin:0 0 180px 22px;font-size:19px;_width:19px;/width:19px;"><span class="latin" style="width:19px;height:19px;">n</span><span class="latin" style="width:19px;height:19px;">e</span><span class="latin" style="width:19px;height:19px;">t</span>  

Navigation menu




LibrePlanet


About 
About LibrePlanet
Mission Statement
Founding documents
Support this Community
Code of Conduct
Anti-harassment policy
Teams 
Activists
Wiki Helpers
LibrePlanet Artists
FSF Community Team
Local & Student Teams
Conferences 
LibrePlanet Conference
Non-official
Get involved 
Participate
Discussion channels
Events
 


Login
 










Group: Guix/GSoC-2021

 

From LibrePlanet

< Group:Guix

Jump to: navigation, search  

Contents

  • 1.2 Project: Trusted computing: porting the GNU Mes bootstrap to RISC-V assembler
  • 1.3 Project: Guix Data Service revision processing instrumentation and performance
  • GNU Guix Google Summer of Code ideas page for 2021

    GNU Guix and GNU Mes are part of the GNU Summer of Code. Below projects are suitable for a student with an interest in more advanced coding techniques. We have taken care to size the projects to ~180 hours of effort. It is hard to predict how long things really take, but we surely expect you can make some decent progress in that time frame. For application start contacting the mentors as soon as possible. We like to ask for early (small) contributions and interaction in the application period. Mentors are reachable through the mailing list of the GNU Guix project. Also, feel free to contact us individually. We encourage diversity and the GNU Guix project consists of friendly people from many backgrounds and nationalities. GNU Guix also participates in the Outreachy program with great success!

    Project: Trusted computing: Goblins for GNU Guix

    Goblins.png

    Building and deploying trusted services is critical for preserving security. Goblins is a secure actor-based model developed by Christopher Webber that enables complex distributed environments abiding by the principle of least authority (POLA) and privilege (POLP). Applications are in social media applications, such as Mastodon, and remote invocation of services and compute farms, and orchestration of virtual machines and containers. GNU Guix with GNU Shepherd brings POLA to software deployment, but is currently limited to single machines running containers. With GSoC we want to bring Goblins to GNU Guix as a first class citizen. This requires porting Goblins from Racket to GNU Guile Lisp and writing an small orchestration application as an example/prototype.

    We value contributions in advance of GSoC, even if they are just little ones. During the application period we expect interaction with the mentors, so do not leave communication to the last minute.

    For more information see

    Skills: Interest in security and Lisp programming

    Mentors: Christopher Webber, Ludovic Courtès and Pjotr Prins (pjotr.public 31 at thebird.nl)


    Project: Trusted computing: porting the GNU Mes bootstrap to RISC-V assembler

    Gnumes.png

    Trusted computing is extremely important for creating dependable systems. For trusted computing GNU Mes is minimizing the binary bootstrap by building the bootstrap fully from source. This allows full auditing of how systems boot. GNU Mes is currently booting GNU Guix for Intel and ARM based processors. With GSoC we want to invite a student with affinity in assembly programming to create a RISC-V port. RISC-V is of particular interest because millions, perhaps billions, of devices may soon be using this architecture.

    Because we have a working ARM port (by Danny), we know what needs to be done. Mostly it is mapping an intermediate representation to RISC-V assembler and making the tests pass. As the tooling is largely untested on RISC-V there will be feature hacking and bug fixing in the Mes tool chain. This work can be executed on a qemu RISC-V VM. Once the VM bootstrap works we will take it to hardware and make it part of GNU Guix.

    We value contributions in advance of GSoC, even if they're just little ones. During the application period we expect interaction with us, so do not leave it to the last minute.

    For more information see

    Risc-v.png

    Skills: Interest in assembler and C programming

    Mentors: Jan (Janneke) Nieuwenhuizen, Danny Milosavljevic and Pjotr Prins (pjotr.public 31 at thebird.nl)

    Project: Guix Data Service revision processing instrumentation and performance

    The Guix Data Service processes and stores information from Guix. Currently the process can be slow though, and it's not that easy to work out where the areas for improvement might be.

    Therefore, it would be good to add additional instrumentation to the process, making it easy to find out which bits are especially slow. Once that's known, hopefully those slow bits can be sped up.

    We value contributions in advance of GSoC, even if they're just little ones. During the application period we expect interaction with us, so do not leave it to the last minute.

    For more information see

    Skills: Interest in programming in Guile and awareness of SQL

    Mentors: Christopher Baines & Gábor Boskovits

    Guix.png

    Retrieved from "https://libreplanet.org/wiki?title=Group:Guix/GSoC-2021&oldid=64651" 



















    FSF
    The Free Software Foundation (FSF) is a nonprofit with a worldwide mission to promote computer user freedom.

    We defend the rights of all software users. (Read more)
     



    Campaigns


    High Priority Free Software Projects

    Free JavaScript

    Secure Boot vs Restricted Boot

    GNU Operating System

    Defective by Design

    See all campaigns
     



    Get Involved



    Contact
     




    Send your feedback on our translations and new translations of pages to campaigns@fsf.org.

    Copyright © 20132023 Free Software Foundation, Inc.  Privacy Policy, JavaScript license information