Strip non-libre components from debian apt repos #19

Open
opened 2018-08-09 20:52:08 +02:00 by SolidEva · 13 comments
SolidEva commented 2018-08-09 20:52:08 +02:00 (Migrated from github.com)

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

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
SolidEva commented 2018-08-10 19:43:23 +02:00 (Migrated from github.com)

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

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
SolidEva commented 2018-08-24 22:21:44 +02:00 (Migrated from github.com)

This pureos wiki page has some useful information regarding their process: https://tracker.pureos.net/w/development/

This pureos wiki page has some useful information regarding their process: https://tracker.pureos.net/w/development/
SolidEva commented 2018-08-28 18:11:34 +02:00 (Migrated from github.com)

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

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
SolidEva commented 2018-08-28 20:05:37 +02:00 (Migrated from github.com)

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

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
SolidEva commented 2018-08-28 20:06:47 +02:00 (Migrated from github.com)
Some docs from debians management: https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_debian_package_management_internals
SolidEva commented 2018-08-28 20:07:42 +02:00 (Migrated from github.com)
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/
SolidEva commented 2018-09-01 19:26:13 +02:00 (Migrated from github.com)

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

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
polarisfm commented 2020-12-05 11:01:12 +01:00 (Migrated from github.com)

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.

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.
albsod commented 2020-12-05 21:42:19 +01:00 (Migrated from github.com)

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?

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?
SolidEva commented 2020-12-12 02:44:16 +01:00 (Migrated from github.com)

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.

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.
albsod commented 2020-12-12 17:22:39 +01:00 (Migrated from github.com)

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.

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.
SolidEva commented 2020-12-15 06:50:54 +01:00 (Migrated from github.com)

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.

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.
spoelstraethan commented 2021-01-14 00:33:26 +01:00 (Migrated from github.com)

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?

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?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ev4/PrawnOS#19
No description provided.