261 lines
6.9 KiB
Scheme
261 lines
6.9 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))
|
|
|
|
|
|
(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 base-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
|
|
polybar
|
|
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
|
|
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"))
|
|
(file-system
|
|
(mount-point "/mnt/Quartz")
|
|
(device (uuid
|
|
"b0e97572-255c-4f6e-9a0a-9a89ae99f1a5"
|
|
'ext4))
|
|
(type "ext4"))
|
|
(file-system
|
|
(mount-point "/mnt/Sources")
|
|
(device (uuid
|
|
"c01d762b-0c91-43c0-9c80-e048c4abe939"
|
|
'ext4))
|
|
(type "ext4"))
|
|
%base-file-systems)))
|