John Snow <js...@redhat.com> writes: > On 1/11/21 6:47 AM, Stefan Hajnoczi wrote: >> Dear QEMU, KVM, and rust-vmm community, >> QEMU will apply for Google Summer of Code >> (https://summerofcode.withgoogle.com/) again this year. This internship >> program offers paid, 10-week, remote work internships for >> contributing to open source. QEMU can act as an umbrella organization >> for KVM kernel and rust-vmm projects too. >> Please post project ideas on the QEMU wiki before February 14th: >> https://wiki.qemu.org/Google_Summer_of_Code_2021 >> What's new this year: >> * The number of internship hours has been halved to 175 hours over >> 10 weeks. Project ideas must be smaller to fit and students will have >> more flexibility with their working hours. >> * Eligibility has been expanded to include "licensed coding school or >> similar type of program". >> Good project ideas are suitable for 175 hours (10 weeks half-day) >> work by a >> competent programmer who is not yet familiar with the codebase. In >> addition, they are: >> * Well-defined - the scope is clear >> * Self-contained - there are few dependencies >> * Uncontroversial - they are acceptable to the community >> * Incremental - they produce deliverables along the way >> Feel free to post ideas even if you are unable to mentor the >> project. >> It doesn't hurt to share the idea! >> > > I have one that is probably way too ambitious, but requires a > particular skillset that might be of good interest to a student that > has some experience in the area already. > > The idea is for a TUI qmp-shell (maybe using urwid?) to create an > irssi-like REPL interface for QMP. The idea would be to mimic the > mitmproxy TUI interface (Check it out if you haven't!) > > All the ideas below are extremely tentative to give a basic gist of > what I mean; exact layouts/hotkeys/etc are for the sake of explanation > only. > > Essentially, I want an interface like this: > > ----------------------------------------------------------- > | QMP Mode | > |=========================================================| > | | > | Welcome to the Qemu Machine Protocol shell. | > | Please type /help or Ctrl+H to see available commands. | > | | > | | > | | > |---------------------------------------------------------| > | > | > ----------------------------------------------------------- > > commands are entered in the bottom and appear in a log window above, > appearing most-recent last, like irssi works. > > As an example, let's say we issue block-dirty-bitmap-add: > > -------------------------------------------------------- > | > block-dirty-bitmap-add node=ide0hd0 name=mybitmap0 | > -------------------------------------------------------- > > (...syntax up for debate...! We want something easy to parse, but easy > to type. For structured data, that's Hard.)
"Hard" is a red flag for such a brief internship. We need to solve or somehow exclude this design problem before we hand the task to the student. [...]