Hi all,

My name is Dylan, and I am a Swarthmore College student interested in working with Guix this summer! Attached is my proposal to help develop an installation wizard for GuixSD. Please let me know if there are any questions or comments.

I am also interested in applying to work on 8sync/adding an extensible event loop to GNU Shepard. I will add that proposal soon!

Best,
Dylan

DYLAN JEFFERS
sapient...@openmailbox.org | git: notabug.org/SapienTech | IRC: SapienTech

GUIX: INSTALLER WIZARD FOR GuixSD

SUMMARY
- Build an intuitive, yet highly customizable installer wizard for the Guix 
System Distribution
- Design with reproducible builds in mind
- Consider both a text-based and graphical application using 
guile-ncurses/libRUIN
- Design for portability for use in other software distributions that lack a 
proper installer wizard

BENEFITS
Difficulty with distro installation is the major obstacle preventing the Linux 
desktop from mainstream use. GuixSD, although young and still techie-focused, 
will need an intuitive installer wizard to attract a more general user-base.

A well developed installer wizard will make an immediate impact on Guix 
development. More users means more Guix code is tested, which helps current 
Guix developers triage bugs more effectively, and encourages new developers 
with the skill sets in diverse areas to contribute.

Although a good techie should not judge a distro by its installer wizard, first 
impressions do matter. A smooth install is satisfying, which helps establish a 
good relationship with new users right away.

DELIVERABLES
- An extensible TUI (and possible GUI) installation wizard
- An emphasis on rigorous test suites, with stability prioritized over features
- Continually updated installation guide on Guix wiki

PLAN
- Research installer wizards in other distributions, and work with the Guix 
community to determine a minimal yet effective installation flow
- Research and incorporate installation scripts other Guile users have created
- Begin writing the back-end logic, moving on to the TUI, and if support is 
there, a GUI
- Build the installer wizard in steps, and expose them early to help users 
automate parts of the installation
- Document this progress on Guix wiki to keep users updated and informed
- Respond to bug-reports ASAP to engage new users and maximize successful 
installations


COMMUNICATION
- 24/7 IRC connection with daily checking
- Weekly meetings with mentors (if mentors agree)
- Release announcements on dev email list
- Contributions to bug tracker
- General communication and announcements on GNU Social

QUALIFICATIONS
- Experience working in Guile and C (previously discussed in IRC)
- Worked with MediaGoblin last year on its Android client MediaGoblin, and 
learned how to develop in a free software setting
- Experience installing multiple Linux desktops and servers, BSD distros, 
Plan9, OSX, Windows, and boot firmware
- Experience with mobile app development, which shares many similarities with 
an installation wizard
- Contributed to other free software projects
- Already use GuixSD for much of my development work in addition to Trisquel 
running libreboot
- Will sustain interest in Guix beyond the summer internship

Reply via email to