modern_lisp-machine/config.scm

250 lines
6.4 KiB
Scheme

;; This is an operating system configuration generated
;; by the graphical installer.
;;
;; Once installation is complete, you can learn and modify
;; this file to tweak the system configuration, and pass it
;; to the 'guix system reconfigure' command to effect your
;; changes.
;; Indicate which modules to import to access the variables
;; used in this configuration.
(use-modules
(gnu)
(guix packages)
(gnu packages fcitx5)
(gnu packages gnuzilla)
(gnu packages haskell)
(gnu packages gcc)
(gnu packages commencement)
(gnu packages freedesktop)
(gnu packages image)
(gnu packages image-viewers)
(gnu packages xfce)
(srfi srfi-1)
;; for nyxt
(gnu packages gstreamer)
(gnu packages web-browsers)
;;---------
(gnu services)
(gnu packages terminals)
(gnu packages music)
(gnu packages compton)
(gnu packages version-control)
(gnu packages lxqt)
(gnu packages file-systems)
(gnu packages admin)
(gnu packages bittorrent)
(gnu packages chromium)
(gnu packages compression)
(gnu packages curl)
(gnu packages emacs)
(gnu packages emacs-xyz)
(gnu packages engineering)
(gnu packages fonts)
(gnu packages tmux)
(gnu packages dictionaries)
(gnu packages emulators)
(gnu packages fontutils)
(gnu packages gimp)
(gnu packages gnome)
(gnu packages gnome-xyz)
(gnu packages gnupg)
(gnu packages haskell-apps)
(gnu packages imagemagick)
(gnu packages java)
(gnu packages libreoffice)
(gnu packages linux)
(gnu packages lisp)
(gnu packages mpd)
(gnu packages package-management)
(gnu packages rsync)
(gnu packages ssh)
(gnu packages telegram)
(gnu packages video)
(gnu packages wm)
(gnu packages xdisorg)
(gnu packages xorg)
(gnu home services gnupg)
(gnu home services xdg)
(guix channels)
(guix inferior)
(nongnu packages compression)
(nongnu packages linux)
(nongnu system linux-initrd))
(use-service-modules cups desktop networking ssh xorg linux)
(use-package-modules linux )
(define my-kernel linux-6.1)
(define my-zfs
(package
(inherit zfs)
(arguments
(cons* #:linux my-kernel
(package-arguments zfs)))))
(operating-system
(kernel my-kernel)
(initrd microcode-initrd)
(firmware (list linux-firmware))
(locale "en_US.utf8")
(timezone "America/Manaus")
(keyboard-layout (keyboard-layout "us"))
(host-name "lisp-machine")
(kernel-loadable-modules (list (list my-zfs "module")))
;; The list of user accounts ('root' is implicit).
(users (cons* (user-account
(name "hashirama")
(comment "Hashirama")
(group "users")
(home-directory "/home/hashirama")
(supplementary-groups '("wheel" "netdev" "audio" "video")))
%base-user-accounts))
;; Packages installed system-wide. Users can also install packages
;; under their own account: use 'guix search KEYWORD' to search
;; for packages and 'guix install PACKAGE' to install a package.
(packages (append (list
my-zfs
;;emacs-org-roam
;;emacs-org-roam-ui
;; -----
;;necessary for nyxt
gstreamer
gst-plugins-bad
gst-plugins-good
;;------
nyxt
;;------
cmus
wmctrl
xprop
fzf
zstd
aria2
xrdb
;;make
mpv
xdg-user-dirs
xdg-desktop-portal-gtk
xdg-desktop-portal
tmux
gnupg
sdcv
alacritty
;; stumpwm-test
font-dejavu
stumpwm
;;------
higan
maim
p7zip
htop
scrot
flameshot
neofetch
pfetch
;;element-desktop
fcitx5
fcitx5-gtk
fcitx5-qt
fcitx5-anthy
fcitx5-gtk4
fcitx5-configtool
icecat
ffmpeg
nsxiv
polybar
pinentry
git
pavucontrol-qt
emacs
xrandr
ungoogled-chromium
qbittorrent
emacs-rainbow-delimiters
emacs-olivetti
emacs-telega
emacs-slime
emacs-nerd-icons
emacs-esxml
zip
thunar
unzip
;;emacs-nov-el
fontconfig
;; font-apple-color-emoji
picom
feh
xmodmap
;; deps for xmonad
xmonad
xmobar
ghc ;; ridiculous, gcc and ghc are runtime dependencies , yet people didnt put in the package description
gcc
gcc-toolchain
xmessage
ghc-xmonad-contrib
rofi
linux-libre-headers
;;--------
yt-dlp
;; nicotine+
linux-firmware
(specification->package "nss-certs"))
%base-packages))
;;(home-environment (packages (cons* anki ))) ;; figure out how to install it from here
;; Below is the list of system services. To search for available
;; services, run 'guix system search KEYWORD' in a terminal.
(services
(append (list (simple-service 'my-zfs-loader
kernel-module-loader-service-type
'("zfs"))
(service zram-device-service-type
(zram-device-configuration
(size "3G")
(compression-algorithm 'lz4)
(priority 100)))
(set-xorg-configuration
(xorg-configuration (keyboard-layout keyboard-layout))))
%desktop-services))
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets (list "/boot/efi"))
(keyboard-layout keyboard-layout)))
(swap-devices (list (swap-space
(target (uuid
"4f829a61-6f51-435b-bade-2991c094080f")))))
;; The list of file systems that get "mounted". The unique
;; file system identifiers there ("UUIDs") can be obtained
;; by running 'blkid' in a terminal.
(file-systems (cons* (file-system
(mount-point "/boot/efi")
(device (uuid "7C90-0F50"
'fat32))
(type "vfat"))
(file-system
(mount-point "/")
(device (uuid
"ef8ef1c0-99bd-431a-abde-e2fc6421da60"
'ext4))
(type "ext4"))
(file-system
(mount-point "/mnt/Reading")
(device (uuid
"223baecf-e5f4-453f-90c7-d33edbbae145"
'ext4))
(type "ext4"))
%base-file-systems)))