codema.in

Debian Packaging Workshop at COEP Jan 2017

PP Pirate Praveen Public Seen by 474

Coordination thread for Debian Packaging Workshop at COEP.

Pre-requisites are documented here
https://codema.in/d/LTpSdMuX/debian-packaging-pre-requisites

Join our real time chat group using one of the 3 options and say hi. If you have difficulty with pre-requisites please ask here or on our chat room.

IRC: #debian-in on irc.oftc.net
XMPP: debian-in@conference.diasp.in
Matrix: #_oftc_#debian-in:matrix.org

If you are new to these technologies, I suggest you try matrix, see https://matrix.org for details.

See https://poddery.com/#xmpp for XMPP apps and use http://webchat.oftc.net/?channels=debian-in&uio=MT11bmRlZmluZWQb1 to join the IRC room

I'm hoping to divide the whole students into the following teams based on their interest, once they understand the basics of packaging (using nodejs modules, as they are easy to package for a new person. @sruthi is maintaining hundreds of nodejs modules even though she was a librarian before).

  • Those who want to focus on packaging (again split into nodejs, ruby, python, go)
  • Those who are interested in coding (we need help improving tools like npm2deb, gem2deb, lintian, dh-make. Adding glue code like grunt-browserify-lite, troubleshooting test failures, porting to new library versions etc)
  • Those who want to work on maintaining big packages like gitlab, diaspora, pagure
  • Those who want to help with system administration (maintaining poddery.com, diasp.in, git.fosscommunity.in, adding new services like matrix etc).

To set up name and email in environment variables https://wiki.debian.org/Diaspora/Packaging/gem2deb#Setup_your_environment

Please refer https://wiki.debian.org/Javascript/Nodejs/Npm2Deb for detailed steps of packaging.

For repacking instructions please refer https://wiki.debian.org/Javascript/Repacking

Software I want to package during the week
1. Ava https://wiki.debian.org/Javascript/Nodejs/Tasks/ava (has long dependency chain, we should try to package as much as possible).
2. GNUKhata, Behave (https://github.com/behave/behave/)
3. Update diaspora to 0.6.2.0 (will need new rubygems packages or existing packages updated)
4. Fix bugs of some nodejs/ruby packages

Everyone should have gitlab running on their lxc containers and it should be accessible via local network.

If your request to join pkg-javascript team is accepted, follow the steps below to import your package to alioth. Import all your packages to alioth and use it directly for all future packages (we were using git.fosscommunity.in only as a temporary option till we got access to alioth).

  1. Configure your alioth username in ~/.ssh/config and add ssh keys to alioth. See link below. https://wiki.debian.org/Alioth/SSH#How_to_handle_differing_username
  2. Remove origin from your existing repos. git remote remove origin
  3. gbp create-remote-repo --remote-url-pattern='git+ssh://git.debian.org/git/pkg-javascript/%(pkg)s.git' (You can saved this command as a shell script with js-create-repo name in your $PATH). This will create a repo in alioth and push your changes there. Make sure your directory name is same as package name (it starts with node-) and also the debian/xyz-1 tag is pointing to latest commit. (git tag -d debian/xyz-1; git push origin :debian/xyz-1; git tag debian/xyz-1). It is always better to remove debian/xyz-1 tag immediately after gbp import-dsc --pristine-tar command.

Before sending an RFS, please check you can install the package correctly using dpkg -i (you'll know if its dependencies are packaged or not). If a dependency is available from experimental, enable experimental in your sources.list and install it. If a dependency is available in NEW, gbp clone (with --pristine-tar option) the repo from alioth (all repo addresses follow the same pattern, differing only by the actual package name), build the package locally and install it. If it is not in experimental or NEW, it has to be packaged first.

TA

Tushar Agey Wed 4 Jan 2017 10:19AM

I am packaging aproba

AGC

Ajinkya Geetanand Chavan Wed 4 Jan 2017 10:20AM

I am packaging console-control-strings

AS

Akash Sarda Wed 4 Jan 2017 10:21AM

hoek

PP

Pirate Praveen Fri 20 Jan 2017 5:51PM

You have to fix the description, it was rejected by ftp masters.

VPD

Vinay Prakash Desai Wed 4 Jan 2017 10:22AM

I am packaging aws4

PP

Pirate Praveen Fri 20 Jan 2017 5:25PM

node-aws4 was rejected by ftp masters, they have replied with a comment. Can you update your package?

SAC

Srushti Avinash Chaudhari Wed 4 Jan 2017 10:22AM

I am packaging aws-sign2 (0.6.0).

PP

Pirate Praveen Fri 20 Jan 2017 5:52PM

Can you fix your package? It is missing some copyright notices. You can run licensecheck --deb-machine -l0 -r to see license statements of all files in your package.

YK

Yogiraj Kulkarni Wed 4 Jan 2017 10:23AM

I am packaging has-unicode

AS

Akash Sarda Wed 4 Jan 2017 10:24AM

Amarpreet :
json-schema

AK

Abhishek Kuvalekar Wed 4 Jan 2017 10:25AM

I am packaging jsbn.

KYV

Kolhe Yashashree Vishvanath Wed 4 Jan 2017 10:29AM

i am packaging tweetnacl

SA

Saurabh Agrawal Wed 4 Jan 2017 10:30AM

I'm packaging assert-plus

SA

sudhanshu allurwar Wed 4 Jan 2017 10:31AM

I am packaging call-signature

PP

Pirate Praveen Fri 20 Jan 2017 5:34PM

Your package was rejected. Can you fix it?

RMS

Ranjan Milind Sarwade Wed 4 Jan 2017 10:31AM

I'm packaging extsprintf

AN

Aditya Neralkar Wed 4 Jan 2017 10:31AM

asynckit

VB

Vivek Bhave Wed 4 Jan 2017 10:32AM

I am packaging binary-extensions

AA

Ameya Apte Wed 4 Jan 2017 10:32AM

I am packaging common-path-prefix

DU

[deactivated account] Wed 4 Jan 2017 10:32AM

I'll be packaging caseless

PM

Prathamesh Mane Wed 4 Jan 2017 10:32AM

I am packaging clean-yaml-object

AK

Akshay kemekar Wed 4 Jan 2017 10:33AM

i am packaging asn1

RN

Roshan Nalawade Wed 4 Jan 2017 10:34AM

tough-cookie

PP

Pirate Praveen Fri 20 Jan 2017 5:55PM

Your package node-imurmurhash was rejected. Please fix copyright and description.

PH

Pradnya Hulle Wed 4 Jan 2017 10:34AM

I am doing is-error

ST

Shirish Togarla Wed 4 Jan 2017 10:35AM

I am packaging fn-name

GJ

Gaurav Juvekar Wed 4 Jan 2017 10:35AM

I am packaging is-obj

RP

Ravishankar Purne Wed 4 Jan 2017 10:35AM

Packaging "arrify

SR

Siddhesh Rane Wed 4 Jan 2017 10:36AM

ci-Info under packaging....

AK

Aarti Kashyap Wed 4 Jan 2017 10:36AM

is-generator-fn

SP

Sumedh Pendurkar Wed 4 Jan 2017 10:38AM

slice-ansi

REB

Rushikesh Eknath Bhadane Wed 4 Jan 2017 1:21PM

I am packaging stringstream(0.0.5)

ARL

Abhishek Ramchandra Lolage Thu 5 Jan 2017 6:30AM

I am packaging plur(2.1.2)

NG

Nikhil Gawande Thu 5 Jan 2017 7:00AM

I am packaging 'buf-compare'

AK

Abhishek Kuvalekar Thu 5 Jan 2017 10:21AM

I am packaging md5-hex

NM

Nupur Malpani Thu 5 Jan 2017 10:45AM

I am taking single-line-log

AK

Aarti Kashyap Thu 5 Jan 2017 11:15AM

term-size

TA

Tushar Agey Thu 5 Jan 2017 11:21AM

I am packaging throttleit

YK

Yogiraj Kulkarni Sat 7 Jan 2017 9:40AM

I am packaging caller

YK

Yogiraj Kulkarni Sat 7 Jan 2017 11:08AM

I am packaging require-inject

PP

Pirate Praveen Sat 7 Jan 2017 4:52PM

"I've responded to a few of these ITPs and have found the responses I've
received suggest that you've chosen your recruits well, so it strikes me
as a shame that they are underselling themselves by submitting ITPs in
this state."

Philip Hands on debian-devel list,

https://lists.debian.org/debian-devel/2017/01/msg00283.html

Some good words for all of you and important advice, be careful about descriptions in ITPs too. Feel free to ask for help if you can't find a good description

AAM

Abhijit A M Mon 9 Jan 2017 5:59PM

Where have the photos disappeared?

YK

Yogiraj Kulkarni Tue 10 Jan 2017 3:38AM

Sir, photos are there on the pre-requisites page.

PP

Pirate Praveen Wed 11 Jan 2017 3:12PM

If any rfs is waiting for review/upload, please contact me. Also please contact me if you have not yet found a software to package, I will suggest some software for you to package.

PP

Pirate Praveen Fri 13 Jan 2017 2:51PM

Next steps for those who are serious about maintaining packages:

  1. Install debian sid on your main machines (dual boot will do).
  2. Configure your mail clients for gpg. See https://emailselfdefense.fsf.org/en/ for setting up thunderbird + enigmail for your laptop and see https://k9mail.github.io/documentation/security/pgpmime_current.html for setting up K9 Mail with Open Keychain.
PP

Pirate Praveen Thu 26 Jan 2017 10:45AM

@amarpreetsingha can you fix email address in your package's control file?

PP

Pirate Praveen Sat 28 Jan 2017 6:13PM

Those who created their keys on your phones may import your keys to your laptops using this guide https://www.openkeychain.org/faq/#how-to-import-an-openkeychain-backup-with-gpg It will allow you to use your key on your laptop too (you'll need it when you are ready to upload your packages yourself without a sponsor). It will also serve as a backup in case you lose your keys on the phone like @abhishekkuvalekar (he had to reinstall his phone and lost his keys).

PP

Pirate Praveen Sun 5 Feb 2017 12:41PM

If your request to join pkg-javascript team is accepted, follow the steps below to import your package to alioth. Import all your packages to alioth and use it directly for all future packages (we were using git.fosscommunity.in only as a temporary option till we got access to alioth).

  1. Configure your alioth username in ~/.ssh/config and add ssh keys to alioth. See link below. https://wiki.debian.org/Alioth/SSH#How_to_handle_differing_username
  2. Remove origin from your existing repos. git remote remove origin
  3. gbp create-remote-repo --remote-url-pattern='git+ssh://git.debian.org/git/pkg-javascript/%(pkg)s.git' (I have saved this command as js-create-repo). This will create a repo in alioth and push your changes there. Make sure your directory name is same as package name (it starts with node-) and also the debian/xyz-1 tag is pointing to latest commit. (git tag -d debian/xyz-1; git push origin :debian/xyz-1; git tag debian/xyz-1)
PP

Pirate Praveen Sun 5 Feb 2017 3:42PM

Before sending an RFS, please check you can install the package correctly using dpkg -i (you'll know if its dependencies are packaged or not). If a dependency is available from experimental, enable experimental in your sources.list and install it. If a dependency is available in NEW, gbp clone (with --pristine-tar option) the repo from alioth (all repo addresses follow the same pattern, differing only by the actual package name), build the package locally and install it.