iPXE
Silent install package for iPXE
0.0.7674-6
- package: tis-compile-ipxe
- name: iPXE
- version: 0.0.7674-6
- maintainer: sfonteneau
- locale: all
- target_os: windows,linux
- architecture: all
- signature_date:
- size: 1.97 Mo
- homepage : https://github.com/ipxe/ipxe
package : tis-compile-ipxe
version : 0.0.7674-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/7afbcac103f311f3c31af9d24e2e1d1ff4f89221
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 : 049b33ee-f975-40b2-8e3c-7621c3b2223b
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-30T18:11:19.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 : AzbB+HKAM6pE3kCSeQ8d5/kWxm14gUhb0cHQTJkb0mQeAf7xKaWX6mcUGxLS+kA2VL9uoSNiVXRGHdEghz93BPhuZgykMCxuPY4rOTSGKHQ8r48hZo+mp+j5pjJLTQqfU68DbHasy2T6geWFjszovvM0S9Amreiwrhi6eRTwoeg87EwssrgjlfBojumdwmXEfmyMdMJlIXZZ6znXehL90i0aERxiTgFrc/wxiOcXAcrlHs8wspoc2b15ofQuWwahuELCdJdQPkPIAS460oS3NdYM05Bou4bjXWH26YTQuQcYuFYFpPjFNEbp4H1s5bBWLe557czKgCiGQM3B74vKeA==
# -*- 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
b0e74c1ef9b9d7d00d78faa1bf0762b0f385757c6c5491d0996d14d5b73b0209 : WAPT/control
17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694 : WAPT/icon.png
8ec897587bd80a03055a7b49639c97cbf5650e7e92f2bf0f37e7321e011ef410 : ipxe.efi
0aab5ce6a21bb3bbfd97e4b986c3d9630983c1b633f60008fefac4c17d108096 : ipxe.kpxe
b1df171583edd4b278e04ae5652f734a9f128954eb9c3c480ad7fc7e3ac7be9d : ipxearm64.efi
8be6b6dea95fb5293f56019b9316e3fa36e059dfe164ed391c715453326ef48d : luti.json
2cd74af330185fdd79ef6f7dcd444795395c5438b13b0f78e843b142bf03b7a6 : setup.py
49d45a418b10c92116d2b45dfc6cea144f0948cf463e0a679916e0b2b9d006a9 : snponly.efi
7e7d67889801e8d90a7d4c93a291af89cd15c97cff991f568fbe9fb913074ece : snponlyarm64.efi
b3ff189e57ff32efa10e42b65b9db09f1cb8bc500e2378197122a102add692cd : undionly.kpxe
b0b4e50afdda5fd79b4d2984bfd6355f54c3d193c6b5d133d46b5333e741fc00 : update_package.py