iPXE
Silent install package for iPXE
0.0.7529-6
Preprod packages are packages built on LUTI.
They remain in PREPROD usually for 5 days, after which a second VirusTotal scan is performed to verify that the status has not changed.
If the package passes this last check, it is promoted to PROD and published on the store.
- package: tis-compile-ipxe
- name: iPXE
- version: 0.0.7529-6
- maintainer: sfonteneau
- locale: all
- target_os: windows,linux
- architecture: all
- signature_date:
- size: 1.95 Mo
- homepage : https://github.com/ipxe/ipxe
package : tis-compile-ipxe
version : 0.0.7529-6
architecture : all
section : base
priority : optional
name : iPXE
categories :
maintainer : sfonteneau
description :
depends :
conflicts :
maturity : PREPROD
locale : all
target_os : windows,linux
min_wapt_version :
sources : https://github.com/ipxe/ipxe/commit/56347b2612c3a278ad17ed50e2f7d064ac14ac80
installed_size :
impacted_process :
description_fr :
description_pl :
description_de :
description_es :
description_pt :
description_it :
description_nl :
description_ru :
audit_schedule :
editor :
keywords :
licence :
homepage : https://github.com/ipxe/ipxe
package_uuid : 617d7e5f-a32f-4deb-baba-929c71deb1f0
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694
signer : test
signer_fingerprint: b82fc8ef4a4475c0f69ac168176c2bfc58f572eb716c4eadd65e4785c155dd8e
signature_date : 2026-06-23T10:26:07.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature : MCewNFqb14FAKI+pxnqDJ3ZCvykzGq/BNbjGCteQKUs82jntpxvT4XtTK8eRcEYiLEFm21MYv5wM+0eMQnrXFBZaGThG1OTrtGSB/8pZT+wJ1x2lDz087Px0/D6cEODgttQSqXsP/zCeUoPEwXNvMpNSWEfOawA8pdbPQ93CnmUzXDDM7lgr5a81iXgBk+3j2nFxtNNoNqebYWIfldBSWTxhIJcnTNY4sxRoDhnn9wEzOB6q/1ZJrvA1mHleaeyWv5Q5Qh0pX7A3LAy+7JZjiOag2NvwRDA1YOauU770ozpl+hmrhSNDR7Rhdc3IAdxYJ0MdPsaD015zlWiZgDXMfg==
# -*- coding: utf-8 -*-
from setuphelpers import *
import platform
def install():
wads_folder = makepath(WAPT.wapt_base_dir, 'waptserver', 'repository', 'wads')
if platform.system() == 'Linux':
if type_debian():
wads_folder = '/var/www/wads'
elif type_redhat():
wads_folder = '/var/www/html/wads'
iniwaptserver = makepath(WAPT.wapt_base_dir,'conf','waptserver.ini')
if isfile(iniwaptserver):
inivalue = inifile_readstring(iniwaptserver,"options","wads_folder")
if inivalue :
wads_folder = inivalue
if isdir(makepath(wads_folder,'pxe')):
filecopyto("ipxe.efi",makepath(wads_folder,"pxe","ipxe_github.efi"))
filecopyto("snponly.efi",makepath(wads_folder,"pxe","snponly_github.efi"))
filecopyto("snponlyarm64.efi",makepath(wads_folder,"pxe","snponlyarm64_github.efi"))
filecopyto("ipxearm64.efi",makepath(wads_folder,"pxe","ipxearm64_github.efi"))
filecopyto("undionly.kpxe",makepath(wads_folder,"pxe","undionly_github.kpxe"))
filecopyto("ipxe.kpxe",makepath(wads_folder,"pxe","ipxe_github.kpxe"))
if platform.system() == 'Linux':
if type_debian():
nginx_user = 'www-data'
elif type_redhat():
nginx_user = 'nginx'
run('chown wapt:%s "%s"' % (nginx_user,makepath(wads_folder,"pxe","ipxe_github.efi")))
run('chown wapt:%s "%s"' % (nginx_user,makepath(wads_folder,"pxe","snponly_github.efi")))
run('chown wapt:%s "%s"' % (nginx_user,makepath(wads_folder,"pxe","snponlyarm64_github.efi")))
run('chown wapt:%s "%s"' % (nginx_user,makepath(wads_folder,"pxe","ipxearm64_github.efi")))
run('chown wapt:%s "%s"' % (nginx_user,makepath(wads_folder,"pxe","undionly_github.kpxe")))
run('chown wapt:%s "%s"' % (nginx_user,makepath(wads_folder,"pxe","ipxe_github.kpxe")))
else:
print('SKIP Folder %s not exist' % makepath(wads_folder,'pxe'))
# -*- coding: utf-8 -*-
from setupdevhelpers import *
release_only = False
def update_package():
list_package = ['git','build-essential','zlib1g-dev','binutils-dev','gcc','liblzma-dev','make',"gcc-aarch64-linux-gnu" ,"binutils-aarch64-linux-gnu"]
print('install %s' % ' '.join(list_package))
install_apt(' '.join(list_package))
tmpdir='/tmp'
mkdirs('%s/ipxe' % tmpdir)
run('git clone https://github.com/ipxe/ipxe.git %s/ipxe' % tmpdir)
if release_only:
hashgit = json.loads(wgets('https://api.github.com/repos/ipxe/ipxe/tags'))[0]['commit']['sha']
run('git -C %s/ipxe reset --hard %s --' % (tmpdir,hashgit))
print('custom ipxe')
with open('%s/ipxe/src/config/console.h' % tmpdir,'r') as f:
data = f.read()
data = data.replace('#define KEYBOARD_MAP us','#define KEYBOARD_MAP dynamic')
with open('%s/ipxe/src/config/console.h' % tmpdir,'w') as f:
f.write(data)
print('compile legacy ipxe')
run('cd %s/ipxe/src ; make bin/undionly.kpxe' % tmpdir)
run('cd %s/ipxe/src ; make bin/ipxe.kpxe' % tmpdir)
print('compile uefi ipxe')
run('cd %s/ipxe/src ; make bin-x86_64-efi/ipxe.efi' % tmpdir)
print('compile uefi snponly')
run('cd %s/ipxe/src ; make bin-x86_64-efi/snponly.efi' % tmpdir)
print('compile uefi ipxe arm64')
run('cd %s/ipxe/src ; make CROSS=aarch64-linux-gnu- bin-arm64-efi/ipxe.efi' % tmpdir)
print('compile uefi snponly arm64')
run('cd %s/ipxe/src ; make CROSS=aarch64-linux-gnu- bin-arm64-efi/snponly.efi' % tmpdir)
pxe_folder = basedir
filecopyto('%s/ipxe/src/bin/undionly.kpxe' % tmpdir,'%s/undionly.kpxe' % pxe_folder)
filecopyto('%s/ipxe/src/bin/ipxe.kpxe' % tmpdir,'%s/ipxe.kpxe' % pxe_folder)
filecopyto('%s/ipxe/src/bin-x86_64-efi/ipxe.efi' % tmpdir, '%s/ipxe.efi' % pxe_folder)
filecopyto('%s/ipxe/src/bin-x86_64-efi/snponly.efi' % tmpdir, '%s/snponly.efi' % pxe_folder)
filecopyto('%s/ipxe/src/bin-arm64-efi/ipxe.efi' % tmpdir, '%s/ipxearm64.efi' % pxe_folder)
filecopyto('%s/ipxe/src/bin-arm64-efi/snponly.efi' % tmpdir, '%s/snponlyarm64.efi' % pxe_folder)
version = "0.0.%s" % run(r"git -C %s/ipxe rev-list --count master" % tmpdir).strip()
hashgit = run("git -C %s/ipxe rev-parse HEAD" % tmpdir).split("\n")[0]
control.sources = 'https://github.com/ipxe/ipxe/commit/%s' % hashgit
control.version = "%s-%s" % (version, control.version.split("-", 1)[-1])
control.save_control_to_wapt()
01ca7fe94636e5a08fcb73849d3b5df25d51e2c82f4dd1a08f01798b25899819 : WAPT/certificate.crt
89d1f317b288560eae8e2ba097ff49deb72e8672cbb4214c9489f3ee7db934f0 : WAPT/control
17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694 : WAPT/icon.png
ea674a68a17864a070ab20c9815a13c5ea7496b60d6d1fe970ca0eec27090fba : ipxe.efi
4e2cf350aac4f88f73b82c300874eaad74011c1fe85088425ae382a8ce917ffd : ipxe.kpxe
074996764956896907fe1ebdb8a5b2968b6736f3e218e26a7466032f9e97fd50 : ipxearm64.efi
274008dc39c6ff6336833de80ab39cbac9959f0f0b45657db3a7cbde27fdfa49 : luti.json
2cd74af330185fdd79ef6f7dcd444795395c5438b13b0f78e843b142bf03b7a6 : setup.py
07ab4599a9267fd4e5cf51c8f8304960d50c6178c7d7677a8390a7b89a1b6d0c : snponly.efi
21b731d1683a2a25a824e03e4568f55f876fb5018a7e5c29b44eafbb19700c3e : snponlyarm64.efi
37372b4dd9a0055bf6237829e36dfd2ba1630d0db3944d4ce2f3f96944d007e1 : undionly.kpxe
b0b4e50afdda5fd79b4d2984bfd6355f54c3d193c6b5d133d46b5333e741fc00 : update_package.py