Organize Xenon config

Signed-off-by: Skylar "The Cobra" Widulski <cobra@vern.cc>
This commit is contained in:
Skylar "The Cobra" Widulski 2023-06-01 00:34:44 -04:00
parent 234cc65709
commit 7d0143036a
Signed by: cobra
GPG Key ID: 4FD8F812083FF6F9
1 changed files with 221 additions and 126 deletions

View File

@ -6,6 +6,8 @@
(gnu packages certs)
(gnu packages linux)
(gnu packages wm)
(gnu packages wordnet)
(gnu packages dictionaries)
(gnu services desktop)
(gnu services networking)
(gnu services xorg)
@ -14,8 +16,37 @@
(gnu services dbus)
(gnu services virtualization)
(gnu services authentication)
(gnu services dict)
(gnu services linux))
;; DICT
(define wordnet-handler
(dicod-handler
(name "wordnet")
(module "dictorg")
(options
(list #~(string-append "dbdir=" #$wordnet)))))
(define vera-handler
(dicod-handler
(name "vera")
(module "dictorg")
(options
(list #~(string-append "dbdir=" #$vera)))))
(define wordnet-db
(dicod-database
(name "wordnet")
(complex? #t)
(handler "wordnet")
(options '("database=wn"))))
(define vera-db
(dicod-database
(name "vera")
(complex? #t)
(handler "vera")
(options '("database=vera"))))
;; Kernel
(define v4l2loopback-config
(plain-file "v4l2loopback.conf"
"options v4l2loopback video_nr=6,7,8,9 card_label=loopback0,loopback1,loopback2,loopback3 exclusive_caps=1"))
@ -24,8 +55,8 @@
(kernel linux-libre)
(kernel-loadable-modules (list v4l2loopback-linux-module))
(kernel-arguments '("intel_iommu=on"
"kvm.ignore_msrs=1
log_buf_len=1M"))
"kvm.ignore_msrs=1"
"log_buf_len=1M"))
(keyboard-layout (keyboard-layout "us" "altgr-intl"))
(bootloader
(bootloader-configuration
@ -58,137 +89,183 @@
(name "cobra")
(comment "Skylar \"The Cobra\" Widulski")
(group "users")
(supplementary-groups '("audio" "cdrom" "kvm" "lp" "netdev" "tape" "video" "wheel" "input" "dialout" "libvirt"))))
(supplementary-groups '("audio"
"cdrom"
"dialout"
"input"
"kvm"
"libvirt"
"lp"
"netdev"
"tape"
"video"
"wheel"))))
%base-user-accounts))
(packages (append
(map specification->package+output
(list "nss-certs"
"tor"
"vim"
"screen"
(list ;; Audio
"alsa-utils"
"cmus"
"mumble"
"pipewire"
"playerctl"
"pulseaudio"
"pulsemixer"
"wireplumber"
;; Bluetooth
"bluez"
"blueman"
;; Browsers
"icecat"
"icedove"
"lynx"
"curl"
"wget"
"net-tools"
"sway"
"waybar"
"swaylock"
"openssh"
"i2pd"
;"dbus"
"cryptsetup"
"ungoogled-chromium-wayland"
;; CAD
"cura"
"freecad"
"gpx"
"kicad"
"kicad-doc"
"kicad-footprints"
"kicad-packages3d"
"kicad-symbols"
"kicad-templates"
;; Chat
"irssi"
"pinentry"
"profanity"
;; Desktop
"brightnessctl"
"foot"
"grim"
"librsvg"
"libnotify"
"libdvdcss"
"libdvdread"
"gcc-toolchain"
"librsvg"
"json-c"
"libnotify"
"kicad"
"kicad-templates"
"kicad-symbols"
"kicad-packages3d"
"kicad-footprints"
"kicad-doc"
"freecad"
"cura"
"gpx"
"light"
"mako"
"mesa"
"intel-vaapi-driver"
"qemu"
"slurp"
"sway"
"swayhide"
"swayidle"
"swaylock"
"waybar"
"wf-recorder"
"wl-clipboard"
"wlr-randr"
"wob"
"wofi"
"xorg-server-xwayland"
;; Development
"at-spi2-core"
"lvm2"
"avr-toolchain"
"gcc-toolchain"
"git"
"git:send-email"
"libqalculate"
"bc"
"icecat"
"cryptsetup"
"gnupg"
"profanity"
"go"
"make"
"microscheme"
"perl"
"python"
;; DICT
"dico"
"vera"
;; Encryption
"gnupg"
"password-store"
;; Fonts
"font-awesome"
"font-fira-code"
"font-fira-mono"
"font-fira-sans"
"font-google-noto"
"font-google-noto-sans-cjk"
"font-google-noto-serif-cjk"
"font-liberation"
;; Games
"adanaxisgpl"
"supertuxkart"
"minetest"
"xonotic"
"mpv"
"imagemagick"
"rsync"
"hyfetch"
"gnunet"
"lm-sensors"
"acpi"
"gnupg"
"password-store"
"font-fira-mono"
"font-fira-code"
"font-fira-sans"
"font-liberation"
"font-google-noto"
"font-google-noto-serif-cjk"
"font-google-noto-sans-cjk"
"font-awesome"
"newsboat"
"kodi"
"yt-dlp"
"icedove"
"irssi"
"monero-gui"
"pamixer"
"slurp"
"grim"
"foot"
"wofi"
"swayidle"
"swayhide"
"wl-clipboard"
"xorg-server-xwayland"
"wob"
"light"
"htop"
"pinentry"
"ungoogled-chromium-wayland"
"make"
"gimp"
"cmus"
"python"
"openssl"
"socat"
"emacs"
"mpv-mpris"
"playerctl"
"reptyr"
"unzip"
"teeworlds"
"red-eclipse"
;; Graphics
"intel-vaapi-driver"
"mesa"
"mesa-utils"
;; Kernel
"v4l2loopback-linux-module"
;; Multimedia
"ffmpeg"
"gimp"
"handbrake"
"imagemagick"
"kodi"
"mpv"
"mpv-mpris"
"reptyr"
"ripit"
"perl"
;; Network
"bind:utils"
"i2pd"
"net-tools"
"netcat"
"nss-certs"
"proxychains-ng"
"socat"
"tmate"
"torsocks"
"alsa-utils"
"proxychains-ng"
"tor"
"whois"
"microscheme"
"avr-toolchain"
"bluez"
"blueman"
"v4l2loopback-linux-module"
"pipewire"
"wireplumber"
"wireguard-tools"
"mesa-utils"
"brightnessctl"
"pulsemixer"
;; System
"acpi"
"cryptsetup"
"curl"
"dconf"
"gnunet"
"lvm2"
"openssh"
"openssl"
;; Utilities
"bc"
"dialog"
"htop"
"hyfetch"
"libqalculate"
"lm-sensors"
"monero-gui"
"newsboat"
"pamixer"
"rsync"
"scdoc"
"screen"
"unzip"
"vim"
"wget"
"yt-dlp"
;; Virtualization
"libvirt"
"virt-manager"
"dconf"
"wf-recorder"
"pulseaudio"
"scdoc"
"dialog"
"wlr-randr"))
"qemu"))
(cons*
%base-packages)))
(timezone "America/New_York")
@ -196,36 +273,54 @@
(name-service-switch %mdns-host-lookup-nss)
(services
(cons*
(service openssh-service-type
(openssh-configuration
(permit-root-login 'prohibit-password)
(password-authentication? #f)))
(service network-manager-service-type)
;; Bluetooth
(service bluetooth-service-type
(bluetooth-configuration
(auto-enable? #t)))
(service wpa-supplicant-service-type)
(service gpm-service-type)
(service ntp-service-type)
(service cups-service-type)
(service elogind-service-type)
(service dbus-root-service-type)
(service libvirt-service-type
(libvirt-configuration
(unix-sock-group "libvirt")))
(service virtlog-service-type)
;; Desktop
(service screen-locker-service-type
(screen-locker-configuration
"swaylock" (file-append swaylock "/bin/swaylock") #f))
(service tor-service-type
(tor-configuration
(config-file (plain-file "tor-config"
"HTTPTunnelPort 127.0.0.1:9250"))))
;; DICT
(service dicod-service-type
(dicod-configuration
(handlers (list wordnet-handler vera-handler))
(databases (list wordnet-db vera-db %dicod-database:gcide))))
;; Kernel
(service kernel-module-loader-service-type
'("v4l2loopback"))
(simple-service 'v4l2loopback etc-service-type
(list `("modprobe.d/v4l2loopback.conf"
,v4l2loopback-config)))
;; Network
(service cups-service-type)
(service network-manager-service-type)
(service ntp-service-type)
(service tor-service-type
(tor-configuration
(config-file (plain-file "tor-config"
"HTTPTunnelPort 127.0.0.1:9250"))))
(service wpa-supplicant-service-type)
;; System
(service dbus-root-service-type)
(service elogind-service-type)
(service openssh-service-type
(openssh-configuration
(permit-root-login 'prohibit-password)
(password-authentication? #f)))
(service gpm-service-type)
;; Virtualization
(service libvirt-service-type
(libvirt-configuration
(unix-sock-group "libvirt")))
(service virtlog-service-type)
(modify-services %base-services
(guix-service-type
config => (guix-configuration