summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'recruiters/quizzes/ebuild-quiz.txt')
-rw-r--r--recruiters/quizzes/ebuild-quiz.txt53
1 files changed, 26 insertions, 27 deletions
diff --git a/recruiters/quizzes/ebuild-quiz.txt b/recruiters/quizzes/ebuild-quiz.txt
index 6ce9f36..a34c4a2 100644
--- a/recruiters/quizzes/ebuild-quiz.txt
+++ b/recruiters/quizzes/ebuild-quiz.txt
@@ -4,6 +4,7 @@
Ebuild development quiz
Revision 1.16 - 01 December 2016
+
Answer in whatever length necessary for completeness. Support your answers
with documentation links. Consult your mentor if you're unable to locate
answers.
@@ -52,22 +53,25 @@ docs: wiki
1. You change a package's ebuild to install an init script. Previously,
the package had no init script at all.
Is a revision bump necessary? Why? What about when adding a patch?
+ What about when adding a dependency?
docs: devmanual
-2. A user submits a "live" VCS (git, svn ...) ebuild. What would be a preferable
- alternative to such an ebuild?
+2. A user submits a "live" VCS (git, svn ...) ebuild in order to obtain
+ a bugfix that has not been released yet. What would be a preferable
+ alternative to such an ebuild? What if there are numerous changes
+ involved?
docs: devmanual
-3. (a) What is repoman? How would you check for QA problems with
- repoman?
+3. (a) What is repoman? When should it be used? How would you check for QA
+ problems with repoman?
docs: devmanual, wiki
- (b) A user submits a brand-new ebuild for a new package. What are the
- proper steps (including repoman commands) to take to add
- this ebuild to the tree?
+ (b) A user submits a brand-new ebuild for a new package. What are
+ the proper steps (including repoman commands) to take to add
+ this ebuild to ::gentoo? What should be in the commit message?
docs: devmanual, wiki
@@ -87,21 +91,20 @@ docs: devmanual
docs:
-7. You're creating an ebuild. Unfortunately, the ebuild's 'make install'
- target causes numerous access violations. What is the best
- course of action to take to have a clean, straightforward
- ebuild?
+7. You're creating an ebuild. Unfortunately, the default 'emake
+ DESTDIR="${D}" install' call causes numerous access violations.
+ What are the best long-term and short-term solutions?
docs: devmanual
8. You're creating an ebuild that needs a patch. The patch is
- nontrivially large - bigger than 20kbytes. Where should
+ nontrivially large - bigger than 20 KiB. Where should
the patch be kept?
docs: devmanual
-9. You're creating an ebuild that has its own license - one that
- doesn't exist in /usr/portage/licenses/. What is the proper
+9. You're creating an ebuild for a package whose license does not match
+ any of the licenses in the 'licenses' directory. What is the proper
course of action?
docs: GLEPs, devmanual
@@ -123,18 +126,14 @@ docs: devmanual
docs: devmanual
-11. You're committing a user-submitted ebuild. What should be in the
- initial commit message?
-
-docs: devmanual
-
-12. What is the difference between DEPEND and RDEPEND?
+11. What is the difference between different dependency classes (DEPEND,
+ RDEPEND and PDEPEND)? When should each of them be used? Provide examples.
docs: devmanual
-13. You wish to make a change to an ebuild, but you checked
- ChangeLogs, commit messages and metadata.xml and it appears to be
- maintained by someone else. How should you proceed?
+12. You wish to make a change to an ebuild, but you checked the commit
+ messages and metadata.xml and it appears to be maintained by someone
+ else. How should you proceed?
docs: devmanual
@@ -144,12 +143,12 @@ docs: devmanual
docs: devmanual
15. How can you verify an ebuild has correct run time dependencies
- (RDEPEND) for all installed binaries?
+ (RDEPEND) for all installed binaries? Provide an example tool calls.
docs:
-16. How do you deal with a situation in which an ebuild wishes to
- install a file already installed by another package?
+16. How do you deal with a situation in which an ebuild tries to
+ install a file that is already installed by another package?
docs: devmanual
@@ -159,7 +158,7 @@ docs: devmanual
docs: devmanual
-18. What is EAPI?
+18. What is the EAPI version? How does it affect ebuilds and eclasses?
docs: devmanual, PMS