summaryrefslogtreecommitdiff
path: root/ikaruga.scm
diff options
context:
space:
mode:
authorDavid Thompson <dthompson2@worcester.edu>2022-12-02 09:50:31 -0500
committerDavid Thompson <dthompson2@worcester.edu>2022-12-02 09:50:31 -0500
commita8cbe49252399e2cf6b012336bead43bf873b7db (patch)
tree67710c2cb2e9ca4f61db60bb33f8bcae45b59e5d /ikaruga.scm
parentb3917e2be310947e5872f83e028dd66192543715 (diff)
Add ikaruga OS config.
Diffstat (limited to 'ikaruga.scm')
-rw-r--r--ikaruga.scm79
1 files changed, 79 insertions, 0 deletions
diff --git a/ikaruga.scm b/ikaruga.scm
new file mode 100644
index 0000000..c96abca
--- /dev/null
+++ b/ikaruga.scm
@@ -0,0 +1,79 @@
+;;; Copyright © 2022 David Thompson <davet@gnu.org>
+;;;
+;;; This program is free software; you can redistribute it and/or
+;;; modify it under the terms of the GNU General Public License as
+;;; published by the Free Software Foundation; either version 3 of the
+;;; License, or (at your option) any later version.
+;;;
+;;; This program is distributed in the hope that it will be useful,
+;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+;;; General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with this program. If not, see
+;;; <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+;;
+;; Laptop OS configuration.
+;;
+;; To update using this OS configuration, run:
+;;
+;; guix system reconfigure ikaruga.scm
+
+(use-modules (gnu)
+ (nongnu packages linux)
+ (nongnu system linux-initrd))
+(use-service-modules cups desktop networking ssh xorg)
+
+(operating-system
+ ;; Use regular Linux with the big bad proprietary firmware blobs.
+ (kernel linux)
+ (initrd microcode-initrd)
+ (firmware (list linux-firmware))
+ (locale "en_US.utf8")
+ (timezone "America/New_York")
+ (keyboard-layout (keyboard-layout "us"))
+ (host-name "ikaruga")
+ (users (cons* (user-account
+ (name "dave")
+ (comment "David Thompson")
+ (group "users")
+ (home-directory "/home/dave")
+ (supplementary-groups '("wheel" "netdev" "audio" "video")))
+ %base-user-accounts))
+ (packages (append (list (specification->package "nss-certs"))
+ %base-packages))
+ (services (modify-services (cons (service gnome-desktop-service-type)
+ %desktop-services)
+ ;; Get nonguix substitutes.
+ (guix-service-type config =>
+ (guix-configuration
+ (inherit config)
+ (substitute-urls
+ (append (list "https://substitutes.nonguix.org")
+ %default-substitute-urls))
+ (authorized-keys
+ (append (list (local-file "./nonguix-signing-key.pub"))
+ %default-authorized-guix-keys))))))
+ (bootloader (bootloader-configuration
+ (bootloader grub-efi-bootloader)
+ (targets (list "/boot/efi"))
+ (keyboard-layout keyboard-layout)))
+ (mapped-devices (list (mapped-device
+ (source (uuid
+ "02b1ffb4-d868-4e5f-ab9b-8be3092e3a3c"))
+ (target "cryptroot")
+ (type luks-device-mapping))))
+ (file-systems (cons* (file-system
+ (mount-point "/boot/efi")
+ (device (uuid "91D3-F76B"
+ 'fat32))
+ (type "vfat"))
+ (file-system
+ (mount-point "/")
+ (device "/dev/mapper/cryptroot")
+ (type "ext4")
+ (dependencies mapped-devices))
+ %base-file-systems)))