summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorZheng Junjie <873216071@qq.com>2023-07-20 14:09:51 +0800
committer宋文武 <iyzsong@member.fsf.org>2023-08-03 17:38:10 +0800
commit5c688178130ff3da3463d087f74ad9bcc9b104ae (patch)
treeaa12e8ea5920ac3d34b2a5c9e47760dfea54f539 /gnu
parent25522d52f13fd1814b4b9abbb21b8e3d418f5d0e (diff)
downloadguix-5c688178130ff3da3463d087f74ad9bcc9b104ae.tar.gz
examples: Add plasma operating-system example template.
* gnu/system/examples/plasma.tmpl: New file.
* Makefile.am (EXAMPLES): register it.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/system/examples/plasma.tmpl67
1 files changed, 67 insertions, 0 deletions
diff --git a/gnu/system/examples/plasma.tmpl b/gnu/system/examples/plasma.tmpl
new file mode 100644
index 0000000000..3df819a54f
--- /dev/null
+++ b/gnu/system/examples/plasma.tmpl
@@ -0,0 +1,67 @@
+;; This is an operating system configuration template
+;; for a "desktop" setup with Plasma.
+
+(use-modules (gnu) (gnu system nss))
+(use-service-modules desktop sddm xorg ssh)
+(use-package-modules certs gnome ssh admin fonts)
+(use-package-modules qt xorg tmux linux)
+
+(operating-system
+  (host-name "plasma")
+  (timezone "Asia/Shanghai")
+  (locale "en_US.utf8")
+
+  ;; 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)
+               (targets (list "/dev/sdX"))))
+
+  (file-systems (cons (file-system
+                        (device "my-root")
+                        (mount-point "/")
+                        (type "ext4"))
+                      %base-file-systems))
+
+  (users (cons (user-account
+                (name "plasma")
+                (password (crypt "plasma" "$6$abc"))
+                (group "users")
+                (supplementary-groups '("wheel" "netdev"
+                                        "audio" "video")))
+               %base-user-accounts))
+
+  ;; This is where we specify system-wide packages.
+  (packages (cons* nss-certs         ;for HTTPS access
+                   neofetch
+                   htop
+                   tmux
+                   xprop
+                   strace
+                   %base-packages))
+
+  (services (cons*
+             ;; for debug
+             ;; (simple-service
+             ;;  'add-qt-debug-env
+             ;;  session-environment-service-type
+             ;;  '(("QT_MESSAGE_PATTERN"
+             ;;     . "[[%{time process} %{type}] %{appname}: %{category} %{function} - %{message}]")
+             ;;    ("QT_DEBUG_PLUGINS" . "1")
+             ;;    ("QML_IMPORT_TRACE" . "1")))
+             (service openssh-service-type
+                      (openssh-configuration
+                       (openssh openssh-sans-x)
+                       (port-number 2222)))
+             (service plasma-desktop-service-type)
+             (service sddm-service-type
+                      (sddm-configuration
+                       (theme "breeze")))
+             (modify-services %desktop-services
+               (delete gdm-service-type))))
+  ;; Allow resolution of '.local' host names with mDNS.
+  (name-service-switch %mdns-host-lookup-nss))
+
+;; Local Variables:
+;; mode: scheme
+;; End: