all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Configuration System's Handling of Missing Packages
@ 2015-12-24  5:08 Keith Osterheld
  2015-12-24 13:46 ` Efraim Flashner
  2015-12-24 14:24 ` 宋文武
  0 siblings, 2 replies; 5+ messages in thread
From: Keith Osterheld @ 2015-12-24  5:08 UTC (permalink / raw)
  To: help-guix

Hi,

How does the configuration system handle references to packages that
aren't installed? For example, if I add (use-package-modules xfce) to my config file
but I don't have xfce installed, will guix automatically install it, or
will it throw errors?

Keith

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Configuration System's Handling of Missing Packages
  2015-12-24  5:08 Configuration System's Handling of Missing Packages Keith Osterheld
@ 2015-12-24 13:46 ` Efraim Flashner
  2015-12-24 14:24 ` 宋文武
  1 sibling, 0 replies; 5+ messages in thread
From: Efraim Flashner @ 2015-12-24 13:46 UTC (permalink / raw)
  To: Keith Osterheld; +Cc: help-guix

[-- Attachment #1: Type: text/plain, Size: 866 bytes --]

On Wed, 23 Dec 2015 21:08:40 -0800
Keith Osterheld <keitho@openmailbox.org> wrote:

> Hi,
> 
> How does the configuration system handle references to packages that
> aren't installed? For example, if I add (use-package-modules xfce) to my config file
> but I don't have xfce installed, will guix automatically install it, or
> will it throw errors?
> 
> Keith
> 

If you don't add (use-package-modules xfce) at the top of your config and you
don't use it in (packages ...) then it won't be added.

On the other hand, if you added had (packages (cons* xfce ...)) but didn't
have (use-package-modules xfce) then it would throw an error.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Configuration System's Handling of Missing Packages
  2015-12-24  5:08 Configuration System's Handling of Missing Packages Keith Osterheld
  2015-12-24 13:46 ` Efraim Flashner
@ 2015-12-24 14:24 ` 宋文武
  2015-12-27  7:36   ` Keith Osterheld
  1 sibling, 1 reply; 5+ messages in thread
From: 宋文武 @ 2015-12-24 14:24 UTC (permalink / raw)
  To: Keith Osterheld; +Cc: help-guix

Keith Osterheld <keitho@openmailbox.org> writes:

> Hi,
>
> How does the configuration system handle references to packages that
> aren't installed? For example, if I add (use-package-modules xfce) to my config file
> but I don't have xfce installed, will guix automatically install it, or
> will it throw errors?
“(use-package-modules xfce)” is same as “(use-modules gnu packages xfce)”,
it only make the ‘xfce’ module avaliable (like ‘import’ or ‘require’),
but to actually use the 'xfce' package (exported by the ‘xfce’ module),
you need to add it to the ‘packages’ field of the ‘operating-system’.

items (packages, configuration files, etc) will be download or build
into the ’/gnu’ store when building the ’operating-system’, and packages
listed in the ‘packages’ field will be “installed” into the system
profile, aka ’/run/current-system/profile’.

so, the anwser is “Yes, Guix will install it automatically”.
Errors will be reported if a invalid configuration is used,
It’s a scheme file, so syntax and runtime errors may be common :-)

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Configuration System's Handling of Missing Packages
  2015-12-24 14:24 ` 宋文武
@ 2015-12-27  7:36   ` Keith Osterheld
  2015-12-27 10:11     ` Ricardo Wurmus
  0 siblings, 1 reply; 5+ messages in thread
From: Keith Osterheld @ 2015-12-27  7:36 UTC (permalink / raw)
  To: 宋文武; +Cc: help-guix

Thanks for the help! I have another question now.

> “(use-package-modules xfce)” is same as “(use-modules gnu packages xfce)”,
> it only make the ‘xfce’ module avaliable (like ‘import’ or ‘require’),
> but to actually use the 'xfce' package (exported by the ‘xfce’ module),
> you need to add it to the ‘packages’ field of the ‘operating-system’.
>
> items (packages, configuration files, etc) will be download or build
> into the ’/gnu’ store when building the ’operating-system’, and packages
> listed in the ‘packages’ field will be “installed” into the system
> profile, aka ’/run/current-system/profile’.

What's the difference between a package being downloaded into /gnu
instead of the system profile, and when should I use the package module
instead of installing it normally? To me it seems like the only reason
for using a package module is for easier deployment, is that right?

Thanks,
Keith

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Configuration System's Handling of Missing Packages
  2015-12-27  7:36   ` Keith Osterheld
@ 2015-12-27 10:11     ` Ricardo Wurmus
  0 siblings, 0 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2015-12-27 10:11 UTC (permalink / raw)
  To: Keith Osterheld; +Cc: help-guix


Keith Osterheld <keitho@openmailbox.org> writes:

> What's the difference between a package being downloaded into /gnu
> instead of the system profile, and when should I use the package module
> instead of installing it normally? To me it seems like the only reason
> for using a package module is for easier deployment, is that right?

*Every* package is installed into /gnu.  Profile generations, too, have
their own directory somewhere in /gnu.  They are *also* linked
elsewhere, such as ~/.guix-profile or the system profile.  When a
package is installed it is first built or downloaded into some place in
/gnu/store, and then a new profile generation in /gnu/store is created,
which contains a link to the new package.

Package modules have nothing to do with package installation.  All
packages in Guix are Scheme expressions bound to names.  These bindings
are *defined* in modules.  If you want to refer to any package
expression by name in a programme or another expression (such as the
system configuration or a manifest) you have to make sure that the
module is loaded in the current file.

~~ Ricardo

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2015-12-27 10:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-24  5:08 Configuration System's Handling of Missing Packages Keith Osterheld
2015-12-24 13:46 ` Efraim Flashner
2015-12-24 14:24 ` 宋文武
2015-12-27  7:36   ` Keith Osterheld
2015-12-27 10:11     ` Ricardo Wurmus

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.