Ke: Saya suka belajar dengan membaca sumber. Tapi itu melelahkan mencari mereka di internet terpecah pada banyak banyak situs proyek yang berbeda. Saya ingin melihat repo sentral yang dapat dijelajahi dengan sumber dari banyak banyak aplikasi di satu tempat.
- Ketika seseorang ingin mencari dokumentasi beberapa alat Linux, tempat terbaik adalah:
man toolname
. - Ketika saya ingin menelusuri sumber-sumber Linux "sesuai permintaan", saya selalu dapat beralih ke: Linux Cross Reference .
- Ketika saya ingin menemukan staf yang paling umum, saya dapat menemukan semua sumber di Coreutils .
- Ketika saya ingin memeriksa cara membuat sesuatu, saya dapat (misalnya) masuk ke http://www.archlinux.org/packages/ , periksa pkgbuild-nya.
Apakah ada repo yang menyimpan sumber sebagian besar alat di satu tempat? - Sama seperti man
memegang dokumentasi atau sumber kernel Linux Cross Reference .
Maksud saya sesuatu untuk "cepat" "sesuai permintaan" memeriksa bagaimana hal-hal diterapkan. (Ya, saya tahu google -> tapi saya bosan dengan rutin: 1. mencari situs proyek 2. menjelajah repo atau bahkan lebih buruk -> memeriksa repo 3. menghapus ketika selesai)
UCAPAN:
Saya sudah stres, saya ingin memeriksa alat: cepat, cepat, sesuai permintaan.
Artinya: Saya tidak ingin menginstal seluruh aplikasi dengan sumbernya hanya untuk melihat sumbernya. (btw. sumber daya web lebih disukai, jadi saya bisa memeriksa sumber dari banyak komputer - saya tidak punya admin pada semuanya)
sumber
apt-get source $PACKAGE-NAME
setelah Anda menambahkan repositori sumberapt-get source
Anda dapat menjalankan perintah ini sebagai pengguna normal.Jawaban:
Biarkan saya menanggapi pertanyaan Anda dengan jawaban alternatif. Saya kira Anda ingin membaca kode untuk alat baris perintah Unix tradisional, tidak hanya versi GNU ini. Membaca kode alat serupa dari berbagai proyek adalah praktik yang baik untuk mempelajari berbagai ide dan implementasi.
GNU memiliki antarmuka web yang bagus untuk repo coreutils: http://git.savannah.gnu.org/cgit/coreutils.git
Keluarga BSD memiliki antarmuka web yang serupa untuk repo:
Basis kode BSD menarik karena biasanya menggunakan lebih sedikit kode untuk alat yang sama, yaitu: hanya mendukung opsi tradisional, tidak ada opsi tambahan, sh adalah shell nyata dan tidak hanya link ke shell besar lainnya (bash), dll. Alat mirip dengan coreutils berada di dalam bin, sbin, usr.bin dan usr.sbin.
Anda juga dapat menjelajahi antarmuka web yang sama jika Anda ingin membaca kode untuk membangun perangkat lunak pihak ketiga (mirip dengan pkgbuild lengkung). NetBSD dan DragonFly menggunakan pkgsrc dari repo NetBSD. OpenBSD dan FreeBSD memiliki kerangka kerja ini dalam repo masing-masing.
Repo lain yang menarik untuk tujuan Anda adalah:
sumber
Karena tidak ada tempat sentral untuk pengembangan sumber terbuka, tidak ada repositori pusat yang berisi sebagian besar perangkat lunak sumber terbuka. Beberapa menggunakan GitHub, BitBucket, server pribadi, Sourceforge, Launchpad, dll. Jadi ini adalah lingkungan yang benar-benar terdistribusi dan tidak ada manfaat langsung memiliki satu repositori hanya dengan menyalin sumbernya.
Di sisi lain, Distribusi biner (pengiriman binari alih-alih kode sumber) biasanya menyediakan sumber untuk sebagian besar paket mereka dan menyediakannya untuk semua pengguna. Jadi peluang terbaik Anda adalah menggunakan infrastruktur yang disediakan oleh Distribusi. Perlu diketahui bahwa itu tidak selalu berisi perubahan dan perbaikan terbaru dan mungkin sudah usang.
Contoh cara mengunduh paket sumber dari distribusi Anda:
Untuk Arch, lihat jawaban di jawaban untuk pertanyaan serupa tentang stackoverflow.
Jika Anda hanya ingin mengunduh kode sumber, Anda bisa menggunakan paket.debian.org , mis. Tautan untuk coreutils . Ini akan memberikan tautan unduhan ke paket asli (
orig.*
atau sumber yang sudah dibersihkan untuk beberapa paketdsfg.*
). Anda dapat melakukan hal yang sama dengan daftar paket Arch Linux, mis: halaman arch coreutils . TheDownload from Mirror
akan mendownload paket.sumber