Winter 2010 SBR600 Weekly Schedule
Revision as of 13:00, 20 January 2010 by Chris Tyler (talk | contribs)
Please note:
- The schedule here is tentative.
- Week-by-week details will be filled in as the course progresses.
Contents
- 1 Week 1 (January 11) - Introduction
- 2 Week 2 (January 18) - RPM Packages I
- 3 Week 3 (January 25) - Creating RPM Packages II
- 4 Week 4 (February 1) - Using Mock and Koji
- 5 Week 5 (February 8) - Repositories/Distributing
- 6 Week 6 (February 15) - Compositing
- 7 Week 7 (February 22) - Server Farms I
- 8 Study Week (March 1)
- 9 Week 8 (March 8) - Server Farms II
- 10 Week 9 (March 15) - Distributed Processing
- 11 Week 10 (March 22) - Virtualization
- 12 Week 11 (March 29) - Monitoring & Management
- 13 Week 12 (April 5) - Presentations
- 14 Week 13 (April 12) - Wrap-Up
- 15 Exam Week (April 19)
Week 1 (January 11) - Introduction
Tuesday
- Welcome
- Introductions
- Intro to Build & Release
- Brief overview of the process
- Versioning & repository systems
- Compilation
- Testing
- Packaging
- Compositing
- Release
- Distribution
- Mirroring
- These steps vary according to the particular project/product. For example, when distributing software physically, "Release" means performing a RTM, where the final "gold disk" is sent to the duplicating house to be mass-produced; but when distributing software electronically, "Release" means sending the software to the online distribution system. The sequence of steps also varies between projects/products.
- Brief overview of the process
- Course Layout
- Project-based course
- Working with Open Source
- Working with the Fedora Project
- Communication Tools
- Course Outline
- Visit the CDOT Area
Friday
- Make
- Makefile Basics
- Targets, Dependencies, and Commands
- Implied rules (e.g., .o files)
- Examples
- Building software from a source tarball using a makefile
Readings/Resources
- Two simple makefile examples
ToDo
Communication Lab: By Friday, January 15, Set up your accounts (wiki, IRC, FAS2).
- Create a blog post which will appear on the OpenSource@Seneca Planet, containing:
- A portion of an IRC conversation you've had with someone on a Fedora or Seneca IRC channel.
- A link to your User page on the Seneca wikis
- A link to your User page on the Fedora wiki
- Note: don't just dump this stuff in a blog post, add some introductory text as well!
- Add an entry to the Winter 2010 SBR600 Participants page
Lab 1: By Tuesday, January 19:
- Build 2 packages from Source
- The NLED editor from http://cdot.senecac.on.ca
- Any package that uses a configure script -- SourceForge might be a good place to look for such packages.
- Blog about the experience.
Week 2 (January 18) - RPM Packages I
Wednesday
- Discussion of issues related to building
- Finding dependencies.
-
-jX
flag to enable multiple jobs
RPM Packages
- Purpose
- What's in an RPM package file
- Metadata
- What the package provides
- Dependencies
- Packager, date, license, summary, description, ...
- Digital signature
- Software
- Data
- Fonts
- Icons
- Sample data
- Documentation
- Configuration files
- Setup scripts
- Pre-install
- Post-install
- Pre-uninstall
- Post-uninstall
- Triggers
- Metadata
The RPM Database
- Purpose of the database
- Querying the RPM database
- rpm -q
ToDo
- Finish tasks from week 1 if not already completed.
- Remember, marking in this course is done on the basis of blog posts which appear on the planet.
- You should have two blog posts on the planet by now: One with a link to your Seneca and Fedora user pages plus a snippet of IRC conversation, and one with a reflection on your experience compiling software from source code.
- Find out what
-j
value results in the fastest build time for the software you have chosen. Blog about your results.
- Listen to the audio recording of last semester's conference call with Jesse Keating, Fedora Release Engineer