Python Classroom Lab
Summary
A new Python Classroom Lab will be created in 3 variants: Workstation based, Docker based and Vagrant based. It's an important step for our Fedora Loves Python initiative. The main audience are Python teachers and workshop instructors.
Owner
- SIG: SIGs/Python
- Namely: Miro Hrončok
- Email: python-devel@lists.fedoraproject.org
- Release notes owner:
Current status
- Targeted release: Fedora 26
- Last updated: 2017-01-19
- Tracker bug: <will be assigned by the Wrangler>
Detailed Description
A new comps packages group with Python development tools will be created and a new Lab (or Spin) for teaching Python or Python related topics will be available from labs.fedoraproject.org as well as from the Docker Hub and Vagrant Atlas.
A work in progress for the lab is available on GitHub.
The Lab will contain:
- Python 3.6 including the python3-devel package
- Python 2.7 including the python2-devel package
- PyPy 3
- tox
- virtualenv
- IPython console for both Python 2 and 3
- Jupyter Notebook with Python 2 and 3 kernels (if this gets into Fedora in time)
- offline documentation for Python 2 and 3
- basic toolchain for building C and C++ extensions and valgrind
- git
- nano, vim, ssh client, curl, wget
- devel packages for commonly used dependencies of packages on the Python Package Index
- libxml2-devel
- libyaml-devel
- ...
The Workstation based lab will also contain:
- Basic GNOME
- Terminal emulator
- Text editor
- PDF reader
- Web browser
- Image viewer
- ...and possibly other utilities
But it will not include multimedia and virtualization support, office suite, e-mail client.
Benefit to Fedora
One of the benefits of Fedora for Python developers is the ease of setting up Python development. This Fedora Lab will make it even easier for teachers and instructors to use Fedora in their classrooms or workshops. Ready to use operating system with important stuff pre-installed - either with GNOME or as a headless environment for Docker or Vagrant.
Scope
- Proposal owners:
- create the comps group
- create kickstarts for live, vagrant and docker variants
- Other developers:
- Design team: Create an image for labs.fedoraproject.org
- Websites team: Add the new Lab to labs.fedoraproject.org
- Release engineering:
- List of deliverables:
- Labs/i386/iso/Fedora-Python-Classroom-Live-i386-_RELEASE_MILESTONE_.iso
- Labs/x86_64/iso/Fedora-Python-Classroom-Live-x86_64-_RELEASE_MILESTONE_.iso
- Labs/armhfp/images/Fedora-Python-Classroom-armhfp-_RELEASE_MILESTONE_-sda.raw.xz
- Labs/i386/images/Fedora-Python-Classroom-Vagrant-_RELEASE_MILESTONE_.i386.vagrant-libvirt.box
- Labs/i386/images/Fedora-Python-Classroom-Vagrant-_RELEASE_MILESTONE_.i386.vagrant-virtualbox.box
- Labs/x86_64/images/Fedora-Python-Classroom-Vagrant-_RELEASE_MILESTONE_.x86_64.vagrant-libvirt.box
- Labs/x86_64/images/Fedora-Python-Classroom-Vagrant-_RELEASE_MILESTONE_.x86_64.vagrant-virtualbox.box
- docker images via Fedora Docker Layered image build service
- List of deliverables:
- Policies and guidelines: nothing
- Trademark approval: yes, TBD
Upgrade/compatibility impact
nothing
How To Test
TBD
User Experience
The target audience will find Fedora Python Classroom Lab at labs.fedoraproject.org. The target audience will find fedora-python-classroom when running Docker or vagrant.
Dependencies
none
Contingency Plan
- Contingency mechanism: Only deliver partial list of new deliverables. Or none.
- Contingency deadline: beta freeze
- Blocks release? No
- Blocks product? No
Documentation
Nothing exists yet. Documentation will be added to the Fedora Developer Portal.