;; -*- mode: scheme; -*- (use-modules (nongnu packages linux) (nongnu system linux-initrd) (gnu) (gnu system nss) (srfi srfi-1) (guix utils) (gnu packages wm) (gnu packages rust-apps) (gnu services sysctl) (gnu packages android) (gnu system shadow) (gnu system accounts) (gnu services docker) (gnu services avahi) (gnu services mcron) (gnu services samba) (gnu services cups) (gnu services monitoring) (gnu services ssh) (gnu services virtualization) ;; (gnu packages base) ;; (gnu services sddm) (gnu packages tmux) (gnu packages linux) (gnu packages freedesktop) (gnu packages gnome) (gnu services upnp)) (use-service-modules containers upnp desktop networking linux xorg ;; sddm nix) (use-package-modules bootloaders samba uucp package-management display-managers freedesktop) (define %my-services (modify-services %desktop-services (guix-service-type config => (guix-configuration (inherit config) (discover? #t) (substitute-urls (append (list "https://substitutes.nonguix.org" "https://guix.tobias.gr" "https://bordeaux-us-east-mirror.cbaines.net/") %default-substitute-urls)) (authorized-keys (append (list (local-file "./signing-key.pub") (local-file "./tobias-gr.pub")) %default-authorized-guix-keys)))) ;; (delete gdm-service-type) (sysctl-service-type config => (sysctl-configuration (settings (append %default-sysctl-settings '(("vm.swappiness" . "200") ("vm.watermark_boost_factor" . "0") ("vm.watermark_scale_factor" . "125") ("vm.page-cluster" . "0") ("net.core.rmem_max" . "7500000") ("net.core.wmem_max" . "7500000")))))) (network-manager-service-type config => (network-manager-configuration (inherit config) (dns "dnsmasq") (vpn-plugins (list network-manager-openvpn network-manager-openconnect)))) (gdm-service-type config => (gdm-configuration (inherit config) (auto-suspend? #f) (wayland? #t))))) ;;)) (define v4l2loopback-config (plain-file "v4l2loopback.conf" "options video_nr=69 card_label=video-loopback exclusive_caps=1")) (operating-system (host-name "anomaly") (timezone "America/Jamaica") (locale "en_US.utf8") (keyboard-layout (keyboard-layout "us" "altgr-intl")) (kernel linux) (initrd microcode-initrd) (firmware (list linux-firmware)) (kernel-arguments (append (list "lsm=landlock,capabilities,yama,loadpin,safesetid,integrity,apparmor,selinux,smack,tomoyo") %default-kernel-arguments)) (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (targets '("/boot/efi")) (menu-entries (list (menu-entry (label "Windows") (chain-loader "/EFI/Microsoft/Boot/bootmgr.efi")))))) (users (cons (user-account (name "dummy") (comment "am so") (group "users") (supplementary-groups '("kvm" "cgroup" "ipfs" "libvirt" "wheel" "netdev" "audio" "adbusers" "video" "wsdd" "yggdrasil"))) %base-user-accounts)) (file-systems (append (list (file-system (device (uuid "3c5f050e-ebcd-40ce-ae6a-f0703ea52de8" 'btrfs)) (mount-point "/") (type "btrfs") (options "autodefrag,enospc_debug,subvol=@guix,compress=zstd:5,user_subvol_rm_allowed")) (file-system (device (uuid "3C40-048A" 'fat)) (mount-point "/boot/efi") (type "vfat"))) %base-file-systems)) ;; Globally-installed packages. (packages (cons* iptables-nft conntrack-tools tmux uucp nix sway ;; sddm ;; wayland wayland-protocols %base-packages)) ;; Add services to the baseline: a DHCP client and an SSH ;; server. You may wish to add an NTP service here. (services (cons* (service zram-device-service-type (zram-device-configuration (size "3G") (compression-algorithm 'zstd) (priority 100))) ;; multimedia (service colord-service-type) (service readymedia-service-type (readymedia-configuration (media-directories (list (readymedia-media-directory (path "/media/audio") (types ' (A))) (readymedia-media-directory (path "/media/videos") (types ' (V))) (readymedia-media-directory (path "/media/pictures") (types ' (P))) (readymedia-media-directory (path "/media/misc")))) (extra-config '(("notify_interval" . "60"))))) (service bluetooth-service-type (bluetooth-configuration (name "@W@") (multi-profile 'multiple) (fast-connectable? #t) (just-works-repairing 'always) (experimental #t) (stream-mode 'streaming) (enable-adv-mon-interleave-scan? #f) (auto-enable? #t))) ;; connectivity (udev-rules-service 'android android-udev-rules #:groups '("adbusers")) (service mate-desktop-service-type) (service ipfs-service-type) (service nix-service-type) (service yggdrasil-service-type (yggdrasil-configuration (autoconf? #f))) (service wsdd-service-type) ;; virtualization (service singularity-service-type) ;; (service sddm-service-type ;; (sddm-configuration (display-server "wayland"))) (service kernel-module-loader-service-type '("v4l2loopback")) (simple-service 'v4l2loopback-config etc-service-type (list `("modprobe.d/v4l2loopback.conf" ,v4l2loopback-config))) (service gnome-keyring-service-type) ;; (gnome-keyring-configuration ;; (pam-services (list ;; '("password" . "passwd"))))) (service libvirt-service-type) (service virtlog-service-type) ;; (service cups-service-type (cups-configuration (web-interface? #t))) (service openssh-service-type (openssh-configuration (password-authentication? #f) (x11-forwarding? #t) (challenge-response-authentication? #t) ;(openssh openssh-sans-x) (port-number 2222))) ;; no facebook (service block-facebook-hosts-service-type) (service nftables-service-type) ;; (service lxqt-desktop-service-type) ;; (service gnome-desktop-service-type) (service gvfs-service-type) (service subids-service-type) (service rootless-podman-service-type (rootless-podman-configuration (subgids (list (subid-range (name "dummy")))) (subuids (list (subid-range (name "dummy")))))) ;; statistics (service vnstat-service-type) %my-services)) (kernel-loadable-modules (list v4l2loopback-linux-module)) (name-service-switch %mdns-host-lookup-nss))