From: David Larsson <mail@selfhosted.xyz>
To: guix-devel@gnu.org, Alexandre Oliva <lxoliva@fsfla.org>
Subject: Re: BTRFS, LVM, LUKS
Date: Sun, 30 Jun 2019 12:37:02 +0000 [thread overview]
Message-ID: <20190630123702.Horde.uF3cWN8zc8iRH357lWrJgB7@cloud.selfhosted.xyz> (raw)
In-Reply-To: <orblyfzxhs.fsf@lxoliva.fsfla.org>
Hi lxo,
I can give some advice reg. libreboot+luks+btrfs, but not reg. LVM and I haven't tested a a btrfs multi-disk setup with GuixSD either unfortunately.
Using btrfs and luks on a librebooted laptop works well.
> Full-disk encryption (LUKS) is also a strict requirement for me, and so
> is multi-disk BTRFS.
When using libreboot and GuixSD, I suggest that you have in the libreboot grub:
cryptomount -a
configfile /boot/grub.cfg
in order to get all the Guix rollback features that are related to the grub-menu entries without needing to reflash after each guix system reconfigure.
But I suggest that /boot/grub.cfg is a symlink to the /boot in the Guix root subvolume. So the full path to Guix's boot.cfg would be:
/guix_rw/boot/grub.cfg
By loading the Guix grub from libreboot grub like that you can reboot to a new btrfs snapshot such as /guix_rw_test before doing risky things just by changing the destination file of the symlink.
The one issue I have had with this is that the GuixSD system reconfigure command generates grub-entries with the current relative path to initrd etc. so I had to write a small bash-script that replaced the grub-entries with the full paths, like this:
function grubfix(){
sudo sed -i "s/linux\ \/gnu/linux\ \/guix_rw\/gnu/g" "$1"
sudo sed -i "s/initrd\ \/gnu/initrd\ \/guix_rw\/gnu/g" "$1"
sudo sed -i "s/--set\ \/gnu/--set\ \/guix_rw\/gnu/g" "$1"
}
which I then wrapped to a bash function called guix-update() that invokes guix system reconfigure and ends with the grubfix() above.
>
> I have not used GuixSD yet, to a large extent due to the stated lack of
> LVM support. I haven't got myself into Guix either *blush*, but maybe I
> could get started with it. I suppose VMs might be a way to get started,
> but... the machines I use are not very powerful, as in, laptops old
> enough as to support LibreBoot, so I haven't used virtualization much
> myself.
I ran GuixSD on an old x200 for a few a years and had a really painful time with overheating issues. This happens as soon as you have to build anything from source which happens every now and then. I would primarily recommend that you get a more powerful laptop like one of the Librems.
There are though a few ways to mitigate small laptop heating issues:
- run a Guix substitute server yourself on a more powerful machine (quite easy setup).
- make sure to use several of the freely available substitute servers (e.g. berlin.guixsd.org)
- underclocking
- limiting the reconfigure to fewer cores
To limit core cores and add additional substitute servers, you can add to your system services list something like below:
(modify-services
(guix-service-type config =>
(guix-configuration
(inherit config)
(substitute-urls
(cons *
"https://mirror.hydra.gnu.org" "https://mirror.guixsd.org"
"https://berlin.guixsd.org"
%default-substitute-urls))))
; (extra-options
; '("--cores=1"))))) ; to avoid overheating from build-processes
%base-services)))
>
> Thanks in advance for any guidance. I'm lxo on IRC.
>
> --
> Alexandre Oliva, freedom fighter he/him FSFLA.org/blogs/lxo
> Be the change, be Free! FSF Latin America board member
> GNU Toolchain Engineer Free Software Evangelist
> Hay que enGNUrecerse, pero sin perder la terGNUra jamás - Che GNUevara
I wish you the best of luck with GuixSD!
// David
next prev parent reply other threads:[~2019-06-30 12:37 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-30 1:13 BTRFS, LVM, LUKS Alexandre Oliva
2019-06-30 10:38 ` Giovanni Biscuolo
2019-07-04 19:20 ` Alexandre Oliva
2019-07-05 17:54 ` Giovanni Biscuolo
2019-07-06 19:23 ` Alexandre Oliva
2019-07-05 20:52 ` Ludovic Courtès
2019-07-06 19:25 ` Alexandre Oliva
2019-07-07 14:40 ` Ludovic Courtès
2019-06-30 12:37 ` David Larsson [this message]
2019-07-04 19:28 ` Alexandre Oliva
2019-07-01 3:27 ` Christopher Lemmer Webber
2019-07-05 20:47 ` Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190630123702.Horde.uF3cWN8zc8iRH357lWrJgB7@cloud.selfhosted.xyz \
--to=mail@selfhosted.xyz \
--cc=guix-devel@gnu.org \
--cc=lxoliva@fsfla.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.