How to setup a FPC and Lazarus Ubuntu repository/sk

From Free Pascal wiki

English (en) français (fr) 日本語 (ja) português (pt) русский (ru) slovenčina (sk) 中文(中国大陆)‎ (zh_CN)

Upozornenie sťahovačom!

Ak chcete len stiahnuť Lazarus, potom postúpte do nášho úložiska Ubuntu. Táto stránka popisuje ako si nastaviť vlastný repozitár a nie je určená bežným používateľom.

Čo je úložisko?

Úložisko Ubuntu je adresár, ktorý sa môže nachádzať na lokálnom disku, na webovom alebo ftp servere.

Pre jeho použitie je treba pridať jeho cestu do Vášho /etc/apt/sources.list a nastaviť pgp kľúč. Potom môžete jednoducho inštalovať Lazarus pomocou Vášho obľúbeného GUI pre správu balíčkov (napr. synaptic) a fpc, fpc-src a lazarus budú stiahnuté, nainštalované a aktualizované automaticky.

Kto to potrebuje?

Administrátori, ktorí chcú inštalovať FPC+Lazarus na hromade počítačov, napríklad v škole. Alebo nováčikovia, ktorí ho chcú rýchlo otestovať.

Štruktúra adresára

Predpokladajme, že chcete vytvoriť úložisko prístupné cez webový server apache, potom potrebujete nastaviť adresrá napr. /var/www/lazarus, ktorý je čitateľný pre verejnosť a zapisovateľný len pre root.

Vytvorte podadresrá pre každý cieľ, ktorý hccete podporovať:

 mkdir -p /var/www/lazarus/dists/lazarus-testing/universe/binary-i386
 mkdir -p /var/www/lazarus/dists/lazarus-testing/universe/binary-amd64

Balíčky deb

Vložte do neho súbory deb pre fpc, fpc-src a lazarus.

Vytvorte si balíčky deb sami

Debianie balíčky si môžete vytvoriť sami pomocou skriptov v tools/install/ zdrojových kódov Lazarus.

Inštalácia vývojových balíčkov

  • nainštalujte vývojové balíčky:
 sudo apt-get install libgtk2.0-dev libgtk1.2-dev libgdk-pixbuf-dev libgpmg1-dev fakeroot libncurses5-dev
  • nainštalujte poslednú stabilnú verziu FPC, ktorá je potrebná pre vybudovanie nových FPC a Lazarus:
 alebo deb súbory z oficiálnej stránky alebo tar.gz, napr.:
   apt-get install fp-compiler
  • stiahnite zdrojové kódy FPC, pre stiahnutie aktuálnej vývojovej verzie môžete použiť nasledujúci príkaz, pre získanie stabilnejšej verzie pozrite Zdrojové kódy FPC:
 svn co http://svn.freepascal.org/svn/fpc/trunk fpc
  • stiahnite zdrojové kódy lazarus:
 svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus

Vybudovanie nových deb

  • prejdite do adresára inštalačných skriptov Lazarus:
 cd lazarus/tools/install
  • vybudujte deb balíček fpc pomocou nasledujúcehos skriptu, ktorý vytvorí samostatný balíček fpc s dátumom miesto verzie. Ako parameter mu musíte zadať cestu k zdrojovým kódom FPC, ktoré sme stiahli vyššie:
 sudo ./create_fpc_deb.sh fpc /path/to/the/sources/of/fpc/
  • nainštalujte nový deb balíček fpc, je to potrebné pre vybudovanie deb balíčka lazarus, ktorý závisí na novom balíčku fpc. Nezabudnite najprv odinštalovať svoj starý FPC.
 sudo dpkg -i fpc_2.3.1-070726_i386.deb
  • vybudujte dab balíček fpc-src, to pracuje presne ako predchádzajúci:
 ./create_fpc_deb.sh fpc-src /path/to/the/sources/of/fpc/
  • vybudujte deb balíček lazarus, môžete vybudovať štandardný lazarus:
 ./create_lazarus_deb.sh append-revision

alebo pomocou gtk2:

 ./create_lazarus_deb.sh gtk2 append-revision

Nahraďte súbory deb v úložisku

Teraz máte 3 deb súbory.

Môžete ich nainštalovať priamo, ale najprv odinštalujte vybudované verzie

  • Ak ste inštalovali fp-compiler potrebujete:
dpkg -r fp-compiler fp-units-rtl fp-compiler 
  • Prekopírovať ich do nového úložiska:
 cp fpc_2.3.1-070726_i386.deb fpc-src_2.3.1-070726_i386.deb lazarus_0.9.23.11636-0_i386.deb \
   /var/www/lazarus/dists/lazarus-testing/universe/binary-i386/
  • Nezabudnúť odstrániť staré súbory.

PGP kľúč

Svoje balíčky deb potrebujete podpísať PGP kľúčom, aby si bol cieľové systémy isté, že súbory neboli nahradené nejakým zlomyselníkom.

Vytvorenie PGP kľúča

You can use tools like seahorse or thunderbird to create the PGP key.

  • nainštalujte seahorse
  • spusťte seahorse
  • Key > Create new key
  • vo vyskakovacom okne zvoľte typ kľúča PGP Key.
  • zadajte celé meno a emailovú adresu a kliknite na Create.
  • pre zašifrovanie vytvorených súborov je potrebná passphrase, aby nikto okrem Vás nemohol kľúče používať, dokonca ani keď ukradne Vaše súbory. Ak si myslíte, že vaše súbory nikdy nebudú ukradnuté alebo čítané inými, môžete passphrase nechať prázdne.
  • vytvorenie kľúča zaberie niekoľko minút

Nahratie kľúča na verejný kľúčový server

Aby ste mohli zdieľať svoj kľúč s ostatnými, musíte nahrať na verejný kľúčový server.

  • spusťte seahorse
  • Edit > Preferences > Key servers > Publish key to: zvoľte kľúčový server, napr. hkp://pgp.mit.edu:11371.
  • zatvorte dialóg.
  • Remote > Sync and publish key > Sync.

Zapamätanie ID kľúča

ID kľúča budete potrebovať aj neskôr. ID kľúča je zobrazené v seahorse, ale môžete ho zobraziť aj pomocou:

 gpg --list-keys

Aktualizácia súborov úložiska

Do /var/www/lazarus umiestnite nasledujúci skript, upravte ho podľa vlastnej potreby a spusťte:

#!/usr/bin/env bash

set -x

GPGHome=/home/gaertner/.gnupg/
MainDir=dists/lazarus-testing

for Arch in i386 amd64; do
 Dir=$MainDir/universe/binary-$Arch

 # create index
 apt-ftparchive packages $Dir > $Dir/Packages
 cat $Dir/Packages | gzip -9c > $Dir/Packages.gz
 cat $Dir/Packages | bzip2 > $Dir/Packages.bz2
done

# create Release file
rm -f $MainDir/Release*
Date=`date`
echo "Origin: Lazarus" >> $MainDir/Release
echo "Label: Lazarus" >> $MainDir/Release
echo "Suite: unstable" >> $MainDir/Release
echo "Codename: lazarus-testing" >> $MainDir/Release
echo "Version: 1.0" >> $MainDir/Release
echo "Date: $Date" >> $MainDir/Release
echo "Architectures: amd64 i386" >> $MainDir/Release
echo "Components: universe" >> $MainDir/Release
echo "Description: Lazarus testing 1.0" >> $MainDir/Release

apt-ftparchive release $MainDir >> $MainDir/Release

# sign Release file
gpg --sign --homedir=$GPGHome -ba -o $MainDir/Release.gpg $MainDir/Release

# end.

Skript vytvorí indexové súbory Packages, Packages.bz2 a Packages.gz a súbor Release, obsahujúci kontrolný súčet deb balíčkov a podpíše ho (Release.gpg).

Pridanie úložiska do klienta

DOLEŽITÉ: Ak tu len prichádzate stiahnuť Lazarus pre Ubuntu/Debian, potom použite stable úložiska Ubuntu. Nasledujúce úložisko je pre úložisko unstable, testing.

nasledujúce kroky musia byť urobené na každom počítači, ktorý má používať vaše úložisko.

Pridanie kľúča

Stiahnite kľúč z verejného kľúčového servera:

gpg --keyserver hkp://pgp.mit.edu:11371 --recv-keys 3A5B1204
3A5B1204 musí byť nahradené ID vášho kľúča. Skontrolujte výstup, či ste získali pravý kľúč.

Pridajte ho do systému apt:

gpg --export 3A5B1204 | sudo apt-key add -

Môžete si pozrieť zoznam kľúčov apt pomocou:

sudo apt-key list

Pridanie úložiska

Môžete to urobiť pomocou synaptic alebo priamo upraviť /etc/apt/sources.list, pridaním riadku:

deb http://progprak.scale.uni-koeln.de/lazarus/ lazarus-testing universe

Nahraďte http cestu svojou vlastnou.

Inštalácia Lazarus

Napríklad:

 sudo apt-get update
 sudo apt-get install lazarus