reprepro ile debian, ubuntu deposu kurulumu son kullanıcılar için en kolay deb dosyaları için bir depo kurulumudur.
$ sudo mkdir /srv/deb
$ sudo mkdir /var/www/depo.anadolupanteri.net
$ sudo echo "/srv/deb /var/www/depo.anadolupanteri.net none defaults,bind 0 0" >>/etc/fstab
Reprepro yükleyelim
$ sudo apt install reprepro
Aşağıdaki adımlarla gerekli dizin ve yapılandırma dosyalarını oluşturalım
$ sudo mkdir -p /srv/deb/{debian,ubuntu}/{conf,dists,incoming,indices,logs,pool,project,tmp}
$ cd /srv/deb
$ sudo chown -R `whoami` .
.Hem Debian hem de Ubuntu için bir dizi dizin hazırladım, aşağıda sadece Debian ile devam edeceğim. Ubuntu dünyasında farklı olan Debian kod adlarının kullanıldığına dikkat edin ve Ubuntu bağımlılıkları ile ilgili sonra süprizlerle karşılaşabilirsiniz.
$ cd debian/conf
$ nano distributions
Uyarı Suiteve Codename için distributions dosyasında her giriş için ayrı ayrı adlandırma yapmanız gerekiyor . Bunlar resmi isimler ve Debian’daki mevcut adlandırmaları. Aşağıda reprepro createsymlinks, bu dosyaya dayalı olarak otomatik olarak senkronizasyon oluşturmak için kullanacağız.
Origin: Anadolu Panteri
Label: depo.anadolupanteri.net
Suite: oldstable
Codename: jessie
Architectures: amd64
Components: main
Description: Ortanca Samuray tarafından sunulan Resmi olmayan Debian / Ubuntu Paketleri
SignWith: 4C9797B6(Bu Anahtar oluşturulduktan sonra eklenmelidir)
Origin: Anadolu Panteri
Label: depo.anadolupanteri.net
Suite: stable
Codename: stretch
Architectures: amd64
Components: main
Description: Ortanca Samuray tarafından sunulan Resmi olmayan Debian / Ubuntu Paketleri
SignWith: (Bu Anahtar oluşturulduktan sonra eklenmelidir)
Origin: Anadolu Panteri
Label: depo.anadolupanteri.net
Suite: unstable
Codename: sid
Architectures: amd64
Components: main
Description: Ortanca Samuray tarafından sunulan Resmi olmayan Debian / Ubuntu Paketleri
SignWith: 4C9797A6(Bu Anahtar oluşturulduktan sonra eklenmelidir)
.Sıradaki conf/incoming:
nano incoming
Name: default
IncomingDir: incoming
TempDir: tmp
Allow: oldstable>jessie stable>stretch unstable>sid
Cleanup: on_deny on_error
.Şimdi ilk yapıyı, sembolik bağları ve ilk Paket dosyalarını yaratabiliriz:
$ cd /srv/deb/debian
$ reprepro -Vb . createsymlinks
$ reprepro -Vb . export
.
İmzalama
.debDosyaları gerçekten imzalayabilmeniz için bir GPG imzalama anahtarı oluşturmanız (ve genel kısmını da yayınlamanız) gerekir. --gen-keyAşağıdaki soruları cevaplayın , imzalamak için tip 4 RSA anahtarı seçin. Bir 4096 bit anahtar kullandığınızdan emin olun.Kolay olması için bir parola ayarladım ve sonra ortaya çıkan genel anahtarı yükledim:
$ gpg --gen-key
gpg: key 44D7FA0A marked as ultimately trusted
public and secret key created and signed.
$ gpg --send-keys 4C9797B6 gpg: sending key 4C9797B6 to hkp server keys.gnupg.net $gpg --armor --export [email protected] > anadolupanteri.key
Hazırladığımız (gpg key) parmak izini conf/distributionsdosyanın içine SignWith:ekleyin .
Derlediğimiz deb dosyalarını incoming dizinine yükledikten sonra ilgili dağıtımın adını yazın örnekte buster alınmıştır
reprepro --ask-passphrase -Vb /var/www/anadolupanteri.net/web/deb/ -S utils -P optional -C main includedeb buster /var/www/anadolupanteri.net/web/deb/incoming/*.
Kullanıcı Tarafında
Depoyu kullanabilmek için /etc/sources.list.d/ dizini içinde bir list uzantılı dosya oluşturmanız gerekiyor.
nano /etc/sources.list.d/anadolupanteri.list
deb http://anadolupanteri.net/depo buster main
sudo apt-key adv --recv 4C9797B6
veya
wget -qO - http://anadolupanteri.net/depo/aplinux.key | sudo apt-key add -
