Hello community, here is the log from the commit of package patterns-server for openSUSE:Factory checked in at 2018-10-04 19:01:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/patterns-server (Old) and /work/SRC/openSUSE:Factory/.patterns-server.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "patterns-server" Thu Oct 4 19:01:51 2018 rev:5 rq:639838 version:20180718 Changes: -------- --- /work/SRC/openSUSE:Factory/patterns-server/patterns-server.changes 2018-02-15 16:00:16.368672288 +0100 +++ /work/SRC/openSUSE:Factory/.patterns-server.new/patterns-server.changes 2018-10-04 19:01:52.479179405 +0200 @@ -1,0 +2,23 @@ +Thu Jul 19 12:07:25 UTC 2018 - sfl...@suse.de + +- Merge with the version from SLE/Leap 15 full changes now below + in the changelog. + +------------------------------------------------------------------- +Fri Apr 13 11:04:15 UTC 2018 - agin...@suse.com + +- xen patterns should be only available on x86_64 (BSC#1088175) +- remove 32bits patterns for XEN or KVM + +------------------------------------------------------------------- +Wed Mar 14 13:17:39 CET 2018 - behl...@suse.de + +- Replace openldap2 with 389-ds [bsc#1084789] + +------------------------------------------------------------------- +Fri Mar 2 13:48:06 UTC 2018 - agin...@suse.com + +- add vim as a Recommends for XEN/KVM_tools patterns (BSC#1078908) +- version: 20180302 + +------------------------------------------------------------------- @@ -4,0 +28,57 @@ + +------------------------------------------------------------------- +Mon Dec 11 12:07:25 UTC 2017 - sfl...@suse.de + +- fix the order of sourced files to match other patterns saving copy paste errors + +------------------------------------------------------------------- +Mon Dec 11 11:25:39 UTC 2017 - sfl...@suse.de + +- correctly source the files for 32bit patterns + +------------------------------------------------------------------- +Fri Dec 8 06:59:55 UTC 2017 - sfl...@suse.de + +- Version: 20171206 +- Add obsoletes across all patterns (bsc#1071761) + +------------------------------------------------------------------- +Thu Nov 2 15:29:14 UTC 2017 - agin...@suse.com + +- remove duplicate description entry for kvm_tools patterns (BSC#1064239) +- bump version to 20171102 + +------------------------------------------------------------------- +Mon Oct 16 08:16:17 UTC 2017 - agin...@suse.com + +- add a requires on libvirt-client (bsc#1063246) + +------------------------------------------------------------------- +Wed Oct 11 14:40:32 UTC 2017 - agin...@suse.com + +- add missing source: pattern-definition-32bit.txt + create_32bit-patterns_file.pl pre_checkin.sh + +------------------------------------------------------------------- +Wed Oct 11 08:16:23 UTC 2017 - agin...@suse.com + +- do not install qemu-kvm by default (legacy), but install the + correct qemu based on arch detection + +------------------------------------------------------------------- +Thu Sep 21 04:25:38 UTC 2017 - sfl...@suse.de + +- Add 32bit support (remove some recommended 32bit packages) +- Changes to the following patterns to reflect what was in SLE + * dhcp_dns_server + * gateway_server + * kvm_server + * lamp_server + * mail_server + * printing + * xen_server +- Add the following patterns from sle + * kvm_tools + * xen_tools +- print_server renammed to printing + New: ---- create_32bit-patterns_file.pl pattern-definition-32bit.txt pre_checkin.sh ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ patterns-server.spec ++++++ --- /var/tmp/diff_new_pack.mgAES8/_old 2018-10-04 19:01:52.895178968 +0200 +++ /var/tmp/diff_new_pack.mgAES8/_new 2018-10-04 19:01:52.895178968 +0200 @@ -19,13 +19,16 @@ %bcond_with betatest Name: patterns-server -Version: 20170319 +Version: 20180718 Release: 0 Summary: Patterns for Installation (server patterns) License: MIT Group: Metapackages Url: https://github.com/openSUSE/patterns Source0: %{name}-rpmlintrc +Source1: pattern-definition-32bit.txt +Source2: create_32bit-patterns_file.pl +Source3: pre_checkin.sh BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: patterns-rpm-macros @@ -46,17 +49,24 @@ Provides: pattern-icon() = yast-dns-server Provides: pattern-order() = 3040 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-dhcp_dns_server = %{version} Obsoletes: patterns-openSUSE-dhcp_dns_server < %{version} +%else +Provides: patterns-sles-dhcp_dns_server = %{version} +Obsoletes: patterns-sles-dhcp_dns_server < %{version} +%endif Requires: pattern() = basesystem -Recommends: bind +Requires: bind +Requires: dhcp-server +Recommends: bind-chrootenv +Recommends: bind-doc +Recommends: dhcp Recommends: dhcp-relay -Recommends: dhcp-server Recommends: dhcp-tools Recommends: yast2-dhcp-server Recommends: yast2-dns-server -Recommends: bind-doc %description dhcp_dns_server Software to set up a server for the Dynamic Host Configuration Protocol (DHCP) and the Domain Name System (DNS) services. DHCP provides configuration parameters to client computers to integrate them into a network, whereas DNS delivers information associated with domain names, in particular, the IP address. @@ -75,18 +85,20 @@ Provides: pattern-icon() = yast-ldap-server Provides: pattern-order() = 3060 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-directory_server = %{version} Obsoletes: patterns-openSUSE-directory_server < %{version} +%else +Provides: patterns-sles-directory_server = %{version} +Obsoletes: patterns-sles-directory_server < %{version} +%endif Requires: pattern() = basesystem +# bsc#1084789 +Recommends: 389-ds Recommends: nss_ldap -Recommends: openldap2 Recommends: pam_ldap Recommends: yast2-ldap-server -%ifarch x86_64 -Recommends: nss_ldap-32bit -Recommends: pam_ldap-32bit -%endif %description directory_server Software to set up a directory server with OpenLDAP. The Lightweight Directory Access Protocol (LDAP) is used to access online directory services. @@ -105,22 +117,29 @@ Provides: pattern-icon() = yast-nfs_server Provides: pattern-order() = 2900 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-file_server = %{version} Obsoletes: patterns-openSUSE-file_server < %{version} +%else +Provides: patterns-sles-file_server = %{version} +Obsoletes: patterns-sles-file_server < %{version} +%endif Requires: pattern() = basesystem +Requires: nfs-kernel-server Recommends: nfsidmap -Recommends: nfs-kernel-server Recommends: samba -Recommends: yast2-nfs-server -Recommends: yast2-samba-server -Recommends: vsftpd Recommends: samba-client Recommends: samba-winbind Recommends: tftp +Recommends: vsftpd +%if 0%{?is_opensuse} Recommends: yast2-ftp-server +Recommends: yast2-nfs-server +Recommends: yast2-samba-server Recommends: yast2-tftp-server Suggests: atftp +%endif %description file_server File services to host files so that they may be accessed or retrieved by other computers on the same network. This includes the FTP, SMB, and NFS protocols. @@ -139,21 +158,28 @@ Provides: pattern-icon() = yast-dsl Provides: pattern-order() = 3020 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-gateway_server = %{version} Obsoletes: patterns-openSUSE-gateway_server < %{version} +%else +Provides: patterns-sles-gateway_server = %{version} +Obsoletes: patterns-sles-gateway_server < %{version} +%endif Requires: pattern() = basesystem -Recommends: wireshark +Requires: wireshark +Recommends: arptables +Recommends: calamaris Recommends: ddclient Recommends: fetchmail +Recommends: fetchmailconf Recommends: ipsec-tools Recommends: quagga Recommends: radvd Recommends: rarpd -Recommends: squid3 -Recommends: squidGuard -Suggests: wwwoffle -Suggests: mirror +Recommends: squid +Recommends: whois +Recommends: wondershaper %description gateway_server Software to set up a proxy, firewall, and gateway server, including a virtual private network (VPN) gateway. @@ -172,26 +198,35 @@ Provides: pattern-icon() = yast-uml Provides: pattern-order() = 3099 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-kvm_server = %{version} Obsoletes: patterns-openSUSE-kvm_server < %{version} +%else +Provides: patterns-sles-kvm_server = %{version} +Obsoletes: patterns-sles-kvm_server < %{version} +%endif Requires: pattern() = basesystem -Recommends: qemu-kvm -Recommends: vm-install -Recommends: tigervnc -Recommends: fontconfig -Recommends: fonts-config -Recommends: xorg-x11-fonts -Recommends: efont-unicode-bitmap-fonts -Recommends: xauth -Recommends: bridge-utils -Recommends: tftp -Recommends: agfa-fonts -Recommends: virt-viewer -Recommends: virt-manager +# fix issue because qemu-kvm is not present on all arch and +# we would like to deprecate it for the futur (will be only +# updated if already installed on the system) +%ifarch %ix86 x86_64 +Requires: qemu-x86 +%endif +%ifarch ppc ppc64 ppc64le +Requires: qemu-ppc +%endif +%ifarch s390x +Requires: qemu-s390 +%endif +%ifarch %arm +Requires: qemu-arm +%endif +Requires: tftp Recommends: libvirt-daemon-qemu -Suggests: libvirt -Suggests: libvirt-daemon-lxc +Recommends: tigervnc +Recommends: virt-install +Recommends: vm-install %description kvm_server Software to set up a server for configuring, managing, and monitoring virtual machines on a single physical machine. @@ -202,6 +237,51 @@ ################################################################################ +%package kvm_tools +%pattern_basetechnologies +Summary: KVM Virtualization Host and tools +Group: Metapackages +Provides: pattern() = kvm_tools +Provides: pattern-icon() = yast-uml +Provides: pattern-order() = 1090 +Provides: pattern-visible() +%if !0%{?is_opensuse} +Provides: patterns-sles-kvm_tools = %{version} +Obsoletes: patterns-sles-kvm_tools < %{version} +%endif +Requires: pattern() = basesystem +Requires: pattern() = kvm_server + +Requires: libvirt-client +Requires: libvirt-daemon-qemu +Requires: libvirt-daemon-config-network +Requires: tigervnc +Requires: vm-install +# bnc#868542 +Requires: virt-manager +Recommends: openssh +Recommends: yast2-control-center +Recommends: yast2-ncurses +Recommends: yast2-ncurses-pkg +Recommends: yast2-vm +Recommends: xorg-x11-xauth +Recommends: virt-install +Recommends: virt-viewer +Recommends: virt-v2v +# BSC#1078908 +Recommends: vim + +%description kvm_tools +This will provide all minimal system to get a running KVM Hypervisor +and be able to configure, manage, and monitor virtual machines on a +single physical machine. + +%files kvm_tools +%dir /usr/share/doc/packages/patterns +/usr/share/doc/packages/patterns/kvm_tools.txt + +################################################################################ + %package lamp_server %pattern_serverfunctions Summary: Web and LAMP Server @@ -210,31 +290,26 @@ Provides: pattern-icon() = yast-http-server Provides: pattern-order() = 3000 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-lamp_server = %{version} Obsoletes: patterns-openSUSE-lamp_server < %{version} +%else +Provides: patterns-sles-lamp_server = %{version} +Obsoletes: patterns-sles-lamp_server < %{version} +%endif Requires: pattern() = basesystem -Recommends: apache2 +Requires: apache2 Recommends: yast2-http-server Recommends: apache2-doc Recommends: apache2-example-pages -Recommends: apache2-mod_perl Recommends: apache2-mod_php7 Recommends: apache2-mod_python Recommends: apache2-prefork +Recommends: libapr-util1 +Recommends: libapr1 Recommends: mariadb -Recommends: php7-ctype -Recommends: php7-dom -Recommends: php7-iconv -Recommends: php7-mysql -Suggests: php7-gd -Suggests: php7-mbstring -Suggests: php7-zlib -Suggests: php7-zip -# slightly out of place I admit -Suggests: postgresql -Suggests: postgresql-contrib -Suggests: postgresql-server +Recommends: perl %description lamp_server Software to set up a Web server that is able to serve static, dynamic, and interactive content (like a Web shop). This includes Apache HTTP Server, the database management system MySQL, and scripting languages such as PHP, Python, Ruby on Rails, or Perl. @@ -253,27 +328,22 @@ Provides: pattern-icon() = yast-mail-server Provides: pattern-order() = 2980 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-mail_server = %{version} Obsoletes: patterns-openSUSE-mail_server < %{version} +%else +Provides: patterns-sles-mail_server = %{version} +Obsoletes: patterns-sles-mail_server < %{version} +%endif Requires: pattern() = basesystem -Recommends: cyrus-imapd +Requires: vacation Recommends: amavisd-new -Recommends: mailman Recommends: clamav -Recommends: fetchmail -Recommends: postfix -Recommends: procmail -Recommends: spamassassin +Recommends: cyrus-imapd Recommends: inn -Recommends: vacation -Suggests: dovecot12 -Suggests: mlmmj -Suggests: sendmail -Suggests: bogofilter-db -# this duplicates the recommend, but works around a problem with the solver -# as everything is weak required, it needs one more hint for postfix -Suggests: postfix +Recommends: mailman +Recommends: spamassassin %description mail_server Software to set up electronic mail and message services to handle email, mailing, and news lists, including a virus scanner to scan messages at the server level. @@ -284,7 +354,7 @@ ################################################################################ -%package print_server +%package printing %pattern_serverfunctions Summary: Print Server Group: Metapackages @@ -292,35 +362,44 @@ Provides: pattern-icon() = yast-printer Provides: pattern-order() = 2960 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-print_server = %{version} Obsoletes: patterns-openSUSE-print_server < %{version} +%else +Provides: patterns-sles-printing = %{version} +Obsoletes: patterns-sles-printing < %{version} +%endif Requires: pattern() = basesystem -Recommends: cups +Requires: cups Recommends: cups-backends +Recommends: cups-filters +Recommends: cups-filters-cups-browsed Recommends: cups-filters-foomatic-rip -Recommends: OpenPrintingPPDs -Recommends: m2300w -Recommends: splix +Recommends: cups-filters-ghostscript +Recommends: epson-inkjet-printer-escpr Recommends: gutenprint -Recommends: hplip +Recommends: hplip-hpijs Recommends: manufacturer-PPDs +Recommends: OpenPrintingPPDs-ghostscript +Recommends: OpenPrintingPPDs-hpijs +Recommends: OpenPrintingPPDs-postscript Recommends: samba -Suggests: udev-configure-printer -Suggests: poster -# print to bluetooth -Suggests: bluez-cups -Suggests: pbm2l7k +Recommends: splix -%description print_server -Software used to host print queues so that they may be accessed by other computers on the same network. LPD, CUPS, and SMB print servers and queues are supported. +%description printing +This pattern provides all packages necessary for printing. It provides all +needed packages for printing to a locally connected printer, printing using a +remote print server and for setting up a print server. -%files print_server +%files printing %dir /usr/share/doc/packages/patterns -/usr/share/doc/packages/patterns/print_server.txt +/usr/share/doc/packages/patterns/printing.txt ################################################################################ +# BSC#1088175 +%ifarch x86_64 %package xen_server %pattern_serverfunctions Summary: Xen Virtual Machine Host Server @@ -329,25 +408,25 @@ Provides: pattern-icon() = yast-uml Provides: pattern-order() = 3080 Provides: pattern-visible() +%if 0%{?is_opensuse} Provides: patterns-openSUSE-xen_server = %{version} Obsoletes: patterns-openSUSE-xen_server < %{version} +%else +Provides: patterns-sles-xen_server = %{version} +Obsoletes: patterns-sles-xen_server < %{version} +%endif Requires: pattern() = basesystem -Recommends: bridge-utils -Recommends: vm-install -Recommends: xen -Recommends: xen-libs -Recommends: xen-tools -Recommends: virt-manager -Recommends: xen-doc-html -Recommends: xterm -Recommends: yast2-vm -Recommends: virt-viewer +Requires: kernel-xen +Requires: tftp +Requires: xen +Requires: xen-libs +Requires: xen-tools Recommends: libvirt-daemon-xen # #382423 -Suggests: install-initrd -Suggests: libvirt -Suggests: libvirt-daemon-lxc +Recommends: virt-install +Recommends: vm-install +Recommends: tigervnc %description xen_server Software to set up a server for configuring, managing, and monitoring virtual machines on a single physical machine. @@ -355,6 +434,55 @@ %files xen_server %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/xen_server.txt +%endif + +################################################################################ +# BSC#1088175 +%ifarch x86_64 +%package xen_tools +%pattern_basetechnologies +Summary: XEN Virtualization Host and tools +Group: Metapackages +Provides: pattern() = xen_tools +Provides: pattern-icon() = yast-uml +Provides: pattern-order() = 1080 +Provides: pattern-visible() +%if !0%{?is_opensuse} +Provides: patterns-sles-xen_tools = %{version} +Obsoletes: patterns-sles-xen_tools < %{version} +%endif +Requires: pattern() = basesystem +Requires: pattern() = xen_server + +Requires: libvirt-client +Requires: libvirt-daemon-xen +Requires: libvirt-daemon-config-network +Requires: tigervnc +Requires: vm-install +# bnc#868542 +Requires: virt-manager +Recommends: openssh +#Recommends: sles-xen_en-pdf +Recommends: xen-doc-html +Recommends: yast2-control-center +Recommends: yast2-ncurses +Recommends: yast2-ncurses-pkg +Recommends: yast2-vm +Recommends: xorg-x11-xauth +Recommends: virt-install +Recommends: virt-viewer +# BSC#1078908 +Recommends: vim + +%description xen_tools +This will provide all minimal system to get a running XEN Hypervisor +and be able to configure, manage, and monitor virtual machines on a +single physical machine. + +%files xen_tools +%dir /usr/share/doc/packages/patterns +/usr/share/doc/packages/patterns/xen_tools.txt +%endif ################################################################################ @@ -365,9 +493,30 @@ %install mkdir -p "%{buildroot}/usr/share/doc/packages/patterns" for i in dhcp_dns_server directory_server file_server gateway_server \ - kvm_server lamp_server mail_server print_server xen_server; do + lamp_server mail_server printing + do + echo "This file marks the pattern $i to be installed." \ + >"%{buildroot}/usr/share/doc/packages/patterns/$i.txt" + echo "This file marks the pattern $i-32bit to be installed." \ + >"%{buildroot}/usr/share/doc/packages/patterns/$i-32bit.txt" +done +# NO 32bits pattern for KVM or XEN +for i in kvm_tools kvm_server + do + echo "This file marks the pattern $i to be installed." \ + > "%{buildroot}/usr/share/doc/packages/patterns/$i.txt" +done +# XEN is only available on x86_64 +%ifarch x86_64 + for i in xen_server xen_tools; do echo "This file marks the pattern $i to be installed." \ >"%{buildroot}/usr/share/doc/packages/patterns/$i.txt" done +%endif + +# +# This file is created at check-in time. Sorry for the inconsistent workflow :( +# +%include %{SOURCE1} %changelog ++++++ create_32bit-patterns_file.pl ++++++ #!/usr/bin/perl use strict; use warnings; my $verbose = 0; my $pat_ext = "32bit"; my $product = ""; my @skip_pat = (); sub get_file { my $file_to_get = shift; my $content = ""; open FILE, "<$file_to_get" or return "\n"; while (defined (my $line = <FILE>)) { next if ($line =~ m/^#/); $content .= $line; } close FILE; return $content; } sub print_usage { print "$0 [-v] [-h]\n"; exit 0; } sub print_debug { my ($txt, $lvl) = @_; print (STDERR "DBG: ${txt}\n") if($verbose >= $lvl); } sub parse_line { my $to_parse = shift; my $tmp = ""; if ($to_parse =~ /%include/) { # TBD print "%include at unexpected position, exiting\n"; exit (1); } if ($to_parse =~ /Summary:/) { return "$to_parse\n"; } # XXX simplify me if ($to_parse =~ /Recommends:\s*([^\s]*)\s*/) { $tmp = "$1"; return "" if ($tmp =~ m/.*-64bit\s*$/); $tmp = "${tmp}-32bit" if($tmp !~ m/.*-32bit/); return "Recommends: ${tmp}\n"; } if ($to_parse =~ /Requires:\s*([^\s]*)\s*/) { $tmp = "$1"; return "" if ($tmp =~ m/pattern()/); return "" if ($tmp =~ m/.*-64bit\s*$/); $tmp = "${tmp}-32bit" if($tmp !~ m/.*-32bit/); return "Recommends: ${tmp}\n"; } return ""; } sub parse_main_file { my $main_file = shift; my $spec_file = ""; my $cur_pattern = ""; my $skip_it = 1; my %skip_pat_hash; if(! open (MAIN_FILE, "<$main_file")) { print STDERR "${main_file} not found, exiting\n"; exit 1; } while (defined (my $line = <MAIN_FILE>)) { chomp($line); next if ($line =~ m/^#/); if ($line =~ m/\%package/) { if(($line =~ m/32bit/) or ($line =~ m/64bit/) ) { $skip_it = 1; } else { %skip_pat_hash = map { $_ => 1 } @skip_pat; if($skip_it==0&&!exists($skip_pat_hash{$cur_pattern})) { $spec_file .= "" ."Provides: pattern() = ${cur_pattern}%2d32bit\n" ."Group: Metapackages\n" ."Supplements: packageand(patterns-${product}-${pat_ext}:patterns-${product}-${cur_pattern})\n" ."\n" ."%files ${cur_pattern}-32bit\n" ."%defattr(-,root,root)\n" ."%dir /usr/share/doc/packages/patterns\n" ."/usr/share/doc/packages/patterns/${cur_pattern}-${pat_ext}.txt\n" ."\n" ."%description ${cur_pattern}-${pat_ext}\n" ."The ${pat_ext} pattern complementing ${cur_pattern}.\n" ."#\n" ."#-------------------------------------------------------------------\n" ."#\n"; } $skip_it = 0 ; $line =~ m/package\s*([^\s]*)\s*/; $cur_pattern = $1; if (!exists($skip_pat_hash{$cur_pattern})) { $spec_file .= "%package ${cur_pattern}-32bit\n"; } } } next if($skip_it == 1 ); if ($line =~ /%include/) { my $file_to_check = ($line =~ m/%include.*?([^\/\s]*)$/)[0]; # beware the non-greedy '?' next if($file_to_check =~ m/32bit/); if( open TMP_FILE, "<$file_to_check") { print_debug(" Checking INCLUDE: $file_to_check", 2); while (defined (my $include_line = <TMP_FILE>)) { if (!exists($skip_pat_hash{$cur_pattern})) { $spec_file .= parse_line($include_line); } } close TMP_FILE; } next; } if (!exists($skip_pat_hash{$cur_pattern})) { $spec_file .= parse_line($line); } } %skip_pat_hash = map { $_ => 1 } @skip_pat; if (!exists($skip_pat_hash{$cur_pattern})) { # I hate this, but need a fast workaround $spec_file .= "Provides: pattern-invisible()\n" ."Provides: pattern() = ${cur_pattern}%2d${pat_ext}\n" ."Group: Metapackages\n" ."Supplements: packageand(patterns-${product}-${pat_ext}:patterns-${product}-${cur_pattern})\n" ."\n" ."%files ${cur_pattern}-32bit\n" ."%defattr(-,root,root)\n" ."%dir /usr/share/doc/packages/patterns\n" ."/usr/share/doc/packages/patterns/${cur_pattern}-${pat_ext}.txt\n" ."\n" ."%description ${cur_pattern}-${pat_ext}\n" ."The ${pat_ext} pattern complementing ${cur_pattern}.\n" ."\n"; } close MAIN_FILE; my $new_file = $spec_file; return $new_file; } while ($ARGV[0] && $ARGV[0] =~ /^-/) { my $arg = shift; if ($arg =~ /-v/) { $verbose += 1; } elsif($arg =~ /-h/) { print_usage(); exit(); } elsif($arg =~ /-p/) { $product=shift; } elsif($arg =~ /-e/) { $pat_ext=shift; } elsif($arg =~ /-s/) { push @skip_pat, shift; } } print_debug("product = ${product}\n pat_ext=${pat_ext}\n", 1); my $result = parse_main_file("patterns-${product}.spec"); print "${result}\n"; exit 0; ++++++ pattern-definition-32bit.txt ++++++ %package dhcp_dns_server-32bit Summary: DHCP and DNS Server Recommends: bind-32bit Recommends: dhcp-server-32bit Recommends: bind-chrootenv-32bit Recommends: bind-doc-32bit Recommends: dhcp-32bit Recommends: dhcp-relay-32bit Recommends: dhcp-tools-32bit Recommends: yast2-dhcp-server-32bit Recommends: yast2-dns-server-32bit Provides: pattern() = dhcp_dns_server%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-dhcp_dns_server) %files dhcp_dns_server-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/dhcp_dns_server-32bit.txt %description dhcp_dns_server-32bit The 32bit pattern complementing dhcp_dns_server. # #------------------------------------------------------------------- # %package directory_server-32bit Summary: Directory Server (LDAP) Recommends: 389-ds-32bit Recommends: nss_ldap-32bit Recommends: pam_ldap-32bit Recommends: yast2-ldap-server-32bit Provides: pattern() = directory_server%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-directory_server) %files directory_server-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/directory_server-32bit.txt %description directory_server-32bit The 32bit pattern complementing directory_server. # #------------------------------------------------------------------- # %package file_server-32bit Summary: File Server Recommends: nfs-kernel-server-32bit Recommends: nfsidmap-32bit Recommends: samba-32bit Recommends: samba-client-32bit Recommends: samba-winbind-32bit Recommends: tftp-32bit Recommends: vsftpd-32bit Recommends: yast2-ftp-server-32bit Recommends: yast2-nfs-server-32bit Recommends: yast2-samba-server-32bit Recommends: yast2-tftp-server-32bit Provides: pattern() = file_server%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-file_server) %files file_server-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/file_server-32bit.txt %description file_server-32bit The 32bit pattern complementing file_server. # #------------------------------------------------------------------- # %package gateway_server-32bit Summary: Internet Gateway Recommends: wireshark-32bit Recommends: arptables-32bit Recommends: calamaris-32bit Recommends: ddclient-32bit Recommends: fetchmail-32bit Recommends: fetchmailconf-32bit Recommends: ipsec-tools-32bit Recommends: quagga-32bit Recommends: radvd-32bit Recommends: rarpd-32bit Recommends: squid-32bit Recommends: whois-32bit Recommends: wondershaper-32bit Provides: pattern() = gateway_server%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-gateway_server) %files gateway_server-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/gateway_server-32bit.txt %description gateway_server-32bit The 32bit pattern complementing gateway_server. # #------------------------------------------------------------------- # %package lamp_server-32bit Summary: Web and LAMP Server Recommends: apache2-32bit Recommends: yast2-http-server-32bit Recommends: apache2-doc-32bit Recommends: apache2-example-pages-32bit Recommends: apache2-mod_php7-32bit Recommends: apache2-mod_python-32bit Recommends: apache2-prefork-32bit Recommends: libapr-util1-32bit Recommends: libapr1-32bit Recommends: mariadb-32bit Recommends: perl-32bit Provides: pattern() = lamp_server%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-lamp_server) %files lamp_server-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/lamp_server-32bit.txt %description lamp_server-32bit The 32bit pattern complementing lamp_server. # #------------------------------------------------------------------- # %package mail_server-32bit Summary: Mail and News Server Recommends: vacation-32bit Recommends: amavisd-new-32bit Recommends: clamav-32bit Recommends: cyrus-imapd-32bit Recommends: inn-32bit Recommends: mailman-32bit Recommends: spamassassin-32bit Provides: pattern() = mail_server%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-mail_server) %files mail_server-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/mail_server-32bit.txt %description mail_server-32bit The 32bit pattern complementing mail_server. # #------------------------------------------------------------------- # %package printing-32bit Summary: Print Server Recommends: cups-32bit Recommends: cups-backends-32bit Recommends: cups-filters-32bit Recommends: cups-filters-cups-browsed-32bit Recommends: cups-filters-foomatic-rip-32bit Recommends: cups-filters-ghostscript-32bit Recommends: epson-inkjet-printer-escpr-32bit Recommends: gutenprint-32bit Recommends: hplip-hpijs-32bit Recommends: manufacturer-PPDs-32bit Recommends: OpenPrintingPPDs-ghostscript-32bit Recommends: OpenPrintingPPDs-hpijs-32bit Recommends: OpenPrintingPPDs-postscript-32bit Recommends: samba-32bit Recommends: splix-32bit Provides: pattern() = printing%2d32bit Group: Metapackages Supplements: packageand(patterns-server-32bit:patterns-server-printing) %files printing-32bit %defattr(-,root,root) %dir /usr/share/doc/packages/patterns /usr/share/doc/packages/patterns/printing-32bit.txt %description printing-32bit The 32bit pattern complementing printing. # #------------------------------------------------------------------- # ++++++ pre_checkin.sh ++++++ #!/bin/sh ./create_32bit-patterns_file.pl -p server -s kvm_server -s kvm_tools -s xen_server -s xen_tools > pattern-definition-32bit.txt