about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNguyễn Gia Phong <mcsinyx@disroot.org>2022-07-26 15:49:13 +0900
committerNguyễn Gia Phong <mcsinyx@disroot.org>2022-07-26 18:08:57 +0900
commit045a6efa3119c319900756f3847ec2e87a9d2c45 (patch)
tree2a5423521793bd86cdfe77b79c83b32762e87989
parentf4d9aadefa04e2666c0cc8e27d248cf470d8b43b (diff)
downloaddotfiles-045a6efa3119c319900756f3847ec2e87a9d2c45.tar.gz
Set up a guix system
-rw-r--r--dev/.guile20
-rw-r--r--guix.scm81
2 files changed, 99 insertions, 2 deletions
diff --git a/dev/.guile b/dev/.guile
index bcbc981..ce2bdfc 100644
--- a/dev/.guile
+++ b/dev/.guile
@@ -1,2 +1,18 @@
-(use-modules (ice-9 readline))
-(activate-readline)
+(cond ((false-if-exception (resolve-interface '(ice-9 readline)))
+       =>
+       (lambda (module)
+         ;; Enable completion and input history at the REPL.
+         ((module-ref module 'activate-readline))))
+      (else
+       (display "Consider installing the 'guile-readline' package for
+convenient interactive line editing and input history.\n\n")))
+
+      (unless (getenv "INSIDE_EMACS")
+        (cond ((false-if-exception (resolve-interface '(ice-9 colorized)))
+               =>
+               (lambda (module)
+                 ;; Enable completion and input history at the REPL.
+                 ((module-ref module 'activate-colorized))))
+              (else
+               (display "Consider installing the 'guile-colorized' package
+for a colorful Guile experience.\n\n"))))
diff --git a/guix.scm b/guix.scm
new file mode 100644
index 0000000..6542e05
--- /dev/null
+++ b/guix.scm
@@ -0,0 +1,81 @@
+;; This is an operating system configuration generated
+;; by the graphical installer.
+
+(use-modules (gnu))
+(use-service-modules
+  avahi
+  dbus
+  desktop
+  networking
+  sound
+  ssh
+  xorg)
+
+(operating-system
+  (locale "en_DK.utf8")
+  (timezone "Asia/Seoul")
+  (keyboard-layout (keyboard-layout "us"))
+  (host-name "guix")
+  (users (cons* (user-account
+                  (name "cnx")
+                  (comment "McSinyx")
+                  (group "users")
+                  (home-directory "/home/cnx")
+                  (supplementary-groups '("wheel" "netdev" "audio" "video")))
+                %base-user-accounts))
+  (packages
+    (append
+      (specifications->packages
+        '("arandr" "font-google-noto" "libreoffice" "qt5ct" "rxvt-unicode"
+          "audacious" "ffmpeg" "mediainfo" "mpv"
+          "awesome" "barrier" "copyq" "dbus" "keynav" "scrot" "sx" "xrdb"
+          "bastet" "hedgewars"
+          "curl" "icecat" "isync" "liferea" "mblaze" "nheko" "transmission:gui"
+          "fd" "git" "git:send-email" "git-lfs" "ranger" "ripgrep" "vim"
+          "file" "htop" "rsync" "stow"
+          "gnupg" "pinentry" "nss-certs" "oath-toolkit"
+          "imv" "imagemagick"
+          "pavucontrol" "playerctl" "pulsemixer"))
+      %base-packages))
+  (services
+    (cons* (service openssh-service-type
+                    (openssh-configuration
+                      (password-authentication? #f)))
+           (service xorg-server-service-type)
+           (set-xorg-configuration
+             (xorg-configuration
+               (keyboard-layout keyboard-layout)))
+           (screen-locker-service (specification->package "slock"))
+           polkit-wheel-service
+           fontconfig-file-system-service
+           (service network-manager-service-type)
+           (service wpa-supplicant-service-type)
+           (service avahi-service-type)
+           (udisks-service)
+           (service polkit-service-type)
+           (elogind-service)
+           (dbus-service)
+           (service ntp-service-type)
+           x11-socket-directory-service
+           (service pulseaudio-service-type)
+           (service alsa-service-type)
+           %base-services))
+  (kernel-arguments (cons "modprobe.blacklist=pcspkr"
+                          %default-kernel-arguments))
+  (bootloader
+    (bootloader-configuration
+      (bootloader grub-efi-bootloader)
+      (targets (list "/boot/efi"))
+      (keyboard-layout keyboard-layout)))
+  (swap-devices
+    (list (swap-space (target (uuid "2e1d6b10-ef93-47f0-8eb0-b0ebf406e99b")))))
+  (file-systems
+    (cons* (file-system
+             (mount-point "/")
+             (device (uuid "f2cc88e7-55d3-4fce-9bc0-68a38c9671f5" 'btrfs))
+             (type "btrfs"))
+           (file-system
+             (mount-point "/boot/efi")
+             (device (uuid "09F6-ABE3" 'fat32))
+             (type "vfat"))
+           %base-file-systems)))