using IPFS in packaging workflow

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is vaguely related to the ongoing discussions about Git Forge but
it is not an alternative to that, it could complement that.

I've been looking at how upstream tarballs, spec files, SRPMs, binary
RPMs and equivalent artifacts for other distributions could be shared
through IPFS[1].  Has anybody else already investigated this from a
packaging perspective?

To simply publish a file in IPFS is quite straightforward

It could be interesting to have a workflow around that, for example:

- upstream publish foo-1.2.3.tgz and it has an IPFS Content ID (CID[2])

- somebody else publishes a spec file, it has another CID

- the existence of these CIDs is announced on some topic

- any distribution relying on the package can pin the file: pinning is
an IPFS mechanism telling your local IPFS node to ensure it has cached
the file so it never goes away

- build servers monitoring the topic and running the IPFS daemon can
immediately see the files in their filesystem and start building

- the binary RPMs are immediately placed in IPFS as well, they are now
available as dependencies for building other things.  Any build server
can see them immediately in the filesystem.

- if it is a new package, those CIDs are entered into the review
request.  One small benefit at this stage: the packager doesn't need to
host it on a web server


Bigger questions arise when we think about how to authenticate things in
IPFS and how to publish collections of packages: do all the packages for
a particular release go into a single CID?  Or should every RPM have its
own CID, so that people can pin parts of the archive and not all of it?

I feel that something like this could offer benefits both for upstreams
and for package maintainers.

Regards,

Daniel


1. https://snapcraft.io/install/ipfs/fedora
2. https://docs.ipfs.io/guides/concepts/cid/
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux