Membuat Repositori Debian/Ubuntu Pribadi Menggunakan Dropbox

Berawal dari keinginan untuk memiliki repositori debian pribadi online gratis, untuk keperluan menampung paket .deb yang dibangun pada mesin lokal, penulis membaca sejumlah materi mengenai hal tersebut, dilain kesempatan pada saat membaca artikel mengenai pemanfaatan dropbox dan google drive sebagai hosting web page static, penulis teringat kembali masalah repositori pribadi online tersebut dan munculah pemikiran untuk memanfaatkan layanan dropbox dan google drive menjadi repositori debian pribadi online.

Setelah melakukan sedikit usaha akhirnya penulis berhasil memanfaatkan layanan dari dropbox menjadi repositori debian pribadi online, langkah selanjutnya penulis ingin mencoba membuat repositori fedora pribadi menggunakan layanan dropbox :D , untuk google drive sendiri penulis belum mencobanya :)

Bagi pengguna yang tertarik memanfaatkan dropbox sebagai sumber repositori debian/ubuntu pribadi berikut penulis berikan langkah-langkahnya,

Sebelum memulai persiapkan dulu hal-hal yang dibutuhkan diantaranya,
  1. Akun dropbox yang siap pakai, jika belum buat akun dropbox melalui alamat berikut www.dropbox.com
  2. GPG key, untuk cara pembuatannya pernah dibahas pada blog ini
  3. deb paket yang akan diunggah
jika semuanya telah siap, pasang paket berikut pada sistem,

apt-get install reprepro dpkg-sig

Lanjutkan dengan melakukan langkah-langkah berikut :

1.  Persiapan dan Konfigurasi reprepro
Buat direktori ~/upload  yang akan digunakan untuk menampung paket .deb  pada home direktori pengguna, dan buat juga sebuah folder pada dropbox Public folder dengan nama debian-repo, pada direktori debian-repo buat folder baru dengan nama conf,


karena repositori yang akan dibuat diperuntukkan agar dapat digunakan  oleh seluruh pengguna didunia, public GPG key dibutuhkan untuk menandai repositori yang dibuat sebagai sumber terpercaya (trusted). Jika langkah in dilewati dan tidak menyertakan SignWith pada konfigurasi distributions, akan berakibat pada saat proses pemasangan paket dari repositori, dimana sistem akan selalu menampilkan pesan peringatan untrested package

Pesan Peringatan - Memasang Perangkat Lunak dari
sumber yang tidak terpercaya
Pada direktori debian-repo buat berkas yang berisi public GPG key dengan nama public-key.gpg, gunakan perintah gpg --list-keys untuk melihat public key

Pada gambar diatas 46A1207D adalah public GPG key
Jalankan perintah berikut untuk membuat berkas public GPG key, hasil dari perintah akan menghasilkan berkas public-key.gpg

gpg --armor --output public-key.gpg --export 46A1207D

Disini penulis akan membuat repositori untuk debian wheezy dan kali-linux, untuk keperluan tersebut penulis membuat berkas konfigurasi distributions dan menyimpannya pada direktori debian-repo/config, berikut adalah konfigurasi yang penulis gunakan,

[distributions]
Origin: Debian-Remaster
Label: Debian-Remaster
Codename: wheezy
Architectures: i386 amd64
Components: main
Description: Apt repository for Debian Wheezy Remaster project 
SignWith: 46A1207D

Origin: Kali-Linux-Remaster
Label: Kali-Linux-Remaster
Codename: kali
Architectures: i386 amd64
Components: main
Description: Apt repository for Kali Linux Remaster project 
SignWith: 46A1207D

hal yang perlu diperhatikan dari konfigurasi diatas,  
  • Origin dan Label diisi dengan nama yang diinginkan
  • Codename berisi nama versi sistem yang didukung oleh repositori seperti wheezy, raring, precise, kali
  • Description diisi dengan keterangan mengenai repositori yang dibuat
  • SignWith diisi dengan public key
jika ingin membuat repositori untuk sistem operasi lainnya seperti ubuntu, tinggal menambahkan konfigurasi yang sesuai, setelah selesai simpan pada direktori debian-repo/config dengan nama berkas distributions

2.  Menyiapkan paket .deb
Paket yang akan diunggah pada repositori sebaiknya telah ditandatangani (sign) menggunakan GPG key, untuk paket yang telah dibuild menggunakan debuild, dpkg-buildpackage atau pbuilder dengan identitas pemaket (nama,e-mail, gpg key) yang benar hal ini tidak diperlukan, namun untuk paket yang telah berwujud binary (.deb) atau telah dimodifikasi ulang dengan cara membongkar paket binary .deb dan membungkusnya kembali menggunakan (dpkg --build / -b), paket perlu ditandatangani menggunakan dpkg-sig,

Untuk menggunakan dpkg-sig secara mudah dan cepat, letakkan seluruh berkas .deb yang akan ditandatangani pada direktori yang telah disiapkan ~/upload/ kemudian jalankan perintah berikut,

dpkg-sig -k 46A1207D --sign bundler ~/upload/*.deb
Sesuaikan dengan public GPG key yang digunakan

 
3.  Mengunggah paket
Untuk kemudahan kumpulkan seluruh paket .deb yang akan diunggah pada sebuah direktori ~/upload/ , dalam posisi berada pada direktori debian-repo jalankan perintah berikut

reprepro -V includedeb wheezy ~/upload/*.deb


Jika benar pada direktori debian-repo yang tadi hanya terdapat direktori conf kini terdapat direktori db dists pool dengan subdirektorinya


Untuk proses unggah keserver dropbox, karena penulis menggunakan Dropbox desktop application (client) proses pengunggahan berjalan secara otomatis :)


4.  Menambahkan repositori pada sistem
Salin Public link yang didapatkan dari berkas public-repo.key, sebagai contoh public link yang didapatkan adalah,
https://dl.dropbox.com/u/16105254/debian-repo/public-repo.key


Untuk menambahkan repositori yang telah dibuat pada sistem, lakukan hal berikut,

Tambahkan gpg signature key ,

wget -O - https://dl.dropbox.com/u/16105254/debian-repo/public-repo.key | apt-key add -

Tambahakan alamat repositori, pada /etc/apt/sources.list

deb http://dl.dropbox.com/u/16105254/debian-repo kali main
Sesuaikan alamat repositori dengan public link yang didapat, untuk wheezy dan main diganti menyesuaikan dengan konfigurasi yang dilakukan :)

Setelah selesai jalankan apt-get update dan pasang paket yang telah selesai diunggah :)


Menambahkan dan menggunakan repositori yang selesai dibuat
pada Kali Linux
Yang perlu diperhatikan oleh pengguna adalah, dropbox memberikan batas transfer 20GB/perhari untuk pengguna akun gratis ;)

1 komentar:

Ade Malsasa Akbar said...

Luar biasa ini. Saya butuh waktu untuk membawanya, Kang. Sementara saya mengundang dahulu akang kemari: http://linuxdreambox.wordpress.com/2013/08/27/new-package-management-system-for-you-appcenter-developers/.

Terima kasih untuk inspirasi .RUN akang yang sampai hari ini terngiang di benak saya.

Post a Comment

Note: Only a member of this blog may post a comment.