player.scm (3081B)
1 (define-module (home player) 2 #:use-module (gnu home) 3 #:use-module (gnu home services) 4 #:use-module (gnu home services desktop) 5 #:use-module (gnu home services fontutils) 6 #:use-module (gnu home services shells) 7 #:use-module (gnu home services sound) 8 #:use-module (gnu home services sway) 9 #:use-module (gnu home services xdg) 10 #:use-module (gnu packages admin) 11 #:use-module (gnu packages base) 12 #:use-module (gnu packages emulators) 13 #:use-module (gnu packages fonts) 14 #:use-module (gnu packages games) 15 #:use-module (gnu packages terminals) 16 #:use-module (gnu packages text-editors) 17 #:use-module (gnu packages toys) 18 #:use-module (gnu packages version-control) 19 #:use-module (gnu packages wm) 20 #:use-module (gnu packages xdisorg) 21 #:use-module (gnu services) 22 #:use-module (guix gexp) 23 #:use-module (guix packages) 24 #:use-module (mt packages games) 25 #:use-module (mt packages fonts) 26 #:export (player-home-environment)) 27 28 ;; This home-environment is intended to act like a game console, using SCOUT as 29 ;; the main interface which in turn uses Sway to manipulate windows and 30 ;; configure seats. 31 32 ;; It's a bit of a pet project and is pretty jank in its current state. 33 34 (define %sway-packages 35 (list sway 36 foot 37 scout)) 38 39 (define %sway-outputs 40 (list (sway-output 41 (identifier "Technical Concepts Ltd 55R617 Unknown") 42 (resolution "1920x1080@60.000Hz")))) 43 44 (define %sway-startup-programs 45 (list "foot --server" 46 "scout")) 47 48 (define %sway-configuration 49 (sway-configuration 50 (packages %sway-packages) 51 (outputs %sway-outputs) 52 (startup-programs %sway-startup-programs) 53 (extra-content (list "xwayland disable")))) 54 55 (define player-home-environment 56 (home-environment 57 (packages 58 (list ;; Debug apps 59 btop 60 kakoune 61 ;; Fonts 62 font-fira-mono-nerd-font 63 font-google-noto-emoji 64 ;; Utils 65 git 66 ;; Games 67 crispy-doom 68 freedoom 69 prismlauncher 70 vkquake 71 ;; Emulation 72 jgrf 73 jg-bsnes 74 jg-nestopia 75 ;; Toys 76 cbonsai 77 cmatrix)) 78 (services 79 (append 80 (list 81 (service home-dbus-service-type) 82 (service home-bash-service-type 83 (home-bash-configuration 84 (guix-defaults? #f))) 85 (service home-pipewire-service-type) 86 (simple-service 'custom-fonts-service 87 home-fontconfig-service-type 88 (list "~/.guix-home/profile/share/fonts" 89 '(alias 90 (family "monospace") 91 (prefer 92 (family "Fira Mono Nerd Font")) 93 (prefer 94 (family "Noto Color Emoji"))))) 95 (service home-sway-service-type %sway-configuration)) 96 %base-home-services)))) 97 98 player-home-environment