main
Steve Ayerhart 2020-11-21 20:20:03 -05:00
parent 10ab4c7f11
commit aeee3f03eb
No known key found for this signature in database
GPG Key ID: 5C815FDF3A00B8BA
3 changed files with 202 additions and 0 deletions

24
guix/guix-drv.scm Normal file
View File

@ -0,0 +1,24 @@
(use-modules (guix config)
(guix store)
(guix grafts)
(guix packages)
(guix ui)
(guix deriviations)
(guix monads)
(guix profiles)
(gnu packages)
(srfi srfi-1))
(define (drv-package store package)
(λ ()
`((#:job-name . ,(string-append (package-name package) "-" (package-version package) "-job"))
(#:derivation . ,(derivation-file-name (package-derivation store package #:graft? #f))))))
(define (drv-list store arguments)
(let* ((manifest (load* "/home/steve/conf/guix/manifest.scm" (make-user-module
'((guix profiles) (gnu)))))
(packages (map manifest-entry-item (manifest-entries manifest))))
(parameterize ((%graft? #f))
(map (λ (package)
(drv-package store package))
(delete-duplicates! packages)))))

108
guix/manifest.scm Normal file
View File

@ -0,0 +1,108 @@
;(setenv "GUIX_PACKAGE_PATH" "/home/steve/Source/bbbsd/:$GUIX_PACKAGE_PATH")
(packages->manifest
(map (compose list specification->package+output symbol->string)
'(glibc-locales
gcc-toolchain gdb
strace
curl wget rsync
openssh gnupg pinentry
zip unzip bzip2 tar xz
file net-tools nmap
git
guile-bytestructures
guile-chickadee
guile-config
guile-fibers
guile-json
guile-irregex
vim emacs
emacs-guix
emacs-magit emacs-magit-todos
emacs-anzu emacs-better-defaults
emacs-bash-completion emacs-diminish
emacs-emojify
emacs-evil
emacs-evil-anzu emacs-evil-collection
emacs-evil-magit emacs-evil-org
emacs-evil-surround
emacs-flycheck emacs-geiser
emacs-js2-mode
emacs-nodejs-repl emacs-npm-mode
emacs-markdown-mode
emacs-web-mode
emacs-nix-mode
emacs-racket-mode
emacs-shell-switcher
emacs-slack
node
racket
rust
virt-manager virt-viewer
guile-readline
graphicsmagick graphviz inkscape
vlc ffmpeg audacity
flac shntool vorbis-tools
alsa-utils
gstreamer gst-transcoder
gst-libav gst-plugins-bad gst-plugins-base gst-plugins-good gst-plugins-ugly
kodi kodi-cli
aspell aspell-dict-en
hunspell hunspell-dict-en
evince
xkbutils xmodmap xprop xwininfo xev xcb-util
arandr
font-adobe100dpi
font-adobe75dpi
font-anonymous-pro
font-alias
font-anonymous-pro
font-awesome
font-bitstream-vera
font-comic-neue
font-dejavu
font-fira-code
font-fira-mono
font-fira-sans
font-gnu-freefont-ttf
font-gnu-unifont
font-go
font-google-material-design-icons
font-google-noto
font-google-roboto
font-hack
font-ibm-plex
font-inconsolata
font-iosevka
font-isas-misc
font-lato
font-liberation
font-linuxlibertine
font-mathjax
font-micro-misc
font-misc-misc
font-mutt-misc
font-sony-misc
font-sun-misc
font-tamzen
font-terminus
font-ubuntu
font-util
font-xfree86-type1
fontconfig)))

70
guix/yaddith.scm Normal file
View File

@ -0,0 +1,70 @@
(use-modules (gnu)
(guix)
(guix packages)
(guix git))
(use-service-modules admin base cuirass networking shepherd web ssh)
(use-packages-modules admin ci linux ssh tls package-management web wget)
(define %cuirass-specs
#~list `((#:name . "guix")
(#:url . "git://git.savannah.gnu.org/guix.git")
(#:branch . "master")
(#:no-compile? #t)
(#:load-path . ".")
(#:proc . drv-list)
(#:file . #$(local-file "/home/steve/conf/guix/cuirass/guix-drv.scm"))))
(operating-system
(host-name "yaddith")
(timezone "America/New_York")
(locale "en_US.utf8")
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(target "/boot")))
(file-systems (cons*
(file-system
(device (file-system-label "guixsd"))
(mount-point "/")
(type "ext4"))
(file-system
(device (uuid "074D-884c" 'fat))
(mount-point "/boot")
(type "vfat"))
%base-file-systems))
(users (cons (user-account
(name "steve")
(comments "Steve")
(group "users")
(supplementary-groups '("wheel" "netdev" "audio" "video"))
(home-directory "/home/steve"))))
(packages (cons*
nss-certs
%base-packages))
(services
(cons*
(service dhcp-client-service-type)
(services ntp-service-type)
(service openssh-service-type
(openssh-configuration
(password-authentication? #f)
(authorized-keys
`(("steve" ,(local-file "/home/steve/.ssh/id_rsa.pub"))))))
(services cuirass-service-type
(cuirass-configuration
(interval 30)
(use-substitutes? #f)
(port 8082)
(load-path '("/home/steve/Source/bbbsd"))
(specifications &cuirass-specs)))
(service guix-publish-service-type
(guix-publish-configuration
(host "0.0.0.0")))
%base-services))
(name-service-switch %mdns-host-lookup-nss))