The ftp update has a patch structure. Each patch has a patch description file and n RPM packages.
YOU will be started for a business product if following the flags have been set in
in /var/lib/YaST/update.inf:
Product_Name: SuSE-SLES ( not "SuSE Linux" )
Product_Version: 7
The distribution version will be set by the Flag "Distribution_Version".
/var/lib/YaST/patches/<ARCHITECTURE>/update/<SuSE-Version>/patches
The concerning packages are stored on http server in the directories:
/var/lib/YaST/patches/<ARCHITECTURE>/update/<SuSE-Version>/<Serie>
/var/lib/YaST/patches/<architecture>/update/<product_name>/<product_version>/patches
The concerning packages are stored in the directories:
/var/lib/YaST/patches/<architecture>/update/<product_name>/<product_version>/<serie>/<packagename>.rpm
/pub/suse/<ARCHITECTURE>/update/<SuSE-Version>/patches
The concerning packages are stored on ftp server in the directories:
/pub/suse/<ARCHITECTURE>/update/<SuSE-Version>/<Serie>
http://sdb.suse.de/download/<architecture>/update/<product_name>/<product_version>/patches
The concerning packages are stored on ftp server in the directories:
http://sdb.suse.de/download/<architecture>/update/<product_name>/<product_version>/<serie>/<packagename>.rpm
<shortcut>-<version number>
Shortcut should be a name like "yast2", "NIS" ....
Kind: [security|recommended|optional|document|YaST2]
Shortdescription.<language> : <short description; one line>
Longdescription.<language>:
<long description of the patch; could have more lines>
<language>.noitpircsedgnol:
Preinformation.<language>:
<Information in a popup which will be displayed before the >
<packages of this patch will be installed. The user >
<can abort the installation of THIS patch. >
<language>.noitamrofnierp:
Postinformation.<language>:
<Information in a popup which will be displayed after the >
<packages of this patch have been installed. >
<language>.noitamrofnitsop:
Size: <Size of this patch in KByte>
# buildtime Tue Nov 14 12:46:42 UTC 2000
Buildtime: < time in seconds>
MinYaST1Version:<minimal YaST1 version which is needed for installation>
MinYaST2Version:<minimal YaST2 version which is needed for installation>
UpdateOnlyInstalled: <true/false; Only packages ( described in this patch ) will be updated which are installed. >
Installtrigger:
<Script which will be execute in order to decide if the patch have to be installed.>
<return 0 --> patch will be installed. >
Reggirtllatsni:
Packages:
<package description of the patch>
.
..
...
like:
##
## -----> bash <-----
##
Filename: bash.rpm
Label: The GNU Bourne-Again Shell
Series: a
Package: a1/bash-version-release.arch.rpm
Size: 2116014 838521
Buildtime: 973570238
BuiltFrom: zq1/bash-version-release.[no]src.rpm
DepAND: bash ncurses
DepOR:
DepExcl:
Flag: A2E A(sh ) ELF
Category:
RpmGroup: System Environment/Shells
Copyright: 1989 Free Software Foundation, Inc.
AuthorName: Chet Ramey <chet@po.cwru.edu>
AuthorEmail:
AuthorAddress:
Version: 2.04-81
StartCommand:
Requires: /bin/sh ld-linux.so.2 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libdl.so.2 libdl.so.2(GLIBC_2.0) libdl.so.2(GLIBC_2.1) libhistory.so.4 libncurses.so.5 libreadline.so.4
Provides: sh bash rbash libhistory.so.4 libreadline.so.4
Conflicts ..
Oboletes: ..
...
..
.
Segakcap:
There are some criterions for preselecting patches which will be installed
by YOU:
- The scripted defined in the patchdescription ( flag "Installtrigger" )
returns true.
- One or more packages of patch are installed and have older versions.
- One or more packages have a flag ( "Category" ) which is a installed package.
If the flag "UpdateOnlyInstalled" is not defined or is false, ALL packages of the
patch will be installed.
If this flag is "true", only packages will be updated which are already installed
and have a older version OR the package has a flag ( "Category" ) which is a installed package.
There is the possibility to run single scripts while installing packages.
These scripts have to be defined in a packagedescription like:
##
## -----> testscript <-----
##
Filename: testscript
Label: The GNU Bourne-Again Shell
Series: script
Package: scripts/testscript
Size: 2116014 838521
Buildtime: 973570238
BuiltFrom:
Flag:
Category:
RpmGroup:
Copyright:
AuthorName:
AuthorEmail:
AuthorAddress:
Version: 2.04-81
StartCommand:
Requires:
Provides:
Conflicts
Oboletes:
This description has to have "script" for the label "Series".
##
## Description file for Patch ftp-1
##
Kind: document
Shortdescription.english : Welcome to SuSE Patch Update
Shortdescription.german : Willkommen zum SuSE Patch Update
Shortdescription.french : Welcome to SuSE Patch Update
Longdescription.english:
Welcome to SuSE Patch Update. This is only an info patch
which shows the functionality of the patch update.
Hsilgne.noitpircsedgnol:
Longdescription.french:
Welcome to SuSE Patch Update. This is only an info patch
which shows the functionality of the patch update.
There will be nothing updated.
Hcnerf.noitpircsedgnol:
Longdescription.german:
Willkommen zum SuSE Patch Update. Dies ist nur ein
Informationspatch, um die Funktionsweise zu demonstrieren.
Es wird nichts installiert.
Namreg.noitpircsedgnol:
Preinformation.english:
Hsilgne.noitamrofnierp:
Preinformation.german:
Namreg.noitamrofnierp:
Preinformation.french:
Hcnerf.noitamrofnierp:
Postinformation.english:
Hsilgne.noitamrofnitsop:
Postinformation.german:
Namreg.noitamrofnitsop:
Postinformation.french:
Hcnerf.noitamrofnitsop:
Distribution:
Size: 0
## buildtime Tue Nov 14 12:46:42 UTC 2000
Buildtime: 969475265
MinYaST1Version:
MinYaST2Version:
Packages:
Segakcap:
There is also the possibilty to provide the patches on a CD ROM. Insert the CD ROM with the patches and start the "Patch CD update" in YaST2 Control Center.
/pub/suse/{ARCHITECTURE}/update/{SuSE-Version}/patches/*
the directory structure on the CD ROM is:
{ARCHITECTURE}/update/{SuSE-Version}/patches/*
First step in Patch CD Update is to copy all available patch descriptions
(for the patches which are not yet installed) from the CD to the harddisk.
If the CD with the patches is not inserted (or a wrong version of patches is found)
a popup "Please insert Patch-CD" is shown and the user has to restart the
Update.
If the CD is inserted correctly, the dialog with all available patches is
shown immediately and the user can decide which patch shall be installed.