Linux Package Management (Distribute Your App)
(Difference between revisions)
(moved materials, added pre-req) |
(pre req) |
||
Line 6: | Line 6: | ||
|'''Overview''' || High level description of what the student will do | |'''Overview''' || High level description of what the student will do | ||
|- | |- | ||
− | |'''Prerequisite Knowledge''' || | + | |'''Prerequisite Knowledge''' || Students should be familiar with: |
− | * Beginner Shell (linux command line) | + | * Beginner Shell knowledge (linux command line) |
− | * | + | * Getting around the linux file system, sudo'ing, editing files, etc. |
|- | |- | ||
|'''Learning Objectives''' || What should the student be able to do after completing this activity? | |'''Learning Objectives''' || What should the student be able to do after completing this activity? |
Revision as of 16:07, 9 February 2016
Title | Linux package management (distribute your app) |
Overview | High level description of what the student will do |
Prerequisite Knowledge | Students should be familiar with:
|
Learning Objectives | What should the student be able to do after completing this activity? |
Background:
Is there background reading material?
- What are the various software installation methods on Linux: http://www.howtogeek.com/191245/beginner-geek-how-to-install-software-on-linux/
- http://www.control-escape.com/linux/lx-swinstall.html
- https://help.ubuntu.com/community/SoftwarePackagingFormats
- https://wiki.archlinux.org/index.php/Arch_User_Repository, https://wiki.archlinux.org/index.php/Arch_packaging_standards
- https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guidelines#Writing_a_package_from_scratch
- http://www.rpm.org/wiki/Docs
Are there other activities the student should have done first?
What is the rationale for this activity?
Include helpful hints to faculty here.
Directions:
- Build your own linux package
- http://www.ibm.com/developerworks/library/l-rpm1/
- Directions
- Learn about yum and dnf. Have students find it themselves. https://en.m.wikipedia.org/wiki/DNF_(software),
- Use an existing, easy, mature, yet small project like wget or top (or something that doesn't come standard on most systems) to have students compile and make and package.
- Have students rename it so the command line can be run as a test
- Have students host the package on a web source (ftp? Some free internet service that makes the .rpm accessible by URL)
- Have each student in the class pair up and try to install the other person's RPM and run the new command
- Package Repo location
- http://copr.fedorainfracloud.org - Use this for students to make their own packages and repositories
- https://fedorahosted.org/copr/ - The actual community / project page where user manuals and developer resources exist
Deliverables:
What will the student hand in?
Assessment:
How will the activity be graded?
How will learning will be measured?
Include sample assessment questions/rubrics.
Criteria | Level 1 (fail) | Level 2 (pass) | Level 3 (good) | Level 4 (exceptional) |
---|---|---|---|---|
The purpose of the project | ||||
Why the project is open source |
Comments:
What should the instructor know before using this activity?
What are some likely difficulties that an instructor may encounter using this activity?
Additional Information:
ACM Knowledge Area/Knowledge Unit | What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge |
ACM Topic | What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf |
Level of Difficulty | Is this activity easy, medium or challenging? |
Estimated Time to Completion | How long should it take for the student to complete the activity? |
Materials/Environment |
|
Author | Who wrote this activity? |
Source | Is there another activity on which this activity is based? If so, please provide a link to the original resource. |
License | Under which license is this material made available? (http://creativecommons.org/licenses/) |
Suggestions for Open Source Community:
Suggestions for an open source community member who is working in conjunction with the instructor.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License