[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gnu/system/u-boot.scm
From: |
Danny Milosavljevic |
Subject: |
Re: gnu/system/u-boot.scm |
Date: |
Wed, 27 Jul 2016 11:32:48 +0200 |
Hi Ludo,
On Tue, 26 Jul 2016 22:49:35 +0200
address@hidden (Ludovic Courtès) wrote:
> > (u-boot u-boot-configuration-u-boot ; package
> > (default (@ (gnu packages u-boot) (make-u-boot-package
> > board))))
>
> The default value has invalid syntax. Should be simply:
>
> (default (make-u-boot-package board))
>
> but I think this doesn’t work (‘board’ will be unbound; yeah,
> counter-intuitive.)
>
> You could instead do (default #f) and call ‘make-u-boot-package’ when
> that value is #f.
>
> > (define (eye-candy config root-fs system port)
> > "dummy"
> > (mlet* %store-monad ((image #f))
> > (return (and image
> > #~(format #$port "")))))
> >
>
> Simply remove it. :-)
Yeah, but there's a
(mlet %store-monad ((sugar (eye-candy config store-fs system #~port)))
in the same file.
Can I remove that and #$sugar , too? Will it still work?
Also, I'm trying to s/grub.cfg/bootloader-configuration-file/g right now, but I
wonder
(1) Whether it's possible to determine the basename of the config-file
derivation in order to find out what bootloader to install
(2) Whether we want to do it that way
.
If so, we could have a install-bootloader routine that detects what the
filename of the bootloader-configuration-file object is and then calls either
install-grub or install-u-boot.
For an overview, I searched:
$ grep -rl grub . |grep '\.scm'
./gnu/build/vm.scm ; initialize-hard-disk has a key #:grub.cfg
./gnu/build/install.scm ; actual invocation of grub-install is here
./gnu/packages/admin.scm ; fine; some person is called grubb
./gnu/packages/grub.scm ; fine to use it in there
./gnu/system/grub.scm ; fine to use it in there
./gnu/system/vm.scm ; qemu-image has a key #:grub-configuration; source file
hardcodes grub package (?)
./gnu/system/install.scm ; references grub package "mostly so xrefs to its
manual work"
./gnu/system.scm ; needs to be adapted
./tests/system.scm ; harmless, just uses grub-configuration
./build-aux/hydra/demo-os.scm ; harmless, just uses grub-configuration
./guix/scripts/system.scm ; install-grub* needs to be generalized
./gnu.scm ; %public-modules grub for grub-configuration
Some of these would have to be adapted.