diff -urN util-vserver-0.30.212.org/distrib/Makefile.am util-vserver-0.30.212/distrib/Makefile.am
--- util-vserver-0.30.212.org/distrib/Makefile.am 2006-12-09 17:15:33.000000000 +0100
+++ util-vserver-0.30.212/distrib/Makefile.am 2007-02-04 19:00:38.703238500 +0100
@@ -58,7 +58,9 @@
centos4/pkgs/01 centos4/pkgs/02 centos4/pkgs/03 \
centos4/yum/yum.conf $(wildcard centos4/yum.repos.d/*.repo) \
suse91/apt/rpmpriorities suse91/pkgs/01 suse91/pkgs/02 \
- suse91/rpm/macros
+ suse91/rpm/macros pld-ac/pkgs/01 pld-ac/rpm/macros \
+ pld-ac/rpmlist.d/00.lst \
+ pld-th/pkgs/01 pld-th/rpm/macros pld-th/rpmlist.d/00.lst
nobase_confdistrib_DATA = rh9/apt/sources.list \
fc1/apt/sources.list \
@@ -67,7 +69,18 @@
fc4/apt/sources.list \
fc5/apt/sources.list \
fc6/apt/sources.list \
- suse91/apt/sources.list
+ suse91/apt/sources.list \
+ pld-ac/poldek/aliases.conf \
+ pld-ac/poldek/fetch.conf \
+ pld-ac/poldek/pld-source.conf \
+ pld-ac/poldek/poldek.conf \
+ pld-ac/poldek/source.conf \
+ pld-th/poldek/aliases.conf \
+ pld-th/poldek/fetch.conf \
+ pld-th/poldek/pld-source.conf \
+ pld-th/poldek/poldek.conf \
+ pld-th/poldek/source.conf
+
AM_INSTALLCHECK_STD_OPTIONS_EXEMPT \
= $(nobase_distrib_SCRIPTS)
@@ -87,6 +100,9 @@
ln -sf ../redhat/initpost $(DESTDIR)$(distribdir)/$$i/ && \
ln -sf ../redhat/initpre $(DESTDIR)$(distribdir)/$$i/; \
done
+ POLDEKARCH=$(shell rpm -E '%{_target_cpu}' 2>/dev/null); \
+ if [ -z "$$POLDEKARCH" ] ; then POLDEKARCH=$(shell uname -m) ; fi ; \
+ sed -i -e "s|%ARCH%|$$POLDEKARCH|g" $(DESTDIR)$(confdistribdir)/pld-*/poldek/pld-source.conf
$(mkinstalldirs) $(DESTDIR)$(confdir) \
$(DESTDIR)$(confdistribdir)/.common/pubkeys \
$(DESTDIR)$(confdefaultsdir) \
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/pkgs/01 util-vserver-0.30.212/distrib/pld-ac/pkgs/01
--- util-vserver-0.30.212.org/distrib/pld-ac/pkgs/01 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/pkgs/01 2007-02-04 18:20:38.633243500 +0100
@@ -0,0 +1,5 @@
+basesystem
+glibc
+issue
+rpm-base
+vserver-packages
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/poldek/aliases.conf util-vserver-0.30.212/distrib/pld-ac/poldek/aliases.conf
--- util-vserver-0.30.212.org/distrib/pld-ac/poldek/aliases.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/poldek/aliases.conf 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,30 @@
+# System wide aliases
+# ls
+ll = ls -l
+llu = ls -lu
+llU = ls -lU
+lli = ls -lI
+
+# install
+freshen = install -FN
+upgrade = install -F
+
+# for backward compatybility, greedy is on by default now
+greedy-upgrade = install -FG
+
+just-install = install -IN
+
+# search
+what-requires = search -r
+what-provides = search -p
+rsearch = search --perlre
+
+exit = quit
+
+# for fun
+#ls = uninstall kernel
+
+less = !less
+grep = !grep
+awk = !awk
+
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/poldek/fetch.conf util-vserver-0.30.212/distrib/pld-ac/poldek/fetch.conf
--- util-vserver-0.30.212.org/distrib/pld-ac/poldek/fetch.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/poldek/fetch.conf 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,62 @@
+# Configuration of poldek external file getters. Each [fetcher] section
+# declares one external downloader. The syntax is:
+# [fetcher]
+# name = NAME
+# proto = PROTOCOL[ ,PROTOCOL... ]
+# cmd = CMD [OPTION...] DESTINATION-MACRO URL-MACRO
+# Possible parameters are:
+#
+#[fetcher]
+# Unique name of the fetcher. This is an optional parameter, if not set then
+# name is taken from the "cmd" parameter value as "$(basename $cmd)".
+#name = foo
+
+# Protocol or protocols supported by fetcher. Name of the protocol can be
+# completely arbitrary, i.e. if you can handle protocol "foo" by writing
+# a script which takes URLs in form 'foo://'.
+#proto = foo,bar
+
+# Parameter specifies an external command and its invoking syntax.
+# The syntax of "cmd" is:
+# cmd = COMMAND [ OPTION... ] {%d,%D} {%p,%P}[n]
+# Where COMMAND is the name or full path of command, OPTION is command specific
+# options. Macro '%d' is replaced with cache directory, '%D' is replaced with
+# 'cache directory/file basename', and '%p' with file basename, %P with file full
+# path (URL). Optional suffix 'n' with %p and %P means that command can be
+# invoked with multiple files at once.
+#cmd = foogetter.sh -N %D %Pn
+
+##Configured fetchers
+[fetcher]
+proto = cdrom
+cmd = vfjuggle %d %Pn
+
+[fetcher]
+proto = http,ftp,https
+cmd = wget -N --dot-style=binary -P %d %Pn
+
+[fetcher]
+proto = http,ftp
+cmd = snarf %P %D
+
+[fetcher]
+proto = https
+cmd = curl %P -o %D
+
+[fetcher]
+proto = rsync
+cmd = rsync -v %P %d
+
+[fetcher]
+proto = smb
+cmd = vfsmb -v %P %d
+
+#[fetcher]
+#proto = ssh
+#cmd = vfssh.sh %d %Pn
+
+#[fetcher]
+#proto = foo
+#cmd = foo.sh %d %Pn
+
+
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/poldek/pld-source.conf util-vserver-0.30.212/distrib/pld-ac/poldek/pld-source.conf
--- util-vserver-0.30.212.org/distrib/pld-ac/poldek/pld-source.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/poldek/pld-source.conf 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,47 @@
+# $Id$
+# PLD
+
+_pld_arch = %ARCH%
+_pld_prefix = ftp://ftp.ac.pld-linux.org/dists/ac
+## Some mirrors
+## You can use them if you have better connection there
+# CI TASK:
+#_pld_prefix = ftp://ftp.task.pld-linux.org/dists/ac
+
+
+_ac_idxtype = pndir
+
+# PLD 2.0 (Ac)
+[source]
+type = %{_ac_idxtype}
+name = ac
+path = %{_pld_prefix}/PLD/%{_pld_arch}/PLD/RPMS/
+
+[source]
+type = %{_ac_idxtype}
+name = ac-updates-security
+path = %{_pld_prefix}/updates/security/%{_pld_arch}/
+
+[source]
+type = %{_ac_idxtype}
+name = ac-updates-general
+path = %{_pld_prefix}/updates/general/%{_pld_arch}/
+noauto = yes
+
+[source]
+type = %{_ac_idxtype}
+name = ac-supported
+path = %{_pld_prefix}/supported/%{_pld_arch}/
+noauto = yes
+
+[source]
+type = %{_ac_idxtype}
+name = ac-ready
+path = %{_pld_prefix}/ready/%{_pld_arch}/
+noauto = yes
+
+[source]
+type = %{_ac_idxtype}
+name = ac-test
+path = %{_pld_prefix}/test/%{_pld_arch}/
+noauto = yes
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/poldek/poldek.conf util-vserver-0.30.212/distrib/pld-ac/poldek/poldek.conf
--- util-vserver-0.30.212.org/distrib/pld-ac/poldek/poldek.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/poldek/poldek.conf 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,182 @@
+# poldek main configuration file.
+
+# Some macros. Macros are local, they are not visible in included files
+# and macros declared in them are not visible to includer.
+# Macros names starts with underscore '_'.
+#
+_distro = pld
+
+# Both local and remote files may be included. Included files may not contain
+# [global] section, it will be ignored anyway.
+%include %{_distro}-source.conf
+
+# local sources
+%include source.conf
+
+# External downloaders configuration, not necessary in most cases, cause
+# to internal HTTP and FTP client.
+#%include fetch.conf
+
+[global]
+
+
+# This parameter allows to configure the default repository index type.
+#default index type = pndir
+
+# Cache directory for downloaded files. NOTE: that parent directory of cachedir
+# must exists.
+#cachedir = $HOME/.poldek-cache
+
+# Switch to ordinary user at startup when executed by root
+#runas = poldek
+
+# Permits using root privileges for installation only. Automatically turned
+# on when poldek executed as ordinary user.
+#use sudo = no
+
+# Load /etc/apt/sources.list.
+#load apt sources list = no
+
+# Handle gzipped indexes externally (needed on RedHat 9 and Fedora Core 1 and 2).
+# This option is a workaround for broken zlib linked into librpm; with enabled
+# 'auto zlib in rpm' poldek tries to detect such case and then enables external
+# *.gz handling automatically.
+#vfile external compress = no
+
+# Auto detection of zlib linked into librpm. See 'vfile external compress'
+# description.
+#auto zlib in rpm = yes
+
+# Automatically download whole index if incremental update fails.
+#autoupa = yes
+
+# Do not save given paths into created indexes. This option may significantly
+# reduce index size. Example (notice missing starting '/'):
+# exclude path = usr/share/doc:usr/share/man:usr/src
+#exclude path =
+
+# Full path name to a PM (rpm for now) binary.
+#pm command = /bin/rpm
+
+# Full path name to sudo binary.
+#sudo command = /usr/bin/sudo
+
+
+### File downloaders configuration
+
+# Send ${USER}@${HOSTNAME} as anonymous FTP password (by default
+# 'poldek@znienacka.net' is sent)
+#vfile ftp sysuser as anon passwd = no
+
+# File getters configuration parameter. By this option URL handlers may be configured.
+# To get file from HTTP and FTP servers poldek uses its internal client (what is
+# recommended), although it can be changedby this option. Others protocols handled
+# by external utilities can be configured also. The syntax is:
+# default fetcher = PROTOCOL[,PROTOCOL...]:FETCHER_NAME
+
+# where FETCHER_NAME is a name of one of the fetcher preconfigured in [fetch]
+# sections (placed in fetch.conf in default configuration).
+# Examples:
+# default fetcher = ftp,http:internal
+# default fetcher = https:wget
+# default fetcher = cdrom:vfjuggle
+# vfjuggle is a cdrom getter supplied with poldek.
+#default fetcher = http,ftp: internal
+
+# Proxies for internal FTP and HTTP client may be configured in usual
+# way, by environment variables ftp_proxy and http_proxy, or by this option.
+# Its syntax is similar to "default fetcher" one:
+# proxy = PROTOCOL[,PROTOCOL...]:PROXY_URL
+# Example:
+# proxy = http: http://w3cache.foo.org:8080
+#proxy =
+
+# Comma separated list of hosts or domains which will not be accessed via proxy.
+# Option overrides no_proxy environment variable.
+# Example:
+# noproxy = localhost, .pl, ftp.foo.bar.org
+#noproxy =
+
+# Internal HTTP and FTP client is stubborn, it retries to retrive
+# file if connection breaks. This option tells it how many times
+# it should try.
+#vfile retries = 128
+
+
+### Installation options
+
+# Install packages in small groups instead of doing all-or-nothing
+# installations.
+particle install = no
+
+# Do not remove downloaded packages after its successful installation.
+#keep downloads = no
+
+# Controls visibility of multiple package instances with different EVR.
+# If on, only one, highest version will be visible.
+#unique package names = no
+
+# Epoch autopromotion during dependency comparision. RPM specific.
+# Set it up if you are using system with rpm prior to 4.2.1 version.
+#promoteepoch = no
+
+# Confirm packages installation.
+#confirm installation = no
+
+# Confirm packages removal.
+#confirm removal = yes
+
+# Let the user select package among equivalents.
+choose equivalents manually = yes
+
+# Prevent package listed from being upgraded if they are already installed.
+# hold = kernel* dev
+#hold =
+
+# Ignore package list - packages fits given mask will be invisible.
+# ignore = *-smp-* foo*
+ignore = kernel* udev devfs
+
+# Conflicts with already installed packages are treated as resolved
+# if at least one of multiple-installed package satisfies conflict.
+# rpm doesn't support such cases, so --pm-nodeps is needed (use with
+# care).
+#allow duplicates = yes
+
+
+### RPM specific options
+
+# rpm macros can be set by this option. Examples:
+# rpmdef = _install_langs pl:pl_PL:lt:lt_LT
+# Do not install any documentation:
+# rpmdef = _netsharedpath /usr/share/info:/usr/share/man
+# rpmdef = _excludedocs 1
+#rpmdef =
+
+
+### Dependency processing settings
+# Subtle dependency processing options, they should not be changed
+# unless you know what you are doing
+
+# Automatically install packages required by installed ones.
+#follow = yes
+
+# Greedy upgrades, i.e. upgrade packages which dependencies are broken
+# by being uninstalled ones.
+#greedy = yes
+
+# Be yet more greedy; if successor of orphaned package found, and this
+# successor drags no packages then upgrade the package instead of process
+# its dependencies. Option value is implied by 'greedy' one by defalut.
+#aggressive greedy = yes
+
+# Be tolerant for unmatched versioned dependencies which rpm tolerates, e.g.
+# package A requires capability foo >= 1.0 while package B provides "foo"
+# without any version. Use with care, it may cause weird dependency errors.
+#mercy = no
+
+# Taking into account package Obsoletes.
+#obsoletes = yes
+
+# Taking into account package Conflicts.
+#conflicts = yes
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/poldek/source.conf util-vserver-0.30.212/distrib/pld-ac/poldek/source.conf
--- util-vserver-0.30.212.org/distrib/pld-ac/poldek/source.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/poldek/source.conf 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,85 @@
+# Sample poldek sources configuration
+# Every source is configured in his own [source] section.
+# Possible parameters are:
+#
+#[source]
+# Unique name of the repository.
+#name = foo
+
+# Type of repository index. Permitted values are 'pndir', 'pdir', 'apt', 'yum'
+# and 'dir' as listed by --stl switch.
+#type = pndir
+
+# This parameter sets index original type i.e type of repository
+# from what this repository is created. Default is 'dir' - means
+# that directory of packages is scanned.
+#original type = dir
+
+# Unique name of the repository. May be either path or URL.
+#path = /some/url/or/dir
+
+# If package index and packages are stored in different locations then
+# prefix stands for packages path.
+#prefix = /some/url/or/dir
+
+# Controls visibility of multiple package instances with different EVR.
+# If on, only one, highest version will be visible.
+#douniq = no
+
+# Repository priority. If the same packages (equal names and EVR)
+# are available in more than one source then package from highest
+# prioritized source are taken. Priority is numeric value. Lower number
+# means higher priority, and negative priorities are allowed.
+# Priority is numeric value.
+#pri = 0
+
+# Controling if repository index will be implicit loaded. Set it off if
+# the index should be loaded on demand only, i.e. if specified directly
+# by --sn option.
+#auto = yes
+
+# Controls if repository index will be implicit updated. Set it off if
+# the index should be updated on demand only, i.e. if specified directly
+# by --sn option.
+#autoup = yes
+
+# Packages PGP/GPG signatures (if any) will be verified before their
+# installation.
+#signed = no
+
+# Have the same meaning as [global] parameter. Example:
+# hold = kernel* dev
+#hold =
+
+# Have the same meaning as [global] parameter. Example:
+# ignore = kernel*smp* dev
+#ignore =
+
+# Parameter have the same meaning as [global] parameter.
+# exclude path = usr/share/doc:usr/share/man:usr/src
+#exclude path =
+
+# Preferred language of package descriptions. If not set, taken from locale
+# settings. Example:
+# lang = pl_PL:lt_LT
+#lang =
+
+[source]
+name = home
+type = dir
+path = $HOME/rpm/RPMS
+auto = no
+autoup = no
+
+#[source]
+#type = pndir
+#name = foo
+#path = ftp://ftp.foo.bar.org/RPMS/
+#pri = -10
+#auto = no
+#autoup = no
+#signed = yes
+#hold = kernel*
+#ignore = kernel*-smp-*
+#dscr = pl_PL
+
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/rpm/macros util-vserver-0.30.212/distrib/pld-ac/rpm/macros
--- util-vserver-0.30.212.org/distrib/pld-ac/rpm/macros 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/rpm/macros 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,4 @@
+# Because of https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=52725
+# you have to use at least one language beside 'C'
+%_install_langs C:en:pl
+%_netsharedpath /dev
diff -urN util-vserver-0.30.212.org/distrib/pld-ac/rpmlist.d/00.lst util-vserver-0.30.212/distrib/pld-ac/rpmlist.d/00.lst
--- util-vserver-0.30.212.org/distrib/pld-ac/rpmlist.d/00.lst 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-ac/rpmlist.d/00.lst 2007-02-04 18:20:38.637243750 +0100
@@ -0,0 +1,10 @@
+basesystem-*.rpm
+dev-*.rpm
+FHS-*.rpm
+glibc-misc-*.rpm
+glibc-[0-9]*.rpm
+libgcc-[0-9]*.rpm
+setup-*.rpm
+issue-[0-9]*.rpm
+rpm-base-*.rpm
+vserver-packages-*.rpm
diff -urN util-vserver-0.30.212.org/distrib/pld-th/pkgs/01 util-vserver-0.30.212/distrib/pld-th/pkgs/01
--- util-vserver-0.30.212.org/distrib/pld-th/pkgs/01 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/pkgs/01 2007-02-04 18:20:38.633243000 +0100
@@ -0,0 +1,5 @@
+basesystem
+glibc
+issue
+rpm-base
+vserver-packages
diff -urN util-vserver-0.30.212.org/distrib/pld-th/poldek/aliases.conf util-vserver-0.30.212/distrib/pld-th/poldek/aliases.conf
--- util-vserver-0.30.212.org/distrib/pld-th/poldek/aliases.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/poldek/aliases.conf 2007-02-04 18:20:38.637243000 +0100
@@ -0,0 +1,30 @@
+# System wide aliases
+# ls
+ll = ls -l
+llu = ls -lu
+llU = ls -lU
+lli = ls -lI
+
+# install
+freshen = install -FN
+upgrade = install -F
+
+# for backward compatybility, greedy is on by default now
+greedy-upgrade = install -FG
+
+just-install = install -IN
+
+# search
+what-requires = search -r
+what-provides = search -p
+rsearch = search --perlre
+
+exit = quit
+
+# for fun
+#ls = uninstall kernel
+
+less = !less
+grep = !grep
+awk = !awk
+
diff -urN util-vserver-0.30.212.org/distrib/pld-th/poldek/fetch.conf util-vserver-0.30.212/distrib/pld-th/poldek/fetch.conf
--- util-vserver-0.30.212.org/distrib/pld-th/poldek/fetch.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/poldek/fetch.conf 2007-02-04 18:20:38.637243000 +0100
@@ -0,0 +1,62 @@
+# Configuration of poldek external file getters. Each [fetcher] section
+# declares one external downloader. The syntax is:
+# [fetcher]
+# name = NAME
+# proto = PROTOCOL[ ,PROTOCOL... ]
+# cmd = CMD [OPTION...] DESTINATION-MACRO URL-MACRO
+# Possible parameters are:
+#
+#[fetcher]
+# Unique name of the fetcher. This is an optional parameter, if not set then
+# name is taken from the "cmd" parameter value as "$(basename $cmd)".
+#name = foo
+
+# Protocol or protocols supported by fetcher. Name of the protocol can be
+# completely arbitrary, i.e. if you can handle protocol "foo" by writing
+# a script which takes URLs in form 'foo://'.
+#proto = foo,bar
+
+# Parameter specifies an external command and its invoking syntax.
+# The syntax of "cmd" is:
+# cmd = COMMAND [ OPTION... ] {%d,%D} {%p,%P}[n]
+# Where COMMAND is the name or full path of command, OPTION is command specific
+# options. Macro '%d' is replaced with cache directory, '%D' is replaced with
+# 'cache directory/file basename', and '%p' with file basename, %P with file full
+# path (URL). Optional suffix 'n' with %p and %P means that command can be
+# invoked with multiple files at once.
+#cmd = foogetter.sh -N %D %Pn
+
+##Configured fetchers
+[fetcher]
+proto = cdrom
+cmd = vfjuggle %d %Pn
+
+[fetcher]
+proto = http,ftp,https
+cmd = wget -N --dot-style=binary -P %d %Pn
+
+[fetcher]
+proto = http,ftp
+cmd = snarf %P %D
+
+[fetcher]
+proto = https
+cmd = curl %P -o %D
+
+[fetcher]
+proto = rsync
+cmd = rsync -v %P %d
+
+[fetcher]
+proto = smb
+cmd = vfsmb -v %P %d
+
+#[fetcher]
+#proto = ssh
+#cmd = vfssh.sh %d %Pn
+
+#[fetcher]
+#proto = foo
+#cmd = foo.sh %d %Pn
+
+
diff -urN util-vserver-0.30.212.org/distrib/pld-th/poldek/pld-source.conf util-vserver-0.30.212/distrib/pld-th/poldek/pld-source.conf
--- util-vserver-0.30.212.org/distrib/pld-th/poldek/pld-source.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/poldek/pld-source.conf 2007-02-04 18:25:33.175651250 +0100
@@ -0,0 +1,51 @@
+# PLD
+
+_pld_arch = %ARCH%
+_pld_prefix = ftp://ftp.th.pld-linux.org/dists/th
+## Some mirrors
+## You can use them if you have better connection there
+# CI TASK:
+#_pld_prefix = ftp://ftp.task.pld-linux.org/dists/th
+
+
+_th_idxtype = pndir
+
+# PLD 3.0 (Th)
+[source]
+type = %{_th_idxtype}
+name = th
+path = %{_pld_prefix}/PLD/%{_pld_arch}/RPMS/
+
+[source]
+type = %{_th_idxtype}
+name = th
+path = %{_pld_prefix}/PLD/noarch/RPMS/
+
+[source]
+type = %{_th_idxtype}
+name = th-updates-security
+path = %{_pld_prefix}/updates-security/%{_pld_arch}/RPMS/
+
+[source]
+type = %{_th_idxtype}
+name = th-updates-general
+path = %{_pld_prefix}/updates-general/%{_pld_arch}/RPMS/
+noauto = yes
+
+#[source]
+#type = %{_th_idxtype}
+#name = th-supported
+#path = %{_pld_prefix}/supported/%{_pld_arch}/RPMS/
+#noauto = yes
+
+[source]
+type = %{_th_idxtype}
+name = th-ready
+path = %{_pld_prefix}/ready/%{_pld_arch}/RPMS/
+noauto = yes
+
+[source]
+type = %{_th_idxtype}
+name = th-test
+path = %{_pld_prefix}/test/%{_pld_arch}/RPMS/
+noauto = yes
diff -urN util-vserver-0.30.212.org/distrib/pld-th/poldek/poldek.conf util-vserver-0.30.212/distrib/pld-th/poldek/poldek.conf
--- util-vserver-0.30.212.org/distrib/pld-th/poldek/poldek.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/poldek/poldek.conf 2007-02-04 18:20:38.637243000 +0100
@@ -0,0 +1,182 @@
+# poldek main configuration file.
+
+# Some macros. Macros are local, they are not visible in included files
+# and macros declared in them are not visible to includer.
+# Macros names starts with underscore '_'.
+#
+_distro = pld
+
+# Both local and remote files may be included. Included files may not contain
+# [global] section, it will be ignored anyway.
+%include %{_distro}-source.conf
+
+# local sources
+%include source.conf
+
+# External downloaders configuration, not necessary in most cases, cause
+# to internal HTTP and FTP client.
+#%include fetch.conf
+
+[global]
+
+
+# This parameter allows to configure the default repository index type.
+#default index type = pndir
+
+# Cache directory for downloaded files. NOTE: that parent directory of cachedir
+# must exists.
+#cachedir = $HOME/.poldek-cache
+
+# Switch to ordinary user at startup when executed by root
+#runas = poldek
+
+# Permits using root privileges for installation only. Automatically turned
+# on when poldek executed as ordinary user.
+#use sudo = no
+
+# Load /etc/apt/sources.list.
+#load apt sources list = no
+
+# Handle gzipped indexes externally (needed on RedHat 9 and Fedora Core 1 and 2).
+# This option is a workaround for broken zlib linked into librpm; with enabled
+# 'auto zlib in rpm' poldek tries to detect such case and then enables external
+# *.gz handling automatically.
+#vfile external compress = no
+
+# Auto detection of zlib linked into librpm. See 'vfile external compress'
+# description.
+#auto zlib in rpm = yes
+
+# Automatically download whole index if incremental update fails.
+#autoupa = yes
+
+# Do not save given paths into created indexes. This option may significantly
+# reduce index size. Example (notice missing starting '/'):
+# exclude path = usr/share/doc:usr/share/man:usr/src
+#exclude path =
+
+# Full path name to a PM (rpm for now) binary.
+#pm command = /bin/rpm
+
+# Full path name to sudo binary.
+#sudo command = /usr/bin/sudo
+
+
+### File downloaders configuration
+
+# Send ${USER}@${HOSTNAME} as anonymous FTP password (by default
+# 'poldek@znienacka.net' is sent)
+#vfile ftp sysuser as anon passwd = no
+
+# File getters configuration parameter. By this option URL handlers may be configured.
+# To get file from HTTP and FTP servers poldek uses its internal client (what is
+# recommended), although it can be changedby this option. Others protocols handled
+# by external utilities can be configured also. The syntax is:
+# default fetcher = PROTOCOL[,PROTOCOL...]:FETCHER_NAME
+
+# where FETCHER_NAME is a name of one of the fetcher preconfigured in [fetch]
+# sections (placed in fetch.conf in default configuration).
+# Examples:
+# default fetcher = ftp,http:internal
+# default fetcher = https:wget
+# default fetcher = cdrom:vfjuggle
+# vfjuggle is a cdrom getter supplied with poldek.
+#default fetcher = http,ftp: internal
+
+# Proxies for internal FTP and HTTP client may be configured in usual
+# way, by environment variables ftp_proxy and http_proxy, or by this option.
+# Its syntax is similar to "default fetcher" one:
+# proxy = PROTOCOL[,PROTOCOL...]:PROXY_URL
+# Example:
+# proxy = http: http://w3cache.foo.org:8080
+#proxy =
+
+# Comma separated list of hosts or domains which will not be accessed via proxy.
+# Option overrides no_proxy environment variable.
+# Example:
+# noproxy = localhost, .pl, ftp.foo.bar.org
+#noproxy =
+
+# Internal HTTP and FTP client is stubborn, it retries to retrive
+# file if connection breaks. This option tells it how many times
+# it should try.
+#vfile retries = 128
+
+
+### Installation options
+
+# Install packages in small groups instead of doing all-or-nothing
+# installations.
+particle install = no
+
+# Do not remove downloaded packages after its successful installation.
+#keep downloads = no
+
+# Controls visibility of multiple package instances with different EVR.
+# If on, only one, highest version will be visible.
+#unique package names = no
+
+# Epoch autopromotion during dependency comparision. RPM specific.
+# Set it up if you are using system with rpm prior to 4.2.1 version.
+#promoteepoch = no
+
+# Confirm packages installation.
+#confirm installation = no
+
+# Confirm packages removal.
+#confirm removal = yes
+
+# Let the user select package among equivalents.
+choose equivalents manually = yes
+
+# Prevent package listed from being upgraded if they are already installed.
+# hold = kernel* dev
+#hold =
+
+# Ignore package list - packages fits given mask will be invisible.
+# ignore = *-smp-* foo*
+ignore = kernel* udev devfs
+
+# Conflicts with already installed packages are treated as resolved
+# if at least one of multiple-installed package satisfies conflict.
+# rpm doesn't support such cases, so --pm-nodeps is needed (use with
+# care).
+#allow duplicates = yes
+
+
+### RPM specific options
+
+# rpm macros can be set by this option. Examples:
+# rpmdef = _install_langs pl:pl_PL:lt:lt_LT
+# Do not install any documentation:
+# rpmdef = _netsharedpath /usr/share/info:/usr/share/man
+# rpmdef = _excludedocs 1
+#rpmdef =
+
+
+### Dependency processing settings
+# Subtle dependency processing options, they should not be changed
+# unless you know what you are doing
+
+# Automatically install packages required by installed ones.
+#follow = yes
+
+# Greedy upgrades, i.e. upgrade packages which dependencies are broken
+# by being uninstalled ones.
+#greedy = yes
+
+# Be yet more greedy; if successor of orphaned package found, and this
+# successor drags no packages then upgrade the package instead of process
+# its dependencies. Option value is implied by 'greedy' one by defalut.
+#aggressive greedy = yes
+
+# Be tolerant for unmatched versioned dependencies which rpm tolerates, e.g.
+# package A requires capability foo >= 1.0 while package B provides "foo"
+# without any version. Use with care, it may cause weird dependency errors.
+#mercy = no
+
+# Taking into account package Obsoletes.
+#obsoletes = yes
+
+# Taking into account package Conflicts.
+#conflicts = yes
diff -urN util-vserver-0.30.212.org/distrib/pld-th/poldek/source.conf util-vserver-0.30.212/distrib/pld-th/poldek/source.conf
--- util-vserver-0.30.212.org/distrib/pld-th/poldek/source.conf 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/poldek/source.conf 2007-02-04 18:20:38.637243000 +0100
@@ -0,0 +1,85 @@
+# Sample poldek sources configuration
+# Every source is configured in his own [source] section.
+# Possible parameters are:
+#
+#[source]
+# Unique name of the repository.
+#name = foo
+
+# Type of repository index. Permitted values are 'pndir', 'pdir', 'apt', 'yum'
+# and 'dir' as listed by --stl switch.
+#type = pndir
+
+# This parameter sets index original type i.e type of repository
+# from what this repository is created. Default is 'dir' - means
+# that directory of packages is scanned.
+#original type = dir
+
+# Unique name of the repository. May be either path or URL.
+#path = /some/url/or/dir
+
+# If package index and packages are stored in different locations then
+# prefix stands for packages path.
+#prefix = /some/url/or/dir
+
+# Controls visibility of multiple package instances with different EVR.
+# If on, only one, highest version will be visible.
+#douniq = no
+
+# Repository priority. If the same packages (equal names and EVR)
+# are available in more than one source then package from highest
+# prioritized source are taken. Priority is numeric value. Lower number
+# means higher priority, and negative priorities are allowed.
+# Priority is numeric value.
+#pri = 0
+
+# Controling if repository index will be implicit loaded. Set it off if
+# the index should be loaded on demand only, i.e. if specified directly
+# by --sn option.
+#auto = yes
+
+# Controls if repository index will be implicit updated. Set it off if
+# the index should be updated on demand only, i.e. if specified directly
+# by --sn option.
+#autoup = yes
+
+# Packages PGP/GPG signatures (if any) will be verified before their
+# installation.
+#signed = no
+
+# Have the same meaning as [global] parameter. Example:
+# hold = kernel* dev
+#hold =
+
+# Have the same meaning as [global] parameter. Example:
+# ignore = kernel*smp* dev
+#ignore =
+
+# Parameter have the same meaning as [global] parameter.
+# exclude path = usr/share/doc:usr/share/man:usr/src
+#exclude path =
+
+# Preferred language of package descriptions. If not set, taken from locale
+# settings. Example:
+# lang = pl_PL:lt_LT
+#lang =
+
+[source]
+name = home
+type = dir
+path = $HOME/rpm/RPMS
+auto = no
+autoup = no
+
+#[source]
+#type = pndir
+#name = foo
+#path = ftp://ftp.foo.bar.org/RPMS/
+#pri = -10
+#auto = no
+#autoup = no
+#signed = yes
+#hold = kernel*
+#ignore = kernel*-smp-*
+#dscr = pl_PL
+
diff -urN util-vserver-0.30.212.org/distrib/pld-th/rpm/macros util-vserver-0.30.212/distrib/pld-th/rpm/macros
--- util-vserver-0.30.212.org/distrib/pld-th/rpm/macros 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/rpm/macros 2007-02-04 18:20:38.637243000 +0100
@@ -0,0 +1,4 @@
+# Because of https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=52725
+# you have to use at least one language beside 'C'
+%_install_langs C:en:pl
+%_netsharedpath /dev
diff -urN util-vserver-0.30.212.org/distrib/pld-th/rpmlist.d/00.lst util-vserver-0.30.212/distrib/pld-th/rpmlist.d/00.lst
--- util-vserver-0.30.212.org/distrib/pld-th/rpmlist.d/00.lst 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/distrib/pld-th/rpmlist.d/00.lst 2007-02-04 18:20:38.637243000 +0100
@@ -0,0 +1,10 @@
+basesystem-*.rpm
+dev-*.rpm
+FHS-*.rpm
+glibc-misc-*.rpm
+glibc-[0-9]*.rpm
+libgcc-[0-9]*.rpm
+setup-*.rpm
+issue-[0-9]*.rpm
+rpm-base-*.rpm
+vserver-packages-*.rpm
diff -urN util-vserver-0.30.212.org/scripts/functions util-vserver-0.30.212/scripts/functions
--- util-vserver-0.30.212.org/scripts/functions 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/functions 2007-02-04 18:20:38.637243750 +0100
@@ -394,6 +394,20 @@
fi
}
+function _pkgSetVarsPoldek
+{
+ if test -n "$PKGDIR"; then
+ findDir POLDEKETCDIR $PKGDIR/poldeketc $PKGDIR/base/poldek/etc /etc/poldek
+ findDir POLDEKCACHEDIR $PKGDIR/poldek-cache $PKGDIR/base/poldek/cache
+ else
+ findDir POLDEKETCDIR "$VDIR"/etc/poldek /etc/poldek
+ findDir POLDEKCACHEDIR "$VDIR"/var/tmp/poldek-cache
+ fi
+
+ findFile POLDEK_CONFIG "$POLDEKETCDIR"/poldek.conf ""
+ test -z "$POLDEK_CONFIG" || export POLDEK_CONFIG
+}
+
function _pkgMountBase
{
@@ -467,6 +481,7 @@
rpm) _pkgSetVarsRPM;;
apt) _pkgSetVarsApt;;
yum) _pkgSetVarsYum;;
+ poldek) _pkgSetVarsPoldek;;
*) echo "Unknown packaging flavor" >&2; exit 1;;
esac
done
@@ -750,6 +765,8 @@
style=redhat
elif test -e "$_pgs_vdir"/etc/mandrake-release; then
style=mandrake
+ elif test -e "$_pgs_vdir"/etc/pld-release; then
+ style=pld
elif test -e "$_pgs_vdir"/etc/debian_version; then
style=debian
elif test -e "$_pgs_vdir"/etc/SuSE-release; then
@@ -817,6 +834,27 @@
test -n "$have_yum" && return 0 || return 1
}
+## Usage: pkgmgmt.isPoldekAvailable []
+function pkgmgmt.isPoldekAvailable
+{
+ local cfgdir="$1"
+ local vdir="$2"
+ local is_internal="$3"
+
+ local have_poldek i
+ if test -n "$is_internal"; then
+ have_poldek=1
+ test -d "$cfgdir"/base/poldek -o -d "$cfgdir"/poldeketc || have_poldek=
+ else
+ have_poldek=
+ for i in /bin /usr/bin /usr/local/bin; do
+ test ! -x "$vdir$i"/poldek || { have_poldek=1; break; }
+ done
+ fi
+
+ test -n "$have_poldek" && return 0 || return 1
+}
+
function vshelper.doSanityCheck
{
diff -urN util-vserver-0.30.212.org/scripts/Makefile-files util-vserver-0.30.212/scripts/Makefile-files
--- util-vserver-0.30.212.org/scripts/Makefile-files 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/Makefile-files 2007-02-04 18:20:38.669245750 +0100
@@ -21,6 +21,7 @@
scripts/vapt-get-worker \
scripts/vrpm-worker \
scripts/vyum-worker \
+ scripts/vpoldek-worker \
scripts/vrpm-preload \
scripts/save_s_context \
scripts/vservers.grabinfo.sh \
@@ -47,11 +48,13 @@
scripts/vserver-build.yum \
scripts/vserver-build.template \
scripts/vserver-build.rsync \
+ scripts/vserver-build.poldek \
scripts/vserver-build.functions \
scripts/vserver-build.functions.apt \
scripts/vserver-build.functions.rpm \
scripts/vserver-build.functions.pkgmgmt \
scripts/vserver-build.functions.yum \
+ scripts/vserver-build.functions.poldek \
scripts/vserver-setup.functions \
scripts/vserver.functions \
scripts/vserver.start \
@@ -64,6 +67,7 @@
scripts_pkglib_src_SCRPTS = scripts/pkgmgmt \
scripts/vapt-get-worker \
scripts/vpkg \
+ scripts/vpoldek-worker \
scripts/vrpm-worker \
scripts/vrpm-preload \
scripts/start-vservers \
@@ -86,6 +90,7 @@
scripts_sbin_src_PRGS = scripts/chbind \
scripts/chcontext \
scripts/vapt-get \
+ scripts/vpoldek \
scripts/vdispatch-conf \
scripts/vemerge \
scripts/vesync \
diff -urN util-vserver-0.30.212.org/scripts/pkgmgmt util-vserver-0.30.212/scripts/pkgmgmt
--- util-vserver-0.30.212.org/scripts/pkgmgmt 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/pkgmgmt 2007-02-04 18:20:38.673246000 +0100
@@ -195,7 +195,7 @@
"
case $2 in
- (RH) pkgs=$(vrpm "$1" -- -q --qf '---%{NAME}---\n' rpm apt yum "${YUM_RELEASEPKGS[@]}")
+ (RH) pkgs=$(vrpm "$1" -- -q --qf '---%{NAME}---\n' rpm apt yum poldek "${YUM_RELEASEPKGS[@]}")
hasSubstring "$pkgs" ---rpm--- || {
warning "$ERR
* The vserver does not seem to have the 'rpm' package which is required
@@ -205,9 +205,9 @@
ERR=
}
- hasSubstring "$pkgs" ---apt--- ---yum--- || {
+ hasSubstring "$pkgs" ---apt--- ---yum--- ---poldek--- || {
warning "$ERR
-* The vserver does not seem to have a depsolver like 'apt' or 'yum'
+* The vserver does not seem to have a depsolver like 'apt', 'yum' or 'poldek'
installed. It is suggested to install such a program before setting
up internal package management."
res=1
@@ -368,6 +368,131 @@
fi
}
+function processVserver_PLD()
+{
+ local vserver=$1
+ local is_internalize=$2
+ local cfgdir
+ local i
+
+ cfgdir=$($_VSERVER_INFO "$vserver" APPDIR pkgmgmt) || \
+ cfgdir=$($_VSERVER_INFO "$vserver" APPDIR)/pkgmgmt
+
+ ## Figure out the environment....
+ pkgmgmt.isPoldekAvailable "$cfgdir" "$vdir" "$is_internalize" || have_poldek=
+
+ local POLDEKETCDIR=
+ local POLDEKCACHEDIR=
+ local RPMETCDIR=
+ local RPMSTATEDIR=
+
+ ## Create directories and assign variables where configuration
+ ## can/will be found on the host
+ if test -n "$is_internalize"; then
+ verifyInternalPackages "$vserver" RH || test -n "$IS_FORCE" ||
+ panic "
+Can not continue; use '--force' to override this check"
+
+ pushd "$vdir" >/dev/null
+
+ test ! -L var/lib/rpm || {
+ $_EXEC_CD /var/lib $_RM rpm &&
+ $_EXEC_CD /var/lib $_MKDIR -m755 rpm &&
+ $_EXEC_CD /var/lib $_CHOWN rpm:rpm rpm ||
+ :
+ } /dev/null
+
+ for i in var/tmp/poldek-cache etc/rpm etc/poldek; do
+ test -d "$i" ||
+ $_EXEC_CD /$(dirname "$i") $_MKDIR -m755 $(basename "$i") || :
+ done #2>/dev/null
+
+ popd >/dev/null
+
+ if test -n "$have_poldek"; then
+ findDir POLDEKETCDIR "$cfgdir"/poldeketc "$cfgdir"/base/poldek/etc /etc/poldek
+ fi
+
+ findDir RPMETCDIR "$cfgdir"/rpmetc "$cfgdir"/base/rpm/etc /etc/rpm /
+ findDir RPMSTATEDIR "$cfgdir"/rpmstate "$cfgdir"/base/rpm/state
+ else
+ mkdir -m755 -p "$cfgdir"
+ local need_base=
+
+ if test -n "$have_poldek"; then
+ findDir POLDEKETCDIR "$cfgdir"/poldeketc "$cfgdir"/base/poldek/etc /
+ findDir POLDEKCACHEDIR "$cfgdir"/poldek-cache "$cfgdir"/base/poldek/cache /
+
+ test "$POLDEKETCDIR" != / || POLDEKETCDIR=$cfgdir/base/poldek/etc
+ test "$POLDEKCACHEDIR" != / || POLDEKCACHEDIR=$cfgdir/base/poldek/cache
+
+ test -d "$cfgdir"/poldeketc -a -d "$cfgdir"/poldek-cache || need_base=1
+ fi
+
+ findDir RPMETCDIR "$cfgdir"/rpmetc "$cfgdir"/base/rpm/etc /
+ findDir RPMSTATEDIR "$cfgdir"/rpmstate "$cfgdir"/base/rpm/state /
+
+ test "$RPMETCDIR" != / || RPMETCDIR=$cfgdir/base/rpm/etc
+ test "$RPMSTATEDIR" != / || RPMSTATEDIR=$cfgdir/base/rpm/state
+
+ test -d "$cfgdir"/rpmetc -a -d "$cfgdir"/rpmstate || need_base=1
+ test ! -e "$cfgdir"/base || need_base=
+
+ test -z "$need_base" || ln -s "$PKGCFGDIR" "$cfgdir"/base
+
+ mkdir -m755 -p "$PKGCFGDIR"
+ _createDirs "$POLDEKETCDIR" "$POLDEKCACHEDIR" \
+ "$RPMETCDIR" "$RPMSTATEDIR"
+ fi
+
+ ## Copy the files...
+ if test -n "$is_internalize"; then
+ if test -n "$have_poldek"; then
+ _copySecure "$vdir" "$POLDEKETCDIR" /etc/poldek
+ pushd "$vdir" >/dev/null
+ _hashAuto /etc/poldek.conf '/'
+ popd >/dev/null
+ fi
+
+ _copySecure "$vdir" "$RPMETCDIR" /etc/rpm
+ _copySecure "$vdir" "$RPMSTATEDIR" /var/lib/rpm
+
+ pushd "$vdir" >/dev/null
+ ## remove %_dbpath settings
+ _substFile /etc/rpm/macros '/^%_dbpath[ \t].*/D'
+ popd >/dev/null
+ else
+ if test -n "$have_poldek"; then
+ _copySecureRev "$vdir" /etc/poldek "$POLDEKETCDIR"
+ _unhashAuto "$POLDEKETCDIR"/poldek.conf '/'
+ fi
+
+ _copySecureRev "$vdir" /etc/rpm "$RPMETCDIR"
+ _copySecureRev "$vdir" /var/lib/rpm "$RPMSTATEDIR"
+
+ echo -e "%_dbpath\t\t$rpmdb_mntpoint" >>$RPMETCDIR/macros
+ fi
+
+ ## Cleanups...
+ if test -n "$is_internalize"; then
+ :
+ else
+ tmpdir=$($_MKTEMPDIR -p /var/tmp pgmgmt.XXXXXX)
+ trap "$_RM -rf $tmpdir" EXIT
+ pushd "$vdir" >/dev/null
+ $_EXEC_CD /var/lib $_MV rpm $tmpdir/
+ $_EXEC_CD /var/lib $_LN_S "$rpmdb_mntpoint" rpm
+ $_RM -rf $tmpdir
+ fi
+
+ ## Finish it...
+ if test -n "$is_internalize"; then
+ $_TOUCH "$cfgdir"/internal
+ else
+ $_RM -f "$cfgdir"/internal
+ fi
+}
+
function processVserver_Debian()
{
local vserver=$1
@@ -417,6 +542,7 @@
case "$style" in
(redhat|mandrake) processVserver_RH "$vserver" "$IS_INTERNALIZE";;
+ (pld) processVserver_PLD "$vserver" "$IS_INTERNALIZE";;
(debian) processVserver_Debian "$vserver" "$IS_INTERNALIZE";;
(*)
echo $"Vserver style '$style' is not supported for packagemanagment" >&2
diff -urN util-vserver-0.30.212.org/scripts/util-vserver-vars.pathsubst util-vserver-0.30.212/scripts/util-vserver-vars.pathsubst
--- util-vserver-0.30.212.org/scripts/util-vserver-vars.pathsubst 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/util-vserver-vars.pathsubst 2007-02-04 18:20:38.673246000 +0100
@@ -51,6 +51,7 @@
_LIB_VSERVER_BUILD_FUNCTIONS_RPM="$__PKGLIBDIR/vserver-build.functions.rpm"
_LIB_VSERVER_BUILD_FUNCTIONS_YUM="$__PKGLIBDIR/vserver-build.functions.yum"
_LIB_VSERVER_BUILD_FUNCTIONS_PKGMGMT="$__PKGLIBDIR/vserver-build.functions.pkgmgmt"
+_LIB_VSERVER_BUILD_FUNCTIONS_POLDEK="$__PKGLIBDIR/vserver-build.functions.poldek"
_LISTDEVIP="$__LEGACYDIR/listdevip"
_LOCKFILE="$__PKGLIBDIR/lockfile"
_MASK2PREFIX="$__PKGLIBDIR/mask2prefix"
@@ -99,6 +100,8 @@
_VUNIFY="$__PKGLIBDIR/vunify"
_VYUM="$__SBINDIR/vyum"
_VYUM_WORKER="$__PKGLIBDIR/vyum-worker"
+_VPOLDEK="$__SBINDIR/vpoldek"
+_VPOLDEK_WORKER="$__PKGLIBDIR/vpoldek-worker"
_AWK="@AWK@"
_BZIP2="@BZIP2@"
diff -urN util-vserver-0.30.212.org/scripts/vpkg util-vserver-0.30.212/scripts/vpkg
--- util-vserver-0.30.212.org/scripts/vpkg 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/vpkg 2007-02-04 18:20:38.673246000 +0100
@@ -115,6 +115,44 @@
fi
fi
;;
+ (pld)
+ rpm_param=
+ poldek_param=
+ case "$tag" in
+ ## rpm outputs sometimes '(contains no files)', so return
+ ## only the valid output
+ (get-conffiles)
+ rpm_param=( -qac --pipe "$_SED '\!^/!p;d'" );;
+ (install)
+ rpm_param=( -Uvh "$@" )
+ poldek_param=( --install -v "$@" )
+ ;;
+ esac
+
+ if test -n "$is_external"; then
+ have_poldek=1
+ test -d "$cfgdir"/base/poldek -o -d "$cfgdir"/poldeketc || have_poldek=
+ else
+ have_poldek=
+ for i in /bin /usr/bin /usr/local/bin; do
+ test ! -x "$vdir$i"/poldek || { have_poldek=1; break; }
+ done
+ fi
+
+ if test -n "$is_external"; then
+ if test "$have_poldek" -a "$poldek_param"; then
+ cmd=( "$_VPOLDEK" "$vserver" -- "${poldek_param[@]}" )
+ else
+ cmd=( "$_VRPM" "$vserver" -- "${rpm_param[@]}" )
+ fi
+ else
+ if test "$have_poldek" -a "$poldek_param"; then
+ cmd=( "$_VSERVER" --silent "$vserver" exec poldek "${poldek_param[@]}" )
+ else
+ cmd=( "$_VSERVER" --silent "$vserver" exec rpm "${rpm_param[@]}" )
+ fi
+ fi
+ ;;
(debian)
case "$tag" in
(get-conffiles)
diff -urN util-vserver-0.30.212.org/scripts/vpoldek util-vserver-0.30.212/scripts/vpoldek
--- util-vserver-0.30.212.org/scripts/vpoldek 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/scripts/vpoldek 2007-02-04 18:20:38.673246000 +0100
@@ -0,0 +1,96 @@
+#! /bin/bash
+# $Id$
+
+# Copyright (C) 2003 Enrico Scholz
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+: ${UTIL_VSERVER_VARS:=/usr/lib/util-vserver/util-vserver-vars}
+test -e "$UTIL_VSERVER_VARS" || {
+ echo $"Can not find util-vserver installation (the file '$UTIL_VSERVER_VARS' would be expected); aborting..." >&2
+ exit 1
+}
+. "$UTIL_VSERVER_VARS"
+. "$_LIB_FUNCTIONS"
+
+
+function showHelp()
+{
+ echo \
+$"Usage: $0 * [--all] -- +
+
+Report bugs to <$PACKAGE_BUGREPORT>."
+ exit 0
+}
+
+function showVersion()
+{
+ echo \
+$"vpoldek $PACKAGE_VERSION -- poldek for vservers
+This program is part of $PACKAGE_STRING
+
+Copyright (C) 2003 Enrico Scholz
+This program is free software; you may redistribute it under the terms of
+the GNU General Public License. This program has absolutely no warranty."
+ exit 0
+}
+
+is_quiet=
+declare -a vservers=()
+
+while test "$#" -ge 1; do
+ case "$1" in
+ --) shift; break;;
+ --help) showHelp $0;;
+ --quiet|-q) is_quiet=1 ;;
+ --all)
+ getAllVservers tmp
+ vservers=( "${vservers[@]}" "${tmp[@]}" )
+ ;;
+ --version)
+ showVersion ;;
+ *) vservers=( "${vservers[@]}" "$1" )
+ esac
+ shift
+done
+
+cnt=0
+res=255
+for i in "${vservers[@]}"; do
+ cnt=$[ cnt + 1 ]
+
+ test -n "$is_quiet" || {
+ colorize bold echo -n "vpoldek: operating on vserver "
+ colorize bold colorize emph echo "$i"
+ xtermTitle "vpoldek: operating on vserver '$i' [$cnt/${#vservers[@]}]"
+ }
+
+ if pkgmgmt.isInternal "$i"; then
+ $_VSERVER "$i" exec poldek "$@"
+ else
+ callInNamespace "$i" \
+ "$_VNAMESPACE" --new -- "$_VPOLDEK_WORKER" "$i" "$@"
+ fi
+ res=$?
+
+ test $res -eq 0 -o -n "$is_quiet" || {
+ colorize error echo -n $"vpoldek failed on vserver '$i' with errorcode $res"
+ echo
+ }
+
+ test -n "$is_quiet" || echo
+done
+
+test "$cnt" -ge 0 || echo "No vservers specified" >&2
+exit $res
diff -urN util-vserver-0.30.212.org/scripts/vpoldek-worker util-vserver-0.30.212/scripts/vpoldek-worker
--- util-vserver-0.30.212.org/scripts/vpoldek-worker 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/scripts/vpoldek-worker 2007-02-04 18:20:38.673246000 +0100
@@ -0,0 +1,45 @@
+#! /bin/bash
+# $Id$
+
+# Copyright (C) 2003 Enrico Scholz
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+set -e
+
+: ${UTIL_VSERVER_VARS:=/usr/lib/util-vserver/util-vserver-vars}
+test -e "$UTIL_VSERVER_VARS" || {
+ echo $"Can not find util-vserver installation (the file '$UTIL_VSERVER_VARS' would be expected); aborting..." >&2
+ exit 1
+}
+. "$UTIL_VSERVER_VARS"
+. "$_LIB_FUNCTIONS"
+
+
+vserver="$1"
+shift
+
+pkgInit "$vserver" rpm poldek
+
+test -z "$_POLDEK" || {
+ warning $"The environment variable \$_POLDEK is not supported anymore; please use \$POLDEK instead of"
+ ${POLDEK:=$_POLDEK}
+}
+
+exec ${_POLDEK:-poldek} \
+ -v --root=$VDIR \
+ --cachedir=$POLDEKCACHEDIR \
+ --conf=$POLDEK_CONFIG \
+ --pmcmd=$RPM_BINARY \
+ "$@"
diff -urN util-vserver-0.30.212.org/scripts/vserver-build util-vserver-0.30.212/scripts/vserver-build
--- util-vserver-0.30.212.org/scripts/vserver-build 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/vserver-build 2007-02-04 18:20:38.673246000 +0100
@@ -57,6 +57,9 @@
yum ... -- -d
... installs the base-packages of the given distribution with
help of 'vyum'
+ poldek ... -- -d
+ ... installs the base-packages of the given distribution with
+ help of 'vpoldek'
rpm ... -- [-d ] --empty|([--force] [--nodeps] )+
... installs lists of rpm-packages
skeleton ... -- [ *]
@@ -134,7 +137,7 @@
case x"$method" in
(xlegacy) exec $_VSERVER_LEGACY "$VSERVER_NAME" build "$@" ;;
- (xapt-rpm|xcopy|xskeleton|xdebootstrap|xyum|xrpm|xtemplate|xfai|xrsync)
+ (xapt-rpm|xcopy|xskeleton|xdebootstrap|xyum|xrpm|xtemplate|xfai|xrsync|xpoldek)
. $__PKGLIBDIR/vserver-build.$method
;;
(x) panic $"No build-method specified";;
diff -urN util-vserver-0.30.212.org/scripts/vserver-build.functions util-vserver-0.30.212/scripts/vserver-build.functions
--- util-vserver-0.30.212.org/scripts/vserver-build.functions 2006-12-09 17:15:24.000000000 +0100
+++ util-vserver-0.30.212/scripts/vserver-build.functions 2007-02-04 18:20:38.673246000 +0100
@@ -167,6 +167,12 @@
elif test -e /etc/slackware-version; then
set -- $(cat /etc/slackware-version)
DISTRIBUTION=slackware$2
+ elif test -e /etc/pld-release; then
+ old_IFS=$IFS
+ IFS='()'
+ set -- $(cat /etc/pld-release)
+ DISTRIBUTION=pld-$(echo $2 | tr A-Z a-z)
+ IFS=$old_IFS
elif test -n "$1"; then
DISTRIBUTION=$1
else
diff -urN util-vserver-0.30.212.org/scripts/vserver-build.functions.poldek util-vserver-0.30.212/scripts/vserver-build.functions.poldek
--- util-vserver-0.30.212.org/scripts/vserver-build.functions.poldek 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/scripts/vserver-build.functions.poldek 2007-02-04 18:20:38.673246000 +0100
@@ -0,0 +1,67 @@
+# $Id$ --*- sh -*--
+
+# Copyright (C) 2003 Enrico Scholz
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+function poldek.installBasePackages
+{
+ local name="$1"
+ local dir="$2"
+
+ test "$dir" != / || return 0
+ for filelist in "$dir"/*; do
+ isRegularFile "$filelist" || continue
+ local idx=0
+ local can_fail=false
+ local flags='--install'
+
+ set -- $(<$filelist)
+ while test "$#" -gt 0; do
+ case "$1" in
+ --reinstall) flags='--reinstall';;
+ --can-fail) can_fail=true;;
+ *) break;;
+ esac
+ shift
+ done
+ "$_VPOLDEK" "$name" -- $flags $* || $can_fail
+ done
+}
+
+function poldek.initVariables
+{
+ findFile POLDEKCONFDEFAULT \
+ "$__CONFDIR/.distributions/$DISTRIBUTION/poldek/poldek.conf" \
+ "$__CONFDIR/.defaults/apps/pkgmgmt/poldek/poldek.conf" \
+ "$__DISTRIBDIR/$DISTRIBUTION/poldek/poldek.conf" \
+ "$__DISTRIBDIR/defaults/poldek/poldek.conf" \
+ ''
+}
+
+function poldek.initFilesystem
+{
+ mkdir -p "$PKGCFGDIR"/poldek/etc
+ mkdir -p "$PKGCFGBASE"/poldek-cache
+
+ $_LN_S "$PKGCFGBASE"/poldek-cache "$PKGCFGDIR"/poldek/cache
+
+ populateDirectory "$PKGCFGDIR/poldek/etc" \
+ "$__DISTRIBDIR/defaults/poldek" \
+ "$__DISTRIBDIR/$DISTRIBUTION/poldek" \
+ "$__CONFDIR/.distributions/$DISTRIBUTION/poldek"
+
+# test -z "$POLDEKCONFDEFAULT" || \
+# $_LN_S "$POLDEKCONFDEFAULT" "$PKGCFGDIR"/poldek/etc/
+}
diff -urN util-vserver-0.30.212.org/scripts/vserver-build.poldek util-vserver-0.30.212/scripts/vserver-build.poldek
--- util-vserver-0.30.212.org/scripts/vserver-build.poldek 1970-01-01 01:00:00.000000000 +0100
+++ util-vserver-0.30.212/scripts/vserver-build.poldek 2007-02-04 18:20:38.701247750 +0100
@@ -0,0 +1,64 @@
+# $Id$ --*- sh -*--
+
+# Copyright (C) 2003 Enrico Scholz
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+tmp=$(getopt -o +d: --long debug -n "$0" -- "$@") || exit 1
+eval set -- "$tmp"
+
+. "$_LIB_VSERVER_BUILD_FUNCTIONS_RPM"
+. "$_LIB_VSERVER_BUILD_FUNCTIONS_POLDEK"
+. "$_LIB_VSERVER_BUILD_FUNCTIONS_PKGMGMT"
+
+while true; do
+ case "$1" in
+ (-d) DISTRIBUTION=$2; shift;;
+ (--debug) set -x;;
+ (--) shift; break ;;
+ (*) echo "vserver-build.poldek: internal error: unrecognized option '$1'" >&2
+ exit 1
+ ;;
+ esac
+ shift
+done
+
+getDistribution
+
+base.init
+
+pkgmgmt.initVariables
+rpm.initVariables
+poldek.initVariables
+
+base.initFilesystem "$OPTION_FORCE"
+pkgmgmt.initFilesystem "$OPTION_FORCE"
+rpm.initFilesystem
+poldek.initFilesystem
+
+setup_writeOption "$VSERVER_NAME"
+setup_writeInitialFstab
+
+test -z "$BUILD_INITPRE" || "$BUILD_INITPRE" "$SETUP_CONFDIR" "$UTIL_VSERVER_VARS"
+rpm.initDB "$SETUP_CONFDIR"
+rpm.importGPGPubKeys "$SETUP_CONFDIR" \
+ "$__CONFDIR/.distributions/$DISTRIBUTION/pubkeys" \
+ "$__CONFDIR/.distributions/.common/pubkeys" \
+ "$__DISTRIBDIR/$DISTRIBUTION/pubkeys"
+
+$_VPOLDEK "$SETUP_CONFDIR" -- --update-whole
+poldek.installBasePackages "$SETUP_CONFDIR" "$PKGINSTALLDIR"
+test -z "$BUILD_INITPOST" || "$BUILD_INITPOST" "$SETUP_CONFDIR" "$UTIL_VSERVER_VARS"
+
+base.setSuccess