Skip to content

Instantly share code, notes, and snippets.

@ndren
ndren / genericpackagerepositoriesongithub.md
Last active August 24, 2023 13:18
Generic Package Repositories Open Letter

Dear GitHub,


In my work for Google Summer of Code 2023 I have designed a system for Continuous Integration for packages built for OpenWrt's package manager, opkg.

After building packages, this requires uploading in a particular file structure the binaries used for CI. Something very similar to Ubuntu's PPA, but hosted on GitHub itself.

I wanted to use GitHub Packages but found they only allow package-management-specific configurations, like Docker or RubyGems. There's no generic method to provide a custom repository structure, unlike other forges.

In this particular case, I was able to use GitHub releases, but only because the maximum file depth was 1. It would be great if GitHub would allow generic package repositories with uploads through HTTP requests and thus give more uses cases to GitHub Packages.

@ndren
ndren / gsoc23freifunk.md
Last active August 8, 2023 19:30
GSoC '23: Adding a PPA to OpenWrt

GSoC 2023 PPA Part 2 Project Log

What is the project?

The project is to provide infrastructure to OpenWrt for CI-style automated builds. That is, the user provides a source repository that is not build by upstream OpenWrt packages, and they get a binary repository that they can use to install the packages from their source repository directly on their router, so that, for example, they can easily add a firewall, DHCP, or other packages that is not otherwise provided by the official OpenWrt repositories.

The project has been able to produce automated CI builds for both GitHub and GitLab, and include automated testing for different architectures through Docker's cross-architecture "platform" feature. The main task left is to test the binaries on real hardware, though unfortunately my router does not support OpenWrt due to binary blobs.

Blog Posts

Freifunk gave GSoC students the ability to write blog posts as part of their project on their WordPress site. This has been very useful for tracking the over