Thanks for the response. I think one of the things I was confused about was
that yes, the "average" user doesn't have to create packages, but can just
make manifests. There isn't much discussion of manifests in the
documentation, and I just missed it.

But manifests are required for me to use Guix. If my best option is running
`guix package -i emacs`, that's no advantage for me over `apt-get install
emacs`. Your mileage may differ; this is my opinion. I'm similarly not
installing GuixSD right now, but am using it on top of Ubuntu.

On Sun, Apr 17, 2016 at 9:52 AM, Catonano <[email protected]> wrote:

>
>
> 2016-04-17 6:15 GMT+02:00 Zachary Kanfer <[email protected]>:
>
>> I recently installed Guix, and I must admit I'm feeling somewhat lost. My
>> goal is to not run `guix package -i` manually, but have a scheme file with
>> my entire system configuration in it, and run `guix package -f
>> /path/to/that/file` to install the programs I want on my computer.
>>
>
>
> Running "guiy package -i ..."
>
> is for the binary installation. That is when you install guix as a package
> in a previously existing hosting system
>
> Otherwise, you can install GuixSD and it offers exaclty what Gyou want.
>
> You can have a scheme file specifying the disk layout, the users, the
> services and so on and that's what will be installed
>
> You probably want to start from these instructions to have it installed
> https://www.gnu.org/software/guix/manual/html_node/System-Installation.html
>
> Then, when you wiill want to arrange a scheme file with the list of
> packages to be installed, you can come back here ;-)
>
>>
>>
>> I think what I want to start with is here (
>> http://www.gnu.org/software/guix/manual/guix.html#Programming-Interface),
>> but I'm not sure. Looking at it is somewhat confusing, for a few reasons.
>> I'm going to list what I see when reading this in hopes that the
>> documentation can be improved.
>>
>> 1. It starts by discussing how to "define new packages". I would expect
>> that I would only want to *use* packages, and that this would be done by
>> the person adding the package to the software repository.
>>
>
> Not necessarily. Arranging the build of a package can be demanding. Way
> more demanding that just using the package. So it's not settled that the
> person using the package will be the one who has prepared it for the
> distribution
>
> The user most commonly will install packages provided by others.
> Volunteers, mainly
>
>
>>
>> 2. The example given looks like a very complicated way of installing a
>> simple package.
>>
>
> That's exactly what I wrote. Those instructions are not aimed to casual
> users wanting to USE a package. They are meant for the volunteers who
> arrange the build of a package, so making it available to ALL the users of
> the distribution
>
>
>> There are many properties I don't care about when I'm installing software
>> (homepage, synopsis /and/ description), and things I don't want to care
>> about (arguments, inputs, build-system). To install a package on the
>> command line, it's something simple like "apt-get install emacs". To use
>> Guix, I have to write a 20-line program with a bunch of settings?
>>
>
> No ;-)
>
> You just "guix package -i emacs" both on GuixSD AND on the binary
> installation
>
> Properties and inputs are needed for building packages, not for using them
> (not that knowing abiut those in detrimental, though)
>
> Anyway, if your model is
>
> "apt-get install emacs"
>
> I don't see why
>
> "guix package -i emacs"
>
> is so unsatisfying to you. They are not dramatically different
>
>
>>
>> 3. It goes on to discuss importing other people's package definitions (
>> http://www.gnu.org/software/guix/manual/guix.html#Invoking-guix-import).
>> But it doesn't say how to do this in a Scheme file. I want my setup to be
>> in a Scheme file, not in a bunch of commands I have to manually run.
>>
>
> The instructions about how to import other people definitions, are exactly
> meant to edit a scheme file ;-)
>
> Only, that scheme file is not made to install a package. It's made to
> build it
>
>
>> 4. It discusses running `guix build` to use the package definitions. This
>> appears to be different than `guix package -i`, but I'm at a loss to say
>> how.
>>
>
> The first builds a package based on a definition written in scheme
>
> The second installs an already built package ;-)
>
>
>> Am I missing a useful page somewhere in the documentation? Do I have some
>> wrong assumptions about how Guix is used? Thanks for any help.
>>
>
> I don't know about the documentation. As for wrong assumptions I hope I
> have made things a bit clearer ;-)
>

Reply via email to