Future evolutions
Many developments are currently being considered or are already underway; here are some of them.
Dynamic Ansible inventories
InterDiode could provide Ansible roles to correctly and automatically configure a machine so it can be properly integrated into your internal network, making it able to download packages (system or programming language packages). To achieve this, generic Ansible roles as well as a dynamically generated inventory that takes permission management into account could be provided.
Partial source synchronization
Some data repositories enforce limits on the number of downloads allowed before access is blocked. Retrieving a large number of items can therefore become particularly slow, or even impossible, because of these limits. To speed up the availability of the first items on the internal network, InterDiode could allow partial synchronizations, with a rotation of the retrieved items each time.
Docker/OCI containers customization
Building an image from a public one on a disconnected network is rarely possible directly: it must first be configured to take existing repositories or internal certificates into account. InterDiode could offer systematic customization of downloaded images based on Alpine Linux, Debian, Ubuntu, or BusyBox to simplify their reuse.
Handling internal repositories
InterDiode is not designed to act as a software repository for a very large number of machines, and it is recommended to place it behind a proxy that absorbs most of the load. Currently, these proxies must be synchronized regularly with InterDiode. It is planned to allow InterDiode to directly push new artifacts to the most common proxies such as Pulp, Artifactory or Nexus Repository in order to reduce delays and simplify your architecture.
Other ideas
We have already thought of many other ideas; feel free to tell us which ones are most important to you!
Check downloaded hashes against VirusTotal or similar services to ensure that the downloaded resources are not malicious.
Handle separate video and audio streams when downloading videos, to allow both the best video and audio quality.
Download custom software resources like Playwright.
Allow to run custom Docker images for downloading resources, for example to handle proprietary protocols or to use custom downloaders.
AI models from HuggingFace or similar sources, including their dependencies.
Google fonts
R packages
Eclipse plugins
VSCode extensions
Snap packages for Ubuntu