Gentoo

Cara Menulis Ebuild Gentoo

Cara Menulis Ebuild Gentoo
Jika Anda tidak memiliki paket Gentoo yang Anda inginkan, jangan takut! Anda dapat membangun sendiri! Untuk melakukan ini, Anda memerlukan beberapa pengalaman dengan mengkompilasi perangkat lunak menggunakan toolkit Linux make, gcc, dan lainnya yang dikenal. Untuk membuat paket Gentoo, 'emake' digunakan untuk mengontrol dan mengatur proses. Dengan menggunakan alat ini, Anda dapat membuat paket yang sangat ramping yang berjalan dengan cepat dan andal.

Bangun Struktur

Untuk membuat ebuild Anda sendiri, Anda harus mulai dengan *.membangun file. File ebuild Anda adalah jantung dari seluruh ebuild Anda. File ebuild bergantung pada banyak file lain, seperti halnya make. Faktanya, dalam banyak kasus, ebuild Anda akan bergantung pada merek, meskipun itu adalah pilihan Anda. Berikut ini adalah pohon neovim:
/mnt/SW/projects/System/Gentoo/gentoo/app-editors/neovim
file
neovim-0.4.3-gcc-10-memperbaiki.tambalan
neovim-0.4.4-cmake_luaversion_patch
neovim-0.4.4-cmake-release-type.tambalan
sysinit.vim
Manifest
metadata.xml
neovim-0.4.4-r100.membangun kembali
neovim-9999.membangun kembali

Jadi, untuk apa Anda menggunakan file-file ini dalam aplikasi Anda?? *.file ebuild adalah file yang jelas. File ini berisi SRC_URI, yang langsung menunjuk ke kode. Informasi lain dalam file termasuk deskripsi, situs web, dan informasi lebih lanjut yang diperlukan untuk menyusun paket.

File Manifest berisi hash yang secara unik mengidentifikasi kode.

Metadata.File xml berisi nama pengelola dan alamat email, nama proyek, dan beberapa tanda untuk dikompilasi. Identitas jarak jauh juga terletak di file ini, seperti repositori GitHub untuk upstream. Direktori file berisi tambalan yang mungkin Anda perlukan dan pengaturan khusus yang Anda perlukan. Contoh di atas menunjukkan file dengan pengaturan yang sesuai dengan pengelola Gentoo.

Di dalam File Ebuild

Nilai-nilai di dalam file mudah dimengerti, sebagian besar. Deskripsi dan Beranda adalah untuk bantuan pengembang. Nomor EAPI menunjukkan versi Gentoo yang akan dijalankan. Anda juga memiliki Lisensi, yang cukup jelas; cocokkan Lisensi dengan kode yang Anda gunakan untuk membuat file ebuild.

Yang lebih rumit adalah SLOT, yang digunakan jika Anda perlu memiliki beberapa versi. SLOT kemudian akan mengarahkan build ini ke versi yang Anda dukung. Sebagian besar perangkat lunak akan memiliki nilai 0, memungkinkan hanya satu versi pada satu waktu.

KATA KUNCI adalah nilai yang menunjukkan platform mana yang dapat dikompilasi oleh kode sumber Anda. Yang diberikan adalah amd65, x86, dan mungkin arm64. Daftar lengkap tersedia di sistem Gentoo Anda. Perhatikan bahwa jika Anda ingin berkontribusi, Anda harus atur tilde (~) di depan arsitektur. Ini berarti bahwa kode tersebut belum diuji, jadi pastikan kode tersebut telah diuji dengan baik sebelum Anda menghapus simbol ini. Sebaiknya, minta banyak pengguna melihat kode sebelum menghapus tilde.

Variabel IUSE kembali ke parameter yang ingin Anda atur untuk kompiler Anda.

Anda juga memiliki DEPEND, yang tersedia dalam tiga jenis berbeda. Nilai RDEPEND adalah nilai yang Anda gunakan saat menjalankan kode. Nilai BDEPEND adalah nilai yang bergantung pada build. Paket yang Anda coba tambahkan ke Gentoo akan berisi file yang menjelaskan dependensi yang diperlukan.

Untuk paket sederhana, Anda tidak perlu apa-apa lagi. Namun, paket spesifik yang sedang Anda kerjakan mungkin memiliki beberapa hal yang harus dilakukan sebelum mengkompilasi kode. Jika ini tidak sesuai dengan yang diharapkan pengembang Gentoo, Anda dapat mengaturnya sendiri.

Fungsi

Dalam file, penginstal akan menggunakan fungsi tertentu untuk seluruh proses. Misalnya, untuk menerapkan tambalan sebelum menjalankan perintah, src_persiapan() fungsi akan menangani situasi ini.

Itu src_konfigurasi() fungsi menggunakan econf untuk mengatur, i.e., 'gunakan_aktifkan.' Dalam fungsi ini, Anda dapat membongkar file Anda menggunakan perintah unpack. Anda juga dapat meneruskan args ke ./configure untuk proyek Anda menggunakan econf. Seperti yang Anda lihat, fungsi-fungsi ini diberi nama sesuai dengan persamaannya, dan sering kali, mereka menyampaikan argumen.

Itu src_install() fungsi melakukan fungsi yang sama dengan membuat Install akan dilakukan dalam build C/C++. Namun, itu memang berisi banyak opsi yang dapat Anda cari di dokumen referensi.

Sebagian besar fungsi ada ketika Anda memiliki perangkat lunak kasus khusus. Anda mungkin akan mulai menggali melalui fungsi-fungsi ini ketika Anda mencoba mengimplementasikan paket pertama Anda.

Contoh: File Paket SimulIDE

Di sini, kami menyajikan file yang dibuat untuk paket SimulIDE. Paket ini membutuhkan lingkungan pengembangan Qt5, jadi Anda perlu menambahkannya di file ebuild Anda. Pada gambar berikut, Anda dapat melihat nilai RDEPEND yang mencerminkan ide ini. Pustaka sudah ada di dalam repositori Gentoo, yang memudahkan untuk menunjuk.

# Hak Cipta 2021 Mats Tage Axelsson
# Didistribusikan di bawah ketentuan GNU General Public License v3
EAPI=7
DESCRIPTION="SimulIDE mensimulasikan desain sirkuit Anda, termasuk emulasi Arduino."
HOMEPAGE="https://www://.simulida.com/p/home.html"
SRC_URI="https://mailfence.com/pub/docs/santigoro/web/SimulIDE_0.4.14/simulide_0.4.14-SR4_Sumber.ter.gz"
LISENSI="GPL-3"
SLOT="0"
KATA KUNCI="~x86 ~amd64"
RDEPEND="dev-qt/qtsvg
dev-qt/qtxml
dev-qt/qtscript
dev-qt/qtwitgetget
dev-qt/qtbersamaan
dev-qt/qtserialport
dev-qt/qtmultimedia"
TERGANTUNG="$RDEPEND
dev-libs/libelf
dev-embedded/avr-libc"
src_persiapan()
membongkar simulide_0.4.14-SR4_Sumber.ter.gz

src_konfigurasi()
econf --dengan-popt

Dalam src_persiapan() fungsi, Anda dapat melihat bahwa paket tersebut dibongkar sebelum digunakan.

Hamparan

Ketika Anda telah memangkas dan membersihkan semua kesalahan Anda, Anda mungkin ingin menambahkan paket Anda ke proyek Gentoo. Awam dibuat agar Anda dapat menggunakan perangkat lunak eksperimental untuk instalasi distribusi utama Anda. Proyek ini disebut Overlay, tetapi perintah untuk menginstalnya disebut Awam.

Kesimpulan

Membuat paket baru untuk Gentoo adalah pekerjaan yang dapat meningkatkan kemampuan Anda. Meski begitu, jika Anda telah membuat banyak paket sebelum menggunakan make dan rangkaian alat gcc, Anda seharusnya dapat mengambil proses ini dengan lebih cepat. Juga, pastikan untuk berkontribusi kembali ke komunitas sebanyak yang Anda bisa.

Cara Mengganti Tombol Kiri & Kanan Mouse di PC Windows 10
Sudah menjadi hal biasa bahwa semua perangkat mouse komputer dirancang secara ergonomis untuk pengguna yang tidak kidal. Tetapi ada perangkat mouse ya...
Tiru klik Mouse dengan mengarahkan mouse menggunakan Clickless Mouse di Windows 10
Menggunakan mouse atau keyboard dalam posisi yang salah dari penggunaan yang berlebihan dapat menyebabkan banyak masalah kesehatan, termasuk keteganga...
Tambahkan gerakan Mouse ke Windows 10 menggunakan alat gratis ini
Dalam beberapa tahun terakhir, komputer dan sistem operasi telah berkembang pesat. Ada saat ketika pengguna harus menggunakan perintah untuk menavigas...