Ero sivun ”Deb-paketin tekeminen” versioiden välillä

Siirry navigaatioon Siirry hakuun
565 merkkiä lisätty ,  29. heinäkuuta 2016
(→‎Pohja: hello-2.10, dh_maken kysymys päivittynyt)
Rivi 64: Rivi 64:
1  Source: hello
1  Source: hello
2  Section: unknown
2  Section: unknown
3  Priority: extra
3  Priority: optional
4  Maintainer: Paketin Tekijä <foo@bar.com>
4  Maintainer: Paketin Tekijä <foo@bar.com>
5  Build-Depends: debhelper (>= 5), autotools-dev
5  Build-Depends: debhelper (>= 9), autotools-dev
6  Standards-Version: 3.7.2
6  Standards-Version: 3.9.8
7
7 Homepage: <insert the upstream URL, if relevant>
Package: hello
#Vcs-Git: git://anonscm.debian.org/collab-maint/hello.git
9  Architecture: any
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/hello.git
10 Depends: ${shlibs:Depends}, ${misc:Depends}
10
11 Description: <insert up to 60 chars description>
11 Package: hello
12 <insert long description, indented with spaces>
12 Architecture: any
13 Depends: ${shlibs:Depends}, ${misc:Depends}
14 Description: <insert up to 60 chars description>
15 <insert long description, indented with spaces>
</pre>
</pre>
Riveillä 1-6 on ''lähdekoodipaketin'' (engl. ''source'') perustiedot:
Riveillä 1–9 on ''lähdekoodipaketin'' (engl. ''source'') perustiedot:
*Rivillä 1 on lähdekoodipaketin nimi
*Rivillä 1 on lähdekoodipaketin nimi
*Rivillä 2 kerrotaan, mihin osioon paketti kuuluu. Debianissa paketit osioihin, joita ovat mm. ''main'' (vapaat ohjelmat), ''non-free'' (ohjelmat, jotka eivät ole vapaita) ja ''contrib'' (ohjelmat, jotka riippuvat vapaista ohjelmista). Nämä ohjelmat on yhä jaettu pienempiin osioihin, kuten ''devel'' (kehitystyökalut) ja ''mail'' (sähköpostiohjelmat). Hellolle sopiva osio voisi olla ''text''. Osiot on listattu [http://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections Debian policyssä].
*Rivillä 2 kerrotaan, mihin osioon paketti kuuluu. Debianissa paketit osioihin, joita ovat mm. ''main'' (vapaat ohjelmat), ''non-free'' (ohjelmat, jotka eivät ole vapaita) ja ''contrib'' (ohjelmat, jotka riippuvat vapaista ohjelmista). Nämä ohjelmat on yhä jaettu pienempiin osioihin, kuten ''devel'' (kehitystyökalut) ja ''mail'' (sähköpostiohjelmat). Hellolle sopiva osio voisi olla ''text''. Osiot on listattu [http://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections Debian policyssä].
*Kolmannella rivillä kerrotaan, kuinka tärkeää käyttäjälle on asentaa tämä paketti. Vaikka "Terve maailma!" -viestin tulostava ohjelma voi tuntua tärkeältä, ehkäpä se ei kuitenkaan ole yhtä tärkeä kuin vaikka ydin, joten jätetään sen tärkeysasteeksi ''extra''.
*Kolmannella rivillä kerrotaan, kuinka tärkeää käyttäjälle on asentaa tämä paketti. Vaikka "Terve maailma!" -viestin tulostava ohjelma voi tuntua tärkeältä, ehkäpä se ei kuitenkaan ole yhtä tärkeä kuin vaikka ydin, joten asetetaan sen tärkeysasteeksi ''optional'', jota käytetään useimmille paketeille.
*Neljännellä rivillä on paketin tekijän nimi ja sähköpostiosoite
*Neljännellä rivillä on paketin tekijän nimi ja sähköpostiosoite
*Rivillä 5 listataan pilkulla erotettuna paketit, jotka tarvitaan tämän paketin kääntämiseen. Jos ohjelmasta on oltava tietty versio, haluttu versio voidaan ilmoittaa sulkeissa (esimerkissä tarvitaan ''debhelper''-paketin versio 5 tai uudempi). Käytännössä aina tarvittavia paketteja (esim. gcc ja make) ei tarvitse luetella, sillä ne otetaan mukaan automaattisesti. Kuitenkin kaikki muut kääntämisessä tarvittavat vähänkin harvinaisemmat paketit on lueteltava. Tässä vaiheessa voitaisiin myös samalla tavalla luetella paketit, jotka estävät kääntämisen (''Build-Conflicts: paketti1, paketti2''). Hello on sen verran helppo kääntää, ettei meidän tarvitse nyt lisätä tähän mitään ylimääräisiä paketteja.
*Rivillä 5 listataan pilkulla erotettuna paketit, jotka tarvitaan tämän paketin kääntämiseen. Jos ohjelmasta on oltava tietty versio, haluttu versio voidaan ilmoittaa sulkeissa (esimerkissä tarvitaan ''debhelper''-paketin versio 9 tai uudempi). Käytännössä aina tarvittavia paketteja (esim. gcc ja make) ei tarvitse luetella, sillä ne otetaan mukaan automaattisesti. Kuitenkin kaikki muut kääntämisessä tarvittavat vähänkin harvinaisemmat paketit on lueteltava. Tässä vaiheessa voitaisiin myös samalla tavalla luetella paketit, jotka estävät kääntämisen (''Build-Conflicts: paketti1, paketti2''). Hello on sen verran helppo kääntää, ettei meidän tarvitse nyt lisätä tähän mitään ylimääräisiä paketteja.
*Rivillä 6 kerrotaan, minkä ''Debian Policy'' -standardin version mukainen paketti on. Tähän ei tarvitse koskea.
*Rivillä 6 kerrotaan, minkä ''Debian Policy'' -standardin version mukainen paketti on. Tähän ei tarvitse koskea.
*Rivillä 8 on varsinaisen binääripaketin nimi. Yleensä se on sama kuin lähdekoodipaketin nimi.
*Riville 7 kirjoitetaan ohjelman kotisivu.
*Rivillä 9 kerrotaan, millä arkkitehtuurilla paketti toimii. Jätetään tämä arvoon "any", jolloin paketin tekevä työkalu huolehtii arkkitehtuurista. Jos paketti toimii kaikilla arkkitehtuureilla (esim. se on ohjepaketti tai [[Perl]]-skripti), arkkitehtuuriksi laitetaan "all".
*Riveillä 8 ja 9 voidaan kertoa, missä [[versionhallintajärjestelmä]]ssä debian-pakettia ylläpidetään. Me voimme poistaa nämä rivit, koska emme tässä käytä versionhallintaa.
*Rivillä 10 listataan paketit, jotka ovat binääripaketin riippuvuuksia. Koska Hello ei tarvitse mitään erityisiä paketteja, jätetään tämä tyhjäksi. "''${shllibs:Debends}''" aiheuttaa sen, että pakettia luotaessa pyritään riippuvuuksiksi lisäämään automaattisesti ne paketit, joiden tiedostoja vasten tämän paketin konekieliset tiedostot on linkitetty.
 
Riveillä 11–15 on ''binääripaketin'' tiedot:
*Rivillä 11 on varsinaisen binääripaketin nimi. Yleensä se on sama kuin lähdekoodipaketin nimi.
*Rivillä 12 kerrotaan, millä arkkitehtuurilla paketti toimii. Jätetään tämä arvoon "any", jolloin paketin tekevä työkalu huolehtii arkkitehtuurista. Jos paketti toimii kaikilla arkkitehtuureilla (esim. se on ohjepaketti tai [[Perl]]-skripti), arkkitehtuuriksi laitetaan "all".
*Rivillä 13 listataan paketit, jotka ovat binääripaketin riippuvuuksia. Koska Hello ei tarvitse mitään erityisiä paketteja, jätetään tämä tyhjäksi. "''${shlibs:Debends}''" aiheuttaa sen, että pakettia luotaessa pyritään riippuvuuksiksi lisäämään automaattisesti ne paketit, joiden tiedostoja vasten tämän paketin konekieliset tiedostot on linkitetty.
*Lopuksi paketille annetaan vielä lyhyt (suositus noin 60 merkkiä) ja pitkä kuvaus. Pitkä kuvaus kirjoitetaan tiedoston loppuun siten, että jokaisen rivin alussa on välilyönti. Tyhjiä rivejä voidaan tehdä laittamalla riville pelkästään piste. Näin lopullinen <tt>control</tt>-tiedosto voisi näyttää tältä:
*Lopuksi paketille annetaan vielä lyhyt (suositus noin 60 merkkiä) ja pitkä kuvaus. Pitkä kuvaus kirjoitetaan tiedoston loppuun siten, että jokaisen rivin alussa on välilyönti. Tyhjiä rivejä voidaan tehdä laittamalla riville pelkästään piste. Näin lopullinen <tt>control</tt>-tiedosto voisi näyttää tältä:
<pre>
<pre>
Source: hello
Source: hello
Section: text
Section: text
Priority: extra
Priority: optional
Maintainer: Tekijä <foo@bar.com>
Maintainer: Tekijä <foo@bar.com>
Build-Depends: debhelper (>= 5), autotools-dev
Build-Depends: debhelper (>= 9), autotools-dev
Standards-Version: 3.7.2
Standards-Version: 3.9.8
Homapage: https://www.gnu.org/software/hello/


Package: hello
Package: hello
119

muokkausta

Navigointivalikko