docker-image.tmpl 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. ;; -*- mode: scheme; -*-
  2. ;; This is an operating system configuration template for a "Docker image"
  3. ;; setup, so it has barely any services at all.
  4. (use-modules (gnu))
  5. (operating-system
  6. (host-name "komputilo")
  7. (timezone "Europe/Berlin")
  8. (locale "en_US.utf8")
  9. ;; This is where user accounts are specified. The "root" account is
  10. ;; implicit, and is initially created with the empty password.
  11. (users (cons (user-account
  12. (name "alice")
  13. (comment "Bob's sister")
  14. (group "users")
  15. (supplementary-groups '("wheel"
  16. "audio" "video")))
  17. %base-user-accounts))
  18. ;; Globally-installed packages.
  19. (packages %base-packages)
  20. ;; Because the system will run in a Docker container, we may omit many
  21. ;; things that would normally be required in an operating system
  22. ;; configuration file. These things include:
  23. ;;
  24. ;; * bootloader
  25. ;; * file-systems
  26. ;; * services such as mingetty, udevd, slim, networking, dhcp
  27. ;;
  28. ;; Either these things are simply not required, or Docker provides
  29. ;; similar services for us.
  30. ;; This will be ignored.
  31. (bootloader (bootloader-configuration
  32. (bootloader grub-bootloader)
  33. (targets '("does-not-matter"))))
  34. ;; This will be ignored, too.
  35. (file-systems (list (file-system
  36. (device "does-not-matter")
  37. (mount-point "/")
  38. (type "does-not-matter"))))
  39. ;; Guix is all you need!
  40. (services (list (service guix-service-type))))