Commit | Line | Data |
---|---|---|
36ffaca2 | 1 | ;; This is an operating system configuration template |
13fb1bd9 LC |
2 | ;; for a "desktop" setup with GNOME and Xfce where the |
3 | ;; root partition is encrypted with LUKS. | |
36ffaca2 LC |
4 | |
5 | (use-modules (gnu) (gnu system nss)) | |
305a732a | 6 | (use-service-modules desktop xorg) |
e48ddb96 | 7 | (use-package-modules certs gnome) |
36ffaca2 LC |
8 | |
9 | (operating-system | |
10 | (host-name "antelope") | |
11 | (timezone "Europe/Paris") | |
d2986552 | 12 | (locale "en_US.utf8") |
36ffaca2 | 13 | |
305a732a LC |
14 | ;; Choose US English keyboard layout. The "altgr-intl" |
15 | ;; variant provides dead keys for accented characters. | |
16 | (keyboard-layout (keyboard-layout "us" "altgr-intl")) | |
17 | ||
fc0e663f LC |
18 | ;; Use the UEFI variant of GRUB with the EFI System |
19 | ;; Partition mounted on /boot/efi. | |
2941b347 | 20 | (bootloader (bootloader-configuration |
fc0e663f | 21 | (bootloader grub-efi-bootloader) |
305a732a LC |
22 | (target "/boot/efi") |
23 | (keyboard-layout keyboard-layout))) | |
13fb1bd9 LC |
24 | |
25 | ;; Specify a mapped device for the encrypted root partition. | |
26 | ;; The UUID is that returned by 'cryptsetup luksUUID'. | |
27 | (mapped-devices | |
28 | (list (mapped-device | |
29 | (source (uuid "12345678-1234-1234-1234-123456789abc")) | |
2941b347 | 30 | (target "my-root") |
13fb1bd9 LC |
31 | (type luks-device-mapping)))) |
32 | ||
ece2fd12 PN |
33 | (file-systems (append |
34 | (list (file-system | |
35 | (device (file-system-label "my-root")) | |
36 | (mount-point "/") | |
37 | (type "ext4") | |
38 | (dependencies mapped-devices)) | |
39 | (file-system | |
40 | (device (uuid "1234-ABCD" 'fat)) | |
41 | (mount-point "/boot/efi") | |
42 | (type "vfat"))) | |
43 | %base-file-systems)) | |
36ffaca2 | 44 | |
03914b9d | 45 | ;; Create user `bob' with `alice' as its initial password. |
bf87f38a | 46 | (users (cons (user-account |
36ffaca2 LC |
47 | (name "bob") |
48 | (comment "Alice's brother") | |
03914b9d | 49 | (password (crypt "alice" "$6$abc")) |
36ffaca2 | 50 | (group "users") |
b599e9eb | 51 | (supplementary-groups '("wheel" "netdev" |
cf848cc0 | 52 | "audio" "video"))) |
bf87f38a | 53 | %base-user-accounts)) |
36ffaca2 | 54 | |
d038b674 | 55 | ;; This is where we specify system-wide packages. |
907dd327 PN |
56 | (packages (append (list |
57 | ;; for HTTPS access | |
58 | nss-certs | |
59 | ;; for user mounts | |
60 | gvfs) | |
61 | %base-packages)) | |
36ffaca2 | 62 | |
5c32857f LC |
63 | ;; Add GNOME and Xfce---we can choose at the log-in screen |
64 | ;; by clicking the gear. Use the "desktop" services, which | |
30875d07 LC |
65 | ;; include the X11 log-in service, networking with |
66 | ;; NetworkManager, and more. | |
ee05cc7f | 67 | (services (append (list (service gnome-desktop-service-type) |
305a732a LC |
68 | (service xfce-desktop-service-type) |
69 | (set-xorg-configuration | |
70 | (xorg-configuration | |
71 | (keyboard-layout keyboard-layout)))) | |
907dd327 | 72 | %desktop-services)) |
36ffaca2 LC |
73 | |
74 | ;; Allow resolution of '.local' host names with mDNS. | |
75 | (name-service-switch %mdns-host-lookup-nss)) |