Difference between revisions of "Rocky9 as a build system"
From SME Server
Jump to navigationJump to search(8 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
− | + | This page has not been kept up to date, better to use : [[Setting up RPM Building for SME Server on rocky 8]] | |
− | |||
− | 2. Extras needed: git, | + | |
+ | Instructions for using Rocky9 as an SMEServer build system - using git and mock to build rpm. | ||
+ | |||
+ | 1. Minimal Rocky install - 2Gb RAM, 32Gb HD | ||
+ | |||
+ | 2. Extras needed: git, rpm-build, epel-release, mock, make (and I use mc). | ||
3. Add user to mock group "sudo usermod -a -G mock <username>" | 3. Add user to mock group "sudo usermod -a -G mock <username>" | ||
− | 4. Add "smeserver-10-x86_64-base.cfg" to /etc/mock:<syntaxhighlight> | + | 4. Add "smeserver-10-x86_64-base.cfg" to /etc/mock with the following:<syntaxhighlight> |
+ | |||
config_opts['package_manager'] = 'yum' | config_opts['package_manager'] = 'yum' | ||
config_opts['use_nspawn'] = False | config_opts['use_nspawn'] = False | ||
+ | |||
+ | # see bugs https://bugzilla.redhat.com/show_bug.cgi?id=2076847 and https://bugzilla.redhat.com/show_bug.cgi?id=2076847 | ||
+ | config_opts['plugin_conf']["copy_enable"] = True | ||
+ | config_opts['plugin_conf']['copy_opts']= { | ||
+ | 'files': [ ("/etc/mock/perl.prov", "/usr/lib/rpm/redhat/perl.prov"), | ||
+ | ("/etc/mock/perl.prov", "/usr/lib/rpm/perl.prov"), | ||
+ | ], | ||
+ | } | ||
config_opts['root'] = 'smeserver-10-x86_64' | config_opts['root'] = 'smeserver-10-x86_64' | ||
Line 46: | Line 59: | ||
exclude=buildsys-macros | exclude=buildsys-macros | ||
+ | [smeos] | ||
+ | name=smeos | ||
+ | baseurl=http://buildsys.koozali.org/build/10/smeos/x86_64 | ||
+ | exclude=buildsys-macros | ||
+ | |||
+ | [smeupdates] | ||
+ | name=smeupdates | ||
+ | baseurl=http://buildsys.koozali.org/build/10/smeupdates/x86_64 | ||
+ | exclude=buildsys-macros | ||
+ | |||
[fastrack] | [fastrack] | ||
name=fastrack | name=fastrack | ||
Line 69: | Line 92: | ||
baseurl=http://download.fedoraproject.org/pub/epel/7/x86_64 | baseurl=http://download.fedoraproject.org/pub/epel/7/x86_64 | ||
#baseurl=http://buildsys.koozali.org/build/7/epel/x86_64 | #baseurl=http://buildsys.koozali.org/build/7/epel/x86_64 | ||
− | includepkgs=ccache mhash* perl-Taint-Util libdb4 libdb4-devel php-channel-horde php-horde-* perl-Class-Method-Modifiers perl-Class-XSAccessor perl-Devel-GlobalDestruction perl-Sub-Name perl-indirect perl-B-Hooks-OP-Check perl-ExtUtils-Depends perl-Lexical-SealRequireHints perl-Params-Classify perl-Dist-CheckConflicts perl-Math-Int64 perl-Sort-Naturally perl-Sub-Exporter | + | includepkgs=ccache mhash* perl-Taint-Util libdb4 libdb4-devel php-channel-horde php-horde-* perl-Class-Method-Modifiers perl-Class-XSAccessor perl-Devel-GlobalDestruction perl-Sub-Name perl-indirect perl-B-Hooks-OP-Check perl-ExtUtils-Depends perl-Lexical-SealRequireHints perl-Params-Classify perl-Dist-CheckConflicts perl-Math-Int64 perl-Sort-Naturally perl-Sub-Exporter* perl-Bytes-Random-Secure perl-Crypt-Random-TESHA2 perl-Crypt-Random-Seed perl-Math-Random-ISAAC kmodtool libmaxminddb-devel libmaxminddb perl-Module-Build-Tiny perl-Mojolicious perl-Net-CIDR-Lite mod_perl mod_perl-devel perl-Apache-Test pyzor perl-Linux-Pid perl-BSD-Resource perl-dev perl-ExtUtils-MakeMaker perl-Data-Dumper perl-Razor-Agent perl-generators* perl-Net-Patricia meson libidn2* ninja-build python36-Cython epel-rpm-macros lua-srpm-macros libnetfilter_log* courier-unicode* perl-Path-Class perl-String-Random perl-Test-Class perl-Test-Mojo perl-MRO-Compat perl-Class-Accessor libebml* libmatroska* pugixml* spdlog* multilib-rpm-config cmake3* libuv libzstd rhash fmt* google-benchmark* libnet10-* perl-Crypt-GPG gnupg1 perl-Lingua-Stem-Snowball* perl-Lingua-StopWords perl-rpm-build-perl* perl-Class-Virtual perl-Carp-Assert pyPdf python2-apipkg python2-bottle python2-dateutil python2-docutils python-gevent python2-simplejson python-sqlite3dbm python2-future python2-attrs python2-packaging python2-certifi perl-Email-MIME perl-Email-Simple perl-Net-IP perl-Net-SMTPS perl-Throwable perl-Sub-Override perl-Moose perl-Email-Abstract perl-Eval-Closure perl-Email-Date-Format perl-Devel-PartialDump perl-namespace-clean perl-B-Hooks-EndOfScope perl-Variable-Magic latexmk python3-sphinx* python36-sphinx* python36-pygments python36-jinja2 python36-docutils python36-markupsafe clamav* perl-TAP-Harness-Env rust ghc-* rust-* llvm13-libs pandoc golang* perl-Net-LibIDN* perl-Net-Patricia re2c perl-Data-Validate-IP perl-Clone-PP |
+ | |||
+ | [openfusion] | ||
+ | name=openfusion | ||
+ | baseurl=http://repo.openfusion.net/centos7-x86_64 | ||
+ | includepkgs=perl-Lingua* perl-Snowball* perl-Text-German perl-ExtUtils* perl-MooX* perl-Scalar-List-Utils perl-Throwable perl-Moose perl-Try-Tiny perl-Devel-StackTrace perl-Devel-OverloadInfo perl-Sub-Name perl-Module-Runtime-Conflicts perl-Test-File-ShareDir perl-Test-Exception perl-Test-Output perl-Net-IDN-Encode perl-Path-Tiny perl-Class-Tiny perl-Unicode-UTF8 perl-Net-Server perl-Email-Address-XS perl-MaxMind-* perl-Geo-IP perl-IP-Country-DB_File perl-IP-Country perl-Math-Int128 perl-Data-IEEE754 perl-namespace-autoclean perl-Net-Works perl-List-AllUtils perl-Data-Printer perl-IP-Country perl-Sub-Identify perl-Test-Warnings perl-Hash-FieldHash perl-Data-Dumper-Concise perl-Encode-Detect | ||
− | |||
− | |||
− | |||
− | |||
− | |||
[rpmfusion] | [rpmfusion] | ||
name=rpmfusion | name=rpmfusion | ||
baseurl=http://download1.rpmfusion.org/free/el/updates/7/x86_64 | baseurl=http://download1.rpmfusion.org/free/el/updates/7/x86_64 | ||
− | includepkgs=ffmpeg* libva* x264-libs xvidcore librtmp | + | includepkgs=ffmpeg* libva* x264-libs xvidcore librtmp buildsys-build-rpmfusion-* libmpeg2* mpeg2dec |
[sclo-sclo] | [sclo-sclo] | ||
Line 89: | Line 112: | ||
name=sclo-rh | name=sclo-rh | ||
baseurl=http://mirror.centos.org/centos/7/sclo/x86_64/rh | baseurl=http://mirror.centos.org/centos/7/sclo/x86_64/rh | ||
− | includepkgs=python27* python33* rh-mongodb26* rh-mongodb32* rh-mongodb34* nodejs010* rh-nodejs6* | + | includepkgs=python27* python33* rh-mongodb26* rh-mongodb32* rh-mongodb34* nodejs010* rh-nodejs6* devtoolset-* |
[buildsys-core] | [buildsys-core] | ||
name=buildsys-core | name=buildsys-core | ||
baseurl=http://buildsys.koozali.org/build/10/smeserver-core/x86_64 | baseurl=http://buildsys.koozali.org/build/10/smeserver-core/x86_64 | ||
− | includepkgs=bglibs buildsys-macros cvm* dietlibc* e-smith-devtools perl-Test-Inline perl-IO-Socket-IP perl-Geography-Countries perl-Object-Persistence perl-bareword-filehandles perl-multidimensional perl-strictures perl-Module-Runtime perl-Role-Tiny perl-Sub-Quote perl-Bytes-Random-Secure | + | includepkgs=bglibs buildsys-macros cvm* dietlibc* e-smith-devtools perl-Test-Inline perl-IO-Socket-IP perl-Geography-Countries perl-Object-Persistence perl-bareword-filehandles perl-multidimensional perl-strictures perl-Module-Runtime perl-Role-Tiny perl-Sub-Quote perl-Bytes-Random-Secure perl-Net-Ident perl-generators DCC python3-lxml libnetfilter_acct* qmail perl-Net-IMAP-Simple perl-Regexp-Common perl-Email-Sender perl-Moo perl-Mail-DMARC |
[buildsys-contribs] | [buildsys-contribs] | ||
Line 107: | Line 130: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | 5 Execute the following command string. | ||
+ | cd ~; mkdir GitFiles; cd GitFiles; git clone https://src.koozali.org/brianr/smeserver-mailstats.git; cd smeserver-mailstats/; make mockbuild |
Latest revision as of 06:48, 22 August 2023
This page has not been kept up to date, better to use : Setting up RPM Building for SME Server on rocky 8
Instructions for using Rocky9 as an SMEServer build system - using git and mock to build rpm.
1. Minimal Rocky install - 2Gb RAM, 32Gb HD
2. Extras needed: git, rpm-build, epel-release, mock, make (and I use mc).
3. Add user to mock group "sudo usermod -a -G mock <username>"
4. Add "smeserver-10-x86_64-base.cfg" to /etc/mock with the following:
config_opts['package_manager'] = 'yum'
config_opts['use_nspawn'] = False
# see bugs https://bugzilla.redhat.com/show_bug.cgi?id=2076847 and https://bugzilla.redhat.com/show_bug.cgi?id=2076847
config_opts['plugin_conf']["copy_enable"] = True
config_opts['plugin_conf']['copy_opts']= {
'files': [ ("/etc/mock/perl.prov", "/usr/lib/rpm/redhat/perl.prov"),
("/etc/mock/perl.prov", "/usr/lib/rpm/perl.prov"),
],
}
config_opts['root'] = 'smeserver-10-x86_64'
config_opts['target_arch'] = 'x86_64'
config_opts['dist'] = '.el7.sme'
config_opts['chroot_setup_cmd'] = ' install @buildsys-build @buildsys scl-utils-build python27-build '
config_opts['plugin_conf']['ccache_opts']['dir'] = "%(cache_topdir)s/ccache/x86_64/"
config_opts['macros']['%distribution'] = "SME Server v10"
config_opts['macros']['%packager'] = "Koozali.org <http://www.koozali.org>"
config_opts['macros']['%vendor'] = "Koozali.org <http://www.koozali.org>"
config_opts['macros']['%dist'] = ".el7.sme"
config_opts['yum.conf'] = """
[main]
cachedir=/var/cache/yum
debuglevel=4
logfile=/var/log/yum.log
reposdir=/dev/null
retries=20
obsoletes=1
gpgcheck=0
assumeyes=1
syslog_ident=mock
syslog_device=
[os]
name=os
baseurl=http://buildsys.koozali.org/build/7/os/x86_64
exclude=buildsys-macros
[updates]
name=updates
baseurl=http://buildsys.koozali.org/build/7/updates/x86_64
exclude=buildsys-macros
[smeos]
name=smeos
baseurl=http://buildsys.koozali.org/build/10/smeos/x86_64
exclude=buildsys-macros
[smeupdates]
name=smeupdates
baseurl=http://buildsys.koozali.org/build/10/smeupdates/x86_64
exclude=buildsys-macros
[fastrack]
name=fastrack
baseurl=http://buildsys.koozali.org/build/7/fastrack/x86_64
# centos cr
[opt1]
name=opt1
baseurl=http://buildsys.koozali.org/build/7/opt1/x86_64
# centos extra
[opt2]
name=opt2
baseurl=http://buildsys.koozali.org/build/7/opt2/x86_64
# Not used
[opt3]
name=opt3
baseurl=http://buildsys.koozali.org/build/7/opt3/x86_64
[epel]
name=epel
baseurl=http://download.fedoraproject.org/pub/epel/7/x86_64
#baseurl=http://buildsys.koozali.org/build/7/epel/x86_64
includepkgs=ccache mhash* perl-Taint-Util libdb4 libdb4-devel php-channel-horde php-horde-* perl-Class-Method-Modifiers perl-Class-XSAccessor perl-Devel-GlobalDestruction perl-Sub-Name perl-indirect perl-B-Hooks-OP-Check perl-ExtUtils-Depends perl-Lexical-SealRequireHints perl-Params-Classify perl-Dist-CheckConflicts perl-Math-Int64 perl-Sort-Naturally perl-Sub-Exporter* perl-Bytes-Random-Secure perl-Crypt-Random-TESHA2 perl-Crypt-Random-Seed perl-Math-Random-ISAAC kmodtool libmaxminddb-devel libmaxminddb perl-Module-Build-Tiny perl-Mojolicious perl-Net-CIDR-Lite mod_perl mod_perl-devel perl-Apache-Test pyzor perl-Linux-Pid perl-BSD-Resource perl-dev perl-ExtUtils-MakeMaker perl-Data-Dumper perl-Razor-Agent perl-generators* perl-Net-Patricia meson libidn2* ninja-build python36-Cython epel-rpm-macros lua-srpm-macros libnetfilter_log* courier-unicode* perl-Path-Class perl-String-Random perl-Test-Class perl-Test-Mojo perl-MRO-Compat perl-Class-Accessor libebml* libmatroska* pugixml* spdlog* multilib-rpm-config cmake3* libuv libzstd rhash fmt* google-benchmark* libnet10-* perl-Crypt-GPG gnupg1 perl-Lingua-Stem-Snowball* perl-Lingua-StopWords perl-rpm-build-perl* perl-Class-Virtual perl-Carp-Assert pyPdf python2-apipkg python2-bottle python2-dateutil python2-docutils python-gevent python2-simplejson python-sqlite3dbm python2-future python2-attrs python2-packaging python2-certifi perl-Email-MIME perl-Email-Simple perl-Net-IP perl-Net-SMTPS perl-Throwable perl-Sub-Override perl-Moose perl-Email-Abstract perl-Eval-Closure perl-Email-Date-Format perl-Devel-PartialDump perl-namespace-clean perl-B-Hooks-EndOfScope perl-Variable-Magic latexmk python3-sphinx* python36-sphinx* python36-pygments python36-jinja2 python36-docutils python36-markupsafe clamav* perl-TAP-Harness-Env rust ghc-* rust-* llvm13-libs pandoc golang* perl-Net-LibIDN* perl-Net-Patricia re2c perl-Data-Validate-IP perl-Clone-PP
[openfusion]
name=openfusion
baseurl=http://repo.openfusion.net/centos7-x86_64
includepkgs=perl-Lingua* perl-Snowball* perl-Text-German perl-ExtUtils* perl-MooX* perl-Scalar-List-Utils perl-Throwable perl-Moose perl-Try-Tiny perl-Devel-StackTrace perl-Devel-OverloadInfo perl-Sub-Name perl-Module-Runtime-Conflicts perl-Test-File-ShareDir perl-Test-Exception perl-Test-Output perl-Net-IDN-Encode perl-Path-Tiny perl-Class-Tiny perl-Unicode-UTF8 perl-Net-Server perl-Email-Address-XS perl-MaxMind-* perl-Geo-IP perl-IP-Country-DB_File perl-IP-Country perl-Math-Int128 perl-Data-IEEE754 perl-namespace-autoclean perl-Net-Works perl-List-AllUtils perl-Data-Printer perl-IP-Country perl-Sub-Identify perl-Test-Warnings perl-Hash-FieldHash perl-Data-Dumper-Concise perl-Encode-Detect
[rpmfusion]
name=rpmfusion
baseurl=http://download1.rpmfusion.org/free/el/updates/7/x86_64
includepkgs=ffmpeg* libva* x264-libs xvidcore librtmp buildsys-build-rpmfusion-* libmpeg2* mpeg2dec
[sclo-sclo]
name=sclo-sclo
baseurl=http://mirror.centos.org/centos/7/sclo/x86_64/sclo
includepkgs=python27*
[sclo-rh]
name=sclo-rh
baseurl=http://mirror.centos.org/centos/7/sclo/x86_64/rh
includepkgs=python27* python33* rh-mongodb26* rh-mongodb32* rh-mongodb34* nodejs010* rh-nodejs6* devtoolset-*
[buildsys-core]
name=buildsys-core
baseurl=http://buildsys.koozali.org/build/10/smeserver-core/x86_64
includepkgs=bglibs buildsys-macros cvm* dietlibc* e-smith-devtools perl-Test-Inline perl-IO-Socket-IP perl-Geography-Countries perl-Object-Persistence perl-bareword-filehandles perl-multidimensional perl-strictures perl-Module-Runtime perl-Role-Tiny perl-Sub-Quote perl-Bytes-Random-Secure perl-Net-Ident perl-generators DCC python3-lxml libnetfilter_acct* qmail perl-Net-IMAP-Simple perl-Regexp-Common perl-Email-Sender perl-Moo perl-Mail-DMARC
[buildsys-contribs]
name=buildsys-contribs
baseurl=http://buildsys.koozali.org/build/10/smeserver-contribs/x86_64
includepkgs=libevent2* perl-Ezmlm perl-Crypt-GPG perl-IPC-Run libevhtp* libsearpc* ccnet* libccnet* libzdb* libccnet* evhtp* sqlite* ocaml camlp5 python27-python-versiontools libarchive*
[groups]
name=groups
baseurl=http://buildsys.koozali.org/build/10/smeserver-groups/x86_64
"""
5 Execute the following command string.
cd ~; mkdir GitFiles; cd GitFiles; git clone https://src.koozali.org/brianr/smeserver-mailstats.git; cd smeserver-mailstats/; make mockbuild