From 715755405c50338e9b5d89e1ce24e9756ca2a668 Mon Sep 17 00:00:00 2001 From: pjotrp Date: Wed, 18 Dec 2019 02:37:25 -0600 Subject: Machines --- gn/deploy/machines.scm | 4 ++++ gn/deploy/machines/myserver.scm | 50 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 gn/deploy/machines/myserver.scm (limited to 'gn/deploy') diff --git a/gn/deploy/machines.scm b/gn/deploy/machines.scm index 9d7be62..b54f2f1 100644 --- a/gn/deploy/machines.scm +++ b/gn/deploy/machines.scm @@ -5,6 +5,7 @@ #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix download) + #:use-module (guix gexp) #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) @@ -53,6 +54,9 @@ ; (copy-recursively nginx-etc target) (copy-file (string-append nginx-etc "/nginx.conf") (string-append target "/nginx.conf")) + (plain-file "sudoers" "\ +root ALL=(ALL) ALL +%wheel ALL=(ALL) ALL\n") #t)))) (home-page "http://git.genenetwork.org/pjotrp/guix-bioinformatics") (synopsis "Nginx configuration") diff --git a/gn/deploy/machines/myserver.scm b/gn/deploy/machines/myserver.scm new file mode 100644 index 0000000..4f30a5b --- /dev/null +++ b/gn/deploy/machines/myserver.scm @@ -0,0 +1,50 @@ +;; This is an operating system configuration template +;; for a "bare bones" setup, with no X11 display server. + +(use-modules (gnu)) +(use-service-modules networking ssh) +(use-package-modules screen) + +(operating-system + (host-name "komputilo") + (timezone "Europe/Berlin") + (locale "en_US.utf8") + + ;; Boot in "legacy" BIOS mode, 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) + (target "/dev/sdX"))) + (file-systems (cons (file-system + (device (file-system-label "my-root")) + (mount-point "/") + (type "ext4")) + %base-file-systems)) + + ;; This is where user accounts are specified. The "root" + ;; account is implicit, and is initially created with the + ;; empty password. + (users (cons (user-account + (name "alice") + (comment "Bob's sister") + (group "users") + + ;; Adding the account to the "wheel" group + ;; makes it a sudoer. Adding it to "audio" + ;; and "video" allows the user to play sound + ;; and access the webcam. + (supplementary-groups '("wheel" + "audio" "video"))) + %base-user-accounts)) + + ;; Globally-installed packages. + (packages (cons screen %base-packages)) + + ;; Add services to the baseline: a DHCP client and + ;; an SSH server. + (services (append (list (service dhcp-client-service-type) + (service openssh-service-type + (openssh-configuration + (port-number 2222)))) + %base-services))) -- cgit v1.2.3