Difference between revisions of "User:ReetP"

From SME Server
(Building RPMs)
 
Line 89: Line 89:
 
</noinclude>
 
</noinclude>
  
===Building RPMs===
+
===SRPM import===
  
 
My src RPM import notes
 
My src RPM import notes
Line 157: Line 157:
 
Note the Release version format
 
Note the Release version format
  
 
+
<noinclude>
%define name phpki
+
%define name phpki
%define version 0.82
+
%define version 0.82
%define release 23
+
%define release 23
Summary: Phpki is a simple certificate management suite
+
Summary: Phpki is a simple certificate management suite
Name: %{name}
+
Name: %{name}
Version: %{version}
+
Version: %{version}
Release: %{release}%{?dist}
+
Release: %{release}%{?dist}
License: GNU GPL version 2
+
License: GNU GPL version 2
URL: http://sourceforge.net/projects/phpki/
+
URL: http://sourceforge.net/projects/phpki/
Group: SMEserver/addon
+
Group: SMEserver/addon
#wget http://www.fooweb.com/downloads/foo-3.6.431.tar.gz
+
#wget http://www.fooweb.com/downloads/foo-3.6.431.tar.gz
Source: phpki-0.82.tar.gz
+
Source: phpki-0.82.tar.gz
in the
+
</noinclude>

Latest revision as of 17:08, 8 October 2020

Just me. ReetP aka John Crisp

Repos

After adding repo data to the database update the configuration file:

signal-event yum-modify

2020/10 Note Koozali SME v10 currently needs Priority 10 set

ReetP repo

db yum_repositories set reetp repository \
BaseURL https://www.reetspetit.com/smeserver/\$releasever \
EnableGroups no \
GPGCheck no \
Name "ReetP Repo" \
GPGKey https://www.reetspetit.com/RPM-GPG-KEY \
Visible yes \
status disabled


ReetP testing repo - here be Dragons. Not for production use.


db yum_repositories set reetpTest repository \
BaseURL https://www.reetspetit.com/smetest/\$releasever \
EnableGroups no \
GPGCheck no \
Name "ReetP Repo" \
GPGKey https://www.reetspetit.com/RPM-GPG-KEY \
Visible yes \
status disabled


Libreswan repo v9

db yum_repositories set libreswan repository \
BaseURL https://download.libreswan.org/binaries/rhel/6/x86_64/ \
EnableGroups no \
GPGCheck yes \
GPGKey https://download.libreswan.org/binaries/RPM-GPG-KEY-libreswan \
Name LibreSwan \
Visible yes \
status=disabled 


v10

db yum_repositories set libreswan repository \
BaseURL https://download.libreswan.org/binaries/rhel/7/x86_64/ \
EnableGroups no \
GPGCheck yes \
GPGKey https://download.libreswan.org/binaries/RPM-GPG-KEY-libreswan \
Name LibreSwan \
Visible yes \
Priority 10 \
status=disabled 


MC repo v9

db yum_repositories set mc repository \
BaseURL http://download.opensuse.org/repositories/home:/laurentwandrebeck:/mc/CentOS_6/ \
Name mc \
Visible yes \
status enabled 


v10

db yum_repositories set mc repository \
BaseURL http://download.opensuse.org/repositories/home:/laurentwandrebeck:/mc/CentOS_7/ \
Name mc \
Visible yes \
Priority 10 \
status enabled 


NodeJS repo (latest is 10)

db yum_repositories set nodejs8 \
repository Name 'Node JS 8' \
BaseURL https://rpm.nodesource.com/pub_8.x/el/6/x86_64 \
EnableGroups no \
GPGCheck no \
Visible yes \
status disabled


SRPM import

My src RPM import notes

Importing a srpm/contrib.

Big note. If you are importing a server package then you need the common dir from an existing server package and not a contrib - they are different

It helps to have a dir with some common CVS files in.


On your local build server (could be on your koozali shell)

mkdir -p ~/smecontribs/rpms/NewPackage/contribs10
cd ~/smecontribs/rpms

Only required to add to CVS if it is totally new:

cvs add NewPackage 
cd NewPackage

Then:

cvs add contribs10
cd contribs10


We need to get a common directory & Makefile there - note this is for a contrib, not server package

cp -R ~/rpms/{another package}/contribs10/common ~/rpms/NewPackage/contribs10
cp -R ~/rpms/{another package}/contribs10/Makefile ~/rpms/NewPackage/contribs10

Alternatively I already have a directory with these files in that I can re-use

cp -r ~/CVS_files/* ~/smecontribs/rpms/NewPackage/contribs10/


Update the name in the Makefile:

perl -p -i -e 's/{another package}/NewPackage/g' Makefile
./common/cvs-import.sh -b contribs10 -m 'Initial import' NewPackage.src.rpm
make new-sources FILES="v-x.x.x.tar.gz"
cvs commit -m "Add updated sources file NewPackage"

Now, at this juncture it refused to mockbuild properly.

In the end I removed ALL the files in the NewPackage contribs10 dir and then did:

~/smecontribs/rpms/NewPackage/contribs10/
rm -rf *
cvs update -dPA

Then I did:

make clean;make prep; make mockbuild and it built

I then just did

make build

Note

To get the name of the distribution in the filename you need something like this in the spec file.

Note the Release version format


%define 	name phpki
%define 	version 0.82
%define 	release 23
Summary: 	Phpki is a simple certificate management suite
Name: 		%{name}
Version: 	%{version}
Release: 	%{release}%{?dist}
License: 	GNU GPL version 2
URL: 		http://sourceforge.net/projects/phpki/
Group: 		SMEserver/addon
#wget 		http://www.fooweb.com/downloads/foo-3.6.431.tar.gz
Source: 	phpki-0.82.tar.gz