metznet-channel/system/clients/otto.scm

87 lines
3.8 KiB
Scheme

(define-module (system clients otto)
#:use-module (gnu)
#:use-module (system base-system)
#:use-module (gnu packages tex)
#:use-module (nongnu packages mozilla)
#:use-module (nongnu packages nvidia)
#:use-module (gnu packages networking)
#:use-module (gnu packages shells)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages spice)
#:use-module (gnu packages vulkan)
#:use-module (gnu packages pdf)
#:use-module (gnu packages commencement)
#:use-module (gnu packages base)
#:use-module (gnu packages embedded)
#:use-module (gnu packages linux)
#:use-module (gnu packages docker)
#:use-module (gnu services docker)
#:use-module (gnu packages audio)
#:use-module (gnu services cups)
#:use-module (gnu services virtualization)
#:use-module (gnu services networking)
#:use-module (gnu services xorg)
#:use-module (gnu services desktop)
#:use-module (gnu services dbus)
#:use-module (gnu services linux)
#:use-module (gnu packages cups)
#:use-module (gnu packages python)
#:use-module (gnu packages xorg)
#:use-module (gnu packages scanner)
#:use-module (gnu packages dns)
#:use-module (gnu services shepherd)
#:use-module (gnu services base)
#:export (otto-operating-system))
(define otto-operating-system
(operating-system
(inherit base-desktop-system)
(host-name "otto")
(kernel-arguments '("modprobe.blacklist=nouveau"))
(packages (append (list blueman bluez bluez-alsa pulseaudio docker python openvswitch
qemu texlive firefox pavucontrol mupdf gcc-toolchain gnu-make
gcc-arm-none-eabi-7-2018-q2-update sane-backends-minimal xsane
cups xf86-video-nv xf86-input-libinput vulkan-loader vulkan-tools
(list isc-bind "utils")) %metznet-desktop-packages))
(services (append (list
(simple-service 'blueman dbus-root-service-type (list blueman))
(bluetooth-service #:auto-enable? #t)
(service docker-service-type)
(service openvswitch-service-type)
(set-xorg-configuration
(xorg-configuration
(keyboard-layout %default-keyboard-layout)))
(service sane-service-type)
(service cups-service-type
(cups-configuration
(web-interface? #t))))
(modify-services %metznet-desktop-services
(udev-service-type config =>
(udev-configuration (inherit config)
(rules (append (list
%usb-udev-rule)
(udev-configuration-rules config))))))))
(users (cons* (user-account
(name "nmetz")
(comment "Noah Metz")
(group "users")
(home-directory "/home/nmetz")
(shell (file-append zsh "/bin/zsh"))
(supplementary-groups
`("wheel" "netdev" "audio" "video" "usb" "kvm" "lp" "docker")))
%my-base-user-accounts))
(file-systems
(cons* (file-system
(mount-point "/boot/efi")
(device (uuid "6E88-FE62" 'fat32))
(type "vfat"))
(file-system
(mount-point "/")
(device
(uuid "ba93a043-9e58-466f-b90f-bf2a6bbf91fe"
'ext4))
(type "ext4"))
%base-file-systems))))