CDBS
Ïðàêòèêà 1: èçìåíåíèå ïàêåòà grep
1 Ïåðåéäèòå ïî àäðåñó http://ftp.debian.org/debian/pool/main/g/grep/ è ñêà÷àéòå âåðñèþ 2.6.3-3 (åñëè âû èñïîëüçóåòå Ubuntu 11.10 èëè íîâåå, ëèáî Debian testing èëè unstable, èñïîëüçóéòå 2.9-1 èëè 2.9-2)
I Åñëè ïàêåò ñ èñõîäíûì êîäîì íå ðàñïàêîâûâàåòñÿ àâòîìàòè÷åñêè, ðàñïàêóéòå åãî ñ ïîìîùüþ dpkg-source -x grep_*.dsc
2 Ïîñìîòðèòå ôàéëû â debian/.
I Ñêîëüêî äâîè÷íûõ ïàêåòîâ ñîçäà¼òñÿ ýòèì ïàêåòîì?
I Êàêàÿ óòèëèòà äëÿ ñîçäàíèÿ ïàêåòîâ èñïîëüçóåòñÿ?
3 Ñîáåðèòå ïàêåò
4 Ìû ñîáèðàåìñÿ èçìåíèòü ïàêåò. Äîáàâüòå çàïèñü â æóðíàë èçìåíåíèé è óâåëè÷üòå íîìåð âåðñèè.
5 Òåïåðü îòêëþ÷èòå ïîääåðæêó ðåãóëÿðíûõ âûðàæåíèé Perl (perl-regexp) (ýòî îïöèÿ ./congure)
6 Ñîáåðèòå ïàêåò çàíîâî
7 Ñðàâíèòå îðèãèíàëüíûé è íîâûé ïàêåòû ñ ïîìîùüþ debdi
8 Óñòàíîâèòå ñîáðàííûé çàíîâî ïàêåò
9 Ïîêðè÷èòå, åñëè ÷òî-òî èñïîðòèëè ;)
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 31 / 86
Ïëàí
1 Ââåäåíèå
2 Ñîçäàíèå ïàêåòîâ ñ èñõîäíûì êîäîì
3 Ñáîðêà è òåñòèðîâàíèå ïàêåòîâ
4 Ïðàêòèêà 1: èçìåíåíèå ïàêåòà grep
5 Ïðîäâèíóòûå òåìû â ñáîðêå ïàêåòîâ
6 Ñîïðîâîæäåíèå ïàêåòîâ â Debian
7 Çàêëþ÷åíèå
8 Ïðàêòèêà 2: ñîçäàíèå ïàêåòà GNUjump
9 Ïðàêòèêà 3: ñîçäàíèå ïàêåòà áèáëèîòåêè Java
10Ïðàêòèêà 4: ñîçäàíèå ïàêåòà ñ gem-ïàêåòîì Ruby
11Practical session 5: packaging a Perl module
12Îòâåòû íà ïðàêòè÷åñêèå çàäàíèÿ Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 32 / 86
debian/copyright
I Àâòîðñêîå ïðàâî è ëèöåíçèîííàÿ èíôîðìàöèÿ äëÿ èñõîäíîãî êîäà è ñîçäàíèÿ ïàêåòà
I Òðàäèöèîííî çàïèñûâàåòñÿ â âèäå òåêñòîâîãî ôàéëà
I Íîâûé ìàøèíî÷èòàåìûé ôîðìàò:
http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format : http : / /www. debian . org / doc / packaging - manuals / copy ri ght - format / 1 . 0 / Upstream -Name : X S o l i t a i r e
Source : f t p : / / f t p . example . com/pub/games F i l e s : *
Copyright : Copyright 1998 John Doe <jdoe@example . com>
L i c e n s e : GPL-2+
This program i s f r e e s o f t w a r e ; you can r e d i s t r i b u t e i t [ . . . ]
On Debian systems , the f u l l t e x t o f the GNU General P u b l i c. L i c e n s e v e r s i o n 2 can be found i n the f i l e
`/ usr / s h a r e /common - l i c e n s e s /GPL- 2 ' . F i l e s : debian /*
Copyright : Copyright 1998 Jane Smith <jsmith@example . net>
L i c e n s e : [ LICENSE TEXT]
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 33 / 86
Èçìåíåíèå èñõîäíîãî êîäà îñíîâíîé âåòêè ðàçðàáîòêè
Çà÷àñòóþ òðåáóåòñÿ:
I Èñïðàâèòü îøèáêè èëè äîáàâèòü èçìåíåíèÿ, ñïåöèôè÷íûå äëÿ Debian
I Ïåðåíåñòè èñïðàâëåíèÿ èç áîëåå íîâîãî âûïóñêà îñíîâíîé âåòêè Íåñêîëüêî ìåòîäîâ, ÷òîáû ñäåëàòü ýòî:
I Èçìåíåíèå ôàéëîâ íàïðÿìóþ
I Ïðîñòî
I Íåò âîçìîæíîñòü îòñëåäèòü è çàäîêóìåíòèðîâàòü èçìåíåíèÿ
I Èñïîëüçîâàíèå ñèñòåì çàïëàò
I Óïðîùàåò âíåñåíèå âàøèõ èçìåíåíèé â îñíîâíóþ âåòêó
I Ïîìîãàåò äåëèòüñÿ èñïðàâëåíèÿìè ñ ïðîèçâîäíûìè äèñòðèáóòèâàìè
I Áîëüøèé êîíòðîëü èçìåíåíèÿì http://patch-tracker.debian.org/
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 34 / 86
Ñèñòåìû çàïëàò
I Ïðèíöèï: èçìåíåíèÿ ñîõðàíÿþòñÿ â âèäå çàïëàò â debian/patches/
I Ïðèìåíÿþòñÿ èëè íå ïðèìåíÿþòñÿ âî âðåìÿ ñáîðêè
I Â ïðîøëîì: íåñêîëüêî ðåàëèçàöèé simple-patchsys (cdbs), dpatch, quilt
I Êàæäàÿ ïîääåðæèâàåò äâå öåëè debian/rules:
I debian/rules patch: ïðèìåíÿåò âñå çàïëàòû
I debian/rules unpatch: îòìåíÿåò âñå çàïëàòû
I Äîïîëíèòåëüíàÿ äîêóìåíòàöèÿ:
http://wiki.debian.org/debian/patches
I Íîâûé ôîðìàò ïàêåòîâ ñ èñõîäíûì êîäîì ñî âñòðîåííîé ñèñòåìîé çàïëàò: 3.0 (quilt)
I Ðåêîìåíäóåìîå ðåøåíèå
I Âàì íåîáõîäèìî èçó÷èòü quilt
http://pkg-perl.alioth.debian.org/howto/quilt.html
I Íåçàâèñèìûé îò ñèñòåìû çàïëàò èíñòðóìåíò â devscripts:
edit-patch
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 35 / 86
Äîêóìåíòèðîâàíèå çàïëàò
I Ñòàíäàðòíûå çàãîëîâêè â íà÷àëå çàïëàòû
I Äîêóìåíòèðîâàíû â DEP-3 - Ðóêîâîäñòâî ïî òåãàì çàïëàò http://dep.debian.net/deps/dep3/
D e s c r i p t i o n : Fix widget f r o b n i c a t i o n speeds
F r o b n i ca t i n g widgets too q u i c k l y tended to cause e x p l o s i o n s . Forwarded : http : / / l i s t s . example . com/2010/03/1234. html
Author : John Doe <johndoe - guest@users . a l i o t h . debian . org>
Applied - Upstream : 1 . 2 , http : / / bzr . f o o . com/ f r o b n i c a t o r / r e v i s i o n /123 Last - Update : 2010 -03 -29
- - - a/ s r c / widgets . c +++ b/ s r c / widgets . c
@@ -101 ,9 +101 ,6 @@ s t r u c t {
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 36 / 86
Ñäåëàòü ÷òî-òî âî âðåìÿ óñòàíîâêè èëè óäàëåíèÿ
I Èíîãäà íåäîñòàòî÷íî ïðîñòî ðàñïàêîâàòü ïàêåò
I Ñîçäàòü/óäàëèòü ñèñòåìíûõ ïîëüçîâàòåëåé, çàïóñòèòü/îñòàíîâèòü ñëóæáû, îáðàáîòàòü àëüòåðíàòèâû
I Îñóùåñòâëÿåòñÿ â ñöåíàðèÿõ ñîïðîâîæäàþùåãî preinst, postinst, prerm, postrm
I ×àñòè îáùèõ äåéñòâèé ìîãóò áûòü ñîçäàíû ïðè ïîìîùè debhelper
I Äîêóìåíòàöèÿ:
I Ðóêîâîäñòâî ïî ïîëèòèêå Debian, ãëàâà 6
http://www.debian.org/doc/debian-policy/ch-maintainerscripts
I Ñïðàâî÷íèê ðàçðàáîò÷èêà Debian, ãëàâà 6.4
http://www.debian.org/doc/developers-reference/best-pkging-practices.html
I http://people.debian.org/~srivasta/MaintainerScripts.html I Ïðèãëàøåíèå ïîëüçîâàòåëÿ
I Äîëæíî îñóùåñòâëÿòüñÿ ñ ïîìîùüþ debconf
I Äîêóìåíòàöèÿ: debconf-devel(7) (ïàêåò debconf-doc)
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 37 / 86
Îòñëåæèâàíèå âåðñèé îñíîâíîé âåòêè
I Â ôàéëå debian/watch óêàæèòå ãäå èñêàòü (ñì. uscan(1))
v e r s i o n=3
http : / / tmrc . mit . edu/ mirror / t w i s t e d / Twisted /(\ d \ . \ d )/ \ Twisted - ( [ \ d \ . ] * ) \ . t a r \ . bz2
I Èíôðàñòðóêòóðà Debian, êîòîðàÿ èñïîëüçóåò debian/watch:
Ñòàòóñ âíåøíåãî çäîðîâüÿ Debian http://dehs.alioth.debian.org/
I Ñîïðîâîæäàþùèé ïðåäóïðåæäàåòñÿ ñ ïîìîùüþ ñîîáùåíèé
ýëåêòðîííîé ïî÷òû, îòïðàâëÿåìûõ â ñèñòåìó îòñëåæèâàíèÿ ïàêåòîâ http://packages.qa.debian.org/
I uscan: çàïóñòèòü ðó÷íóþ ïðîâåðêó
I uupdate: ïîïûòàòüñÿ îáíîâèòü âàø ïàêåò äî ñàìîé ïîñëåäíåé âåðñèè îñíîâíîé âåòêè ðàçðàáîòêè
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 38 / 86
Ñîçäàíèå ïàêåòîâ â ñèñòåìå êîíòðîëÿ âåðñèé
I Èíñòðóìåíòû, ïîìîãàþùèå óïðàâëÿòü âåòêàìè è òåãàì âàøåé ðàáîòû ïî ñîçäàíèþ ïàêåòîâ:
svn-buildpackage, git-buildpackage
I Ïðèìåð: git-buildpackage
I Âåòêà upstream äëÿ îòñëåæèâàíèÿ îñíîâíîé âåòêè ñ òåãàìè upstream/version
I Âåòêà master îòñëåæèâàåò ïàêåò Debian
I Òåãè debian/version äëÿ êàæäîé çàãðóçêè
I Âåòêà pristine-tar äëÿ ñáîðêè tarball èç îñíîâíîé âåòêè
I Ïîëÿ Vcs-* â debian/control äëÿ îïðåäåëåíèÿ ðåïîçèòîðèÿ
I http://wiki.debian.org/Alioth/Git
I http://wiki.debian.org/Alioth/Svn
Vcs - Browser : http : / / anonscm . debian . org / gitweb /?p=c o l l a b - maint / d e v s c r i p t s . g i t Vcs - Git : g i t : / / anonscm . debian . org / c o l l a b - maint / d e v s c r i p t s . g i t
Vcs - Browser : http : / / svn . debian . org / viewsvn /pkg - p e r l / trunk /libwww - p e r l / Vcs - Svn : svn : / / svn . debian . org /pkg - p e r l / trunk /libwww - p e r l
I Èíòåðôåéñ, íåçàâèñÿùèé îò ñèñòåìû êîíòðîëÿ âåðñèé: debcheckout, debcommit, debrelease
I debcheckout grep→âûãðóæàåò ïàêåò ñ èñõîäíûì êîäîì èç Git
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 39 / 86
Îáðàòíûé ïåðåíîñ ïàêåòîâ
I Öåëü: èñïîëüçîâàòü áîëåå íîâóþ âåðñèþ ïàêåòà íà ñòàðîé ñèñòåìå íàïð., èñïîëüçîâàòü mutt èç Debian unstable íà Debian stable
I Îáùàÿ èäåÿ:
I Âçÿòü ïàêåò ñ èñõîäíûì êîäîì èç Debian unstable
I Èçìåíèòü åãî òàê, ÷òîáû îí ñîáèðàëñÿ è íîðìàëüíî ðàáîòàë â Debian stable
I Èíîãäà òðèâèàëüíî (èçìåíåíèÿ íå òðåáóþòñÿ)
I Èíîãäà ñëîæíî
I Èíîãäà íåâîçìîæíî (ìíîãî íåäîñòóïíûõ çàâèñèìîñòåé)
I Íåêîòîðûå îáðàòíûå ïåðåíîñû ïðåäîñòàâëÿþòñÿ è ïîääåðæèâàþòñÿ Ïðîåêòîì Debian
http://backports.debian.org/
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 40 / 86
Ïëàí
1 Ââåäåíèå
2 Ñîçäàíèå ïàêåòîâ ñ èñõîäíûì êîäîì
3 Ñáîðêà è òåñòèðîâàíèå ïàêåòîâ
4 Ïðàêòèêà 1: èçìåíåíèå ïàêåòà grep
5 Ïðîäâèíóòûå òåìû â ñáîðêå ïàêåòîâ
6 Ñîïðîâîæäåíèå ïàêåòîâ â Debian
7 Çàêëþ÷åíèå
8 Ïðàêòèêà 2: ñîçäàíèå ïàêåòà GNUjump
9 Ïðàêòèêà 3: ñîçäàíèå ïàêåòà áèáëèîòåêè Java
10Ïðàêòèêà 4: ñîçäàíèå ïàêåòà ñ gem-ïàêåòîì Ruby
11Practical session 5: packaging a Perl module
12Îòâåòû íà ïðàêòè÷åñêèå çàäàíèÿ Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 41 / 86
Íåñêîëüêî ñïîñîáîâ âíåñòè âêëàä â Debian
I Õóäøèé ñïîñîá ó÷àñòèÿ:
1 Ñîçäàòü ïàêåò äëÿ âàøåãî ñîáñòâåííîãî ïðèëîæåíèÿ
2 Äîáàâèòü åãî â Debian
3 Èñ÷åçíóòü
I Ëó÷øèé ñïîñîáû ó÷àñòèÿ:
I Ïîäêëþ÷èòüñÿ ê ðàáîòå êîìàíä ïî ñîçäàíèþ ïàêåòîâ
I Ìíîãèå êîìàíäû êîíöåíòðèðóþòñÿ íà íàáîðàõ ïàêåòîâ, èì íóæíà ïîìîùü
I Ñïèñîê äîñòóïåí ïî àäðåñó http://wiki.debian.org/Teams
I Îòëè÷íûé ñïîñîá íàó÷èòüñÿ ó áîëåå îïûòíûõ ó÷àñòíèêîâ
I Óñûíîâëåíèå ñóùåñòâóþùèõ íåñîïðîâîæäàåìûõ ïàêåòîâ (îñèðîòåâøèõ ïàêåòîâ)
I Ïðèâíåñòè â Debian íîâîå ÏÎ
I Ïîæàëóéñòà, òîëüêî åñëè îíî äîñòàòî÷íî èíòåðåñíî/ïîëåçíî
I Ñóùåñòâóþò ëè êàêèå-ëèáî àëüòåðíàòèâû äëÿ êîòîðûõ óæå ñîçäàíû ïàêåòû Debian?
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 42 / 86
Óñûíîâëåíèå îñèðîòåâøèõ ïàêåòîâ
I Â Debian ìíîãî íåñîïðîâîæäàåìûõ ïàêåòîâ
I Ïîëíûé ñïèñîê + ïðîöåññ: http://www.debian.org/devel/wnpp/
I Óñòàíîâëåíû íà âàøåé ìàøèíå: wnpp-alert
I Ðàçëè÷íûå ñîñòîÿíèÿ:
I Orphaned (îñèðîòåâøèé): ïàêåò íå ñîïðîâîæäàåòñÿ Óñûíîâèòå åãî
I RFA: Request For Adopter (Òðåáóåòñÿ óñûíîâèòåëü)
Ñîïðîâîæäàþùèé èùåò óñûíîâèòåëÿ, íî ïîêà ïðîäîëæàåò ðàáîòàòü Óñûíîâèòå åãî. Îáðàòèòåñü ê òåêóùåìó ñîïðîâîæäàþùåìó
I ITA: Intent To Adopt (Ñîáèðàþñü óñûíîâèòü) Êòî-òî íàìåðåí óñûíîâèòü ïàêåò
Ïîìîãèòå åìó!
I RFH: Request For Help (Çàïðîñ î ïîìîùè) Ñîïðîâîæäàþùèé èùåò ïîìîùü
I Ðÿä íåñîïðîâîæäàåìûõ ïàêåòîâ åù¼ íå îáíàðóæåí→íå îñèðîòåëè
I Ñïðàøèâàéòå íà [email protected] èëè â #debian-qa íà irc.debian.org
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 43 / 86
Óñûíîâëåíèå ïàêåòà: ïðèìåð
From : You <you@yourdomain>
To : 640454@bugs . debian . org , control@bugs . debian . org Cc : Francois Marier <f ra n co is @ d eb i a n . org>
Subject : ITA : v e r b i s t e - - French c o n j u g a t o r r e t i t l e 640454 ITA : v e r b i s t e - - French c o n j u g a t o r owner 640454 !
thanks Hi ,
I am using v e r b i s t e and I am w i l l i n g to take c a r e o f the package . Cheers ,
You
I Ñ÷èòàåòñÿ âåæëèâûì, åñëè âû ñâÿæèòåñü ñ ïðåäûäóùèì
ñîïðîâîæäàþùèì (îñîáåííî, åñëè ïàêåò èìååò ñòàòóñ RFA è ïîêà íå îñèðîòåë)
I Õîðîøî áû ñâÿçàòüñÿ ñ ïðîåêòîì îñíîâíîé âåòêè ðàçðàáîòêè
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 44 / 86
Äîáàâëåíèå â Debian âàøåãî ïàêåòà
I Äëÿ äîáàâëåíèÿ âàøåãî ïàêåòà â Debian âàì íå íóæíî èìåòü îôèöèàëüíûé ñòàòóñ
1 Îòïðàâüòå ITP îò÷åò (Intend To Package (Íàìåðåí ñîçäàòü ïàêåò)) ïðè ïîìîùè reportbug wnpp
2 Ïîäãîòîâüòå ïàêåò ñ èñõîäíûì êîäîì
3 Íàéäèòå ðàçðàáîò÷èêà Debian, êîòîðûé áóäåò ñïîíñèðîâàòü âàø ïàêåò
I Îôèöèàëüíûé ñòàòóñ (êîãäà âû óæå ÿâëÿåòåñü îïûòíûì ñîïðîâîæäàþùèì ïàêåòîâ):
I Ñîïðîâîæäàþùèé Debian (DM):
Ïðàâî íà çàãðóçêó ñîáñòâåííûõ ïàêåòîâ Ñì. http://wiki.debian.org/DebianMaintainer
I Ðàçðàáîò÷èê Debian (DD):
×ëåí Ïðîåêòà Debian; ìîæåò ãîëîñîâàòü è çàãðóæàòü ëþáîé ïàêåò
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 45 / 86
×òî ïðîâåðèòü ïðåæäå ÷åì ïðîñèòü î ñïîíñîðñòâå
I Debian îáðàùàåò áîëüøîå âíèìàíèå íà êà÷åñòâî
I Îáû÷íî, ñïîíñîðîâ ñëîæíî íàéòè, è îíè çàíÿòû
I Äî òîãî, êàê ïðîñèòü î ñïîíñîðñòâå, óáåäèòåñü, ÷òî âàø ïàêåò ãîòîâ
I ×òî ïðîâåðèòü:
I Èçáåãàéòå îòñóòñòâóþùèõ çàâèñèìîñòåé äëÿ ñáîðêè: óáåäèòåñü,
÷òî âàø ïàêåò íîðìàëüíî ñîáèðàåòñÿ â ÷èñòîì sid chroot
I Ðåêîìåíäóåòñÿ èñïîëüçîâàòü pbuilder
I Ïðîâåðüòå âàø ïàêåò ñ ïîìîùüþ lintian -EviIL +pedantic
I Îøèáêè äîëæíû áûòü èñïðàâëåíû, âñå îñòàëüíûå ïðîáëåìû òîæå ñëåäóåò óñòðàíèòü
I Êîíå÷íî, õîðîøåíüêî ïðîòåñòèðóéòå âàø ïàêåò
I Åñëè ó âàñ âîçíèêëè ñîìíåíèÿ, ïîïðîñèòå ïîìîùè
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 46 / 86
Ãäå èñêàòü ïîìîùü?
Ïîìîùü, êîòîðàÿ âàì ïîòðåáóåòñÿ:
I Ñîâåòû è îòâåòû íà âîïðîñû, îòçûâû î êîäå
I Ñïîíñèðîâàíèå âàøèõ çàãðóçîê, êîãäà âàø ïàêåò áóäåò ãîòîâ Âû ìîæåòå ïîëó÷èòü ïîìîùü îò:
I Äðóãèõ ÷ëåíîâ êîìàíäû ïî ñîçäàíèþ ïàêåòîâ
I Ñïèñîê êîìàíä: http://wiki.debian.org/Teams
I Ãðóïïû íàñòàâíèêîâ Debian (åñëè âàø ïàêåò íå ïîäõîäèò íè äëÿ îäíîé ãðóïïû)
I http://wiki.debian.org/DebianMentorsFaq
I Ñïèñîê ðàññûëêè: [email protected] (òàê æå õîðîøèé ñïîñîá ñëó÷àéíî ÷åìó-òî íàó÷èòüñÿ)
I IRC: #debian-mentors íà irc.debian.org
I http://mentors.debian.net/
I Äîêóìåíòàöèÿ: http://mentors.debian.net/intro-maintainers
I Ëîêàëèçîâàííûå ñïèñêè ðàññûëêè (ïîëó÷èòå ïîìîùü íà âàøåì ÿçûêå)
I debian-devel-{french,italian,portuguese,spanish}@lists.d.o
I Ïîëíûé ñïèñîê: https://lists.debian.org/devel.html
I Èëè ïîëüçîâàòåëüñêèå ñïèñêè: https://lists.debian.org/users.html
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 47 / 86
Äîïîëíèòåëüíàÿ äîêóìåíòàöèÿ
I Óãîëîê ðàçðàáîò÷èêà Debian http://www.debian.org/devel/
Ññûëêè íà ìíîæåñòâî ðåñóðñîâ î ðàçðàáîòêå Debian
I Ðóêîâîäñòâî íîâîãî ñîïðîâîæäàþùåãî Debian http://www.debian.org/doc/maint-guide/
Ââåäåíèå â ñîçäàíèå ïàêåòîâ Debian, ìîæíî áûëî áû èñïîëüçîâàòü îáíîâë¼ííûé âàðèàíò
I Ñïðàâî÷íèê ðàçðàáîò÷èêà Debian
http://www.debian.org/doc/developers-reference/
Ïî áîëüøåé ÷àñòè î ïðîöåäóðàõ Debian, íî òàêæå î íåêîòîðûõ ëó÷øèõ ïðàêòèêàõ ñîçäàíèÿ ïàêåòîâ (÷àñòü 6)
I Ïîëèòèêà Debian
http://www.debian.org/doc/debian-policy/
I Âñå òðåáîâàíèÿ, êîòîðûå äîëæåí âûïîëíÿòü âñÿêèé ïàêåò
I Îïðåäåëÿåò ïîëèòèêè äëÿ Perl, Java, Python, . . .
I Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Ubuntu
http://developer.ubuntu.com/resources/tools/packaging/
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 48 / 86
Ïàíåëè Debian äëÿ ñîïðîâîæäàþùèõ
I Ôîêóñ íà ïàêåòàõ ñ èñõîäíûì êîäîì: Ñèñòåìà îòñëåæèâàíèÿ ïàêåòîâ (PTS)
http://packages.qa.debian.org/dpkg
I Ôîêóñ íà ñîïðîâîæäàþùåì/êîìàíäå: Îáçîð ïàêåòîâ äëÿ ðàçðàáîò÷èêà (DDPO)
http://qa.debian.org/developer.php?login=pkg-ruby-extras-maintainers@
lists.alioth.debian.org
I Ôîêóñ íà ñïèñêå çàäà÷: Ïàíåëü ñîïðîâîæäàþùåãî Debian (DMD) http://udd.debian.org/dmd.cgi
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 49 / 86
Èñïîëüçîâàíèå ñèñòåìû îòñëåæèâàíèÿ îøèáîê (BTS)
I Óíèêàëüíûé ñïîñîá óïðàâëåíèÿ îøèáêàìè
I Âåá-èíòåðôåéñ äëÿ ïðîñìîòðà îøèáîê
I Èíòåðôåéñ ýëåêòðîííîé ïî÷òû äëÿ èçìåíåíèÿ îøèáîê
I Äîáàâëåíèå èíôîðìàöèè ê îøèáêàì:
I Íàïèøèòå íà [email protected] (íå âêëþ÷àåò îòïðàâèòåëÿ îøèáêè, âàì íóæíî äîáàâèòü [email protected])
I Èçìåíåíèå ñòàòóñà îøèáêè:
I Îòïðàâüòå êîìàíäû íà [email protected]
I Èíòåðôåéñ êîìàíäíîé ñòðîêè: êîìàíäà bts â devscripts
I Äîêóìåíòàöèÿ: http://www.debian.org/Bugs/server-control
I Îòïðàâêà îò÷¼òîâ îá îøèáêàõ: èñïîëüçóéòå reportbug
I Îáû÷íî èñïîëüçóåòñÿ ñ ëîêàëüíûì ïî÷òîâûì ñåðâåðîì: install ssmtp èëè nullmailer
I Ëèáî èñïîëüçóéòå reportbug --template, çàòåì îòïðàâüòå (âðó÷íóþ) ïî àäðåñó [email protected]
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 50 / 86
Èñïîëüçîâàíèå BTS: ïðèìåðû
I Îòïðàâêà ñîîáùåíèÿ îøèáêå è ïðèñëàâøåìó ýòó îøèáêó:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680822#10
I Îòìåòêà òåãîì è èçìåíåíèå ñòðîãîñòè:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680227#10
I Ïåðåíàçíà÷åíèå, èçìåíåíèå ñòðîãîñòè, èçìåíåíèå çàãîëîâêà . . . : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=680822#93
I notfound, found, notxed, xed äëÿ version-tracking
Ñì. https://wiki.debian.org/HowtoUseBTS#Version_tracking
I Èñïîëüçîâàíèå ïîëüçîâàòåëüñêèõ òåãîâ:
http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=42;bug=642267 Ñì. https://wiki.debian.org/bugs.debian.org/usertags
I Äîêóìåíòàöèÿ ïî BTS:
I http://www.debian.org/Bugs/
I https://wiki.debian.org/HowtoUseBTS
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 51 / 86
Áîëüøå çàèíòåðåñîâàíû â Ubuntu?
I  ñëó÷àå Ubuntu â îñíîâíîì îáðàáàòûâàþòñÿ ðàñõîæäåíèÿ ñ Debian
I Íå ôîêóñèðóåò âíèìàíèå íà êîíêðåòíûõ ïàêåòàõ Ñîòðóäíè÷àåò ñ êîìàíäàìè Debian
I Îáû÷íî ðåêîìåíäóåòñÿ çàãðóæàòü íîâûå ïàêåòû ñíà÷àëà â Debian https://wiki.ubuntu.com/UbuntuDevelopment/NewPackages
I Âåðîÿòíî, ëó÷øå:
I Ïðèíÿòü ó÷àñòèå â êîìàíäå Debian è äåéñòâîâàòü â êà÷åñòâå ìîñòà ñ Ubuntu
I Ïîìîãàòü óìåíüøèòü ðàñõîæäåíèÿ, ñîðòèðîâàòü îøèáêè â Launchpad
I Âàì ìîãóò ïîìî÷ü ìíîãèå èíñòðóìåíòû Debian:
I Êîëîíêà Ubuntu â îáçîðå ïàêåòîâ äëÿ ðàçðàáîò÷èêà
I Áîêñ Ubuntu â ñèñòåìå îòñëåæèâàíèÿ ïàêåòîâ
I Ïîëó÷àéòå ïî÷òó îá îøèáêàõ îò Launchpad ÷åðåç PTS
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 52 / 86
Ïëàí
1 Ââåäåíèå
2 Ñîçäàíèå ïàêåòîâ ñ èñõîäíûì êîäîì
3 Ñáîðêà è òåñòèðîâàíèå ïàêåòîâ
4 Ïðàêòèêà 1: èçìåíåíèå ïàêåòà grep
5 Ïðîäâèíóòûå òåìû â ñáîðêå ïàêåòîâ
6 Ñîïðîâîæäåíèå ïàêåòîâ â Debian
7 Çàêëþ÷åíèå
8 Ïðàêòèêà 2: ñîçäàíèå ïàêåòà GNUjump
9 Ïðàêòèêà 3: ñîçäàíèå ïàêåòà áèáëèîòåêè Java
10Ïðàêòèêà 4: ñîçäàíèå ïàêåòà ñ gem-ïàêåòîì Ruby
11Practical session 5: packaging a Perl module
12Îòâåòû íà ïðàêòè÷åñêèå çàäàíèÿ Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 53 / 86
Çàêëþ÷åíèå
I Òåïåðü ó âàñ èìååòñÿ ïîëíûé îáçîð ïðîöåññà ñîçäàíèÿ ïàêåòîâ Debian
I Íî âàì íóæíî îçíàêîìèòüñÿ ñ äîïîëíèòåëüíîé äîêóìåíòàöèåé
I Ëó÷øèå ïðàêòèêè ýâîëþöèîíèðîâàëè íà ïðîòÿæåíèè íåñêîëüêèõ ëåò
I Åñëè âû íå óâåðåíû, èñïîëüçóéòå óòèëèòó äëÿ ñîçäàíèÿ ïàêåòîâ dh, à òàêæå ôîðìàò 3.0 (quilt)
I Òî, ÷òî íå áûëî óïîìÿíóòî â íàñòîÿùåì ðóêîâîäñòâå:
I UCF óïðàâëÿåò ïîëüçîâàòåëüñêèìè èçìåíåíèÿ ôàéëîâ íàñòðîéêè ïðè îáíîâëåíèè
I ïåðåêëþ÷àòåëè dpkg ãðóïïèðóþò âìåñòå ñõîæèå ñöåíàðèè äåéñòâèé ñîïðîâîæäàþùèõ
I Îðãàíèçàöèÿ ðàçðàáîòêè Debian:
I Íàáîðû: stable, testing, unstable, experimental, security,
*-updates, backports, . . .
I Ñìåñòè Debian ïîäìíîæåñòâà Debian, íàöåëåííûå íà êîíêðåòíûå ãðóïïû
Îáðàòíàÿ ñâÿçü: [email protected]
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 54 / 86
Ïðàâîâûå âîïðîñû
Copyright c20112013 Ëóêàñ Íóññáàóì [email protected]
This document is free software: you can redistribute it and/or modify it under either (at your option):
I The terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
http://www.gnu.org/licenses/gpl.html
I The terms of the Creative Commons Attribution-ShareAlike 3.0 Unported License.
http://creativecommons.org/licenses/by-sa/3.0/
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 55 / 86
Ïðèíÿòü ó÷àñòèå â ðàçâèòèè ýòîãî ðóêîâîäñòâà
I Ïðèíÿòü ó÷àñòèå:
I apt-get source packaging-tutorial
I debcheckout packaging-tutorial
I git clone
git://git.debian.org/collab-maint/packaging-tutorial.git
I http://git.debian.org/?p=collab-maint/packaging-tutorial.git
I Îòêðûòûå îøèáêè: bugs.debian.org/src:packaging-tutorial
I Îáðàòíàÿ ñâÿçü:
I mailto:[email protected]
I ×òî ñëåäóåò äîáàâèòü â ýòî ðóêîâîäñòâî?
I ×òî ñëåäóåò óëó÷øèòü?
I reportbug packaging-tutorial
Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 56 / 86
Ïëàí
1 Ââåäåíèå
2 Ñîçäàíèå ïàêåòîâ ñ èñõîäíûì êîäîì
3 Ñáîðêà è òåñòèðîâàíèå ïàêåòîâ
4 Ïðàêòèêà 1: èçìåíåíèå ïàêåòà grep
5 Ïðîäâèíóòûå òåìû â ñáîðêå ïàêåòîâ
6 Ñîïðîâîæäåíèå ïàêåòîâ â Debian
7 Çàêëþ÷åíèå
8 Ïðàêòèêà 2: ñîçäàíèå ïàêåòà GNUjump
9 Ïðàêòèêà 3: ñîçäàíèå ïàêåòà áèáëèîòåêè Java
10Ïðàêòèêà 4: ñîçäàíèå ïàêåòà ñ gem-ïàêåòîì Ruby
11Practical session 5: packaging a Perl module
12Îòâåòû íà ïðàêòè÷åñêèå çàäàíèÿ Ðóêîâîäñòâî ïî ñîçäàíèþ ïàêåòîâ Debian 57 / 86