diff --git a/doc/pisi.lyx b/doc/pisi.lyx index 32c0e387..811d597d 100644 --- a/doc/pisi.lyx +++ b/doc/pisi.lyx @@ -376,7 +376,8 @@ PSPEC (P \series default dosyası paketin oluşturulması için gerekli olan temel bilgiyi tanımlar. Oluşturulacak paketin ne olduğu, kaynağı, kim tarafından paketlendiği, - hangi başka paketlere ne tür bağımlılıklar içerdiği gibi bilgileri içerir. + kaynağa uygulanan yamalar, hangi başka paketlere ne tür bağımlılıklar içerdiği + gibi bilgileri içerir. \layout Standard Bir @@ -384,16 +385,30 @@ Bir PSPEC \series default dosyasından, dolayısı ile bir kaynaktan birden fazla paket oluşturulabilir. - Örneğin kcontrol paketi kdebase-sürüm.no.tar.gz kaynağından oluşturulabilecek - yalnızca bir pakettir. + Örneğin kcontrol paketi kdebase-kaynaksürümü.paketsürümü.tar.gz kaynağından + oluşturulabilecek yalnızca bir pakettir. \layout Standard Dosya biçimi XML'dir ve aşağıdaki etiketleri içerir. Her PSPEC dosyasında tüm etiketlerin bulunması zorunlu değildir. - Bulunması zorunlu olan etiketler aşağıda (Zorunlu) ile belirtilirler. + Bulunması zorunlu olan etiketler aşağıda (*) ile belirtilirler. +\layout Standard + +PSPEC dosyaları PSPEC deposunda pakete ait dizinde +\series bold +pspec.xml +\series default + adı ile tutulurlar. +\layout Standard + +Her PSPEC dosyası PISI etiketi (tag) altında bir Source ve +\bar under +en az +\bar default + bir Package olmak üzere iki ana bölüm içermek zorundadırlar. \layout Paragraph -Pisi +PISI \layout Subparagraph Source @@ -403,7 +418,7 @@ Source \series bold Name \series default -: (Zorunlu) Uygulamanın adı. +: (*) Uygulamanın adı. \layout Itemize @@ -417,7 +432,7 @@ Uygulaman \series bold Summary: \series default - (Zorunlu) Tek satırlık açıklayıcı bilgi. + (*) Tek satırlık açıklayıcı bilgi. Çoklu dil desteğine sahiptir. \layout Itemize @@ -425,7 +440,7 @@ Summary: \series bold Description: \series default - (Zorunlu) + (*) \series bold \series default @@ -512,7 +527,7 @@ IsA \series bold Packager: \series default - (Zorunlu) + (*) \series bold \series default @@ -524,14 +539,14 @@ Paketi olu \series bold Name: \series default - (Zorunlu) Paket geliştiricisinin adı ve soyadı. + (*) Paket geliştiricisinin adı ve soyadı. \layout Itemize \series bold Email: \series default - (Zorunlu) Paket geliştiricisinin e-posta adresi. + (*) Paket geliştiricisinin e-posta adresi. \end_deeper \layout Itemize @@ -539,14 +554,14 @@ Email: \series bold License \series default -: (Zorunlu) Uygulamanın lisansını belirtir (GPL, BSD, vb). +: (*) Uygulamanın lisansını belirtir (GPL, BSD, vb). \layout Itemize \series bold Archive: \series default - (Zorunlu) Uygulamanın orjinal kaynak kodunun bulunduğu URL'yi belirtir. + (*) Uygulamanın orjinal kaynak kodunun bulunduğu URL'yi belirtir. \series bold archType @@ -556,6 +571,7 @@ archType sha1sum \series default , sha1 ile alınmış özet değerini belirtir. + Her iki attribute (archType ve sha1sum) zorunludur. \layout Itemize @@ -653,38 +669,23 @@ BuildDependencies \series bold Dependency \series default -: Bir bağımlılık tanımlar. -\begin_deeper -\layout Itemize - - +: Bir bağımlılığı tanımlar. + Burada bahsedilen bağımlılık paket bağımlılığı olabilir (TODO: Comar bağımlılık +larını da bir şekilde ifade etmek gerekiyordu. + Bu belgede daha önce vardı sanırım çıkartmışız). + \series bold -Name +versionFrom \series default -: (text) Bağımlılık duyulan pakedin adı. -\layout Itemize - - + ve \series bold -Version: +versionTo \series default - (attribute) Bağımlı olunan tek bir sürüm numarasını bildirir. -\layout Itemize - - -\series bold -VersionFrom: -\series default - (attribute) Bu sürüm numarasından sonraki tüm sürüm numaralarına bağımlılığı - tarif eder. -\layout Itemize - - -\series bold -VersionTo: -\series default - (attribute) Bu sürüm numaralarına kadar olan bağımlılığı tarif eder. -\end_deeper + attribute bilgileri ile paketin hangi sürüm numarasına bağımlı olduğu ifade + edilebilir. + Örnek: +\newline +make \end_deeper \layout Itemize @@ -692,7 +693,7 @@ VersionTo: \series bold History \series default -: (Zorunlu) Pakete yapılan güncellemelerin bir listesini verir. +: (*) Pakete yapılan güncellemelerin bir listesini verir. \series bold History @@ -719,7 +720,7 @@ Release \series bold Update \series default -: (Zorunlu) Bir güncellemeyi tarif eder. +: (*) Bir güncellemeyi tarif eder. \begin_deeper \layout Itemize @@ -727,49 +728,50 @@ Update \series bold Type: \series default - (Zorunlu) Güncellemenin tipini belirtir. - (Security, Bug, Enhancement v.s) + Güncellemenin tipini belirtir (Security, Bug, Enhancement, Normal v.s). + Eğer bu etiket tanımlı değilse tip Normal olarak kabul edilir. \layout Itemize \series bold Date \series default -: (Zorunlu) Güncellemenin tarihi. +: (*) Güncellemenin tarihi. \layout Itemize \series bold Version: \series default - (Zorunlu) Uygulamanın sürüm numarası. + (*) Uygulamanın sürüm numarası. \layout Itemize \series bold Release: \series default - (Zorunlu) Pakedin sürüm numarası. + (*) Pakedin sürüm numarası. \end_deeper \end_deeper \layout Subparagraph Package: \series medium - (Zorunlu) + (*) \series default \series medium Uygulamadan oluşturulacak bir pakedi tanımlar. - + Her PSPEC dosyası en az bir \series default Package \series medium - içerisindeki bazı taglar -\series default -PİSİ + etiketi içermek zorundadır. +\layout Subparagraph + +Package \series medium - içerisindekileri tekrarlayacaklardır. + içerisindeki bazı taglar Source içerisindekileri tekrarlayabilir. Bu tekrarlamaların bazıları override edilirken (üzerine yazılırken) bazıları merge (birleştirilecek) edilecek. \layout Itemize @@ -845,37 +847,7 @@ RuntimeDependencies Dependency \series default : Bir bağımlılık tanımlar. -\begin_deeper -\layout Itemize - - -\series bold -Name -\series default -: Bağımlılık duyulan pakedin adı. -\layout Itemize - - -\series bold -Version: -\series default - Bağımlı olunan tek bir sürüm numarasını bildirir. -\layout Itemize - - -\series bold -VersionFrom: -\series default - Bu sürüm numarasından sonraki tüm sürüm numaralarına bağımlılığı tarif - eder. -\layout Itemize - - -\series bold -VersionTo: -\series default - Bu sürüm numaralarına kadar olan bağımlılığı tarif eder. -\end_deeper + BuildDependency ile aynı yapıdadır \end_deeper \layout Itemize @@ -893,37 +865,7 @@ InstallDependencies Dependency \series default : Bir bağımlılık tanımlar. -\begin_deeper -\layout Itemize - - -\series bold -Name -\series default -: Bağımlılık duyulan pakedin adı. -\layout Itemize - - -\series bold -Version: -\series default - Bağımlı olunan tek bir sürüm numarasını bildirir. -\layout Itemize - - -\series bold -VersionFrom: -\series default - Bu sürüm numarasından sonraki tüm sürüm numaralarına bağımlılığı tarif - eder. -\layout Itemize - - -\series bold -VersionTo: -\series default - Bu sürüm numaralarına kadar olan bağımlılığı tarif eder. -\end_deeper + BuildDependency ile aynı yapıdadır \end_deeper \layout Itemize @@ -931,7 +873,7 @@ VersionTo: \series bold Files \series default -: (Zorunlu) Pakedin kurulacak dosyalarının tiplerini belirlemek için kullanılır. +: (*) Pakedin kurulacak dosyalarının tiplerini belirlemek için kullanılır. Dosya tipleri ile ilgili bigi \begin_inset LatexCommand \ref{FType} @@ -945,21 +887,337 @@ Files \series bold Path \series default - (Zorunlu) -\begin_deeper -\layout Itemize - - + (*): +\series bold + +\series default +Bir dosya/dizin yolunu tarif eder. + Verilebilecek olan \series bold fileType \series default - (Zorunlu) (attribute) Bir path'in tipini belirtir. + attribute ise path'in tipini belirtir. Belge, paylaşımlı kütüphane, çalıştırılabilir, vb... + Eğer fileType verilmezse path tipi +\begin_inset Quotes eld +\end_inset + +other +\begin_inset Quotes erd +\end_inset + + olarak tanımlanır. + Örnek: +\newline +/usr/lib \end_deeper -\end_deeper +\layout Paragraph + +Örnek bir PSPEC Dosyası +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + popt +\layout LyX-Code + + +\size scriptsize + http://www.rpm.org/ +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + Pardus Man +\layout LyX-Code + + +\size scriptsize + bilgi@uludag.org.tr +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + As-Is +\layout LyX-Code + + +\size scriptsize + library:util:optparser +\layout LyX-Code + + +\size scriptsize + rpm:archive +\layout LyX-Code + + +\size scriptsize + Popt command line option parser +\layout LyX-Code + + +\size scriptsize + Command line option parsing library. +\layout LyX-Code + + +\size scriptsize + While it is similiar to getopt(3), it contains a number of enhancements, + including: +\layout LyX-Code + + +\size scriptsize + 1) popt is fully reentrant +\layout LyX-Code + + +\size scriptsize + 2) popt can parse arbitrary argv[] style arrays while getopt(2) makes + this quite difficult +\layout LyX-Code + + +\size scriptsize + 3) popt allows users to alias command line arguments +\layout LyX-Code + + +\size scriptsize + 4) popt provides convience functions for parsing strings into argv[] + style arrays +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + ftp +://ftp.rpm.org/pub/rpm/dist/rpm-4.1.x/popt-1.7.tar.gz +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + popt-1.7-uclibc.patch.gz +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + make +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + 06/14/2005 +\layout LyX-Code + + +\size scriptsize + 1.7 +\layout LyX-Code + + +\size scriptsize + 3 +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + 06/10/2005 +\layout LyX-Code + + +\size scriptsize + 1.7 +\layout LyX-Code + + +\size scriptsize + 2 +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + popt +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + gettext +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + /usr/lib +\layout LyX-Code + + +\size scriptsize + /usr/share/doc +\layout LyX-Code + + +\size scriptsize + /usr/share/man +\layout LyX-Code + + +\size scriptsize + /usr/share/locale +\layout LyX-Code + + +\size scriptsize + /usr/include/popt.h +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + +\layout LyX-Code + + +\size scriptsize + \layout Standard -TODO: Örnek Lazım! +Yukarıdaki örnek dosyada Package içerisinde tanımlanmayan taglar Source + içerisinden alınarak kullanılacaktır. + Bir kaynak paketten birden fazla ikili (binary) paket oluşturmak için Package + etiketleri farklı isimler (Name) verilerek arttırılabilir. + Paketler Files içerisinde bulunan Path taglarına göre bölümlendirilecektir. \layout Subsubsection actions.py Dosyası @@ -997,9 +1255,75 @@ P API \series default actionsapi adında sunulacaktır. -\layout Standard +\layout Paragraph -TODO: Örnek Lazım! +Örnek bir actions.py dosyası: +\layout LyX-Code + + +\size scriptsize +from pisi.actionsapi import gnuconfig +\layout LyX-Code + + +\size scriptsize +from pisi.actionsapi import autotools +\layout LyX-Code + +\layout LyX-Code + + +\size scriptsize +WorkDir='popt-1.7' +\layout LyX-Code + +\layout LyX-Code + + +\size scriptsize +def setup(): +\layout LyX-Code + + +\size scriptsize + gnuconfig.gnuconfig_update() +\layout LyX-Code + + +\size scriptsize + autotools.configure( +\begin_inset Quotes eld +\end_inset + +--with-nls +\begin_inset Quotes erd +\end_inset + +) +\layout LyX-Code + +\layout LyX-Code + + +\size scriptsize +def build(): +\layout LyX-Code + + +\size scriptsize + autotools.make() +\layout LyX-Code + +\layout LyX-Code + + +\size scriptsize +def install(): +\layout LyX-Code + + +\size scriptsize + autotools.install() \layout Subsubsection ChangeLog Dosyası @@ -1038,7 +1362,7 @@ Metadata Metadata \series default dosyası sadece oluşturulan paket ile ilgili bilgileri tutmaktan sorumludur. - Paket'den hakkında temel bilgi bu dosyadan alınacaktır. + Paket hakkında temel bilgi bu dosyadan alınacaktır. \layout Standard Bu bilgilerin büyük kısmı @@ -1064,19 +1388,21 @@ tan sonra al Metadata \series default dosyasının içeriği şöyle tanımlanmıştır; -\layout Itemize +\layout Standard \series bold -Metadata -\begin_deeper +PISI +\layout Subparagraph + +Source: +\series medium +Bu bölümdeki bilgiler PSPEC dosyasının Source bölümünden alınır. \layout Itemize \series bold Name -\series default - {From Package Tag} \layout Itemize @@ -1086,30 +1412,12 @@ Homepage \series bold -Summary -\series default -{From Package Tag} +Summary \layout Itemize \series bold -Description -\series default -{From Package Tag} -\layout Itemize - - -\series bold -IsA -\series default -{From Package Tag} -\layout Itemize - - -\series bold -PartOf -\series default -{From Package Tag} +Description \layout Itemize @@ -1129,13 +1437,29 @@ Name \series bold Email \end_deeper +\layout Subparagraph + +Package +\layout Itemize + + +\series bold +Name +\layout Itemize + + +\series bold +Summary +\layout Itemize + + +\series bold +Description \layout Itemize \series bold License -\series default - {From Package Tag} \layout Itemize @@ -1193,29 +1517,6 @@ RuntimeDependencies \series bold Dependency -\begin_deeper -\layout Itemize - - -\series bold -Name -\layout Itemize - - -\series bold -Version -\layout Itemize - - -\series bold -VersionFrom -\layout Itemize - - -\series bold -VersionTo -\end_deeper -\end_deeper \layout Itemize @@ -1227,28 +1528,6 @@ InstallDependencies \series bold Dependency -\begin_deeper -\layout Itemize - - -\series bold -Name -\layout Itemize - - -\series bold -Version -\layout Itemize - - -\series bold -VersionFrom -\layout Itemize - - -\series bold -VersionTo -\end_deeper \end_deeper \layout Itemize @@ -1260,17 +1539,7 @@ Files \series bold -Directory -\layout Itemize - - -\series bold -Wildcard -\layout Itemize - - -\series bold -File +Path \end_deeper \layout Itemize @@ -1318,15 +1587,10 @@ XML \series bold Metadata \series default - XML dosyalarının doğrulanması için kullanılabilecek bilgi -\emph on -pisi-metadata.dtd -\emph default - dosyasında tanımlanmıştır. + XML dosyalarının yapısı PSPEC dosyası ile hemen hemen aynıdır. + Yalnızca Metadata paket oluşumundan sonra elimizde olan bazı ek bilgileri + de içerir. -\layout Standard - -TODO: Örnek Lazım! \layout Subsection files.xml