Strip non-libre components from debian apt repos
Build a package archive mirror of the debian archive, but without any of the nasty non-libre bits.
Examples: PureOS (based on Debian) uses https://github.com/lkorigin/laniakea some further information here https://puri.sm/posts/what-is-pureos-and-how-is-it-built/
Trisquel (Based on Ubuntu) uses Package Helpers https://trisquel.info/en/wiki/package-helpers Their process is described quite thoroughly here https://trisquel.info/en/wiki/how-trisquel-made
Use the fork of firefox trisquel uses? http://mirror.fsf.org/trisquel/pool/main/f/firefox/ Then use their browser addons page?
Or use Ice cat? Which also has a list of addons https://directory.fsf.org/wiki/IceCat
This pureos wiki page has some useful information regarding their process: https://tracker.pureos.net/w/development/
Trying to build/install https://github.com/lkorigin/laniakea
make a staging directory mkdir laniakea_stage && cd laniakea_stage
Clone https://github.com/lkorigin/laniakea
install meson pip3 install meson
add meson to path: export PATH=$PATH:~/.local/bin
install prereqs: apt install pkg-config libarchive-dev libcurl4-openssl-dev libczmq-dev libglib2.0-dev appstream libappstream-dev libpq-dev vibe.d gir-to-d libstdx-allocator-dev libdcontainers-dev
Now to choose a compiler from dmd ,gdc, or ldc
gdc and ldc are both available in debian as packages and dmd can be found as a .deb on their website.
run meson: meson laniakea
run ninja ninja install
maybe required...: libvibe-core-dev libvibe-http-dev get glibd from sid or buster https://packages.debian.org/search?lang=en&searchon=names&keywords=glibd by editing /etc/apt/sources.list
builds fails with any of the three compilers, opened issue here https://github.com/lkorigin/laniakea/issues/2
as for the actual repo, this has some dak setup instructions https://salsa.debian.org/ftp-team/dak/tree/master/setup This is the pureos version https://source.puri.sm/pureos/infra/pdak/tree/master/setup
Some docs from debians management: https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_debian_package_management_internals
Some packaging docs from pure os: https://tracker.pureos.net/w/development/packaging_overview/ And how to use pBuilder for pureos https://tracker.pureos.net/w/development/pbuilder_environment_quick_setup/
To build dak on sid:
apt install postgresql-10 postgresql-client-10 postgresql-10-debversion python-psycopg2 python-sqlalchemy python-apt gnupg dpkg-dev lintian
I know this issue has been inactive for over two years, but PureOS now has perfectly functional arm64 Debian repositories. My understanding is that they use Debian Bullseye as their base, so that works out well enough.
Would it make sense to base PrawnOS entirely on PureOS? Apart from the hardware specific quirks needed for Chromebooks it's perhaps unnecessary to maintain a separate "stripped"/"purified" Debian distro when such a project already exists? PureOS doesn't have any arm32 packages, but if we provide them then perhaps Purism would be interested in co-hosting?
basing off of PureOS would make sense, and save PrawnOs from needing to host a bunch of packages. Unfortunately it would likely be difficult to convince Purism to host a bunch of armhf packages for devices they don't support.
If the packages are generic, I don't see why they would be opposed to it. It would mean more visibility to their distro and their brand. Even if they won't accept armhf packages, we could host that particular architecture separately.
Its definitely a route I would consider, as the cost savings would be nice. There is also some value to maintaining our own PrawnOS repos rather than be dependent on Purism though.
Debian keeps non-free in a separate target that isn't enabled by default, are you referring to additional blobby or proprietary software beyond what Debian considers non-free?