Workflow
The team repository has some helper scripts that help the team have a more or less consistent workflow. You are encouraged to read those helper scripts, specially the ones mentioned in this documentation, so that you can understanding what is going on and not treat them like magic.
Finding work to do
There are several sources of information for things to do in the Ruby team's packages. Try these:
UDD Debian Maintainer Dashboard
- most important items are at the top of the TODO list
Package Entropy Tracker (PET).
most useful places to start: "Packages with RC bugs", then "With bugs"
Basic Setup
You need a few variables in your environment. Add lines similar to the ones below to your ~/.bashrc:
export DEBEMAIL="you@example.com" export DEBFULLNAME="FirstName Lastname"
If you use a shell different from bash you probably know what you are doing so we trust you will be able to do a similar configuration for it.
Create an account on Salsa
Go to Salsa and create an account. Your account will look like "username-guest" if you are not a Debian member.
Ask to join the ruby-team group.
Add the following lines to ~/.ssh/config, replacing username-guest with your actual username:
Host salsa.debian.org User username-guest
Clone the team master repository
Clone the master repository with a name that suits you (e.g. ruby-team). It contains helper scripts, and will be used as the home to import other team repositories.
git clone git@salsa.debian.org:ruby-team/meta.git ruby-team
if you don't have a salsa account, you can use this instead (but not that the repository will be read-only and you will not be able to push changes with git)
git clone https://salsa.debian.org/ruby-team/meta.git ruby-team
Setup the build environment
From the root the master repository (e.g. ruby-team if you called it this way during the previous step), run:
./setup
Checkout a package
From the root the master repository (e.g. ruby-team if you called it this way during the previous step), run:
./checkout PACKAGENAME
Then cd into the package directory
cd PACKAGENAME
Fix a bug in the packaging
Add a new package
Update an existing package to a new upstream version
From the package directory, below the master repository, run:
../new-upstream
Refresh autogenerated packaging files
From the package directory, below the master repository, run:
dh-make-ruby -w
Do a local build
Make sure you have the package build dependencies installed. From the package directory, below the master repository, the following command will do:
dpkg-checkbuilddeps || mk-build-deps -i -r -s sudo
Please read the manpage of mk-build-deps(1) to understand what it does.
Then do the build:
gbp buildpackage -us -uc
Do a build in a clean environment
From the package directory, below the master repository, use the build helper script:
../build
Prepare the package for release
- make sure all your changes to the packaging are documented in debian/changelog
Request sponsorship
TO BE WRITTEN
Upload (DD/DM only)
From the package directory, below the master repository, use the build-and-upload help script:
../build-and-upload
If you already built the package before on its final state, you can also skip building again with the upload helper script:
../upload