From c0eef98b8daded298854461958af632230db5993d54660a09d05fa92c75d9b45 Mon Sep 17 00:00:00 2001 From: OBS User buildservice-autocommit Date: Thu, 22 Feb 2024 06:18:35 +0000 Subject: [PATCH 1/3] Updating link to change in openSUSE:Factory/patterns-server revision 17 OBS-URL: https://build.opensuse.org/package/show/system:install:head/patterns-server?expand=0&rev=6bc83c458ebbba231a9c643415cda08d --- .gitattributes | 23 ++ .gitignore | 1 + create_32bit-patterns_file.pl | 173 ++++++++++++ pattern-definition-32bit.txt | 183 +++++++++++++ patterns-server-rpmlintrc | 3 + patterns-server.changes | 192 +++++++++++++ patterns-server.spec | 489 ++++++++++++++++++++++++++++++++++ pre_checkin.sh | 3 + 8 files changed, 1067 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 create_32bit-patterns_file.pl create mode 100644 pattern-definition-32bit.txt create mode 100644 patterns-server-rpmlintrc create mode 100644 patterns-server.changes create mode 100644 patterns-server.spec create mode 100644 pre_checkin.sh diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/create_32bit-patterns_file.pl b/create_32bit-patterns_file.pl new file mode 100644 index 0000000..2a5e75a --- /dev/null +++ b/create_32bit-patterns_file.pl @@ -0,0 +1,173 @@ +#!/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 = )) { + 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 = )) { + 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 = )) { + 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; + diff --git a/pattern-definition-32bit.txt b/pattern-definition-32bit.txt new file mode 100644 index 0000000..c9f9331 --- /dev/null +++ b/pattern-definition-32bit.txt @@ -0,0 +1,183 @@ +%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. +# +#------------------------------------------------------------------- +# + diff --git a/patterns-server-rpmlintrc b/patterns-server-rpmlintrc new file mode 100644 index 0000000..459f6d4 --- /dev/null +++ b/patterns-server-rpmlintrc @@ -0,0 +1,3 @@ +addFilter("W: no-binary"); + + diff --git a/patterns-server.changes b/patterns-server.changes new file mode 100644 index 0000000..1cc73d9 --- /dev/null +++ b/patterns-server.changes @@ -0,0 +1,192 @@ +------------------------------------------------------------------- +Thu Feb 22 06:17:49 UTC 2024 - Dominique Leuenberger + +- Do not recommend mailman: pulls a 2nd python stack. + +------------------------------------------------------------------- +Tue Feb 6 14:17:51 UTC 2024 - Dario Faggioli + +- kvm_server pattern: + - stop Recommending tigervnc and virt-install as they're 100% + client tools. In fact, it is the kvm_tools pattern that does + Require them (leave them as Suggested, for now, just to leave + a record of them... but only temporarily). + +Note that this will result in a different behavior, wrt to the current +one. I.e., anyone installing _only_ the kvm_server pattern, will +not get those two packages automatically. + +------------------------------------------------------------------- +Wed Nov 29 15:28:43 UTC 2023 - Dario Faggioli + +- kvm_server pattern: + - require the basic libvirt modules and packages for a minimal + (but properly working) KVM host + - remove the direct dependency for qemu, as that now comes from + libvirt-daemon-driver-qemu + +This makes the kvm_server pattern a lot more useful, in contexts +where recommended packages are not installed by default. On the +other hand, everyone using it with recommended packages installation +enabled, will see no difference at all. + +------------------------------------------------------------------- +Thu May 4 20:57:18 UTC 2023 - James Fehlig + +- kvm and xen patterns: + - Remove Requires/Recommends on obsolete vm-install + - Change virt-install from Recommends to Requires in _tools + - Remove Requires on obsolete kernel-xen + +------------------------------------------------------------------- +Mon Feb 13 09:31:33 UTC 2023 - Dominique Leuenberger + +- Drop recommends on yast2-{dns,dhcp,http}-server: yast modules are + no longer maintained. + +------------------------------------------------------------------- +Wed Nov 30 12:15:19 UTC 2022 - pgajdos@suse.com + +- recommend apache2-mod_php8 instead of apache2-mod_php7 + +------------------------------------------------------------------- +Mon Sep 13 10:26:55 UTC 2021 - Dominique Leuenberger + +- Make wireshark recommended, not required. + +------------------------------------------------------------------- +Tue Mar 30 11:49:30 UTC 2021 - Stephan Kulow + +- Remove dhcp-tools from recommended - filed a delete request for + that package (17 years no maintenance and relying on tcpdump + output) + +------------------------------------------------------------------- +Wed Dec 9 18:03:04 UTC 2020 - Bruce Rogers + +- kvm-server for s390x: beginning with the v5.2.0 qemu package,the + s390x specific sub-package is named qemu-s390x, not qemu-s390. + Reference using the new name (boo#1177764 jsc#SLE-17060) + +------------------------------------------------------------------- +Wed Mar 25 13:14:43 UTC 2020 - Sergio Lindo Mansilla + +- Use new macro %arm64 instead of bare arch name +- Remove redundant arch armv7hl which is already included in %arm + +------------------------------------------------------------------- +Mon Mar 23 10:24:43 UTC 2020 - Antoine Ginies + +- fix reordering of pattern() + +------------------------------------------------------------------- +Thu Mar 12 08:13:47 UTC 2020 - Antoine Ginies + +- kvm-server for arm: fix missing qemu-ipxe packages and + improve arm detection (bsc#1158430) +- version 20200312 + +------------------------------------------------------------------- +Thu Dec 13 09:38:08 UTC 2018 - Dominique Leuenberger + +- Adjust icons to state of yast2-theme package + +------------------------------------------------------------------- +Thu Jul 19 12:07:25 UTC 2018 - sflees@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 - aginies@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 - behlert@suse.de + +- Replace openldap2 with 389-ds [bsc#1084789] + +------------------------------------------------------------------- +Fri Mar 2 13:48:06 UTC 2018 - aginies@suse.com + +- add vim as a Recommends for XEN/KVM_tools patterns (BSC#1078908) +- version: 20180302 + +------------------------------------------------------------------- +Thu Feb 15 08:09:57 UTC 2018 - dimstar@opensuse.org + +- Recommend php7 variants by the lamp pattern (boo#1081072). + +------------------------------------------------------------------- +Mon Dec 11 12:07:25 UTC 2017 - sflees@suse.de + +- fix the order of sourced files to match other patterns saving copy paste errors + +------------------------------------------------------------------- +Mon Dec 11 11:25:39 UTC 2017 - sflees@suse.de + +- correctly source the files for 32bit patterns + +------------------------------------------------------------------- +Fri Dec 8 06:59:55 UTC 2017 - sflees@suse.de + +- Version: 20171206 +- Add obsoletes across all patterns (bsc#1071761) + +------------------------------------------------------------------- +Thu Nov 2 15:29:14 UTC 2017 - aginies@suse.com + +- remove duplicate description entry for kvm_tools patterns (BSC#1064239) +- bump version to 20171102 + +------------------------------------------------------------------- +Mon Oct 16 08:16:17 UTC 2017 - aginies@suse.com + +- add a requires on libvirt-client (bsc#1063246) + +------------------------------------------------------------------- +Wed Oct 11 14:40:32 UTC 2017 - aginies@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 - aginies@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 - sflees@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 + + +------------------------------------------------------------------- +Tue May 23 11:19:08 UTC 2017 - dimstar@opensuse.org + +- Fix spelling: e-mail -> email (boo#1040006). + +------------------------------------------------------------------- +Fri Apr 28 16:03:43 UTC 2017 - jengelh@inai.de + +- Compact %install routine; replace old RPM shell vars by macros. + +------------------------------------------------------------------- +Thu Mar 16 06:15:40 UTC 2017 - sflees@suse.de + +- Create new package from old unified patterns package diff --git a/patterns-server.spec b/patterns-server.spec new file mode 100644 index 0000000..5849fac --- /dev/null +++ b/patterns-server.spec @@ -0,0 +1,489 @@ +# +# spec file for package patterns-server +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%bcond_with betatest +Name: patterns-server +Version: 20210330 +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 +BuildRequires: patterns-rpm-macros + +%description +This is an internal package that is used to create the patterns as part +of the installation source setup. Installation of this package does +not make sense. + +This particular package contains all the server related patterns + + +################################################################################ + +%package dhcp_dns_server +%pattern_serverfunctions +Summary: DHCP and DNS Server +Group: Metapackages +Provides: pattern() = dhcp_dns_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 3040 +Provides: pattern-visible() +Requires: bind +Requires: dhcp-server +Requires: pattern() = basesystem +Recommends: bind-chrootenv +Recommends: bind-doc +Recommends: dhcp +Recommends: dhcp-relay +%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 + +%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. + +%files dhcp_dns_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/dhcp_dns_server.txt + +################################################################################ + +%package directory_server +%pattern_serverfunctions +Summary: Directory Server (LDAP) +Group: Metapackages +Provides: pattern() = directory_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 3060 +Provides: pattern-visible() +Requires: pattern() = basesystem +# bsc#1084789 +Recommends: 389-ds +Recommends: nss_ldap +Recommends: pam_ldap +Recommends: yast2-ldap-server +%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 + +%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. + +%files directory_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/directory_server.txt + +################################################################################ + +%package file_server +%pattern_serverfunctions +Summary: File Server +Group: Metapackages +Provides: pattern() = file_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 2900 +Provides: pattern-visible() +Requires: nfs-kernel-server +Requires: pattern() = basesystem +Recommends: nfsidmap +Recommends: samba +Recommends: samba-client +Recommends: samba-winbind +Recommends: tftp +Recommends: vsftpd +%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 +%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. + +%files file_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/file_server.txt + +################################################################################ + +%package gateway_server +%pattern_serverfunctions +Summary: Internet Gateway +Group: Metapackages +Provides: pattern() = gateway_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 3020 +Provides: pattern-visible() +Requires: pattern() = basesystem +Recommends: arptables +Recommends: calamaris +Recommends: ddclient +Recommends: fetchmail +Recommends: fetchmailconf +Recommends: ipsec-tools +Recommends: quagga +Recommends: radvd +Recommends: rarpd +Recommends: squid +Recommends: whois +Recommends: wireshark +Recommends: wondershaper +%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 + +%description gateway_server +Software to set up a proxy, firewall, and gateway server, including a virtual private network (VPN) gateway. + +%files gateway_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/gateway_server.txt + +################################################################################ + +%package kvm_server +%pattern_serverfunctions +Summary: KVM Host Server +Group: Metapackages +Provides: pattern() = kvm_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 3099 +Provides: pattern-visible() +Requires: libvirt-daemon-config-network +Requires: libvirt-daemon-driver-network +Requires: libvirt-daemon-driver-qemu +Requires: libvirt-daemon-driver-storage-core +Requires: tftp +Requires: pattern() = basesystem +Recommends: libvirt-daemon-qemu +%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 +Suggests: tigervnc +Suggests: virt-install + +%description kvm_server +Software to set up a server for configuring, managing, and monitoring virtual machines on a single physical machine. + +%files kvm_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/kvm_server.txt + +################################################################################ + +%package kvm_tools +%pattern_basetechnologies +Summary: KVM Virtualization Host and tools +Group: Metapackages +Provides: pattern() = kvm_tools +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 1090 +Provides: pattern-visible() +Requires: libvirt-client +Requires: libvirt-daemon-config-network +Requires: libvirt-daemon-qemu +Requires: tigervnc +Requires: pattern() = basesystem +Requires: pattern() = kvm_server +# bnc#868542 +Requires: virt-manager +Requires: virt-install +Recommends: openssh +# BSC#1078908 +Recommends: vim +Recommends: virt-v2v +Recommends: virt-viewer +Recommends: xorg-x11-xauth +Recommends: yast2-control-center +Recommends: yast2-ncurses +Recommends: yast2-ncurses-pkg +Recommends: yast2-vm +%if !0%{?is_opensuse} +Provides: patterns-sles-kvm_tools = %{version} +Obsoletes: patterns-sles-kvm_tools < %{version} +%endif + +%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 %{_docdir}/patterns +%{_docdir}/patterns/kvm_tools.txt + +################################################################################ + +%package lamp_server +%pattern_serverfunctions +Summary: Web and LAMP Server +Group: Metapackages +Provides: pattern() = lamp_server +Provides: pattern-icon() = pattern-web-devel +Provides: pattern-order() = 3000 +Provides: pattern-visible() +Requires: apache2 +Requires: pattern() = basesystem +Recommends: apache2-doc +Recommends: apache2-example-pages +Recommends: apache2-mod_php8 +Recommends: apache2-mod_python +Recommends: apache2-prefork +Recommends: libapr-util1 +Recommends: libapr1 +Recommends: mariadb +Recommends: perl +%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 + +%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. + +%files lamp_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/lamp_server.txt + +################################################################################ + +%package mail_server +%pattern_serverfunctions +Summary: Mail and News Server +Group: Metapackages +Provides: pattern() = mail_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 2980 +Provides: pattern-visible() +Requires: vacation +Requires: pattern() = basesystem +Recommends: amavisd-new +Recommends: clamav +Recommends: cyrus-imapd +Recommends: inn +Recommends: spamassassin +%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 + +%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. + +%files mail_server +%dir %{_docdir}/patterns +%{_docdir}/patterns/mail_server.txt + +################################################################################ + +%package printing +%pattern_serverfunctions +Summary: Print Server +Group: Metapackages +Provides: pattern() = print_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 2960 +Provides: pattern-visible() +Requires: cups +Requires: pattern() = basesystem +Recommends: OpenPrintingPPDs-ghostscript +Recommends: OpenPrintingPPDs-hpijs +Recommends: OpenPrintingPPDs-postscript +Recommends: cups-backends +Recommends: cups-filters +Recommends: cups-filters-cups-browsed +Recommends: cups-filters-foomatic-rip +Recommends: cups-filters-ghostscript +Recommends: epson-inkjet-printer-escpr +Recommends: gutenprint +Recommends: hplip-hpijs +Recommends: manufacturer-PPDs +Recommends: samba +Recommends: splix +%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 + +%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 printing +%dir %{_docdir}/patterns +%{_docdir}/patterns/printing.txt + +################################################################################ + +# BSC#1088175 +%ifarch x86_64 +%package xen_server +%pattern_serverfunctions +Summary: Xen Virtual Machine Host Server +Group: Metapackages +Provides: pattern() = xen_server +Provides: pattern-icon() = pattern-server +Provides: pattern-order() = 3080 +Provides: pattern-visible() +Requires: tftp +Requires: xen +Requires: xen-libs +Requires: xen-tools +Requires: pattern() = basesystem +Recommends: libvirt-daemon-xen +Recommends: tigervnc +# #382423 +Recommends: virt-install +%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 + +%description xen_server +Software to set up a server for configuring, managing, and monitoring virtual machines on a single physical machine. + +%files xen_server +%dir %{_docdir}/patterns +%{_docdir}/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() = pattern-server +Provides: pattern-order() = 1080 +Provides: pattern-visible() +Requires: libvirt-client +Requires: libvirt-daemon-config-network +Requires: libvirt-daemon-xen +Requires: tigervnc +Requires: pattern() = basesystem +Requires: pattern() = xen_server +# bnc#868542 +Requires: virt-manager +Requires: virt-install +Recommends: openssh +# BSC#1078908 +Recommends: vim +Recommends: virt-viewer +#Recommends: sles-xen_en-pdf +Recommends: xen-doc-html +Recommends: xorg-x11-xauth +Recommends: yast2-control-center +Recommends: yast2-ncurses +Recommends: yast2-ncurses-pkg +Recommends: yast2-vm +%if !0%{?is_opensuse} +Provides: patterns-sles-xen_tools = %{version} +Obsoletes: patterns-sles-xen_tools < %{version} +%endif + +%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 %{_docdir}/patterns +%{_docdir}/patterns/xen_tools.txt +%endif + +################################################################################ + +%prep + +%build + +%install +mkdir -p "%{buildroot}%{_docdir}/patterns" +for i in dhcp_dns_server directory_server file_server gateway_server \ + lamp_server mail_server printing + do + echo "This file marks the pattern $i to be installed." \ + >"%{buildroot}%{_docdir}/patterns/$i.txt" + echo "This file marks the pattern $i-32bit to be installed." \ + >"%{buildroot}%{_docdir}/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}%{_docdir}/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}%{_docdir}/patterns/$i.txt" +done +%endif + +# +# This file is created at check-in time. Sorry for the inconsistent workflow :( +# +%include %{SOURCE1} + +%changelog diff --git a/pre_checkin.sh b/pre_checkin.sh new file mode 100644 index 0000000..68558ec --- /dev/null +++ b/pre_checkin.sh @@ -0,0 +1,3 @@ +#!/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 From 88a43daf79c0a807bf1609bd70e2ca730a815f73a30d3fb601dcab97478a06eb Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Tue, 25 Feb 2025 09:06:42 +0000 Subject: [PATCH 2/3] - Adapt patterns for SLES 16.0. OBS-URL: https://build.opensuse.org/package/show/system:install:head/patterns-server?expand=0&rev=36 --- patterns-server.changes | 5 +++++ patterns-server.spec | 41 +++++++++++++++++++++++++++++------------ 2 files changed, 34 insertions(+), 12 deletions(-) diff --git a/patterns-server.changes b/patterns-server.changes index 1cc73d9..046d8ca 100644 --- a/patterns-server.changes +++ b/patterns-server.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Dec 11 09:35:45 UTC 2024 - Frederic Crozat + +- Adapt patterns for SLES 16.0. + ------------------------------------------------------------------- Thu Feb 22 06:17:49 UTC 2024 - Dominique Leuenberger diff --git a/patterns-server.spec b/patterns-server.spec index 5849fac..7861936 100644 --- a/patterns-server.spec +++ b/patterns-server.spec @@ -1,7 +1,7 @@ # # spec file for package patterns-server # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2025 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %bcond_with betatest Name: patterns-server -Version: 20210330 +Version: 20250225 Release: 0 Summary: Patterns for Installation (server patterns) License: MIT @@ -38,8 +38,8 @@ not make sense. This particular package contains all the server related patterns -################################################################################ +################################################################################ %package dhcp_dns_server %pattern_serverfunctions Summary: DHCP and DNS Server @@ -49,12 +49,20 @@ Provides: pattern-icon() = pattern-server Provides: pattern-order() = 3040 Provides: pattern-visible() Requires: bind +%if 0%{?is_opensuse} Requires: dhcp-server +%else +Requires: kea +%endif Requires: pattern() = basesystem Recommends: bind-chrootenv Recommends: bind-doc +%if 0%{?is_opensuse} Recommends: dhcp Recommends: dhcp-relay +%else +Recommends: kea-hooks +%endif %if 0%{?is_opensuse} Provides: patterns-openSUSE-dhcp_dns_server = %{version} Obsoletes: patterns-openSUSE-dhcp_dns_server < %{version} @@ -80,13 +88,12 @@ Provides: pattern() = directory_server Provides: pattern-icon() = pattern-server Provides: pattern-order() = 3060 Provides: pattern-visible() +Requires: 389-ds Requires: pattern() = basesystem -# bsc#1084789 -Recommends: 389-ds -Recommends: nss_ldap -Recommends: pam_ldap -Recommends: yast2-ldap-server +Recommends: sssd +Recommends: sssd-ldap %if 0%{?is_opensuse} +Recommends: yast2-ldap-server Provides: patterns-openSUSE-directory_server = %{version} Obsoletes: patterns-openSUSE-directory_server < %{version} %else @@ -95,7 +102,7 @@ Obsoletes: patterns-sles-directory_server < %{version} %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. +Software to set up a directory server with 389-DS. The Lightweight Directory Access Protocol (LDAP) is used to access online directory services. %files directory_server %dir %{_docdir}/patterns @@ -152,18 +159,27 @@ Provides: pattern-icon() = pattern-server Provides: pattern-order() = 3020 Provides: pattern-visible() Requires: pattern() = basesystem +%if !0%{?is_opensuse} +Requires: wireshark +%endif Recommends: arptables Recommends: calamaris Recommends: ddclient Recommends: fetchmail Recommends: fetchmailconf Recommends: ipsec-tools +%if 0%{?is_opensuse} Recommends: quagga +%else +Recommends: frr +%endif Recommends: radvd Recommends: rarpd Recommends: squid Recommends: whois +%if !0%{?is_opensuse} Recommends: wireshark +%endif Recommends: wondershaper %if 0%{?is_opensuse} Provides: patterns-openSUSE-gateway_server = %{version} @@ -369,7 +385,7 @@ remote print server and for setting up a print server. %{_docdir}/patterns/printing.txt ################################################################################ - +%if 0%{?is_opensuse} # BSC#1088175 %ifarch x86_64 %package xen_server @@ -450,7 +466,7 @@ single physical machine. %dir %{_docdir}/patterns %{_docdir}/patterns/xen_tools.txt %endif - +%endif ################################################################################ %prep @@ -473,6 +489,7 @@ for i in kvm_tools kvm_server echo "This file marks the pattern $i to be installed." \ > "%{buildroot}%{_docdir}/patterns/$i.txt" done +%if 0%{?is_opensuse} # XEN is only available on x86_64 %ifarch x86_64 for i in xen_server xen_tools; do @@ -480,7 +497,7 @@ done >"%{buildroot}%{_docdir}/patterns/$i.txt" done %endif - +%endif # # This file is created at check-in time. Sorry for the inconsistent workflow :( # From 0f93c287b705ae591ffacd241c36dc60aefb0f0a0f8dc302335f0ba539c794ba Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Tue, 25 Feb 2025 11:09:41 +0000 Subject: [PATCH 3/3] - Do not require 389-ds on %ix86: it's not built for 32bit intel arch. OBS-URL: https://build.opensuse.org/package/show/system:install:head/patterns-server?expand=0&rev=37 --- patterns-server.changes | 6 ++++++ patterns-server.spec | 2 ++ 2 files changed, 8 insertions(+) diff --git a/patterns-server.changes b/patterns-server.changes index 046d8ca..d4d0ec5 100644 --- a/patterns-server.changes +++ b/patterns-server.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Feb 25 11:09:14 UTC 2025 - Dominique Leuenberger + +- Do not require 389-ds on %ix86: it's not built for 32bit intel + arch. + ------------------------------------------------------------------- Wed Dec 11 09:35:45 UTC 2024 - Frederic Crozat diff --git a/patterns-server.spec b/patterns-server.spec index 7861936..3f8441c 100644 --- a/patterns-server.spec +++ b/patterns-server.spec @@ -88,7 +88,9 @@ Provides: pattern() = directory_server Provides: pattern-icon() = pattern-server Provides: pattern-order() = 3060 Provides: pattern-visible() +%ifnarch %ix86 Requires: 389-ds +%endif Requires: pattern() = basesystem Recommends: sssd Recommends: sssd-ldap