iPXE
Silent install package for iPXE
0.0.7349-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.7349-6
- maintainer: sfonteneau
- locale: all
- target_os: windows,linux
- architecture: all
- signature_date:
- size: 1.83 Mo
- homepage : https://github.com/ipxe/ipxe
package : tis-compile-ipxe
version : 0.0.7349-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/5669c4d52e347e3da27b33dddf9c77a2cecd9570
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 : d22bb6e8-2543-45a6-95d0-c90528e9db9b
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-02-12T13:25:55.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 : bhLwPAt4WBtv5Q+3aH10F5ugbbniICcgaRvJk4no77QLtXpBHQIUZn3Gav+7k/5yQ0SnLhvJGqWPZ7VOMVMTSMD4tjsqX8/sFrgcWGal5jOAVckn3M+xgwxU2z339EZ1Fhc4AAW511zAjsp2OJIfjnqnkfXWPA1MBOTl3sKMgidQqOEc9t0v9Tj5Zh07TvdOYhLemPqsZMSon3RGG9uLF+p/EakuGCzHYH4BGIR3uGABOxOS3I59t3DmDCfyszhodiGj1KpHWK3I8ZymLDCjhTEllM5IqbrO98o5tmOZgbUHnmcj/wfdHiHMs2SydvWVuDxL5lzj6oR+YDXjxuOSLA==
# -*- 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
337e35b0e16e2de5b3a609204ddf10212e338fddc1446ee2b04d3ea9764bf283 : WAPT/control
17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694 : WAPT/icon.png
0b1a9c4bfcc74caf122bf475585733055fac5a5278469a82feee443ca48accf9 : ipxe.efi
874cd6c9441b3310c6f64e55078fcbfd10b9a2f2d9638593fddf518e5f953a23 : ipxe.kpxe
1fa8ea1ab709fad97bad3267a725d441ffb12ef095d5026013f6f1942aad1d59 : ipxearm64.efi
66ea8f0f65cd12ea31a0db768f4b193818dcb48772953f0a720f135560686caf : luti.json
2cd74af330185fdd79ef6f7dcd444795395c5438b13b0f78e843b142bf03b7a6 : setup.py
a4ff29defd538e863775efc6da0da2b04a4ccfe86a019e8d4ed34ca1afcd918f : snponly.efi
25dd9e835d83e3c612678e7535d4e8d2a6f5d482ef46fd6d324e2e531a87bb57 : snponlyarm64.efi
a5435f7900a00ad1ed3bed0d3ecf91a4551d381ccfbc6e5e62991a8345e68d9a : undionly.kpxe
b0b4e50afdda5fd79b4d2984bfd6355f54c3d193c6b5d133d46b5333e741fc00 : update_package.py