Re: [pve-devel] [RFC edk2-firmware] Initial commit

2018-03-14 Thread Thomas Lamprecht
On 03/14/2018 12:32 PM, Fabian Grünbichler wrote:
> looks good all in all, some minor nits below
> 
> On Tue, Mar 13, 2018 at 04:29:24PM +0100, Thomas Lamprecht wrote:
>> Currently builds OVMF in a simmilar fashion the Debian package does,
>> we just focus on a x86_64 build for now, disable secure boot (was
>> disabled in our binary images from pve-qemu, it needs a static build
>> of an specific version of OpenSSL, bit of an headache) and has our
>> Logo for the boot splash.
>>
>> Signed-off-by: Thomas Lamprecht 
>> ---
>>  .gitignore   |   4 +++
>>  .gitmodules  |   3 +++
>>  Makefile |  47 
>>  debian/Logo.bmp  | Bin 0 -> 49078 bytes
>>  debian/changelog |   6 +
>>  debian/clean |   4 +++
>>  debian/compat|   1 +
>>  debian/control   |  21 +++
>>  debian/copyright |  29 
>>  debian/pve-edk2-firmware.install |   3 +++
>>  debian/pve-edk2-firmware.links   |   1 +
>>  debian/rules |  56 
>> +++
>>  edk2 |   1 +
>>  13 files changed, 176 insertions(+)
>>  create mode 100644 .gitignore
>>  create mode 100644 .gitmodules
>>  create mode 100644 Makefile
>>  create mode 100644 debian/Logo.bmp
>>  create mode 100644 debian/changelog
>>  create mode 100644 debian/clean
>>  create mode 100644 debian/compat
>>  create mode 100644 debian/control
>>  create mode 100644 debian/copyright
>>  create mode 100644 debian/pve-edk2-firmware.install
>>  create mode 100644 debian/pve-edk2-firmware.links
>>  create mode 100755 debian/rules
>>  create mode 16 edk2
>>
>> diff --git a/.gitignore b/.gitignore
>> new file mode 100644
>> index 000..a4c231b
>> --- /dev/null
>> +++ b/.gitignore
>> @@ -0,0 +1,4 @@
>> +*.deb
>> +*.buildinfo
>> +*.changes
>> +edk2.build
>> diff --git a/.gitmodules b/.gitmodules
>> new file mode 100644
>> index 000..e24b385
>> --- /dev/null
>> +++ b/.gitmodules
>> @@ -0,0 +1,3 @@
>> +[submodule "edk2"]
>> +path = edk2
>> +url = ../mirror_edk2
>> diff --git a/Makefile b/Makefile
>> new file mode 100644
>> index 000..831dcff
>> --- /dev/null
>> +++ b/Makefile
>> @@ -0,0 +1,47 @@
>> +PACKAGE=pve-edk2-firmware
>> +VER=1.$(shell date -d @$$(dpkg-parsechangelog -S timestamp) '+%Y%m%d')
> 
> why not 'dpkg-parsechangelog -S version'? ;)
> 

because it seems I did not read the whole man page and was
content with the result at the times ;)
fixing for v2

>> +PKGREL=1
>> +
>> +SRCDIR=edk2
>> +BUILDDIR=${SRCDIR}.build
>> +
>> +GITVERSION:=$(shell git rev-parse HEAD)
>> +
>> +DEB=${PACKAGE}_${VER}-${PKGREL}_all.deb
>> +
>> +all: ${DEB}
>> +@echo ${DEB}
>> +
>> +.PHONY: deb
>> +deb: ${DEB}
>> +${DEB}: | submodule
>> +rm -rf ${BUILDDIR}
>> +cp -rpa ${SRCDIR} ${BUILDDIR}
>> +cp -a debian ${BUILDDIR}
>> +echo "git clone git://git.proxmox.com/git/pve-guest-fw-edk2.git\\ngit 
>> checkout ${GITVERSION}" > ${BUILDDIR}/debian/SOURCE
> 
> name of repo and package are different - intentional or leftover from
> previous iteration?
> 

yes, there where many iterations and names

>> +cd ${BUILDDIR}; dpkg-buildpackage -rfakeroot -b -uc -us
> 
> '-rfakeroot' is redundant, it's the default if you are not root, and if
> you are root it will cause a warning to be printed.
> 

OK

>> +lintian ${DEB}
>> +@echo ${DEB}
>> +
>> +.PHONY: submodule
>> +submodule:
>> +test -f "${SRCDIR}/Readme.md" || git submodule update --init
>> +
>> +.PHONY: update_modules
>> +update_modules: submodule
>> +git submodule foreach 'git pull --ff-only origin master'
>> +
>> +.PHONY: upload
>> +upload: ${DEB}
>> +tar cf - ${DEB}|ssh -X repo...@repo.proxmox.com -- upload --product 
>> pmg,pve --dist stretch
> 
> do we need it in pmg? our qemu is only available in PVE
> 

nope, not needed, copy-is-my-hobby leftover

>> +
>> +.PHONY: distclean
>> +distclean: clean
>> +
>> +.PHONY: clean
>> +clean:
>> +rm -rf *~ debian/*~ *.deb ${BUILDDIR} *.changes *.dsc *.buildinfo
>> +
>> +.PHONY: dinstall
>> +dinstall: ${DEB}
>> +dpkg -i ${DEB}
>> diff --git a/debian/Logo.bmp b/debian/Logo.bmp
>> new file mode 100644
>> index 
>> ..4c46dd84772b32fa5c70e31d2483d66850495dc3
>> GIT binary patch
>> literal 49078
>> zcmeHP33wGnwmzxmKD=> zuqh!50%1NgKAJHN5@mF7VG#rYVH5;GHYX?$Ai2xyIn~{@^}SgJ;`jXCRPp6@b#3R=
>> z|JSL#xwCivMsVCMRREf!?+-};Q}CGtS2*F*HvrVE?*3sQjd1_q-v9_rQWXO9nG^)5
>> zk_1(;oFoiLGO9r}Okz~24ul2> zRJ$?+@b9$&Lf1jfl> zftpui88w>%q&A1EufZ}>Tf#MUt^rcJ1sGSi0;t^vu1%{0b<(bbq-$>msM8M8>eYq1
>> z^{xlF?iPIS0N2;A2lX1%2P3T$G-%WS;QBkDVdF;7s7Yf;s{bDV^?N{*W+> z89?Li&@8<> z=H{CqspSJeZWs*EY6#qXOIv7nE9%htA%Hf+;nw!I0ckS|$juJ}+%yJm>)0Nk-AI78
>> zk3z@WJ3-Pd6X5oY&H(Kv0^IgEWOPB@I{p@*!!$_h_#|}c-W5ov-$A##x&w5c4sgc|
>> z=#hCBK*lrZp9MX8WkTlNnE-b_2jtE> zy?ZSJ$jk=l{TjgCIWRD55I~> z^%;~0

Re: [pve-devel] [RFC edk2-firmware] Initial commit

2018-03-14 Thread Fabian Grünbichler
looks good all in all, some minor nits below

On Tue, Mar 13, 2018 at 04:29:24PM +0100, Thomas Lamprecht wrote:
> Currently builds OVMF in a simmilar fashion the Debian package does,
> we just focus on a x86_64 build for now, disable secure boot (was
> disabled in our binary images from pve-qemu, it needs a static build
> of an specific version of OpenSSL, bit of an headache) and has our
> Logo for the boot splash.
> 
> Signed-off-by: Thomas Lamprecht 
> ---
>  .gitignore   |   4 +++
>  .gitmodules  |   3 +++
>  Makefile |  47 
>  debian/Logo.bmp  | Bin 0 -> 49078 bytes
>  debian/changelog |   6 +
>  debian/clean |   4 +++
>  debian/compat|   1 +
>  debian/control   |  21 +++
>  debian/copyright |  29 
>  debian/pve-edk2-firmware.install |   3 +++
>  debian/pve-edk2-firmware.links   |   1 +
>  debian/rules |  56 
> +++
>  edk2 |   1 +
>  13 files changed, 176 insertions(+)
>  create mode 100644 .gitignore
>  create mode 100644 .gitmodules
>  create mode 100644 Makefile
>  create mode 100644 debian/Logo.bmp
>  create mode 100644 debian/changelog
>  create mode 100644 debian/clean
>  create mode 100644 debian/compat
>  create mode 100644 debian/control
>  create mode 100644 debian/copyright
>  create mode 100644 debian/pve-edk2-firmware.install
>  create mode 100644 debian/pve-edk2-firmware.links
>  create mode 100755 debian/rules
>  create mode 16 edk2
> 
> diff --git a/.gitignore b/.gitignore
> new file mode 100644
> index 000..a4c231b
> --- /dev/null
> +++ b/.gitignore
> @@ -0,0 +1,4 @@
> +*.deb
> +*.buildinfo
> +*.changes
> +edk2.build
> diff --git a/.gitmodules b/.gitmodules
> new file mode 100644
> index 000..e24b385
> --- /dev/null
> +++ b/.gitmodules
> @@ -0,0 +1,3 @@
> +[submodule "edk2"]
> + path = edk2
> + url = ../mirror_edk2
> diff --git a/Makefile b/Makefile
> new file mode 100644
> index 000..831dcff
> --- /dev/null
> +++ b/Makefile
> @@ -0,0 +1,47 @@
> +PACKAGE=pve-edk2-firmware
> +VER=1.$(shell date -d @$$(dpkg-parsechangelog -S timestamp) '+%Y%m%d')

why not 'dpkg-parsechangelog -S version'? ;)

> +PKGREL=1
> +
> +SRCDIR=edk2
> +BUILDDIR=${SRCDIR}.build
> +
> +GITVERSION:=$(shell git rev-parse HEAD)
> +
> +DEB=${PACKAGE}_${VER}-${PKGREL}_all.deb
> +
> +all: ${DEB}
> + @echo ${DEB}
> +
> +.PHONY: deb
> +deb: ${DEB}
> +${DEB}: | submodule
> + rm -rf ${BUILDDIR}
> + cp -rpa ${SRCDIR} ${BUILDDIR}
> + cp -a debian ${BUILDDIR}
> + echo "git clone git://git.proxmox.com/git/pve-guest-fw-edk2.git\\ngit 
> checkout ${GITVERSION}" > ${BUILDDIR}/debian/SOURCE

name of repo and package are different - intentional or leftover from
previous iteration?

> + cd ${BUILDDIR}; dpkg-buildpackage -rfakeroot -b -uc -us

'-rfakeroot' is redundant, it's the default if you are not root, and if
you are root it will cause a warning to be printed.

> + lintian ${DEB}
> + @echo ${DEB}
> +
> +.PHONY: submodule
> +submodule:
> + test -f "${SRCDIR}/Readme.md" || git submodule update --init
> +
> +.PHONY: update_modules
> +update_modules: submodule
> + git submodule foreach 'git pull --ff-only origin master'
> +
> +.PHONY: upload
> +upload: ${DEB}
> + tar cf - ${DEB}|ssh -X repo...@repo.proxmox.com -- upload --product 
> pmg,pve --dist stretch

do we need it in pmg? our qemu is only available in PVE

> +
> +.PHONY: distclean
> +distclean: clean
> +
> +.PHONY: clean
> +clean:
> + rm -rf *~ debian/*~ *.deb ${BUILDDIR} *.changes *.dsc *.buildinfo
> +
> +.PHONY: dinstall
> +dinstall: ${DEB}
> + dpkg -i ${DEB}
> diff --git a/debian/Logo.bmp b/debian/Logo.bmp
> new file mode 100644
> index 
> ..4c46dd84772b32fa5c70e31d2483d66850495dc3
> GIT binary patch
> literal 49078
> zcmeHP33wGnwmzxmKD= zuqh!50%1NgKAJHN5@mF7VG#rYVH5;GHYX?$Ai2xyIn~{@^}SgJ;`jXCRPp6@b#3R=
> z|JSL#xwCivMsVCMRREf!?+-};Q}CGtS2*F*HvrVE?*3sQjd1_q-v9_rQWXO9nG^)5
> zk_1(;oFoiLGO9r}Okz~24ul2 zRJ$?+@b9$&Lf1jfl zftpui88w>%q&A1EufZ}>Tf#MUt^rcJ1sGSi0;t^vu1%{0b<(bbq-$>msM8M8>eYq1
> z^{xlF?iPIS0N2;A2lX1%2P3T$G-%WS;QBkDVdF;7s7Yf;s{bDV^?N{*W+ z89?Li&@8< z=H{CqspSJeZWs*EY6#qXOIv7nE9%htA%Hf+;nw!I0ckS|$juJ}+%yJm>)0Nk-AI78
> zk3z@WJ3-Pd6X5oY&H(Kv0^IgEWOPB@I{p@*!!$_h_#|}c-W5ov-$A##x&w5c4sgc|
> z=#hCBK*lrZp9MX8WkTlNnE-b_2jtE zy?ZSJ$jk=l{TjgCIWRD55I~ z^%;~0WS|MdM?4Hw2E7ZAl@B9EJpypwdi=u%_`rKGYV2r$!3AJE@DYr8bS%Jwn*fIX
> z1^+&SM4w(4cNdP1Ez@*8)0T}re!07!j
> zc`CNzF@J-kvERVdC#He%Uk3ml{T2d`9t0S72%dQANr3T((SICZ!guhy8BgK+Nr1 z!i;C0hG%9z3(w7(3BR8`3ueuE9%j#-124Qd7v{b6BK+Z%m*D03ufY683t-`Ei(t{~
> zufgK%*WvZ0OJGS(He|oC6qdf318=^y43@8a3s&T=gjIjch1GBW5&pF19e8K$8d&pZ
> z6aH+y3;F9Uu-;n->o%;1^#$+2h7Ss$VB`Dn{)ZpH#=m|DAAS5+*!1bg@bPD#z-L=G
> z!{%*UV9WNcux-cZuzlwa*s

[pve-devel] [RFC edk2-firmware] Initial commit

2018-03-13 Thread Thomas Lamprecht
Currently builds OVMF in a simmilar fashion the Debian package does,
we just focus on a x86_64 build for now, disable secure boot (was
disabled in our binary images from pve-qemu, it needs a static build
of an specific version of OpenSSL, bit of an headache) and has our
Logo for the boot splash.

Signed-off-by: Thomas Lamprecht 
---
 .gitignore   |   4 +++
 .gitmodules  |   3 +++
 Makefile |  47 
 debian/Logo.bmp  | Bin 0 -> 49078 bytes
 debian/changelog |   6 +
 debian/clean |   4 +++
 debian/compat|   1 +
 debian/control   |  21 +++
 debian/copyright |  29 
 debian/pve-edk2-firmware.install |   3 +++
 debian/pve-edk2-firmware.links   |   1 +
 debian/rules |  56 +++
 edk2 |   1 +
 13 files changed, 176 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 .gitmodules
 create mode 100644 Makefile
 create mode 100644 debian/Logo.bmp
 create mode 100644 debian/changelog
 create mode 100644 debian/clean
 create mode 100644 debian/compat
 create mode 100644 debian/control
 create mode 100644 debian/copyright
 create mode 100644 debian/pve-edk2-firmware.install
 create mode 100644 debian/pve-edk2-firmware.links
 create mode 100755 debian/rules
 create mode 16 edk2

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 000..a4c231b
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,4 @@
+*.deb
+*.buildinfo
+*.changes
+edk2.build
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 000..e24b385
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "edk2"]
+   path = edk2
+   url = ../mirror_edk2
diff --git a/Makefile b/Makefile
new file mode 100644
index 000..831dcff
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,47 @@
+PACKAGE=pve-edk2-firmware
+VER=1.$(shell date -d @$$(dpkg-parsechangelog -S timestamp) '+%Y%m%d')
+PKGREL=1
+
+SRCDIR=edk2
+BUILDDIR=${SRCDIR}.build
+
+GITVERSION:=$(shell git rev-parse HEAD)
+
+DEB=${PACKAGE}_${VER}-${PKGREL}_all.deb
+
+all: ${DEB}
+   @echo ${DEB}
+
+.PHONY: deb
+deb: ${DEB}
+${DEB}: | submodule
+   rm -rf ${BUILDDIR}
+   cp -rpa ${SRCDIR} ${BUILDDIR}
+   cp -a debian ${BUILDDIR}
+   echo "git clone git://git.proxmox.com/git/pve-guest-fw-edk2.git\\ngit 
checkout ${GITVERSION}" > ${BUILDDIR}/debian/SOURCE
+   cd ${BUILDDIR}; dpkg-buildpackage -rfakeroot -b -uc -us
+   lintian ${DEB}
+   @echo ${DEB}
+
+.PHONY: submodule
+submodule:
+   test -f "${SRCDIR}/Readme.md" || git submodule update --init
+
+.PHONY: update_modules
+update_modules: submodule
+   git submodule foreach 'git pull --ff-only origin master'
+
+.PHONY: upload
+upload: ${DEB}
+   tar cf - ${DEB}|ssh -X repo...@repo.proxmox.com -- upload --product 
pmg,pve --dist stretch
+
+.PHONY: distclean
+distclean: clean
+
+.PHONY: clean
+clean:
+   rm -rf *~ debian/*~ *.deb ${BUILDDIR} *.changes *.dsc *.buildinfo
+
+.PHONY: dinstall
+dinstall: ${DEB}
+   dpkg -i ${DEB}
diff --git a/debian/Logo.bmp b/debian/Logo.bmp
new file mode 100644
index 
..4c46dd84772b32fa5c70e31d2483d66850495dc3
GIT binary patch
literal 49078
zcmeHP33wGnwmzxmKD=%q&A1EufZ}>Tf#MUt^rcJ1sGSi0;t^vu1%{0b<(bbq-$>msM8M8>eYq1
z^{xlF?iPIS0N2;A2lX1%2P3T$G-%WS;QBkDVdF;7s7Yf;s{bDV^?N{*W+)0Nk-AI78
zk3z@WJ3-Pd6X5oY&H(Kv0^IgEWOPB@I{p@*!!$_h_#|}c-W5ov-$A##x&w5c4sgc|
z=#hCBK*lrZp9MX8WkTlNnE-b_2jtEA#`M@SR|c*beZ>4w(4cNdP1Ez@*8)0T}re!07!j
zc`CNzF@J-kvERVdC#He%Uk3ml{T2d`9t0S72%dQANr3T((SICZ!guhy8BgK+Nr1o%;1^#$+2h7Ss$VB`Dn{)ZpH#=m|DAAS5+*!1bg@bPD#z-L=G
z!{%*UV9WNcux-cZuzlwa*s<#i*tvTb?Ar4se7Scw?Af;$_I8mmOVdJ{@r>2#nZcQ@82%#F-}_cA`IO
zn>bpBRxSdqzp?EIb;w8p6UjK}Mn`S?!^#z`OG|`6Q#bGNtj1RBX?G=WL;W91PWveIiMs-FXC+2#r9AoPQUzI2z)L;x9vTW
zl+?2&Qq(vpMtgrw1a=D4BRHsgE=0bU!{-xXU=00pf4pS+Q8@^7doDXCXYs@|5+GF%
z$)olfR=zvWbvTLI>nIDIr)TG6XHRK?d9
z7}hG=axz)g!j_e)%)fkLDbo>I%WQ`KEvJi{3am#TK35Wsa~DqUXeyUs
z7?a-2&0RXmNYpq;U<%cAO#JveKmph4Oh}f5f5h(khAr`P0wq2o=dki>aV7SgkJ^!n
z)e+~+_NGoer|ii(ZQJ4E5){f2n2PJ6;zX__YX6wUGY7}7^?K3q*YH5*3H*k2u@h6A
zu&ozS#3B}5#i)ZUlI=udk=F6k$ncL?Ox0Ah=^|Yh-uee{lrewA4E`lO9n^lLl
z+A(S8KvvF4%Vr&E3t3G}Yt_}v3_LArEEkcvHK+l7?v(kp&rDGxpHjnIg%}?@RQbvq
zmN?IoS8ElMXIU$Vs!T8ihin$TJm|Nd2`q{}^VX&jGEZ6;%1FeT8su&{wMFfTJC_f8
z3lAvWgKXINS2r%jd?$w1ax05_PpNa~X#pCa3ZIF6zZa{-}QTMNeKKYo{~h{!%C-d>8G0PB8(Q5Hr{9m7JKM
z8dJjw^!Tt>%Q|$$V)x7H*DmrDa`*@-U58LX_)5Yzy5$+U+ypFhxnv;$BDD>S@tX%R
z44h+0jwV?rBrspt9!p3&A%xDc9+K-qJU*f}gHnlAUYHfUtAvJ9Pk7QIu@NlhjJz|z
zlu@2BI_IOVx>QqZVNeX~vgKHw<#>EVY&Wm_dz5y$ayQEN^j!N$*iIE??DbxGM!sYP
zi#Z`dk|VJ8TaK4C@Ty3HFu#hy+ZbX(7%oN{=E@1J30{8h!TE4z$!eVMjg`J%4d1|}
z@x6hUcu*OhOs`4TlAFu(yzIFm*t8m{eAqEAijbitw0l0vGls}dOsd1jRHiozP4p!0
zkQAyVV>O$XxmYM;SwT-39_xC7N&~WJ~{lA^U<9liBXMDd)1AF`}35WR5cR634`n=W-gXB-szkt3OX#S9q+Cg
zACZ$xR&ugidgKrbA(>pB!^gM