Hey,

I am sharing some notes from this year's guix days.
They are not super complete but could help in summarizing the sessions I attended.

Maybe next year we could start an emacs CRDT server for collective, collaborative note taking, I'm pretty sure that would be a convenient method of documentation for many if not most attendants.

Thank you for organizing / being present.

Kind regards,
Jurij
* <2025-01-30 čet 14:37> Distributed substitutes
** 1. problem
Are we talking about private substitutes?
Or are we talking about distributed public substitutes?
*** "participatory" substitutes (peer-to-peer)
**** building the substitutes
**** distributing the substitutes
- distribute the source
- distribute the (built) substitute
** 2. solution
- faster
- more economic
- more resilient
** 3. resources
what is the cost of organisational resources?
** 4. challenges
- you must build the source to find out the hash
- you *trust* a substitute server (→ trust the build farm)
  - once you have package signatures (from a trusted source), you can load the packages from unstrusted subtitute servers
- christine suggests that if we agree that we can trust a hash, it's just a matter of serving content addressable sources/packages
- could IPFS be used?
  - is it inefficient?
- even if you have the hash, you would need to receive a whole (large) file before you can hash it and check validity
  - some newer hashing algorithms are solving this problem
- the ~guix-publish~ service makes substitutes available over a (local) network
  - is that secure? what about private builds?
  - you cannot download substitutes for packages that are unknown
  - publishing subtitutes could expose system configuration, some people would not like to do that
  - "your privacy model is not neccessarily someone else's privacy model"
** practicalities or more theory?
*** theory: how to trust hashes?
*** 

* guix forge

- Should guix migrate repositories to forgejo / some other forge?
- Team support is a +
  - not all contributors are developers
  - still want limited number of commiters
  - better overlook/visibility for team members on what is happening
  
* GNU question
- some people not here because of GNU
- GNU has legacy of tools, values, ...
- not questioning commitment to user freedom
  - that is not on the table
- set aside FSF / GNU distinction
- it's much better to keep a pure free software core and add proprietary software than the other way around
- Gnome project moved away from GNU/FSF some years ago (april 2021)
- GNU is toxic - it's not possible to address harassment issues, because opening such discussions is seen as an attack on GNU itself (many have tried, many have failed)
- is it similar to people keeping away from GPL because of GNU association?
  - a lot of GPL software is not organisationally associated with GNU
- Debian also slid away (now involves non-free software)
- GNU Guix → GNU/Guix is like a coherent or complete GNU OS
- a numbre of people do not use Guix because of GNU affiliation (there seem to be a lot on the fediverse)
- GNU tools / GNU assembly → proposal to set up a safe space with values of the GNU project. it was rejected (goal was to move away from rms dictatorship)
  - Social contract: https://gnu.tools/en/documents/social-contract/
  - Code of conduct: https://gnu.tools/en/documents/code-of-conduct/
- hard to stay in GNU but break away
- we need to state new values / how to change
- GNU ← GNU's Not Unanimous?
- Room is in agreement with
  - adding gnu.tools document
  - breaking off from GNU by removing mention (weaker concensus)

* RDE
- "spacemacs for everything"
- layers for things to easily configure stuff for you
- layers can work with eachother
  - one layer enables funcionality in another layer
  - enabling the ~prolog~ layer can give you a jupyter like experience if you have the ~emacs-org~ layer
- it is opinionated (which is a good thing)

* guix pull slow
- ludo not sure why guix pull is so slow, really
- bootstraps new guix
  - old guix → new guix
  - 1. git pull ← takes a while
  - 2. it needs to *compute* the derivation (very slow!)
  - 3. substitute the derivation (build or download)
- it would be great to be able to reuse
  - another user on same machine
  - another machine on the network
  - keep the same git repository (no redundant copies)
  - keep an already computed derivation (!!)
- the computation of a derivation could itself be a derivation
  - for now it's not possible (with guix daemon) to compute another derivation when computing a derivation
  - nix did that but it's very complicated
  - there could be a messy workaround?
- andy wingo is working on a new GC implementation that should be faster, but is at least 3-6 months away from first results
- trusted binary guix alternative?
  - best to improve derivations and solutions
- what if guix pull pulls a certain version instead of the latest git?
  - weird to make default
  - could be useful to add CLI option to make it easier to pull specific commit/tag/branch (not having to write a channel definition)
- guix package -A /package/ shows alternative version (architectures, ...) of packages. it does that quickly due to being loaded from a vectorized serialization containing only that information on packages

Reply via email to