Product SiteDocumentation Site

1.3. Bagaimana Proyek Debian Bekerja

Karya yang dihasilkan proyek Debian merupakan hasil simultan dari kerja infrastruktur yang dilakukan oleh para pengembang Debian berpengalaman, individu, atau pekerjaan kolektif dari para pengembang paket Debian, dan umpan balik pengguna.

1.3.1. The Debian Developers (Pengembang Debian)

Pengembang Debian memiliki banyak tanggung jawab, dan sebagai anggota resmi proyek, mereka memiliki pengaruh besar mengenai arah proyek ini. Seorang pengembang Debian umumnya bertanggung jawab atas paling tidak satu paket, namun sesuai dengan waktu yang tersedia dan keinginan mereka, mereka bebas untuk bergabung ke beberapa tim, sehingga memiliki tanggung jawab lebih dalam proyek.
Pemeliharaan paket menjadi aktivitas yang relatif terorganisir, terdokumentasi sangat baik atau bahkan sangat diatur. Pemeliharaan paketharus memenuhi semua standar dari Debian Policy. Untungnya, terdapat banyak perkakas yang memfasilitasi pekerjaan pemeliharaan paket ini. Pengembang lantas dapat langsung fokus pada spesifikasi paket mereka dan pada pekerjaan yang lebih rumit, seperti memecahkan bug.
Kebijakan, elemen penting dari Proyek Debian, menyediakan aturan yang memastikan kualitas paket dan interoperabilitas sempurna dari distribusi. Terima kasih pada Kebijakan ini, Debian tetap konsisten terlepas dari ukurannya yang begitu besar. Kebijakan ini tidak diukir di atas batu, namun secara terus-menerus berevolusi, terima kasih atas proposal yang diformulasikan dalam milis . Amandemen yang disetujui oleh semua pihak diterima dan diterapkan ke dalam dokumen oleh kelompok kecil pengelola yang tidak memiliki tanggung jawab editorial (mereka hanya memuat modifikasi yang telah disetujui oleh pengembang Debian yang merupakan anggota dari milis debian-policy). Anda dapat membaca amandemen saat ini pada sistem pelacakan bug:
Kebijakan memuat aspek teknis pemaketan dengan sangat baik. Ukuran dari proyek juga memunculkan permasalahan organisasi; hal ini ditangani oleh Debian Constitution, yang menyediakan struktur dan mekanisme untuk membuat keputusan.
Konstitusi ini mendefinisikan beberapa peran dan posisi, berikut dengan tanggung jawab dan kewenangannya. Secara khusus perlu diperhatikan bahwa pengembang Debian selalu memiliki kewenangan dalam membuat keputusan terakhir di sidang umum, di mana diperlukan tiga-per-empat (75%) suara diperlukan untuk membuat perubahan (misalnya yang memiliki efek pada Dokumen Yayasan). Biar bagaimanapun, setiap tahunnya pengembang memilih seorang “pemimpin” untuk merepresentasikan mereka dalam pertemuan, dan memastikan koordinasi internal antara beragam tim. Pemilihan ini selalu penuh dengan diskusi intensif. Peran pemimpin tidak didefinisikan secara formal dalam dokumen mana pun: kandidat untuk posisi ini umumnya mengajukan pemahaman mereka sendiri akan posisi pemimpin. Pada praktiknya, peran pemimpin termasuk sebagai perwakilan ke media, koordinasi antara tim “internal”, dan menyediakan panduan umum ke proyek, di mana pengembang dapat menghubungkan: pandangan DPL secara implisit disetujui oleh mayoritas anggota proyek.
Secara khusus, seorang pemimpin memiliki otoritas; hak suaranya memecahkan pemungutan suara seri; ia dapat membuat keputusan apapun yang sebelumnya tak seorang pun memiliki wewenang dan dapat mendelegasikan sebagian tanggung jawabnya.
Sejak masa kelahirannya, proyek Debian telah dipimpin secara berturut-turut oleh Ian Murdock, Bruce Perens, Ian Jackson, Wichert Akkerman, Ben Collins, Bdale Garbee, Martin Michlmayr, Branden Robinson, Anthony Towns, Sam Hocevar, Steve McIntyre, Stefano Zacchiroli dan Lucas Nussbaum.
Konstitusi telah mendefinisikan sebuah “komite teknis”. Peran dasar komite ini adalah memutuskan hal-hal teknis saat para pengembang yang terlibat belum mencapai kesepakatan di antara mereka sendiri. Selain itu, komite ini berperan sebagai penasihat bagi pengembang mana pun yang tidak bisa membuat keputusan yang mereka bertanggung jawab atasnya. Penting untuk dicatat bahwa mereka hanya terlibat saat diundang oleh salah satu pihak yang membutuhkan.
Akhirnya, di dalam konstitusi didefinisikan posisi “sekretaris proyek” yang bertanggung jawab atas proses pemungutan suara dari beragam pemilihan dan sidang umum.
Prosedur “sidang umum” didetailkan di dalam konstitusi, dari masa diskusi awal hingga penghitungan suara. Lebih lanjut silakan lihat
Bahkan jika konstitusi ini menyediakan kemiripan dengan demokrasi, kenyataan sehari-hari cukup berbeda: Debian secara alami mengikuti peraturan perangkat lunak bebas do-ocracy: mereka yang melakukan, mereka yang menentukan. Banyak waktu dapat dihabiskan dengan mendebatkan keuntungan dari beragam pendekatan masalah; solusi yang akan dipilih pertama adalah solusi yang fungsional dan memuaskan... menghargai waktu yang dihabiskan oleh mereka yang kompeten.
Hanya inilah cara untuk mendapatkan kredit: lakukan sesuatu yang berguna dan tunjukkan telah bekerja dengan baik. Banyak tim “administratif” Debian bekerja berdasarkan perjanjian, lebih suka relawan yang telah berkontribusi secara efektif dan membuktikan kompetensinya. Metode ini praktis, karena mayoritas pekerjaan tim ini bersifat publik, sehingga dapat diakses oleh pengembang manapun yang tertarik. Oleh karena inilah Debian sering digambarkan sebagai “meritokrasi”.
Metode efektif operasi ini menjamin kualitas dari kontributor merupakan “kunci” dalam tim Debian. Metode ini bukan berarti sempurna dan sesekali terdapat mereka yang tidak setuju dengan cara kerja ini. Seleski pengembang yang dipilih dalam tim bisa jadi terlihat arbitrer atau bahkan tak adil. Lebih lanjut, tak semuanya memiliki definisi yang sama dari layanan yang diharapkan dari tim ini. Untuk beberapa orang, merupakan hal yang tidak dapat diterima untuk mengguna selama 8 hari untuk memasukkan paket Debian baru, sementara lainnya tidak masalah akan bersabar menunggu selama 3 minggu. Kondisi seperti ini, terdapat keluhan rutin dari mereka yang tidak suka mengenai “kualitas layanan” dari beberapa tim.

1.3.2. Peran Aktif dari Pengguna

Apakah relevan untuk menyebut pengguna di antara mereka yang bekerja dalam proyek Debian? Ya: mereka memiliki peran penting dalam proyek. Jauh dari sekadar “pasif”, beberapa pengguna menjalakan Debian versi pengembangan dan secara rutin melaporkan bug untuk mengindikasikan masalah. Lainnya bahkan pergi jauh lebih dalam dengan memberikan ide perbaikan, dengan mengisi laporan kutu dengan tingkat severity “wishlist”, atau bahkan memberikan koreksi pada kode sumber, yang dinamakan sebagai “patches” (lihat kotak KEMBALI KE DASAR Patch, bagaimana mengirim perbaikan).
Sebagai tambahan, banyak pengguna yang yang puas dengan layanan yang ditawarkan Debian suka memberikan kontribusi pada proyek mereka sendiri. Tidak semua orang memiliki tingkat kemahiran yang cukup dalam pemrograman, mereka memilih untuk untuk membantu penerjemahan dan me-review dokumentasi. Terdapat milis spesifik bahasa tertentu untuk mengkoordinasikan pekerjaan ini.
Semua mekanisme ini didorong oleh perilaku pengguna. Jauh dari keadaan terisolasi, mereka merupakan komunitas di mana pertukaran sungguh terjadi. Kami sangat menghargai aktivitas impresif dari pengguna dalam milis diskusi (Bab 7, Memecahkan masalah dan menemukan informasi yang relevan mendiskusikan hal ini lebih detail).
Tidak hanya pengguna membantu mereka (dan lainnya) dalam isu teknis yang berakibat langsung pada mereka, mereka juga mendiskusikan cara terbaik berkontribusi pada proyek Debian, dan membantu meneruskannya — diskusi yang seringkali menghasilkan saran untuk perbaikan.
Karena Debian tidak mengeluarkan dana untuk kampanye promosi, pengguna memiliki peran penting dalam hal difusi, memastikan kehebatan Debian melalui mulut-ke-mulut.
Metode ini berfungsi dengan baik, karena penggemar Debian ada pada setiap tingkatan komunitas pengembang perangkat lunak bebas: dari pesta instalasi (workshop di mana para pengguna yang lebih berpengalaman membantu para pendatang baru untuk menginstall sistem) yang diorganisir oleh LUG “Linux User Groups” lokal, hingga stand asosiasi pada konvensi teknologi besar yang berurusan dengan Linux, dsb.
Relawan membuat poster, brosur dan materi promosi lainnya yang berguna yang bermanfaat untuk proyek. Ini semua tersedia untuk publik dan Debian menyediakannya secara bebas dalam website:

1.3.3. Tim dan Sub-Proyek

Debian dikelola dengan konsep sumber paket, dengan setiap pengelola atau sekelompok pengelola. Banyak karya yang lambat laun bermunculan, memastikan administrasi dari infrastruktur, pengelolaan pekerjaan yang tidak spesifik pada paket tertentu (penjaminan kualitas, Debian Policy, installer, dll.), dengan tim terbaru tumbuh di sekitar sub-proyek.

1.3.3.1. Sub-Proyek Debian Saat Ini

To each their own Debian! A sub-project is a group of volunteers interested in adapting Debian to specific needs. Beyond the selection of a sub-group of programs intended for a particular domain (education, medicine, multimedia creation, etc.), sub-projects are also involved in improving existing packages, packaging missing software, adapting the installer, creating specific documentation, and more.
Berikut ini adalah beberapa sub-proyek pilihan yang ada saat ini:
  • Debian-Junior, oleh Ben Armstrong, menawarkan sistem Debian yang menarik dan mudah digunakan bagi anak-anak;
  • Debian-Edu, oleh Petter Reinholdtsen, fokus pada pembuatan distribusi khusus untuk dunia akademis;
  • Debian Med, oleh Andreas Tille, didedikasikan untuk bidang medis;
  • Debian Multimedia which deals with audio and multimedia work;
  • Debian-Desktop which focuses on the desktop and coordinates artwork for the default theme;
  • Debian GIS which takes care of Geographical Information Systems applications and users;
  • Debian Accessibility, finally, improving Debian to match the requirements of people with disabilities.
Daftar ini akan terus tumbuh berkembang seiring berjalannya waktu dan persepsi yang berkembang dengan keuntungan dari sub-proyek Debian. Dengan dukungan penuh dari infrastruktur Debian, mereka dapat fokus pada pekerjaan yang menambah nilai tanpa harus khawatir tentang sinkronisasi dengan Debian, karena mereka dikembangkan di dalam proyek.

1.3.3.2. Tim Administratif

Mayoritas tim administratif relatif dekat dan perekrutan hanya dilakukan dengan cara kooptasi. Cara terbaik untuk bergabung adalah dengan membantu secara cerdas anggota saat ini, menunjukkan bahwa Anda telah mengerti objektif dan metoda operasi.
ftpmasters secara bertanggung jawab dari arsip ofisial paket Debian. Mereka mengelola program yang menerima paket dikirim oleh pengembang dan secara otomatis menyimpannya, setelah beberapa pemeriksaan pada server reference (ftp-master.debian.org).
They must also verify the licenses of all new packages, in order to ensure that Debian may distribute them, prior to including them in the corpus of existing packages. When a developer wishes to remove a package, they address this team through the bug tracking system and the ftp.debian.org “pseudo-package”.
The Debian System Administrators (DSA) team (), as one might expect, is responsible for system administration of the many servers used by the project. They ensure optimal functioning of all base services (DNS, Web, e-mail, shell, etc.), install software requested by Debian developers, and take all precautions in regards to security.
listmasters mengelola server milis. Mereka membuat milis baru, mengelola bounces (email yang gagal terkirim), dan mengelola filter spam (email yang tak diinginkan dalam jumlah banyak).
Each specific service has its own administration team, generally composed of volunteers who have installed it (and also frequently programmed the corresponding tools themselves). This is the case of the bug tracking system (BTS), the package tracker, alioth.debian.org (FusionForge server, see sidebar PERKAKAS FusionForge, Pisau Swiss untuk Pengembangan Kolaboratif), the services available on qa.debian.org, lintian.debian.org, buildd.debian.org, cdimage.debian.org, etc.

1.3.3.3. Tim Pengembang, Tim Transversal

Tidak seperti tim administratif, tim pengembang relatif lebih terbuka, bahkan pada kontributor luar. Bahkan jika Debian tidak memiliki lokasi untuk membuat perangkat lunak, proyek Debian membutuhkan program spesifik untuk memenuhi tujuannya. Tentu, dikembangkan di bawah lisensi perangkat lunak bebas, perkakas ini menggunakan metode yang sudah terbukti di dalam dunia perangkat lunak bebas.
Debian has developed little software of its own, but certain programs have assumed a starring role, and their fame has spread beyond the scope of the project. Good examples are dpkg, the Debian package management program (it is, in fact, an abbreviation of Debian PacKaGe, and generally pronounced as “dee-package”), and apt, a tool to automatically install any Debian package, and its dependencies, guaranteeing the consistency of the system after an upgrade (its name is an acronym for Advanced Package Tool). Their teams are, however, much smaller, since a rather high level of programming skill is required to gain an overall understanding of the operations of these types of programs.
The most important team is probably that for the Debian installation program, debian-installer, which has accomplished a work of momentous proportions since its conception in 2001. Numerous contributors were needed, since it is difficult to write a single program able to install Debian on a dozen different architectures. Each one has its own mechanism for booting and its own bootloader. All of this work is coordinated on the mailing list, under the direction of Cyril Brulebois.
The (very small) debian-cd program team has an even more modest objective. Many “small” contributors are responsible for their architecture, since the main developer can not know all the subtleties, nor the exact way to start the installer from the CD-ROM.
Banyak tim harus berkolaborasi dengan yang lainnya dalam melakukan pemaketan: mencoba, sebagai contoh, memastikan kualitas pada semua tingkatan dari proyek Debian. milis mengembangkan Debian Policy berdasarkan proposal dari berbagai tempat. Tim ini bertanggung jawab untuk setiap arsitektur () meng-compile semua paket, mengadaptasi mereka pada arsitektur tertentu, jika dibutuhkan.
Other teams manage the most important packages in order to ensure maintenance without placing too heavy a load on a single pair of shoulders; this is the case with the C library and , the C compiler on the list, or Xorg on the (this group is also known as the X Strike Force).