menu "Firmware packaging (fwmod) options" visible if FREETZ_SHOW_EXPERT comment "ATTENTION: you probably want to activate unpacking" depends on FREETZ_FWMOD_SKIP_UNPACK depends on !FREETZ_FWMOD_SKIP_ALL config FREETZ_FWMOD_SKIP_ALL bool depends on FREETZ_FWMOD_SKIP_UNPACK && FREETZ_FWMOD_SKIP_MODIFY && FREETZ_FWMOD_SKIP_PACK && !FREETZ_FWMOD_USBROOT && !FREETZ_FWMOD_NFSROOT default y config FREETZ_FWMOD_SKIP_UNPACK bool "Skip unpacking original firmware" default n help In 99,9% of all cases you want this option deactivated because usually it makes a lot of sense to unpack a firmware before modifying it. ;-) menuconfig FREETZ_FWMOD_VALIDATE bool "Verify signature of image file" if FREETZ_SHOW_EXPERT depends on FREETZ_AVM_HAS_SIGNATURE && ! FREETZ_FWMOD_SKIP_UNPACK depends on !FREETZ_TYPE_3170_7170 && !FREETZ_TYPE_7150_7170 default y help Keep this enabled to check the signature of the image file with AVM's device specific public key. Some very old devices have no signed firmware yet. if FREETZ_FWMOD_VALIDATE choice prompt "Method for verifying" default FREETZ_FWMOD_VALIDATE_METHOD_OG config FREETZ_FWMOD_VALIDATE_METHOD_OG bool "Use tar --oldgnu" config FREETZ_FWMOD_VALIDATE_METHOD_SI bool "Use yf-signimage" endchoice endif # FREETZ_FWMOD_VALIDATE config FREETZ_FWMOD_SKIP_MODIFY bool "Skip modifying unpacked firmware, adding Freetz stuff" default n help Usually you want this option deactivated, but maybe you want to use the Freetz build infrastructure to build your own custom firmware mod without actually adding any Freetz-specific stuff. If so, activate this option. config FREETZ_FWMOD_SKIP_PACK bool "Skip packing modified firmware" default n help If you are a USB root or NFS root user, you probably do not need a packed firmware image for flashing. It might not fit into the box's flash memory anyway if you have chosen a lot of packages. In that case you want to activate this option. menuconfig FREETZ_FWMOD_SIGN bool "Sign image file" depends on FREETZ_AVM_HAS_SIGNATURE && ! FREETZ_FWMOD_SKIP_PACK default y help The firmware image will be signed with a self created key. It can only be flashed by bootloader or with Freetz. In case the installed firmware contains already your public signature key, you could also flash it by AVM web interface. if FREETZ_FWMOD_SIGN config FREETZ_FWMOD_SIGN_PASSWORD string "Password of the private key to sign the image" default "freetz" help A password with at least 6 characters is required. It could be set here or will be read from command line during make. If you have forgotten the password, you could delete the ~/.freetz-signature/ directory to create a new key file set. As ~/.freetz-signature/ is used by all you Freetz checkouts, you need to use for all the same password! Or you link/create ./.signature/ directory by yourself. choice prompt "Method for signing" depends on FREETZ_SHOW_EXPERT default FREETZ_FWMOD_SIGN_METHOD_OG config FREETZ_FWMOD_SIGN_METHOD_OG bool "Use tar --oldgnu" config FREETZ_FWMOD_SIGN_METHOD_SI bool "Use yf-signimage" endchoice endif # FREETZ_FWMOD_SIGN config FREETZ_FWMOD_FORCE_PACK bool "Force pack even if image is too big (SDK stick mode)" depends on ! FREETZ_FWMOD_SKIP_PACK depends on FREETZ_TYPE_7270_16 default n help Choose this option if you intend to use the packed image on an SDK stick (see https://web.archive.org/20200701000000/wehavemorefun.de/fritzbox/SDK-Firmware). At the time of writing this, SDK stick mode is only supported on 7270_v2/3, but maybe you found a way to port it to another firmware, so you are free to use this option at will. config FREETZ_FWMOD_USBROOT bool "Pack file system into archive (USB root mode)" depends on FREETZ_KERNEL_VERSION_2 default n help Choose this option if you intend to use the modified file system as a USB root and want it packed into a .tar.gz archive for later transfer to the USB medium. This option can also be useful for NFS root, if you want to archive the file system in addition to or instead of copying it to a target directory directly using the next option. config FREETZ_FWMOD_NFSROOT bool "Copy file system to target folder (NFS root mode)" default n depends on FREETZ_KERNEL_VERSION_2 select FREETZ_FWMOD_USBROOT help Choose this option if you intend to use the modified file system as an NFS root and want it copied to a target folder of your choice. This option can also be useful for USB root, if the target USB medium is already attached to your workstation or accessible via NFS (*not* Samba/CIFS!). ATTENTION: Make sure that the target folder is *not* mounted as a USB/NFS root while copying files into it. This would probably cause your box to reboot and lead to an inconsistent root file system. You should also be aware of the fact that in order to cleanly unpack file root system to the target folder we need to be root (fakeroot is enough to pack, but not to unpack). So please be ready to enter your user password for sudo. comment "ATTENTION: target folder name must not be empty" depends on FREETZ_FWMOD_NFSROOT depends on FREETZ_FWMOD_NFSROOT_DIR = "" config FREETZ_FWMOD_NFSROOT_DIR string "Target folder name" depends on FREETZ_FWMOD_NFSROOT default "" help Enter the target folder name here. It can be either absolute or relative to the Freetz build system's base directory (where e.g. fwmod is located). endmenu # Firmware packaging (fwmod) options