Discussion:
01/01: gnu: qemu: Enable Samba support.
(too old to reply)
Ludovic Courtès
2017-12-27 12:04:09 UTC
Permalink
Raw Message
Hello,
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change #:configure-flags to
a list, add --smbd flag.
[inputs]: Add samba.
[...]
+ #:configure-flags (list "--enable-usb-redir" "--enable-opengl"
+ (string-append "--smbd="
+ (assoc-ref %build-inputs "samba")
+ "/sbin/smbd"))
For the record, we removed the dependency on Samba long ago (commit
b344c505f4dff2ecbe981f0a0a3c3d67b222dcca), largely because Samba is a
huge dependency:

--8<---------------cut here---------------start------------->8---
$ guix size qemu | tail -1
total: 817.4 MiB
$ guix size qemu samba | tail -1
total: 1176.0 MiB
--8<---------------cut here---------------end--------------->8---

As it stands I’d still be in favor of not having the default ‘qemu’
depend on Samba.

Perhaps one solution would be to change the ‘exec’ call that invokes
‘smbd’ to ‘execlp’ (or similar) so that ‘smbd’ is search for in $PATH.
That way, if the user installs Samba, then support is available,
otherwise it’s missing.

WDYT?

Thanks,
Ludo’.
Rutger Helling
2017-12-27 13:23:31 UTC
Permalink
Raw Message
Sorry, I hadn't thought of that! I've reverted it for now.

Would another option be to inherit to a new package? Something like
qemu-full, where we could more easily turn on all the bells and
whistles that Qemu has?

On Wed, 27 Dec 2017 13:04:09 +0100
Post by Ludovic Courtès
Hello,
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change
#:configure-flags to a list, add --smbd flag.
[inputs]: Add samba.
[...]
+ #:configure-flags (list "--enable-usb-redir"
"--enable-opengl"
+ (string-append "--smbd="
+ (assoc-ref
%build-inputs "samba")
+ "/sbin/smbd"))
For the record, we removed the dependency on Samba long ago (commit
b344c505f4dff2ecbe981f0a0a3c3d67b222dcca), largely because Samba is a
--8<---------------cut here---------------start------------->8---
$ guix size qemu | tail -1
total: 817.4 MiB
$ guix size qemu samba | tail -1
total: 1176.0 MiB
--8<---------------cut here---------------end--------------->8---
As it stands I’d still be in favor of not having the default ‘qemu’
depend on Samba.
Perhaps one solution would be to change the ‘exec’ call that invokes
‘smbd’ to ‘execlp’ (or similar) so that ‘smbd’ is search for in $PATH.
That way, if the user installs Samba, then support is available,
otherwise it’s missing.
WDYT?
Thanks,
Ludo’.
Rutger Helling
2017-12-27 20:59:25 UTC
Permalink
Raw Message
I've created a wrapper for Samba that seems to do the trick, with a big
caveat. It doesn't error out when Samba is not actually available.

I'd prefer adding Samba directely, but if that's not an option it's
better than nothing. I'll send it in later this week after cleaning it
up a bit.

On Wed, 27 Dec 2017 14:23:31 +0100
Post by Rutger Helling
Sorry, I hadn't thought of that! I've reverted it for now.
Would another option be to inherit to a new package? Something like
qemu-full, where we could more easily turn on all the bells and
whistles that Qemu has?
On Wed, 27 Dec 2017 13:04:09 +0100
Post by Ludovic Courtès
Hello,
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change
#:configure-flags to a list, add --smbd flag.
[inputs]: Add samba.
[...]
+ #:configure-flags (list "--enable-usb-redir"
"--enable-opengl"
+ (string-append "--smbd="
+ (assoc-ref
%build-inputs "samba")
+ "/sbin/smbd"))
For the record, we removed the dependency on Samba long ago (commit
b344c505f4dff2ecbe981f0a0a3c3d67b222dcca), largely because Samba is
--8<---------------cut here---------------start------------->8---
$ guix size qemu | tail -1
total: 817.4 MiB
$ guix size qemu samba | tail -1
total: 1176.0 MiB
--8<---------------cut here---------------end--------------->8---
As it stands I’d still be in favor of not having the default ‘qemu’
depend on Samba.
Perhaps one solution would be to change the ‘exec’ call that invokes
‘smbd’ to ‘execlp’ (or similar) so that ‘smbd’ is search for in
$PATH. That way, if the user installs Samba, then support is
available, otherwise it’s missing.
WDYT?
Thanks,
Ludo’.
Mark H Weaver
2017-12-27 22:53:19 UTC
Permalink
Raw Message
Hi,
rhelling pushed a commit to branch master
in repository guix.
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change #:configure-flags to
a list, add --smbd flag.
[inputs]: Add samba.
I see that you have since reverted this commit, but I still thought I'd
mention that when adding optional features to 'qemu', it would be good
to remove them from 'qemu-minimal', which inherits from 'qemu'.

Thanks,
Mark
Rutger Helling
2017-12-27 22:56:15 UTC
Permalink
Raw Message
Thanks for the tip! I'll keep it in mind for the future.

On Wed, 27 Dec 2017 17:53:19 -0500
Post by Mark H Weaver
Hi,
rhelling pushed a commit to branch master
in repository guix.
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change
#:configure-flags to a list, add --smbd flag.
[inputs]: Add samba.
I see that you have since reverted this commit, but I still thought
I'd mention that when adding optional features to 'qemu', it would be
good to remove them from 'qemu-minimal', which inherits from 'qemu'.
Thanks,
Mark
Maxim Cournoyer
2017-12-27 23:41:31 UTC
Permalink
Raw Message
Hello,
Hi,
rhelling pushed a commit to branch master
in repository guix.
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change
#:configure-flags to
a list, add --smbd flag.
[inputs]: Add samba.
I see that you have since reverted this commit, but I still thought I'd
mention that when adding optional features to 'qemu', it would be good
to remove them from 'qemu-minimal', which inherits from 'qemu'.
Maybe this relationship could be turned around? It seems like it'd make more sense.

Maxim
Rutger Helling
2017-12-28 05:46:28 UTC
Permalink
Raw Message
That does seem more logical IMO.

On Wed, 27 Dec 2017 23:41:31 +0000
Post by Ludovic Courtès
Hello,
Hi,
rhelling pushed a commit to branch master
in repository guix.
commit 84276503059d46c0a42240f8770f59090614d863
Date: Wed Dec 27 10:09:26 2017 +0100
gnu: qemu: Enable Samba support.
* gnu/packages/virtualization.scm (qemu)[arguments]: Change
#:configure-flags to
a list, add --smbd flag.
[inputs]: Add samba.
I see that you have since reverted this commit, but I still thought
I'd mention that when adding optional features to 'qemu', it would
be good to remove them from 'qemu-minimal', which inherits from
'qemu'.
Maybe this relationship could be turned around? It seems like it'd make more sense.
Maxim
Loading...