aboutsummaryrefslogtreecommitdiff
path: root/gnu/system/examples/yggdrasil.tmpl
blob: be80bf4de9e2e00552a652d16f594098283f2b7a (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
;; This is an operating system configuration template
;; for a "bare bones" setup, with no X11 display server.

(use-modules (gnu))
(use-service-modules networking ssh)
(use-package-modules admin curl networking screen)

(operating-system
  (host-name "ruby-guard-5545")
  (timezone "Europe/Budapest")
  (locale "en_US.utf8")

  ;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the
  ;; target hard disk, and "my-root" is the label of the target
  ;; root file system.
  (bootloader (bootloader-configuration
                (bootloader grub-bootloader)
                (target "/dev/sdX")))
  (file-systems (cons (file-system
                        (device (file-system-label "my-root"))
                        (mount-point "/")
                        (type "ext4"))
                      %base-file-systems))
  (users (cons (user-account
                (name "alice")
                (comment "Bob's sister")
                (group "users")
                ;; adding her to the yggdrasil group means she can use
                ;; yggdrasilctl to modify the configuration
                (supplementary-groups '("wheel" "yggdrasil")))
               %base-user-accounts))

  ;; Globally-installed packages.
  (packages (cons* screen curl %base-packages))

  ;; Add services to the baseline: a DHCP client and
  ;; an SSH server.
  ;; If you add an /etc/yggdrasil-private.conf, you can log in to ssh
  ;; using your Yggdrasil IPv6 address from another machine running Yggdrasil.
  ;; Alternatively, the client can sit behind a router that has Yggdrasil.
  ;; That file is specifically _not_ handled by Guix, because we don't want its
  ;; contents to sit in the world-readable /gnu/store.
  (services
   (append
    (list
     (service dhcp-client-service-type)
     (service yggdrasil-service-type
              (yggdrasil-configuration
               (log-to 'stdout)
               (log-level 'debug)
               (autoconf? #f)
               (json-config
                ;; choose a few from
                ;; https://github.com/yggdrasil-network/public-peers
                '((peers . #("tcp://1.2.3.4:1337"))))
               (config-file #f)))
     (service openssh-service-type
              (openssh-configuration
               (port-number 2222))))
    %base-services)))
form-download.scm'. * tests/derivations.scm ("unknown built-in builder") ("'download' built-in builder") ("'download' built-in builder, invalid hash") ("'download' built-in builder, not found") ("'download' built-in builder, not fixed-output"): New tests. Co-authored-by: Eelco Dolstra <eelco.dolstra@logicblox.com> Ludovic Courtès 2015-03-25Rename 'guix substitute-binary' to 'guix substitute'....* guix/scripts/substitute-binary.scm: Rename to... * guix/scripts/substitute.scm: ... this. Adjust module name, entry point, comments, and help string accordingly. * nix/scripts/substitute-binary.in: Rename to... * nix/scripts/substitute.in: ... this. * pre-inst-env.in (NIX_SUBSTITUTERS): Adjust accordingly. * tests/substitute-binary.scm: Rename to... * tests/substitute.scm: ... this. Adjust references to (guix scripts substitute) accordingly. * guix/ui.scm (show-guix-help)[internal?]: Change "substitute-binary" to "substitute". * Makefile.am (MODULES, SCM_TESTS): Adjust to file renames. * daemon.am (nodist_pkglibexec_SCRIPTS): Likewise. * config-daemon.ac: Likewise. * guix/tests.scm (call-with-derivation-narinfo): Adjust comments and docstring. Ludovic Courtès