Systemd unit translator
Description of the project: systemd unit is a popular declarative format for defining services. As systemd gains widespread adoption among the GNU/Linux distributions, many upstream projects start to ship only systemd units. To make possible that all the init systems in Debian leverage systemd units, a translator is needed to be developed.
Systemd units are written in standard Microsoft ini files, and have many parsers available. In this project, development will be centered around OpenRC in Debian, which already ships a LSB init script translator. After parsing a systemd unit, equivalent systemd features in OpenRC, cron, xinetd, etc. will be identified and translated accordingly.
Confirmed Mentor: Benda Xu
How to contact the mentor: heroxbd@gentoo.org
Confirmed co-mentors: Adam Borowski <kilobyte@angband.pl> (kilobyte on IRC)
Deliverables of the project:
- A systemd unit to OpenRC init script translator.
- Updated OpenRC package into Debian Unstable.
Desirable skills:
- Experience with Debian, especially service management.
- C programming language, shell script and Perl.
What the intern will learn:
- To hack the init and service management systems, to understand how GNU/Linux operation systems are organized.
Application tasks: install sysvinit and openrc on a Debian Buster or newer.
Related projects: https://wiki.debian.org/SummerOfCode2012/Projects#Port_bootstrap_build-ordering_tool