3 | | Since we moved to git from bzr, this is a necessary step towards a self-hosting system. Git is written in C, so this will probably involve mainly improvements to libposix. |
| 3 | Details:: |
| 4 | Git is a distributed version control system that is also used for the main HelenOS development branch. |
| 5 | [[br]][[br]] |
| 6 | The goal of porting this tool to HelenOS is to allow developers checkout source code of HelenOS inside HelenOS and possibly fix bugs directly inside HelenOS environment. The goal is to port only the command-line parts of Git as HelenOS does not yet offer a full-fledged GUI toolkit. |
| 7 | [[br]][[br]] |
| 8 | Git itself is written in C and HelenOS provides a POSIX emulation layer (called libposix) that should simplify the porting. However, libposix does not offer all the functionality found in POSIX-compatible systems and thus this task will require improvements in libposix too. |
| 9 | |
| 10 | What Gains and Benefits will this bring?:: |
| 11 | The biggest benefit of this task is in the ability to allow modification of HelenOS inside HelenOS, thus possibly speeding-up development process and, as a more distant goal, develop HelenOS fully inside HelenOS. |
| 12 | |
| 13 | Difficulty:: |
| 14 | Medium |
| 15 | |
| 16 | Required skills:: |
| 17 | A successful applicant will have good skills of programming in the C language, knowledge of the Git VCS and the ability to survive in a non-standard non-POSIX application environment. |
| 18 | |
| 19 | Documentation:: |
| 20 | * [https://git-scm.com/ Git homepage] |
| 21 | * [PortingSoftware Porting POSIX software to HelenOS] |
| 22 | |
| 23 | Possible mentors:: |
| 24 | HelenOS Core Team, Vojtech Horky |