iPXE
Silent install package for iPXE
0.0.7640-6
- package: tis-compile-ipxe
- name: iPXE
- version: 0.0.7640-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.7640-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/894a7e04bea2440094cf836793403cbd3a463f53
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 : 12994748-f326-4771-ac77-be5f61fadd67
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-09T14:02:37.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 : EeXL/MH6NEB4s2FuIY8aJ//f9rst6yYh3LevijekMiXHIWQO4qS+zhZ6PRiRgvBwW68kEL5A/S+J7rthqWwWNx+DBNHNK0EwL3MQh9yFC90ou3slqOUYaAV9RIFMd5F3XCbbMjl6mVGrzZgVcewxDWK27pcR+N43hwug2y8b+g9McPqRgp2zZazm4TAERl6ioZr8S52N/PpXLL7JqC6gfa8+2H43YsL5t7dNZ44lQ8KEEFOospxG/RKw+5QZ/IOv67bJwF92mClPlxnQnYOxkEQPZ8tb4BTwOrSWrUFthi2ALKDINb02QWBG2298/x/TIHxOjfacIwnPlG7G8AV+Cg==
# -*- 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
8a9083c31e55b8f19d6b97df2ae28f1a7d716e7e1be3d3b2962c2fc20f64e148 : WAPT/control
17e00f040b502c45652e4e7348b4c38ab9d9dda43e3af332da16f38c62598694 : WAPT/icon.png
186af734b26a86b8dcd46826abd6793ef28cc65ef676851f98bc65cba0a96e77 : ipxe.efi
e253919092237937654ba269b2fa4b85dff3f3e9fff0bfe87704aa6da64cecc2 : ipxe.kpxe
8c9e8ce847160c6fc0f9367b76e32eea70e39d0ef729a28e9ca93e0d8232c2d0 : ipxearm64.efi
8c27c6266e4675c90176a36dd3da88562bc0f45904d3d61e27d8665236495f55 : luti.json
2cd74af330185fdd79ef6f7dcd444795395c5438b13b0f78e843b142bf03b7a6 : setup.py
712262da860d037d1418225e6f60b360fb518be9248101cea5007fa8a6305181 : snponly.efi
921967d0622292f08a7aba8b5360aa45d4d8d4ceaf03c9dbf0bb8b16f7a25f64 : snponlyarm64.efi
a5549eb3eb3d866dbb6d02e4eac12216919b5e510016f47bf8d18df54c83cadc : undionly.kpxe
b0b4e50afdda5fd79b4d2984bfd6355f54c3d193c6b5d133d46b5333e741fc00 : update_package.py