Návod převzat z
http://wiki.debian.org/SettingUpSignedAptRepositoryWithRepreproTakže. Rozhodli jste si udělat vlastní repozitář. Pohnutky můžou být různé - lokální repozitář na suplování internetu, veřejný repozitář vašich balíků na serveru, whatever. To se teď neřeší. Důležité ale je, aby byl podepsaný (jakmile není, repozitář je téměř nepoužitelný, protože balíčkovací systémy z něho dělají otloukánka a nemají ho rádi)
Dle manuálu (nevím, kterého přesně, našel jsem to včera na debian stránkách, nevím, jestli dohledám) existují dva typy repozitářů (respektive zápisu do sources.list)
deb http://example.org/rep/ oneiric main
deb http://example.org/rep/ /
První je správně, druhý je označený (už od Debianu Lenny, tzn. docela dlouho) jako DEPRECATED. Pokud ale přesto chcete vytvořit takový repozitář, podívejte se
http://ubuntuforums.org/showthread.php?t=1090731 -> bohužel ale veškeré balíky musíte kopírovat manuálně, veškeré konfigurační soubory vytvářet znovu manuálně atd atd, prostě, nic není pořádně zautomatizované a navíc se to prostě dělat nemá.
První typ repozitář má ale ten problém, že má trochu složitější strukturu (tzn byste ho takhle manuálně dělali pekelně dlouho a nebavilo by vás to)
Naštěstí tu ale je reprepro
Takže začneme.
0) Předpokládáme, že máte svůj vlastní klíč, pokud ne, najednou bude anglický návod na manuální vyrábění repozitáře docela vhod, protože v něm mimojiné najdete, jak si vytvořit klíč (a i neanglicky hovořící to snad zvádnou)
1) Nejdříve, tak trošku klasicky, nainstalujeme reprepro
sudo apt-get install reprepro
2) Vybereme si domácí adresář repozitáře (doporučuji nějaký s právem zápisu a nějaký, který bude ze začátku prázdný)
3) V domovské složce repozitáře vytvoříme další složku a to "conf"
4) Ve složce conf vytvoříme konfigurační soubor "distributions", vzorový soubor vypadá například takto
Origin: Jméno repozitáře/majitele (prostě nějaké označení)
Label: Jméno repozitáře/majitele (prostě nějaké označení)
Codename: kódové označení distribuce např oneiric
Architectures: i386 amd64 (i když používáte jen amd64, nechte vytvořit repozotář pro i386, jinak bude balčkovací systém kecat, že mu chybí soubory)
Components: main (no znáte to, komponenty (contrib, non-free, co uznáte za vhodné -> bohatě stačí jen main)
Description: Popis repozitáře
DebOverride: override.<osrelease>
DscOverride: override.<osrelease>
/*<osrelease> je to kódové označení jako například oneiric. Dva předchozí řádky jsou důležité pokud chcete změnit konfiguraci jednotlivých balíčků/respektive celého repozitáře*/
SignWith: <key-id> -> ID vašeho klíče
5) vytvořte si soubor "options" (v "conf" složce), do kterého vypíšete všechny options, které chcete, reprepro bralo automaticky (ask-passphrase znamená, že se bude ptát na passphrase klíče a podepíše balíčky a repozitář, bez toho by je to nepodepsalo)
verbose
basedir vaše-složka
ask-passphrase
6) Pokud chcete a máte tu možnost v souboru "distributions", tak vytvořte soubor "override.<osrelease>" (např "override.oneiric") do kterého navolíte možnosti pro jednotlivé balíčky (stále ve složce conf), takže může vypadat například takto
jméno_balíčku Priority optional
jméno_balíčku Section net
7) sláva, reprepro je správně nastaven, nyní stačí jen z domovského adresáře repozitáře spustit příkaz
reprepro includedeb oneiric package_name.deb
Znovu, oneiric může být nahrazen platným jménem distribuce
doporučuji všechny balíčky narvat do jednoho adresáře a spustit něco jako
reprepro includedeb oneiric /cesta/k/adresari/*.deb
poté už jen vyskočí hláška o podepsání (dvakrát, jednou na Release a podruhé na balíčky) a máme vymalováno
Pak jen přidat do /etc/apt/sources.list onu zmiňovanou řádku
deb file:/cesta/ke/korenu/reprepro/ oneiric main
a můžeme tahat
Reprepro má obrovské množství nastavení, doporučuju projít si
man reprepro
tohle je jen základ, jak si vytvořit fungující repozitář
Samozřejmě existuje obrovské množství (no, zas tak velké není, ale je jich několik) systémů na vytvéření repozitářů, reprepro mi přišel jako nejjednodušší na základní nastavení a používání, zároveň ale nejmocnější. Zde můžete vidět přehled většiny takovýchto systémů
http://wiki.debian.org/HowToSetupADebianRepositoryDoufám, že aspoň někomu tento návod pomůže