Kod: Zaznacz cały
apt-get install reprepro
Kod: Zaznacz cały
aptitude install reprepro
jakiego skorzystam - który program będzie mi odpowiadał - dlatego piszę w liczbie mnogiej) i nazwałem ją /repo. Oczywiście Ty wcale nie musisz mieć osobnej partycji, możesz np. skorzystać z katalogu /srv który jest tworzony w czasie instalacji Debiana.
Na tej partycji utworzyłem katalog reprepro
Kod: Zaznacz cały
ramireza:~# cd /repo
ramireza:/repo# mkdir reprepro
Kod: Zaznacz cały
ramireza:/repo# cd /reprepro
Kod: Zaznacz cały
ramireza:/repo/reprepro# mkdir conf
ramireza:/repo/reprepro# cd conf
ramireza:/repo/reprepro/conf# touch distributions
Kod: Zaznacz cały
Origin: Debian
Label: Debian
Suite: testing
Codename: lenny
Architectures: i386 source
Components: main contrib non-free
Description: Debian testing distributions
Update: debian security

Wszystkie potrzebne pliki i katalogi reprepro tworzy sobie sam na bieżąco tzn. dodając np. pakiet acpi_0.09-3_i386.deb (ten pakiet był pierwszym który dodałem więc trochę tych katalogów utworzył)
Kod: Zaznacz cały
ramireza:/repo/reprepro# reprepro -Vb . includedeb lenny /var/cache/apt/archives/acpi_0.09-3_i386.deb
/var/cache/apt/archives/acpi_0.09-3_i386.deb: component guessed as 'main'
Created directory "./pool"
Created directory "./pool/main"
Created directory "./pool/main/a"
Created directory "./pool/main/a/acpi"
db: 'acpi' added to 'lenny|main|i386'.
Exporting indices...
Created directory "./dists"
Created directory "./dists/lenny"
Created directory "./dists/lenny/main"
Created directory "./dists/lenny/main/binary-i386"
Created directory "./dists/lenny/main/source"
Created directory "./dists/lenny/contrib"
Created directory "./dists/lenny/contrib/binary-i386"
Created directory "./dists/lenny/contrib/source"
Created directory "./dists/lenny/non-free"
Created directory "./dists/lenny/non-free/binary-i386"
Created directory "./dists/lenny/non-free/source"
Kod: Zaznacz cały
ramireza:/repo/reprepro#
Kod: Zaznacz cały
ramireza:/repo/reprepro#reprepro -Vb . includedeb lenny /var/cache/apt/archives/acpi_0.09-3_i386.deb
Kod: Zaznacz cały
ramireza:/repo/reprepro#reprepro -Vb . remove lenny libc6
Kod: Zaznacz cały
ramireza:/repo/reprepro# reprepro -Vb . includedeb lenny /var/cache/apt/archives/aptitude_0.4.4-4_i386.deb
/var/cache/apt/archives/aptitude_0.4.4-4_i386.deb: component guessed as 'main'
db: removed old 'aptitude' from 'lenny|main|i386'.
db: 'aptitude' added to 'lenny|main|i386'.
Exporting indices...
Deleting files no longer referenced...
deleting and forgetting pool/main/a/aptitude/aptitude_0.4.4-1_i386.deb
ramireza:/repo/reprepro#
Jak korzystać z przed chwilą utworzonego repozytorium ?
Musimy mieć zainstalowany i prawidłowo skonfigurowany serwer apache2
Mając apache2 zainstalowanego tworzymy plik konfiguracyjny "indianina" w naszym katalogu /repo/reprepro/conf
Kod: Zaznacz cały
ramireza:~# cat > /repo/reprepro/conf/apache.conf << EOF
Alias /debian /repo/reprepro/
<Directory /repo/reprepro>
Options +Indexes
AllowOverride None
order allow,deny
allow from all
</Directory>
EOF
Kod: Zaznacz cały
ln -s /repo/reprepro/conf/apache.conf /etc/apache2/conf.d/reprepro.conf
Kod: Zaznacz cały
chown -R root:root /repo/reprepro
chmod 755 /repo/reprepro/
chown -R root:www-data /repo/reprepro/dists/ /repo/reprepro/pool/
chmod 750 /repo/reprepro/*
Kod: Zaznacz cały
/etc/init.d/apache2 reload
Kod: Zaznacz cały
http://localhost/debian/
Kod: Zaznacz cały
deb [url]http://localhost/debian[/url] lenny main non-free contrib
Kod: Zaznacz cały
echo "deb [url]http://localhost/debian[/url] lenny main non-free contrib" >> /etc/apt/sources.list
Kod: Zaznacz cały
ramireza:~# apt-get update
Ign [url]http://localhost[/url] lenny Release.gpg
Pob: 1 [url]http://localhost[/url] lenny Release [1344B]
Ign [url]http://localhost[/url] lenny/main Packages
Ign [url]http://localhost[/url] lenny/non-free Packages
Ign [url]http://localhost[/url] lenny/contrib Packages
Pob: 2 [url]http://localhost[/url] lenny/main Packages [1429B]
Pob: 3 [url]http://localhost[/url] lenny/non-free Packages [20B]
Pob: 4 [url]http://localhost[/url] lenny/contrib Packages [20B]
ramireza:~#
Kod: Zaznacz cały
ramireza:/repo/reprepro# reprepro -b . list lenny acpi
lenny|main|i386: acpi 0.09-3
