GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing pkgsrc.org — users The pkgsrc-wip project -- committer accessGetting accessIf you're interested in committing packages, send mail to Thomas Klausner with your public SSH key, suggested user name and perhaps ideas for your first packages. SetupGenerating and using a separate SSH keyTo generate an SSH key it is suggested to use RSA with at least 1024 bits and a passphrase via ssh-keygen(1). We can select RSA as the type of the key via the -t rsa and the number of bits (we choose 2048 bits) via the -b option:
The pkgsrc-wip-id_rsa is the private key and the pkgsrc-wip-id_rsa.pub is the public key. Please remember to just attach the public key pkgsrc-wip-id_rsa.pub when you are sending your email to request an user account! In order to use it adjust the ~/.ssh/config as follow, adding:
You can then use ssh-agent(1) in order to not type the SSH key password each time. The SSH server fingerprint is:
Setting up gitIn contrast to pkgsrc itself, pkgsrc-wip uses git as source control system. Install devel/git. Then, set the email address and user name used in the commits this way:
If you just want to set this up for wip, run this command inside the repository and leave out the --global. Getting via git -- with an accountIf you have no clone yet, use:
Of course, username is your username. If you already have the anonymous checkout, you can re-use that, but have to change the origin:
Keeping up-to-dateUpgrading your cloneJust invoke the following:
Creating packagesCreating and testingIf you haven't read it yet, take a look at the pkgsrc Guide (also in /usr/pkgsrc/doc/pkgsrc.txt). Create a package. Test it with pkglint -- not all reported warnings and errors need to be fixed, but you should try to at least understand the reported ones. In case of trouble, ask on the tech-pkg mailing list. Differences from pkgsrcA wip package should have a file Generally, for a package that also exists in pkgsrc, when you update a wip package to a new version, you should also modify Unless you are a TNF member and intend to commit your own package later, the committer will be different than the packager. It is appropriate to add an additional section, typically before packaging changes, either "Packaged in wip by Alyssa P. Hacker." or "Update prepared in wip by Ben Bitdiddle". Importing the packageMake sure you have a current checkout. Note that "git pull" will by default create backwards merge commits; these are messy and not allowed. Therefore you must rebase any local commits on top of upstream.
Add your package:
where newpkg is the name of your new package. Then add the directory to the list of all subdirectories:
Check that you are about to commit only what you intend to commit:
If it looks good, commit, review and push:
If the commit is not correct, fix it with "git commit --amend". See below for commit message rules. If you get a permission error while pushing the changes, make sure you checked out the repository with your user permissions and are not trying to push to the anonymous git repository. You can also use the wip/import-package.sh script instead. If you find out that there were changes in between your last pull and the push, please rebase your changes.
Further changesInclude a TODO file detailing what you think is missing or needs more work, or just noting that it's finished. For any further changes to the package, go to the newpkg directory, edit,
or
to remove unused/unneeded files, then
If you have questions, or want review for a finished package, ask on the tech-pkg mailing list. If other people with enough knowledge judge your package ready, it'll probably get committed to the main pkgsrc repository soon afterwards -- enjoy your fame in that case! You will find pkgsrc.se very useful while working on packages. Also try the tools that come with meta-pkgs/pkg_developer. Notes regarding commit messagesIn git(1) the first line of a commit message represents its subject and should consists of a short single line summary of the changes. It is separated from the body (where changes are discussed more in detail) with a newline, e.g.:
Please remember that the subject of the commit message will automatically become also the Subject: of the corresponding email sent to the pkgsrc-wip-changes mailing list. A good subject will help other people involved in pkgsrc-wip to track your changes. It is suggested to respect the following practices for the various use cases. Import of a package named foobar, version 1.2.3
Update of a package named foobar to version 1.2.4
Miscellaneous fixes of a package named foobar
TODO file changes
Project contact |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |