LVM support for Guix System Distribution

With GNU Guix 0.8.1 and it's distribution there is still lack of LVM support. As I'm probably the only user of LVM, I need to hack support into initrd myself.

Steps I'm planning to take:

  1. Think about how configuration structure should look like
  2. Discuss proposal with upstream
  3. Try to implement it for both non-root mount and root mount

Looking for hackers with the skills:

scheme guile initrd lvm

This project is part of:

Hack Week 12 Hack Week 15

Activity

  • almost 9 years ago: sjamgade liked this project.
  • almost 9 years ago: ZRen liked this project.
  • over 10 years ago: sleep_walker started this project.
  • over 10 years ago: sleep_walker added keyword "scheme" to this project.
  • over 10 years ago: sleep_walker added keyword "guile" to this project.
  • over 10 years ago: sleep_walker added keyword "initrd" to this project.
  • over 10 years ago: sleep_walker added keyword "lvm" to this project.
  • over 10 years ago: sleep_walker originated this project.

  • Comments

    • sleep_walker
      over 10 years ago by sleep_walker | Reply

      After this Hackweek I managed to add support for boot from root filesystem on LVM as the mount is done in initrd. For other filesystems the work is still in progress. These filesystems are mounted after switching root and fails on dependency problems between udev and file systems.

      LVM related thread in guix-devel mailing list

    • sleep_walker
      almost 9 years ago by sleep_walker | Reply

      Let's try again to work on this. It seems that noone else would do it ;)

    Similar Projects

    concierge: a distributed object capabilities based secret management tool implemented with Spritely Goblins by gleidi

    Description

    The idea is to build a FOSS command line (for now) secrets management tool, you may have heard of SOPS or Hashicorp Vault, with Spritely Goblins.

    Goblins is a distributed object programming environment. It provides an intuitive security model, automatic local transactions for locally synchronous operations, and an easy to use and efficient asynchronous programming interface for encapsulated objects which can live anywhere on the network. Its networking model abstracts away these details so the programmer can focus on object programming rather than protocol architecture.

    Goblins also integrates powerful distributed debugging tools, and a process persistence and upgrade model which respects its security fundamentals.

    Goals

    • learn more about distributed object capabilities environments
    • create a Goblins application able to serialize encrypted secrets and allow only the read capability owner to read the serialized secrets.

    Resources

    • https://codeberg.org/fishinthecalculator/concierge
    • https://spritely.institute/goblins/
    • https://www.gnu.org/software/guile/manual/guile.html