aboutsummaryrefslogtreecommitdiff
;; This is an operating system configuration template
;; for a "desktop" setup with Plasma.

(use-modules (gnu) (gnu system nss) (srfi srfi-1))
(use-service-modules desktop sddm xorg ssh)
(use-package-modules 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* 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")))

             ;; Remove GDM if it's among %DESKTOP-SERVICES; on other
             ;; architectures, %DESKTOP-SERVICES contains SDDM instead.
             (remove (lambda (service)
                       (memq (service-kind service)
                             (list gdm-service-type sddm-service-type)))
                     %desktop-services)))
  ;; Allow resolution of '.local' host names with mDNS.
  (name-service-switch %mdns-host-lookup-nss))

;; Local Variables:
;; mode: scheme
;; End:
5-12 18:16:37 +0100'>2019-05-12services: mcron: Log to a file....This makes it easier to read the output, as it's recorded in a file. * gnu/services/mcron.scm (mcron-shepherd-services): Add #:log-file to make-forkexec-constructor. Christopher Baines 2019-01-28gnu: Move most packages from guile.scm to new module....* gnu/packages/guile.scm (artanis, guildhall, guile-aspell, guile-bash, guile-8sync, guile-daemon, guile-dsv, guile-fibers, guile-syntax-highlight, guile-sjson, guile-colorized, guile-pfds, guile-aa-tree, guile-simple-zmq, jupyter-guile-kernel, guile-sparql, guile-debbugs, guile-email, guile-debbugs-next, guile-newt, guile-mastodon, guile-parted, guile-xosd, guile-dbi, guile-dbd-sqlite3, guile-config, guile-hall, guile-ics, guile-wisp, guile-sly, g-wrap, guile-miniadapton, guile-reader, guile2.2-reader, guile-ncurses, guile-ncurses/gpm, guile-lib, guile2.0-lib, guile2.2-lib, guile-minikanren, guile2.0-minikanren, guile2.2-minikanren, guile-irregex, guile2.0-irregex, guile2.2-irregex, haunt, guile2.0-haunt, guile2.2-haunt, guile-redis, guile2.0-redis, guile2.2-redis, guile-commonmark, guile2.0-commonmark, guile2.2-commonmark, mcron, mcron2): Move these variables from here... * gnu/packages/guile-xyz.scm: ...to this new file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/installer.scm, gnu/packages/bioinformatics.scm, gnu/packages/ci.scm, gnu/packages/gtk.scm, gnu/packages/guile.scm, gnu/packages/mail.scm, gnu/packages/package-management.scm, gnu/packages/skribilo.scm, gnu/packages/web.scm, gnu/services/mcron.scm: Update module references. Ricardo Wurmus 2019-01-11services: Deprecate a few more service procedures....These procedures were already either undocumented (and de facto deprecated) or documented as deprecated or redundant. * gnu/services/base.scm (guix-service, guix-publish-service): Mark as deprecated. * gnu/services/mcron.scm (mcron-service): Likewise. * gnu/services/networking.scm (tor-service): Likewise. * doc/guix.texi (Scheduled Job Execution): Remove 'mcron-service' and adjust example. (Networking Services): Remove 'tor-service'. * gnu/tests/base.scm (%mcron-os): Use 'mcron-service-type' instead of 'mcron-service'. * gnu/tests/networking.scm (%tor-os): Use 'tor-service-type' instead of 'tor-service'. * tests/guix-system.sh: Likewise. Ludovic Courtès 2018-11-13services: mcron: Fix typo in comment....* gnu/services/mcron.scm (shepherd-schedule-action): Fix typo in comment. Ludovic Courtès 2018-07-13services: mcron: Add 'schedule' action....Inspired by <https://lists.gnu.org/archive/html/help-guix/2018-07/msg00035.html>. * gnu/services/mcron.scm (shepherd-schedule-action): New procedure. (mcron-shepherd-services): Add 'actions' field. * gnu/tests/base.scm (run-mcron-test)["schedule action"]: New test. * doc/guix.texi (Scheduled Job Execution): Mention 'herd schedule'. Ludovic Courtès 2018-03-19gnu: mcron: Update to 1.1 and deprecate "mcron2"....* gnu/packages/guile.scm (mcron): Update to 1.1. [native-inputs]: Add TZDATA-FOR-TESTS. [arguments]: New field. (mcron2): Define using 'deprecated-package'. * gnu/services/mcron.scm: Replace 'mcron2' with 'mcron'. * doc/guix.texi (Scheduled Job Execution): Likewise. * gnu/tests/base.scm (%mcron-os): Remove comment about mcron2. Ludovic Courtès