diff options
Diffstat (limited to 'doc/guix.texi')
-rw-r--r-- | doc/guix.texi | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 65c3b8a7f1..1794c6cd5a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -2430,13 +2430,14 @@ The resulting file will be much smaller than 50 GB (typically less than Boot the USB installation image in an VM: @example -qemu-system-x86_64 -m 1024 -smp 1 \ +qemu-system-x86_64 -m 1024 -smp 1 -enable-kvm \ -net user -net nic,model=virtio -boot menu=on \ -drive file=guix-system-install-@value{VERSION}.@var{system}.iso \ -drive file=guixsd.img @end example -The ordering of the drives matters. +The ordering of the drives matters. @code{-enable-kvm} is optional, but +significantly improves performance, @pxref{Running Guix in a VM}. In the VM console, quickly press the @kbd{F12} key to enter the boot menu. Then press the @kbd{2} key and the @kbd{RET} key to validate your @@ -3133,7 +3134,6 @@ also result from derivation builds, can be available as substitutes. @node Official Substitute Server @subsection Official Substitute Server -@cindex hydra @cindex build farm The @code{@value{SUBSTITUTE-SERVER}} server is a front-end to an official build farm that builds packages from Guix continuously for some @@ -3185,12 +3185,6 @@ Then, you can run something like this: # guix archive --authorize < @var{prefix}/share/guix/@value{SUBSTITUTE-SERVER}.pub @end example -@quotation Note -Similarly, the @file{hydra.gnu.org.pub} file contains the public key -of an independent build farm also run by the project, reachable at -@indicateurl{https://mirror.hydra.gnu.org}. -@end quotation - Once this is in place, the output of a command like @code{guix build} should change from something like: @@ -9610,7 +9604,7 @@ their store with others, who can then use it as a substitute server When @command{guix publish} runs, it spawns an HTTP server which allows anyone with network access to obtain substitutes from it. This means that any machine running Guix can also act as if it were a build farm, -since the HTTP interface is compatible with Hydra, the software behind +since the HTTP interface is compatible with Cuirass, the software behind the @code{@value{SUBSTITUTE-SERVER}} build farm. For security, each substitute is signed, allowing recipients to check @@ -12735,10 +12729,35 @@ NetworkManager will update @code{resolv.conf} to reflect the nameservers provided by currently active connections. @item dnsmasq -NetworkManager will run @code{dnsmasq} as a local caching nameserver, -using a "split DNS" configuration if you are connected to a VPN, and +NetworkManager will run @code{dnsmasq} as a local caching nameserver, using a +@dfn{conditional forwarding} configuration if you are connected to a VPN, and then update @code{resolv.conf} to point to the local nameserver. +With this setting, you can share your network connection. For example when +you want to share your network connection to another laptop @i{via} an +Ethernet cable, you can open @command{nm-connection-editor} and configure the +Wired connection's method for IPv4 and IPv6 to be ``Shared to other computers'' +and reestablish the connection (or reboot). + +You can also set up a @dfn{host-to-guest connection} to QEMU VMs +(@pxref{Installing Guix in a VM}). With a host-to-guest connection, you can +e.g.@: access a Web server running on the VM (@pxref{Web Services}) from a Web +browser on your host system, or connect to the VM @i{via} SSH +(@pxref{Networking Services, @code{openssh-service-type}}). To set up a +host-to-guest connection, run this command once: + +@example +nmcli connection add type tun \ + connection.interface-name tap0 \ + tun.mode tap tun.owner $(id -u) \ + ipv4.method shared \ + ipv4.addresses 172.28.112.1/24 +@end example + +Then each time you launch your QEMU VM (@pxref{Running Guix in a VM}), pass +@option{-nic tap,ifname=tap0,script=no,downscript=no} to +@command{qemu-system-...}. + @item none NetworkManager will not modify @code{resolv.conf}. @end table |