Product SiteDocumentation Site

15.4. Menjadi seorang Maintainer Paket

15.4.1. Belajar untuk Membuat Perubahan

Membuat paket Debian berkualitas tidak selalu pekerjaan sederhana, dan menjadi pengelola paket membutuhkan ..., keduanya dengan teori dan praktik. Bukan masalah sesederhana membangun dan meng-install perangkat lunak; tapi, ... kompleksitas datang dari pemahaman masalah dan konflik, dan lebih umum dengan interaksi, dengan ... paket lain yang tersedia.

15.4.1.1. Aturan

Sebuah paket Debian harus comply dengan aturan ... yang terkumpul dalam kebijakan Debian, dan setiap maintainer paket harus mengetahuinya. Tidak terdapat persyaratan untuk mengetahui mereka dengan hati, namun mengetahui mereka ada dan mengacu padanya saat ... menghadirkan alternatif non-trivial. Setiap Debian maintainer membuat kesalahan dengan tidak mengetahui aturan, namun ini bukan masalah besar begitu mereka mengetahui kesalahan diperbaiki saat pengguna melaporkanny dalam laporan bug, yang seringkali terjadi terima kasih pada pengguna mahir.

15.4.1.2. Prosedur

Debian bukanlah koleksi sederhana dari paket-paket individual. Semua pekerjaan pemaketan merupakan bagian dari proyek kolektif; menjadi pengembang Debian meliputi mengetahi bagaimana proyek Debian beroperasi ... Setiap pengembang akan, cepat atau lambat, berinteraksi satu sama lain. Referensi pengembang Debian (dalam paket developers-reference) menyarikan apa yang harus diketahui oleh setiap pengembang Debian agar dapat berinteraksi dengan baik mungkin dengan beragam tim dalam proyek, dan untuk keuntungan terbaik dari sumber daya yang tersedia. Dokumen ini juga ... beberapa tanggung jawab pengembang yang diharapkan dipenuhi.

15.4.1.3. Perkakas

Banyak perkakas membantu maintainer paket dalam pekerjaannya. Bagian ini menjelaskan ... secara cepat, namun tidak memberikan detail sepenuhnya, karena mereka memiliki dokumentasi komprehensifnya sendiri.
15.4.1.3.1. Program lintian
Perkakas ini adalah salah satu yang paling penting: pemeriksa paket Debian. Lintian berbasiskan array besar dari tes yang dibuat dari kebijakan Debian, dan mendeteksi secara cepat dan secara otomatis ... banyak kesalahan yang dapat diperbaiki sebelum paket dirilis.
Perkakas ini hanyalah pembantu, dan sesekali salah (contohnya, sejak kebijakan Debian berubah seiring waktu, lintian sesekali ....) ... juga tidak lengkap: tidak mendapatkan kesalahan Lintian bukan berarti bukti bahwa paket sudah sempurna; ... mencegah kesalahan yang paling umum.
15.4.1.3.2. The piuparts Program
This is another important tool: it automates the installation, upgrade, removal and purge of a package (in an isolated environment), and checks that none of these operations leads to an error. It can help in detecting missing dependencies, and it also detects when files are incorrectly left over after the package got purged.
15.4.1.3.3. devscripts
Paket devscripts berisi banyak program yang membantu beragam pekerjaan pengembang Debian:
  • debuild memungkinkan menghasilkan sebuah paket (dengan dpkg-buildpackage) dan menjalankan lintian untuk memeriksa kepatuhan dengan kebijakan Debian.
  • debclean membersihkan paket sumber setelah paket binari dihasilkan.
  • dch memungkinkan penyuntingan cepat dan mudah dari berkas debian/changelog dalam paket sumber.
  • uscan memeriksa apakah terdapat versi baru perangkat lunak yang dirilis oleh penulis upstream; hal ini membutuhkan berkas debian/watch dengan deskripsi dari lokasi rilis.
  • debi memungkinkan meng-install (dengan dpkg -i) paket Debian yang baru saja dibuat, dan menghindari mengetik nama lengkap dan path.
  • Hal yang mirip, debc memungkinkan pencarian isi dari paket yang baru dibuat (dengan dpkg -c), tanpa harus mengetik nama lengkap dan path.
  • bts mengendalikan sistem pelacakan bug dari command line; program ini secara otomatis menghasilkan pesan seperlunya.
  • debrelease menggunggah paket yang baru dibuat ke server remote, tanpa harus mengisi nama lengkap dan path dari berkas .changes terkait.
  • debsign menandakan berkas *.dsc dan *.changes
  • uupdate ... proses pembuatan dari revisi baru paket saat versi upstream telah dirilis.
15.4.1.3.4. debhelper dan dh-make
Debhelper adalah sekumpulan script yang memudahkan pembuatan paket ... kebijakan; script ini di-invoke dari debian/rules. Debhelper telah diterima secara luas dalam Debian, dengan ditunjukkan fakta bahwa digunakan oleh mayoritas paket Debian resmi. SEmua perintah berisi prefiks dh_. Debhelper ... dikembangkan oleh Joey Hess.
Script dh_make (dalam paket dh-make) membuat berkas yang dibutuhkan untuk membuat paket Debian dalam direktori .... berisi sumber ... perangkat lunak. Seperti sudah bisa ditebak dari nama program, berkas yang dihasilkan menggunakan Debhelper secara default.
15.4.1.3.5. dupload dan dput
Perintah dupload dan dput memungkinkan mengunggah paket Debian ke (bisa jadi remote) server. Hal ini memungkinkan pengembang untuk mempublikasikan paket mereka pada server Debian utama (ftp-master.debian.org) sehingga bisa terintegrasi ke dalam archive dan didistribusikan oleh cermin. Perintah ini mengambil berkas *.changes sebagai parameter, dan ... berkas relevan lainnya dari isinya.

15.4.2. Proses Penerimaan

Menjadi pengembang Debian bukanlah hal administratif sederhana. Proses ini terdiri dari beberapa langkah, dan ... merupakan inisiasi ... proses seleksi. Pada kasus apapun, hal ini diformalkan dan terdokumentasi dengan baik, jadi siapapun dapat melacak perkembangan pada situs ... pada proses anggota baru.

15.4.2.1. Persyaratan

Semua kandidat diharapkan memiliki pengetahuan ... dari bahasa Inggris. Hal ini dibutuhkan pada semua tingkat: untuk komunikasi awal dengan penguji, tentunya, dan tentu nanti, sejak bahasa Inggris adalah bahasa yang ... untuk hampir semua dokumentasi; juga, pengguna paket akan berkomunikasi dengan bahasa Inggris saat melaporkan bug, dan mereka berharap balasan dalam bahasa Inggris.
Persyaratan lainnya berkaitan dengan motivasi. Menjadi pengembang Debian merupakan proses yang hanya masuk akal jika kandidat mengetahui bahwa minat mereka dalam Debian akan bertahan hingga berbulan-bulan. Proses penerimaanya itu sendiri bisa jadi berlangsung beberapa bulan, dan Debian membutuhkan pengembang untuk jangka waktu panjang; setiap paket perlu pengelolaan permanen, dan tidak hanya unggah di awal saja.

15.4.2.2. Registrasi

Langkah pertama (nyata) terdiri dari mencari sponsor atau advokat; hal ini berarti menandakan bahwa kandidat telah aktif di dalam komunitas, dan karya mereka telah diapresias. Jika kandidat pemalu dan karya mereka tidak ... secara publik, mereka dapat mencoba meyakinkan pengembang Debian untuk mengadvokasi dan menunjukkan karya mereka secara privat.
At the same time, the candidate must generate a public/private RSA key pair with GnuPG, which should be signed by at least two official Debian developers. The signature authenticates the name on the key. Effectively, during a key signing party, each participant must show an official identification (usually an ID card or passport) together with their key identifiers. This step makes the link between the human and the keys official. This signature thus requires meeting in real life. If you have not yet met any Debian developers in a public free software conference, you can explicitly seek developers living nearby using the list on the following webpage as a starting point.
Once the registration on nm.debian.org has been validated by the advocate, an Application Manager is assigned to the candidate. The application manager will then drive the process through multiple pre-defined steps and checks.
Verifikasi pertama adalah pemeriksaan identitas. Jika Anda telah memiliki kunci yang ditandatangani oleh dua orang pengembang Debian, langkah ini sangat mudah; sebaliknya, manajer aplikasi akan mencoba mencari dan memandu Anda dalam mencari pengembang Debian yang dekat atau mengadakan kopdar dan penandatanganan kunci. Pada proses awal, saat jumlah pengembang masih sedikit, terdapat pengecualian terhadap prosedur ini yang memungkinkan langkah ini dilengkapi dengan memindai dokumen identifikasi resmi; ini tidak lagi relevan.

15.4.2.3. Menerima Prinsip-prinsip

Semua administratif formal ini diizinkan dengan pertimbangan filosofis. Poinnya adalah memastikan bahwa kandidat memahami dan menerima kontrak sosial dan prinsip di balik Free Software. Bergabung dengan Debian hanya mungkin jika seseorang berbagi nilai yang menyatukan pengembang saat ini, seperti yang dinyatakan dalam teks ... (dan diringkas dalam Bab 1, Proyek Debian).
Sebagai tambahan, setiap kandidat yang ingin bergabung Debian ranks diharapkan mengetahui cara kerja dari proyek, dan bagaimana berinteraksi dengan tepat untuk memecahkan masalah ... yang akan mereka temui seiring berjalannya waktu. Semua informasi ini secara umum didokumentasikan di dalam manual yang ditujukan kepada maintainer baru, dan dalam referensi pengembang Debian. ... dari dokumen ini seharusnya cukup ... menjawab pertanyaan penguji. Jika jawaban tidak cukup memuaskan, kandidat akan dikabari. Ia akan harus membaca (lagi) dokumentasi relevan sebelum mencoba lagi. Pada kasus di mana dokumentasi saat ini tidak mengandung jawaban yang tepat untuk jawaban, kandidat umumnya dapat mencapai jawaban dengan pengalaman praktikal selama di Debian, atau mendiskusikannya dengan pengembang Debian lainnya. Mekanisme ini memastikan bahwa kandidkat yang ... dalam Debian sebelum bergabung secara utuh. Ini merupakan kebijakan ..., kandidat .. yang bergabung ke ... merupakan ... dari kepingan puzzle.
Langkah ini umumnya dikenal sebagai Philosophy & Procedures (P&P for short) pada lingo pengembang yang terlibat dalam proses anggota baru.

15.4.2.4. Pemeriksaan Keahlian

Setiap aplikasi untuk menjadi pengembang resmi Debian harus dijustifikasi. Menjadi anggota proyek membutuhkan ... menunjukkan status ini legitimasi, dan memfasilitasi pekerjaan kandidat dalam membantu Debian. Justifikasi yang paling umum adalah ... diberikan Debian developer status ... memudahkan pengelolaan paket Debian, namun ini bukan satu-satunya. Beberapa pengembang bergabung ke proyek untuk aktif berkontribusi dengan mem-porting ke arsitektur spesifik, lainnya ingin meningkatkan dokumentasi, dan seterusnya.
Langkah ini merepresentasikan peluang bagi kandidat untuk menyatakan bahwa mereka ingin ... dalam proyek Debian dan menunjukkan bahwa mereka telah bergerak maju... Debian adalah proyek pragmatis dan mengatakan sesuatu tidak cukup, jika tindakan tidak sesuai dengan apa yang dikatakan. Umumnya, saat ... dalam proyek berkaitan dengan pengelolaan paket, versi pertama dari prospektif pakt akan harus divalidasi secara teknis dan diunggah ke server Debian oleh sponsor dari pengembang Debian saat ini.
Akhirnya, penguji memeriksa kemampuan teknis (pemaketan) kandidat dengan kuesioner yang detail. Jawaban buruk tidak diizinkan, namun waktu menjawab tidak dibatasi. Semua dokumentasi tersedia dan beberapa kali percobaan diizinkan jika jawaban pertama belum mencukupi. Langkah ini bukan bermaksud untuk mendiskriminasi, namun untuk memastikan ... pengetahuan yang sama bagi kontributor baru.
This step is known as the Tasks & Skills step (T&S for short) in the examiners' jargon.

15.4.2.5. Persetujuan Akhir

Pada langkah terakhir, seluruh proses di-review oleh DAM (Debian Account Manager). DAM akan me-review semua informasi kandidat yang telah dikumpulkan penguji dan membuat keputusan apakah akan membuat akun pada server Debian atau tidak. Pada keadaan di mana informasi tambahan dibutuhkan, pembuatan akun bisa jadi tertunda. Penolakan jarang terjadi jika penguji melakukan pekerjaannya dengan baik, namun sesekali terjadi penolakan. Hal ini tidak pernah permanen, dan kandidat bebas untuk mencoba lagi pada waktu berikutnya.
Keputusan DAM bersifat otoritatif dan (hampir) tanpa sanggahan, yang menerangkan mengapa orang-orang di DAM (saat ini, Jörg Jaspert, Christoph Berg dan Enrico Zini) seringkali pada masa lalu dikritik.