No edit summary |
mNo edit summary |
||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Contact Information == | |||
Name: Mandy Wang | * Name: Mandy Wang | ||
Email: wangmychn@gmail.com | * FAS ID: Mandymy | ||
Blog: https://mandywangblog.wordpress.com/ | * Email: wangmychn@gmail.com | ||
Github: https://github.com/MandyMY | * Blog: https://mandywangblog.wordpress.com/ | ||
Twitter: @MandyMY_ | * Github: https://github.com/MandyMY | ||
IRC | * Twitter: @MandyMY_ | ||
Location: Shanghai, China | * IRC: Mandy (freenode) | ||
Working Hours: 18:00 - 24:00 (CST); 10:00 – 16:00 (UTC) | * Jabber= mandymy AT blug DOT moe | ||
* Location: Shanghai, China | |||
* Working Hours: 18:00 - 24:00 (CST); 10:00 – 16:00 (UTC) | |||
== About | == About Me == | ||
I’m a senior student from Shanghai Institute of Technology major in Software Engineering, and I’m studying for my bachelor’s degree and I expect graduate at June 2017. | |||
Although I only have one year FOSS experience, I think I have gathered enough skills and enthusiasm to do this project. In the last year, I joined the translation of 'Free Software, Free Society' as a member of Beijing GNU/Linux User Group, I did an abundance of proofread works, throughout this period, I mastered the usage of markdown and gained a better understanding of FOSS. And I‘m a member of GNOME and Openkeychain Chinese Localization Team. | |||
I accepted by GNOME in the Outreachy last round to enhance Chinese(China) localization and update guideline, and I have accomplished my internship, that's a fantastic experience, it gave me an opportunity to learn more about how to contribute to FOSS such as reporting bugs and patching, I have learned more about FOSS organizations. At the same time, I made many friends during Outreachy, and many predecessors in GNOME, they are friendly to newcomers, you can learn more in my blog. And I still contribute to GNOME localization these days. | |||
Now I want to go further and try a code project in GSOC. | |||
== Why Fedora? == | |||
Just because Fedora is the Linux distribution I use the most, so I want to know more about it and make contributions to it, and I believe GSOC is a good chance to integrate into a community, because I had the similar experience in GNOME during Outreachy. | |||
After GSOC, Maybe I will choose to maintain the project I worked in GSOC and Chinese Localization as a start, and look for other projects I interest in. | |||
== Why Migrate Plinth to Fedora Server? == | |||
I interest in the idea Migrate Plinth to Fedora Server. [https://wiki.debian.org/FreedomBox/Plinth Plinth] is a web interface to administer the functions of the FreedomBox which is a Debian based project, and the main goal of this idea is to make it available for Fedora. | |||
About this idea, for one thing, I can use Python and Django well because I always use it in my homework, and I have some experience about front-end and Linux development during my college. On the other hand, I have learned the basic knowledge of DNF, ARM and RPM after I contact with Mentor Tong, he gave me many useful advice. Also, I’m an user of Fedora and FreedomBox, include Plinth, FreedomBox is a wonderful product and Fedora is the Linux distribution I use the most, so I hope it can be used in Fedora and more Linux distributions. | |||
To solve this issue, I made up a scenario in my proposal, it can be divided roughly into two parts. The first one is modifying the source code module by module to convert it to RPM-based, including replacing the apt command code with the dnf command code or fit both of them, changing the Deb-based packages into RPM-based packages which play the same roles and testing after each module finished. The second part is a little scattered, including making a RPM package for Plinth and setting up a repo for it in [https://copr.fedorainfracloud.org Copr], testing inside a Virtual Machine, and modifying some configuration files and the documents for users to fit the changes of Plinth during this project, at the same time, a new wiki page for Plinth in Fedora is needed. You can learn more clearly in the flow chart below: | |||
[[File:GSOC2017_Plinth_FlowChart.jpg]] | |||
== A Rough Schedule == | |||
* May 5 - 20: | |||
** Integrate into the community; | |||
** Be familiar with the existing code and the code style; | |||
** Learn more about Linux, including apt, dnf, Deb and RPM; | |||
* May 21 - 30: | |||
** Prepare and complete the details of the project, such as listing the modules, the documents which need to be modified in the future; | |||
** Make Gantt chart for the detailed schedule; | |||
* May 31 - June 26: | |||
** Convert the first half of the modules from Deb-based to RPM-based, including: | |||
*** Replace the apt command code with the dnf command code or fit both of them; | |||
*** Change the Deb-based packages into RPM-based packages which play the same roles; | |||
*** Test after each module finished; | |||
* June 27 - 30: | |||
** Mid-term examination, submit the evolution of my mentor; | |||
* July 1 - 24: | |||
** Convert the second half of the modules from Deb-based to RPM-based, including: | |||
*** Replace the apt command code with the dnf command code or fit both of them; | |||
*** Change the Deb-based packages into RPM-based packages which play the same roles; | |||
*** Test after each module finished; | |||
** Check out if any module is omitted; | |||
* July 25 - 28: | |||
** Mid-term examination, submit the evolution of my mentor ; | |||
* July 29 - August 21: | |||
** Make a RPM package for Plinth from source and setup a repo for it in Copr; | |||
** Test inside a Virtual Machine, refer to the HACKING; | |||
** Modified README.md and requirements.txt to fit Fedora which is RPM-based; | |||
** Add the guide of RPM-based package to Plinth User Guide and create a wiki page for it in Fedora; | |||
* August 22 - 29: | |||
** Review all achievements; | |||
** Submit the code, project summaries, and final evaluation of my mentor. | |||
== My Specific Plans from May to September == | |||
I need to complete my graduation thesis in the early June, then I plan to gap a half year before the next degree, so I have enough time to work with this project. | |||
[[category:Summer_coding_2017]] |
Latest revision as of 14:59, 7 April 2017
Contact Information
- Name: Mandy Wang
- FAS ID: Mandymy
- Email: wangmychn@gmail.com
- Blog: https://mandywangblog.wordpress.com/
- Github: https://github.com/MandyMY
- Twitter: @MandyMY_
- IRC: Mandy (freenode)
- Jabber= mandymy AT blug DOT moe
- Location: Shanghai, China
- Working Hours: 18:00 - 24:00 (CST); 10:00 – 16:00 (UTC)
About Me
I’m a senior student from Shanghai Institute of Technology major in Software Engineering, and I’m studying for my bachelor’s degree and I expect graduate at June 2017.
Although I only have one year FOSS experience, I think I have gathered enough skills and enthusiasm to do this project. In the last year, I joined the translation of 'Free Software, Free Society' as a member of Beijing GNU/Linux User Group, I did an abundance of proofread works, throughout this period, I mastered the usage of markdown and gained a better understanding of FOSS. And I‘m a member of GNOME and Openkeychain Chinese Localization Team.
I accepted by GNOME in the Outreachy last round to enhance Chinese(China) localization and update guideline, and I have accomplished my internship, that's a fantastic experience, it gave me an opportunity to learn more about how to contribute to FOSS such as reporting bugs and patching, I have learned more about FOSS organizations. At the same time, I made many friends during Outreachy, and many predecessors in GNOME, they are friendly to newcomers, you can learn more in my blog. And I still contribute to GNOME localization these days.
Now I want to go further and try a code project in GSOC.
Why Fedora?
Just because Fedora is the Linux distribution I use the most, so I want to know more about it and make contributions to it, and I believe GSOC is a good chance to integrate into a community, because I had the similar experience in GNOME during Outreachy.
After GSOC, Maybe I will choose to maintain the project I worked in GSOC and Chinese Localization as a start, and look for other projects I interest in.
Why Migrate Plinth to Fedora Server?
I interest in the idea Migrate Plinth to Fedora Server. Plinth is a web interface to administer the functions of the FreedomBox which is a Debian based project, and the main goal of this idea is to make it available for Fedora.
About this idea, for one thing, I can use Python and Django well because I always use it in my homework, and I have some experience about front-end and Linux development during my college. On the other hand, I have learned the basic knowledge of DNF, ARM and RPM after I contact with Mentor Tong, he gave me many useful advice. Also, I’m an user of Fedora and FreedomBox, include Plinth, FreedomBox is a wonderful product and Fedora is the Linux distribution I use the most, so I hope it can be used in Fedora and more Linux distributions.
To solve this issue, I made up a scenario in my proposal, it can be divided roughly into two parts. The first one is modifying the source code module by module to convert it to RPM-based, including replacing the apt command code with the dnf command code or fit both of them, changing the Deb-based packages into RPM-based packages which play the same roles and testing after each module finished. The second part is a little scattered, including making a RPM package for Plinth and setting up a repo for it in Copr, testing inside a Virtual Machine, and modifying some configuration files and the documents for users to fit the changes of Plinth during this project, at the same time, a new wiki page for Plinth in Fedora is needed. You can learn more clearly in the flow chart below:
A Rough Schedule
- May 5 - 20:
- Integrate into the community;
- Be familiar with the existing code and the code style;
- Learn more about Linux, including apt, dnf, Deb and RPM;
- May 21 - 30:
- Prepare and complete the details of the project, such as listing the modules, the documents which need to be modified in the future;
- Make Gantt chart for the detailed schedule;
- May 31 - June 26:
- Convert the first half of the modules from Deb-based to RPM-based, including:
- Replace the apt command code with the dnf command code or fit both of them;
- Change the Deb-based packages into RPM-based packages which play the same roles;
- Test after each module finished;
- Convert the first half of the modules from Deb-based to RPM-based, including:
- June 27 - 30:
- Mid-term examination, submit the evolution of my mentor;
- July 1 - 24:
- Convert the second half of the modules from Deb-based to RPM-based, including:
- Replace the apt command code with the dnf command code or fit both of them;
- Change the Deb-based packages into RPM-based packages which play the same roles;
- Test after each module finished;
- Check out if any module is omitted;
- Convert the second half of the modules from Deb-based to RPM-based, including:
- July 25 - 28:
- Mid-term examination, submit the evolution of my mentor ;
- July 29 - August 21:
- Make a RPM package for Plinth from source and setup a repo for it in Copr;
- Test inside a Virtual Machine, refer to the HACKING;
- Modified README.md and requirements.txt to fit Fedora which is RPM-based;
- Add the guide of RPM-based package to Plinth User Guide and create a wiki page for it in Fedora;
- August 22 - 29:
- Review all achievements;
- Submit the code, project summaries, and final evaluation of my mentor.
My Specific Plans from May to September
I need to complete my graduation thesis in the early June, then I plan to gap a half year before the next degree, so I have enough time to work with this project.