iPXE
Silent install package for iPXE
0.0.7646-6
- package: tis-compile-ipxe
- name: iPXE
- version: 0.0.7646-6
- maintainer: sfonteneau
- locale: all
- target_os: windows,linux
- architecture: all
- signature_date:
- size: 1.96 Mo
- homepage : https://github.com/ipxe/ipxe
package : tis-compile-ipxe
version : 0.0.7646-6
architecture : all
section : base
priority : optional
name : iPXE
categories :
maintainer : sfonteneau
description :
depends :
conflicts :
maturity : PROD
locale : all
target_os : windows,linux
min_wapt_version :
sources : https://github.com/ipxe/ipxe/commit/d3f96b7cad5682a43876650dfee50bf0de1221ec
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 : 8e4d23a3-aa15-40f7-945e-405226e51609
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694
signer : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date : 2026-08-10T22:44:16.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 : s0TzAXtQhMZEenh82PQSfMSZw9bSBT4IQxUi3oC8oI5QcntvxuKHKAzdrXQfeDUtrEVS5xtjGRgtU4+nGMumpUNAmwSBLHSVUVxMf3Pwst11RhGSB44wyPrICSexrl8TWEHGE8yvotuIO0wJbnN7FvCInozveHKbRUHsTuZ2fsiQ1mOh/dOYewWAkN7SapEc5MVFOiYaXKc78ry41y48RKBl6BQEysaGt5bGvQuZIp4pEE8E4deE2WEidm+VUpIqiWpto5CeRKx003EAiXrTZevUnyF8FHyxedqvgATWOrpWQJIo+laJREOPmOVhOZp5kFM8NWXpwN76cPpEv2U2Kg==
# -*- 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()
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
1b08a5551b858e4abbf34dfb1d1cae76e4f864a3c15eebd861be819b7aba1666 : WAPT/control
17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694 : WAPT/icon.png
1199e5e6c49afa8d5fa2e01742e921d25eca92aadcdf79e5e422a7456399fee2 : ipxe.efi
62546d62327faca4892c6f45b7dc7466216bf9fc093b6a1df55bc67ae6c49453 : ipxe.kpxe
0aaf474363319b7748014d544f151473e2718ef9822cf5df0467b226cd423097 : ipxearm64.efi
e83bf40c6158f83e7f23faabbe04ea174de85eebe0bc3e2f9f315332d3e7ff62 : luti.json
2cd74af330185fdd79ef6f7dcd444795395c5438b13b0f78e843b142bf03b7a6 : setup.py
a0d39f2d0d36d0afae5ea230418b61a555f13480caf0fbcc510cf0ea182ffcac : snponly.efi
ba095a3c7dd35c845dda77841403d5a6e568ad2c8acff66382fa5087057e14a9 : snponlyarm64.efi
ef8870c66bb5dab95936dd47acbb539eb5a811536463aebb0d17cccfe0d14b21 : undionly.kpxe
b0b4e50afdda5fd79b4d2984bfd6355f54c3d193c6b5d133d46b5333e741fc00 : update_package.py