From: Timo Wilken <guix@twilken.net>
To: Genevieve Mendoza <genevieve.m@mailbox.org>
Cc: help-guix@gnu.org
Subject: Re: Missing QT platform plugin for Wayland, GRUB menu-entry, and service/package definitions
Date: Fri, 3 Feb 2023 09:42:58 +0100 [thread overview]
Message-ID: <20230203084258.ig5burxzuebu577e@lap.twilken.net> (raw)
In-Reply-To: <A4DB0794-4D81-4E37-9664-CCD6CC6DF353@mailbox.org>
Hi Genevieve,
On Sun, Jan 22, 2023 at 10:28:30PM -0600, Genevieve Mendoza wrote:
> 1) I've noticed that there are service definitions which automatically
> pull in the packages they require, with the main example being
> desktop-services. I set up some of my own home services, e.g. for
> Pipewire, and they work fine if I also have Pipewire installed
> (via my profile or home environment). If I don't, then they can't find
> the binary and fail. Is there a way to have them specify required
> packages that I missed in the docs?
How do you refer to these packages in your own home services? The
standard way, as far as I know, is to use G-expressions. Here's an
example of a shepherd service I use that runs "nm-applet":
(shepherd-service
(documentation "Applet that provides a GUI for network connections.")
(provision '(nm-applet))
(start #~(make-forkexec-constructor
(list #$(file-append network-manager-applet "/bin/nm-applet"))))
(stop #~(make-kill-destructor)))
The #$(file-append package "/bin/exe") inside the G-expression will
resolve to the full /gnu/store/...-pipewire-0.3.36/bin/pipewire path,
and it ought to stop that path from being garbage-collected as long as
the home environment generation it belongs to exists.
See "info guix -n 'Shepherd Services'" for more specific examples, and
see "info guix -n G-Expressions" for more general information on
G-expressions.
I hope that helps, and I'm sorry I don't have any experience with the
other things you mentioned.
Cheers,
Timo
prev parent reply other threads:[~2023-02-03 8:44 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-23 4:28 Missing QT platform plugin for Wayland, GRUB menu-entry, and service/package definitions Genevieve Mendoza
2023-02-03 8:42 ` Timo Wilken [this message]
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
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230203084258.ig5burxzuebu577e@lap.twilken.net \
--to=guix@twilken.net \
--cc=genevieve.m@mailbox.org \
--cc=help-guix@gnu.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).