Perbaikan Struktur Paket OpenRC

Submitted by w41lf0x on Sun, 03/22/2015 - 15:50

slackwareSetelah mencoba banyak konfigurasi akhirnya saya mengikuti struktur #OpenRC untuk #ArchLinux (archlinux lagi, cc @go2n). Saya mengikuti model struktur OpenRC ArchLinux yang mana menempatkan berkas-berkas init dan konfigurasi OpenRC ke dalam sebuah direktori yaitu /etc/openrc. Hanya dengan menempatkan skrip init dan konfigurasi OpenRC ke dalam satu struktur direktori sendiri, saya mendapatkan dua keuntungan sekaligus. Keuntungan pertama adalah dengan menggunakan struktur ini adalah sistem init asli #Slackware jadi lebih bersih karena tidak tercampur dengan milik OpenRC. Yang kedua adalah struktur ini menyelesaikan permasalahan di pemaketan awal saya yaitu skrip init OpenRC tidak mau membaca konfigurasi per-init di dalam direktori /etc/conf.d karena /etc/init.d bukanlah sebuah direktori betulan melainkan symlink ke direktori /etc/rc.d/init.d. Sehingga saat OpenRC mengecek prefix dari /etc/init.d ia tidak mendapati suatu lokasipun (non existed).

Selain mengubah struktur saya juga membuang beberapa skrip init ubahan milik saya dan menggunakan skrip default dari OpenRC karena struktur ini memungkinkan skrip tersebut bekerja dengan benar. Saya juga menyesuaikan isi runlevels sesuai rekomendasi OpenRC serta menambah beberapa skrip init baru yang berkaitan dengan desktop.

Jika anda sudah menggunakan skrip SlackBuild saya, silakan bangun ulang paket OpenRC anda menggunakan #SlackBuild OpenRC di git commit ini di github. Setelah anda menginstal paketnya, segera lakukan penyesuaian konfigurasi menggunakan #slackpkg new-config atau copy-kan konfigurasi OpenRC lama yang sudah anda ubah:

# slackpkg new-config
# cp /etc/conf.d/* /etc/openrc/conf.d/
# cp /etc/local.d/* /etc/openrc/local.d/
# cp /etc/rc.conf /etc/openrc/rc.conf

Pastikan juga untuk menggunakan inittab dari OpenRC /etc/openrc/inittab dengan membuat symlink-nya ke /etc/inittab (backup dulu yang asli punya Slackware):

# mv /etc/inittab /etc/inittab.slack
# cd /etc; ln -s openrc/inittab inittab

Kemudian sesuaikan isi /etc/openrc/runlevels sesuai kondisi awal milik anda atau keinginan anda.

Setelah itu anda dapat menghapus berkas atau direktori milik paket OpenRC yang lama:

# rm -rf /etc/conf.d /etc/rc.d/init.d/* /etc/local.d /etc/rc.conf /etc/runlevels

Lalu reboot mesin anda.

Selamat mencoba.