Guest User

guix system

a guest
Oct 6th, 2024
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.76 KB | None | 0 0
  1. ;; This is an operating system configuration template
  2. ;; for a "desktop" setup with GNOME and Xfce where the
  3. ;; root partition is encrypted with LUKS, and a swap file.
  4.  
  5. (use-modules
  6. (gnu)
  7. (gnu system nss)
  8. (nongnu packages firmware)
  9. (nongnu packages linux)
  10. (nongnu system linux-initrd)
  11. (nongnu packages nvidia)
  12. (nongnu services nvidia)
  13. (guix utils))
  14. (use-service-modules
  15. databases
  16. desktop
  17. networking
  18. xorg
  19. avahi
  20. ssh
  21. shepherd
  22. pm)
  23. (use-package-modules
  24. certs
  25. avahi
  26. xorg
  27. gl
  28. lisp
  29. wm
  30. fonts
  31. gcc
  32. gnome
  33. shells
  34. commencement
  35. firmware
  36. glib
  37. curl
  38. linux
  39. ssh
  40. gnupg
  41. ncurses
  42. )
  43.  
  44. (operating-system
  45. (host-name "monad")
  46. (timezone "rand_earth_loc_joke")
  47. (locale "en_US.utf8")
  48. (initrd microcode-initrd)
  49. (kernel linux)
  50. (kernel-arguments '("modprobe.blacklist=nouveau"))
  51. (firmware (list linux-firmware))
  52.  
  53. (keyboard-layout (keyboard-layout "us" #:options '("ctrl:nocaps")))
  54.  
  55.  
  56. ;; useh the UEFI variant of GRUB with the EFI System
  57. ;; Partition mounted on /boot/efi.
  58. (bootloader (bootloader-configuration
  59. (bootloader grub-efi-removable-bootloader)
  60. (targets '("/boot"))))
  61.  
  62. (file-systems (append
  63. (list (file-system
  64. (device "/dev/nvme0n1p3")
  65. (mount-point "/")
  66. (type "ext4"))
  67. (file-system
  68. (device "/dev/nvme0n1p1")
  69. (mount-point "/boot")
  70. (type "vfat")))
  71. %base-file-systems))
  72.  
  73. ;; Create user `bob' with `alice' as its initial password.
  74. (users (cons (user-account
  75. (name "I")
  76. (comment "ouroboros")
  77. (group "users")
  78. (shell (file-append fish "/bin/fish"))
  79. (supplementary-groups '("wheel" "netdev"
  80. "audio" "video")))
  81. %base-user-accounts))
  82.  
  83. ;; This is where we specify system-wide packages.
  84. (packages (cons* curl
  85. iproute
  86. openssh
  87. light
  88. fish
  89. glibc-locales
  90. gnupg
  91. ncurses
  92. glibc-utf8-locales
  93. openbios-qemu-ppc
  94. %base-packages))
  95.  
  96. (services (cons* (service bluetooth-service-type)
  97. (service gpm-service-type)
  98. (service nvidia-service-type)
  99. (service openssh-service-type)
  100. polkit-wheel-service
  101. (service postgresql-service-type
  102. (postgresql-configuration
  103. (config-file
  104. (postgresql-config-file
  105. (log-destination "stderr")
  106. (hba-file
  107. (plain-file
  108. "pg_hba.conf"
  109. "
  110. local all all trust
  111. host all all 127.0.0.1/32 md5
  112. host all all ::1/128 md5"
  113. ))
  114. (extra-config
  115. '(("session_preload_libraries" "auto_explain")
  116. ("random_page_cost" 2)
  117. ("auto_explain.log_min_duration" "100 ms")
  118. ("work_mem" "500 MB")
  119. ("logging_collector" #t)
  120. ("log_directory" "/var/log/postgresql")))))))
  121. (service tlp-service-type)
  122. (service usb-modeswitch-service-type)
  123. (modify-services %desktop-services
  124. (guix-service-type config =>
  125. (guix-configuration
  126. (inherit config)
  127. (substitute-urls
  128. (append (list "https://substitutes.nonguix.org")
  129. %default-substitute-urls))
  130. (authorized-keys
  131. (append (list
  132. (plain-file "non-guix.pub"
  133. "(public-key
  134. (ecc
  135. (curve Ed25519)
  136. (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
  137. )
  138. )"))
  139. %default-authorized-guix-keys))))
  140.  
  141. (delete gdm-service-type))))
  142.  
  143. (name-service-switch %mdns-host-lookup-nss))
  144.  
  145.  
Advertisement
Add Comment
Please, Sign In to add comment