modern_lisp-machine/config.scm

381 lines
9.4 KiB
Scheme
Raw Normal View History

2024-06-10 21:09:24 +00:00
; This is an operating system configuration generated
2024-06-01 05:00:40 +00:00
;; 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.
2024-03-01 23:48:49 +00:00
(use-modules
2024-05-02 16:37:36 +00:00
(gnu)
2024-02-03 04:12:40 +00:00
(guix packages)
2024-06-01 05:00:40 +00:00
(rosenthal packages binaries)
(rosenthal packages emacs-xyz)
2024-05-02 16:37:36 +00:00
(guix transformations)
2024-09-08 20:03:55 +00:00
(gnu packages python-xyz)
2024-05-02 16:37:36 +00:00
(gnu packages audio)
2024-06-01 05:00:40 +00:00
(gnu packages librewolf)
2024-09-08 20:03:55 +00:00
(gnu packages sync)
(gnu packages qt)
2024-06-01 05:00:40 +00:00
(gnu packages gdb)
(gnu packages graphics)
2024-05-02 16:37:36 +00:00
(gnu packages java)
2024-02-03 04:12:40 +00:00
(gnu packages fcitx5)
2024-05-02 16:37:36 +00:00
(gnu packages ibus)
2024-02-03 04:12:40 +00:00
(gnu packages gnuzilla)
(gnu services mcron)
2024-03-02 19:12:23 +00:00
(gnu packages haskell)
2024-03-15 19:24:37 +00:00
(gnu packages ebook)
2024-05-02 16:37:36 +00:00
(gnu packages lisp-xyz)
(gnu packages rust-apps)
(rde features bluetooth)
2024-03-02 19:12:23 +00:00
(gnu packages gcc)
2024-05-02 16:37:36 +00:00
(gnu packages pulseaudio)
2024-09-08 20:03:55 +00:00
(gnu packages enchant)
(gnu packages hunspell)
(gnu packages upnp)
2024-05-02 16:37:36 +00:00
(gnu packages tor)
2024-03-02 19:12:23 +00:00
(gnu packages commencement)
2024-05-02 16:37:36 +00:00
(gnu packages guile-xyz)
2024-03-01 23:48:49 +00:00
(gnu packages freedesktop)
(gnu packages image)
2024-01-15 20:13:28 +00:00
(gnu packages image-viewers)
2024-03-01 23:48:49 +00:00
(gnu packages xfce)
(srfi srfi-1)
2024-05-02 16:37:36 +00:00
;; for nyxt
2024-03-01 23:48:49 +00:00
(gnu packages gstreamer)
2024-01-15 20:13:28 +00:00
(gnu packages web-browsers)
2024-05-02 16:37:36 +00:00
;;---------
2024-01-15 20:13:28 +00:00
(gnu services)
2024-06-01 05:00:40 +00:00
(gnu services base)
2024-01-15 20:13:28 +00:00
(gnu packages terminals)
(gnu packages music)
2024-03-01 23:48:49 +00:00
(gnu packages compton)
2024-01-15 20:13:28 +00:00
(gnu packages version-control)
(gnu packages lxqt)
(gnu packages file-systems)
(gnu packages admin)
(gnu packages bittorrent)
(gnu packages compression)
(gnu packages curl)
(gnu packages emacs)
(gnu packages emacs-xyz)
(gnu packages engineering)
(gnu packages fonts)
2024-02-03 04:12:40 +00:00
(gnu packages tmux)
(gnu packages dictionaries)
(gnu packages emulators)
2024-01-15 20:13:28 +00:00
(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 libreoffice)
(gnu packages linux)
(gnu packages lisp)
(gnu packages mpd)
(gnu packages package-management)
(gnu packages rsync)
2024-05-02 16:37:36 +00:00
(gnu packages gimp)
2024-01-15 20:13:28 +00:00
(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)
2024-03-01 23:48:49 +00:00
(guix channels)
(guix inferior)
2024-05-02 16:37:36 +00:00
(gnu packages networking)
2024-01-15 20:13:28 +00:00
(nongnu packages compression)
2024-05-02 16:37:36 +00:00
(nongnu packages linux))
2024-06-10 21:09:24 +00:00
(use-service-modules cups desktop networking ssh xorg linux certbot shepherd configuration web nix)
2024-05-02 16:37:36 +00:00
(use-package-modules version-control gcc bash certs admin linux )
2024-01-11 18:51:39 +00:00
2024-06-01 05:00:40 +00:00
(define %8bitdo-udev-rules
(udev-rule
"99-8bitdo-controllers.rules"
"SUBSYSTEM==\"input\", ATTRS{name}==\"8BitDo*Wireless*Controller\", MODE=\"0664\", TAG+=\"uaccess\"
SUBSYSTEM==\"input\", ATTRS{name}==\"8BitDo*Bluetooth*Gamepad\", MODE=\"0664\", TAG+=\"uaccess\"
SUBSYSTEM==\"input\", ATTRS{name}==\"8BitDo*Ultimate*Wired*Controller\", MODE=\"0664\", TAG+=\"uaccess\"
SUBSYSTEM==\"input\", ATTRS{name}==\"8BitDo*Ultimate*Bluetooth*Controller\", MODE=\"0664\", TAG+=\"uaccess\"
SUBSYSTEM==\"input\", ATTRS{name}==\"8BitDo*Ultimate*Bluetooth*Controller*2.4G\", MODE=\"0664\", TAG+=\"uaccess\"
SUBSYSTEM==\"usb\", ATTR{idVendor}==\"2dc8\", ATTR{idProduct}==\"3106\", RUN+=\"/usr/bin/env modprobe xpad\"
KERNEL==\"xpad\", SUBSYSTEM==\"drivers\", ACTION==\"add\", ATTR{new_id}=\"2dc8 3106\""))
2024-03-01 23:48:49 +00:00
2024-01-11 18:51:39 +00:00
(define my-kernel linux-6.1)
2024-03-01 23:48:49 +00:00
2024-01-11 18:51:39 +00:00
(define my-zfs
(package
2024-05-02 16:37:36 +00:00
(inherit zfs)
(arguments
(cons* #:linux my-kernel
(package-arguments zfs)))))
2024-01-11 18:51:39 +00:00
(operating-system
2024-05-02 16:37:36 +00:00
(kernel my-kernel)
(initrd base-initrd)
(firmware (list linux-firmware))
(locale "en_US.utf8")
2024-09-08 20:03:55 +00:00
(kernel-arguments (list "modprobe.blacklist=hid-nintendo"
"noatime"
))
2024-05-02 16:37:36 +00:00
(timezone "America/Manaus")
(keyboard-layout (keyboard-layout "us"))
(host-name "lisp-machine")
(kernel-loadable-modules (list (list my-zfs "module")))
2024-03-01 23:48:49 +00:00
2024-05-02 16:37:36 +00:00
;; 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" "lp")))
%base-user-accounts))
2024-01-11 18:51:39 +00:00
2024-05-02 16:37:36 +00:00
;; 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
2024-01-11 18:51:39 +00:00
my-zfs
2024-01-15 20:13:28 +00:00
;;emacs-org-roam
;;emacs-org-roam-ui
;; -----
;;necessary for nyxt
gstreamer
gst-plugins-bad
gst-plugins-good
;;------
nyxt
;;------
cmus
2024-05-02 16:37:36 +00:00
emacs-ox-hugo
sbcl-coleslaw
2024-09-08 20:03:55 +00:00
numix-gtk-theme
2024-05-02 16:37:36 +00:00
tor
2024-09-08 20:03:55 +00:00
python-psutil
python-schedule
xsel
gerbera
ibus
2024-05-02 16:37:36 +00:00
dconf
gimp
blender
2024-05-02 16:37:36 +00:00
gimp-resynthesizer
2024-03-01 23:48:49 +00:00
wmctrl
2024-09-08 20:03:55 +00:00
imagemagick
zpaq
libwebp
2024-05-02 16:37:36 +00:00
libreoffice
2024-06-01 05:00:40 +00:00
librewolf
2024-05-02 16:37:36 +00:00
;; audio
ardour
noise-repellent
;;
2024-09-08 20:03:55 +00:00
;; nextcloud-client
2024-02-03 04:12:40 +00:00
xprop
2024-03-01 23:48:49 +00:00
fzf
2024-01-15 20:13:28 +00:00
zstd
2024-02-03 04:12:40 +00:00
aria2
2024-06-01 05:00:40 +00:00
;; wakatime
wakapi-bin
wakatime-cli-bin
emacs-wakatime-mode
;;
2024-02-03 04:12:40 +00:00
xrdb
2024-05-02 16:37:36 +00:00
noisetorch
2024-01-15 20:13:28 +00:00
mpv
2024-09-08 20:03:55 +00:00
qtwebengine ;; required by some applications, like anki
2024-06-01 05:00:40 +00:00
;;emasc-everywhere
xdotool
xprop
xclip
xwininfo
;;
2024-03-01 23:48:49 +00:00
xdg-user-dirs
xdg-desktop-portal-gtk
2024-02-03 04:12:40 +00:00
xdg-desktop-portal
tmux
2024-03-14 23:50:08 +00:00
polybar
2024-03-02 19:12:23 +00:00
gnupg
2024-02-03 04:12:40 +00:00
sdcv
alacritty
2024-03-01 23:48:49 +00:00
font-dejavu
;;------
2024-02-03 04:12:40 +00:00
higan
2024-01-15 20:13:28 +00:00
maim
2024-02-03 04:12:40 +00:00
p7zip
htop
2024-01-15 20:13:28 +00:00
scrot
2024-03-01 23:48:49 +00:00
flameshot
2024-01-15 20:13:28 +00:00
neofetch
pfetch
2024-05-02 16:37:36 +00:00
openjdk
;;element-desktop
;; bluetooth
bluez
blueman
;; ime
2024-09-08 20:03:55 +00:00
enchant
hunspell
2024-02-03 04:12:40 +00:00
fcitx5
fcitx5-gtk
fcitx5-qt
fcitx5-anthy
fcitx5-gtk4
fcitx5-configtool
2024-05-02 16:37:36 +00:00
;;
2024-01-15 20:13:28 +00:00
icecat
ffmpeg
nsxiv
2024-03-01 23:48:49 +00:00
pinentry
2024-01-15 20:13:28 +00:00
git
pavucontrol-qt
emacs
2024-05-02 16:37:36 +00:00
emacs-bluetooth
2024-03-01 23:48:49 +00:00
xrandr
2024-01-15 20:13:28 +00:00
qbittorrent
2024-03-01 23:48:49 +00:00
emacs-rainbow-delimiters
2024-02-03 04:12:40 +00:00
emacs-olivetti
emacs-telega
2024-05-02 16:37:36 +00:00
emacs-sly
emacs-ccls
2024-06-10 21:09:24 +00:00
emacs-lsp-mode
emacs-lsp-ui
2024-06-01 05:00:40 +00:00
emacs-rmsbolt
2024-05-02 16:37:36 +00:00
sbcl
2024-02-03 04:12:40 +00:00
emacs-nerd-icons
2024-03-01 23:48:49 +00:00
emacs-esxml
2024-05-02 16:37:36 +00:00
ripgrep
2024-06-01 05:00:40 +00:00
gdb
2024-05-02 16:37:36 +00:00
emacs-olivetti
emacs-deadgrep
2024-06-01 05:00:40 +00:00
emacs-realgud
2024-05-02 16:37:36 +00:00
emacs-rg
emacs-dumb-jump
emacs-circe
2024-03-01 23:48:49 +00:00
zip
thunar
unzip
;;emacs-nov-el
2024-01-15 20:13:28 +00:00
fontconfig
2024-05-02 16:37:36 +00:00
;; font-apple-color-emoji
2024-01-15 20:13:28 +00:00
picom
feh
2024-09-08 20:03:55 +00:00
;; ================
;; haskell
cabal-install
2024-03-02 19:12:23 +00:00
;; deps for xmonad
xmonad
2024-03-02 21:22:03 +00:00
xmobar
2024-03-02 19:12:23 +00:00
ghc ;; ridiculous, gcc and ghc are runtime dependencies , yet people didnt put in the package description
2024-09-08 20:03:55 +00:00
ghc-xmonad-contrib
;; ==================
2024-03-14 23:50:08 +00:00
gcc
2024-03-02 19:12:23 +00:00
gcc-toolchain
2024-03-14 23:50:08 +00:00
xmessage
2024-09-08 20:03:55 +00:00
xmodmap
2024-01-15 20:13:28 +00:00
rofi
2024-03-14 23:50:08 +00:00
linux-libre-headers
2024-03-02 19:12:23 +00:00
;;--------
2024-02-03 04:12:40 +00:00
yt-dlp
2024-05-02 16:37:36 +00:00
;; nicotine+
2024-01-11 18:51:39 +00:00
linux-firmware
2024-06-01 05:00:40 +00:00
(specification->package "jami")
)
2024-05-02 16:37:36 +00:00
%base-packages))
2024-01-15 20:13:28 +00:00
2024-05-02 16:37:36 +00:00
;;(home-environment (packages (cons* anki ))) ;; figure out how to install it from here
2024-03-01 23:48:49 +00:00
2024-05-02 16:37:36 +00:00
;; Below is the list of system services. To search for available
;; services, run 'guix system search KEYWORD' in a terminal.
(services
2024-09-08 20:03:55 +00:00
2024-05-02 16:37:36 +00:00
(append (list (simple-service 'my-zfs-loader
kernel-module-loader-service-type
'("zfs"))
2024-06-01 05:00:40 +00:00
(simple-service 'my-jp-ime-env session-environment-service-type
'(("GTK_IM_MODULE" . "fcitx")
("QT_IM_MODULE" . "fcitx")
("GUIX_GTK2_IM_MODULE_FILE" . "/run/current-system/profile/lib/gtk-2.0/2.10.0/immodules-gtk2.cache")
("GUIX_GTK3_IM_MODULE_FILE" . "/run/current-system/profile/lib/gtk-3.0/3.0.0/immodules-gtk3.cache")
("XMODIFIERS=@im=" . "fcitx")
("INPUT_METHOD" . "fcitx")
("XIM_PROGRAM" . "fcitx")
("GLFW_IM_MODULE" . "ibus")))
2024-05-02 16:37:36 +00:00
(service zram-device-service-type
(zram-device-configuration
2024-06-08 15:14:44 +00:00
(size "6G")
(compression-algorithm 'xz)
2024-05-02 16:37:36 +00:00
(priority 100)))
;; (service oci-forgejo-service-type)
2024-09-08 20:03:55 +00:00
(set-xorg-configuration
(xorg-configuration
(keyboard-layout keyboard-layout)))
2024-06-01 05:00:40 +00:00
(udev-rules-service '8bitdo %8bitdo-udev-rules)
2024-06-10 21:09:24 +00:00
(service nix-service-type)
#| Compress my mpv screenshots periodically |#
(service mcron-service-type
(mcron-configuration
2024-06-10 21:09:24 +00:00
(jobs (list #~(job "10 15 * * *"
"find /mnt/Data/mpv-screenshots/ -type f \\( -iname '*.png' -o -iname '*.jpg' \\) -exec sh -c 'cwebp -q 80 \"$0\" -o \"${0%.*}.webp\" && rm \"$0\"' {} \\;")))))
2024-06-01 05:00:40 +00:00
)
2024-09-08 20:03:55 +00:00
%desktop-services)
2024-05-02 16:37:36 +00:00
)
2024-01-11 18:51:39 +00:00
2024-05-02 16:37:36 +00:00
(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")))))
2024-01-11 18:51:39 +00:00
2024-05-02 16:37:36 +00:00
;; 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"))
2024-09-08 20:03:55 +00:00
2024-05-02 16:37:36 +00:00
%base-file-systems)))