dynamic package management for AVM routers
Switch branches/tags
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
addons wrong SquashFS image format in previous file Jun 25, 2018
autoupdate It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
avm_kernel_config It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
bin @ f7044e3 YourFritz: update submodule checkpoints Oct 23, 2018
bootmanager gui_bootmanager: extend caching on data for 'get_values' Dec 9, 2018
csharp Merge EVA (squashed) (#9) Jun 25, 2018
customconfig It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
eva_tools EVA-FTP-Client.ps1: some changes Oct 6, 2018
export one more mistake, which was really hard to track Jun 25, 2018
first_aid @ ce0c904 YourFritz: update submodule checkpoints Oct 23, 2018
framework framework: remove older 'bashisms', 'local' isn't POSIX-compliant Oct 31, 2018
helpers switch references to the new 'scriptlib' directory Jun 25, 2018
juis juis_check: values with preceding zeros were interpreted as octal num… Nov 19, 2018
led led: add WIP, LED and GPIO pin definitions for 7490, 6490 and 7580 Jun 25, 2018
luavar add another example in Lua to control a VPN connection Jun 15, 2016
reported_threats It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
scriptlib scriptlib: further POSIX compatibility Oct 31, 2018
signimage FirmwareImage.ps1: add method for "one-liner" to extract "kernel.image" Dec 7, 2018
squashfs It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
tffs TFFS.cs: add new name table version @n Nov 24, 2018
toolbox toolbox: replace some older 'bashisms', we want to be POSIX compliant Oct 31, 2018
tools get_page: 'de-localize' a Lua page from AVM Nov 6, 2018
tr-064 It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
update_yaffs2 changed formatting to use tabs instead of blanks May 1, 2016
.gitattributes yourfritz: add logo as PNG image Oct 27, 2018
.gitignore start using VS Code with this repo, too Jun 25, 2018
.gitmodules add binary repositories as submodules Jun 25, 2018
LICENSE clarify license by adding the GPLv2 text Jun 25, 2018
PSScriptAnalyzerSettings.psd1 It's spring time - let's do a little bit of cleanup ... Jun 25, 2018
PeterPawn.asc add PGP public key to verify binary packages in the future Apr 17, 2016
README.md README.md: replace head-line with logo as test for further embedded p… Nov 25, 2018
YourFritz.asc add 'YourFritz' RSA key to sign extension images for use with 'tr069f… Jun 25, 2018
mitmproxy-ca.pem change inclusion of library files to a more general solution Jun 25, 2018
yourfritz_logo.png yourfritz: add logo as PNG image Oct 27, 2018

README.md

YourFritz-Logo

The final target of this project is to provide a really dynamic package management for SOHO/consumer IADs built by well-known vendor (at least known in Germany) AVM from Berlin.

These devices integrate various functions into a single device and - even due to grant-aided sales over some bigger providers in Germany - they're used widely in many (non-professional) installations in Germany (some sources speak about a market share of 50-60 percent here), Austria and Switzerland.

Maybe there's a little active community using FRITZ!Box devices in Australia too ... sometimes you may find some (mostly older) bulletin board conversations from this country regarding AVM routers.

The firmware for these devices is built on-top of Linux with many proprietary components. AVM states, they would publish a package with the open source files used to build their system, but since they switched to kernel version 3.10.73, these source packages are very incomplete (at least I think, they are ... I'm unable to compile a running kernel from these sources and I'm not the only one with such problems).

This repository contains (yet) some smaller shell scripts and files supporting their use ... it's growing and each new script is created with the intention to support the future target - they are the building blocks, which will be put together sometime in the future to form a single integrated solution.

Currently I'm the only one working on this project, any fellows are very welcome.

The modfs project is a spin-off from this (earlier) project, it's a solution to change the firmware supplied by the vendor on the FRITZ!Box device itself without the needs to use an own Linux installation with a complete toolchain built by the Freetz project. It's only a command line based solution, created from some proof-of-concept shell scripts, but it got some attention since it's a really simple solution to customize the stock firmware for your own needs. Because it may be used to create incremental changes and it contains a "boot manager" solution to switch a FRITZ!Box router between two different systems, each installed in its own partitions in the NAND flash of modern devices, there's little or no risk to damage the router and even the risk to be forced to recover such a device is practically non-existant.

Why should anybody need such a solution?

Because most users of FRITZ!OS devices are missing only an OpenVPN server/client and a SSH server for secure access to the command shell of the devices, these packages are (according to my experiences in the support forum for the Freetz project from the IPPF BBS - www.ip-phone-forum.de) the most used extensions to the stock firmware and a solution providing these additions as modular packages could save many people from the needs to make further changes to their devices, as the use of a "full-blown" Freetz image would do. Meanwhile the extensive changes made by the vendor to the GUI of the devices (it's now a "responsive design" :-)) renders some important Freetz packages useless and while Freetz is a really big solution, changing many aspects of the system and containing an own GUI (even if it's rather old and - meanwhile - unsecure compared with the stock firmware), some users want only smaller changes and prefer a solution, which can make them more "under the hood" without interferences with the original firmware.

It's not possible to implement the final solution in one fell swoop ... but the building blocks are growing step by step and meanwhile I think, we should be able to test the first integrated version during this year.